.observability-shell { width: min(1500px, calc(100% - 44px)); margin: 0 auto; padding: 30px 0 90px; }
.query-bar { display: grid; grid-template-columns: minmax(220px, 1.35fr) minmax(220px, 1.1fr) minmax(190px, .9fr) minmax(170px, .8fr) auto; align-items: end; gap: 14px; padding: 18px; background: var(--surface); border: 1px solid var(--line); border-radius: 16px; }
.query-bar label { margin: 0; }
.label-note { color: var(--muted); font-size: .7rem; font-weight: 400; }
.input-error { display: block; min-height: 1.1em; color: var(--danger); font-size: .72rem; }
code { color: var(--green-bright); }
.investigator-heading { display: flex; justify-content: space-between; gap: 16px; align-items: end; margin: 30px 0 18px; }
.investigator-heading h2 { margin-bottom: 0; }
.job-cards { display: flex; gap: 10px; overflow-x: auto; margin-bottom: 16px; }
.job-card { min-width: 270px; padding: 13px; color: inherit; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; }
.job-card strong, .job-card span { display: block; }
.job-card span { margin-top: 6px; color: var(--muted); font-size: .78rem; }
.metric-grid { display: grid; grid-template-columns: repeat(6, minmax(120px, 1fr)); gap: 10px; margin-bottom: 16px; }
.metric { padding: 16px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; }
.metric strong { display: block; margin-top: 6px; color: var(--green-bright); font-size: 1.25rem; }
.investigator-panel { margin-top: 16px; padding: 18px; background: var(--surface); border: 1px solid var(--line); border-radius: 16px; }
.investigator-panel h3 { margin-bottom: 0; }
.timeline { display: grid; gap: 9px; margin-top: 18px; }
.timeline-row { display: grid; grid-template-columns: 250px minmax(300px, 1fr); gap: 12px; align-items: center; }
.timeline-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #cfe4d6; font-size: .78rem; }
.timeline-track { position: relative; height: 25px; overflow: hidden; background: #020604; border: 1px solid #1d3829; border-radius: 7px; }
.timeline-bar { position: absolute; top: 4px; bottom: 4px; min-width: 3px; background: var(--green); border-radius: 5px; }
.timeline-bar.failed { background: var(--danger); }
.timeline-axis { margin: 8px 0 0 262px; color: var(--muted); font-size: .7rem; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: .78rem; }
th, td { padding: 10px 8px; border-bottom: 1px solid #183323; text-align: left; white-space: nowrap; }
th { color: var(--muted); font-size: .7rem; letter-spacing: .07em; text-transform: uppercase; }
td.error-cell, .failed-text { color: var(--danger); }
@media (max-width: 1100px) { .query-bar { grid-template-columns: 1fr 1fr; } .query-bar button { grid-column: 1 / -1; } }
@media (max-width: 850px) { .metric-grid { grid-template-columns: repeat(3, 1fr); } .timeline-row { grid-template-columns: 135px minmax(220px, 1fr); } .timeline-axis { margin-left: 147px; } }
@media (max-width: 520px) { .observability-shell { width: min(100% - 24px, 1500px); } .query-bar, .metric-grid { grid-template-columns: 1fr; } .timeline-row { grid-template-columns: 105px minmax(180px, 1fr); } .timeline-axis { margin-left: 117px; } }
