/* T25-18: v24 B, a target list beside the shared wide panel. */
.rt-assessment { color: var(--ds-text); }
.rt-assessment .rt-toolbar { display: flex; align-items: center; justify-content: flex-end; gap: 16px; margin-bottom: 20px; }
.rt-assessment table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.rt-assessment th { color: var(--ds-text-3); font-size: var(--ds-fs-xs); font-weight: 500; text-align: left; }
.rt-assessment th, .rt-assessment td { padding: 12px 10px; border-bottom: 1px solid var(--ds-line); height: 46px; }
.rt-assessment td { vertical-align: middle; }
.rt-assessment th:first-child { width: 34%; }
.rt-assessment td .rt-name { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rt-assessment .rt-sub { display: block; color: var(--ds-text-3); margin-top: 4px; font-size: var(--ds-fs-xs); }
.rt-assessment tr[aria-selected="true"] { background: var(--ds-accent-soft); }
.rt-assessment .rt-pages { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 0; }
.rt-assessment-panel { font-size: var(--ds-fs-sm); }
.rt-assessment-panel .rt-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; list-style: none; margin: 0 0 24px; padding: 0; }
.rt-assessment-panel .rt-steps li { color: var(--ds-text-3); border-top: 2px solid var(--ds-line); padding-top: 8px; font-size: var(--ds-fs-xs); }
.rt-assessment-panel .rt-steps li[aria-current="step"] { color: var(--ds-accent-text); border-color: var(--ds-accent); }
.rt-assessment-panel .rt-mode { display: flex; margin-bottom: 12px; }
.rt-assessment-panel .rt-mode button { flex: 1; min-height: 38px; border: 1px solid var(--ds-line-strong); background: var(--ds-surface); color: var(--ds-text-2); }
.rt-assessment-panel .rt-mode button:first-child { border-radius: var(--ds-radius-s) 0 0 var(--ds-radius-s); }
.rt-assessment-panel .rt-mode button:last-child { border-radius: 0 var(--ds-radius-s) var(--ds-radius-s) 0; }
.rt-assessment-panel .rt-mode button[aria-pressed="true"] { background: var(--ds-accent-soft); color: var(--ds-accent-text); border-color: var(--ds-accent); }
.rt-assessment-panel h3 { font-size: var(--ds-fs-lg); margin: 22px 0 12px; }
.rt-assessment-panel .rt-kv { display: grid; grid-template-columns: minmax(100px, 38%) 1fr; gap: 12px 16px; margin: 16px 0; }
.rt-assessment-panel .rt-kv dt { color: var(--ds-text-3); }
.rt-assessment-panel .rt-kv dd { margin: 0; overflow-wrap: anywhere; }
.rt-assessment-panel .rt-tests { list-style: none; padding: 0; margin: 16px 0; }
.rt-assessment-panel .rt-tests li { padding: 12px 0; border-bottom: 1px solid var(--ds-line); }
.rt-assessment-panel .rt-test-row { display: flex; align-items: flex-start; gap: 10px; }
.rt-assessment-panel .rt-test-row label { flex: 1; overflow-wrap: anywhere; }
.rt-assessment-panel .rt-sub { display: block; color: var(--ds-text-3); margin-top: 5px; font-size: var(--ds-fs-xs); }
.rt-assessment-panel .rt-actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--ds-line); }
.rt-assessment-panel .rt-consent { display: flex; gap: 10px; align-items: flex-start; margin-top: 22px; line-height: 1.6; }
.rt-assessment-panel .rt-consent input { margin-top: 5px; }
.rt-assessment-panel .rt-bounds input, .rt-assessment-panel select { width: 100%; max-width: 240px; min-height: 36px; border: 1px solid var(--ds-line-strong); border-radius: var(--ds-radius-s); background: var(--ds-surface); color: var(--ds-text); padding: 6px 10px; font: inherit; }
.rt-assessment-panel .rt-bound { margin-bottom: 14px; }
.rt-assessment-panel .rt-bounds details { margin-bottom: 16px; }
.rt-assessment-panel .rt-bounds summary { cursor: pointer; margin-bottom: 16px; color: var(--ds-text-2); }
.rt-assessment-panel .rt-bound label { display: block; margin-bottom: 7px; color: var(--ds-text-2); }
.rt-assessment-panel .rt-cost { border-top: 1px solid var(--ds-line); padding: 14px 0; }
.rt-assessment-panel .rt-cost strong { font-size: var(--ds-fs-xl); font-variant-numeric: tabular-nums; }
.rt-assessment-panel .rt-muted { color: var(--ds-text-3); }
/* T25-23: a job's 수동·외부 검증 in this panel, at most 500 wide: the list keeps what the panel's own narrow rule keeps
   (the outcome and the validity are in the item's detail). */
.rt-assessment-panel .rt-manual li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.rt-assessment-panel .rt-manual code { min-width: 0; overflow-wrap: anywhere; }
.rt-assessment-panel .rt-manual-host { flex-basis: 100%; min-width: 0; margin-top: 4px; }
/* A target's 지난 실행: the run on the left, its open button on the right. */
.rt-assessment-panel .rt-runs li { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rt-manual-host .rtm-table th:nth-child(5), .rt-manual-host .rtm-table td:nth-child(5),
.rt-manual-host .rtm-table th:nth-child(6), .rt-manual-host .rtm-table td:nth-child(6) { display: none; }
.rt-manual-host .rtm-table td { overflow-wrap: anywhere; }
.rt-manual-host .rtm-detail, .rt-manual-host .rtm-step { padding: var(--ds-space-3); }
.rt-manual-host .rtm-boxes label { display: inline-flex; align-items: center; gap: 6px; }
.rt-manual-host .rtm-boxes input { flex: none; width: 16px; height: 16px; margin: 0; padding: 0; }
:is(.rt-assessment, .rt-assessment-panel) .rt-status { display: inline-flex; align-items: center; gap: 6px; }
:is(.rt-assessment, .rt-assessment-panel) .rt-status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--ds-neutral); }
:is(.rt-assessment, .rt-assessment-panel) .rt-status[data-state="ready"]::before { background: var(--ds-ok); }
:is(.rt-assessment, .rt-assessment-panel) .rt-status[data-state="execution_error"]::before { background: var(--ds-danger); }
@media (max-width: 640px) {
  .rt-assessment .rt-owner-column { display: none; }
  .rt-assessment th:first-child { width: 46%; }
  .rt-assessment-panel .rt-steps { gap: 5px; }
}

:is(.rt-assessment, .rt-assessment-panel) .rt-status[data-state="blocked"]::before { background: var(--ds-blocked); }
:is(.rt-assessment, .rt-assessment-panel) .rt-status[data-state="partially_ready"]::before { background: var(--ds-caution); }
/* The preparation card's retry stands at its start under the details, sized to its words. */
[data-rt-preparation]>.rt-prep-refresh{align-self:flex-start}
