.analytics-consent { position:fixed; z-index:1000; bottom:20px; left:20px; width:min(520px,calc(100vw - 40px)); max-height:calc(100dvh - 40px); overflow:auto; box-sizing:border-box; padding:24px; background:#fff; color:#202020; border:1px solid #202020; box-shadow:0 8px 30px #0002; font:400 16px/1.5 'DM Sans',sans-serif; }
.analytics-consent[hidden] { display:none; }
.analytics-consent h2 { font:600 20px/1.3 Manrope,sans-serif; margin:0 0 12px; }
.analytics-consent p { margin:0 0 16px; }
.analytics-consent summary { cursor:pointer; text-decoration:underline; }
.analytics-consent details { margin-bottom:20px; }
.analytics-consent details p { margin-top:12px; }
.analytics-consent a { color:inherit; text-decoration:underline; }
.analytics-actions { display:flex; flex-wrap:wrap; gap:12px; }
.analytics-actions button { flex:1; padding:12px 18px; min-height:44px; border:1px solid #202020; background:#C9DC00; color:#202020; font:inherit; cursor:pointer; }
.analytics-settings { display:block; margin-top:20px; padding:10px 0; background:none; border:0; color:inherit; text-decoration:underline; font:400 14px/1.5 'DM Sans',sans-serif; cursor:pointer; }
.analytics-consent button:focus-visible,.analytics-consent summary:focus-visible,.analytics-settings:focus-visible { outline:3px solid #3054e5; outline-offset:3px; }
@media(max-width:600px) { .analytics-consent { bottom:12px; left:12px; width:calc(100vw - 24px); padding:18px; } }
