.research-workspace { min-width: 0; }
.research-workspace-layout { display: grid; grid-template-columns: minmax(260px,360px) minmax(0,1fr); align-items: start; gap: 22px; }
.research-stack { display: grid; gap: 22px; }
.research-stack label { display: grid; gap: 7px; font-weight: 500; }
.research-boundary { padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: #fafbf8; }
.research-run-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.research-run-bar .btn { margin-left: auto; }
.research-results-layout { display: grid; grid-template-columns: minmax(200px,280px) minmax(0,1fr); align-items: start; gap: 22px; margin: 20px 0; }
.research-selected,.research-company,.research-candidates { min-width: 0; }
.research-company .panel-head { align-items: start; flex-wrap: wrap; }
.research-company .panel-head h2 { font-size: 21px; }
.research-company .research-stack section { display: grid; gap: 12px; }
.research-candidate { display: grid; gap: 6px; width: 100%; text-align: left; padding: 17px 18px; border: 0; border-bottom: 1px solid var(--line); background: var(--surface); overflow-wrap: anywhere; }
.research-candidate > span { color: var(--muted); font-size: 12px; }
.research-candidate.is-selected { background: #f0f7eb; box-shadow: inset 3px 0 var(--accent); }
.research-candidate:hover { background: #f6f8f2; }
.research-candidate > .research-ready { color: var(--green); }
.research-history { padding: 0; margin: 0; list-style: none; }
.research-history li + li { border-top: 1px solid var(--line); }
.research-history a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px 12px; padding: 17px 0; overflow-wrap: anywhere; }
.research-history .small { grid-column: 1 / -1; }
.research-contact-list,.research-statements,.research-evidence,.research-unknowns { padding-left: 20px; margin: 0; }
.research-contact-list { display: grid; gap: 12px; list-style: none; padding: 0; }
.research-contact-list li { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: baseline; overflow-wrap: anywhere; }
.research-source-link { color: var(--green); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.research-prose { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; }
.research-draft { padding: 19px; background: var(--canvas); border-radius: 10px; }
.research-draft-subject { font-weight: 600; }
.research-evidence { display: grid; gap: 15px; margin-top: 12px; font-size: 13px; }
.research-evidence blockquote { margin: 7px 0; padding: 4px 12px; border-left: 2px solid var(--line); white-space: pre-wrap; overflow-wrap: anywhere; color: var(--muted); }
.research-statements { display: grid; gap: 20px; }
.research-receipts summary,.research-company summary { cursor: pointer; padding: 15px 0; font-weight: 500; }
.research-receipts summary { padding: 18px 22px; }
.research-receipts article + article { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 18px; }
.research-source-meta { display: grid; gap: 7px; margin: 12px 0 0; }
.research-source-meta > div { display: grid; grid-template-columns: minmax(120px,180px) minmax(0,1fr); gap: 12px; }
.research-source-meta dt { color: var(--muted); }
.research-source-meta dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 1100px) { .research-workspace-layout { grid-template-columns: minmax(250px,310px) minmax(0,1fr); gap: 16px; } .research-results-layout { grid-template-columns: minmax(180px,230px) minmax(0,1fr); gap: 16px; } }
@media (max-width: 900px) { .research-workspace-layout,.research-results-layout { grid-template-columns: minmax(0,1fr); } .research-candidate-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 540px) { .research-history a { grid-template-columns: minmax(0,1fr); } .research-history .pill { justify-self: start; } .research-candidate-list { grid-template-columns: minmax(0,1fr); } .research-run-bar .btn { margin-left: 0; } .research-source-meta > div { grid-template-columns: minmax(0,1fr); gap: 2px; } }
