/* Shared clinic palette. Page styles use these tokens without changing layout. */
:root {
    --clinic-navy: #172B4D;
    --clinic-blue: #245B92;
    --clinic-blue-hover: #1B4772;
    --clinic-teal: #087F8C;
    --clinic-teal-hover: #066672;
    --clinic-bg: #F3F5F7;
    --clinic-surface: #FFFFFF;
    --clinic-card: var(--clinic-surface);
    --clinic-text: #263445;
    --clinic-border: #DCE3E9;
    --clinic-muted: #5F6F7D;
    --clinic-soft: #EDF3F8;
    --clinic-teal-soft: #EAF5F6;
    --clinic-focus: #087F8C;
    --clinic-danger: #B42318;
    --clinic-danger-soft: #FEF3F2;
    --clinic-danger-border: #F5CDC8;
    --clinic-warning: #946200;
    --clinic-warning-soft: #FFF7E5;
    --clinic-warning-border: #EFD39C;
    --clinic-navy-rgb: 23, 43, 77;
    --clinic-blue-rgb: 36, 91, 146;
    --clinic-teal-rgb: 8, 127, 140;
    --bs-primary: var(--clinic-blue);
    --bs-primary-rgb: var(--clinic-blue-rgb);
    --bs-primary-text-emphasis: var(--clinic-navy);
    --bs-primary-bg-subtle: var(--clinic-soft);
    --bs-primary-border-subtle: #B9CCE0;
    --bs-secondary: var(--clinic-muted);
    --bs-secondary-rgb: 95, 111, 125;
    --bs-info: var(--clinic-teal);
    --bs-info-rgb: var(--clinic-teal-rgb);
    --bs-info-text-emphasis: #065B65;
    --bs-info-bg-subtle: var(--clinic-teal-soft);
    --bs-info-border-subtle: #B8DCE1;
    --bs-body-color: var(--clinic-text);
    --bs-body-color-rgb: 38, 52, 69;
    --bs-body-bg: var(--clinic-bg);
    --bs-body-bg-rgb: 243, 245, 247;
    --bs-heading-color: inherit;
    --bs-border-color: var(--clinic-border);
    --bs-secondary-color: var(--clinic-muted);
    --bs-tertiary-bg: var(--clinic-soft);
    --bs-link-color: var(--clinic-blue);
    --bs-link-color-rgb: var(--clinic-blue-rgb);
    --bs-link-hover-color: var(--clinic-blue-hover);
    --bs-link-hover-color-rgb: 27, 71, 114;
    --bs-focus-ring-color: rgba(8, 127, 140, .22);
}
body { color: var(--clinic-text); background-color: var(--clinic-bg); }
::selection { color: var(--clinic-navy); background: #B8DCE1; }
h1,h2,h3,h4,h5,h6 { color: var(--clinic-navy); }
.text-white :where(h1,h2,h3,h4,h5,h6),
.cw-hero :where(h1,h2,h3,h4,h5,h6),
.ps-hero :where(h1,h2,h3,h4,h5,h6),
.hero-section :where(h1,h2,h3,h4,h5,h6),
.metric-purple :where(h1,h2,h3,h4,h5,h6) { color: inherit; }
a:where(:not([class])) { color: var(--clinic-blue); }
a:where(:not([class])):hover { color: var(--clinic-blue-hover); }
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--clinic-blue);
    --bs-btn-border-color: var(--clinic-blue);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--clinic-blue-hover);
    --bs-btn-hover-border-color: var(--clinic-blue-hover);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--clinic-navy);
    --bs-btn-active-border-color: var(--clinic-navy);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--clinic-blue);
    --bs-btn-disabled-border-color: var(--clinic-blue);
    --bs-btn-focus-shadow-rgb: var(--clinic-blue-rgb);
}
.btn-outline-primary {
    --bs-btn-color: var(--clinic-blue);
    --bs-btn-border-color: var(--clinic-blue);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--clinic-blue);
    --bs-btn-hover-border-color: var(--clinic-blue);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--clinic-navy);
    --bs-btn-active-border-color: var(--clinic-navy);
    --bs-btn-disabled-color: var(--clinic-blue);
    --bs-btn-disabled-border-color: var(--clinic-blue);
    --bs-btn-focus-shadow-rgb: var(--clinic-blue-rgb);
}
.btn-info {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--clinic-teal);
    --bs-btn-border-color: var(--clinic-teal);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--clinic-teal-hover);
    --bs-btn-hover-border-color: var(--clinic-teal-hover);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--clinic-teal-hover);
    --bs-btn-active-border-color: var(--clinic-teal-hover);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--clinic-teal);
    --bs-btn-disabled-border-color: var(--clinic-teal);
}
.btn-outline-info {
    --bs-btn-color: var(--clinic-teal);
    --bs-btn-border-color: var(--clinic-teal);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--clinic-teal);
    --bs-btn-hover-border-color: var(--clinic-teal);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--clinic-teal-hover);
    --bs-btn-active-border-color: var(--clinic-teal-hover);
}
.btn-light { --bs-btn-bg: #fff; --bs-btn-border-color: var(--clinic-border); --bs-btn-color: var(--clinic-text); --bs-btn-hover-bg: var(--clinic-soft); }
.card { --bs-card-border-color: var(--clinic-border); --bs-card-bg: var(--clinic-surface); }
.form-control, .form-select { border-color: var(--clinic-border); color: var(--clinic-text); background-color: var(--clinic-surface); }
.form-control:focus, .form-select:focus {
    border-color: var(--clinic-teal);
    box-shadow: 0 0 0 .2rem rgba(8, 127, 140, .16);
}
.form-check-input:checked { background-color: var(--clinic-teal); border-color: var(--clinic-teal); }
.form-check-input:focus { border-color: var(--clinic-teal); box-shadow: 0 0 0 .2rem rgba(8, 127, 140, .16); }
input[type=checkbox], input[type=radio] { accent-color: var(--clinic-teal); }
.nav-pills { --bs-nav-pills-link-active-bg: var(--clinic-teal); }
.nav-tabs { --bs-nav-tabs-border-color: var(--clinic-border); --bs-nav-tabs-link-active-color: var(--clinic-teal); }
.pagination { --bs-pagination-color: var(--clinic-blue); --bs-pagination-active-bg: var(--clinic-teal); --bs-pagination-active-border-color: var(--clinic-teal); --bs-pagination-hover-color: var(--clinic-blue-hover); --bs-pagination-focus-box-shadow: 0 0 0 .2rem rgba(8,127,140,.16); }
.list-group { --bs-list-group-active-bg: var(--clinic-blue); --bs-list-group-active-border-color: var(--clinic-blue); }
.dropdown-menu { --bs-dropdown-link-active-bg: var(--clinic-teal); }
.progress { --bs-progress-bar-bg: var(--clinic-blue); }
.table { --bs-table-color: var(--clinic-text); --bs-table-border-color: var(--clinic-border); --bs-table-bg: var(--clinic-surface); }
.accordion { --bs-accordion-active-color: var(--clinic-navy); --bs-accordion-active-bg: var(--clinic-soft); --bs-accordion-btn-focus-box-shadow: 0 0 0 .2rem rgba(8,127,140,.16); }
.select2-container--default .select2-selection--single { border-color: var(--clinic-border); }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: var(--clinic-blue); color: #fff; }
.swal2-popup { color: var(--clinic-text); }
.swal2-title { color: var(--clinic-navy); }
:where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--clinic-focus); outline-offset: 3px; }
@media print {
    body { background-color: #fff; color: #000; }
    h1,h2,h3,h4,h5,h6 { color: #000; }
}
