/* Consent UI is deliberately independent of each page's light/dark typography. */
.vx-consent-banner,.vx-consent-dialog{box-sizing:border-box;position:fixed;inset:auto 24px 24px;width:calc(100% - 48px);max-width:760px;max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;margin:0 auto;padding:30px;border:1px solid #49415b;border-radius:28px;background:#171324;color:#f4f3f7;box-shadow:0 18px 72px #0006;font:15px/1.5 Inter,Arial,sans-serif;text-align:left;color-scheme:dark}
.vx-consent-dialog{inset:24px;max-width:640px;margin:auto;height:fit-content}
.vx-consent-banner::backdrop,.vx-consent-dialog::backdrop{background:#09081299;backdrop-filter:blur(4px)}
.vx-consent-banner[hidden],.vx-consent-dialog[hidden],.vx-consent-placeholder[hidden],iframe[data-consent-provider][hidden]{display:none!important}
.vx-consent-banner h2,.vx-consent-dialog h2{font:600 27px/1.15 Inter,Arial,sans-serif;letter-spacing:-.04em;text-wrap:initial;color:inherit;margin:0 40px 18px 0}
.vx-consent-banner p,.vx-consent-dialog p{font:400 14px/1.55 Inter,Arial,sans-serif;color:#ddd7e7;margin:0 0 12px;letter-spacing:0;text-wrap:initial}
.vx-consent-banner .vx-consent-banner-note,.vx-consent-dialog .vx-consent-fine{font-size:12px;line-height:1.5;color:#bcb3cb;margin:14px 0}
.vx-consent-banner a,.vx-consent-dialog a{font:400 13px/1.5 Inter,Arial,sans-serif;color:#d5c8eb;text-decoration:underline;text-underline-offset:3px}
.vx-consent-legal{display:flex;gap:22px;align-items:center}.vx-consent-legal a{display:inline-flex;align-items:center;min-height:32px}
.vx-consent-banner-actions,.vx-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 12px}
.vx-consent-banner-actions button,.vx-consent-actions button{min-height:48px;border:1px solid #ffed40;border-radius:999px;background:#ffed40;color:#171324;padding:12px 16px;font:600 14px/1.25 Inter,Arial,sans-serif;cursor:pointer}
.vx-consent-banner-actions .vx-consent-customize,.vx-consent-actions .vx-consent-customize{grid-column:1/-1;background:transparent;color:#f4f3f7;border-color:#9386a8;min-height:43px}
:is(.vx-consent-banner,.vx-consent-dialog) .vx-consent-dismiss{position:absolute;right:20px;top:20px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #9386a84d;border-radius:50%;background:transparent;color:#ded5ee;cursor:pointer}
.vx-consent-dismiss svg{width:18px;height:18px}
.vx-consent-necessary{padding:16px;border:1px solid #bdb3e42e;border-radius:18px;background:#bdb3e409;margin:20px 0 8px}
.vx-consent-necessary summary{display:flex;gap:12px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font:600 14px/1.4 Inter,Arial,sans-serif;color:#f4f3f7}.vx-consent-necessary summary::-webkit-details-marker{display:none}.vx-consent-necessary summary>span::before{content:'+';display:inline-block;width:19px;font-size:18px;font-weight:400}.vx-consent-necessary[open] summary>span::before{content:'−'}.vx-consent-necessary summary small{flex:none;font-size:10px;font-weight:500;color:#c4bbd1;border:1px solid #9386a840;padding:4px 8px;border-radius:999px}.vx-consent-necessary[open]>p{margin:16px 0 10px;font-size:12px}
.vx-consent-storage{margin:0}.vx-consent-storage>div{padding:11px 0;border-top:1px solid #9386a826}.vx-consent-storage dt{font:550 12px/1.4 Inter,Arial,sans-serif;overflow-wrap:anywhere;color:#f4f3f7}.vx-consent-storage dd{font:400 12px/1.5 Inter,Arial,sans-serif;margin:5px 0 0;color:#c4bbd1}
.vx-consent-service{padding:18px 0;border-bottom:1px solid #9386a826}.vx-consent-service label{display:flex;justify-content:space-between;align-items:center;gap:16px;font:600 16px/1.4 Inter,Arial,sans-serif;cursor:pointer}.vx-consent-dialog .vx-consent-service-details{margin:9px 0 0;font-size:12px;color:#bfb6ce}
.vx-consent-service input{appearance:none;-webkit-appearance:none;width:46px;height:28px;flex:none;position:relative;border:1px solid #9386a8;border-radius:999px;background:#30283f;cursor:pointer;margin:0}.vx-consent-service input::before{content:'';position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#c7bdd5;transition:transform .18s ease}.vx-consent-service input:checked{background:#ffed40;border-color:#ffed40}.vx-consent-service input:checked::before{transform:translateX(18px);background:#171324}
.vx-consent-settings{display:inline-flex;align-items:center;min-height:38px;padding:6px 0;border:0;background:none;color:inherit;font:400 13px/1.5 Inter,Arial,sans-serif;text-align:left;text-decoration:none;cursor:pointer;margin:0}
.vx-consent-banner :focus-visible,.vx-consent-dialog :focus-visible,.vx-consent-settings:focus-visible,.vx-consent-placeholder :focus-visible{outline:3px solid #baa9dc;outline-offset:3px}
.vx-consent-placeholder{box-sizing:border-box;max-width:100%;padding:32px;border:1px solid #bdb4cf;border-radius:28px;background:#f4f3f7;color:#171324;min-height:220px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px}.vx-consent-placeholder h3{font:600 24px/1.2 Inter,Arial,sans-serif;letter-spacing:-.035em;margin:0;color:#171324}.vx-consent-placeholder p{font:400 14px/1.55 Inter,Arial,sans-serif;margin:0;color:#60576d}.vx-consent-placeholder button{border-radius:999px;border:1px solid #635874;background:#171324;color:#fff;font:600 14px/1.4 Inter,Arial,sans-serif;padding:13px 22px;cursor:pointer}.vx-consent-placeholder a{font-size:13px;color:#60576d;text-decoration:underline}
@media(max-width:760px){.vx-consent-settings{font-size:12px;min-height:40px;padding:8px 0}}
@media(max-width:600px){
 .vx-consent-banner,.vx-consent-dialog{inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:90dvh;border-radius:28px 28px 0 0;border-bottom:0;padding:27px 22px max(18px,env(safe-area-inset-bottom));box-shadow:0 -12px 60px #0004}
 .vx-consent-banner h2,.vx-consent-dialog h2{font-size:24px;max-width:270px;margin-bottom:16px;margin-right:32px}
 .vx-consent-banner p{font-size:13px;line-height:1.5}.vx-consent-banner .vx-consent-banner-note{font-size:11px;margin:12px 0 5px}
 .vx-consent-banner-actions,.vx-consent-actions{gap:9px;margin:18px 0 10px}.vx-consent-banner-actions button,.vx-consent-actions button{font-size:13px;padding:12px 9px;min-height:46px}
 :is(.vx-consent-banner,.vx-consent-dialog) .vx-consent-dismiss{right:17px;top:19px}.vx-consent-legal a{font-size:12px;min-height:34px}
 .vx-consent-dialog .vx-consent-fine{font-size:11px}.vx-consent-necessary{padding:14px}.vx-consent-necessary summary{font-size:13px;gap:8px}.vx-consent-service label{font-size:15px}
 .vx-consent-placeholder{padding:24px;gap:12px}.vx-consent-placeholder p{font-size:13px}.vx-consent-placeholder button{width:100%}
}
@media(prefers-reduced-motion:reduce){.vx-consent-service input::before{transition:none}}

.vx-consent-provider-links{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.8rem}.vx-consent-provider-links a{text-underline-offset:.2em}
