/**
 * cookie-consent.css – Banner + Einstellungen-Dialog für die Cookie-/
 * Speicher-Einwilligung. Nutzt bewusst dieselben Bausteine wie das
 * Barrierefreiheits-Menü (.a11y-group / .a11y-option / .a11y-toggle aus
 * a11y.css), damit beide Flächen sich konsistent anfühlen.
 */

/* ---------- Banner (unten fixiert) ------------------------------------- */
.cookie-banner{
  position: fixed; left:0; right:0; bottom:0; z-index: 920;
  background: var(--c-paper, #F7F5EE);
  border-top: 1px solid var(--c-line, #DCD3C0);
  box-shadow: 0 -4px 24px rgba(28, 25, 20, 0.12);
  padding: var(--sp-5, 1.5rem);
  padding-bottom: max(var(--sp-5, 1.5rem), env(safe-area-inset-bottom));
}
.cookie-banner[hidden]{ display:none !important; }
.cookie-banner__inner{
  max-width: 1080px; margin-inline:auto;
  display:flex; flex-wrap:wrap; align-items:center; gap: var(--sp-5, 1.5rem);
}
.cookie-banner__text{ flex:1 1 360px; }
.cookie-banner__text h2{ font-size: 1.05rem; margin-bottom: var(--sp-1, 0.25rem); font-family: var(--f-body); font-weight:600; color: var(--c-ink, #262420); }
.cookie-banner__text p{ font-size: .88rem; line-height: 1.5; color: var(--c-ink-soft, #5A544A); margin:0; }
.cookie-banner__text a{ color: var(--c-olive, #3B4430); text-decoration: underline; }
.cookie-banner__actions{ display:flex; flex-wrap:wrap; gap: var(--sp-3, 0.75rem); flex-shrink:0; }
@media (max-width: 640px){
  .cookie-banner{ padding: var(--sp-4, 1rem); padding-bottom: max(var(--sp-4, 1rem), env(safe-area-inset-bottom)); }
  .cookie-banner__inner{ flex-direction:column; align-items:stretch; gap: var(--sp-4, 1rem); }
  .cookie-banner__actions{ flex-direction:column; }
  .cookie-banner__actions .btn{ width:100%; justify-content:center; }
}

/* ---------- Einstellungen-Dialog (Modal) -------------------------------- */
.cookie-modal{
  position: fixed; inset:0; z-index: 1050;
  background: rgba(20,20,14,.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  display:flex; align-items:center; justify-content:center;
  padding: var(--sp-5, 1.5rem);
}
.cookie-modal[hidden]{ display:none !important; }
.cookie-modal__panel{
  position: relative;
  width: min(540px, 100%);
  max-height: min(85vh, 640px);
  overflow-y: auto;
  background: var(--c-paper, #F7F5EE);
  border: 1px solid var(--c-line, #DCD3C0);
  border-radius: var(--radius-l, 14px);
  box-shadow: var(--shadow-lift, 0 12px 36px rgba(0,0,0,0.18));
  padding: var(--sp-6, 2rem);
}
.cookie-modal__close{
  position:absolute; top: var(--sp-3, 0.75rem); right: var(--sp-3, 0.75rem);
  width:36px; height:36px; border-radius:50%;
  border: 1.5px solid var(--c-line, #DCD3C0); background: transparent; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  color: var(--c-ink, #262420);
  transition: background var(--motion-fast, 160ms);
}
.cookie-modal__close:hover{
  background: rgba(0,0,0,0.05);
}
.cookie-modal__panel h2{ font-size:1.2rem; margin-bottom: var(--sp-2, 0.5rem); padding-right: var(--sp-6, 2rem); color: var(--c-ink, #262420); }
.cookie-modal__panel > p{ font-size:.88rem; line-height: 1.5; color: var(--c-ink-soft, #5A544A); margin-bottom: var(--sp-4, 1rem); }
.cookie-option-text{ padding-right: var(--sp-4, 1rem); }
.cookie-option-text span{ font-weight:600; color: var(--c-ink, #262420); }
.cookie-option-text small{ display:block; font-weight:400; color: var(--c-ink-soft, #5A544A); margin-top:2px; font-size:.78rem; line-height: 1.4; }
.a11y-toggle[disabled]{ opacity:.6; cursor:not-allowed; }
.cookie-modal__actions{ display:flex; flex-wrap:wrap; gap: var(--sp-3, 0.75rem); margin-top: var(--sp-5, 1.5rem); }
.cookie-modal__actions .btn{ flex:1 1 auto; justify-content:center; }

/* ---------- Footer-Link "Cookie-Einstellungen" (sieht aus wie <a>) ------ */
.footer-linklike{
  background:none; border:none; padding:0; margin:0; cursor:pointer;
  font: inherit; color: inherit; text-decoration:none;
}
.site-footer .footer-linklike{ color:#D9D6C7; }
.site-footer .footer-linklike:hover{ color:#fff; text-decoration:underline; }
