/* ============================================================
   TC Dépannage — bandeau de consentement cookies
   ============================================================ */

.cookie-banner {
  position: fixed;
  left: clamp(12px, 3vw, 28px);
  right: clamp(12px, 3vw, 28px);
  bottom: calc(clamp(12px, 3vw, 28px) + env(safe-area-inset-bottom, 0px));
  z-index: 9000;
  max-width: 720px;
  display: flex;
  align-items: center;
  gap: clamp(16px, 2vw, 28px);
  padding: 18px clamp(18px, 2vw, 24px);
  background: var(--ink-90);
  color: var(--paper);
  border: 1px solid rgba(245, 241, 234, 0.14);
  border-radius: var(--r-md);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 240ms var(--ease), transform 240ms var(--ease);
}
.cookie-banner.is-open {
  opacity: 1;
  transform: translateY(0);
}
/* display:flex l'emportait sur le display:none par défaut de [hidden] :
   le bandeau fermé restait invisible mais interceptait les clics du footer. */
.cookie-banner[hidden] { display: none; }
.cookie-banner:not(.is-open) { pointer-events: none; }
.cookie-banner.is-open { pointer-events: auto; }

.cookie-banner-text {
  font-family: var(--font-body);
  font-size: 13px;
  line-height: 1.55;
  color: rgba(245, 241, 234, 0.78);
}
.cookie-banner-text a {
  color: var(--signal);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cookie-banner-text a:hover { color: var(--signal-hot); }

.cookie-banner-btns {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}
.cookie-btn {
  padding: 11px 20px;
  min-height: 44px;
  border-radius: var(--r-full);
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  transition: background 200ms var(--ease), color 200ms var(--ease), border-color 200ms var(--ease);
}
.cookie-btn.is-solid {
  background: var(--signal);
  color: var(--paper);
  border: 1px solid var(--signal);
}
.cookie-btn.is-solid:hover { background: var(--signal-hot); border-color: var(--signal-hot); }
.cookie-btn.is-ghost {
  background: transparent;
  color: rgba(245, 241, 234, 0.75);
  border: 1px solid rgba(245, 241, 234, 0.24);
}
.cookie-btn.is-ghost:hover { color: var(--paper); border-color: var(--paper); }

@media (max-width: 720px) {
  /* Site d'urgence : le bandeau reste compact et ne recouvre pas les CTA. */
  .cookie-banner {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    padding: 12px 14px;
    left: 10px;
    right: 10px;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  }
  .cookie-banner-text { font-size: 12px; line-height: 1.45; }
  .cookie-banner-btns .cookie-btn {
    flex: 1;
    min-height: 40px;
    padding: 9px 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-banner { transition: none; }
}
