/* public/css/design/tokens.css — genere, voir DESIGN.md. Actif uniquement quand <body data-design="..."> est present (choix par utilisateur). */
body[data-design="majorelle"]{--bg:#F3EDE1;--surface:#FCFAF4;--surface-2:#ECE4D2;--ink:#1E2148;--ink-2:#726F80;--line:#1E2148;--line-soft:#DCD4C2;--accent:#3B49C8;--accent-hover:#2A37A8;--accent-ink:#FFFFFF;--ok:#2F7A52;--ok-bg:#DFEBE0;--warn:#996019;--warn-bg:#F1E4C8;--bad:#B93A3A;--bad-bg:#F2DBD4;--radius:10px 3px;--radius-card:18px 4px 18px 4px;--shadow:0 1px 2px rgba(30,33,72,.08),0 8px 24px rgba(30,33,72,.08);--font-ui:'Hanken Grotesk',system-ui,sans-serif;--font-num:'Hanken Grotesk',system-ui,sans-serif;--font-display:'Bricolage Grotesque',sans-serif}body[data-design="majorelle"][data-theme="dark"]{--bg:#0F1130;--surface:#181B3E;--surface-2:#22264E;--ink:#EFEBE0;--ink-2:#9A99B0;--line:#EFEBE0;--line-soft:#33375F;--accent:#8794F2;--accent-hover:#A3AEFF;--accent-ink:#0F1130;--ok:#7CC49A;--ok-bg:#1B3229;--warn:#E3B25E;--warn-bg:#332A15;--bad:#EC7C6A;--bad-bg:#3C2028;--shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.35)}body[data-design="pupitre"]{--bg:#EDF1F4;--surface:#FBFCFD;--surface-2:#E2E8EE;--ink:#0C1219;--ink-2:#5A6878;--line:#C6D0DA;--line-soft:#DCE3EA;--accent:#088A96;--accent-hover:#0AA5B4;--accent-ink:#FFFFFF;--ok:#128A5E;--ok-bg:rgba(18,138,94,.1);--warn:#9A6B08;--warn-bg:rgba(154,107,8,.1);--bad:#CC3D30;--bad-bg:rgba(204,61,48,.1);--radius:6px;--radius-card:10px;--shadow:0 1px 2px rgba(12,18,25,.06),0 10px 28px rgba(12,18,25,.08);--font-ui:'Space Grotesk',system-ui,sans-serif;--font-num:'JetBrains Mono',monospace;--font-display:'Space Grotesk',system-ui,sans-serif}body[data-design="pupitre"][data-theme="dark"]{--bg:#0A0E13;--surface:#10161E;--surface-2:#18202B;--ink:#E8EEF4;--ink-2:#7E8CA0;--line:#26313F;--line-soft:#1B2430;--accent:#2AD4C3;--accent-hover:#5FE6D8;--accent-ink:#04211D;--ok:#3DDC97;--ok-bg:rgba(61,220,151,.12);--warn:#F5B841;--warn-bg:rgba(245,184,65,.12);--bad:#FF6B5E;--bad-bg:rgba(255,107,94,.12);--shadow:0 1px 0 rgba(255,255,255,.04) inset,0 12px 32px rgba(0,0,0,.4)}body[data-design="irise"]{--bg:#F4F4FA;--surface:rgba(255,255,255,.9);--surface-2:rgba(255,255,255,.7);--ink:#191830;--ink-2:#6D6C85;--line:rgba(25,24,48,.12);--line-soft:rgba(25,24,48,.07);--accent:#6C4CF1;--accent-hover:#5636E0;--accent-ink:#FFFFFF;--ok:#0E8A6A;--ok-bg:rgba(14,138,106,.1);--warn:#93650A;--warn-bg:rgba(147,101,10,.1);--bad:#D53860;--bad-bg:rgba(213,56,96,.1);--radius:12px;--radius-card:20px;--shadow:0 1px 2px rgba(25,24,48,.04),0 16px 40px rgba(25,24,48,.08);--font-ui:'Sora',system-ui,sans-serif;--font-num:'Spline Sans Mono',monospace;--font-display:'Sora',system-ui,sans-serif}body[data-design="irise"][data-theme="dark"]{--bg:#0D0C1D;--surface:rgba(30,28,58,.88);--surface-2:rgba(44,42,80,.7);--ink:#EDECFA;--ink-2:#8F8EAC;--line:rgba(237,236,250,.14);--line-soft:rgba(237,236,250,.07);--accent:#9B82FF;--accent-hover:#B4A1FF;--accent-ink:#14102E;--ok:#4ED9AC;--ok-bg:rgba(78,217,172,.12);--warn:#EFC15C;--warn-bg:rgba(239,193,92,.12);--bad:#FF7C9C;--bad-bg:rgba(255,124,156,.12);--shadow:0 1px 2px rgba(0,0,0,.3),0 16px 40px rgba(0,0,0,.4)}body[data-design="aurore"]{--bg:#FAFAF7;--surface:#FFFFFF;--surface-2:#F1F0EA;--ink:#141412;--ink-2:#75736B;--line:#E4E2DA;--line-soft:#E4E2DA;--accent:#FF5A1F;--accent-hover:#E0450D;--accent-ink:#FFFFFF;--ok:#1F7A4D;--ok-bg:#E6F2EA;--warn:#8F6400;--warn-bg:#F5EDD6;--bad:#D2322D;--bad-bg:#FBE7E4;--radius:14px;--radius-card:22px;--shadow:0 1px 2px rgba(20,20,18,.04),0 12px 32px rgba(20,20,18,.06);--font-ui:'Instrument Sans',system-ui,sans-serif;--font-num:'Geist Mono',monospace;--font-display:'Instrument Serif',serif}body[data-design="aurore"][data-theme="dark"]{--bg:#131311;--surface:#1C1C19;--surface-2:#26261F;--ink:#F2F1EC;--ink-2:#97958A;--line:#31312A;--line-soft:#31312A;--accent:#FF6B33;--accent-hover:#FF8557;--accent-ink:#1A0C05;--ok:#5FC08A;--ok-bg:#1C2E23;--warn:#DDB055;--warn-bg:#2F2817;--bad:#F0655C;--bad-bg:#38201D;--shadow:0 1px 2px rgba(0,0,0,.3),0 12px 32px rgba(0,0,0,.35)}

/* Police et taille de texte de toute l'application (22/07/2026, migration 015) - retour
   utilisateur : "je vois pas la police et la taille dans le reglage theme global et module",
   portee confirmee "tout le texte de l'application". Placees APRES les regles par direction
   ci-dessus (meme specificite body[attr] - le dernier gagne) : "systeme"/"classique" surchargent
   la police de la direction active sans avoir besoin d'aucun chargement reseau supplementaire
   (contrairement a "theme", le defaut, qui garde la police Google Fonts propre a la direction -
   voir font_import, header.php). Taille de texte via zoom (pas transform:scale) sur <body> entier
   (pas juste .ssm-shell) pour que les modales Bootstrap (position:fixed, hors .ssm-shell - voir
   footer.php) suivent aussi - zoom recalcule le viewport effectif pour les elements fixed,
   contrairement a transform qui casserait leur positionnement. */
body[data-police="systeme"]{--font-ui:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--font-num:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--font-display:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
body[data-police="classique"]{--font-ui:Georgia,Cambria,'Times New Roman',serif;--font-num:Georgia,Cambria,'Times New Roman',serif;--font-display:Georgia,Cambria,'Times New Roman',serif}
body[data-taille-texte="petit"]{zoom:.9}
body[data-taille-texte="grand"]{zoom:1.15}
