.research-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 0 4px 8px; color: var(--ink-soft); font-size: 12px; }
.research-controls label { display: inline-flex; align-items: center; gap: 6px; }
.research-controls select, .research-controls input { color: var(--ink); background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 5px 8px; font: inherit; }
.research-controls details { flex: 1; min-width: 180px; }
.research-controls summary { cursor: pointer; width: fit-content; }
.research-controls .read-url-field { width: 100%; margin: 6px 0; }
.research-controls .read-url-note { display: block; }
#stream-status-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 auto 8px; max-width: 820px; font-size: 13px; color: var(--ink-soft); }
#stream-status-bar.hidden { display: none; }
#stop-answer { color: var(--ink); background: var(--surface); border: 1px solid var(--line); border-radius: 9px; padding: 7px 13px; font: inherit; cursor: pointer; }
#stop-answer:disabled { opacity: .65; cursor: wait; }
.answer-state { font-size: 12px; color: var(--ink-soft); padding-top: 10px; }
.answer-state[data-state="interrupted"], .answer-state[data-state="truncated"], .answer-state[data-state="failed"] { color: var(--danger); }
.continue-answer { font: inherit; font-size: 13px; border: 1px solid var(--line); color: var(--ink); border-radius: 8px; background: var(--surface); padding: 7px 11px; margin-top: 9px; cursor: pointer; }
.continue-answer:disabled { opacity: .5; cursor: default; }
.msg.assistant.streaming { min-height: 40px; }
@media (max-width: 600px) { .research-controls { gap: 6px; } .research-controls input { font-size: 16px; } }
