.retrieval-metrics { grid-template-columns: repeat(5, 1fr); }
.retrieval-tabs { margin-bottom: 14px; }
.retrieval-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .7fr); gap: 14px; align-items: start; }
.retrieval-panel-head { gap: 12px; }
.retrieval-filter { display: flex; align-items: center; gap: 7px; color: #7b8596; font-size: 10px; }
.retrieval-filter select { min-height: 30px; padding: 0 28px 0 9px; border: 1px solid #d8dee8; border-radius: 6px; background: #fff; color: #47546a; font-size: 10px; }
.retrieval-trace-head, .retrieval-trace-row { display: grid; grid-template-columns: minmax(240px, 1fr) 180px 70px 92px 48px; gap: 9px; align-items: center; padding: 0 14px; }
.retrieval-trace-head { min-height: 36px; background: #f7f8fa; color: #7b8494; font-size: 10px; font-weight: 700; }
.retrieval-trace-row { min-height: 68px; border-bottom: 1px solid #edf0f4; color: #596579; font-size: 10px; }
.retrieval-trace-row:last-child { border-bottom: 0; }
.retrieval-trace-row:hover { background: #fafbfc; }
.retrieval-trace-main strong, .retrieval-trace-main small { display: block; }
.retrieval-trace-main strong { overflow: hidden; color: #233047; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.retrieval-trace-main small { margin-top: 4px; color: #7e8999; font-size: 9px; }
.retrieval-path { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.retrieval-path span { padding: 3px 5px; border-radius: 4px; background: #f0f3f8; color: #5d687a; font-size: 9px; }
.retrieval-path i { color: #a1a9b6; font-style: normal; }
.retrieval-risk-row { padding: 13px 14px; border-bottom: 1px solid #edf0f4; }
.retrieval-risk-row:last-child { border-bottom: 0; }
.retrieval-risk-row__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.retrieval-risk-row strong { color: #2d394e; font-size: 10px; }
.retrieval-risk-row p { margin: 6px 0 0; color: #788294; font-size: 9px; line-height: 1.5; }
.retrieval-validation-layout { display: grid; grid-template-columns: 330px minmax(0, 1fr); gap: 14px; align-items: start; }
.retrieval-case { width: 100%; padding: 12px 14px; border: 0; border-bottom: 1px solid #edf0f4; background: #fff; color: #344057; text-align: left; cursor: pointer; }
.retrieval-case:hover { background: #f8f9fb; }
.retrieval-case.active { border-left: 3px solid #0078b8; background: #e8f4f8; }
.retrieval-case strong, .retrieval-case small { display: block; }
.retrieval-case strong { font-size: 11px; }
.retrieval-case small { margin-top: 4px; color: #7b8596; font-size: 9px; }
.retrieval-run-status { display: flex; align-items: center; gap: 12px; padding: 14px; border-bottom: 1px solid #edf0f4; }
.retrieval-run-status p { margin: 0; color: #6f7a8d; font-size: 10px; line-height: 1.5; }
.retrieval-validation-step { display: grid; grid-template-columns: 24px minmax(0, 1fr) 78px; gap: 9px; align-items: center; min-height: 54px; padding: 8px 14px; border-bottom: 1px solid #edf0f4; }
.retrieval-validation-step > span:first-child { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid #d6dde9; border-radius: 50%; color: #788397; font-size: 9px; font-weight: 800; }
.retrieval-validation-step strong, .retrieval-validation-step small { display: block; }
.retrieval-validation-step strong { color: #344057; font-size: 10px; }
.retrieval-validation-step small { margin-top: 3px; color: #818b9b; font-size: 9px; }
.retrieval-validation-step.running { background: #f5f7fd; }
.retrieval-validation-step.done > span:first-child { border-color: #0f766e; background: #e9f7f4; color: #0f766e; }
.retrieval-issue-head, .retrieval-issue-row { display: grid; grid-template-columns: minmax(300px, 1fr) 180px 80px 140px 180px; gap: 10px; align-items: center; padding: 0 14px; }
.retrieval-issue-head { min-height: 36px; background: #f7f8fa; color: #7b8494; font-size: 10px; font-weight: 700; }
.retrieval-issue-row { min-height: 70px; border-bottom: 1px solid #edf0f4; color: #5b6678; font-size: 10px; }
.retrieval-issue-row strong, .retrieval-issue-row small { display: block; }
.retrieval-issue-row strong { color: #29364b; font-size: 11px; }
.retrieval-issue-row small { margin-top: 4px; color: #808a99; font-size: 9px; }
.retrieval-issue-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.retrieval-test-head, .retrieval-test-row { display: grid; grid-template-columns: minmax(260px, 1fr) 110px 110px 150px 110px 64px; gap: 10px; align-items: center; padding: 0 14px; }
.retrieval-test-head { min-height: 36px; background: #f7f8fa; color: #7b8494; font-size: 10px; font-weight: 700; }
.retrieval-test-row { min-height: 62px; border-bottom: 1px solid #edf0f4; color: #5c6779; font-size: 10px; }
.retrieval-test-row strong { color: #2d394e; font-size: 10px; }
.retrieval-drawer { width: min(520px, 94vw); }
.retrieval-drawer__eyebrow { margin-bottom: 3px; color: #0078b8; font-size: 9px; font-weight: 800; }
.retrieval-detail-block { margin-bottom: 14px; }
.retrieval-detail-block h3 { margin: 0 0 7px; color: #2a364b; font-size: 11px; }
.retrieval-detail-block p { margin: 0; color: #667286; font-size: 10px; line-height: 1.6; }
.retrieval-detail-line { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 9px; padding: 9px 0; border-bottom: 1px solid #edf0f4; }
.retrieval-detail-line > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 5px; background: #e8f4f8; color: #0078b8; font-size: 9px; font-weight: 800; }
.retrieval-detail-line strong, .retrieval-detail-line small { display: block; }
.retrieval-detail-line strong { color: #344057; font-size: 10px; }
.retrieval-detail-line small { margin-top: 3px; color: #808a9a; font-size: 9px; }

@media (max-width: 1180px) {
  .retrieval-metrics { grid-template-columns: repeat(3, 1fr); }
  .retrieval-layout, .retrieval-validation-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .retrieval-metrics { grid-template-columns: 1fr; }
  .retrieval-trace-head, .retrieval-issue-head, .retrieval-test-head { display: none; }
  .retrieval-trace-row { grid-template-columns: minmax(0, 1fr) 60px; padding: 10px 12px; }
  .retrieval-trace-row > :nth-child(2), .retrieval-trace-row > :nth-child(3), .retrieval-trace-row > :nth-child(4) { display: none; }
  .retrieval-issue-row { grid-template-columns: 1fr; padding: 12px; }
  .retrieval-test-row { grid-template-columns: 1fr 90px 56px; padding: 10px 12px; }
  .retrieval-test-row > :nth-child(2), .retrieval-test-row > :nth-child(3), .retrieval-test-row > :nth-child(4) { display: none; }
}
