.analytics-settings { padding: 1rem; text-align: center; font-size: .85rem; background: #fff; color: #263238; }
.analytics-settings button, .analytics-consent button { font: inherit; cursor: pointer; }
.analytics-settings button { background: none; border: 0; color: inherit; text-decoration: underline; padding: .4rem; }
.analytics-settings a, .analytics-consent a { color: #164e63; text-decoration: underline; }
.analytics-consent { position: fixed; inset: auto 20px max(20px, env(safe-area-inset-bottom)) auto; z-index: 10000; box-sizing: border-box; width: 380px; max-width: calc(100vw - 40px); max-height: calc(100dvh - 40px - env(safe-area-inset-bottom)); overflow-y: auto; padding: 18px; border: 1px solid #d9dddf; border-radius: 14px; background: #fff; color: #263238; box-shadow: 0 4px 24px #0002; font-family: sans-serif; font-size: 14px; line-height: 1.65; letter-spacing: normal; text-align: left; }
.analytics-consent[hidden] { display: none; }
.analytics-consent h2 { margin: 0 0 8px; font: inherit; font-size: 16px; font-weight: 700; line-height: 1.5; color: #263238; }
.analytics-consent p { margin: 8px 0; font-size: 14px; line-height: 1.65; }
.analytics-consent p.analytics-consent__note { font-size: 12px; }
.analytics-consent a { display: inline-block; color: #164e63; text-decoration: underline; text-underline-offset: 2px; }
.analytics-consent div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; margin-top: 12px; }
.analytics-consent button { box-sizing: border-box; min-width: 0; min-height: 44px; padding: 8px 10px; border: 1px solid #455a64; border-radius: 7px; background: #fff; color: #263238; font: inherit; font-weight: 600; cursor: pointer; }
.analytics-consent button:hover { background: #f1f4f5; }
.analytics-consent button:focus-visible, .analytics-consent a:focus-visible, .analytics-settings button:focus-visible { outline: 3px solid #0891b2; outline-offset: 3px; }

.analytics-consent p + p { font-size: 12px; }
@media (max-width: 620px) { .analytics-consent { inset: auto 12px calc(12px + env(safe-area-inset-bottom)) 12px; width: auto; max-width: none; max-height: calc(100dvh - 24px - env(safe-area-inset-bottom)); padding: 14px; border-radius: 12px; } }
