.consent-banner{position:fixed;z-index:120;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;width:min(920px,calc(100% - 24px));margin:auto;padding:18px;border:1px solid var(--primary);border-radius:16px;background:#07130ff5;box-shadow:0 24px 90px #000;backdrop-filter:blur(16px)}
.consent-banner[hidden]{display:none}.consent-banner h2{margin:.15rem 0 .35rem;font-size:clamp(1.15rem,3vw,1.55rem)}.consent-banner p{margin:0;color:var(--muted)}.consent-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.consent-actions .btn{min-height:48px}.consent-settings{width:min(720px,calc(100% - 20px));max-height:calc(100dvh - 20px);padding:0;border:1px solid var(--primary);border-radius:18px;background:#07130f;color:var(--text);box-shadow:0 25px 90px #000}.consent-settings::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(4px)}.consent-settings-content{display:grid;gap:14px;max-height:calc(100dvh - 24px);padding:20px;overflow:auto}.consent-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.consent-settings h2{margin:.1rem 0}.consent-close{width:48px;height:48px;flex:0 0 auto;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--text);font-size:2rem}.consent-category{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}.consent-category div{display:grid;gap:4px}.consent-category span{color:var(--muted);font-size:.86rem}.consent-category b{color:var(--primary);font-size:.82rem}.consent-category input{width:26px;height:26px}.consent-legal-links{text-align:right}.consent-legal-links a{color:var(--secondary);text-decoration:underline}.consent-footer-button{padding:0;border:0;background:none;color:var(--secondary);font:inherit;cursor:pointer}@media(max-width:760px){.consent-banner{grid-template-columns:1fr}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions .btn:last-child{grid-column:1/-1}.consent-banner .consent-actions{justify-content:stretch}}@media(max-width:420px){.consent-actions{grid-template-columns:1fr}.consent-actions .btn:last-child{grid-column:auto}.consent-settings-content{padding:15px}}
