.analytics-consent[hidden] { display: none !important; }
.analytics-consent {
    position: fixed; z-index: 1000000; bottom: 3.25rem; left: 1rem; right: 1rem;
    max-width: 38rem; max-height: calc(100dvh - 5rem); overflow-y: auto;
    box-sizing: border-box; padding: 1.25rem; background: #fff; color: #171747;
    border: 2px solid #0000ff; border-radius: .5rem; box-shadow: 0 4px 24px #0003;
    font: 16px/1.5 Arial, sans-serif;
}
.analytics-consent h2 { font: bold 20px/1.3 Arial, sans-serif; margin: 0 0 .75rem; }
.analytics-consent p { margin: 0 0 .75rem; }
.analytics-consent-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.analytics-consent button, .analytics-settings {
    cursor: pointer; padding: .65rem .85rem; border: 2px solid #0000ff; border-radius: .25rem;
    background: #fff; color: #0000ff; font: bold 15px/1.3 Arial, sans-serif;
}
.analytics-consent button:hover, .analytics-settings:hover { background: #eeeeff; }
.analytics-consent button:focus-visible, .analytics-settings:focus-visible { outline: 3px solid #171747; outline-offset: 3px; }
.analytics-settings { position: fixed; bottom: .5rem; left: .5rem; z-index: 1000000; font-size: 12px; padding: .5rem; }
@media (max-width: 480px) { .analytics-consent-actions button { width: 100%; } }
