/* ── Design tokens ─────────────────────────────────────────────────────────── */

:root {
  /* Primary */
  --primary:        #5a7fbf;
  --primary-light:  #6d91d1;
  --primary-dim:    #4a6a9e;
  --primary-ghost:  rgba(90, 127, 191, 0.12);

  /* Surfaces (dark slate) */
  --bg-base:        #0f172a;
  --bg-card:        #1e293b;
  --bg-elevated:    #334155;
  --bg-input:       #1a2437;
  --bg-hover:       rgba(255, 255, 255, 0.04);

  /* Borders */
  --border:         #2d3a4f;
  --border-light:   #3b4a63;
  --border-focus:   var(--primary);

  /* Text */
  --text:           #e2e8f0;
  --text-secondary: #94a3b8;
  --text-muted:     #64748b;
  --text-inverse:   #0f172a;

  /* Semantic */
  --success:        #22c55e;
  --success-dim:    rgba(34, 197, 94, 0.15);
  --warning:        #f59e0b;
  --warning-dim:    rgba(245, 158, 11, 0.15);
  --error:          #ef4444;
  --error-dim:      rgba(239, 68, 68, 0.15);
  --info:           #3b82f6;
  --info-dim:       rgba(59, 130, 246, 0.15);

  /* Typography */
  --font-sans:      'Inter', system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;
  --font-mono:      ui-monospace, 'Cascadia Code', 'Fira Mono', 'Consolas', monospace;

  --text-xs:   0.75rem;
  --text-sm:   0.8125rem;
  --text-base: 0.9375rem;
  --text-lg:   1.125rem;
  --text-xl:   1.3rem;
  --text-2xl:  1.75rem;
  --text-3xl:  2.25rem;

  /* 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;

  /* Radii */
  --radius-sm:  4px;
  --radius-md:  8px;
  --radius-lg:  12px;
  --radius-xl:  16px;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-sm:  0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md:  0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow-lg:  0 4px 16px rgba(0, 0, 0, 0.4);

  /* Transitions */
  --ease-out:   cubic-bezier(0.16, 1, 0.3, 1);
  --duration:   180ms;

  /* Layout */
  --nav-height: 3.5rem;
  --max-width:  1600px;
}
