html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

:root
{
    --orange-color: #eea320;
    --green-color: #9abb50;
}


.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

        /* Prevent html and body from scrolling - only #main-container should scroll */
        html, body {
            overflow: hidden;
            height: 100%;
            margin: 0;
            padding: 0;
        }

.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}

/* Generic Auto-save for Platform */
.auto-save-field {
    border: 1px solid #ced4da;
    transition: border-color 0.15s ease-in-out;
}

.auto-save-field.saving {
    /* Using Alveo orange color */
    border-color: #eea320;
    border-width: 3px;
}

.auto-save-field.saved {
    /* Using Alveo green color */
    border-color: #9abb50;
}

/* Auto-save group wrapper (e.g. Remit Processing radios) - same visual feedback as single fields */
.remits835-autosave-group {
    border-color: #ced4da;
    transition: border-color 0.15s ease-in-out;
}
.remits835-autosave-group:has(.auto-save-field.saving) {
    border-color: #eea320 !important;
    border-width: 3px !important;
}
.remits835-autosave-group:has(.auto-save-field.saved) {
    border-color: #9abb50 !important;
}
.remits835-autosave-status.saving-text,
.remits835-autosave-status.saved-text {
    display: none;
}
.remits835-autosave-group:has(.auto-save-field.saving) .remits835-autosave-status.saving-text {
    display: inline;
    color: #eea320;
}
.remits835-autosave-group:has(.auto-save-field.saved) .remits835-autosave-status.saved-text {
    display: inline;
    color: #9abb50;
}

/* Auto-save styling for selectpicker (Bootstrap Select) */
/* Remove blue focus border for auto-save selectpicker elements */
.bootstrap-select:has(select.auto-save-field) .btn:focus,
.bootstrap-select:has(select.auto-save-field) .btn:active:focus,
.bootstrap-select:has(select.auto-save-field) .dropdown-toggle:focus,
.bootstrap-select:has(select.auto-save-field) .dropdown-toggle:active:focus,
.bootstrap-select.auto-save-field .btn:focus,
.bootstrap-select.auto-save-field .btn:active:focus,
.bootstrap-select.auto-save-field .dropdown-toggle:focus,
.bootstrap-select.auto-save-field .dropdown-toggle:active:focus {
    box-shadow: none !important;
    outline: none !important;
}

/* When the select element has saving class, style the visible button */
.bootstrap-select:has(select.auto-save-field.saving) .btn,
.bootstrap-select:has(select.auto-save-field.saving) .dropdown-toggle,
.bootstrap-select.auto-save-saving .btn,
.bootstrap-select.auto-save-saving .dropdown-toggle {
    border-color: #eea320 !important;
    border-width: 3px !important;
    transition: border-color 0.15s ease-in-out;
}

/* When the select element has saved class, style the visible button */
.bootstrap-select:has(select.auto-save-field.saved) .btn,
.bootstrap-select:has(select.auto-save-field.saved) .dropdown-toggle,
.bootstrap-select.auto-save-saved .btn,
.bootstrap-select.auto-save-saved .dropdown-toggle {
    border-color: #9abb50 !important;
    transition: border-color 0.15s ease-in-out;
}

/* Make all toast messages fully opaque - override Bootstrap and bootstrap-toaster defaults */
.toast,
.toast.show,
.toast.showing,
.toast.hide {
    --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 1) !important;
    --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 1) !important;
    opacity: 1 !important;
}

/* Set default background only for toasts without color classes */
.toast:not([class*="bg-"]):not(.text-white) {
    background-color: var(--bs-toast-bg) !important;
}

.toast-header,
.toast-header.show,
.toast-header.showing {
    opacity: 1 !important;
}

/* Set default header background only if header doesn't have a color class */
.toast-header:not([class*="bg-"]) {
    background-color: var(--bs-toast-header-bg) !important;
}

.toast-body,
.toast-body.show,
.toast-body.showing {
    opacity: 1 !important;
}

/* Ensure toast messages with specific background colors are fully opaque but keep their colors */
.toast.bg-danger,
.toast.bg-success,
.toast.bg-warning,
.toast.bg-info,
.toast.text-white,
.toast.align-items-center {
    opacity: 1 !important;
}

/* Preserve colored headers and ensure they're fully opaque */
.toast-header.bg-danger,
.toast-header.bg-success,
.toast-header.bg-warning,
.toast-header.bg-info {
    opacity: 1 !important;
}

/* Override any inline styles or JavaScript-set opacity */
div.toast,
div[class*="toast"] {
    opacity: 1 !important;
}
