/* Bandeau de consentement à la mesure d'audience (js/analytics.js).
   Non bloquant, en bas de l'écran ; sur mobile, au-dessus de la barre de navigation. Les deux boutons ont le même style. */

.consent-banner {
  position: fixed; z-index: 1000; left: 0; right: 0; bottom: 16px;
  width: min(880px, calc(100% - 32px)); margin: 0 auto;
  display: flex; align-items: center; gap: 24px; padding: 16px 20px;
  background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  animation: consent-in 0.3s var(--ease);
}
.consent-banner:focus { outline: none; }
.consent-banner:focus-visible { border-radius: var(--radius-lg); box-shadow: var(--shadow-lg), var(--focus); }
.consent-text { flex: 1; min-width: 0; margin: 0; font-size: var(--fs-sm); line-height: 1.5; color: var(--ink-2); }
.consent-actions { display: flex; flex-shrink: 0; gap: 12px; }
.consent-banner .btn { min-height: 44px; padding: 0 20px; font-size: var(--fs-sm); }

/* Laisse défiler le bas de page (pied de page) au-dessus du bandeau */
body.has-consent-banner { padding-bottom: calc(var(--consent-h, 0px) + 32px); }

@keyframes consent-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

@media (max-width: 744px) {
  .consent-banner {
    bottom: calc(var(--mobile-nav-h) + env(safe-area-inset-bottom, 0px) + 8px);
    width: calc(100% - 24px); flex-direction: column; align-items: stretch; gap: 12px; padding: 14px 16px;
  }
  .consent-actions { gap: 10px; }
  .consent-actions .btn { flex: 1; padding: 0 12px; }
  body.has-consent-banner { padding-bottom: calc(var(--mobile-nav-h) + env(safe-area-inset-bottom, 0px) + var(--consent-h, 0px) + 20px); }
}

@media print { .consent-banner { display: none; } }
