/* ===================================================================================
   fonts.css — I CARATTERI CHE L'APPLICAZIONE SPEDISCE CON SE'
   ===================================================================================

   PERCHE' QUESTO FOGLIO ESISTE
   I temi dichiaravano font di SISTEMA Windows (Segoe UI, Segoe UI Variable,
   Bahnschrift). Su questa macchina si vedono, ma sono installati dal sistema
   operativo, non spediti dall'applicazione: su un Mac, su Linux o su un Windows
   senza quel carattere il browser cade in silenzio sul fallback e il tema perde
   la propria voce, senza un errore e senza un segnale. Qui le famiglie a licenza
   aperta vengono ospitate dall'app, quindi rendono uguali su qualunque client.

   PERCHE' NON BASTAVA UNA @font-face SUI FONT DI PRIMA
   Segoe UI, Segoe UI Variable, Bahnschrift, Sitka e Constantia sono Microsoft e
   la loro licenza non consente l'incorporamento web: non si possono spedire. Le
   sei famiglie qui sotto sono tutte SIL OFL 1.1 - i testi di licenza stanno
   accanto ai file, in wwwroot/fonts/, perche' la OFL chiede che accompagnino il
   font ovunque venga ridistribuito.
   ✅ Dall'8a sessione NESSUN tema dichiara piu' un font di sistema: l'ultima riga
   rimasta era `h1-h4 { Cambria, Georgia }` su Dossier, caduta quando Dossier e'
   diventato Notturno. Ora i cinque temi rendono solo caratteri che l'app possiede.

   PERCHE' STA NEL _Host.cshtml E NON DENTRO UN TEMA
   Il ThemeSwitcher SCARICA i fogli del tema quando si cambia tema (vedi §3 del
   LAYOUT-CONTEXT). Se le @font-face vivessero in un foglio di tema verrebbero
   smontate e rimontate a ogni cambio, e in sviluppo - dove gli static file sono
   serviti no-store - i 320 KB si riscaricherebbero ogni volta. Quale carattere
   l'app POSSIEDE non e' una decisione del tema: e' vero anche sul Fluent di serie.

   SONO TUTTI VARIABILI: un solo file copre l'intero asse dei pesi, quindi il 650
   che i temi chiedono per i titoli di sezione rende un 650 vero e non la faccia
   semibold piu' vicina. Archivo ha anche l'asse di LARGHEZZA (62%-125%): la
   variante stretta per le etichette maiuscole si ottiene con font-stretch, senza
   scaricare una seconda famiglia.

   Le unicode-range sono quelle originali dei pacchetti, non riscritte a mano:
   sbagliarle fa cadere in silenzio l'euro o le accentate su un altro file.
   Sottoinsiemi presenti: latin + latin-ext. Non ci sono cirillico, greco e
   vietnamita, che questa applicazione non scrive.
   =================================================================================== */


/* --- Plus Jakarta Sans (SIL OFL 1.1) - testo e titoli del tema Ampio ------------- */

@font-face {
    font-family: "Plus Jakarta Sans";
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url("../fonts/plus-jakarta-sans-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Plus Jakarta Sans";
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url("../fonts/plus-jakarta-sans-latin-ext-var.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* --- IBM Plex Sans (SIL OFL 1.1) - voce UNICA del tema Indice ---------------------
   Chiesta dall'utente nell'8a sessione, scegliendola fra le candidate montate per
   Notturno. Sostituisce ENTRAMBE le voci che Indice aveva: Archivo condensato all'85%
   sul chrome e Manrope sul contenuto.
   ⚠️ NON ha l'asse di larghezza (la sua @font-face dichiara `font-stretch: 100%`), quindi
   il font-stretch dell'ex chrome e' stato TOLTO invece che lasciato inerte. Se un giorno
   servisse il condensato, "IBM Plex Sans Condensed" e' una famiglia separata e NON
   variabile: sei file statici contro uno.
   💡 Con questa cade l'ULTIMA condivisione: cinque temi, cinque famiglie distinte. --- */

@font-face {
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/ibm-plex-sans-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "IBM Plex Sans";
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/ibm-plex-sans-latin-ext-var.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* --- Archivo (SIL OFL 1.1) - testo ed etichette del tema Nitido -------------------
   Due assi: peso 100-900 E larghezza 62%-125%. Il font-stretch va DICHIARATO qui,
   o l'asse resta inaccessibile e si ottiene solo la larghezza normale.
   ⚠️ Dall'8a sessione l'asse di larghezza NON e' piu' usato da nessuno: serviva al chrome
   di Indice all'85%, che ora e' passato a IBM Plex Sans. La dichiarazione resta perche' e'
   una proprieta' del file, non una scelta di tema, e toglierla renderebbe l'asse
   inaccessibile a chi lo volesse domani. --- */

@font-face {
    font-family: "Archivo";
    font-style: normal;
    font-weight: 100 900;
    font-stretch: 62% 125%;
    font-display: swap;
    src: url("../fonts/archivo-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Archivo";
    font-style: normal;
    font-weight: 100 900;
    font-stretch: 62% 125%;
    font-display: swap;
    src: url("../fonts/archivo-latin-ext-var.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* --- Cascadia Mono (SIL OFL 1.1) - cifre incolonnate in griglia -------------------
   ⚠️ Questa famiglia e' ANCHE installata su questa macchina. La dichiarazione qui
   sopra la copia locale: e' voluto, o continueremmo a verificare il font di
   sistema credendo di verificare quello spedito. --- */

@font-face {
    font-family: "Cascadia Mono";
    font-style: normal;
    font-weight: 200 700;
    font-display: swap;
    src: url("../fonts/cascadia-mono-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Cascadia Mono";
    font-style: normal;
    font-weight: 200 700;
    font-display: swap;
    src: url("../fonts/cascadia-mono-latin-ext-var.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* --- Source Sans 3 (SIL OFL 1.1) - testo del tema Notturno ------------------------
   Scelta nell'8a sessione confrontando tre candidate montate sulle superfici vere
   del tema, non su un campione: umanista, quieta, disegnata per l'interfaccia, ed e'
   la piu' leggibile delle tre ai corpi minuscoli — che su un chrome scuro conta piu'
   che altrove. E' anche la piu' STRETTA: sulla voce di menu piu' lunga rende 101.9px
   contro i 116.6 di Plus Jakarta Sans, cioe' -12.6% su 234px utili.
   💡 Notturno prendeva in prestito Plus Jakarta Sans da Ampio, e con questa smise. Restava
   una sola condivisione — Repertorio e il contenuto di Indice su Manrope — caduta anche
   quella poco dopo, quando Indice e' passato a IBM Plex Sans. --- */

@font-face {
    font-family: "Source Sans 3";
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/source-sans-3-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Source Sans 3";
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/source-sans-3-latin-ext-var.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* --- Manrope (SIL OFL 1.1) - testo di REPERTORIO, e di nessun altro ---------------
   ⚠️ Questa nota ha gia' sbagliato due volte, e vale la pena tenerne il conto: diceva
   "nessun tema la usa ancora" (vero all'arrivo dei file, falso poche ore dopo, quando il
   §24.5 porto' i tre temi storici sui font aperti), poi "Repertorio e contenuto di Indice".
   Dall'8a sessione Indice e' su IBM Plex Sans, quindi Manrope e' di Repertorio soltanto.
   💡 Una nota su CHI USA una risorsa invecchia a ogni cambio di tema: e' il tipo di
   commento che va riletto quando si tocca un font, non quando si tocca questo file. --- */

@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url("../fonts/manrope-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url("../fonts/manrope-latin-ext-var.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
