:root {
    --ink: #143552;
    --muted: #607687;
    --forest: #0b2849;
    --forest-2: #167591;
    --sage: #e2f0f5;
    --paper: #edf6fb;
    --line: #cfdee7;
    --gold: #d5ae62;
    --gold-bright: #e2c477;
    --shadow: 0 18px 42px rgba(11, 40, 73, .13);
    --medical-gradient: linear-gradient(115deg, #0b2849 0%, #103a63 52%, #167591 100%);
    --session-ink: #143552;
    --session-muted: #607687;
    --session-line: #cfdee7;
    --session-soft: #edf6fa;
    --session-green: #167591;
    --session-green-dark: #103a63;
    --session-blue: #176e96;
}

body { color: #243b4c; background: var(--paper); }

.topbar,
.dashboard-welcome,
.page-heading,
.patient-hero,
.document-hero,
.metabolic-hero { background: var(--medical-gradient) !important; }

.topbar { box-shadow: 0 3px 16px rgba(11, 40, 73, .18); }
.topbar .main-nav a { color: #dceaf2; }
.topbar .main-nav a:hover { background: rgba(255, 255, 255, .09); }
.session-user small { color: #c5dce8; }
.session-user span { color: #9fc2d2; }
.dashboard-welcome p,
.page-heading p,
.patient-hero p { color: #d9eaf2; }

button:not(.link-button):not(.secondary-button):not(.z-date-trigger):not(.z-date-nav):not(.z-date-day),
.button-link,
.ai-button,
.metabolic-session-primary {
    background: linear-gradient(115deg, #103a63, #167591) !important;
    color: #fff !important;
}

button:not(.link-button):not(.secondary-button):not(.z-date-trigger):not(.z-date-nav):not(.z-date-day):hover,
.button-link:hover,
.ai-button:hover,
.metabolic-session-primary:hover { background: linear-gradient(115deg, #0b2849, #145f7e) !important; }

a,
.back-link,
.patient-context b,
.session-card-actions a,
.metabolic-session-actions a,
.metabolic-session-actions button { color: #124f73; }

input:focus,
textarea:focus,
select:focus,
button:focus-visible,
a:focus-visible {
    border-color: #167591 !important;
    box-shadow: 0 0 0 3px rgba(22, 117, 145, .18) !important;
    outline-color: var(--gold-bright);
}

.patient-avatar,
.dashboard-action-icon,
.session-method-tags small,
.session-executive-snapshot > div,
.session-date-locked,
.defaults-quick-link,
.metabolic-session-method[data-state="completed"] {
    background: #e2f0f5 !important;
    color: #124f73 !important;
}

.status-line i,
.schedule-periods a.active,
[data-session-filter].is-active,
.z-date-day.is-selected {
    background: #167591 !important;
    border-color: #167591 !important;
    color: #fff !important;
}

.schedule-periods a,
.schedule-actions > span,
.timeline-entry > footer code,
.z-date-actions button { color: #145f7e !important; }

.notice:not(.notice-error):not(.notice-warning) {
    border-color: #bdd8e5;
    background: #e4f1f7;
    color: #124f73;
}

.ai-assistant,
.document-upload-card,
.document-stage-card,
.metabolic-panel,
.session-history-heading,
.session-workspace-heading,
.session-history-card { border-color: var(--line); }

.z-date-field > .z-date-trigger {
    border-color: #bed2df !important;
    background: #f2f8fb !important;
    color: #124f73 !important;
}

.z-date-field > .z-date-trigger:hover,
.z-date-field > .z-date-trigger:focus-visible,
.z-date-picker button:hover:not(:disabled),
.z-date-picker button:focus-visible { background: #e2f0f5 !important; }

.z-date-picker {
    border-color: #aac8d8;
    color: var(--ink);
    box-shadow: 0 18px 45px rgba(11, 40, 73, .22);
}

.z-date-picker button { color: var(--ink) !important; }
.z-date-weekday { color: #587184; }
.z-date-actions { border-top-color: #d9e6ed; }
.session-history-card { border-left-color: #176e96; }
.session-history-card.status-finalized { border-left-color: #167591; }
.session-compare-toolbar { border-color: #9bc5d6; background: #edf7fa; }

@media (forced-colors: active) {
    .topbar,
    .dashboard-welcome,
    .page-heading,
    .patient-hero,
    .document-hero,
    .metabolic-hero { background: Canvas !important; color: CanvasText !important; }
}
