/* Masterphase O1 (Consent Readiness) -- Cookie-Consent-Banner. */
.consent-banner {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 200;
  padding: var(--space-4); display: flex; justify-content: center;
  background: linear-gradient(to top, rgba(5,7,13,.85), rgba(5,7,13,0) 100%);
}
.consent-banner[hidden] { display: none; }
.consent-banner-inner {
  width: 100%; background: var(--surface); border: 1px solid var(--border-strong);
  border-radius: var(--radius-md); padding: var(--space-6); box-shadow: 0 20px 60px -20px rgba(0,0,0,.6);
}
.consent-text { margin: 0 0 var(--space-4); font-size: var(--text-sm); color: var(--text-dim); line-height: var(--leading-snug); }
.consent-settings { display: flex; flex-direction: column; gap: var(--space-2); margin: 0 0 var(--space-4); padding-top: var(--space-3); border-top: 1px solid var(--border); }
.consent-settings[hidden] { display: none; }
.consent-row { display: flex; align-items: center; gap: var(--space-2); font-size: var(--text-sm); color: var(--text); }
.consent-actions { display: flex; gap: var(--space-2); flex-wrap: wrap; justify-content: flex-end; }

/* Mobile (Auftrag "Cookie-Banner auf Mobile entschaerfen", Go-Live-Audit 02.09.2026):
   Auf kleinen Viewports (<=900px) nahm der Banner bisher fast den kompletten
   sichtbaren Bereich ein und verdeckte Unterzeile + beide Haupt-CTAs im Hero.
   max-height+overflow als Sicherheitsnetz gegen unbegrenztes Wachstum, engere
   Abstaende und ein 2-spaltiges Button-Raster halbieren die Buttonhoehe (4
   Buttons auf 2 Zeilen statt 4). Text/Funktion bleiben unveraendert. */
@media (max-width: 900px) {
  .consent-banner { padding: var(--space-2); }
  .consent-banner-inner { max-height: 70vh; overflow-y: auto; padding: var(--space-4); }
  .consent-text { font-size: var(--text-xs); margin-bottom: var(--space-3); }
  .consent-actions { display: grid; grid-template-columns: 1fr 1fr; justify-content: stretch; }
  .consent-actions .btn { width: 100%; }
}
