/* Einwilligungsbanner. Erscheint nur, wenn in consent.js ein Dienst eingetragen ist. */

.cc-backdrop{
  position:fixed;inset:0;z-index:2000;
  background:rgba(6,6,7,.72);
  display:flex;align-items:flex-end;justify-content:center;
  padding:clamp(12px,3vw,32px);
}
@media(min-width:760px){.cc-backdrop{align-items:center}}

.cc-box{
  width:100%;max-width:720px;max-height:88vh;overflow-y:auto;
  background:var(--ink-2,#0E0E10);
  border:1px solid rgba(242,238,230,.16);
  color:var(--paper,#F2EEE6);
  font-family:var(--sans,"Inter",system-ui,sans-serif);
  font-size:15px;line-height:1.62;
  padding:clamp(22px,3.4vw,34px);
  box-shadow:0 30px 80px rgba(0,0,0,.6);
}
.cc-box h2{
  font-family:var(--serif,Georgia,serif);font-weight:400;
  font-size:clamp(21px,3vw,26px);line-height:1.2;margin:0 0 12px;
  letter-spacing:-.01em;color:var(--paper,#F2EEE6);
}
.cc-box p{margin:0 0 14px;color:var(--dim,#B9B2A6)}
.cc-box a{color:var(--paper,#F2EEE6)}

/* Buttons: Ablehnen und Akzeptieren sind bewusst identisch gestaltet */
.cc-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.cc-btn{
  flex:1 1 200px;
  font-family:inherit;font-size:13px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;
  padding:14px 18px;border-radius:2px;cursor:pointer;
  background:var(--accent,#C2452D);color:#fff;border:1px solid var(--accent,#C2452D);
  transition:filter .25s;
}
.cc-btn:hover{filter:brightness(1.12)}
.cc-btn:focus-visible{outline:2px solid var(--paper,#F2EEE6);outline-offset:2px}

.cc-links{
  display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;
  font-size:13px;color:var(--muted,#7E786D);
}
.cc-links a{color:var(--muted,#7E786D);text-decoration:underline}
.cc-links a:hover{color:var(--paper,#F2EEE6)}
.cc-linkbtn{
  background:none;border:0;padding:0;cursor:pointer;
  font:inherit;color:var(--muted,#7E786D);text-decoration:underline;
}
.cc-linkbtn:hover{color:var(--paper,#F2EEE6)}

/* Zweite Ebene */
.cc-cats{margin:22px 0 4px;border-top:1px solid rgba(242,238,230,.11)}
.cc-cat{
  display:flex;gap:14px;align-items:flex-start;
  padding:18px 0;border-bottom:1px solid rgba(242,238,230,.11);
}
.cc-cat input{
  width:18px;height:18px;margin-top:3px;flex:none;
  accent-color:var(--accent,#C2452D);cursor:pointer;
}
.cc-cat input:disabled{cursor:not-allowed;opacity:.55}
.cc-cat b{display:block;font-weight:600;font-size:14.5px;color:var(--paper,#F2EEE6);margin-bottom:3px}
.cc-cat span{display:block;font-size:13.5px;color:var(--muted,#7E786D);line-height:1.55}

/* Fussleisten-Schalter zum Widerruf */
.cc-reopen{
  background:none;border:0;padding:0;cursor:pointer;
  font-family:inherit;font-size:13px;letter-spacing:.05em;
  color:var(--muted,#7E786D);transition:color .3s;
}
.cc-reopen:hover{color:var(--paper,#F2EEE6)}
