/* base.css — CSS commun chargé par toutes les pages njk via head-meta.njk
   ===========================================================================
   PHASE 1 (15/05/2026 soir) : règles communes SAFE (vérifiées identiques sur
   30+ pages njk dont la page audit-landing qui a des overrides spécifiques).

   SAFETY :
   - PAS de :root (chaque page définit ses tokens locaux par responsive BP)
   - PAS de body { font-size, font-family, color, background } (varie par page,
     ex: audit landing a background:#e8e6e2 spécifique)
   - PAS de h1-h4 styles (line-height et letter-spacing varient par BP via @media)
   - PAS de @media (prefers-color-scheme: dark) auto (dark mode = toggle user)

   CONTENU PRESENT (testé sans régression visuelle pixel-perfect sur 84 captures
   = 28 pages × 3 viewports) :
   - Reset universel (* {box-sizing: border-box})
   - A11y :focus-visible global
   - A11y .skip-link
   - Back-to-top compensation quand CMP banner visible

   EXTENSION : voir _docs/BASE-CSS-REFACTO-PLAN.md pour Phase 2 (dédup inline).
   ===========================================================================
*/

/* Reset universel — verifié identique sur 33 pages njk */
*{box-sizing:border-box}

/* A11y — focus-visible global, override safe (les pages peuvent override par sélecteur spécifique) */
:focus-visible{outline:2px solid var(--c-ink);outline-offset:2px}

/* A11y — skip-link (classe spécifique, pas de conflit cascade) */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;padding:12px 20px;background:var(--c-ink);color:var(--c-cream);z-index:9999;font-family:var(--f-body);font-size:14px;text-decoration:none;border:2px solid var(--c-cream);border-radius:4px}

/* CMP banner compensation : remonter le back-to-top quand CMP visible */
body:has(.cmp-banner.cmp-visible) .back-to-top{bottom:116px}
body.cmp-open .back-to-top{bottom:116px}
