:root {
  /* paper band: dark · display: SubwayTicker mono · accent: warm gold */
  --color-paper:      oklch(11% 0.015 285);
  --color-paper-2:    oklch(16% 0.02 285);
  --color-paper-3:    oklch(22% 0.025 280);
  --color-ink:        oklch(90% 0.02 290);
  --color-ink-2:      oklch(68% 0.03 285);
  --color-rule:       oklch(28% 0.02 285);
  --color-accent:     oklch(82% 0.16 85);
  --color-accent-ink: oklch(14% 0.02 85);
  --color-accent-secondary: oklch(62% 0.22 285);
  --color-accent-secondary-soft: oklch(62% 0.22 285 / 0.12);
  --color-focus:      oklch(75% 0.14 85);
  --color-bloom-1:    oklch(42% 0.18 285);
  --color-bloom-2:    oklch(58% 0.12 85);
  --color-glow-gold:  oklch(82% 0.16 85 / 0.45);
  --color-glow-purple: oklch(55% 0.2 285 / 0.35);

  --font-display: 'SubwayTicker', ui-monospace, monospace;
  --font-body: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-mono: ui-monospace, 'Cascadia Code', 'Segoe UI Mono', monospace;

  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs:  0.75rem;
  --space-sm:  1rem;
  --space-md:  1.5rem;
  --space-lg:  2rem;
  --space-xl:  3rem;
  --space-2xl: 4.5rem;
  --space-3xl: 7rem;

  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-md:   1.125rem;
  --text-lg:   1.375rem;
  --text-xl:   1.75rem;
  --text-2xl:  2.25rem;
  --text-display-s: clamp(2rem, 4vw + 0.5rem, 3.25rem);
  --text-display:   clamp(2.5rem, 5vw + 0.75rem, 4.5rem);
  --text-hero-wordmark: clamp(4rem, 10.5vw, 6.75rem);

  --shadow-wordmark: 0 0 10px var(--color-glow-gold), 0 0 30px oklch(82% 0.16 85 / 0.5), 0 0 60px oklch(82% 0.16 85 / 0.3), 0 0 100px oklch(82% 0.16 85 / 0.15);

  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:     cubic-bezier(0.55, 0, 1, 0.45);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-short:   180ms;
  --dur-medium:  320ms;

  --rule-hair: 1px;
  --radius-card: 12px;
  --radius-pill: 999px;
  --radius-input: 8px;
  --page-gutter: clamp(1rem, 4vw, 2.5rem);
  --page-max: 72rem;
}
