/* TrendsEngine design tokens: the ONE source of truth (review P-047, 2026-09-26).
   Every page links this file before its own stylesheet:
     index.html -> tokens.css + styles.css
     public pages -> tokens.css + legal_shared.css (+ their small page <style>)
     landing.html -> tokens.css + its page <style>
   Change a colour, radius, shadow or font here and it changes everywhere. Never
   redefine these in another file; add a new token here (with Mina's OK for new
   colours) and document it in docs/design-system.md. Night is the default; Day
   is html[data-theme="light"]. */

/* ---- tokens: Night (default) ---- */
/* "Night Session" 2026-09-28 (Mina: "make it modern", with a competitor's landing
   page as the reference for the feel; research ops/research/modern-look-2026-09-28.md).
   Cool near-black greys (never navy), one "Ice" accent (rink-ice cyan, dark text
   on it), soft floodlight glow from above (AMBIENT LIGHT in styles.css), Geist
   type. 2026-09-29: accent moved off violet and the diagonal beam retired, so the
   look can't be mistaken for a competitor's page (legal review). */
@font-face{font-family:'Geist';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(fonts/geist-v5.3.0-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:'Geist';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(fonts/geist-v5.3.0-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:'Geist Mono';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(fonts/geist-mono-v5.3.0-latin.woff2) format('woff2');}
:root{
  color-scheme:dark;
  --ink:#09090c;
  --rail:#0c0c10;
  --panel:#111116;
  --panel-2:#18181e;
  --panel-3:#212129;
  --rule:#2a2a33;
  --field-edge:#6f6f80;          /* full review Q-057: every input's outline, 3:1+ on every Night surface */
  --fs-min:11px;                  /* full review Q-085: smallest text anywhere (chart labels, phone menu) */
  --line-soft:rgba(255,255,255,.075);
  --hi:rgba(255,255,255,.05);
  --paper:#f4f4f7;
  --paper-dim:#a3a3b2;
  --paper-faint:#8e8e9c;

  /* Default accent "Ice". Chalk / team colour are opt-in (applyAccent). */
  --brand-primary:#3cc8ff;
  --accent-strong:#7ad9ff;
  --text-accent:#7fdcff;
  --on-accent:#06121a;
  --tint-accent:rgba(60,200,255,.12);
  --edge-accent:rgba(60,200,255,.42);

  --hit:#3ddc97;
  --miss:#ff6f69;
  --miss-text:#ff8f8a;
  --gold:#f2c14e;
  --warn:#f5a83b;
  --hit-dim:rgba(61,220,151,.14);
  --miss-dim:rgba(255,111,105,.14);
  --warn-dim:rgba(245,168,59,.13);

  --glow-strength:.16;          /* the team light in each card's top-left corner (Mina likes it) */
  --card-shadow:0 1px 0 var(--hi) inset;
  --pop-shadow:0 24px 70px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.4);
  --scrim:rgba(4,4,8,.66);
  /* The page's light: floodlight glow from above in the accent, and a neutral white wash. */
  --beam-a:rgba(60,200,255,.16);
  --beam-b:rgba(255,255,255,.05);

  /* aliases still read by inline styles in index.html */
  --warning:var(--warn);
  --negative:var(--miss);

  --font-display:'Geist',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:'Geist',system-ui,-apple-system,'Segoe UI',sans-serif;
  /* Small data labels (chart axes, dates, odds, counts): 2026-09-29. */
  --font-data:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  --r-card:20px;
  --r-panel:16px;
  --r-field:12px;
  --r-ctl:999px;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --rail-w:252px;
  --tabbar-h:64px;
}

/* ---- tokens: Day ---- */
/* "Paper" 2026-09-27: neutral off-white page, white cards, near-black ink.
   Night Session 2026-09-28: the Ice accent (deeper, for white paper) and a faint glow. */
:root[data-theme="light"]{
  color-scheme:light;
  --ink:#f6f6f5;
  --rail:#ffffff;
  --panel:#ffffff;
  --panel-2:#f1f1f0;
  --panel-3:#e7e7e5;
  --rule:#e0e0de;
  --field-edge:#767676;          /* 3:1+ on every Day surface */
  --line-soft:rgba(0,0,0,.08);
  --hi:rgba(255,255,255,.8);
  --paper:#141414;
  --paper-dim:#565656;
  --paper-faint:#5e5e5e;

  --brand-primary:#0e7490;
  --accent-strong:#0b5f75;
  --text-accent:#0b5f75;
  --on-accent:#ffffff;
  --tint-accent:rgba(14,116,144,.08);
  --edge-accent:rgba(14,116,144,.35);

  --hit:#077a4f;
  --miss:#d23c37;
  --miss-text:#c3322d;
  --gold:#8a6000;
  --warn:#8c5409;
  --hit-dim:rgba(7,122,79,.10);
  --miss-dim:rgba(210,60,55,.09);
  --warn-dim:rgba(168,101,10,.10);

  --glow-strength:.06;
  --card-shadow:0 1px 2px rgba(0,0,0,.04);
  --pop-shadow:0 22px 60px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.06);
  --scrim:rgba(0,0,0,.32);
  --beam-a:rgba(14,116,144,.10);
  --beam-b:rgba(0,0,0,.02);
}

/* ---- Round 2 "Holo" tokens (2026-09-25): second/third chart hues, the holo
   gradient, rim light and layered depth. --accent-2/--accent-3 are chart
   series colours only; they are never offered as a personal accent (P-055). */
:root{
  /* 2026-09-29: series 2 is violet and series 3 pink, so neither looks like the Ice accent. */
  --accent-2:#c49bff;               /* second chart hue (violet), never a hit/miss colour */
  --accent-3:#ff8fc7;               /* third chart hue (pink) */
  /* Refined 2026-09-27: the three-colour gradient is retired; one flat accent. */
  --holo:var(--brand-primary);
  --rim:rgba(255,255,255,.08);
  --fill-a:var(--panel);           /* flat 2026-09-27 (was a 4% white lift) */
  --fill-b:var(--panel);
  /* Refined 2026-09-27: two layers (inset highlight + one soft drop), was five. */
  --depth:
    0 1px 0 rgba(255,255,255,.04) inset,
    0 1px 2px rgba(0,0,0,.3);
  /* The primary call-to-action button ("Holo"): one recipe for the app and the
     public pages (review P-052). Follows the personal accent automatically. */
  /* Refined 2026-09-27: a flat fill with a hairline highlight, no coloured halo. */
  --btn-primary-fill:var(--brand-primary);
  /* Night Session 2026-09-28: a soft accent shadow under the button, no halo around it. */
  --btn-primary-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 8px 24px -12px color-mix(in srgb,var(--brand-primary) 60%,transparent);
}
:root[data-theme="light"]{
  --accent-2:#7b4fe0;
  --accent-3:#c2185b;
  --rim:rgba(0,0,0,.08);
  --fill-a:#ffffff;
  --fill-b:#ffffff;
  --depth:
    0 1px 0 rgba(255,255,255,.9) inset,
    0 1px 2px rgba(0,0,0,.05);
}
