/*! IZ Cookie-Einwilligung 1.0 */
.izc,.izc-ph{--izc-accent:#63AAE3;--izc-accent-ink:#06121A;--izc-bg:#0B1620;--izc-fg:#E8EEF3;--izc-muted:#A9B7C3;--izc-line:rgba(255,255,255,.14);--izc-field:rgba(255,255,255,.06);--izc-radius:14px;font:15px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--izc-fg);box-sizing:border-box}
.izc.izc-light,.izc-ph.izc-light{--izc-bg:#FFFFFF;--izc-fg:#14212B;--izc-muted:#51606C;--izc-line:rgba(0,0,0,.12);--izc-field:rgba(0,0,0,.04)}
.izc *,.izc *::before,.izc *::after,.izc-ph *{box-sizing:border-box}
.izc[hidden],.izc [hidden]{display:none!important}

/* Container */
.izc{position:fixed;z-index:2147483000;inset:auto 0 0 0;display:flex;justify-content:flex-end;align-items:flex-end;padding:16px;pointer-events:none}
.izc:focus{outline:none}
.izc-panel{pointer-events:auto;background:var(--izc-bg);color:var(--izc-fg);border:1px solid var(--izc-line);border-radius:var(--izc-radius);box-shadow:0 18px 50px rgba(0,0,0,.35);padding:22px 22px 16px;width:100%;max-width:440px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;transform:translateY(12px);opacity:0;transition:transform .25s ease,opacity .25s ease}
.izc.is-open .izc-panel{transform:none;opacity:1}
.izc.is-settings .izc-panel{max-width:560px}

/* Leiste unten */
.izc-bar{padding:0}
.izc-bar .izc-panel{max-width:none;border-radius:0;border-width:1px 0 0;display:grid;grid-template-columns:1fr auto;column-gap:28px;align-items:center;padding:18px max(20px,4vw)}
.izc-bar .izc-title,.izc-bar .izc-text,.izc-bar .izc-settings,.izc-bar .izc-links{grid-column:1}
.izc-bar .izc-btns{grid-column:2;grid-row:1 / span 4;flex-direction:column;min-width:220px;margin:0}
.izc-bar .izc-btns .izc-btn{flex:0 0 auto}
.izc-bar.is-settings .izc-panel{display:block;max-width:none}
.izc-bar.is-settings .izc-btns .izc-btn{flex:1 1 160px}
.izc-bar.is-settings .izc-btns{flex-direction:row;margin-top:16px}

/* Texte */
.izc-title{font:inherit;font-size:18px;font-weight:700;line-height:1.3;margin:0 0 8px;color:var(--izc-fg);letter-spacing:0;text-transform:none}
.izc-text{margin:0 0 14px;color:var(--izc-muted);font-size:14px}
.izc-links{margin:12px 0 0;display:flex;gap:16px;font-size:13px}
.izc a,.izc-ph a{color:var(--izc-accent);text-decoration:underline;text-underline-offset:2px}
.izc a:hover,.izc-ph a:hover{text-decoration-thickness:2px}

/* Buttons: Akzeptieren und Ablehnen sehen gleich aus (keine Lenkung) */
.izc-btns,.izc-ph-btns{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 0}
.izc-btn{font:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;border-radius:10px;padding:12px 16px;min-height:44px;border:1px solid var(--izc-line);background:var(--izc-field);color:var(--izc-fg);text-transform:none;letter-spacing:0;box-shadow:none;flex:1 1 160px}
.izc-btn--primary{background:var(--izc-accent)!important;color:var(--izc-accent-ink)!important;border-color:var(--izc-accent)!important}
.izc-btn--primary:hover{filter:brightness(1.08)}
.izc-btn--link{flex:1 1 100%;background:transparent!important;border-color:transparent;color:var(--izc-fg)!important;text-decoration:underline;text-underline-offset:3px;font-weight:500;min-height:40px;padding:8px}
.izc-btn:focus-visible,.izc a:focus-visible,.izc summary:focus-visible,.izc-ph .izc-btn:focus-visible{outline:2px solid var(--izc-accent);outline-offset:2px}

/* Kategorien */
.izc-settings{margin:4px 0 14px;display:grid;gap:10px}
.izc-cat{border:1px solid var(--izc-line);border-radius:10px;padding:12px 14px;background:var(--izc-field)}
.izc-cat-head{display:flex;align-items:center}
.izc-cat-desc{margin:6px 0 0;font-size:13px;color:var(--izc-muted)}
.izc-cat-label{font-weight:600}
.izc-cat-label em{font-style:normal;font-weight:400;color:var(--izc-muted);font-size:13px}
.izc details{margin-top:8px;font-size:13px}
.izc summary{cursor:pointer;color:var(--izc-accent);width:max-content}
.izc-cookies{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}
.izc-cookies th,.izc-cookies td{text-align:left;padding:6px 6px;border-bottom:1px solid var(--izc-line);vertical-align:top;color:var(--izc-fg);background:none}
.izc-cookies th{color:var(--izc-muted);font-weight:600}

/* Schalter */
.izc-switch{display:flex;align-items:center;gap:12px;cursor:pointer;margin:0;font:inherit;color:inherit}
.izc-switch input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.izc-slider{position:relative;flex:0 0 auto;width:42px;height:24px;border-radius:24px;background:var(--izc-line);transition:background .2s}
.izc-slider::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.izc-switch input:checked+.izc-slider{background:var(--izc-accent)}
.izc-switch input:checked+.izc-slider::after{transform:translateX(18px)}
.izc-switch input:disabled+.izc-slider{opacity:.6}
.izc-switch input:disabled~.izc-cat-label{cursor:default}
.izc-switch input:focus-visible+.izc-slider{outline:2px solid var(--izc-accent);outline-offset:2px}

/* Platzhalter für YouTube, Vimeo, Maps */
.izc-ph{display:flex;align-items:center;justify-content:center;width:100%;min-height:220px;background:var(--izc-bg);border:1px solid var(--izc-line);border-radius:12px;padding:20px;text-align:center}
.izc-ph-in{max-width:460px}
.izc-ph p{margin:0 0 10px;font-size:14px;color:var(--izc-muted)}
.izc-ph strong{color:var(--izc-fg)}
.izc-ph-btns{justify-content:center;margin-top:14px}

/* Mobil */
@media (max-width:640px){
  .izc{padding:0}
  .izc-panel,.izc.is-settings .izc-panel{max-width:none;border-radius:16px 16px 0 0;border-width:1px 0 0;padding:18px 16px calc(14px + env(safe-area-inset-bottom))}
  .izc-bar .izc-panel{display:block}
  .izc-bar .izc-btns,.izc-bar.is-settings .izc-btns{flex-direction:row;min-width:0;margin-top:4px}
  .izc-btn,.izc-bar .izc-btns .izc-btn{flex:1 1 130px}
  .izc-title{font-size:17px}
  .izc-text{font-size:13.5px}
}
@media (prefers-reduced-motion:reduce){
  .izc-panel,.izc-slider,.izc-slider::after{transition:none}
}
@media print{.izc{display:none!important}}
