/* Shared palette. Typography, sizing and layout are defined in the existing stylesheets. */
:root {
    --color-primary: #183153;
    --color-primary-dark: #0B1F38;
    --color-accent: #155E75;
    --color-text: #252B33;
    --color-text-secondary: #56616F;
    --color-background: #F4F7FB;
    --color-surface: #FFFFFF;
    --color-border: #D7E1ED;
    --color-border-control: #8291A5;
    --color-tint: #EAF0F8;
    --color-tint-hover: #DFEAF6;
    --color-tint-strong: #CCDDEF;
    --color-on-dark: #FFFFFF;
    --color-on-dark-secondary: #C7D4E6;
    --color-dark-border: #345171;
    --color-image-background: #E8EFF8;
    --color-image-line: #9AADBF;
    --color-hero-start: #E8F0FA;
    --color-hero-end: #BCD0E4;
    --color-shadow-soft: rgba(24,49,83,.05);
    --color-shadow: rgba(24,49,83,.08);
    --color-shadow-menu: #18315312;
    --color-photo-overlay: rgba(11,31,56,.78);
    --color-photo-selection: rgba(255,255,255,.95);
    --bs-primary: var(--color-primary);
    --bs-primary-rgb: 24,49,83;
    --bs-link-color: var(--color-accent);
    --bs-link-color-rgb: 21,94,117;
    --bs-link-hover-color: var(--color-primary-dark);
    --bs-link-hover-color-rgb: 11,31,56;
    --bs-body-color: var(--color-text);
    --bs-body-color-rgb: 37,43,51;
    --bs-body-bg: var(--color-background);
    --bs-body-bg-rgb: 244,247,251;
    --bs-secondary-color: var(--color-text-secondary);
    --bs-border-color: var(--color-border);
    --bs-focus-ring-color: rgba(21,94,117,.35);
}
.btn-primary {
    --bs-btn-color: var(--color-surface);
    --bs-btn-bg: var(--color-accent);
    --bs-btn-border-color: var(--color-accent);
    --bs-btn-hover-color: var(--color-surface);
    --bs-btn-hover-bg: var(--color-primary-dark);
    --bs-btn-hover-border-color: var(--color-primary-dark);
    --bs-btn-active-color: var(--color-surface);
    --bs-btn-active-bg: var(--color-primary-dark);
    --bs-btn-active-border-color: var(--color-primary-dark);
    --bs-btn-disabled-color: var(--color-surface);
    --bs-btn-disabled-bg: var(--color-accent);
    --bs-btn-disabled-border-color: var(--color-accent);
    --bs-btn-focus-shadow-rgb: 21,94,117;
}
.btn-outline-primary {
    --bs-btn-color: var(--color-accent);
    --bs-btn-border-color: var(--color-accent);
    --bs-btn-hover-color: var(--color-surface);
    --bs-btn-hover-bg: var(--color-accent);
    --bs-btn-hover-border-color: var(--color-accent);
    --bs-btn-active-color: var(--color-surface);
    --bs-btn-active-bg: var(--color-primary-dark);
    --bs-btn-active-border-color: var(--color-primary-dark);
    --bs-btn-disabled-color: var(--color-text-secondary);
    --bs-btn-disabled-border-color: var(--color-border-control);
    --bs-btn-focus-shadow-rgb: 21,94,117;
}
.btn-outline-secondary { --bs-btn-color:var(--color-text-secondary); --bs-btn-border-color:var(--color-border-control); --bs-btn-hover-bg:var(--color-text-secondary); --bs-btn-hover-border-color:var(--color-text-secondary); --bs-btn-active-bg:var(--color-primary-dark); --bs-btn-active-border-color:var(--color-primary-dark); }
.pagination { --bs-pagination-color:var(--color-accent); --bs-pagination-hover-color:var(--color-primary-dark); --bs-pagination-hover-bg:var(--color-tint); --bs-pagination-focus-color:var(--color-primary-dark); --bs-pagination-focus-bg:var(--color-tint); --bs-pagination-active-color:var(--color-surface); --bs-pagination-active-bg:var(--color-accent); --bs-pagination-active-border-color:var(--color-accent); --bs-pagination-disabled-color:var(--color-text-secondary); --bs-pagination-disabled-bg:var(--color-background); }
.form-control,.form-select { --bs-border-color:var(--color-border-control); background-color:var(--color-surface); }
.form-control:focus,.form-select:focus { border-color:var(--color-accent); }
.form-check-input:checked { background-color:var(--color-accent); border-color:var(--color-accent); }
.modal-content,.dropdown-menu { --bs-modal-bg:var(--color-surface); --bs-modal-color:var(--color-text); --bs-dropdown-bg:var(--color-surface); --bs-dropdown-color:var(--color-text); --bs-dropdown-link-color:var(--color-text); --bs-dropdown-link-hover-bg:var(--color-tint); --bs-dropdown-link-active-bg:var(--color-accent); }
.sidebar { background:var(--color-primary-dark); border-color:var(--color-dark-border); }
.sidebar .brand,.sidebar .brand strong { color:var(--color-on-dark); }
.sidebar .brand small,.sidebar .sidebar-section-label,.sidebar .nav-status { color:var(--color-on-dark-secondary); }
.sidebar .nav-link { color:var(--color-on-dark-secondary); }
.sidebar .nav-link:hover { background:var(--color-primary); color:var(--color-on-dark); }
.sidebar .nav-link.active { background:var(--color-accent); color:var(--color-on-dark); }
.sidebar .sidebar-footer { border-color:var(--color-dark-border); }
.topbar { background:var(--color-primary); border-color:var(--color-primary-dark); }
.topbar .page-title,.topbar .account-menu>summary { color:var(--color-on-dark); }
.topbar .eyebrow { color:var(--color-on-dark-secondary); }
.topbar .user-avatar { background:var(--color-accent); color:var(--color-on-dark); }
.site-header .site-brand { color:var(--color-primary); }
