/* Classic colour roles. Step 1 preserves every original value, including the
   separate gray/slate families, legacy shades and translucent shadows.
   Loaded before output.css and admin.css. Presets are opt-in for staff pages; selection is a separate step. */
:root {
    --bg: #f9fafb;
    --surface: #ffffff;
    --surface-2: #f3f4f6;
    --border: #e5e7eb;
    --border-strong: #d1d5db;
    --border-input: #9ca3af;
    --ink: #111827;
    --ink-secondary: #374151;
    --muted: #4b5563;
    --muted-soft: #6b7280;
    --accent: #1d4ed8;
    --accent-hover: #1e40af;
    --accent-active: #1e3a8a;
    --focus: #2563eb;
    --focus-ring: #3b82f6;
    --info-ink-deep: #172554;
    --info-ink-legacy: #174ea6;
    --info-bg: #dbeafe;
    --info-surface: #eff6ff;
    --info-border: #bfdbfe;
    --info-border-muted: #c7d7ee;
    --info-surface-legacy: #e8f0ff;
    --ok-ink: #166534;
    --ok-bg: #dcfce7;
    --ok-accent: #16a34a;
    --ok-strong: #15803d;
    --ok-border: #bbf7d0;
    --ok-ink-soft: #216839;
    --ok-surface: #e9f7ed;
    --success-banner-ink: #155724;
    --success-banner-bg: #d4edda;
    --warn-ink: #92400e;
    --warn-bg: #fef3c7;
    --warn-ink-orange: #9a3412;
    --warn-surface: #fff7ed;
    --warn-border: #fed7aa;
    --warn-ink-legacy: #9a4f08;
    --danger: #dc2626;
    --danger-hover: #b91c1c;
    --danger-ink: #991b1b;
    --danger-accent: #ef4444;
    --danger-bg: #fee2e2;
    --danger-border: #fca5a5;
    --danger-border-soft: #fecaca;
    --danger-surface: #fef2f2;
    --error-ink: #b42318;
    --shortfall-ink: #9b2c22;
    --danger-ink-muted: #a13b32;
    --danger-border-legacy: #dd8888;
    --error-banner-ink: #721c24;
    --error-banner-bg: #f8d7da;
    --rose-surface: #fff1f2;
    --rose-hover: #ffe4e6;
    --danger-surface-soft: #fff7f7;
    --danger-surface-faint: #fffafa;
    --danger-surface-warm: #fff1f0;
    --sky-ink: #075985;
    --sky-bg: #e0f2fe;
    --violet-ink: #7c3aed;
    --violet-bg: #f3e8ff;
    --slate-surface: #f8fafc;
    --slate-surface-2: #f1f5f9;
    --slate-border: #e2e8f0;
    --slate-border-strong: #cbd5e1;
    --slate-disabled: #94a3b8;
    --slate-muted-soft: #64748b;
    --slate-muted: #475569;
    --slate-ink-secondary: #334155;
    --slate-ink: #0f172a;
    --muted-legacy: #667085;
    --nav-ink: #475467;
    --nav-ink-hover: #1d2939;
    --nav-border: #d8dee8;
    --document-border: #d7dee8;
    --draft-border: #dbe3ec;
    --border-muted-legacy: #b9c2cf;
    --surface-legacy: #eef2f6;
    --surface-faint: #fafbfc;
    --neutral-surface: #fafafa;
    --neutral-border: #e0e0e0;
    --neutral-border-strong: #cccccc;
    --print-border: #999999;
    --neutral-muted: #666666;
    --print-ink: #000000;
    --shadow-neutral: rgba(0,0,0,0.1);
    --shadow-slate-soft: rgba(15,23,42,0.08);
    --shadow-slate: rgba(15,23,42,0.12);
    --shadow-slate-strong: rgba(15,23,42,0.14);
    --shadow-card: rgba(17,24,39,0.06);
    --focus-rose: rgba(190,24,93,0.18);
    --border-on-accent: rgba(255,255,255,0.65);
    --surface-overlay: rgba(255,255,255,0.98);
    --shadow-accent: rgba(29,78,216,0.12);
    --shadow-accent-strong: rgba(29,78,216,0.14);
    --shadow-info: rgba(30,64,175,.06);
    --focus-halo: rgba(37,99,235,0.24);
    --on-accent: #ffffff;
    --link: #1d4ed8;
    --status-yellow-bg: #fef9c3;
    --status-yellow-ink: #854d0e;
    --ink-strong: #1f2937;
    --ink-secondary-legacy: #344054;
    --border-faint: #eef2f7;
    --ok-surface-faint: #f0fdf4;
    --warn-surface-faint: #fffbeb;
    --shadow-neutral-soft: rgba(0,0,0,0.08);
    --nav: #111827;
    --today: #eff6ff;
    --today-ink: #1e40af;
    --tag-1-bg: #dbeafe;
    --tag-1-ink: #1e40af;
    --tag-2-bg: #fff7ed;
    --tag-2-ink: #9a3412;
    --job-0-bg: #edf4fc;
    --job-1-bg: #faf2e7;
    --job-2-bg: #edf6ef;
    --job-3-bg: #f4effa;
    --job-4-bg: #faf0f2;
    --job-5-bg: #edf5f4;
    --pdf-paper: #ffffff;
}

