:root {
  --bg: oklch(0.120 0.034 250);
  --bg-deep: oklch(0.090 0.030 255);
  --surface: oklch(0.160 0.040 262);
  --surface-2: oklch(0.205 0.045 260);
  --surface-hover: oklch(0.250 0.050 258);
  --fg: oklch(0.964 0.018 205);
  --muted: oklch(0.740 0.035 230);
  --border: oklch(0.300 0.050 255);
  --border-strong: oklch(0.420 0.060 230);
  --accent: oklch(0.846 0.119 203);
  --accent-hover: oklch(0.930 0.090 203);
  --accent-ink: oklch(0.120 0.034 250);
  --accent-soft: oklch(0.846 0.119 203 / 0.12);
  --accent-soft-strong: oklch(0.846 0.119 203 / 0.2);
  --accent-glow: oklch(0.846 0.119 203 / 0.45);
  --violet: oklch(0.520 0.290 290);
  --violet-light: oklch(0.700 0.190 292);
  --violet-glow: oklch(0.520 0.290 290 / 0.45);
  --error: oklch(0.673 0.215 25);
  --success: oklch(0.800 0.160 160);
  --neon: linear-gradient(135deg, var(--violet), var(--accent));

  --font-display: "Unbounded", sans-serif;
  --font-body: "Lexend", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-md: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: 1.375rem;
  --fs-h3: clamp(1.25rem, 1.6vw, 1.5rem);
  --fs-h2: clamp(1.9rem, 4vw, 3.1rem);
  --fs-h1: clamp(2.3rem, 5.6vw, 4.6rem);

  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;
  --sp-8: 72px;
  --sp-9: 120px;

  --radius-sm: 6px;
  --radius: 10px;
  --radius-lg: 18px;
  --max: 1200px;
  --gutter: clamp(20px, 4vw, 48px);
  --nav-h: 68px;
  --tap: 44px;
  --m3ow-h: 14px;
  --m3ow-stroke: 1.1;

  --ease: cubic-bezier(.2, .7, .2, 1);
  --t-fast: 160ms;
  --t-med: 320ms;
  --t-slow: 700ms;
  --shadow: 0 24px 60px -24px oklch(0.05 0.03 260 / 0.9);
  --glow: 0 0 24px var(--accent-glow);
  --z-nav: 50;
  --z-toast: 80;
  --z-modal: 90;
  --checkout-w: 640px;
  --page-w: 760px;
}
