/* Einwilligungs-Hinweis im Scheckheft-Look (DomainWache, Entwurf W4; Claude, 2026-10-05).
   „Ablehnen“ und „Erlauben“ teilen dieselbe Klasse und Größe: keine Lenkung.
   Farben kommen aus den --s-*-Tokens von dw-public.css (inkl. Nachtpalette). */
.cc{position:fixed;z-index:2147483000;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));width:min(480px,calc(100vw - 32px));
  font:400 15px/1.55 var(--s-sans,system-ui,sans-serif);color:var(--s-ink,#16191d);pointer-events:none}
.cc[hidden]{display:none}
.cc-card{pointer-events:auto;display:flex;flex-direction:column;gap:14px;padding:24px;background:var(--s-surface,#fffcf6);border:1.5px solid var(--s-ink,#16191d);border-radius:18px;
  box-shadow:0 24px 48px -16px rgb(22 25 29/.4);opacity:0;transform:translateY(32px);transition:opacity .4s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.cc.cc-in .cc-card{opacity:1;transform:none}
.cc.cc-out .cc-card{opacity:0;transform:translateY(24px);transition:opacity .25s ease,transform .3s ease}
.cc-title{margin:0;font:700 22px/1.2 var(--s-display,inherit);letter-spacing:-.02em;color:var(--s-ink,#16191d)}
.cc-text{margin:0;color:var(--s-ink-2,#3a3f45)}
.cc-panel{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--s-line,#dfd7c6)}
.cc-panel[hidden]{display:none}
.cc-row{display:flex;justify-content:space-between;align-items:center;gap:16px}
label.cc-row{cursor:pointer}
.cc-row-copy b{display:block;font-weight:700;font-size:16px;line-height:1.3}
.cc-row-copy small{display:block;font-size:14px;line-height:1.4;color:var(--s-ink-2,#3a3f45)}
.cc-always,.cc-state{font-size:14px;font-weight:600;color:var(--s-ink-2,#3a3f45);white-space:nowrap}
.cc-toggle{display:inline-flex;align-items:center;gap:10px;flex:none}
.cc-switch{appearance:none;-webkit-appearance:none;position:relative;flex:none;width:56px;height:32px;margin:0;border:2px solid var(--s-ink,#16191d);border-radius:999px;background:var(--s-surface,#fffcf6);cursor:pointer;transition:background .2s}
.cc-switch::after{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:var(--s-ink,#16191d);transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.cc-switch:checked{background:var(--s-signal,#f5c431)}
.cc-switch:checked::after{transform:translateX(24px);background:#16191d}
.cc-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cc-btn{appearance:none;min-height:52px;padding:0 16px;border:2px solid var(--s-ink,#16191d);border-radius:10px;background:var(--s-surface,#fffcf6);color:var(--s-ink,#16191d);
  font:600 17px/1.1 var(--s-sans,inherit);cursor:pointer;transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s cubic-bezier(.2,.7,.2,1)}
.cc-btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--s-ink,#16191d)}
.cc-btn:active{transform:none;box-shadow:none}
.cc-btn-save{min-height:48px;font-size:16px}
.cc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px}
.cc-link{appearance:none;display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:none;color:var(--s-ink,#16191d);font:inherit;font-size:15px;
  text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;cursor:pointer}
.cc-link:hover{text-decoration-thickness:2.5px}
.cc-btn:focus-visible,.cc-link:focus-visible,.cc-switch:focus-visible{outline:none;box-shadow:0 0 0 3px var(--s-signal,#f5c431),0 0 0 5px var(--s-ink,#16191d);border-radius:10px}
.cc-switch:focus-visible{border-radius:999px}
@media (max-width:560px){
  .cc{left:0;right:0;bottom:0;width:100%}
  .cc-card{gap:12px;padding:22px 20px calc(24px + env(safe-area-inset-bottom));border-width:1.5px 0 0;border-radius:20px 20px 0 0;transform:translateY(100%)}
  .cc.cc-out .cc-card{transform:translateY(100%)}
  .cc-title{font-size:21px}
  .cc-btn{min-height:50px}
}
@media (prefers-reduced-motion:reduce){.cc-card,.cc-btn,.cc-switch,.cc-switch::after{transition:opacity .15s ease!important;transform:none!important}.cc-switch:checked::after{transform:translateX(24px)!important}}
@media print{.cc{display:none!important}}
