.analytics-consent[hidden], .analytics-preferences[hidden], .analytics-consent button[hidden] { display:none; }
.analytics-consent { position:fixed; z-index:20; inset:auto 1rem 1rem; max-width:52rem; margin-inline:auto; padding:1.25rem; border:1px solid var(--forest); background:var(--mineral); color:var(--ink); box-shadow:0 .3rem 1.5rem #202c2926; max-height:calc(100dvh - 2rem); overflow:auto; }
.analytics-consent h2 { font-size:1.25rem; line-height:1.3; letter-spacing:normal; margin-bottom:.6rem; }
.analytics-consent p { font-size:1rem; line-height:1.5; }
.analytics-consent-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1rem; }
.analytics-consent-actions button { min-height:48px; padding:.65rem 1rem; border:1px solid var(--forest); background:var(--forest); color:var(--mineral); font:inherit; font-size:1rem; font-weight:600; }
.analytics-consent-actions button:hover { background:var(--ink); }
.analytics-preferences { background:var(--support); padding-bottom:1.5rem; font-size:1rem; }
.analytics-preferences .wrap { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem 1rem; }
.analytics-preferences button { min-height:44px; padding:.35rem 0; border:0; background:transparent; color:var(--ink); font:inherit; text-decoration:underline; text-underline-offset:.24em; }
.analytics-preferences span { font-size:.875rem; }
@media(max-width:30rem) { .analytics-consent-actions button { width:100%; } }
