.consent-banner[hidden],[data-video-placeholder][hidden]{display:none!important}
.consent-banner{position:fixed;z-index:100;bottom:20px;left:20px;right:20px;max-width:1000px;margin:auto;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--paper);color:var(--ink);box-shadow:0 8px 48px #0003;max-height:80dvh;overflow:auto}
.consent-banner h2,.consent-dialog h2{font-size:25px;letter-spacing:-.02em}
.consent-banner p,.consent-dialog p{font-size:15px;line-height:1.6}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px}
.consent-actions button{flex:1 1 160px;min-height:46px;padding:10px 16px;border:1px solid var(--earth);border-radius:12px;background:var(--paper);color:var(--ink);font-size:15px;font-weight:800;cursor:pointer}
.consent-actions button:hover{background:var(--sand)}
.consent-actions button:focus-visible,.consent-dialog input:focus-visible{outline:3px solid var(--earth);outline-offset:3px}
.consent-dialog{width:min(680px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:1px solid var(--line);border-radius:20px;padding:28px;background:var(--paper);color:var(--ink)}
.consent-dialog::backdrop{background:#211f1a99}
.consent-category{border-top:1px solid var(--line);padding:16px 0}.consent-category p{margin:8px 0 0}.consent-category label{display:flex;gap:12px;align-items:center;cursor:pointer}.consent-category input{width:22px;height:22px;accent-color:var(--earth);flex-shrink:0}
@media(max-width:560px){.consent-banner{left:12px;right:12px;bottom:12px;padding:18px}.consent-dialog{padding:20px}.consent-actions button{flex-basis:100%}}
@media print{.consent-banner,.consent-dialog{display:none!important}}
