.diagnosis-view { padding: 20px; background: var(--panel, #fff); min-width: 0; }
.diagnosis-view h2 { font-size: 22px; margin: 0 0 20px; }
.diagnosis-view h3 { font-size: 18px; margin: 0 0 10px; }
.diagnosis-search { max-width: 680px; }
.diagnosis-search label { display: block; margin-bottom: 8px; }
.diagnosis-search > div { display: flex; gap: 10px; }
.diagnosis-search input { flex: 1; min-width: 0; width: auto; }
.diagnosis-search button { flex: 0 0 76px; }
.diagnosis-view button { border-radius: 6px; }
.diagnosis-matches { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 8px; margin: 16px 0; }
.diagnosis-matches button { text-align: left; color: var(--text); background: var(--panel); border: 1px solid var(--border, #dce4ec); min-height: 46px; white-space: normal; }
.diagnosis-matches button[aria-pressed="true"] { color: #fff; background: #176e66; }
.diagnosis-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--border, #dce4ec); padding: 20px 0 16px; }
.diagnosis-heading h3 { margin: 0; overflow-wrap: anywhere; }
.diagnosis-meta { color: var(--muted); font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; }
.diagnosis-direction { padding: 18px 0; border-bottom: 1px solid var(--border, #dce4ec); }
.diagnosis-direction h3 { color: var(--text); font-size: 24px; }
.diagnosis-direction[data-action="REDUCE"] h3 { color: #d44040; }
.diagnosis-expiry { color: #a16a10; font-weight: 600; }
.diagnosis-expired .diagnosis-direction { opacity: .6; }
.diagnosis-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 16px; margin: 12px 0; }
.diagnosis-grid div { padding: 12px 0; border-bottom: 1px solid var(--border, #dce4ec); min-width: 0; }
.diagnosis-grid dt { color: var(--muted); font-size: 13px; margin-bottom: 5px; }
.diagnosis-grid dd { margin: 0; font-size: 17px; font-weight: 600; overflow-wrap: anywhere; }
.diagnosis-chart { width: 100%; height: 220px; display: block; margin-top: 12px; }
.diagnosis-conditions { padding: 12px 0 12px 20px; }
.diagnosis-conditions li { margin: 10px 0; line-height: 1.7; }
.diagnosis-view details { border-top: 1px solid var(--border, #dce4ec); padding: 16px 0; }
.diagnosis-view details summary { cursor: pointer; }
@media (max-width: 600px) { .diagnosis-view { padding: 14px; } .diagnosis-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .diagnosis-heading { align-items: flex-start; } }
