:root{
  --nav-text:#cbd4d1;
  --nav-hover:#fff;
  --hero-copy:#bdc8c4;
  --input-bg:#0d1517;
  --chip-text:#c6d0cd;
  --dash:#273538;
  --legacy-link:#096b77;
  --grid:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  --hero-bg:linear-gradient(135deg,var(--night-2),#0b1012);
  --hero-art-bg:radial-gradient(circle at 50% 35%,rgba(73,201,223,.16),transparent 40%),linear-gradient(145deg,#1b3132,#101719 60%);
  --series-big-bg:linear-gradient(145deg,#193032,#152022);
  --about-art-bg:linear-gradient(145deg,#1d3032,#111719);
  --stamp-bg:var(--cream);
  --stamp-ink:var(--ink);
  --art-contain-bg:var(--cream);
  --story-title:#f7faf8;
  --story-copy:#b7c1be;
  --story-accent:var(--cyan);

  /* Recovered DiscoMcDisco banner palette */
  --brand-blue:#18a2f1;
  --brand-blue-soft:#85cdf6;
  --brand-red:#bf0d22;
  --brand-white:#f5f9fb;
  --brand-ink:#19120f;
  --brand-banner-filter:saturate(.96) brightness(.92);
  --brand-banner-border:rgba(133,205,246,.32);
  --brand-banner-surface:#101719;
  --brand-banner-shadow:0 24px 65px rgba(0,0,0,.24);
  --brand-banner-overlay:linear-gradient(to bottom,transparent 70%,rgba(7,13,15,.14));
  --brand-hero-border:rgba(24,162,241,.24);
  --brand-hero-surface:linear-gradient(135deg,#101c20,#0a1113);
  --brand-hero-glow:rgba(24,162,241,.22);
  --brand-sparkle-opacity:.24;
  --brand-header-sparkle-opacity:.10;
  --brand-sparkle-filter:saturate(.92) brightness(.92);
  --brand-wordmark-surface:linear-gradient(145deg,#14252a,#0d1517);
}

:root[data-theme="dusk"]{color-scheme:dark}

:root[data-theme="light"]{
  color-scheme:light;
  --night:#f4efe4;
  --night-2:#fffaf0;
  --panel:#eee6d7;
  --panel-2:#e5ddcd;
  --cream:#403626;
  --paper:#fffdf6;
  --paper-2:#f4ecdc;
  --ink:#18201f;
  --text:#18201f;
  --muted:#5e6b67;
  --muted-dark:#5f625e;
  --line:#c9c0b0;
  --paper-line:#d6c9a9;
  --cyan:#067384;
  --green:#13764f;
  --gold:#8b6412;
  --red:#a62b4c;
  --shadow:0 24px 70px rgba(61,49,31,.12);
  --nav-text:#3f4c48;
  --nav-hover:#18201f;
  --hero-copy:#53635f;
  --input-bg:#fffdf7;
  --chip-text:#475551;
  --dash:#d6cebf;
  --legacy-link:#086d79;
  --grid:linear-gradient(rgba(24,32,31,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(24,32,31,.045) 1px,transparent 1px);
  --hero-bg:linear-gradient(135deg,#fffaf0,#ece4d5);
  --hero-art-bg:radial-gradient(circle at 50% 35%,rgba(6,115,132,.13),transparent 42%),linear-gradient(145deg,#d8e5df,#efe7d8 62%);
  --series-big-bg:linear-gradient(145deg,#e0ece7,#eee6d8);
  --about-art-bg:linear-gradient(145deg,#dce9e5,#f0e9dc);
  --stamp-bg:#246d75;
  --stamp-ink:#fffaf0;
  --art-contain-bg:#fffaf0;
  --story-title:#f7faf8;
  --story-copy:#d1dbd7;
  --story-accent:#67d8ea;

  --brand-banner-filter:saturate(.98) brightness(1.02);
  --brand-banner-border:rgba(191,13,34,.24);
  --brand-banner-surface:#fff;
  --brand-banner-shadow:0 20px 48px rgba(65,49,31,.12);
  --brand-banner-overlay:linear-gradient(to bottom,transparent 82%,rgba(255,250,240,.08));
  --brand-hero-border:rgba(24,162,241,.22);
  --brand-hero-surface:linear-gradient(135deg,#fffaf0,#e7f2f2);
  --brand-hero-glow:rgba(24,162,241,.16);
  --brand-sparkle-opacity:.16;
  --brand-header-sparkle-opacity:.07;
  --brand-sparkle-filter:saturate(.86) brightness(.98);
  --brand-wordmark-surface:linear-gradient(145deg,#fffdf6,#e9f3f3);
}

:root[data-theme="dark"]{
  color-scheme:dark;
  --night:#06090a;
  --night-2:#0a0f10;
  --panel:#101719;
  --panel-2:#162022;
  --cream:#f1dfb0;
  --paper:#151a19;
  --paper-2:#1b2220;
  --ink:#edf1eb;
  --text:#f2f6f2;
  --muted:#a7b2ae;
  --muted-dark:#aab3af;
  --line:#283235;
  --paper-line:#3b4743;
  --cyan:#5bd4e7;
  --green:#32bb80;
  --gold:#e1b756;
  --red:#df4168;
  --shadow:0 24px 70px rgba(0,0,0,.42);
  --nav-text:#d0d8d5;
  --nav-hover:#fff;
  --hero-copy:#c0cbc7;
  --input-bg:#080d0e;
  --chip-text:#ced7d4;
  --dash:#222d30;
  --legacy-link:#6ed8e8;
  --grid:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  --hero-bg:linear-gradient(135deg,#0b1112,#050708);
  --hero-art-bg:radial-gradient(circle at 50% 35%,rgba(91,212,231,.12),transparent 42%),linear-gradient(145deg,#122526,#080b0c 62%);
  --series-big-bg:linear-gradient(145deg,#102425,#0d1415);
  --about-art-bg:linear-gradient(145deg,#132425,#090d0e);
  --stamp-bg:#e7d39e;
  --stamp-ink:#101514;
  --art-contain-bg:#e9ddb9;
  --story-title:#f7faf8;
  --story-copy:#c2cdca;
  --story-accent:#6bdeef;

  --brand-banner-filter:saturate(.90) brightness(.78) contrast(1.04);
  --brand-banner-border:rgba(24,162,241,.22);
  --brand-banner-surface:#030506;
  --brand-banner-shadow:0 28px 72px rgba(0,0,0,.48);
  --brand-banner-overlay:linear-gradient(to bottom,rgba(0,0,0,.04),rgba(0,0,0,.18));
  --brand-hero-border:rgba(24,162,241,.18);
  --brand-hero-surface:linear-gradient(135deg,#080d0f,#030506);
  --brand-hero-glow:rgba(24,162,241,.18);
  --brand-sparkle-opacity:.18;
  --brand-header-sparkle-opacity:.08;
  --brand-sparkle-filter:saturate(.85) brightness(.78);
  --brand-wordmark-surface:linear-gradient(145deg,#090f11,#040708);
}

body::before{background-image:var(--grid)}
.brand-mark{width:50px;font-size:.78rem;letter-spacing:-.055em}
.site-nav a{color:var(--nav-text)}
.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--nav-hover)}
.hero{background:var(--hero-bg)}
.hero p{color:var(--hero-copy)}
.hero-art{background:var(--hero-art-bg)}
.hero-stamp{background:var(--stamp-bg);color:var(--stamp-ink)}
.series-card.big{background:var(--series-big-bg)}
.about-portrait{background:var(--about-art-bg)}
.field input,.field select{background:var(--input-bg)}
.year-group li{border-bottom-color:var(--dash)}
.chip{color:var(--chip-text)}
.legacy-content a{color:var(--legacy-link)}
.art-card.art-contain{background:var(--art-contain-bg)}
.story-card{color:var(--story-title)}
.story-card p{color:var(--story-copy)}
.story-card .eyebrow{color:var(--story-accent)}

.theme-switch{display:flex;align-items:center;gap:2px;margin-left:.35rem;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--night-2)}
.theme-switch button{min-height:34px;padding:.38rem .58rem;border:0;border-radius:999px;background:transparent;color:var(--muted);font:800 .64rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}
.theme-switch button:hover{color:var(--text);background:var(--panel)}
.theme-switch button[aria-pressed="true"]{color:var(--nav-hover);background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line)}
.theme-switch button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

@media(max-width:650px){.theme-switch{width:100%;margin:.35rem 0 0}.theme-switch button{flex:1;min-height:40px}}
