.cookie-banner[hidden] { display: none; }
/* Encart de coin : consent.js le cale en bas à gauche du cadre 4:3 (left / bottom). Sans cadre,
   il reste dans le coin bas gauche de la fenêtre. Il glisse en marches, un instant après
   l'allumage de l'écran, pour ne pas voler la première image. */
.cookie-banner {
  position: fixed; left: 16px; bottom: 16px; z-index: 1080;
  box-sizing: border-box; pointer-events: none;
  font-family: 'Jersey 15', sans-serif;
}
.cookie-banner-inner {
  pointer-events: auto; display: grid; gap: 10px;
  width: min(292px, calc(100vw - 32px)); padding: 12px 14px 14px;
  border: 0; border-radius: 0; background: var(--screen-panel); color: var(--screen-ink);
  box-shadow: inset 3px 0 var(--screen-accent), 0 4px 0 var(--screen-shadow), 0 14px 32px var(--screen-shadow);
  animation: cookie-banner-in 260ms 1100ms steps(6) backwards;
}
@keyframes cookie-banner-in { from { transform: translateY(calc(100% + 24px)); } }
.cookie-banner-copy strong { display: block; margin: 0 0 3px; color: var(--screen-accent); font: 22px/1 'Jersey 15', sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.cookie-banner-copy p { margin: 0; color: var(--screen-muted); font: 18px/1.1 'Jersey 15', sans-serif; }
.cookie-banner-copy a { color: var(--screen-ink); text-underline-offset: 2px; }
.cookie-banner-copy a:focus-visible { outline: none; background: var(--screen-tint); color: var(--screen-accent); }
.cookie-banner-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cookie-btn {
  min-height: 36px; padding: 4px 10px; border: 0; border-radius: 0;
  background: var(--screen-raised); color: var(--screen-ink); cursor: pointer;
  font: 19px/1 'Jersey 15', sans-serif; text-transform: uppercase; letter-spacing: .04em;
}
.cookie-btn-accept { background: var(--screen-accent); color: var(--screen-accent-ink); box-shadow: 0 3px 0 var(--screen-shadow); }
/* Sélection : le curseur d'écran (arcade-ui.css), dehors pour ne pas toucher le voisin. */
.cookie-btn { --cursor-len: 8px; }
.cookie-btn:is(:hover, :focus-visible) { outline: none; background: var(--screen-tint); color: var(--screen-accent); }
.cookie-btn-accept:is(:hover, :focus-visible) { background: color-mix(in srgb, var(--screen-accent) 84%, #fff); color: var(--screen-accent-ink); box-shadow: 0 3px 0 var(--screen-shadow); }
.cookie-btn:active { transform: translateY(2px); }
/* Sans cadre assez large (téléphone), l'encart se pose au-dessus de l'aide clavier du bas. */
@media (max-width: 760px) {
  .cookie-banner { left: 50%; bottom: 56px; transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .cookie-banner-inner { animation: none; }
}
