/* Analytics choices share the site's existing colours and controls. */
.analytics-consent {
  position:fixed;
  z-index:10000;
  right:20px;
  bottom:20px;
  width:min(440px,calc(100vw - 40px));
  max-height:calc(100dvh - 40px);
  overflow:auto;
  padding:24px;
  border:1px solid var(--ink);
  border-radius:18px;
  background:var(--paper);
  box-shadow:0 5px 0 var(--ink);
  color:var(--ink);
}
.analytics-consent .analytics-consent-title { font-size:24px; font-weight:650; letter-spacing:-.03em; line-height:1.15; margin:0 0 10px; }
.analytics-consent p { font-size:15px; line-height:1.45; margin:0 0 12px; }
.analytics-consent a { text-decoration:underline; text-underline-offset:3px; }
.analytics-consent-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.analytics-consent-actions button { flex:1 1 150px; min-height:44px; padding:10px 15px; border:1px solid var(--ink); border-radius:999px; background:var(--paper); color:var(--ink); font-size:14px; font-weight:650; }
.analytics-consent-actions button:hover { background:var(--panel); }
.analytics-consent-actions button:focus-visible { outline:3px solid #5f55be; outline-offset:3px; }
.analytics-consent-close { margin-top:12px; padding:4px 0; border:0; background:none; color:var(--ink); text-decoration:underline; text-underline-offset:3px; }
.analytics-consent-status:not(:empty) { margin-top:12px; font-weight:600; }
@media (max-width:480px) {
  .analytics-consent { right:12px; bottom:12px; width:calc(100vw - 24px); max-height:calc(100dvh - 24px); padding:20px; }
}
