:root {
  color-scheme: dark;
  --deca-blue: #0072ce;
  --blue-deep: #86c8fb;
  --blue-wash: #1a3c58;
  --blue-line: #386b90;
  --navy: #0c263d;
  --navy-2: #204761;
  --on-navy: #e5eef5;
  --on-navy-dim: #b7cedf;
  --ink: #eef5fa;
  --muted: #bdd0dd;
  --paper: #17364e;
  --wash: #102b40;
  --line: #35566d;
  --line-strong: #7594a8;
}
html, body { background: var(--wash); }
.site-header { background: var(--paper); }
.eyebrow { color: #a8d9ff; }
.brand-logo { filter: brightness(0) invert(1); }
.brand { color: var(--ink); }
.button { background: #0072ce; color: #fff; }
.button:hover { background: #0060ae; }
.button.secondary { background: #335a76; }
.button.secondary:hover { background: #436d8b; }
.button.ghost { color: var(--ink); }
.button.ghost:hover { background: var(--blue-wash); }
.button.danger { background: #a02f39; }
.button.danger:hover { background: #85232e; }
input, select, textarea { background: var(--paper); color: var(--ink); }
input::placeholder, textarea::placeholder { color: #c0d2df; }
.choice, .option label, .chip-option label, .seg label, .tab { background: var(--paper); color: var(--ink); }
.option input:checked + label { background: var(--blue-wash); }
.chip-option input:checked + label { background: #0068b8; color: #fff; }
.seg input:checked + label, .tab.active { background: #315775; color: #fff; }
.hero-band { background: var(--paper); border-color: var(--line); }
.hero-band h1 { color: var(--ink); }
.hero-band .eyebrow { color: #a8d9ff; }
.hero-band .lead { color: var(--muted); }
.hero-visual { background: #0067ba; }
.hero-visual img { filter: brightness(0) invert(1); }
.fact-row { background: transparent; }
.step, .step:first-child { background: transparent; border-color: var(--line); }
.step:first-child h3, .step:first-child p { color: var(--ink); }
.metric-grid { background: var(--paper); }
.signup-aside { background: var(--blue-wash); }
.notice { background: var(--wash); }
.notice.success, .success { color: #d7f8e9; background: #16493f; }
.notice.error, .error { color: #ffdde0; background: #552a34; }
.badge { color: #d4ecff; background: var(--blue-wash); }
.badge.warn { color: #ffe4a8; background: #5a411c; border-color: #8a6934; }
.badge.solid { background: #315775; color: #fff; }
.empty { color: var(--muted); }
.admin-sidebar { background: var(--paper); color: var(--ink); }
.sidebar-brand, .sidebar-foot strong, .sidebar-link { color: var(--ink); }
.sidebar-brand img { filter: none; }
.sidebar-link:hover { color: #a8d9ff; background: var(--blue-wash); }
.sidebar-link.active { background: var(--blue-wash); color: #a8d9ff; border-color: #58b5ff; }
.sidebar-count, .sidebar-link.active .sidebar-count { background: var(--wash); color: #a8d9ff; }
.metric-attention strong, .advisor-recruitment-count strong { color: #a8d9ff; }
.judge-focus { background: #0064b4; }
.judge-focus .button { color: #005ca8; }
.admin-main { background: var(--wash); }
.progress { background: #31516a; }
.email-preview { background: var(--wash); }
.toast { background: #274d68; color: #fff; }
tbody tr:hover td { background: var(--blue-wash); }

@media print {
  :root { color-scheme: light; --ink: #172b3b; --muted: #4e6373; --paper: #fff; --wash: #fff; --line: #d9e4ec; --line-strong: #a9becd; }
  body { background: #fff; color: #172b3b; }
}