/* Complete staff presets: every Classic token has an explicit value or role alias. */
:root[data-theme="shop"]:has(.admin-shell > .admin-top-bar) {
    --bg: #ECE8E1;
    --surface: #FBFAF7;
    --surface-2: #F3EFE8;
    --border: #D9D2C5;
    --border-strong: var(--border);
    --border-input: var(--muted);
    --ink: #1D1C1A;
    --ink-secondary: var(--ink);
    --muted: #5F5A51;
    --muted-soft: var(--muted);
    --accent: #E3A21A;
    --accent-hover: var(--tag-1-ink);
    --accent-active: var(--tag-1-ink);
    --focus: var(--link);
    --focus-ring: var(--link);
    --info-ink-deep: var(--tag-1-ink);
    --info-ink-legacy: var(--tag-1-ink);
    --info-bg: var(--tag-1-bg);
    --info-surface: var(--tag-1-bg);
    --info-border: var(--tag-1-bg);
    --info-border-muted: var(--tag-1-bg);
    --info-surface-legacy: var(--tag-1-bg);
    --ok-ink: #1D5A35;
    --ok-bg: #DCEBDF;
    --ok-accent: var(--ok-ink);
    --ok-strong: var(--ok-ink);
    --ok-border: var(--ok-bg);
    --ok-ink-soft: var(--ok-ink);
    --ok-surface: var(--ok-bg);
    --success-banner-ink: var(--ok-ink);
    --success-banner-bg: var(--ok-bg);
    --warn-ink: #843809;
    --warn-bg: #F8DCC6;
    --warn-ink-orange: var(--warn-ink);
    --warn-surface: var(--warn-bg);
    --warn-border: var(--warn-bg);
    --warn-ink-legacy: var(--warn-ink);
    --danger: var(--error-ink);
    --danger-hover: var(--error-ink);
    --danger-ink: var(--error-ink);
    --danger-accent: var(--error-ink);
    --danger-bg: #F4DAD5;
    --danger-border: var(--error-ink);
    --danger-border-soft: var(--error-ink);
    --danger-surface: var(--danger-bg);
    --error-ink: #8B2922;
    --shortfall-ink: var(--error-ink);
    --danger-ink-muted: var(--error-ink);
    --danger-border-legacy: var(--error-ink);
    --error-banner-ink: var(--error-ink);
    --error-banner-bg: var(--danger-bg);
    --rose-surface: var(--danger-bg);
    --rose-hover: var(--danger-bg);
    --danger-surface-soft: var(--danger-bg);
    --danger-surface-faint: var(--danger-bg);
    --danger-surface-warm: var(--danger-bg);
    --sky-ink: var(--tag-1-ink);
    --sky-bg: var(--tag-1-bg);
    --violet-ink: var(--tag-2-ink);
    --violet-bg: var(--tag-2-bg);
    --slate-surface: var(--surface-2);
    --slate-surface-2: var(--surface-2);
    --slate-border: var(--border);
    --slate-border-strong: var(--border);
    --slate-disabled: var(--border);
    --slate-muted-soft: var(--muted);
    --slate-muted: var(--muted);
    --slate-ink-secondary: var(--ink);
    --slate-ink: var(--ink);
    --muted-legacy: var(--muted);
    --nav-ink: #B9BDC4;
    --nav-ink-hover: var(--link);
    --nav-border: var(--border);
    --document-border: var(--border);
    --draft-border: var(--border);
    --border-muted-legacy: var(--border);
    --surface-legacy: var(--surface-2);
    --surface-faint: var(--surface);
    --neutral-surface: var(--surface);
    --neutral-border: var(--border);
    --neutral-border-strong: var(--border);
    --print-border: var(--muted);
    --neutral-muted: var(--muted);
    --print-ink: var(--ink);
    --shadow-neutral: rgba(0, 0, 0, 0.16);
    --shadow-slate-soft: var(--shadow-neutral);
    --shadow-slate: var(--shadow-neutral);
    --shadow-slate-strong: var(--shadow-neutral);
    --shadow-card: var(--shadow-neutral);
    --focus-rose: var(--link);
    --border-on-accent: var(--on-accent);
    --surface-overlay: var(--surface);
    --shadow-accent: var(--shadow-neutral);
    --shadow-accent-strong: var(--shadow-neutral);
    --shadow-info: var(--shadow-neutral);
    --focus-halo: var(--link);
    --on-accent: #1D1C1A;
    --link: #7A4A00;
    --status-yellow-bg: var(--warn-bg);
    --status-yellow-ink: var(--warn-ink);
    --ink-strong: var(--ink);
    --ink-secondary-legacy: var(--ink);
    --border-faint: var(--border);
    --ok-surface-faint: var(--ok-bg);
    --warn-surface-faint: var(--warn-bg);
    --shadow-neutral-soft: var(--shadow-neutral);
    --nav: #22252A;
    --today: #F4E4BE;
    --today-ink: #5E3B00;
    --tag-1-bg: #D6E3EF;
    --tag-1-ink: #1E4A70;
    --tag-2-bg: #EBDCCD;
    --tag-2-ink: #6B3A14;
    --job-0-bg: #e8eff3;
    --job-1-bg: #f5eddf;
    --job-2-bg: #edf2e8;
    --job-3-bg: #f1edf3;
    --job-4-bg: #f7ece8;
    --job-5-bg: #e8f2ef;
    --pdf-paper: #ffffff;
    color-scheme: light;
}

