.analytics-consent { position:fixed; z-index:1000; bottom:24px; right:24px; width:min(480px, calc(100vw - 32px)); padding:24px; border:1px solid #dce1ed; border-radius:20px; background:#fff; color:#17243e; box-shadow:0 12px 48px #101d3a26; font:16px/1.55 system-ui,sans-serif; max-height:calc(100dvh - 32px); overflow:auto; }
.analytics-consent[hidden] { display:none; }
.analytics-consent h2 { font-size:20px; line-height:1.3; margin:0 0 12px; }
.analytics-consent p { margin:0 0 12px; }
.analytics-consent a { color:#4338ca; text-decoration:underline; }
.analytics-actions { display:flex; gap:12px; margin-top:20px; }
.analytics-actions button { flex:1; padding:12px; border:1px solid #4f46e5; border-radius:12px; background:#fff; color:#4338ca; font:600 16px/1.4 system-ui,sans-serif; cursor:pointer; }
.analytics-actions button:hover { background:#eef2ff; }
.analytics-actions button:disabled { opacity:.5; cursor:not-allowed; }
.analytics-settings { margin:16px 0; border:0; background:transparent; color:#4338ca; text-decoration:underline; font:inherit; cursor:pointer; min-height:44px; }
.analytics-consent :focus-visible,.analytics-settings:focus-visible { outline:3px solid #7c3aed; outline-offset:4px; }
@media(max-width:540px) { .analytics-consent { right:16px; bottom:16px; padding:20px; } }
