/* Optional analytics preferences remain independent of site navigation. */
.analytics-preferences[hidden], .analytics-open[hidden] { display: none !important; }
.analytics-preferences { position: fixed; z-index: 1000; inset: auto 20px 20px; margin: 0 auto; max-width: 850px; padding: 24px; border: 2px solid #000; border-radius: 16px; background: #fff; color: #111; box-shadow: 0 8px 40px #0003; }
.analytics-preferences h2 { margin: 0 36px 10px 0; font: 700 20px system-ui, sans-serif; }
.analytics-preferences p { margin: 0 0 14px; font: 400 14px/1.6 system-ui, sans-serif; }
.analytics-preferences a { color: #111; text-decoration: underline; }
.analytics-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.analytics-actions button { flex: 1; min-width: 150px; min-height: 44px; border: 2px solid #111; border-radius: 8px; background: #ffcc00; color: #111; font: 700 14px system-ui, sans-serif; cursor: pointer; padding: 10px 16px; }
.analytics-actions button:disabled { background: #eee; color: #555; cursor: default; }
.analytics-close { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 0; background: transparent; color: #111; font: 400 24px system-ui, sans-serif; cursor: pointer; }
.analytics-open { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; text-decoration: underline; cursor: pointer; }
.analytics-preferences button:focus-visible, .analytics-open:focus-visible { outline: 3px solid #246bdb; outline-offset: 4px; }
@media (max-width: 520px) { .analytics-preferences { inset: auto 10px 10px; max-height: 80vh; overflow-y: auto; padding: 18px; } .analytics-actions { gap: 10px; } .analytics-actions button { min-width: 120px; } }
