/* Public design tokens. Keep load order in components/head.php. */

body.public-site {
    --public-font-body: "Poppins", sans-serif;
    --public-font-heading: "Poppins", sans-serif;
    --public-weight-regular: 400;
    --public-weight-medium: 500;
    --public-weight-semibold: 600;
    --public-type-nav-weight: var(--public-weight-regular);
    --public-type-button-weight: var(--public-weight-regular);
    --public-type-eyebrow-size: 0.84rem;
    --public-type-eyebrow-weight: var(--public-weight-regular);
    --public-type-eyebrow-letter-spacing: 0.16em;
    --public-type-meta-label-weight: var(--public-weight-regular);
    --public-type-faq-question-weight: var(--public-weight-medium);
    --public-type-contact-link-weight: var(--public-weight-regular);
    --public-type-legal-body-weight: var(--public-weight-regular);
    --public-type-legal-heading-weight: var(--public-weight-medium);
    --public-type-cookie-heading-weight: var(--public-weight-medium);
    --public-type-cookie-label-weight: var(--public-weight-regular);
    --public-bg: #ffffff;
    --public-surface: #fbf8f2;
    --public-surface-strong: #efe8dd;
    --public-ink: #121212;
    --public-ink-rgb: 18, 18, 18;
    --public-muted: #5f5a55;
    --public-line: rgba(18, 18, 18, 0.11);
    --public-line-strong: rgba(18, 18, 18, 0.18);
    --public-dark: #07080b;
    --public-dark-soft: #101116;
    --public-dark-line: var(--public-on-dark-12);
    --public-orange: #FF8800;
    --public-orange-rgb: 255, 136, 0;
    --public-blue: #135dff;
    --public-blue-rgb: 19, 93, 255;
    --public-red: #d83b3b;
    --public-red-rgb: 216, 59, 59;
    --public-red-soft: #ffb3b0;
    --public-red-soft-rgb: 255, 179, 176;
    --public-shadow: 0 24px 70px rgba(7, 9, 12, 0.12);
    --public-shadow-strong: 0 34px 90px rgba(4, 6, 10, 0.22);
    --public-transition: all 0.3s ease;

    /* =====================================================================
       SCALE ADDITIVE (Fase 3) — valori ESATTI estratti dal CSS reale, 1:1.
       Introdotte ma non ancora referenziate: zero impatto sul rendering.
       I nomi sono "per valore" (fedeli al raw) per consentire una
       riconduzione 1:1 in Fase 4. La normalizzazione semantica
       (aggregazione, rinomina) è rimandata alla Fase 5.
       ===================================================================== */

    /* --- Bianco su fondo scuro: rgba(255,255,255,α) ---
       Token per i ~22 alpha più frequenti (≈64% delle 348 occorrenze).
       Gli alpha residui restano raw e verranno gestiti in Fase 5. */
    --public-on-dark-012: rgba(255, 255, 255, 0.012);
    --public-on-dark-025: rgba(255, 255, 255, 0.025);
    --public-on-dark-026: rgba(255, 255, 255, 0.026);
    --public-on-dark-03:  rgba(255, 255, 255, 0.03);
    --public-on-dark-04:  rgba(255, 255, 255, 0.04);
    --public-on-dark-045: rgba(255, 255, 255, 0.045);
    --public-on-dark-05:  rgba(255, 255, 255, 0.05);
    --public-on-dark-055: rgba(255, 255, 255, 0.055);
    --public-on-dark-06:  rgba(255, 255, 255, 0.06);
    --public-on-dark-08:  rgba(255, 255, 255, 0.08);
    --public-on-dark-10:  rgba(255, 255, 255, 0.1);
    --public-on-dark-12:  rgba(255, 255, 255, 0.12);
    --public-on-dark-16:  rgba(255, 255, 255, 0.16);
    --public-on-dark-18:  rgba(255, 255, 255, 0.18);
    --public-on-dark-22:  rgba(255, 255, 255, 0.22);
    --public-on-dark-28:  rgba(255, 255, 255, 0.28);
    --public-on-dark-32:  rgba(255, 255, 255, 0.32);
    --public-on-dark-40:  rgba(255, 255, 255, 0.4);
    --public-on-dark-48:  rgba(255, 255, 255, 0.48);
    --public-on-dark-50:  rgba(255, 255, 255, 0.5);
    --public-on-dark-55:  rgba(255, 255, 255, 0.55);
    --public-on-dark-62:  rgba(255, 255, 255, 0.62);
    --public-on-dark-66:  rgba(255, 255, 255, 0.66);
    --public-on-dark-70:  rgba(255, 255, 255, 0.7);
    --public-on-dark-72:  rgba(255, 255, 255, 0.72);
    --public-on-dark-74:  rgba(255, 255, 255, 0.74);
    --public-on-dark-78:  rgba(255, 255, 255, 0.78);
    --public-on-dark-82:  rgba(255, 255, 255, 0.82);
    --public-on-dark-85:  rgba(255, 255, 255, 0.85);
    --public-on-dark-88:  rgba(255, 255, 255, 0.88);
    --public-on-dark-92:  rgba(255, 255, 255, 0.92);
    --public-on-dark:        #ffffff;  /* testo bianco pieno su fondo scuro */
    --public-on-dark-muted:  #a3a3a3;  /* testo muted su fondo scuro */

    /* --- Border radius: scala AGGREGATA (Fase 5b) a 7 step canonici ---
       Scala canonica: sm 8 / cta 14 / md 18 / lg 22 / xl 28 / pill / circle.
       Gli step intermedi restano come ALIAS del canonico più vicino, così i
       136 call-site non cambiano nome ma puntano alla scala ridotta.
       Delta massimo 6px (34→28), su angoli grandi poco percettibile. */
    --public-radius-pill: 999px;     /* pill/chip arrotondati */
    --public-radius-circle: 50%;     /* cerchi */
    --public-radius-sm: 8px;         /* canonico piccolo */
    --public-radius-cta: 14px;       /* canonico CTA/bottoni (convenzione CLAUDE.md) */
    --public-radius-md: 18px;        /* canonico medio */
    --public-radius-lg: 22px;        /* canonico grande */
    --public-radius-xl: 28px;        /* canonico extra-large */
    /* alias intermedi → canonici (aggregazione, nessun rename ai call-site) */
    --public-radius-12: var(--public-radius-cta);  /* 12 → 14 */
    --public-radius-16: var(--public-radius-md);   /* 16 → 18 */
    --public-radius-18: var(--public-radius-md);   /* 18 (canonico) */
    --public-radius-20: var(--public-radius-lg);   /* 20 → 22 */
    --public-radius-22: var(--public-radius-lg);   /* 22 (canonico) */
    --public-radius-24: var(--public-radius-lg);   /* 24 → 22 */
    --public-radius-26: var(--public-radius-xl);   /* 26 → 28 */
    --public-radius-28: var(--public-radius-xl);   /* 28 (canonico) */
    --public-radius-30: var(--public-radius-xl);   /* 30 → 28 */
    --public-radius-34: var(--public-radius-xl);   /* 34 → 28 */

    /* --- Box shadow: pattern reali ricorrenti (oltre i 2 già esistenti) --- */
    --public-shadow-card: 0 24px 64px rgba(0, 0, 0, 0.18);  /* 7× */
    --public-shadow-soft: 0 6px 24px rgba(0, 0, 0, 0.06);
    --public-shadow-focus: 0 0 0 3px rgba(var(--public-blue-rgb), 0.1);
    /* glow dot di stato (status signal), riusati cross-page */
    --public-glow-dot-red:  0 0 0 9px rgba(var(--public-red-rgb), 0.12), 0 0 24px rgba(var(--public-red-rgb), 0.48);
    --public-glow-dot-blue: 0 0 0 9px rgba(var(--public-blue-rgb), 0.1), 0 0 24px rgba(var(--public-blue-rgb), 0.42);

    /* --- Spacing: scala dai cluster naturali (px) ---
       Documentale in questa fase; riconduzione opzionale in Fase 4. */
    --public-space-8: 8px;
    --public-space-10: 10px;
    --public-space-12: 12px;
    --public-space-14: 14px;
    --public-space-16: 16px;
    --public-space-18: 18px;
    --public-space-20: 20px;
    --public-space-22: 22px;
    --public-space-24: 24px;
    --public-space-28: 28px;
    --public-space-32: 32px;
    --public-space-40: 40px;
    --public-space-48: 48px;
    --public-space-72: 72px;

    /* --- Breakpoint canonici (DOCUMENTAZIONE) ---
       NB: le @media non possono usare var() in CSS vanilla senza build.
       Questi token sono inerti: riferimento per il responsive. Le @media del
       sito usano ESCLUSIVAMENTE queste 7 soglie (le fuori-scala sono state
       ricondotte alla canonica più vicina). */
    --public-bp-sm: 520px;
    --public-bp-md: 640px;
    --public-bp-lg: 768px;
    --public-bp-tablet: 900px;
    --public-bp-xl: 1024px;
    --public-bp-laptop: 1120px;
    --public-bp-2xl: 1240px;

    background: var(--public-bg);
    color: var(--public-ink);
    font-family: var(--public-font-body);
}
