.analytics-consent {
  position: fixed;
  z-index: 150;
  inset: auto 0 0;
  display: grid;
  grid-template: "title actions" auto "description actions" auto / minmax(0,1fr) auto;
  align-items: center;
  gap: 4px 24px;
  max-height: 100dvh;
  overflow: auto;
  padding-block: 16px calc(16px + env(safe-area-inset-bottom, 0px));
  padding-inline: max(var(--layout-gutter, 20px), calc((100% - var(--layout-width, 1440px)) / 2 + 20px));
  border-top: 1px solid #cbd0c3;
  background: var(--color-white, #fff);
  color: var(--color-ink, #11140f);
  box-shadow: 0 -4px 24px #11140f12;
  font: var(--type-body, 16px/1.55 Manrope, sans-serif);
}

.analytics-consent[hidden] { display: none; }
.analytics-consent h2 { grid-area: title; margin: 0; font: inherit; font-weight: 800; }
.analytics-consent p { grid-area: description; margin: 0; color: var(--color-muted, #505748); }
.analytics-consent-actions {
  grid-area: actions;
  display: grid;
  grid-template-columns: minmax(104px,1fr);
  gap: 8px;
}
.analytics-consent-actions .btn {
  min-width: 0;
  min-height: 44px;
  padding: 8px 16px;
  border-radius: var(--radius-sm, 12px);
  font: var(--type-ui, 600 14px/1.55 Manrope, sans-serif);
  white-space: normal;
}
.analytics-settings{border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:8px 0;min-height:44px}
.analytics-settings:focus-visible,.analytics-consent button:focus-visible{outline:3px solid #0866ff;outline-offset:4px}
.confirmation .analytics-settings{display:block;margin-top:16px;font-size:14px}

@media (max-width: 640px) {
  .analytics-consent { grid-template: "title" "description" "actions" / minmax(0,1fr); }
  .analytics-consent-actions { margin-top: 8px; }
}
