/* Ответ ИИ-помощника: потоковый вывод и безопасный markdown. */
.assistant-live { margin-top: 14px; padding: 14px 16px; border: 1px solid var(--line-200); border-radius: 10px; background: var(--paper); }
.assistant-live[hidden] { display: none; }
.assistant-live__status { margin-bottom: 10px; color: var(--graphite-500); font-size: var(--step-13); }
.assistant-live__status.is-ok { color: var(--ok-700); }
.assistant-live__status.is-error { color: var(--danger-700); }
.assistant-live__sources { margin-top: 14px; padding-top: 10px; border-top: 1px solid var(--line-100); font-size: var(--step-13); }
.assistant-live__sources b { display: block; margin-bottom: 5px; }
.assistant-live__sources ol { margin: 0; padding-left: 20px; }
.assistant-live__sources li { margin: 4px 0; }
.assistant-live__actions { margin-top: 12px; }
.assistant-answer { font-size: var(--step-15); line-height: 1.65; color: var(--graphite-800); overflow-wrap: anywhere; }
.assistant-answer > :first-child { margin-top: 0; }
.assistant-answer > :last-child { margin-bottom: 0; }
.assistant-answer p { margin: 0 0 10px; }
.assistant-answer h3, .assistant-answer h4 { margin: 16px 0 7px; font-family: var(--font-display); font-size: var(--step-20); line-height: 1.1; color: var(--graphite-900); }
.assistant-answer ul, .assistant-answer ol { margin: 0 0 11px; padding-left: 22px; }
.assistant-answer li { margin: 4px 0; }
.assistant-answer blockquote { margin: 0 0 11px; padding: 8px 12px; border-left: 3px solid var(--lime-500); background: var(--lime-050); color: var(--graphite-700); }
.assistant-answer code { padding: 1px 5px; border-radius: 4px; background: #f1f2ec; font-family: var(--font-mono); font-size: .88em; }
.assistant-answer a { color: var(--graphite-900); text-decoration: underline; text-decoration-color: var(--lime-500); text-underline-offset: 2px; }
.assistant-answer a:hover { text-decoration-color: var(--graphite-900); }
.assistant-cite { display: inline-grid; place-items: center; min-width: 18px; height: 18px; margin: 0 2px; padding: 0 3px; border-radius: 4px; background: var(--lime-500); color: var(--graphite-900) !important; font-size: 10px; font-weight: 700; text-decoration: none !important; vertical-align: baseline; }
