/* ============================================================
   PALMERBETT — Design tokens
   Single source of truth for colour, type, space, motion.
   ============================================================ */

:root {
  /* ---- Surfaces ---- */
  --bg:        #120B1F;
  --bg-deep:   #0C0717;
  --panel:     #1C1330;
  --panel-2:   #241A3D;
  --panel-3:   #2E2150;
  --line:      rgba(237, 231, 246, 0.10);
  --line-strong: rgba(237, 231, 246, 0.18);

  /* ---- Brand ---- */
  --accent:        #7C4DFF;
  --accent-bright: #9B6BFF;
  --accent-deep:   #5B2FD6;
  --magenta:       #C24BE0;
  --gold:          #FFC857;
  --gold-soft:     #FFE08A;

  /* ---- Text ---- */
  --text:    #EDE7F6;
  --muted:   #A99FC4;
  --muted-2: #837798;
  --on-accent: #0C0717;

  /* ---- Status ---- */
  --success: #3DDC97;
  --danger:  #FF5C7A;
  --info:    #59C2FF;

  /* ---- Gradients ---- */
  --grad-violet:         linear-gradient(135deg, #9B6BFF 0%, #6A3CF0 100%);
  --grad-violet-magenta: linear-gradient(135deg, #7C4DFF 0%, #C24BE0 100%);
  --grad-gold:           linear-gradient(135deg, #FFE08A 0%, #FFC857 100%);
  --grad-panel:          linear-gradient(160deg, rgba(46, 33, 80, 0.65), rgba(28, 19, 48, 0.55));
  --grad-hero:           radial-gradient(120% 120% at 80% 0%, rgba(124, 77, 255, 0.35), transparent 55%),
                         radial-gradient(90% 90% at 10% 100%, rgba(194, 75, 224, 0.22), transparent 60%);

  /* ---- Glows / shadows ---- */
  --glow-violet: 0 0 44px rgba(124, 77, 255, 0.45);
  --glow-gold:   0 0 32px rgba(255, 200, 87, 0.35);
  --shadow-sm:   0 2px 8px rgba(6, 3, 14, 0.35);
  --shadow:      0 14px 40px rgba(6, 3, 14, 0.45);
  --shadow-lg:   0 30px 80px rgba(6, 3, 14, 0.55);

  /* ---- Typography ----
     Display: Anton — dramatic, condensed, uppercase-first (Lamborghini-style monumentality).
     Body: Inter — neutral, highly legible. */
  --font-display: 'Anton', 'Arial Narrow', 'Segoe UI', system-ui, sans-serif;
  --font-body:    'Inter', 'Segoe UI', system-ui, -apple-system, Arial, sans-serif;

  --fs-300: 0.8125rem;   /* 13px */
  --fs-400: 1rem;        /* 16px */
  --fs-500: 1.125rem;    /* 18px */
  --fs-600: clamp(1.4rem, 1.1rem + 1.2vw, 1.85rem);
  --fs-700: clamp(1.8rem, 1.35rem + 2vw, 2.6rem);
  --fs-800: clamp(2.4rem, 1.7rem + 3.2vw, 3.9rem);
  --fs-900: clamp(3rem, 1.9rem + 5.4vw, 6rem);

  --lh-tight: 0.96;
  --lh-snug:  1.2;
  --lh-base:  1.65;

  --track-display: 0.005em;   /* Anton sits tight; a hair of tracking on big caps */

  /* ---- Space scale ---- */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4rem;
  --sp-9: 6rem;

  /* ---- Radius ---- */
  --r-sm:   8px;
  --r:      14px;
  --r-lg:   22px;
  --r-xl:   30px;
  --r-pill: 999px;

  /* ---- Layout ---- */
  --container:      1200px;
  --container-wide: 1380px;
  --header-h:       72px;

  /* ---- Motion ---- */
  --dur-fast: 0.18s;
  --dur:      0.32s;
  --dur-slow: 0.6s;
  --ease:      cubic-bezier(0.22, 0.61, 0.36, 1);
  --ease-out:  cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);

  /* ---- Z-index ---- */
  --z-header:  100;
  --z-rgbar:   90;
  --z-overlay: 800;
  --z-modal:   1000;
  --z-toast:   1100;
}
