/* Optional analytics controls, independent from the embedded chat. */
.analytics-banner[hidden], .analytics-settings[hidden] { display: none !important; }
.analytics-banner, .analytics-dialog {
  box-sizing: border-box; color: #173340; background: #fff;
  border: 1px solid #9babb2; border-radius: 10px;
  font: 14px/1.5 Arial, sans-serif; padding: 18px;
  box-shadow: 0 5px 24px #172f3c30;
}
.analytics-banner {
  position: fixed; bottom: 12px; left: 12px; z-index: 1000;
  width: min(440px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); overflow-y: auto;
}
.analytics-banner h2, .analytics-dialog h2 { margin: 0 0 8px; font-size: 18px; line-height: 1.35; }
.analytics-banner p, .analytics-dialog p { margin: 8px 0 14px; }
.analytics-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px; }
.analytics-actions button {
  appearance: none; border: 1px solid #496d7d; border-radius: 6px;
  padding: 9px 15px; min-height: 42px; background: #f5f8fa; color: #173340;
  cursor: pointer; font: inherit; font-weight: 600;
}
.analytics-actions button:hover { background: #e4f0f6; }
.analytics-actions button:focus-visible, .analytics-settings:focus-visible,
.analytics-choice input:focus-visible { outline: 3px solid #1675a6; outline-offset: 3px; }
.analytics-dialog { width: min(480px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); overflow-y: auto; }
.analytics-dialog::backdrop { background: #142f3b99; }
.analytics-dialog a { color: #176582; text-decoration: underline; }
.analytics-choice { display: flex; align-items: flex-start; gap: 8px; margin: 16px 0; font-weight: 600; cursor: pointer; }
.analytics-choice input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; }
.analytics-settings { appearance: none; background: none; border: 0; color: inherit; text-decoration: underline; cursor: pointer; font: inherit; padding: 6px; }
@media (max-width: 420px) { .analytics-banner, .analytics-dialog { padding: 14px; } }
