.analytics-consent[hidden], .analytics-consent button[hidden] { display: none; }
.analytics-consent { position: fixed; z-index: 100; right: 1rem; bottom: max(1rem, env(safe-area-inset-bottom)); left: 1rem; width: min(980px, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow-y: auto; margin-inline: auto; border: 1px solid #d3deec; background: #eef3f9; color: #062955; font: 400 .875rem/1.5 Lato, "Segoe UI", system-ui, sans-serif; }
.analytics-consent__inner { display: flex; align-items: center; gap: 1.5rem; padding: .75rem 1rem; }
.analytics-consent h2 { margin: 0 0 .35rem; font: 700 1rem/1.3 Montserrat, "Segoe UI", system-ui, sans-serif; }
.analytics-consent p { max-width: 75ch; margin: 0; }
.analytics-consent .analytics-consent__status { margin-top: .35rem; font-size: .8rem; }
.analytics-consent__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: .5rem; }
.analytics-consent button { min-height: 36px; padding: .35rem .7rem; border: 1px solid #062955; border-radius: 4px; background: #fff; color: #062955; font: 700 .8rem/1.4 Montserrat, "Segoe UI", system-ui, sans-serif; cursor: pointer; }
.analytics-consent button:hover { background: #062955; color: #fff; }
.analytics-preferences { display: inline-flex; min-height: 32px; align-items: center; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; font: 600 .8rem/1.4 Lato, "Segoe UI", system-ui, sans-serif; text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.analytics-preferences:hover { color: #005cd6; }
.analytics-consent button:focus-visible, .analytics-preferences:focus-visible { outline: 3px solid #005cd6; outline-offset: 3px; }
@media (max-width: 640px) {
  .analytics-consent__inner { flex-direction: column; align-items: stretch; gap: .65rem; }
  .analytics-consent button, .analytics-preferences { min-height: 44px; }
}
