html { scroll-padding-bottom: var(--aurora-consent-space, 0px); }
body { padding-bottom: var(--aurora-consent-space, 0px); }
/* Hide only while consent is visible; existing CTA states, animation and cart stay intact. */
html.aurora-consent-open .cta-bar,
html.aurora-consent-open .desktop-cta,
html.aurora-consent-open .sticky-cta { display: none !important; }
#aurora-consent { box-sizing: border-box; font: 14px/1.5 system-ui, sans-serif; color: #17334e; }
#aurora-consent[hidden], #aurora-consent [hidden] { display: none !important; }
#aurora-consent { position: fixed; z-index: 9000; bottom: 0; left: 0; right: 0; max-height: 75vh; max-height: 75dvh; overflow: auto; padding: 18px max(20px, env(safe-area-inset-right, 0px)) calc(18px + env(safe-area-inset-bottom, 0px)) max(20px, env(safe-area-inset-left, 0px)); background: #fff; border-top: 3px solid #1f7ae0; box-shadow: 0 -4px 24px #17334e22; text-align: left; }
#aurora-consent .ac-consent-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 14px 24px; max-width: 1100px; margin: auto; }
#aurora-consent p { font: inherit; margin: 8px 0 12px; }
#aurora-consent .ac-consent-copy { margin: 0; }
#aurora-consent a { color: #145ba5; text-decoration: underline; }
#aurora-consent .ac-consent-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 10px; }
#aurora-consent button { min-height: 44px; padding: 10px 16px; border: 1px solid #145ba5; border-radius: 8px; background: #fff; color: #145ba5; cursor: pointer; font: inherit; font-weight: 600; }
#aurora-consent [data-accept], #aurora-consent [data-reject] { background: #145ba5; color: #fff; }
#aurora-consent [data-settings] { grid-column: 1 / -1; justify-self: center; display: inline-flex; align-items: center; min-height: 44px; padding: 0 8px; font-size: 13px; }
#aurora-consent button:focus-visible, #aurora-consent input:focus-visible, #aurora-consent summary:focus-visible, #aurora-consent a:focus-visible, [data-cookie-settings]:focus-visible { outline: 3px solid #bb7500; outline-offset: 3px; }
#aurora-consent details { grid-column: 1 / -1; }
#aurora-consent details:not([open]) { display: none; }
#aurora-consent summary { cursor: pointer; font-weight: 600; }
#aurora-consent .ac-consent-category { padding: 14px 0 0; margin: 12px 0; border-top: 1px solid #dce4ea; }
#aurora-consent .ac-consent-category p { margin-bottom: 0; }
#aurora-consent .ac-switch-row { display: flex; justify-content: space-between; gap: 16px; align-items: center; font: inherit; cursor: pointer; }
#aurora-consent .ac-switch-status { display: block; margin-top: 3px; font-size: 12px; }
#aurora-consent .ac-switch { appearance: none; -webkit-appearance: none; flex: 0 0 auto; box-sizing: border-box; width: 48px; height: 28px; margin: 0; padding: 2px; border: 2px solid #607184; border-radius: 20px; background: #607184; cursor: pointer; }
#aurora-consent .ac-switch::before { content: ''; display: block; width: 20px; height: 20px; border-radius: 50%; background: #fff; }
#aurora-consent .ac-switch:checked { background: #16803c; border-color: #16803c; }
#aurora-consent .ac-switch:checked::before { transform: translateX(20px); }
#aurora-consent .ac-switch:indeterminate { background: #8a5a00; border-color: #8a5a00; }
#aurora-consent .ac-switch:indeterminate::before { transform: translateX(10px); }
#aurora-consent .ac-switch:disabled { opacity: 1; cursor: not-allowed; -webkit-text-fill-color: currentColor; }
#aurora-consent .ac-consent-panel-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.ac-privacy-links { display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 16px; margin-inline: 12px; }
.ac-privacy-links a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.ac-privacy-links [data-cookie-settings] { display: inline-flex; align-items: center; min-height: 44px; }
.ac-privacy-footer { padding: 16px; text-align: center; }
@media (max-width: 900px) {
    #aurora-consent .ac-consent-inner { grid-template-columns: minmax(0, 1fr); }
    body:has(.cta-bar, .sticky-cta) .ac-privacy-links { margin-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 540px) {
    #aurora-consent { padding: 16px max(14px, env(safe-area-inset-right, 0px)) calc(16px + env(safe-area-inset-bottom, 0px)) max(14px, env(safe-area-inset-left, 0px)); }
    #aurora-consent button { padding: 9px 10px; }
}
@media (forced-colors: active) {
    #aurora-consent .ac-switch { appearance: auto; -webkit-appearance: auto; }
    #aurora-consent .ac-switch::before { display: none; }
}
