:where(.consent-banner),:where(.consent-banner__modal){--consent-banner-bg: var(--theme-surface, #1a1a1a);--consent-banner-fg: var(--theme-text, #ffffff);--consent-banner-accent: var(--theme-primary-accent, #0066cc);--consent-banner-button-text: #ffffff;--consent-banner-radius: var(--theme-radius, .5rem);--consent-banner-z: 99;--consent-banner-gap: 1rem;--consent-banner-padding-x: 1.5rem;--consent-banner-padding-y: 1rem;--consent-banner-shadow: 0 4px 24px rgba(0, 0, 0, .2);--consent-banner-overlay: rgba(0, 0, 0, .5)}.consent-banner{position:fixed;z-index:var(--consent-banner-z);background:var(--consent-banner-bg);color:var(--consent-banner-fg);font-family:inherit;line-height:inherit;box-sizing:border-box;--body-text-colour: var(--consent-banner-fg)}.consent-banner *,.consent-banner *:before,.consent-banner *:after{box-sizing:border-box}.consent-banner__inner{display:flex;align-items:center;gap:var(--consent-banner-gap);flex-wrap:wrap;padding:var(--consent-banner-padding-y) var(--consent-banner-padding-x);max-width:1280px;margin:0 auto}.consent-banner__copy{flex:1 1 320px;min-width:0}.consent-banner__title{margin:0 0 .25rem;font-weight:600}.consent-banner__message{margin:0}.consent-banner__message a{color:inherit;text-decoration:underline}.consent-banner__policy-link{margin-left:.25rem}.consent-banner__actions{display:flex;gap:.5rem;flex-wrap:wrap}:where(.consent-banner__btn){display:inline-block;padding:.5rem 1rem;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;font:inherit;line-height:1.2}:where(.consent-banner__btn):focus-visible{outline:2px solid var(--consent-banner-accent);outline-offset:2px}:where(.consent-banner__btn--primary){background:var(--consent-banner-accent);border-color:var(--consent-banner-accent);color:var(--consent-banner-button-text)}.consent-banner--bar{left:0;right:0;bottom:0}.consent-banner--card-center,.consent-banner--card-bottom-right,.consent-banner--card-bottom-left{width:min(30rem,100vw - 2rem);border-radius:var(--consent-banner-radius)}.consent-banner--card-center .consent-banner__inner,.consent-banner--card-bottom-right .consent-banner__inner,.consent-banner--card-bottom-left .consent-banner__inner{flex-direction:column;align-items:stretch;padding:1.5rem;max-width:100%}.consent-banner--card-center .consent-banner__copy,.consent-banner--card-bottom-right .consent-banner__copy,.consent-banner--card-bottom-left .consent-banner__copy{flex:0 0 auto}.consent-banner--card-center .consent-banner__actions .consent-banner__btn,.consent-banner--card-bottom-right .consent-banner__actions .consent-banner__btn,.consent-banner--card-bottom-left .consent-banner__actions .consent-banner__btn{flex:1 1 0;min-width:0;text-align:center}.consent-banner--card-center{left:50%;top:50%;transform:translate(-50%,-50%)}.consent-banner--card-bottom-right{right:1rem;bottom:1rem}.consent-banner--card-bottom-left{left:1rem;bottom:1rem}@media (max-width: 32rem){.consent-banner__inner{flex-direction:column;align-items:stretch}.consent-banner__copy{flex:1 1 100%}.consent-banner__actions{width:100%;flex-direction:column-reverse;align-items:stretch}.consent-banner__btn{width:100%;flex:0 0 auto}.consent-banner--bar{left:1rem;right:1rem;bottom:1rem;border-radius:var(--consent-banner-radius)}.consent-banner--card-center{left:1rem;right:1rem;top:auto;bottom:1rem;width:auto;transform:none}}html[data-consent=set] .consent-banner{display:none}.consent-banner__modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--consent-banner-z) + 1);display:flex;align-items:center;justify-content:center;background:var(--consent-banner-overlay);padding:1rem;font-family:inherit;color:var(--consent-banner-fg);--body-text-colour: var(--consent-banner-fg)}.consent-banner__modal[hidden]{display:none}.consent-banner__modal-inner{position:relative;background:var(--consent-banner-bg);color:var(--consent-banner-fg);border-radius:var(--consent-banner-radius);box-shadow:var(--consent-banner-shadow);max-width:560px;width:100%;max-height:calc(100vh - 2rem);overflow-y:auto;padding:1.5rem}.consent-banner__modal-title{margin:0 3rem 1rem 0;font-weight:600}.consent-banner__modal-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;margin-top:1.25rem}:where(.consent-banner__modal-close){position:absolute;top:1.5rem;right:1.5rem;display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border:0;background:transparent;color:inherit;cursor:pointer;border-radius:999px;transition:background-color .2s ease}:where(.consent-banner__modal-close):hover,:where(.consent-banner__modal-close):focus-visible{background-color:#ffffff1f}:where(.consent-banner__modal-close):focus-visible{outline:2px solid var(--consent-banner-accent);outline-offset:2px}.consent-banner__categories{display:flex;flex-direction:column}.consent-banner__category{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.875rem 0;border-top:1px solid currentColor;cursor:pointer}.consent-banner__category:first-of-type{border-top:0}.consent-banner__category-text{display:flex;flex-direction:column;gap:.125rem;flex:1}.consent-banner__category-label{font-weight:600}.consent-banner__category-description{opacity:.85}.consent-banner__toggle{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;flex-shrink:0;width:2.25rem;height:1.25rem;margin:.125rem 0 0;padding:0;border:1px solid currentColor;background:transparent;border-radius:999px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.consent-banner__toggle:before{content:"";position:absolute;top:2px;left:2px;width:calc(1.25rem - 6px);height:calc(1.25rem - 6px);background:currentColor;border-radius:50%;transition:transform .2s ease,background-color .2s ease}.consent-banner__toggle:checked{background:var(--consent-banner-accent);border-color:var(--consent-banner-accent)}.consent-banner__toggle:checked:before{transform:translate(1rem);background:var(--consent-banner-button-text)}.consent-banner__toggle:disabled{opacity:.6;cursor:not-allowed}.consent-banner__toggle:focus-visible{outline:2px solid var(--consent-banner-accent);outline-offset:2px}