:root[data-theme="blueprint"]:has(.admin-shell > .admin-top-bar) {
    --bg: #E3E9EF;
    --surface: #FFFFFF;
    --surface-2: #F1F4F7;
    --border: #C8D2DC;
    --border-strong: var(--border);
    --border-input: var(--muted);
    --ink: #122131;
    --ink-secondary: var(--ink);
    --muted: #4C5D6E;
    --muted-soft: var(--muted);
    --accent: #B8520E;
    --accent-hover: var(--tag-1-ink);
    --accent-active: var(--tag-1-ink);
    --focus: var(--link);
    --focus-ring: var(--link);
    --info-ink-deep: var(--tag-1-ink);
    --info-ink-legacy: var(--tag-1-ink);
    --info-bg: var(--tag-1-bg);
    --info-surface: var(--tag-1-bg);
    --info-border: var(--tag-1-bg);
    --info-border-muted: var(--tag-1-bg);
    --info-surface-legacy: var(--tag-1-bg);
    --ok-ink: #1A5638;
    --ok-bg: #D9EDE3;
    --ok-accent: var(--ok-ink);
    --ok-strong: var(--ok-ink);
    --ok-border: var(--ok-bg);
    --ok-ink-soft: var(--ok-ink);
    --ok-surface: var(--ok-bg);
    --success-banner-ink: var(--ok-ink);
    --success-banner-bg: var(--ok-bg);
    --warn-ink: #843809;
    --warn-bg: #F8E0CC;
    --warn-ink-orange: var(--warn-ink);
    --warn-surface: var(--warn-bg);
    --warn-border: var(--warn-bg);
    --warn-ink-legacy: var(--warn-ink);
    --danger: var(--error-ink);
    --danger-hover: var(--error-ink);
    --danger-ink: var(--error-ink);
    --danger-accent: var(--error-ink);
    --danger-bg: #F5DCD7;
    --danger-border: var(--error-ink);
    --danger-border-soft: var(--error-ink);
    --danger-surface: var(--danger-bg);
    --error-ink: #912B23;
    --shortfall-ink: var(--error-ink);
    --danger-ink-muted: var(--error-ink);
    --danger-border-legacy: var(--error-ink);
    --error-banner-ink: var(--error-ink);
    --error-banner-bg: var(--danger-bg);
    --rose-surface: var(--danger-bg);
    --rose-hover: var(--danger-bg);
    --danger-surface-soft: var(--danger-bg);
    --danger-surface-faint: var(--danger-bg);
    --danger-surface-warm: var(--danger-bg);
    --sky-ink: var(--tag-1-ink);
    --sky-bg: var(--tag-1-bg);
    --violet-ink: var(--tag-2-ink);
    --violet-bg: var(--tag-2-bg);
    --slate-surface: var(--surface-2);
    --slate-surface-2: var(--surface-2);
    --slate-border: var(--border);
    --slate-border-strong: var(--border);
    --slate-disabled: var(--border);
    --slate-muted-soft: var(--muted);
    --slate-muted: var(--muted);
    --slate-ink-secondary: var(--ink);
    --slate-ink: var(--ink);
    --muted-legacy: var(--muted);
    --nav-ink: #B5C6D8;
    --nav-ink-hover: var(--link);
    --nav-border: var(--border);
    --document-border: var(--border);
    --draft-border: var(--border);
    --border-muted-legacy: var(--border);
    --surface-legacy: var(--surface-2);
    --surface-faint: var(--surface);
    --neutral-surface: var(--surface);
    --neutral-border: var(--border);
    --neutral-border-strong: var(--border);
    --print-border: var(--muted);
    --neutral-muted: var(--muted);
    --print-ink: var(--ink);
    --shadow-neutral: rgba(0, 0, 0, 0.16);
    --shadow-slate-soft: var(--shadow-neutral);
    --shadow-slate: var(--shadow-neutral);
    --shadow-slate-strong: var(--shadow-neutral);
    --shadow-card: var(--shadow-neutral);
    --focus-rose: var(--link);
    --border-on-accent: var(--on-accent);
    --surface-overlay: var(--surface);
    --shadow-accent: var(--shadow-neutral);
    --shadow-accent-strong: var(--shadow-neutral);
    --shadow-info: var(--shadow-neutral);
    --focus-halo: var(--link);
    --on-accent: #FFFFFF;
    --link: #1D5C96;
    --status-yellow-bg: var(--warn-bg);
    --status-yellow-ink: var(--warn-ink);
    --ink-strong: var(--ink);
    --ink-secondary-legacy: var(--ink);
    --border-faint: var(--border);
    --ok-surface-faint: var(--ok-bg);
    --warn-surface-faint: var(--warn-bg);
    --shadow-neutral-soft: var(--shadow-neutral);
    --nav: #0D2943;
    --today: #D3E3F3;
    --today-ink: #123F6A;
    --tag-1-bg: #D3E2F1;
    --tag-1-ink: #173F66;
    --tag-2-bg: #F0DECF;
    --tag-2-ink: #6E3B12;
    --job-0-bg: #ecf3f9;
    --job-1-bg: #f8f0e6;
    --job-2-bg: #ecf5ef;
    --job-3-bg: #f2eef8;
    --job-4-bg: #f8eff1;
    --job-5-bg: #eaf4f3;
    --pdf-paper: #ffffff;
    color-scheme: light;
}

