.consent-link{display:inline;padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.consent-backdrop{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(5,7,5,.78)}
.consent-backdrop[hidden]{display:none}
.consent-dialog{position:relative;width:min(620px,100%);max-height:min(760px,calc(100vh - 32px));overflow:auto;padding:34px;border:2px solid #111310;border-radius:18px;background:#f6f7f3;color:#111310}
.consent-brand{display:flex;align-items:center;gap:12px;margin:0 54px 24px 0;font-size:.75rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.consent-brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#70e348}
.consent-brand-mark img{width:32px;height:32px;object-fit:contain;filter:brightness(0)}
.consent-close{position:absolute;top:24px;right:24px;width:42px;height:42px;border:1px solid #111310;border-radius:10px;background:#e5e8e1;color:#111310;font-size:1.5rem;line-height:1;cursor:pointer}
.consent-dialog h2{margin:0 0 16px;color:#111310;font:800 clamp(1.75rem,5vw,2.5rem)/1.05 Arial,Helvetica,sans-serif;letter-spacing:-.045em}
.consent-dialog>p{margin:0 0 24px;color:#424840;font-size:1rem;line-height:1.55}
.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.consent-btn{min-height:54px;padding:0 20px;border:1px solid #111310;border-radius:10px;background:transparent;color:#111310;font:800 1rem Arial,Helvetica,sans-serif;cursor:pointer}
.consent-btn.primary{border-color:#70e348;background:#70e348}.consent-btn.secondary{grid-column:1/-1}
.consent-btn:hover{background:#e5e8e1}.consent-btn.primary:hover{background:#f4f5ef}
.consent-details{margin:22px 0 0;padding-top:20px;border-top:1px solid #ccd1c8}
.consent-details[hidden]{display:none}
.consent-option{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 18px;padding:16px 0;border-bottom:1px solid #d9ddd5;cursor:pointer}.consent-option>div{display:grid;gap:6px}
.consent-option strong{font-size:1rem}.consent-option small{color:#5d655b;line-height:1.4}.consent-save{width:100%;margin-top:18px}
.consent-switch{width:48px;height:26px;accent-color:#70e348}
.consent-legal{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:.82rem;font-weight:700}
.consent-legal a{text-decoration:underline;text-underline-offset:3px}
body.consent-locked{overflow:hidden}
@media(max-width:560px){.consent-backdrop{align-items:end;padding:10px}.consent-dialog{max-height:calc(100vh - 20px);padding:24px 20px;border-radius:14px}.consent-brand{margin-bottom:18px}.consent-close{top:18px;right:18px}.consent-btn{min-height:52px}.consent-actions{grid-template-columns:1fr}.consent-btn.secondary{grid-column:auto}}
@supports(padding:max(0px)){.consent-backdrop{padding-top:max(20px,env(safe-area-inset-top));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(20px,env(safe-area-inset-bottom));padding-left:max(20px,env(safe-area-inset-left))}}
@media(max-width:560px){.consent-backdrop{padding-top:max(10px,env(safe-area-inset-top));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:max(10px,env(safe-area-inset-bottom));padding-left:max(10px,env(safe-area-inset-left))}.consent-dialog{max-height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(20px,env(safe-area-inset-bottom)));-webkit-overflow-scrolling:touch}}
/* Im hellen Datenschutzfenster den normalen Mauszeiger verwenden. */
@media(pointer:fine){.consent-backdrop,.consent-dialog{cursor:default}.consent-dialog button,.consent-dialog a,.consent-dialog label,.consent-dialog input{cursor:pointer}}
.consent-actions{grid-template-columns:1fr}
html,body,.consent-backdrop,.consent-dialog{cursor:default!important}
a,button,summary,label[for],select,input[type="checkbox"],input[type="radio"],input[type="range"],[role="button"]{cursor:pointer!important}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,[contenteditable="true"]{cursor:text!important}
