/* ═══════════════════════════════════════════
   tokens.css  —  Design tokens (CSS variables)
   Single source of truth for all design values
   ═══════════════════════════════════════════ */

:root {
  /* ── Colors ── */
  --color-bg:         #0a0a0f;
  --color-bg-2:       #111118;
  --color-bg-3:       #16161f;
  --color-surface:    #1c1c27;
  --color-surface-2:  #222230;

  --color-accent:     #7c6aff;
  --color-accent-2:   #a78bfa;
  --color-accent-3:   #38bdf8;
  --color-red:        #ff5c7c;
  --color-green:      #4ade80;

  --color-text:       #f0eeff;
  --color-muted:      #8b85aa;

  --color-border:     rgba(124, 106, 255, 0.15);
  --color-border-2:   rgba(255, 255, 255, 0.06);

  /* ── Gradients ── */
  --gradient-accent:  linear-gradient(135deg, var(--color-accent-2), var(--color-accent-3));
  --gradient-glow-1:  radial-gradient(circle at top left, rgba(124,106,255,0.08), transparent 70%);
  --gradient-hero:    radial-gradient(ellipse at 50% 0%, rgba(124,106,255,0.12), transparent 60%);

  /* ── Typography ── */
  --font-display:     'Syne', sans-serif;
  --font-body:        'DM Sans', sans-serif;
  --font-mono:        'Fira Code', 'Cascadia Code', monospace;

  --text-xs:   0.72rem;
  --text-sm:   0.82rem;
  --text-base: 1rem;
  --text-lg:   1.15rem;
  --text-xl:   1.4rem;
  --text-2xl:  clamp(2rem,   4vw, 3rem);
  --text-3xl:  clamp(1.8rem, 3.5vw, 2.5rem);
  --text-hero: clamp(3rem,   7vw, 6rem);
  --text-role: clamp(1.8rem, 4vw, 3.2rem);

  --weight-light:   300;
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-bold:    700;
  --weight-black:   800;

  --leading-tight:  1;
  --leading-snug:   1.1;
  --leading-normal: 1.6;
  --leading-loose:  1.7;

  --tracking-tight:  -0.04em;
  --tracking-snug:   -0.03em;
  --tracking-normal:  0;
  --tracking-wide:    0.08em;
  --tracking-wider:   0.15em;

  /* ── Spacing ── */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;
  --space-32: 8rem;

  /* ── Borders ── */
  --radius-sm:   6px;
  --radius-md:   10px;
  --radius-lg:   16px;
  --radius-xl:   20px;
  --radius-2xl:  24px;
  --radius-pill: 100px;

  /* ── Shadows ── */
  --shadow-glow:  0 0 0 3px rgba(124, 106, 255, 0.2);
  --shadow-card:  0 8px 32px rgba(0, 0, 0, 0.4);

  /* ── Transitions ── */
  --ease-out:    cubic-bezier(0.4, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast:   150ms;
  --duration-base:   250ms;
  --duration-slow:   350ms;
  --duration-slower: 600ms;

  /* ── Layout ── */
  --container-max: 1100px;
  --nav-height:    72px;
}