:root[data-theme="night"]:has(.admin-shell > .admin-top-bar) {
    --bg: #111316;
    --surface: #1A1D22;
    --surface-2: #23272D;
    --border: #30353D;
    --border-strong: var(--border);
    --border-input: var(--muted);
    --ink: #ECEAE5;
    --ink-secondary: var(--ink);
    --muted: #A4A9B1;
    --muted-soft: var(--muted);
    --accent: #F0B23A;
    --accent-hover: var(--tag-1-ink);
    --accent-active: var(--tag-1-ink);
    --focus: var(--link);
    --focus-ring: var(--link);
    --info-ink-deep: var(--tag-1-ink);
    --info-ink-legacy: var(--tag-1-ink);
    --info-bg: var(--tag-1-bg);
    --info-surface: var(--tag-1-bg);
    --info-border: var(--tag-1-bg);
    --info-border-muted: var(--tag-1-bg);
    --info-surface-legacy: var(--tag-1-bg);
    --ok-ink: #8BD9AC;
    --ok-bg: #173126;
    --ok-accent: var(--ok-ink);
    --ok-strong: var(--ok-ink);
    --ok-border: var(--ok-bg);
    --ok-ink-soft: var(--ok-ink);
    --ok-surface: var(--ok-bg);
    --success-banner-ink: var(--ok-ink);
    --success-banner-bg: var(--ok-bg);
    --warn-ink: #F6B37C;
    --warn-bg: #3B2717;
    --warn-ink-orange: var(--warn-ink);
    --warn-surface: var(--warn-bg);
    --warn-border: var(--warn-bg);
    --warn-ink-legacy: var(--warn-ink);
    --danger: var(--error-ink);
    --danger-hover: var(--error-ink);
    --danger-ink: var(--error-ink);
    --danger-accent: var(--error-ink);
    --danger-bg: #3A2020;
    --danger-border: var(--error-ink);
    --danger-border-soft: var(--error-ink);
    --danger-surface: var(--danger-bg);
    --error-ink: #F2AAA0;
    --shortfall-ink: var(--error-ink);
    --danger-ink-muted: var(--error-ink);
    --danger-border-legacy: var(--error-ink);
    --error-banner-ink: var(--error-ink);
    --error-banner-bg: var(--danger-bg);
    --rose-surface: var(--danger-bg);
    --rose-hover: var(--danger-bg);
    --danger-surface-soft: var(--danger-bg);
    --danger-surface-faint: var(--danger-bg);
    --danger-surface-warm: var(--danger-bg);
    --sky-ink: var(--tag-1-ink);
    --sky-bg: var(--tag-1-bg);
    --violet-ink: var(--tag-2-ink);
    --violet-bg: var(--tag-2-bg);
    --slate-surface: var(--surface-2);
    --slate-surface-2: var(--surface-2);
    --slate-border: var(--border);
    --slate-border-strong: var(--border);
    --slate-disabled: var(--border);
    --slate-muted-soft: var(--muted);
    --slate-muted: var(--muted);
    --slate-ink-secondary: var(--ink);
    --slate-ink: var(--ink);
    --muted-legacy: var(--muted);
    --nav-ink: #A4A9B1;
    --nav-ink-hover: var(--link);
    --nav-border: var(--border);
    --document-border: var(--border);
    --draft-border: var(--border);
    --border-muted-legacy: var(--border);
    --surface-legacy: var(--surface-2);
    --surface-faint: var(--surface);
    --neutral-surface: var(--surface);
    --neutral-border: var(--border);
    --neutral-border-strong: var(--border);
    --print-border: var(--muted);
    --neutral-muted: var(--muted);
    --print-ink: var(--ink);
    --shadow-neutral: rgba(0, 0, 0, 0.45);
    --shadow-slate-soft: var(--shadow-neutral);
    --shadow-slate: var(--shadow-neutral);
    --shadow-slate-strong: var(--shadow-neutral);
    --shadow-card: var(--shadow-neutral);
    --focus-rose: var(--link);
    --border-on-accent: var(--on-accent);
    --surface-overlay: var(--surface);
    --shadow-accent: var(--shadow-neutral);
    --shadow-accent-strong: var(--shadow-neutral);
    --shadow-info: var(--shadow-neutral);
    --focus-halo: var(--link);
    --on-accent: #15161A;
    --link: #F3C46C;
    --status-yellow-bg: var(--warn-bg);
    --status-yellow-ink: var(--warn-ink);
    --ink-strong: var(--ink);
    --ink-secondary-legacy: var(--ink);
    --border-faint: var(--border);
    --ok-surface-faint: var(--ok-bg);
    --warn-surface-faint: var(--warn-bg);
    --shadow-neutral-soft: var(--shadow-neutral);
    --nav: #0A0B0D;
    --today: #262013;
    --today-ink: #F3C46C;
    --tag-1-bg: #1C3049;
    --tag-1-ink: #A3C8EF;
    --tag-2-bg: #3A2A1C;
    --tag-2-ink: #E9BD93;
    --job-0-bg: #202c39;
    --job-1-bg: #31291f;
    --job-2-bg: #223127;
    --job-3-bg: #2c2738;
    --job-4-bg: #34282e;
    --job-5-bg: #203130;
    --pdf-paper: #ffffff;
    color-scheme: dark;
}

