/* Modern light. Live Floor context panel: station status, baselines, recommendation, evidence, staffing, audit. */
.context-panel { flex: 0 1 365px; padding: 26px 24px; background: var(--paper-raised); }.context-panel hr { margin: 24px 0; border: 0; border-top: 1px solid var(--rule); }.issue-summary { margin-top: 17px; }.issue-id { color: var(--ink-3); font-size: .8rem; font-weight: 700; letter-spacing: .02em; }.priority { border-radius: var(--radius-pill); padding: 3px 10px; font-size: .72rem; font-weight: 700; }.priority-high { background: var(--danger-wash); color: var(--danger-ink); }.issue-summary h3 { margin: 11px 0 14px; font-size: 1.3rem; }.issue-summary dl { margin: 0; }.issue-summary dl div { display: flex; justify-content: space-between; padding: 8px 0; border-top: 1px solid var(--rule); font-size: .83rem; }.issue-summary dt { color: var(--ink-3); }.issue-summary dd { margin: 0; font-weight: 700; }.station-issue-history { margin-top: 13px; padding-top: 12px; border-top: 1px solid var(--rule); }.station-issue-history summary, .station-issue-history-earlier summary { cursor: pointer; color: var(--ink); font-size: .78rem; font-weight: 800; }.station-issue-history-earlier { margin-top: 8px; }.station-issue-history-earlier summary { color: var(--ink-3); font-size: .72rem; }.station-history-scroll { display: grid; gap: 6px; max-height: 176px; margin-top: 8px; overflow-y: auto; overscroll-behavior: contain; }.station-history-row { display: grid; width: 100%; gap: 3px; padding: 8px; color: var(--ink); border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper-raised); text-align: left; font: inherit; cursor: pointer; box-shadow: none; }.station-history-row:hover { border-color: var(--accent); background: var(--paper-sunk); }.station-history-row:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }.station-history-row span { overflow: hidden; color: var(--ink-3); font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }.baseline-panel { margin-top: 20px; }.baseline-card { display: grid; gap: 4px; margin: 9px 0; padding: 10px; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper-raised); color: var(--ink-2); font-size: .76rem; }.baseline-card strong { color: var(--ink); font-size: .9rem; }.baseline-card small { color: var(--ink-3); }.workflow-prompt { margin: 13px 0 0; color: var(--ink-3); font-size: .78rem; line-height: 1.4; }.sidebar-tabs { display:flex; gap:2px; margin-bottom:12px; padding:3px; border-radius:var(--radius-pill); background:var(--paper-sunk); }.sidebar-tabs button { flex:1; padding:6px 10px; border-color:transparent; border-radius:var(--radius-pill); background:transparent; box-shadow:none; color:var(--ink-2); font-size:.78rem; }.sidebar-tabs button[aria-selected="true"] { border-color:var(--rule); background:var(--paper-raised); box-shadow:var(--shadow-sm); color:var(--accent-ink); }.responder-list, .station-list { display: grid; gap: 7px; }.responder-row, .station-row { align-items: center; gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--rule); font-size: .86rem; }.responder-row, .station-row { display:flex; width:100%; text-align:left; color:inherit; }.station-row { background:transparent; border-width:0; border-radius: var(--radius-sm); padding:8px 8px; font-weight:inherit; box-shadow:none; }.station-row.selected { color:var(--ink); }.station-row .station-status { margin-left:auto; color:var(--ink-3); font-size:.7rem; font-weight:600; }.station-issues { color:var(--danger-ink); font-size:.7rem; }.healthy-stations { margin-top:7px; }.healthy-stations summary { cursor:pointer; color:var(--ink-3); font-size:.75rem; font-weight:750; }.responder-status { margin-left: auto; color: var(--ink-3); font-size: .7rem; font-weight: 600; }.off-shift-personnel { margin-top: 7px; }.off-shift-personnel summary { cursor: pointer; color: var(--ink-3); font-size: .75rem; font-weight: 750; }.off-shift-list { display: grid; gap: 7px; margin-top: 7px; }.floor-note { display: grid; gap: 5px; margin-top: 27px; padding: 15px; border: 1px solid var(--rule); border-left: 3px solid var(--accent); border-radius: var(--radius); background: var(--accent-wash); color: var(--ink-2); font-size: .82rem; line-height: 1.45; }.floor-note strong { color: var(--ink); }.load-error { padding: 30px; color: var(--danger-ink); }
/* Sidebar rows are buttons for keyboard access, but must not inherit the global
   button treatment until the operator deliberately hovers or selects one. */
