/* Thread message vertical rhythm + alert tones.
   Scoped to .message.assistant so user bubbles and other surfaces stay unaffected.
   Paired with utils/markdownAlertsPlugin.js output. */

.message.assistant > * + * { margin-block-start: 0.75em; }

/* ── Headings ─────────────────────────────────────────────────── */

/* First heading in a response acts as the response title regardless of level */
.message.assistant > h1:first-child,
.message.assistant > h2:first-child,
.message.assistant > h3:first-child {
  font-size: 1.45em;
  margin-block: 0 0.9em;
  padding-bottom: 0.4em;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  letter-spacing: -0.018em;
  line-height: 1.22;
}

.message.assistant h1 { margin-block: 1.5em 0.65em; font-size: 1.45em; line-height: 1.22; }
.message.assistant h2 { margin-block: 1.3em 0.55em; font-size: 1.28em; line-height: 1.26; }
.message.assistant h3 { margin-block: 1.1em 0.45em; font-size: 1.1em;  line-height: 1.32; }
.message.assistant h4 { margin-block: 0.9em 0.4em;  font-size: 1.0em;  line-height: 1.38; }

.message.assistant p  { margin-block: 0.5em; line-height: 1.55; }

.message.assistant ul,
.message.assistant ol { margin-block: 0.5em; padding-inline-start: 1.5em; }
.message.assistant li { margin-block: 0.25em; line-height: 1.5; }
.message.assistant li > ul,
.message.assistant li > ol { margin-block: 0.25em 0; }

.message.assistant pre  { margin-block: 0.75em; }
.message.assistant code { font-size: 0.95em; }

.message.assistant blockquote {
  margin-block: 0.75em;
  padding: 0.5em 1em;
  border-inline-start: 2px solid rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.78);
}

/* ── Alert asides ─────────────────────────────────────────────── */
.message.assistant aside.assistant-alert {
  margin-block: 0.9em;
  padding: 0.75em 1em;
  border-inline-start: 3px solid currentColor;
  border-radius: 6px;
  font-size: 0.98em;
}
.message.assistant aside.assistant-alert > :first-child { margin-block-start: 0; }
.message.assistant aside.assistant-alert > :last-child  { margin-block-end: 0; }

.message.assistant aside.assistant-alert-conclusion {
  color: #b794f6;
  background: rgba(183, 148, 246, 0.08);
}
.message.assistant aside.assistant-alert-caution {
  color: #f6ad55;
  background: rgba(246, 173, 85, 0.08);
}
.message.assistant aside.assistant-alert-tradeoff {
  color: #76e4f7;
  background: rgba(118, 228, 247, 0.07);
}
.message.assistant aside.assistant-alert-info {
  color: #a0aec0;
  background: transparent;
}
