/* =========================================================================
   CULT ON AIR — Design tokens
   Palette: studio "tally light" — grafite caldo + ambra on-air + viola hub
   ========================================================================= */

:root{
  /* --- ground & surfaces (light) --- */
  --ink-950:#0B0A10;
  --ink-900:#14121B;
  --ink-800:#1E1B27;
  --ink-700:#2A2534;
  --paper-100:#F6F2EA;
  --paper-200:#EDE7DA;
  --paper-300:#DED5C2;

  --bg:#F6F2EA;
  --surface:#FFFFFF;
  --surface-2:#EDE7DA;
  --surface-hairline:rgba(20,18,27,0.10);
  --text-primary:#17141D;
  --text-secondary:#4A4456;
  --text-muted:#736C7E;

  /* --- accents --- */
  --amber-300:#FFB37A;
  --amber-500:#FF7A33;
  --amber-600:#E85F1C;
  --violet-400:#A78BFA;
  --violet-500:#8B5CF6;
  --violet-600:#6D28D9;

  --accent:var(--amber-500);
  --accent-strong:var(--amber-600);
  --accent-soft:var(--amber-300);
  --accent2:var(--violet-500);
  --accent2-strong:var(--violet-600);

  --live-dot:#FF3B3B;
  --success:#34C77B;

  /* --- neon (dal logo reale: cuffie + onda arcobaleno su nero) --- */
  --neon-pink:#FF3EA5;
  --neon-violet:#9B5CF6;
  --neon-cyan:#2FD8FF;
  --neon-green:#4ADE80;
  --neon-ring: conic-gradient(from 0deg, var(--neon-pink), var(--neon-violet), var(--neon-cyan), var(--neon-green), var(--neon-pink));

  /* --- elevation --- */
  --shadow-sm:0 1px 2px rgba(20,18,27,0.08);
  --shadow-md:0 8px 24px -8px rgba(20,18,27,0.22);
  --shadow-lg:0 24px 64px -16px rgba(20,18,27,0.32);
  --shadow-glow:0 0 0 1px rgba(255,122,51,0.25), 0 16px 40px -12px rgba(255,122,51,0.35);

  /* --- radii --- */
  --r-xs:6px;
  --r-sm:10px;
  --r-md:16px;
  --r-lg:24px;
  --r-pill:999px;

  /* --- type scale (fluid) --- */
  --fs-display: clamp(2.4rem, 6vw + 1rem, 4.6rem);
  --fs-h1: clamp(1.9rem, 3.2vw + 1rem, 2.75rem);
  --fs-h2: clamp(1.4rem, 1.6vw + 1rem, 1.9rem);
  --fs-h3: clamp(1.1rem, 1vw + 0.8rem, 1.3rem);
  --fs-body: 1rem;
  --fs-sm: 0.875rem;
  --fs-xs: 0.75rem;

  --font-display:'Unbounded', 'Arial Black', sans-serif;
  --font-body:'Hanken Grotesk', 'Segoe UI', sans-serif;
  --font-mono:'JetBrains Mono', 'SFMono-Regular', monospace;

  /* --- layout --- */
  --gutter:20px;
  --max-w:1180px;
  --player-h:78px;
  --player-h-safe: calc(var(--player-h) + env(safe-area-inset-bottom, 0px));

  --ease-out:cubic-bezier(.16,1,.3,1);
}

/* --- dark: system preference, no explicit stamp --- */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0B0A10;
    --surface:#171420;
    --surface-2:#1E1B27;
    --surface-hairline:rgba(255,255,255,0.09);
    --text-primary:#F3EFE7;
    --text-secondary:#C6BFD1;
    --text-muted:#8B8494;
    --shadow-glow:0 0 0 1px rgba(255,122,51,0.30), 0 16px 48px -12px rgba(255,122,51,0.45);
  }
}

/* --- dark: explicit user choice, wins over light system pref --- */
:root[data-theme="dark"]{
  --bg:#0B0A10;
  --surface:#171420;
  --surface-2:#1E1B27;
  --surface-hairline:rgba(255,255,255,0.09);
  --text-primary:#F3EFE7;
  --text-secondary:#C6BFD1;
  --text-muted:#8B8494;
  --shadow-glow:0 0 0 1px rgba(255,122,51,0.30), 0 16px 48px -12px rgba(255,122,51,0.45);
}