.responder-row { padding: 8px; background: transparent; border-width: 0; border-radius: var(--radius-sm); font-weight: inherit; box-shadow: none; }
.responder-row:hover { background: var(--paper-sunk); color: var(--ink); }
.responder-row.selected { background: var(--accent-wash); color: var(--ink); }
@media (max-width: 900px) { .dashboard { display: block; }.floor-section { border-right: 0; border-bottom: 1px solid var(--rule); }.floor { height: 460px; }.context-panel { max-width: none; }.topbar { align-items: flex-start; gap: 20px; flex-direction: column; } }
@media (max-width: 550px) { .app-shell { padding: 16px; }.scenario-controls { width: 100%; justify-content: space-between; }.section-heading { align-items: flex-start; gap: 12px; flex-direction: column; }.legend { flex-wrap: wrap; }.floor-section { padding: 16px; }.floor { height: 400px; }.node-label { font-size: .62rem; }.node-status { font-size: .52rem; } }

.recommend-button { width: 100%; margin-top: 12px; }
.recommendation-panel { margin-top: 18px; }
.recommendation-card { padding: 16px; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper-raised); box-shadow: var(--shadow-sm); }
.pending-state { border-color: var(--accent); }
.recommendation-card h3 { margin: 4px 0 9px; font-size: 1.08rem; }
.recommendation-card p { font-size: .79rem; line-height: 1.45; }
.rationale { color: var(--ink); }.tradeoff { padding: 9px 11px; border-left: 3px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--paper-raised); color: var(--ink-2); }.tradeoff span, .uncertainty { color: var(--ink-3); }
.evidence-scroll { overflow-x: auto; margin-top: 13px; }.evidence-table { width: 100%; min-width: 475px; border-collapse: collapse; font-size: .69rem; }.evidence-table caption { padding-bottom: 8px; text-align: left; color: var(--ink-2); font-weight: 800; }.evidence-table th, .evidence-table td { padding: 7px 5px; border-top: 1px solid var(--rule); text-align: left; vertical-align: top; }.evidence-table th { color: var(--ink-3); font-size: .66rem; font-weight: 600; }.recommended-row { background: var(--paper-sunk); }
.evidence-strength { font-weight: 700; }.evidence-strength.strong { color: var(--ok-ink); }.evidence-strength.moderate { color: var(--warn-ink); }.evidence-strength.weak { color: var(--danger-ink); }.evidence-strength.none { color: var(--ink-3); }.decision-controls { display: grid; gap: 8px; margin-top: 14px; }.secondary-button { border-color: var(--rule-strong); background: transparent; }.unavailable-state { border-color: var(--rule); }
.override-control { display: grid; gap: 5px; color: var(--ink-2); font-size: .78rem; font-weight: 700; }.override-control select { width: 100%; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); padding: 9px; background: var(--paper-raised); color: var(--ink); font: inherit; }.assignment-success { border-color: var(--ok); }
.audit-card { display: grid; gap: 15px; }.audit-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }.audit-heading button { flex: 0 0 auto; padding: 7px 9px; font-size: .7rem; }.audit-section { padding-top: 13px; border-top: 1px solid var(--rule); }.audit-section:first-of-type { padding-top: 0; border-top: 0; }.audit-section h4 { margin: 0 0 8px; color: var(--ink); font-size: .85rem; }.audit-section p { margin-bottom: 9px; }.audit-list { display: grid; gap: 7px; margin: 9px 0 0; padding-left: 20px; }.audit-list li { padding: 8px; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper-raised); font-size: .74rem; }.audit-list li > strong, .audit-list li > span { display: block; }.audit-list li > span { margin-top: 3px; color: var(--ink-3); }.audit-list li p { margin: 7px 0 0; }
.event-detail-summary { display: grid; gap: 8px; padding: 12px; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper-raised); }.event-detail-summary h3, .event-detail-summary p { margin: 0; }.event-detail-summary dl { margin: 2px 0 0; }.audit-refresh { display: inline-block; margin-top: 7px; color: var(--info); font-size: .7rem; }.audit-card[aria-busy="true"] { border-color: var(--rule); }
.staffing-panel { margin-top: 14px; padding-top: 13px; border-top: 1px solid var(--rule); }.staffing-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }.staffing-heading h4 { margin: 0; }.staffing-heading button { padding: 7px 9px; font-size: .72rem; }.roster-list { display: grid; gap: 7px; margin: 10px 0 0; padding: 0; list-style: none; }.roster-list li { display: grid; grid-template-columns: 1fr auto; gap: 3px 8px; align-items: center; padding: 9px; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper-raised); }.roster-list li span { color: var(--ink-3); font-size: .72rem; }.roster-list li button { grid-column: 2; grid-row: 1 / span 2; padding: 6px 8px; font-size: .68rem; }.transfer-control { display: grid; gap: 7px; margin-top: 12px; padding: 10px; border: 1px dashed var(--rule); border-radius: var(--radius); }.transfer-control label { display: grid; gap: 5px; color: var(--ink-2); font-size: .74rem; font-weight: 700; }.transfer-control select { width: 100%; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); padding: 8px; background: var(--paper-raised); color: var(--ink); font: inherit; }.transfer-control p { margin: 0; color: var(--ink-3); font-size: .7rem; }
/* Data reads as drawing annotation: IDs and figures are monospaced. */
.issue-id, .evidence-table td, .evidence-table th, .issue-summary dd, .roster-list li span, .responder-status, .station-status { font-family: var(--font-mono); font-variant-numeric: tabular-nums; }
.issue-id { color: var(--accent-ink); font-weight: 600; }
.recommendation-card, .baseline-card, .event-detail-summary, .audit-list li, .roster-list li { background: var(--paper-raised); }
.tradeoff { border-left-color: var(--accent); background: var(--paper-sunk); }

