/* ============================================================
   EM Snow design tokens — split out of em.css (V1c, 2026-09-17)
   Scale tokens (:root) + the two theme palettes ([data-theme="apres"],
   [data-theme="bluebird"]). Moved here VERBATIM so pages that need the
   shell topbar (em-topbar.css) but NOT the rest of em.css — the resort
   page — can pull the token contract on its own. Every em.css consumer
   loads this file immediately before em.css, so nothing changes for them.
   ============================================================ */

/* ---------- scale tokens (theme-independent) ---------- */
:root {
  --font-display: 'Bricolage Grotesque', 'Bricolage Grotesque Fallback', 'Schibsted Grotesk', 'Schibsted Grotesk Fallback', system-ui, sans-serif;
  --font-text: 'Schibsted Grotesk', 'Schibsted Grotesk Fallback', system-ui, -apple-system, sans-serif;
  --font-data: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;

  /* 4px space grid */
  --s1: 4px;  --s2: 8px;  --s3: 12px; --s4: 16px; --s5: 24px;
  --s6: 32px; --s7: 48px; --s8: 64px; --s9: 80px; --s10: 96px;

  --r1: 8px; --r2: 14px; --r3: 24px; --r-full: 999px;

  --t-quick: 160ms;
  --t-slow: 600ms;
  --ease-out: cubic-bezier(.16, 1, .3, 1);

  /* fluid type scale */
  --text-hero: clamp(2.6rem, 1.2rem + 6vw, 5.4rem);
  --text-h2: clamp(1.8rem, 1rem + 3vw, 3rem);
  --text-h3: clamp(1.15rem, 1rem + .8vw, 1.5rem);
  --text-body: clamp(1rem, .95rem + .25vw, 1.125rem);
  --text-small: .875rem;
  --text-micro: .75rem;

  /* piste-grade badge colours (shared both themes) */
  --piste-green: #2fa35c;
  --piste-blue: #2277cc;
  --piste-red: #d84a3a;
  --piste-black: #14181f;
}

/* ---------- APRÈS - night on the mountain ---------- */
[data-theme="apres"] {
  color-scheme: dark;
  --bg: #070c16;
  --bg-raise: #0b1320;
  --surface-base: #0d1626;
  --surface-mid: rgba(148, 184, 225, .06);
  --surface-summit: rgba(158, 194, 235, .11);
  --ink-1: #eef4fc;
  --ink-2: #a9bdd5;
  --ink-3: #7d93ad;
  --line: rgba(146, 180, 222, .14);
  --line-strong: rgba(146, 180, 222, .28);
  --accent-ice: #7fd8ff;
  --accent-ice-ink: #071018;         /* text on ice fills */
  --accent-fire: #ffb054;
  --ok: #7ee0a6; --warn: #ffcf5c; --danger: #ff6f6f;
  --contour: rgba(127, 216, 255, .09);
  --contour-strong: rgba(127, 216, 255, .2);
  --shadow-1: 0 1px 2px rgba(2, 6, 14, .5);
  --shadow-2: 0 12px 40px rgba(2, 6, 14, .55);
  --glow-fire: 0 0 64px rgba(255, 176, 84, .14);
  --hero-wash: radial-gradient(120% 90% at 70% -10%, rgba(58, 108, 178, .28), transparent 60%),
               radial-gradient(80% 60% at 10% 110%, rgba(255, 150, 60, .1), transparent 55%);
  --scrim: rgba(7, 12, 22, .72);
}

/* ---------- BLUEBIRD - sun on snow ---------- */
[data-theme="bluebird"] {
  color-scheme: light;
  --bg: #f2f6fb;
  --bg-raise: #ffffff;
  --surface-base: #ffffff;
  --surface-mid: rgba(255, 255, 255, .72);
  --surface-summit: rgba(255, 255, 255, .92);
  --ink-1: #0d1b2c;
  --ink-2: #43586f;
  --ink-3: #607790;
  --line: rgba(16, 42, 74, .12);
  --line-strong: rgba(16, 42, 74, .26);
  --accent-ice: #0d7abc;
  --accent-ice-ink: #ffffff;
  --accent-fire: #b65d0b;
  --ok: #16864a; --warn: #986e07; --danger: #c53a30;
  --contour: rgba(13, 126, 194, .1);
  --contour-strong: rgba(13, 126, 194, .24);
  --shadow-1: 0 1px 3px rgba(26, 55, 96, .1);
  --shadow-2: 0 18px 44px rgba(26, 55, 96, .14);
  --glow-fire: none;
  --hero-wash: linear-gradient(180deg, #dceafd 0%, rgba(242, 246, 251, 0) 70%),
               radial-gradient(90% 70% at 80% -20%, rgba(255, 214, 140, .35), transparent 55%);
  --scrim: rgba(242, 246, 251, .78);
}
