.consent-banner[hidden]{display:none!important}
.consent-banner{position:fixed;bottom:20px;left:20px;z-index:50;width:min(430px,calc(100vw - 40px));box-sizing:border-box;padding:20px 22px;background:#f7efe3;color:#332a2e;border:1px solid #dacdbf;border-radius:16px;box-shadow:0 8px 45px #0003;font:13px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.consent-banner h2{font:600 16px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0 0 8px}
.consent-banner p{margin:0 0 9px}.consent-banner .consent-limited{font-size:11px;color:#645a5c}
.consent-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.consent-actions button{flex:1;min-height:42px;padding:9px 12px;border:1px solid #8d7770;border-radius:9px;background:#f7efe3;color:#332a2e;font:600 12px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.consent-actions button:hover{background:#ecdfd3}.consent-actions button:active{background:#e2cfc0}
.consent-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:11px}
.consent-links button{background:none;border:0;padding:2px 0;color:#5e5050;text-decoration:underline;text-underline-offset:3px;font:12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.consent-banner button:focus-visible,.consent-dialog button:focus-visible,.consent-dialog input:focus-visible{outline:3px solid #946449;outline-offset:3px}
dialog.consent-dialog{box-sizing:border-box;max-width:540px;width:calc(100% - 32px);max-height:85dvh;margin:auto;padding:26px;border-radius:18px;border:1px solid #dacdbf;background:#f7efe3;color:#332a2e;overflow:auto;font:13px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.consent-dialog::backdrop{background:#17121bcc}
.consent-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.consent-dialog-head h2{font:600 22px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0}
.consent-dialog-head button{border:1px solid #c4b4a7;background:none;color:#332a2e;width:36px;height:36px;flex-shrink:0;border-radius:50%;font-size:23px;cursor:pointer}
.consent-dialog p{margin:12px 0;color:#645a5c;font:13px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.consent-option{padding:16px 0;border-bottom:1px solid #d9cfc3}
.consent-option p{margin:7px 0 0;font-size:12px}
.consent-option-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;font-weight:600}
.consent-option-heading h3{margin:0;font:600 14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.consent-option-heading>span[data-consent-text="always"]{font-size:11px;font-weight:400}
label.consent-option-heading{cursor:pointer;font-size:14px}
.consent-option input{appearance:none;-webkit-appearance:none;width:42px;height:24px;border:1px solid #998a83;border-radius:24px;background:#c8beb5;position:relative;margin:0;flex-shrink:0;cursor:pointer;transition:background .15s}
.consent-option input:before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}
.consent-option input:checked{background:#6a4b3c;border-color:#6a4b3c}.consent-option input:checked:before{transform:translateX(18px)}
.consent-dialog .consent-actions .consent-save{flex-basis:100%;background:#332a2e;color:#fff;border-color:#332a2e}.consent-dialog .consent-actions .consent-save:hover{background:#534249}
.consent-status{position:fixed;z-index:60;bottom:20px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 48px);width:max-content;background:#f7efe3;color:#332a2e;padding:12px 18px;border-radius:10px;box-shadow:0 4px 25px #0003;font:12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;pointer-events:none}
.consent-status:empty{display:none}
@media(max-width:740px){.consent-banner{bottom:12px;left:12px;width:calc(100vw - 24px);padding:16px 18px;max-height:calc(100dvh - 24px);overflow:auto}.consent-banner h2{font-size:15px}.consent-banner p{font-size:12px}.consent-banner .consent-limited{font-size:10px}.consent-actions{margin-top:12px}.consent-dialog{padding:21px!important}.consent-dialog-head h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){.consent-option input,.consent-option input:before{transition:none}}
