/* Cookie-Hinweis (Datenschutzeinstellungen), Aufbau und Texte wie auf der bisherigen Website */
html.alc-open{overflow:hidden}
.alc{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(0,0,0,.55);font:14px/1.5 Lato,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#3a3a3a}
.alc[hidden]{display:none}
.alc *{box-sizing:border-box}
.alc-box{position:relative;width:100%;max-width:436px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:auto;background:#fff;border-radius:12px;padding:20px 20px 16px;box-shadow:0 12px 40px rgba(0,0,0,.35)}
.alc-box.alc-wide{max-width:600px}
.alc-title{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 14px;font-size:20px;font-weight:400;color:#333}
.alc-title svg{width:30px;height:30px;flex:none}
.alc p{margin:0 0 10px;font-size:12px;line-height:1.55;color:#444}
.alc a{color:#28a745}
.alc-opts{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:14px 0 16px}
.alc-opts label{display:flex;align-items:center;gap:8px;font-size:12px;color:#555;cursor:pointer}
.alc-opts input{width:16px;height:16px;accent-color:#d23f3a;margin:0}
.alc-btn{display:block;width:100%;margin:0 0 10px;padding:12px 14px;border:0;border-radius:4px;font:inherit;font-size:14px;text-align:center;cursor:pointer;background:#efefef;color:#555;transition:filter .15s}
.alc-btn:hover{filter:brightness(.95)}
.alc-btn:focus-visible,.alc-link:focus-visible,.alc a:focus-visible{outline:2px solid #28a745;outline-offset:2px}
.alc-btn.alc-yes{background:#28a745;color:#fff}
.alc-btn.alc-dark{background:#000;color:#fff}
.alc-foot{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 6px;margin-top:6px;font-size:10px;color:#777}
.alc-foot a,.alc-link{color:#777;text-decoration:underline;font-size:10px}
.alc-link{background:none;border:0;padding:0;font-family:inherit;cursor:pointer}
.alc-row{display:flex;gap:8px;align-items:center;margin:12px 0}
.alc-row .alc-btn{width:auto;margin:0;flex:0 1 auto;padding:11px 14px;font-size:13px}
.alc-row .alc-back{margin-left:auto}
.alc-cat{background:#f2f2f2;border-radius:6px;padding:12px;margin:0 0 10px}
.alc-cat-h{display:flex;align-items:center;justify-content:space-between;gap:10px}
.alc-cat h3{margin:0;font-size:15px;font-weight:400;color:#333}
.alc-cat p{margin:8px 0}
.alc-cat .alc-more{display:block;margin:6px auto 0;font-size:11px;color:#28a745;text-decoration:underline;background:none;border:0;cursor:pointer;font-family:inherit}
.alc-info{margin:8px 0 0;padding:8px 10px;background:#fff;border-radius:4px;font-size:11px;color:#555}
.alc-info[hidden]{display:none}
.alc-info dt{font-weight:700;margin-top:6px}
.alc-info dt:first-child{margin-top:0}
.alc-info dd{margin:0}
.alc-sw{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#555;cursor:pointer}
.alc-sw input{position:absolute;opacity:0;width:0;height:0}
.alc-sw i{position:relative;width:38px;height:22px;border-radius:11px;background:#b8b8b8;transition:background .15s;flex:none}
.alc-sw i::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}
.alc-sw input:checked+i{background:#28a745}
.alc-sw input:checked+i::after{transform:translateX(16px)}
.alc-sw input:disabled+i{opacity:.6}
.alc-sw input:focus-visible+i{outline:2px solid #28a745;outline-offset:2px}
/* Platzhalter für Videos, bis "Externe Medien" erlaubt ist */
.alc-ph{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px;text-align:center;background:#1c1c1c;color:#eee;font:13px/1.45 Lato,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.alc-ph p{margin:0;max-width:34em}
.alc-ph a{color:#9fdcae}
.alc-ph .alc-ph-b{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.alc-ph button{padding:9px 14px;border:0;border-radius:4px;font:inherit;cursor:pointer;background:#28a745;color:#fff}
.alc-ph button+button{background:#444}
@media (max-width:480px){.alc{padding:8px}.alc-box{padding:16px 14px 12px}.alc-row{flex-wrap:wrap}.alc-row .alc-back{margin-left:0}}
@media (prefers-reduced-motion:reduce){.alc-sw i,.alc-sw i::after{transition:none}}
