/* Bandeau de consentement : tokens AFG, repli sur les valeurs brutes si le thème ne les définit pas. */
.fa-consent { position: fixed; z-index: 1000; left: 16px; right: 16px; bottom: 16px; max-width: 560px; margin-inline: auto; padding: 20px; background: var(--ink, #0E1726); color: var(--white, #FFFFFF); border: 1.5px solid var(--pylon, #FF6A13); font: 400 14px/1.5 var(--sans, 'IBM Plex Sans', system-ui, sans-serif); }
.fa-consent[hidden] { display: none; }
.fa-consent__title { margin: 0 0 6px; font: 600 12px var(--mono, 'IBM Plex Mono', monospace); letter-spacing: .12em; text-transform: uppercase; }
.fa-consent__text { margin: 0 0 16px; color: var(--mist, #C5CCD6); }
.fa-consent__text a { color: var(--white, #FFFFFF); }
.fa-consent__actions { display: flex; gap: 12px; flex-wrap: wrap; }
/* Les deux choix ont le même poids visuel (CNIL). */
.fa-consent__btn { flex: 1 1 140px; min-height: 44px; padding: 0 16px; background: var(--white, #FFFFFF); color: var(--ink, #0E1726); border: 0; border-radius: 2px; font: 600 14px var(--sans, 'IBM Plex Sans', system-ui, sans-serif); cursor: pointer; }
.fa-consent__btn:hover { background: var(--pylon, #FF6A13); }
.fa-consent__btn:focus-visible { outline: 2px solid var(--pylon, #FF6A13); outline-offset: 2px; }
.fa-consent-link { background: none; border: 0; padding: 0; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
.fa-consent-link:hover { color: var(--white, #FFFFFF); }