/* Bind shared body utilities and native controls only on themed staff screens.
   Contractor/login roots do not match, even if an attribute is set manually. */
@media screen {
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) body { background: var(--bg); color: var(--ink); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]), select, textarea) {
        background-color: var(--surface); color: var(--ink); border-color: var(--border);
    }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell ::placeholder { color: var(--muted); opacity: 1; }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-nav { background-color: var(--nav); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-nav-group-label { color: var(--nav-ink); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-nav-link { color: var(--nav-ink); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-nav-link:is(.is-active, :hover) { background: var(--accent); color: var(--on-accent); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell :is(.admin-context-link, .program-back, .program-subnav a) { color: var(--link); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell :is(.count-badge, .order-delivery-facts strong, .order-queue-tools label, .delivery-date-form label, .delivery-hide-label) { color: var(--muted); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell .btn-primary:is(:hover, :active) { background: var(--accent); color: var(--on-accent); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell .btn-danger { background: var(--error-ink); color: var(--surface); }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell :is(.btn-primary, .btn-secondary):disabled { background: var(--surface-2); color: var(--muted); border-color: var(--border); cursor: not-allowed; }
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell .po-mark { background: var(--nav); color: var(--nav-ink); }
    /* PDF page pixels remain paper white in every preset. */
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) .admin-shell .document-preview-sheet canvas { background: var(--pdf-paper); }
}

/* Restore every Classic value when printing any themed staff page. */
@media print {
    :root:is([data-theme="shop"], [data-theme="blueprint"], [data-theme="night"]):has(.admin-shell > .admin-top-bar) {
        --bg: #f9fafb;
        --surface: #ffffff;
        --surface-2: #f3f4f6;
        --border: #e5e7eb;
        --border-strong: #d1d5db;
        --border-input: #9ca3af;
        --ink: #111827;
        --ink-secondary: #374151;
        --muted: #4b5563;
        --muted-soft: #6b7280;
        --accent: #1d4ed8;
        --accent-hover: #1e40af;
        --accent-active: #1e3a8a;
        --focus: #2563eb;
        --focus-ring: #3b82f6;
        --info-ink-deep: #172554;
        --info-ink-legacy: #174ea6;
        --info-bg: #dbeafe;
        --info-surface: #eff6ff;
        --info-border: #bfdbfe;
        --info-border-muted: #c7d7ee;
        --info-surface-legacy: #e8f0ff;
        --ok-ink: #166534;
        --ok-bg: #dcfce7;
        --ok-accent: #16a34a;
        --ok-strong: #15803d;
        --ok-border: #bbf7d0;
        --ok-ink-soft: #216839;
        --ok-surface: #e9f7ed;
        --success-banner-ink: #155724;
        --success-banner-bg: #d4edda;
        --warn-ink: #92400e;
        --warn-bg: #fef3c7;
        --warn-ink-orange: #9a3412;
        --warn-surface: #fff7ed;
        --warn-border: #fed7aa;
        --warn-ink-legacy: #9a4f08;
        --danger: #dc2626;
        --danger-hover: #b91c1c;
        --danger-ink: #991b1b;
        --danger-accent: #ef4444;
        --danger-bg: #fee2e2;
        --danger-border: #fca5a5;
        --danger-border-soft: #fecaca;
        --danger-surface: #fef2f2;
        --error-ink: #b42318;
        --shortfall-ink: #9b2c22;
        --danger-ink-muted: #a13b32;
        --danger-border-legacy: #dd8888;
        --error-banner-ink: #721c24;
        --error-banner-bg: #f8d7da;
        --rose-surface: #fff1f2;
        --rose-hover: #ffe4e6;
        --danger-surface-soft: #fff7f7;
        --danger-surface-faint: #fffafa;
        --danger-surface-warm: #fff1f0;
        --sky-ink: #075985;
        --sky-bg: #e0f2fe;
        --violet-ink: #7c3aed;
        --violet-bg: #f3e8ff;
        --slate-surface: #f8fafc;
        --slate-surface-2: #f1f5f9;
        --slate-border: #e2e8f0;
        --slate-border-strong: #cbd5e1;
        --slate-disabled: #94a3b8;
        --slate-muted-soft: #64748b;
        --slate-muted: #475569;
        --slate-ink-secondary: #334155;
        --slate-ink: #0f172a;
        --muted-legacy: #667085;
        --nav-ink: #475467;
        --nav-ink-hover: #1d2939;
        --nav-border: #d8dee8;
        --document-border: #d7dee8;
        --draft-border: #dbe3ec;
        --border-muted-legacy: #b9c2cf;
        --surface-legacy: #eef2f6;
        --surface-faint: #fafbfc;
        --neutral-surface: #fafafa;
        --neutral-border: #e0e0e0;
        --neutral-border-strong: #cccccc;
        --print-border: #999999;
        --neutral-muted: #666666;
        --print-ink: #000000;
        --shadow-neutral: rgba(0,0,0,0.1);
        --shadow-slate-soft: rgba(15,23,42,0.08);
        --shadow-slate: rgba(15,23,42,0.12);
        --shadow-slate-strong: rgba(15,23,42,0.14);
        --shadow-card: rgba(17,24,39,0.06);
        --focus-rose: rgba(190,24,93,0.18);
        --border-on-accent: rgba(255,255,255,0.65);
        --surface-overlay: rgba(255,255,255,0.98);
        --shadow-accent: rgba(29,78,216,0.12);
        --shadow-accent-strong: rgba(29,78,216,0.14);
        --shadow-info: rgba(30,64,175,.06);
        --focus-halo: rgba(37,99,235,0.24);
        --on-accent: #ffffff;
        --link: #1d4ed8;
        --status-yellow-bg: #fef9c3;
        --status-yellow-ink: #854d0e;
        --ink-strong: #1f2937;
        --ink-secondary-legacy: #344054;
        --border-faint: #eef2f7;
        --ok-surface-faint: #f0fdf4;
        --warn-surface-faint: #fffbeb;
        --shadow-neutral-soft: rgba(0,0,0,0.08);
        --nav: #111827;
        --today: #eff6ff;
        --today-ink: #1e40af;
        --tag-1-bg: #dbeafe;
        --tag-1-ink: #1e40af;
        --tag-2-bg: #fff7ed;
        --tag-2-ink: #9a3412;
        --job-0-bg: #edf4fc;
        --job-1-bg: #faf2e7;
        --job-2-bg: #edf6ef;
        --job-3-bg: #f4effa;
        --job-4-bg: #faf0f2;
        --job-5-bg: #edf5f4;
        --pdf-paper: #ffffff;
        color-scheme: light;
    }
}
