/* Shared consent UI. Optional preferences never control paid access. */
.acc-banner, .acc-banner *, .acc-personal-data, .acc-personal-data * { box-sizing:border-box; }
.acc-banner { position:fixed; z-index:500; inset:auto 16px 16px; width:calc(100% - 32px); max-width:1040px; max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); margin-inline:auto; padding:24px; display:flex; align-items:center; gap:24px; overflow-y:auto; border:1px solid #dce3ee; border-radius:20px; background:#fff; color:#17233b; box-shadow:0 12px 48px rgb(23 35 59 / 14%); font:14px/1.6 Manrope,system-ui,-apple-system,"Segoe UI",sans-serif; text-align:left; }
.acc-banner[hidden], .acc-banner [hidden], .acc-personal-data [hidden] { display:none!important; }
.acc-copy { min-width:0; flex:1; }
.acc-banner .acc-title { margin:0 0 8px; padding:0; color:#17233b; font:700 18px/1.4 Manrope,system-ui,-apple-system,"Segoe UI",sans-serif; letter-spacing:-.3px; }
.acc-banner .acc-description { margin:0; color:#52607a; font:inherit; overflow-wrap:anywhere; }
.acc-banner .acc-current { margin:10px 0 0; color:#65718a; font-size:12px; line-height:1.6; }
.acc-banner .acc-more { color:#3659e3; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.acc-controls { display:flex; flex:0 0 210px; flex-direction:column; gap:8px; }
.acc-banner .acc-button { display:flex; align-items:center; justify-content:center; width:100%; min-height:44px; margin:0; padding:11px 16px; border:1px solid #cdd7ee; border-radius:12px; background:#f5f7fd; color:#2949ca; font:650 13px/1.5 Manrope,system-ui,-apple-system,"Segoe UI",sans-serif; cursor:pointer; touch-action:manipulation; text-align:center; }
.acc-banner .acc-button:hover { border-color:#3659e3; background:#edf1ff; }
.acc-banner .acc-close { min-height:44px; padding:8px; border:0; background:transparent; color:#52607a; font:inherit; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.acc-banner :is(button,a):focus-visible, .acc-settings-link:focus-visible, .acc-personal-data input:focus-visible, .acc-personal-data a:focus-visible { outline:3px solid #3659e3; outline-offset:3px; }
.acc-title:focus { outline:none; }
.acc-spacer { width:100%; flex:0 0 auto; }
.acc-announcement { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
a.acc-settings-link { display:inline-flex; align-items:center; min-height:44px; color:inherit; font-size:12px; text-decoration:underline; text-underline-offset:3px; touch-action:manipulation; }
.acc-personal-data { grid-column:1/-1; margin:4px 0 0; }
.acc-checkout .field, .acc-checkout .checkout-submit { grid-column:1/-1; }
.acc-checkout .checkout-submit { justify-self:start; margin-top:12px; }
.acc-personal-data .acc-data-label { display:flex; align-items:flex-start; gap:12px; padding:8px 0; color:#52607a; font-size:12px; line-height:1.75; font-weight:400; cursor:pointer; }
.acc-personal-data input[type="checkbox"] { appearance:auto; -webkit-appearance:checkbox; flex:0 0 20px; width:20px; height:20px; min-height:20px; margin:2px 0 0; padding:0; border:1px solid #aebbd5; border-radius:4px; accent-color:#3659e3; }
.acc-personal-data a { color:#3659e3; text-decoration:underline; text-underline-offset:3px; }
.acc-personal-data .acc-data-error { margin:6px 0 0 32px; color:#a12b3c; font-size:12px; line-height:1.6; }
@media(max-width:640px) { .acc-banner { padding:20px; align-items:stretch; flex-direction:column; gap:16px; border-radius:18px; } .acc-controls { flex:auto; display:grid; grid-template-columns:1fr 1fr; } .acc-banner .acc-button { padding:10px; font-size:12px; } .acc-close { grid-column:1/-1; } .acc-banner .acc-title { font-size:17px; } .acc-banner .acc-description { font-size:13px; } }
@media(max-width:640px) { .acc-checkout .checkout-submit { justify-self:stretch; } }
@media(max-width:360px) { .acc-banner { inset:auto 10px 10px; width:calc(100% - 20px); padding:16px; } .acc-controls { grid-template-columns:1fr; } }
