/* ═══════════════════════════════════════════════════════════════
 * NEXUS DSP — Design Tokens
 * Phosphor dossier · amber on warm charcoal
 * ═══════════════════════════════════════════════════════════════ */

:root {
  /* ── Surfaces (warm charcoal) ──────────────────────────────── */
  --paper:       #0F100C;
  --paper-2:     #16170F;
  --paper-3:     #1D1E14;
  --paper-4:     #252619;

  /* ── Ink (parchment) ───────────────────────────────────────── */
  --ink:         #EAE4D5;
  --ink-2:       #A5A196;
  --ink-3:       #6A685E;

  /* ── Rules / borders ───────────────────────────────────────── */
  --rule:        #2A2A1E;
  --rule-2:      #46442F;

  /* ── Signature accent — amber analyst terminal ─────────────── */
  --amber:       #F4B860;
  --amber-dim:   rgba(244, 184, 96, 0.14);
  --amber-rule:  #7A5C30;

  /* ── Secondary accent — steel blue ─────────────────────────── */
  --steel:       #8AA1B0;
  --steel-dim:   rgba(138, 161, 176, 0.12);

  /* ── Tier status — desaturated from product palette ────────── */
  --sage:        #8FB58A;
  --sage-dim:    rgba(143, 181, 138, 0.14);
  --rose:        #C76C6C;
  --rose-dim:    rgba(199, 108, 108, 0.14);
  --warn:        #D99A5B;
  --warn-dim:    rgba(217, 154, 91, 0.14);

  /* ── Typography ────────────────────────────────────────────── */
  --font-serif:  'Source Serif 4', 'Iowan Old Style', Georgia, serif;
  --font-sans:   'Public Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --font-mono:   'JetBrains Mono', 'SF Mono', Menlo, Consolas, monospace;

  /* ── Type scale ────────────────────────────────────────────── */
  --t-h1:        clamp(3.25rem, 6.8vw, 5.5rem);
  --t-h2:        clamp(2rem, 4.2vw, 3.25rem);
  --t-h3:        1.375rem;
  --t-body:      1.0625rem;   /* 17px */
  --t-body-lg:   1.25rem;     /* 20px */
  --t-ui:        0.875rem;    /* 14px */
  --t-ui-sm:     0.75rem;     /* 12px */
  --t-kicker:    0.6875rem;   /* 11px */
  --t-mono:      0.8125rem;   /* 13px */

  --lh-tight:    1.05;
  --lh-h3:       1.3;
  --lh-body:     1.65;
  --lh-ui:       1.4;

  /* ── Spacing — 4pt scale ───────────────────────────────────── */
  --sp-1:  4px;
  --sp-2:  8px;
  --sp-3:  12px;
  --sp-4:  16px;
  --sp-5:  20px;
  --sp-6:  24px;
  --sp-8:  32px;
  --sp-10: 40px;
  --sp-12: 48px;
  --sp-16: 64px;
  --sp-20: 80px;
  --sp-24: 96px;
  --sp-32: 128px;
  --sp-40: 160px;

  /* ── Layout ────────────────────────────────────────────────── */
  --wrap-max:    1200px;
  --wrap-pad:    clamp(20px, 4vw, 40px);
  --body-max:    680px;    /* legal-page reading column */

  /* ── Radius ────────────────────────────────────────────────── */
  --r-sm: 2px;
  --r-md: 4px;
  --r-lg: 8px;
  --r-xl: 16px;

  /* ── Motion ────────────────────────────────────────────────── */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
  --dur-fast: 160ms;
  --dur-med:  240ms;
  --dur-slow: 400ms;
  --dur-hero: 600ms;

  /* ── Z-index ───────────────────────────────────────────────── */
  --z-skip:    1000;
  --z-nav:      100;
  --z-drawer:   90;
  --z-overlay:  80;
}

/* Reduced-motion override: shrink all durations */
@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 0.01ms;
    --dur-med:  0.01ms;
    --dur-slow: 100ms;
    --dur-hero: 100ms;
  }
}
