.sidebar-foot { margin-top: auto; }
.workspace { grid-template-columns: minmax(360px,.62fr) minmax(640px,1.38fr); min-height: 720px; }
.runs-panel { align-self: start; }
.detail-panel { min-height: 720px; }
.nav-item { font-size: 16px; }
.subtitle { font-size: 16px; line-height: 1.55; }
.panel-head h2 { font-size: 18px; }
.panel-head p { font-size: 14px; }
.metrics small { font-size: 13px; }
.metrics p { font-size: 13px; }
.run-item { padding-top: 16px; padding-bottom: 16px; }
.run-name { font-size: 15px; }
.run-class { font-size: 14px; }
.run-note { display: block; max-width: 370px; margin-top: 7px; color: #b9c9cd; font-size: 13px; line-height: 1.5; white-space: normal; }
.run-glyph { font-size: 10px; font-weight: 700; }
.badge,.run-time { font-size: 10px; }
.detail-title h2 { font-size: 22px; }
.detail-title p { max-width: 900px; font-size: 15px; line-height: 1.55; }
.detail-heading { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.case-label { color: var(--cyan); font: 11px Consolas,monospace; letter-spacing: .8px; text-transform: uppercase; }
.run-id { display: block; margin-top: 10px; color: #637a81; font: 10px Consolas,monospace; word-break: break-all; }
.detail-stats small { font-size: 12px; }
.detail-stats b { font-size: 17px; }
.tab { padding: 16px 18px; font-size: 14px; font-weight: 650; }
.evidence-card h3 { font-size: 13px; }
.chip { font-size: 13px; line-height: 1.45; }
.tab-body { max-height: 660px; min-height: 430px; padding: 22px 24px; }
.report-rendered { max-width: 960px; color: #d1dfe1; font-size: 16px; line-height: 1.75; }
.report-rendered h1,.report-rendered h2,.report-rendered h3 { color: #eef7f7; line-height: 1.25; }
.report-rendered h1 { margin: 0 0 20px; font-size: 24px; }
.report-rendered h2 { margin: 30px 0 12px; padding-bottom: 8px; border-bottom: 1px solid #23373e; font-size: 19px; }
.report-rendered h3 { margin: 23px 0 9px; font-size: 16px; }
.report-rendered p { margin: 8px 0; }
.report-rendered ul { margin: 8px 0 18px; padding-left: 24px; }
.report-rendered li { margin: 7px 0; padding-left: 3px; }
.report-rendered code { padding: 2px 5px; border: 1px solid #294049; background: #071116; color: #7fe7dc; font: 12px Consolas,monospace; overflow-wrap: anywhere; }
.code-review { height: 570px; overflow: auto; background: #071116; }
.code-review ol { min-width: max-content; margin: 0; padding: 18px 0 28px 64px; color: #60777e; font: 14px/1.72 Consolas,monospace; counter-reset: item; }
.code-review li { min-height: 20px; padding: 0 28px 0 14px; border-left: 1px solid #1b3037; }
.code-review li:hover { background: #102027; }
.code-review code { color: #c4d9d6; white-space: pre; }
.code-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.code-pane { min-width: 0; overflow: hidden; border: 1px solid #294047; background: #071116; }
.code-pane > header { display: flex; align-items: center; justify-content: space-between; min-height: 68px; padding: 12px 16px; border-bottom: 1px solid #294047; background: #0e1b21; }
.code-pane > header b { display: block; color: #edf8f7; font-size: 16px; }
.code-pane > header small,.code-pane > header span { color: #82999f; font-size: 12px; }
.code-pane.recovered { border-color: #24746c; box-shadow: inset 0 3px #20d5c2; }
.code-pane.recovered > header b { color: var(--cyan); }
.code-pane.original { opacity: .82; }
.code-missing { min-height: 300px; display: grid; place-items: center; padding: 30px; color: var(--muted); font-size: 14px; text-align: center; }
.drop-zone { cursor: pointer; transition: border-color .16s, background .16s; }
.drop-zone.dragging { border-color: var(--cyan); background: #102a2a; box-shadow: inset 0 0 24px #20d5c214; }
.upload-status { min-height: 20px; margin: 11px 0 0; font-size: 11px; color: var(--muted); }
.upload-status.success { color: var(--cyan); }
.upload-status.error { color: var(--red); }
.sample-list { padding: 8px 18px; }
.sample-row { display: grid; grid-template-columns: 42px minmax(260px,1fr) 90px 110px; gap: 14px; align-items: center; padding: 14px 8px; border-bottom: 1px solid var(--line); }
.sample-row b { display: block; font: 11px Consolas,monospace; color: #d6e3e5; }
.sample-row small { display: block; margin-top: 5px; font-size: 12px; color: var(--muted); }
.sample-status { width: max-content; padding: 4px 7px; border: 1px solid var(--line); color: var(--muted); font: 9px Consolas,monospace; font-style: normal; }
.sample-status.completed { color: var(--cyan); border-color: #28605d; }
.sample-status.running,.sample-status.queued { color: var(--amber); border-color: #66522b; }
.sample-status.failed,.sample-status.interrupted,.sample-status.cancelled { color: var(--red); border-color: #62404a; }
.queue-action { border: 1px solid #28605d; background: #102827; color: var(--cyan); padding: 9px 12px; font-size: 13px; cursor: pointer; }
.queue-action:hover { background: #163836; }
.queue-action:disabled { opacity: .5; cursor: wait; }
.queue-wait { color: var(--muted); font-size: 10px; }
.summary-error { margin: 24px; padding: 18px; border: 1px solid #62404a; background: #24171c; }
.summary-error h3 { margin: 0 0 8px; color: var(--red); font-size: 13px; }
.summary-error p { color: #bd9da2; font: 10px/1.6 Consolas,monospace; word-break: break-word; }
.single-view { display: block; }
.wide-panel { min-height: 540px; }
.intel-list { padding: 8px 18px; }
.intel-row { display: grid; grid-template-columns: minmax(260px,.65fr) 1fr; gap: 24px; align-items: center; padding: 17px 8px; border-bottom: 1px solid var(--line); font: 13px/1.7 Consolas,monospace; color: var(--muted); }
.intel-row .chip { width: max-content; max-width: 100%; }
.tool-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; padding: 18px; }
.tool-card { display: flex; align-items: center; gap: 12px; min-height: 72px; padding: 13px; border: 1px solid var(--line); background: #0a151a; }
.tool-card > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid #28605d; color: var(--cyan); }
.tool-card b { display: block; font: 14px Consolas,monospace; color: #c8d8da; }
.tool-card small { display: block; margin-top: 6px; color: var(--muted); font-size: 12px; }
@media (max-width: 1450px) { .code-comparison { grid-template-columns: 1fr; } .code-review { height: 460px; } }
@media (max-width: 1200px) { .tool-grid { grid-template-columns: repeat(2,1fr); } }
