/* ============================================================
   Calibrate — Design tokens
   Unica fonte di verità per colori, spazio, tipografia, ombre.
   Importato da tutte le pagine in v2 deployment/.
   ============================================================ */

:root {
  /* Esplicito al browser: il design system supporta entrambi i modi.
     Migliora l'engagement di prefers-color-scheme su Safari/file:// */
  color-scheme: light dark;

  /* --- Brand --- */
  --anthracite: #2C2C2A;
  --cream:      #F0EFE9;

  /* --- Backgrounds & surfaces (light) --- */
  --bg-page:    #F7F7F5;   /* sfondo body */
  --surface:    #FFFFFF;   /* card primaria */
  --surface-2:  #F7F7F5;   /* card secondaria / panel */
  --surface-3:  #F0EFE9;   /* contenitore esterno / strip */

  /* --- Testo --- */
  --text:       #2C2C2A;
  --text-2:     #6B6A63;   /* audit A-003: scurito da #888780 per contrasto WCAG AA pieno */
  --text-3:     #B4B2A9;

  /* --- Bordi --- */
  --border:        rgba(44,44,42,0.12);
  --border-strong: rgba(44,44,42,0.22);

  /* --- Colori brand secondari --- */
  --blue:  #185FA5;
  --green: #1D9E75;
  --red:   #E24B4A;

  /* --- Premium (Mentor / Studio / Academy / Gifted) --- */
  --premium:    #534AB7;
  --premium-bg: #EEEDFE;

  /* --- Stati semantici --- */
  --success:      #1D9E75;
  --success-bg:   #E1F5EE;
  --success-text: #085041;
  --danger:       #E24B4A;
  --danger-bg:    #FCEBEB;
  --danger-text:  #E24B4A;

  /* --- Radius --- */
  --radius-sm:   6px;
  --radius:      10px;
  --radius-lg:   16px;
  --radius-pill: 999px;

  /* --- Spaziature (base 8px) --- */
  --space-xs:  4px;
  --space-sm:  8px;
  --space-md:  16px;
  --space-lg:  24px;
  --space-xl:  32px;
  --space-2xl: 48px;
  --space-3xl: 64px;

  /* --- Tipografia --- */
  --font-sans:  'Instrument Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono:  'DM Mono', ui-monospace, monospace;
  --font-serif: 'Lora', Georgia, serif;

  --text-xs:   10px;
  --text-sm:   12px;
  --text-md:   13px;
  --text-base: 14px;
  --text-lg:   16px;
  --text-xl:   18px;
  --text-2xl:  24px;

  --weight-regular:   400;
  --weight-medium:    500;
  --weight-semibold:  600;

  --line-height-tight:   1.2;   /* h1, h2, h3 */
  --line-height-normal:  1.5;   /* body */
  --line-height-relaxed: 1.8;   /* long-form (privacy, terms) */

  /* --- Ombre --- */
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-md: 0 4px 6px rgba(0,0,0,0.07);
  --shadow-lg: 0 10px 25px rgba(0,0,0,0.10);
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg-page:   #1E1E1C;
    --surface:   #2A2A28;
    --surface-2: #242422;
    --surface-3: #1E1E1C;

    --text:   #F0EFE9;
    --text-2: #B4B2A9;
    --text-3: #5F5E5A;

    --border:        rgba(240,239,233,0.12);
    --border-strong: rgba(240,239,233,0.20);

    --success-bg:   #0F2006;
    --success-text: #97C459;
    --danger-bg:    #2D1010;
    --danger-text:  #F09595;

    --premium-bg: #1E1C3A;

    /* shadows più piatte in dark */
    --shadow-sm: 0 1px 2px rgba(0,0,0,0.30);
    --shadow-md: 0 4px 6px rgba(0,0,0,0.35);
    --shadow-lg: 0 10px 25px rgba(0,0,0,0.45);
  }
}
