/* Vecturo Core – Cookie-Banner (Gestaltung „Arbeitstier“, passend zu .v-notice) */
.v-cc{--ink:#0E1116;--paper:#fff;--steel:#4A5058;--text2:#2A2F36;--blue:#2673F8;--blue-d:#1E62DE;--line2:#D9DBD6;--mono:'JetBrains Mono',ui-monospace,monospace;position:fixed;left:clamp(.75rem,2vw,1.5rem);bottom:clamp(.75rem,2vw,1.5rem);z-index:70;width:min(760px,calc(100vw - 1.5rem));max-height:calc(100dvh - 1.5rem);overflow:auto;background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-left:10px solid var(--blue-d);box-shadow:0 18px 40px rgba(14,17,22,.3);padding:1.1rem 1.25rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.9rem 1.5rem;align-items:end;font-family:inherit;font-size:16px;line-height:1.45}
.v-cc[hidden],.v-cc [hidden]{display:none!important}
.v-cc,.v-cc *{box-sizing:border-box}
.v-cc__title{display:block;font-stretch:68%;font-weight:800;text-transform:uppercase;font-size:1.35rem;line-height:1.05}
.v-cc__text{margin:.4rem 0 0;font-size:.88rem;color:var(--text2)}
.v-cc__links{margin:.4rem 0 0;font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--steel)}
.v-cc__links a{color:var(--ink)}
.v-cc__actions{display:flex;flex-direction:column;gap:.5rem;min-width:190px}
/* „Akzeptieren“ und „Ablehnen“ bewusst identisch gestaltet */
.v-cc__btn{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.7rem 1.2rem;background:var(--ink);color:#fff;font-weight:700;font-size:.95rem;text-align:center;transition:background .12s}
.v-cc__btn:hover{background:var(--blue-d)}
.v-cc__more{all:unset;cursor:pointer;align-self:center;font-weight:700;font-size:.88rem;text-decoration:underline;text-underline-offset:3px;padding:.35rem .25rem}
.v-cc__btn:focus-visible,.v-cc__more:focus-visible,.v-cc__switch:focus-visible,.v-cc a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.v-cc__details{grid-column:1/-1;border-top:2px solid var(--ink);padding-top:.8rem;display:flex;flex-direction:column;gap:.7rem}
.v-cc__cat{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--line2)}
.v-cc__cat strong{display:block;font-size:.95rem}
.v-cc__cat span{display:block;font-size:.8rem;color:var(--steel);margin-top:.15rem}
.v-cc__always{flex:none;font-family:var(--mono);font-size:.68rem!important;text-transform:uppercase;letter-spacing:.05em;color:var(--blue-d)!important;margin-top:.2rem!important}
.v-cc__switch{all:unset;box-sizing:border-box;cursor:pointer;flex:none;position:relative;width:52px;height:28px;border:2px solid var(--ink);background:var(--paper);margin-top:.1rem}
.v-cc__switch::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--ink);transition:left .15s}
.v-cc__switch[aria-checked=true]{background:var(--blue-d);border-color:var(--blue-d)}
.v-cc__switch[aria-checked=true]::after{left:27px;background:#fff}
.v-cc__save{align-self:flex-start}
@media (max-width:640px){
  .v-cc{grid-template-columns:1fr;padding:.9rem 1rem;border-left-width:8px}
  .v-cc__title{font-size:1.2rem}
  .v-cc__actions{display:grid;grid-template-columns:1fr 1fr;min-width:0}
  .v-cc__more{grid-column:1/-1;justify-self:center}
  .v-cc__save{align-self:stretch}
}
@media (prefers-reduced-motion:reduce){.v-cc__switch::after{transition:none}}
