:root {
  /* ── Colors: dark (default) ── */
  --bg-primary:    #0a0a0a;
  --bg-secondary:  #111111;
  --bg-elevated:   #1a1a1a;
  --border:        #2a2a2a;
  --text-primary:  #ededed;
  --text-secondary:#a0a0a0;
  --text-tertiary: #6b6b6b;
  --accent:        #d4af37;
  --accent-hover:  #e8c558;
  --terminal-green:#4ade80;
  --danger:        #ef4444;

  /* ── Spacing scale ── */
  --sp-1:  4px;
  --sp-2:  8px;
  --sp-3:  12px;
  --sp-4:  16px;
  --sp-6:  24px;
  --sp-8:  32px;
  --sp-12: 48px;
  --sp-16: 64px;
  --sp-24: 96px;
  --sp-32: 128px;

  /* ── Typography ── */
  --font-display: 'Space Grotesk', 'Inter', sans-serif;
  --font-body:    'Inter', sans-serif;
  --font-mono:    'JetBrains Mono', 'Courier New', monospace;

  /* ── Radius ── */
  --radius-sm: 4px;
  --radius-md: 8px;

  /* ── Transitions ── */
  --t-fast: 0.15s ease;
  --t-base: 0.3s ease;
  --t-slow: 0.6s ease;

  /* ── Layout ── */
  --container-max:     1200px;
  --container-padding: clamp(1.5rem, 5vw, 4rem);
}

[data-theme="light"] {
  --bg-primary:    #fafaf9;
  --bg-secondary:  #f3f3f1;
  --bg-elevated:   #eaeae8;
  --border:        #d0d0cc;
  --text-primary:  #1a1a1a;
  --text-secondary:#525252;
  --text-tertiary: #737373;
  --accent:        #b8860b;
  --accent-hover:  #9a7009;
  --terminal-green:#16a34a;
  --danger:        #dc2626;
}
