/* ============================================================
   FURY GAMING — "FORGE" design tokens
   The single source of truth. Everything in the brand and the
   future furygaming.tv site derives from these custom properties.

   Concept: every surface has a TEMPERATURE.
   cold = ash / idle      hot = incandescent / live / winning
   ============================================================ */

:root {
  /* ---------- GROUNDS — warm ash & graphite (never pure #000) ---------- */
  --ash-900: #0A0A0C;   /* page base */
  --ash-850: #0C0D10;
  --graphite-800: #0E0F12;
  --graphite-700: #15161A;  /* raised surface / cards */
  --graphite-600: #1E2026;  /* elevated / hover surface */
  --iron-500:  #2A2D34;     /* hairline borders, dividers */
  --iron-400:  #3A3E47;     /* stronger strokes */
  --slate-legacy: #242430;  /* nod to the 2014 shield — rare accent surface */

  /* ---------- TEXT — warm neutrals (never pure #FFF) ---------- */
  --fog-400:  #868B95;      /* muted / captions (AA: >=4.5:1 on all grounds) */
  --fog-300:  #9AA0AA;      /* secondary text */
  --bone-200: #CFC9BF;
  --bone-100: #ECE7DF;      /* primary text */
  --white-hot: #FFF8F0;     /* max emphasis */

  /* ---------- INCANDESCENCE RAMP — the signature (a temperature scale) ----------
     Reads cold metal -> ember -> forge -> molten -> incandescent -> amber -> white-hot.
     Tuned to pass through the brand's legacy amber (~#F0A018). */
  --heat-00: #3A0E07;   /* cold metal / ember-dark  (deep maroon-brown) */
  --heat-10: #7A1E0A;   /* ember */
  --heat-20: #B83210;   /* forge */
  --heat-30: #E0480F;   /* molten */
  --heat-40: #FF6A1A;   /* PRIMARY — "Fury Orange" (incandescent) */
  --heat-50: #FF8A2B;
  --heat-60: #FFA638;   /* amber-gold  (legacy DNA) */
  --heat-70: #FFC766;
  --heat-80: #FFE0A6;
  --heat-90: #FFF3DC;   /* white-hot */

  /* semantic shortcuts */
  --fury:        var(--heat-40);   /* the brand orange */
  --fury-deep:   var(--heat-20);
  --fury-amber:  var(--heat-60);
  --quench:      #2BA8C7;          /* the ONE cool tone — only "cooled/locked/info". Use sparingly. */

  /* ---------- STATE = TEMPERATURE ---------- */
  --state-live:    var(--heat-40);
  --state-active:  var(--heat-50);
  --state-idle:    var(--iron-400);
  --state-danger:  var(--heat-10);
  --state-success: var(--heat-60);   /* stays in-world (warm) */
  --state-info:    var(--quench);

  /* ---------- HEAT GRADIENTS ---------- */
  --grad-forge:  linear-gradient(180deg, var(--heat-90) 0%, var(--heat-50) 28%, var(--heat-30) 62%, var(--heat-10) 100%);
  --grad-molten: linear-gradient(135deg, var(--heat-30) 0%, var(--heat-50) 50%, var(--heat-70) 100%);
  --grad-ember:  linear-gradient(180deg, var(--heat-20) 0%, var(--heat-00) 100%);
  --grad-ground: radial-gradient(120% 80% at 50% -10%, #14110E 0%, var(--ash-900) 55%);

  /* ---------- GLOW — incandescent light bloom (the "forged & alive" feel) ---------- */
  --glow-ember:  0 0 18px -2px rgba(184, 50, 16, .45);
  --glow-heat:   0 0 24px -1px rgba(255, 106, 26, .45), 0 0 4px rgba(255, 138, 43, .55);
  --glow-hot:    0 0 40px -2px rgba(255, 138, 43, .55), 0 0 10px rgba(255, 199, 102, .65);
  --glow-text:   0 0 22px rgba(255, 122, 40, .35);

  /* ---------- TYPOGRAPHY ---------- */
  /* Display: wide heavy grotesque (deliberately NOT the condensed esports default) */
  --font-display: "Archivo", "Arial Narrow", system-ui, sans-serif;
  /* Utility / data / eyebrows: mechanical mono — the "forge instrument" voice */
  --font-mono: "Martian Mono", ui-monospace, "Cascadia Code", monospace;
  /* Body: warm, clean grotesque (deliberately NOT Inter) */
  --font-body: "Hanken Grotesk", system-ui, -apple-system, sans-serif;

  /* fluid type scale (clamp: min, vw, max) */
  --fs-mega:  clamp(4.5rem, 14vw, 13rem);   /* hero "FURY" */
  --fs-display: clamp(2.75rem, 7vw, 6rem);
  --fs-h1:    clamp(2.25rem, 5vw, 4rem);
  --fs-h2:    clamp(1.6rem, 3.2vw, 2.5rem);
  --fs-h3:    clamp(1.25rem, 2vw, 1.6rem);
  --fs-body:  clamp(1rem, 1.05vw, 1.125rem);
  --fs-small: 0.875rem;
  --fs-micro: 0.75rem;   /* mono labels */

  --lh-tight: 0.92;
  --lh-snug:  1.1;
  --lh-body:  1.6;

  --tracking-mega:  -0.02em;
  --tracking-tight: -0.01em;
  --tracking-label: 0.28em;   /* spaced mono eyebrows / GAMING */
  --tracking-wide:  0.04em;

  --weight-body: 400;
  --weight-med:  500;
  --weight-bold: 700;
  --weight-black: 900;

  /* ---------- SPACE (8pt base, forged rhythm) ---------- */
  --space-1: 0.25rem;  --space-2: 0.5rem;  --space-3: 0.75rem;
  --space-4: 1rem;     --space-5: 1.5rem;  --space-6: 2rem;
  --space-7: 3rem;     --space-8: 4rem;    --space-9: 6rem;
  --space-10: 8rem;    --space-12: 12rem;
  --measure: 68ch;     /* body line length */
  --gutter: clamp(1.25rem, 4vw, 4rem);
  --maxw: 1280px;

  /* ---------- RADIUS — forged edges are mostly sharp ---------- */
  --r-0: 0px;
  --r-1: 2px;      /* "filed" edge */
  --r-2: 4px;
  --r-pill: 999px;
  --notch: 12px;   /* the forged corner-notch (clip-path) size */

  /* ---------- MOTION — orchestrated heat ---------- */
  --ease-ignite: cubic-bezier(0.16, 0.84, 0.24, 1);   /* fast catch, slow settle */
  --ease-quench: cubic-bezier(0.5, 0, 0.2, 1);         /* cool down */
  --ease-out:    cubic-bezier(0.22, 1, 0.36, 1);
  --dur-1: 120ms;  --dur-2: 220ms;  --dur-3: 420ms;
  --dur-4: 680ms;  --dur-slow: 1200ms;

  /* ---------- ELEVATION ---------- */
  --shadow-1: 0 1px 0 rgba(255,255,255,.03), 0 8px 24px -12px rgba(0,0,0,.7);
  --shadow-2: 0 2px 0 rgba(255,255,255,.04), 0 24px 60px -20px rgba(0,0,0,.8);

  --z-base: 0; --z-raised: 10; --z-overlay: 100; --z-nav: 500; --z-top: 1000;
}

/* respect reduced motion globally */
@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-1: 0ms; --dur-2: 0ms; --dur-3: 0ms; --dur-4: 0ms; --dur-slow: 0ms;
  }
}
