.analytics-consent { position: fixed; left: 50vw; right: auto; transform: translateX(-50%); bottom: 20px; z-index: 100; width: min(620px, calc(100vw - 40px)); margin: 0; box-sizing: border-box; padding: 22px; border: 1px solid var(--line); border-radius: 18px; background: var(--paper); color: var(--ink); box-shadow: var(--shadow); max-height: min(480px, 75vh); overflow-y: auto; overflow-wrap: anywhere; }
.analytics-consent[hidden] { display: none; }
.analytics-consent h2 { font-size: 18px; line-height: 1.3; margin: 0 0 9px; }
.analytics-consent p { font-size: 14px; line-height: 1.6; margin: 0 0 10px; }
.analytics-consent a { font-size: 14px; text-decoration: underline; }
.analytics-consent-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.analytics-consent-actions button { flex: 1 1 160px; min-height: 44px; padding: 10px 16px; border: 1px solid var(--ink); background: var(--paper); color: var(--ink); border-radius: 99px; cursor: pointer; font-weight: 600; }
.analytics-consent-actions button:disabled { opacity: .5; cursor: default; }
.analytics-settings { font: inherit; font-size: 13px; color: inherit; background: transparent; border: 0; padding: 5px 0; cursor: pointer; text-decoration: underline; }
.analytics-consent button:focus-visible, .analytics-settings:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
@media (max-width: 480px) { .analytics-consent { bottom: 12px; width: calc(100vw - 24px); padding: 18px; } .analytics-consent-actions { flex-direction: column; } .analytics-consent-actions button { flex: 0 0 auto; width: 100%; } }
