.analytics-consent[hidden], .analytics-actions[hidden] { display: none !important; }
.analytics-consent { position: fixed; z-index: 80; inset: auto 0 0; background: #eef0f2; color: #202124; border-top: 1px solid #d2d8de; box-shadow: 0 -2px 12px #00000012; padding: 18px max(18px, calc((100% - 1100px) / 2)) calc(18px + env(safe-area-inset-bottom)); display: flex; gap: 24px; align-items: center; font-size: 14px; letter-spacing: 0; }
.analytics-consent > div:first-child { flex: 1; min-width: 0; }
.analytics-consent p { margin: 6px 0; line-height: 1.6; }
.analytics-consent a, .analytics-preferences a { color: #245a96; text-decoration: underline; }
.analytics-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.analytics-actions button { min-height: 44px; border: 1px solid #557699; border-radius: 6px; padding: 10px 18px; background: #fff; color: #244f7e; font: inherit; font-weight: 700; cursor: pointer; }
.analytics-actions button[aria-pressed="true"] { background: #e8f1fb; border-width: 2px; }
.analytics-actions button:focus-visible { outline: 3px solid #3772b9; outline-offset: 3px; }
.analytics-preferences { padding: 24px 0; border-top: 1px solid #ddd; scroll-margin-top: 20px; }
.analytics-preferences h2 { font-size: 20px; }
.analytics-preferences p { line-height: 1.8; overflow-wrap: anywhere; }
.admin-analytics-page { padding: 24px 0; }
.admin-analytics-page .admin-form { max-width: 520px; }
body.age-pending .analytics-consent { display: none; }
body.analytics-consent-open { padding-bottom: var(--analytics-banner-space, 240px); }
body.analytics-consent-open .bottom-nav { visibility: hidden; }
@media (max-width: 600px) {
  .analytics-consent { display: block; max-height: 65dvh; overflow-y: auto; padding: 16px 16px calc(16px + env(safe-area-inset-bottom)); }
  .analytics-consent .analytics-actions { margin-top: 12px; display: grid; grid-template-columns: 1fr 1fr; }
  .analytics-actions button { padding: 10px 12px; }
}
