/* "How a spectrum is made": fonts and design tokens only (v2, DESIGN §8.3-8.5, DESIGN_final §5.6). Every v2 stylesheet
   (css/story2.css, the dock, equations, film) reads these. The v1 card-era rules were dropped with the cards; the stage is the
   sky, so it is dark in both themes, while modal sheets follow the site theme (same tokens and storage key as the explorer). */

@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:300 700;font-display:swap;src:url(../vendor/space-grotesk-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:300 700;font-display:swap;src:url(../vendor/space-grotesk-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url(../vendor/jetbrains-mono-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url(../vendor/jetbrains-mono-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url(../vendor/jetbrains-mono-greek.woff2) format("woff2");
  unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
/* display serif for the act lines (static opsz 48 instances, vendor/newsreader/README.md) */
@font-face{font-family:"Newsreader";font-style:normal;font-weight:400;font-display:swap;src:url(../vendor/newsreader/newsreader-display-latin.woff2) format("woff2");
  unicode-range:U+0020-007E,U+00A0-00FF,U+2009,U+2010-2027,U+202F,U+2030-203A,U+2212,U+2192}
@font-face{font-family:"Newsreader";font-style:italic;font-weight:400;font-display:swap;src:url(../vendor/newsreader/newsreader-display-latin-italic.woff2) format("woff2");
  unicode-range:U+0020-007E,U+00A0-00FF,U+2009,U+2010-2027,U+202F,U+2030-203A,U+2212,U+2192}

/* ---- tokens: site theme for chrome and cards (mirrors page.css), fixed night palette for the stage ---- */
:root{--bg:#07090f;--bg2:#0d1220;--ink:#eef0f7;--muted:#a0a8c0;--faint:#8b93ad;--gline:rgba(160,175,220,.15);
  --card:rgba(13,17,30,.86);--card-solid:#0d111e;--accent:#8fa8ff;--hl:rgba(143,168,255,.16);--shadow:0 24px 60px rgba(0,0,0,.5);
  --sans:"Space Grotesk",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  /* stage: always night */
  --sky:#04050a;--sky2:#0a0d18;--sky-ink:#f4f1ea;--sky-muted:#b9b6c8;--beam:#fff4df;--beam-glow:rgba(255,226,180,.55);
  --ovi:#FB7A3C;--hi:#9293F8;--lsf:#9aa0b4;--serif:"Newsreader",Georgia,"Times New Roman",serif;
  /* gas phases (tf.js THOR bands) and speed (coolwarm-like); --phase-hue follows the active TF */
  --cold:#5fb2ff;--warm:#ffb14a;--hot:#ff5a3c;--hot2:#6b3a8c;--v-neg:#3b4cc0;--v-0:#dddddd;--v-pos:#b40426;--phase-hue:var(--beam);
  /* surfaces and scrims: no backdrop-filter anywhere; HUD pills solid (S0.md §5: #0b0f1ce6, 1 px #ffffff1f) */
  --pill:#0b0f1ce6;--pill-edge:#ffffff1f;--glass-solid:#0b0e19;--glass-edge:rgba(236,240,255,.14);
  /* motion curves (DESIGN §8.5) */
  --ease-out:cubic-bezier(.16,1,.3,1);--ease-dissolve:cubic-bezier(.45,0,.25,1);--ease-ui:cubic-bezier(.23,1,.32,1);
  --ease-press:cubic-bezier(.3,1.15,.4,1);
  /* safe areas, read by js/ui/hud.js */
  --sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);
  --fpx:calc(100vw / 1440);           /* fluid pixel: 1 px at a 1440 px wide window */
  --display:max(1.75rem,calc(44 * var(--fpx)));
  --stage-h:100svh;--rail-w:56px;--ease:cubic-bezier(.65,0,.35,1);
  color-scheme:dark}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--bg:#eef0f6;--bg2:#e3e7f2;--ink:#121628;--muted:#525a78;--faint:#5f6783;
  --gline:rgba(40,50,90,.13);--card:rgba(255,255,255,.93);--card-solid:#fbfbfd;--accent:#3a55d8;--hl:rgba(58,85,216,.10);
  --shadow:0 24px 60px rgba(30,40,90,.18);color-scheme:light}}
:root[data-theme="light"]{--bg:#eef0f6;--bg2:#e3e7f2;--ink:#121628;--muted:#525a78;--faint:#5f6783;--gline:rgba(40,50,90,.13);
  --card:rgba(255,255,255,.93);--card-solid:#fbfbfd;--accent:#3a55d8;--hl:rgba(58,85,216,.10);--shadow:0 24px 60px rgba(30,40,90,.18);color-scheme:light}
