/* ═══════════════════════════════════════════════════════════════════════════
   BRICOLAGE GROTESQUE A ÉTÉ RETIRÉE LE 22/08/2026 (Léo 🌱).

   Neuf @font-face (3 graisses × 3 tranches unicode) déclaraient ici
   fonts/bricolage-0/1/2.woff2, soit 120 564 octets embarqués dans chacun des
   trois bundles natifs. Relevé au rendu, pas au nom déclaré : la famille ne
   dessinait plus un seul glyphe. Caprasimo la précède partout dans
   --font-display et couvre latin + latin-ext ; la seule tranche que Bricolage
   apportait en plus est le vietnamien, et l'app ne sert pas le vietnamien
   (fr · en · de · es · it · ar · hi). Une police qu'on télécharge sans jamais
   la dessiner est un poids, pas un repli.

   Fichiers archivés (jamais supprimés) :
     04_RADISH/05-Archives/2026-08-22-polices/
   ⚠️ RESTE À FAIRE, hors de ce lot : les trois index.html natifs préchargent
   encore /fonts/bricolage-2.woff2 en priorité haute (ligne 42). Le préchargement
   est ce qui faisait vraiment descendre les 76 Ko : il doit sauter au moment de
   la synchronisation, sinon il pointera dans le vide.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════════
   LA FICHE — les deux polices de la refonte (Elio 🎨, 11/08/2026)

   Caprasimo (affichage : le chiffre du jour, les titres) et Figtree (corps).
   Les deux sont sous SIL Open Font License 1.1 — licences VÉRIFIÉES et
   embarquées à côté des fichiers : fonts/OFL-Caprasimo.txt, fonts/OFL-Figtree.txt.
   Caprasimo : The DocRepair Project, Phaedra Charles, Flavia Zimbardi.
   Figtree : Erik Kennedy.

   ⚠️ AUCUN @import vers fonts.googleapis.com. La maquette du handoff en
   contient un ; il n'est PAS repris. La CSP du site est `default-src 'self'`
   (donc `font-src` retombe sur 'self') : une police distante serait bloquée.
   Le dossier /fonts/ est dans la liste blanche de synchronisation mobile.

   Sous-ensembles : latin + latin-ext seulement. C'est volontaire, et c'est
   aussi le garde-fou des 7 langues : l'arabe et le hindi sortent des
   `unicode-range`, donc ils retombent AUTOMATIQUEMENT sur la police système,
   qui sait les dessiner. Ne pas élargir ces plages sans embarquer les glyphes.
   Poids ajouté : 53,5 Ko (Caprasimo 22,6 · Figtree 29,7). Figtree est une
   VARIABLE : un seul fichier par tranche couvre 300→900.
   ═══════════════════════════════════════════════════════════════════════════ */

/* — Caprasimo (affichage) — latin-ext */
@font-face {
  font-family: 'Caprasimo';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/caprasimo-latin-ext.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;
}
/* — Caprasimo — latin */
@font-face {
  font-family: 'Caprasimo';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/caprasimo-latin.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;
}
/* — Figtree (corps, variable 300→900) — latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url(/fonts/figtree-latin-ext.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;
}
/* — Figtree — latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url(/fonts/figtree-latin.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;
}

/* ═══════════════════════════════════════════════════════════════════════════
   LA CRAIE — direction « L'ARDOISE » (Elio 🎨, 22/08/2026)

   Caveat, variable 400→700, sous SIL Open Font License 1.1 (The Caveat Project
   Authors — licence embarquée à côté du fichier : fonts/OFL-Caveat.txt).
   Pourquoi elle : c'est une écriture au FEUTRE, pas une anglaise à déliés. Les
   déliés se cassent à 96 px sur un fond sombre et deviennent illisibles à 20 px
   dans une ligne de repas ; Caveat garde un trait plein et régulier aux deux
   tailles, et ses chiffres restent distinguables un à un (le 1 a un empattement,
   le 7 n'a pas de barre — deux confusions de moins que les alternatives
   testées).

   ⛔⛔ LA RÈGLE QUI DÉCIDE DE TOUT — LIRE AVANT DE TOUCHER À `unicode-range`.
   L'app tourne en SEPT langues (js/i18n.js) : fr · en · es · it · de · HI · AR.
   Hindi (devanagari) et arabe ne sont dans AUCUNE police embarquée ; ils
   retombent sur la police du système, qui sait les dessiner. Une police
   manuscrite latine ne doit donc JAMAIS porter du texte d'interface.

   Le repli n'est pas une consigne écrite dans un document : IL EST DANS CE
   FICHIER. Le `unicode-range` ci-dessous ne contient QUE des chiffres et de la
   ponctuation. Conséquence mécanique, garantie par le navigateur et non par la
   discipline de qui écrit la vue : si une règle applique la craie à un élément
   qui contient des LETTRES — latines, arabes ou devanagari — seuls les chiffres
   sont dessinés en craie, tout le reste retombe sur `--font-body` glyphe par
   glyphe. Il n'y a pas de cas où l'arabe ou le hindi passe en craie.
   C'est pour ça que `--font-craie` liste Figtree derrière : le repli est nommé,
   pas laissé au hasard du système.

   ⚠️ CE QUI N'EST PAS DEDANS, ET POURQUOI. U+202F (espace fine insécable) est
   le séparateur de milliers du français moderne (mesuré : `(1234).toLocaleString
   ('fr-FR')` rend « 1<U+202F>234 »). Caveat ne le dessine pas. Il est laissé
   HORS de la plage : le navigateur va donc chercher cette seule espace dans
   Figtree, qui l'a et à la bonne chasse. L'ajouter à la plage en le faisant
   pointer sur l'espace ordinaire — essayé — donne une espace pleine, donc
   « 1 234 » au lieu de « 1 234 ». Mieux vaut un repli juste qu'un glyphe faux.

   Sous-ensemble : 36 glyphes (chiffres, ponctuation de nombre, ≥ ≤ × ° %).
   POIDS : 6,4 Ko (6 556 octets) en woff2. Pour comparaison, la famille complète
   fait 394 Ko en TTF. Le bundle iOS pèse déjà 162 Mo : on n'embarque pas une
   police entière pour dix chiffres.
   Fabrication (traçable, refaisable) :
     pyftsubset Caveat[wght].ttf --flavor=woff2 --layout-features='' \
       --no-hinting --unicodes=<la plage ci-dessous> -o caveat-craie.woff2
   ═══════════════════════════════════════════════════════════════════════════ */
@font-face {
  font-family: 'RadishCraie';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/caveat-craie.woff2) format('woff2');
  unicode-range: U+0020, U+0021, U+0025, U+0027-0029, U+002B-003B, U+003F,
                 U+007E, U+00A0, U+00B0, U+00D7, U+2013-2014, U+2019, U+2026,
                 U+2212, U+2264-2265;
}
