/* HanLab v2 dark tokens — source of truth: tokens.json in the design folder.
   Change values in tokens.json first, run contrast.py, then mirror here. */
:root {
  color-scheme: dark;

  /* color roles */
  --bg: #000000;
  --bg-alt: #0a0a0a;
  --surface: #141614;
  --surface-2: #1e211e;
  --border: #2a2d2a;
  --border-strong: #6f756f;
  --text: #f2f6ee;
  --text-2: #c6d2c4;
  --text-muted: #949b94;
  --statement-off: #5f655f;
  --accent: #c4dfa0;
  --accent-2: #8fd3a8;
  --on-accent: #0b1a12;
  --cream: #f6f5ee;
  --on-cream: #0b1a12;
  --live: #7ed58c;
  --award: #e3c873;

  /* glass */
  --glass-fill: rgba(242, 246, 238, .06);
  --glass-edge: rgba(242, 246, 238, .35);
  --glass-blur: 2px;
  --glass-zoom: 1.18;

  /* type */
  --font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-display: Anton, "Pretendard Variable", Impact, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, monospace;
  --fs-xs: 13px;  --lh-xs: 20px;
  --fs-sm: 15px;  --lh-sm: 24px;
  --fs-base: 17px; --lh-base: 28px;
  --fs-lg: 19px;  --lh-lg: 31px;
  --fs-h3: 24px;  --lh-h3: 34px;
  --fs-h2: clamp(32px, 4vw, 52px);
  --fs-display: clamp(38px, 5vw, 64px);
  --fs-giant: clamp(88px, 17vw, 280px);
  --tracking: -0.02em;

  /* space (4px base) */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px;
  --s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 96px; --s-10: 160px;

  /* layout */
  --max: 960px;
  --wide: 1280px;
  --gutter: clamp(20px, 5vw, 48px);
  --section-y: clamp(96px, 14vw, 200px);
  --header-h: 60px;

  /* radius, motion */
  --r-sm: 8px; --r-md: 16px; --r-lg: 24px; --r-pill: 999px;
  --t-fast: 150ms;
  --t-base: 800ms;
  --ease: cubic-bezier(.2, .7, .2, 1);
}
