/* Local privacy UI. Accept/reject use identical emphasis; optional services start unchecked. */
.rio-consent-banner,.rio-consent-dialog { color:var(--rio-ink,#20344b); background:var(--rio-paper,#fff); font:400 14px/1.7 var(--rio-font,system-ui,sans-serif); box-sizing:border-box; }
.rio-consent-banner *,.rio-consent-dialog * { box-sizing:border-box; }
.rio-consent-banner[hidden],.rio-consent-dialog [hidden] { display:none!important; }
.rio-consent-banner { position:fixed; z-index:9990; left:20px; right:20px; bottom:20px; width:min(1040px,calc(100% - 40px)); margin:auto; padding:26px 28px; border:1px solid var(--rio-line,#dce2e7); border-top:3px solid var(--rio-accent,#00fe01); display:grid; grid-template-columns:minmax(0,1fr) 225px; gap:28px; max-height:calc(100dvh - 40px); overflow:auto; overscroll-behavior:contain; }
.rio-consent-banner h2,.rio-consent-dialog h2 { color:inherit; font:var(--rio-heading-weight,700) var(--rio-heading-current-size,var(--rio-heading-size,30px))/1.15 var(--rio-heading,system-ui,sans-serif); text-transform:var(--rio-heading-transform,uppercase); margin:0 0 12px; }
.rio-consent-banner p,.rio-consent-dialog p { font:inherit; margin:0 0 12px; }
.rio-consent-banner .rio-eyebrow,.rio-consent-dialog .rio-eyebrow { font:600 10px/1.5 var(--rio-font,system-ui,sans-serif); }
.rio-consent-actions { display:flex; gap:10px; flex-wrap:wrap; align-content:center; }
.rio-consent-banner .rio-consent-actions { flex-direction:column; }
.rio-consent-actions>button { flex:1 1 auto; }
.rio-consent-legal { display:flex; flex-wrap:wrap; gap:10px 18px; font-size:12px; }
.rio-consent-legal a { color:inherit; text-underline-offset:3px; }
.rio-consent-link { padding:0; border:0; background:transparent; color:inherit; cursor:pointer; font:inherit; text-align:left; }
.rio-consent-link:hover { color:var(--rio-accent,#00fe01); }
.rio-consent-dialog { padding:0; width:min(700px,calc(100% - 32px)); max-width:none; max-height:calc(100dvh - 32px); border:1px solid var(--rio-line,#dce2e7); border-radius:0; overflow:hidden; }
.rio-consent-dialog[open] { display:flex; flex-direction:column; }
.rio-consent-dialog::backdrop { background:rgba(14,27,42,.58); }
.rio-consent-dialog>header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:22px 24px; border-bottom:1px solid var(--rio-line,#dce2e7); flex:0 0 auto; }
.rio-consent-dialog h2 { font-size:var(--rio-heading-current-size,var(--rio-heading-size,28px)); margin:0; }
.rio-consent-close { display:grid; place-items:center; width:40px; height:40px; flex:0 0 40px; background:var(--rio-soft,#f4f6f7); color:inherit; border:0; cursor:pointer; }
.rio-consent-close .rio-icon { width:18px; height:18px; }
.rio-consent-body { padding:22px 24px; overflow:auto; min-height:0; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:var(--rio-accent,#00fe01) transparent; }
.rio-consent-service { margin:0 0 12px; padding:0; }
.rio-consent-status-label { display:inline-block; margin-left:8px; font-size:10px; font-weight:400; }
.rio-consent-service.is-requested .rio-choice { border-color:var(--rio-accent,#00fe01); }
.rio-consent-request { padding:12px; background:var(--rio-soft,#f4f6f7); border-left:3px solid var(--rio-accent,#00fe01); }
.rio-consent-note { font-size:11px!important; }
.rio-consent-dialog>footer { padding:16px 24px; border-top:1px solid var(--rio-line,#dce2e7); background:var(--rio-paper,#fff); flex:0 0 auto; }
.rio-consent-status:empty { display:none; }
.rio-consent-embed { aspect-ratio:16/9; display:grid; place-items:center; background:var(--rio-soft,#f4f6f7); color:var(--rio-ink,#20344b); }
.rio-consent-embed-placeholder { padding:24px; text-align:center; max-width:600px; }
.rio-consent-embed-placeholder p { font-size:13px; }
.rio-consent-embed iframe { border:0; width:100%; height:100%; min-height:280px; }
@media(max-width:639px) {
 .rio-consent-banner { left:12px; right:12px; bottom:max(12px,env(safe-area-inset-bottom)); width:calc(100% - 24px); padding:20px; grid-template-columns:1fr; gap:16px; }
 .rio-consent-banner h2 { font-size:var(--rio-heading-current-size,var(--rio-heading-size,26px)); }.rio-consent-banner p { font-size:12px; }
 .rio-consent-banner .rio-consent-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.rio-consent-banner [data-rio-consent-open] { grid-column:1/-1; }
 .rio-consent-dialog>header,.rio-consent-body { padding:18px; }.rio-consent-dialog>footer { padding:12px 18px; gap:8px; }
 .rio-consent-dialog h2 { font-size:var(--rio-heading-current-size,var(--rio-heading-size,23px)); }.rio-consent-dialog .rio-eyebrow { margin-bottom:8px; }
 .rio-consent-dialog .rio-consent-actions>button { flex-basis:40%; font-size:var(--rio-button-size,11px); }.rio-consent-dialog [data-rio-consent-save] { flex-basis:100%; }
}
@media print { .rio-consent-banner,.rio-consent-dialog,.rio-consent-link { display:none!important; } }