.fix-panel { min-width: 0; max-width: 100%; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--rule); overflow-wrap: anywhere; }
.fix-panel h3 { font-size: .9rem; }
.fix-panel p, .fix-panel summary { font-size: .75rem; line-height: 1.5; }
.fix-panel .fix-source { color: var(--ink-2); }
.fix-panel details { min-width: 0; max-width: 100%; }
.fix-panel .evidence-scroll { max-width: 100%; }
.fix-order { padding-left: 20px; display: grid; gap: 9px; }
.audit-card { min-width: 0; max-width: 100%; grid-template-columns: minmax(0, 1fr); }
.audit-section, .audit-heading, .audit-heading > div { min-width: 0; max-width: 100%; }
.audit-heading { flex-wrap: wrap; }
.audit-heading button { max-width: 100%; white-space: normal; }
.audit-section .evidence-scroll { min-width: 0; max-width: 100%; }

/* A calmer detail hierarchy: facts and actions precede supporting evidence. */
.context-panel > h2 { font-size: 1rem; font-weight: 600; color: var(--ink-2); }
.issue-summary > h3 { margin: 12px 0 6px; font-size: 1.25rem; letter-spacing: -.025em; }
.issue-summary > p { font-size: .84rem; line-height: 1.5; }
.issue-summary dl { margin: 14px 0; }
.issue-summary dl > div { padding: 9px 0; }
.fix-panel { padding-top: 14px; }
.context-panel details > summary { padding: 8px 0; font-size: .78rem; cursor: pointer; }
.context-panel .recommendation-card { border-radius: var(--radius-sm); box-shadow: none; }
