/* CONNSKILL Consent-Leiste. Namensraum .csk- damit nichts im Projekt kollidiert.
   Farben kommen aus dem Projekt via CSS-Variablen, die Fallbacks sind neutral. */

.csk-leiste{position:fixed;left:0;right:0;bottom:0;z-index:9000;background:var(--csk-flaeche,#fff);border-top:1px solid var(--csk-linie,#e2e2e2);padding:14px 18px;font-family:inherit;box-shadow:0 -2px 16px rgb(0 0 0 / .06)}
.csk-leiste[hidden]{display:none}
.csk-innen{max-width:var(--csk-breite,72rem);margin:0 auto;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.csk-text{flex:1;min-width:260px;font-size:.9375rem;line-height:1.5;color:var(--csk-text,#3a3a3a)}
.csk-mehr{display:inline-block;margin-top:4px;font-size:.8125rem;color:var(--csk-gedaempft,#6b6b6b);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;font-family:inherit}
.csk-knoepfe{display:flex;gap:10px;flex:none}
.csk-btn{border:0;border-radius:var(--csk-radius,10px);font-family:inherit;font-size:.9375rem;font-weight:600;padding:12px 20px;cursor:pointer;min-height:48px;transition:background-color .15s,border-color .15s}
.csk-btn-ja{background:var(--csk-aktion,#2f5d50);color:var(--csk-aktion-schrift,#fff)}
.csk-btn-ja:hover{background:var(--csk-aktion-hover,#254a40)}
.csk-btn-nein{background:var(--csk-flaeche,#fff);color:var(--csk-schrift,#1c1c1c);border:1px solid var(--csk-linie,#e2e2e2)}
.csk-btn-nein:hover{border-color:var(--csk-schrift,#1c1c1c)}

.csk-kategorien{max-width:var(--csk-breite,72rem);margin:14px auto 0;border-top:1px solid var(--csk-linie,#e2e2e2);padding-top:12px}
.csk-kategorien[hidden]{display:none}
.csk-kat{display:flex;gap:14px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--csk-linie,#e2e2e2)}
.csk-kat:last-child{border-bottom:0}
.csk-kat-text{flex:1;min-width:0}
.csk-kat-name{font-size:.9375rem;font-weight:600;color:var(--csk-schrift,#1c1c1c)}
.csk-kat-bes{font-size:.8125rem;line-height:1.45;color:var(--csk-gedaempft,#6b6b6b);margin-top:2px}
.csk-schalter{flex:none;position:relative;width:46px;height:26px;margin-top:2px}
.csk-schalter input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.csk-schalter input:disabled{cursor:not-allowed}
.csk-spur{position:absolute;inset:0;border-radius:999px;background:var(--csk-linie,#e2e2e2);transition:background-color .15s;pointer-events:none}
.csk-spur::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgb(0 0 0 / .2)}
.csk-schalter input:checked + .csk-spur{background:var(--csk-aktion,#2f5d50)}
.csk-schalter input:checked + .csk-spur::after{transform:translateX(20px)}
.csk-schalter input:disabled + .csk-spur{opacity:.45}
.csk-schalter input:focus-visible + .csk-spur{outline:2px solid var(--csk-aktion,#2f5d50);outline-offset:3px}

.csk-zahnrad{position:fixed;right:18px;bottom:18px;z-index:8000;width:44px;height:44px;border-radius:50%;border:1px solid var(--csk-linie,#e2e2e2);background:var(--csk-flaeche,#fff);cursor:pointer;font-size:19px;line-height:1;color:var(--csk-gedaempft,#6b6b6b);box-shadow:0 2px 10px rgb(0 0 0 / .12)}
.csk-zahnrad[hidden]{display:none}

@media (max-width:640px){
  .csk-leiste{padding:12px 14px}
  .csk-innen{gap:12px}
  .csk-text{min-width:100%;font-size:.875rem}
  .csk-knoepfe{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .csk-btn{padding:12px 8px;font-size:.875rem}
}
@media (prefers-reduced-motion:reduce){
  .csk-spur,.csk-spur::after,.csk-btn{transition:none}
}
