/* Override Bootstrap's default colors at the root level */
:root {
    /* Dark - Deep Navy (Kept for your Navbar and Footer elements) */
    --bs-dark: #295679;
    --bs-dark-rgb: 41, 86, 121;

    /* Primary - Fjord Blue (Lighter blue for buttons and links to stand out) */
    --bs-primary: #3A79A8;
    --bs-primary-rgb: 58, 121, 168;
    
    /* Primary - Nordic Slate (Muted, professional blue for buttons) */
    /* --bs-primary: #466C8A; */
    /* --bs-primary-rgb: 70, 108, 138; */
    
    /* Info - Glacier Blue (Soft icy blue for badges and tags) */
    --bs-info: #7BA4B8;
    --bs-info-rgb: 123, 164, 184;
    
    /* Success - Logo Green */
    --bs-success: #33603B;
    --bs-success-rgb: 51, 96, 59;

    /* Warning - Golden Oak */
    --bs-warning: #D99B29;
    --bs-warning-rgb: 217, 155, 41;

    /* Danger - Brick Red */
    --bs-danger: #A64238;
    --bs-danger-rgb: 166, 66, 56;
}

 /* --- BUTTON OVERRIDES --- */
.btn-primary {
    --bs-btn-bg: #3A79A8;
    --bs-btn-border-color: #3A79A8;
    --bs-btn-hover-bg: #31668E;
    --bs-btn-hover-border-color: #2E6187;
    --bs-btn-active-bg: #2A5A7D;
    --bs-btn-active-border-color: #265273;
    --bs-btn-disabled-bg: #3A79A8;
    --bs-btn-disabled-border-color: #3A79A8;
    --bs-btn-disabled-color: #ffffff;
}

.btn-outline-primary {
    --bs-btn-color: #3A79A8;
    --bs-btn-border-color: #3A79A8;
    --bs-btn-hover-bg: #3A79A8;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #31668E;
    --bs-btn-active-border-color: #31668E;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #6b8ea6; 
    --bs-btn-disabled-border-color: #6b8ea6;
}

.btn-dark {
    --bs-btn-bg: #295679;
    --bs-btn-border-color: #295679;
    --bs-btn-hover-bg: #214561;
    --bs-btn-hover-border-color: #1d3d56;
    --bs-btn-active-bg: #193449;
    --bs-btn-active-border-color: #152b3c;
    --bs-btn-disabled-bg: #295679;
    --bs-btn-disabled-border-color: #295679;
    --bs-btn-disabled-color: #ffffff;
}

.btn-outline-dark {
    --bs-btn-color: #295679;
    --bs-btn-border-color: #295679;
    --bs-btn-hover-bg: #295679;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #214561;
    --bs-btn-active-border-color: #1d3d56;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #637c8e;
    --bs-btn-disabled-border-color: #637c8e;
}

.btn-info {
    --bs-btn-bg: #7BA4B8;
    --bs-btn-border-color: #7BA4B8;
    --bs-btn-hover-bg: #638C9F;
    --bs-btn-hover-border-color: #5d8496;
    --bs-btn-active-bg: #547787;
    --bs-btn-active-border-color: #4f707f;
    --bs-btn-disabled-bg: #7BA4B8;
    --bs-btn-disabled-border-color: #7BA4B8;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #ffffff;
}

.btn-outline-info {
    --bs-btn-color: #7BA4B8;
    --bs-btn-border-color: #7BA4B8;
    --bs-btn-hover-bg: #7BA4B8;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #638C9F;
    --bs-btn-active-border-color: #5d8496;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #9cbccc;
    --bs-btn-disabled-border-color: #9cbccc;
}

.btn-success {
    --bs-btn-bg: #33603B;
    --bs-btn-border-color: #33603B;
    --bs-btn-hover-bg: #294D2F;
    --bs-btn-hover-border-color: #25462A;
    --bs-btn-active-bg: #1F3A23;
    --bs-btn-active-border-color: #1A301D;
    --bs-btn-disabled-bg: #33603B;
    --bs-btn-disabled-border-color: #33603B;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #ffffff;
}

.btn-outline-success {
    --bs-btn-color: #33603B;
    --bs-btn-border-color: #33603B;
    --bs-btn-hover-bg: #33603B;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #294D2F;
    --bs-btn-active-border-color: #25462A;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #7c9b83;
    --bs-btn-disabled-border-color: #7c9b83;
}

