/* Bandeau de consentement — s'adapte aux variables du site si présentes */
.cc-banner {
  position: fixed; left: 1rem; bottom: 1rem; z-index: 500;
  width: min(420px, calc(100vw - 2rem));
  padding: 1.25rem 1.3rem 1.2rem;
  border-radius: 18px;
  border: 1px solid var(--line-strong, rgba(167,139,250,.35));
  background: var(--card-solid, #171029);
  color: var(--ink, #f5f0ff);
  box-shadow: 0 18px 50px rgba(0,0,0,.35);
  font-family: var(--body, 'Inter', system-ui, sans-serif);
  font-size: .9rem; line-height: 1.55;
}
.cc-banner[hidden] { display: none; }
.cc-banner h2 { font-family: var(--display, 'Syne', system-ui, sans-serif); font-size: 1.02rem; margin: 0 0 .45rem; letter-spacing: -.01em; }
.cc-banner p { margin: 0 0 1rem; color: var(--ink-soft, #d7c9ff); }
.cc-banner a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.cc-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.cc-btn {
  font: inherit; font-weight: 600; cursor: pointer;
  padding: .7rem 1rem; border-radius: 100px;
  border: 1px solid var(--line-strong, rgba(167,139,250,.35));
  background: transparent; color: var(--ink, #f5f0ff);
}
/* Accepter et Refuser ont le même poids visuel (exigence CNIL) */
.cc-btn:hover { border-color: var(--violet-light, #a78bfa); }
.cc-btn:focus-visible { outline: 2px solid var(--violet-light, #a78bfa); outline-offset: 3px; }
@media (max-width: 480px) { .cc-banner { left: .5rem; right: .5rem; bottom: .5rem; width: auto; } }
