.analytics-banner[hidden] { display: none; }
.analytics-banner {
  position: fixed;
  inset: auto 12px 12px auto;
  z-index: 1000;
  width: min(380px, calc(100% - 24px));
  max-height: calc(100dvh - 24px);
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: 0;
  padding: 18px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-card);
  color: var(--text-primary);
  background: var(--surface-card);
  box-shadow: var(--shadow-strong);
  font-family: var(--font-brand);
}
.analytics-banner h2 { grid-column: 1; margin: 0 0 10px; font-size: 1rem; line-height: 1.3; }
.analytics-banner > p { grid-column: 1; margin: 0 0 10px; font-size: .8rem; line-height: 1.5; }
.analytics-banner__actions { grid-column: 1; grid-row: auto; margin: 4px 0; display: flex; gap: 10px; }
.analytics-banner__actions button { flex: 1; min-height: 48px; padding: 10px; border: 1px solid var(--border-soft); border-radius: var(--radius-button); background: var(--surface-card-soft); color: var(--text-primary); font: inherit; font-size: .8rem; cursor: pointer; }
.analytics-banner__actions button:hover { color: var(--accent); border-color: var(--accent); }
.analytics-banner :focus-visible, .analytics-choice-control:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.analytics-banner details { grid-column: 1 / -1; font-size: .8rem; line-height: 1.6; }
.analytics-banner summary { color: var(--accent); min-height: 32px; padding: 6px 0; cursor: pointer; }
.analytics-banner details p { color: var(--text-secondary); margin: 10px 0; }
.analytics-choice-control { display: block; min-height: 44px; margin: 12px auto; border: 0; background: transparent; color: var(--text-secondary); font: inherit; font-size: .8rem; cursor: pointer; }
@media (max-width: 720px) {
  .analytics-banner { inset: auto 10px 10px auto; width: min(380px, calc(100% - 20px)); max-height: calc(100dvh - 20px); }
  .analytics-banner h2 { font-size: 1rem; }
  .analytics-banner__actions { grid-column: 1; grid-row: auto; margin: 6px 0; }
}
