/* GENERIERT aus ../../style.css durch build-theme.mjs. */
/* ---------- Cookie-Einwilligung: die Seite macht Platz, das Rad überträgt die Entscheidung ---------- */
:root{--consent-w:min(560px,42vw)}
.consent-open{overflow:hidden}
.consent{
  position:fixed;inset:0 0 0 auto;z-index:90;width:var(--consent-w);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:clamp(28px,4vw,56px);overflow:hidden;color:#F0EDE8;background:var(--dark);
  box-shadow:-40px 0 90px rgba(0,0,0,.3);
  transform:translateX(100%);visibility:hidden;
  transition:transform .85s var(--ease),visibility 0s .85s;
  /* Radgeometrie: --d ist der Reifendurchmesser (Kreis knapp innerhalb der Lauffläche, r≈150px im 1024px-Bild) */
  --d:min(78vw,600px);--wx:calc(50% - var(--d) * .24);--wy:calc(31% - var(--d) * .5);
}
.consent-open .consent{transform:none;visibility:visible;transition:transform .85s var(--ease)}
.consent-bg,.consent-wheel{position:absolute;left:var(--wx);top:var(--wy);width:var(--d);height:var(--d)}
.consent-bg img,.consent-wheel img{
  position:absolute;max-width:none;width:calc(var(--d) * 5.12);height:calc(var(--d) * 3.413);
  left:calc(var(--d) * -2.7);top:calc(var(--d) * -1.95);
}
.consent-bg{
  filter:saturate(.12) brightness(.36) contrast(1.08);
  transform:translate(calc(var(--px,0) * 14px),calc(var(--py,0) * 10px));transition:transform .6s var(--ease);
}
.consent::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(17,18,18,.04) 0%,rgba(17,18,18,.58) 44%,rgba(17,18,18,.97) 70%);
}
.consent-wheel{
  z-index:2;border-radius:50%;overflow:hidden;cursor:grab;touch-action:none;will-change:transform;
  filter:saturate(.3) brightness(.92);
  /* kein Schlagschatten: Chrome komponiert ihn (filter + will-change) sonst über die Knöpfe */
  box-shadow:0 0 0 1px rgba(240,237,232,.1),inset 0 0 0 1px rgba(0,0,0,.4);
}
.consent-wheel.is-dragging{cursor:grabbing}
.consent-wheel::after{
  content:"";position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(circle at 50% 50%,transparent 58%,rgba(0,0,0,.35) 100%);
}
.consent-body{position:relative;z-index:3;display:grid;gap:14px}
.consent-body h2{margin:6px 0 4px;font-size:clamp(1.9rem,2.6vw,2.6rem)}
.consent-text{max-width:42ch;color:#AAA59F;font-size:.9rem}
.consent-row{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:14px 0;border-top:1px solid rgba(240,237,232,.14);
}
.consent-row + .consent-row{border-top-color:rgba(240,237,232,.14)}
.consent-row span{display:grid;gap:2px}
.consent-row b{font-size:.92rem;font-weight:600}
.consent-row small{color:#8D8882;font-size:.72rem}
.consent-lock{
  position:relative;width:46px;height:26px;border-radius:13px;background:rgba(240,237,232,.16);flex:0 0 auto;
}
.consent-lock::after{
  content:"";position:absolute;top:4px;left:24px;width:18px;height:18px;border-radius:50%;background:#8D8882;
}
.switch{
  position:relative;flex:0 0 auto;width:46px;height:26px;padding:0;border:0;border-radius:13px;
  background:rgba(240,237,232,.16);cursor:pointer;transition:background .35s var(--ease);
}
.switch i{
  position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#F0EDE8;
  transition:transform .4s var(--ease);
}
.switch[aria-checked="true"]{background:var(--red)}
.switch[aria-checked="true"] i{transform:translateX(20px)}
.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
.consent .btn{width:100%}
.consent .btn-ghost{border:1px solid rgba(240,237,232,.35);color:#F0EDE8}
.consent .btn-ghost::before{background:rgba(240,237,232,.1)}
.consent .btn-ghost:hover::before{transform:scaleX(1)}
.consent-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;color:#8D8882;font-size:.72rem}
.consent-foot a{color:#F0EDE8;text-decoration:none;border-bottom:1px solid rgba(240,237,232,.3)}
.consent-foot a:hover{border-color:var(--red)}
@media (max-width:900px){
  :root{--consent-w:min(92vw,560px)}
  .consent{padding:24px var(--pad) 28px;--d:min(88vw,420px);--wx:calc(50% - var(--d) * .2);--wy:calc(30% - var(--d) * .5)}
  .consent-body h2{font-size:1.75rem}
  .consent-actions{grid-template-columns:1fr}
}
.no-motion .hdr,.no-motion main,.no-motion .ftr,.no-motion .consent,.no-motion .consent-bg{transition:none}
.consent-fab{
  position:fixed;left:var(--pad);bottom:22px;z-index:70;display:inline-flex;align-items:center;gap:9px;
  padding:9px 14px 9px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(245,243,239,.92);
  backdrop-filter:blur(10px);color:var(--ink);font:600 .72rem/1 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;
  cursor:pointer;transition:border-color .35s var(--ease),opacity .35s var(--ease),transform .35s var(--ease);
}
.consent-fab i{width:8px;height:8px;border-radius:50%;background:var(--red);transition:transform .45s var(--ease)}
.consent-fab:hover{border-color:var(--ink)}
.consent-fab:hover i{transform:rotate(180deg) scale(1.25)}
.consent-open .consent-fab{opacity:0;pointer-events:none;transform:translateX(-12px)}
.consent .btn{font-family:inherit}
.consent .btn-ghost{background:transparent}
.consent:focus{outline:none}