.btn-warning {
    --bs-btn-bg: #D99B29;
    --bs-btn-border-color: #D99B29;
    --bs-btn-hover-bg: #b88423;
    --bs-btn-hover-border-color: #ad7c21;
    --bs-btn-active-bg: #a3741f;
    --bs-btn-active-border-color: #986c1d;
    --bs-btn-disabled-bg: #D99B29;
    --bs-btn-disabled-border-color: #D99B29;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #ffffff;
}

.btn-outline-warning {
    --bs-btn-color: #D99B29;
    --bs-btn-border-color: #D99B29;
    --bs-btn-hover-bg: #D99B29;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #b88423;
    --bs-btn-active-border-color: #ad7c21;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #deb86d;
    --bs-btn-disabled-border-color: #deb86d;
}

/* --- DANGER (Brick Red) OVERRIDES --- */
.btn-danger {
    --bs-btn-bg: #A64238;
    --bs-btn-border-color: #A64238;
    --bs-btn-hover-bg: #8d3830;
    --bs-btn-hover-border-color: #85352d;
    --bs-btn-active-bg: #7c312a;
    --bs-btn-active-border-color: #742e27;
    --bs-btn-disabled-bg: #A64238;
    --bs-btn-disabled-border-color: #A64238;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #ffffff;
}

.btn-outline-danger {
    --bs-btn-color: #A64238;
    --bs-btn-border-color: #A64238;
    --bs-btn-hover-bg: #A64238;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #8d3830;
    --bs-btn-active-border-color: #85352d;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #c7837b;
    --bs-btn-disabled-border-color: #c7837b;
}


/* Override Focus Rings for Form Inputs, Selects, and Textareas */
.form-control:focus, .form-select:focus {
    border-color: #3A79A8; /* Fjord Blue border */
    /* Fjord Blue RGB (58, 121, 168) with 25% opacity for the glow */
    box-shadow: 0 0 0 0.25rem rgba(58, 121, 168, 0.25); 
}

/* Override Select2 Dropdown Hover/Highlight Color (Fjord Blue) */
.select2-container--bootstrap-5 .select2-results__option.select2-results__option--highlighted {
    background-color: #3A79A8 !important;
    color: #ffffff !important;
}

/* Override Select2 Already Selected Item Color (Glacier Blue) */
.select2-container--bootstrap-5 .select2-results__option[aria-selected="true"] {
    background-color: #7BA4B8 !important;
    color: #ffffff !important;
}        

/* Overrides for Flatpickr Datepicker Theme */
.flatpickr-day.selected, 
.flatpickr-day.startRange, 
.flatpickr-day.endRange, 
.flatpickr-day.selected.inRange, 
.flatpickr-day.startRange.inRange, 
.flatpickr-day.endRange.inRange, 
.flatpickr-day.selected:focus, 
.flatpickr-day.startRange:focus, 
.flatpickr-day.endRange:focus, 
.flatpickr-day.selected:hover, 
.flatpickr-day.startRange:hover, 
.flatpickr-day.endRange:hover, 
.flatpickr-day.selected.prevMonthDay, 
.flatpickr-day.startRange.prevMonthDay, 
.flatpickr-day.endRange.prevMonthDay, 
.flatpickr-day.selected.nextMonthDay, 
.flatpickr-day.startRange.nextMonthDay, 
.flatpickr-day.endRange.nextMonthDay {
    background: #3A79A8 !important; /* Fjord Blue */
    border-color: #3A79A8 !important;
}

.flatpickr-day:hover {
    background: #7BA4B8 !important; /* Glacier Blue Hover */
    border-color: #7BA4B8 !important;
    color: #ffffff !important;
}

/* Stealth Links: Appear as plain text until hovered */
.stealth-link {
    color: var(--bs-body-color);
    text-decoration: none;
    transition: color 0.15s ease-in-out;
}

.stealth-link:hover {
    color: var(--bs-primary);
    text-decoration: underline;
}

/* Add padding to the bottom of the body ONLY on mobile so the fixed nav doesn't hide content */
@media (max-width: 767.98px) {
    body {
        padding-bottom: 70px; 
    }
    /* Hide top navbar links on mobile to avoid duplicates */
    .hide-on-mobile {
        display: none !important;
    }
}