/* consent.css — Panzer IT: Cookie-/Consent-Banner + Platzhalter für externe Inhalte.
   Setzt auf base.css-Tokens auf. */

/* ===== Banner ===== */
.consent-banner{
  position:fixed; left:0; right:0; bottom:0; z-index:400;
  padding:var(--sp-3);
  background:rgba(20,22,25,.92);
  border-top:1px solid var(--c-copper);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  transform:translateY(110%); transition:transform .4s var(--ease);
  box-shadow:0 -12px 40px rgba(0,0,0,.5);
}
.consent-banner.is-open{ transform:translateY(0); }
.consent-banner__inner{
  max-width:var(--maxw); margin-inline:auto;
  display:flex; align-items:center; gap:var(--sp-4); flex-wrap:wrap;
}
.consent-banner__text{ flex:1 1 340px; }
.consent-banner__text strong{
  font-family:var(--font-display); color:var(--c-text); display:block; margin-bottom:.25rem;
}
.consent-banner__text p{ color:var(--c-muted); font-size:.9rem; line-height:1.6; margin:0; }
.consent-banner__text a{ color:var(--c-copper); }
.consent-banner__actions{
  display:flex; gap:var(--sp-2); flex:0 0 auto; flex-wrap:wrap;
}
.consent-banner__actions .btn{ white-space:nowrap; }

@media (max-width:640px){
  .consent-banner__actions{ width:100%; }
  .consent-banner__actions .btn{ flex:1 1 auto; justify-content:center; }
}

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

/* ===== Platzhalter für externe Einbettungen (Maps etc.) ===== */
.consent-embed{ position:relative; min-height:320px; }
.consent-embed iframe{ display:block; width:100%; min-height:320px; border:0; }
.consent-embed__placeholder{
  position:absolute; inset:0; z-index:1;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:.8rem; text-align:center; padding:var(--sp-4);
  background:
    radial-gradient(circle at 30% 20%, rgba(184,115,51,.14), transparent 60%),
    var(--c-panel);
  border:1px solid var(--c-line); border-radius:var(--radius);
}
.consent-embed.is-loaded .consent-embed__placeholder{ display:none; }
.consent-embed__placeholder p{ color:var(--c-muted); font-size:.9rem; max-width:42ch; margin:0; }
.consent-embed__placeholder a{ color:var(--c-copper); }
.consent-embed__icon{ color:var(--c-copper); }
