
/* Analytics preferences in the footer. Appended to the stylesheet by build.mjs only when the
   environment builds Google Analytics in (README "Google Analytics"); absent otherwise. */
.analytics-prefs[hidden], .analytics-toggle[hidden] { display: none; }
.analytics-prefs { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-top: 12px; color: var(--text-2); font-size: 14px; }
.analytics-prefs-label { font-weight: 600; }
.analytics-toggle { min-height: 32px; padding: 4px 12px; border: 1px solid var(--border); border-radius: 999px; background: transparent; color: var(--text); font: inherit; font-size: 14px; cursor: pointer; }
.analytics-toggle:hover { border-color: var(--text-2); }
@media (forced-colors: active) { .analytics-toggle { border: 1px solid ButtonText; } }

/* Consent banner: shown by the loader to visitors who must opt in (EU/EEA, UK, Switzerland, unknown). */
.consent-banner[hidden] { display: none; }
.consent-banner { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 50; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; max-width: 720px; margin: 0 auto; padding: 14px 16px; background: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: 14px; box-shadow: 0 6px 24px rgba(0, 0, 0, 0.18); font-size: 15px; }
.consent-banner p { margin: 0; }
.consent-actions { display: flex; gap: 8px; }
.consent-btn { min-height: 44px; padding: 8px 18px; border: 1px solid var(--text-2); border-radius: 999px; background: transparent; color: var(--text); font: inherit; font-weight: 600; cursor: pointer; }
@media (forced-colors: active) { .consent-btn, .consent-banner { border: 1px solid ButtonText; } }
