/* Sonnette, app voyageur : variables.
   Ordre de chargement : sn-variables.css, puis sonnette-app.css, puis le bloc <style> de thème (00-theme.html)
   qui écrase les couleurs de :root pour chaque établissement. Seules les couleurs sont calculées côté serveur. */
/* Polices auto-hébergées (OFL), sous-ensemble latin étendu. Graisses exactes : voir POLICES.md */
@font-face{font-family:"Atkinson Hyperlegible";src:url("/fonts/atkinson-hyperlegible-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url("/fonts/atkinson-hyperlegible-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Young Serif";src:url("/fonts/young-serif-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url("/fonts/bricolage-grotesque-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Unbounded";src:url("/fonts/unbounded-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  /* Valeurs par défaut, écrasées par le bloc de thème */
  --sn-primary:#17605F;--sn-primary-dark:#0E4645;--sn-primary-soft:#DDEBE8;--sn-primary-ink:#17605F;--sn-on-primary:#FFFFFF;
  --sn-accent:#B4551F;--sn-accent-dark:#934516;--sn-on-accent:#FFFFFF;
  --sn-bg:#FAF5EC;--sn-surface:#FFFFFF;--sn-text:#1A2222;--sn-muted:#4F5858;--sn-border:#E2DACB;
  --sn-scrim:#0A2C2B;--sn-on-scrim:#FFFFFF;
  --sn-logo-fond:#FFFFFF;
  /* Couleurs réglementaires et d'alerte : fixes, mais toujours lues par variable */
  --sn-flag-vert:#1E7A3C;--sn-on-flag-vert:#FFFFFF;
  --sn-flag-jaune:#F2BE1A;--sn-on-flag-jaune:#2A2208;
  --sn-flag-rouge:#C62828;--sn-on-flag-rouge:#FFFFFF;
  --sn-warn-bg:#FFF2C8;--sn-warn-ink:#4F3A00;--sn-warn-border:#8A6A00;
  --sn-alert-bg:#FBE3E1;--sn-alert-ink:#5A0F0B;--sn-alert-border:#9E1F17;
  /* Forme et densité */
  --sn-r-card:20px;--sn-r-chip:999px;--sn-r-field:14px;--sn-r-pill:999px;
  --sn-gap:12px;--sn-pad-card:16px;--sn-chip-h:44px;
  /* Typographie */
  --sn-font-display:"Young Serif",Georgia,serif;--sn-display-weight:400;
  --sn-font-body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
  /* Cadrage de la photo de tête (point focal) */
  --sn-hero-focus:50% 50%;
  --sn-hero-h:min(45vh,380px);
}

[data-forme=franche]{--sn-r-card:4px;--sn-r-chip:4px;--sn-r-field:4px;--sn-r-pill:6px}
[data-forme=galet]{--sn-r-card:26px;--sn-r-field:18px}
[data-densite=compacte]{--sn-gap:8px;--sn-pad-card:12px}
[data-police=grotesk]{--sn-font-display:"Bricolage Grotesque",system-ui,sans-serif;--sn-display-weight:700}
[data-police=rond]{--sn-font-display:"Unbounded",system-ui,sans-serif;--sn-display-weight:600}
