/* Scenario two — components v1's stylesheet does not already provide.
   Everything else is inherited from ../incident_roaming_bites/styles.css */

.phase-header .severity { white-space:nowrap; }

/* ---------------------------------------------------------- briefing */
.how-to-read .read-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:11px; margin:18px 0 14px; }
.how-to-read .read-grid div { padding:14px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.how-to-read .read-grid strong { display:block; margin-bottom:5px; color:var(--coral-dark); font-size:13px; }
.how-to-read .read-grid span { color:var(--muted); font-size:12px; line-height:1.45; }

/* ------------------------------------------------------------- seats */
.seat-picker { grid-template-columns:repeat(4,1fr); }
#seats .seat-card { --role-color:#2c8c82; --role-soft:#e7f6f2; min-height:330px; display:flex; flex-direction:column;
  align-items:stretch; gap:0; padding:10px; border:3px solid var(--role-color); border-radius:20px;
  background:linear-gradient(160deg,var(--role-soft),#fff 46%); box-shadow:0 9px 0 rgba(18,32,56,.06),0 16px 28px rgba(18,32,56,.08);
  position:relative; overflow:hidden; text-align:left; }
#seats .seat-card:hover:not(:disabled) { transform:translateY(-5px); }
#seats .seat-card.selected { padding:10px; border:3px solid #fff;
  background:linear-gradient(155deg,var(--role-color),color-mix(in srgb,var(--role-color) 58%,var(--navy)));
  box-shadow:0 0 0 5px var(--role-color),0 12px 0 rgba(18,32,56,.16); transform:translateY(-4px); }
#seats .seat-card .card-top { display:flex; justify-content:space-between; align-items:center; min-height:26px; padding:0 3px 7px; }
#seats .seat-card .card-type { color:var(--role-color); font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.09em; }
#seats .seat-card i { padding:4px 7px; border-radius:100px; background:var(--role-soft); color:var(--role-color);
  font-style:normal; font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
#seats .seat-card.selected .card-type { color:rgba(255,255,255,.84); }
#seats .seat-card.selected i { background:#fff; color:var(--role-color); }
#seats .seat-card .role-art { width:100%; height:96px; display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:4px; border-radius:13px; color:#fff; transform:none;
  background:radial-gradient(circle at 72% 25%,rgba(255,255,255,.5) 0 7px,transparent 8px),linear-gradient(145deg,var(--role-color),color-mix(in srgb,var(--role-color) 72%,#17233c));
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.28); }
#seats .seat-card.selected .role-art { background:rgba(255,255,255,.14); }
#seats .seat-card .role-art > span { font-size:40px; line-height:1; }
#seats .seat-card .role-art > small { color:rgba(255,255,255,.8); font-size:10px; letter-spacing:.18em; }
#seats .seat-card .card-name { margin:12px 4px 2px; color:var(--ink); font-size:16px; line-height:1.15; font-weight:900; letter-spacing:-.02em; }
#seats .seat-card .card-person { min-height:18px; margin:2px 4px 9px; color:var(--muted); font-size:11px; }
#seats .seat-card.selected .card-name { color:#fff; }
#seats .seat-card.selected .card-person { color:rgba(255,255,255,.82); }
#seats .seat-card .card-stats { margin-top:auto; }
#seats .seat-card .card-stats > span { display:block; padding:8px 9px; border-radius:10px; background:rgba(255,255,255,.82);
  border:1px solid color-mix(in srgb,var(--role-color) 26%,#dfe3e8); color:#3e4a5c; font-size:11px; line-height:1.35; }
#seats .seat-card .card-stats em { display:block; margin-bottom:3px; color:var(--role-color); font-size:8px;
  font-style:normal; font-weight:900; text-transform:uppercase; letter-spacing:.09em; }
#seats .seat-card.selected .card-stats > span { background:rgba(255,255,255,.13); border-color:rgba(255,255,255,.34); color:#fff; }
#seats .seat-card.selected .card-stats em { color:rgba(255,255,255,.76); }

#seats .seat-card.seat-support { --role-color:#c9537b; --role-soft:#fbe8ef; }
#seats .seat-card.seat-tns     { --role-color:#8d63b0; --role-soft:#f1eafa; }
#seats .seat-card.seat-eng     { --role-color:#477faf; --role-soft:#e8f2fb; }
#seats .seat-card.seat-po      { --role-color:#e66559; --role-soft:#ffebe5; }
#seats .seat-card.seat-sec     { --role-color:#b66d0e; --role-soft:#fff2d8; }
#seats .seat-card.seat-data    { --role-color:#23877c; --role-soft:#e4f5f1; }
#seats .seat-card.seat-legal   { --role-color:#5c6f8a; --role-soft:#eaeff5; }
#seats .seat-card.seat-exec    { --role-color:#1f6f5c; --role-soft:#e2f3ed; }

.team-chip.seat-support { background:#fbe8ef; color:#8e3455; }
.team-chip.seat-tns     { background:#f1eafa; color:#5d3f78; }
.team-chip.seat-eng     { background:#e8f2fb; color:#2f5c82; }
.team-chip.seat-po      { background:#ffebe5; color:#a54435; }
.team-chip.seat-sec     { background:#fff2d8; color:#8d5c0e; }
.team-chip.seat-data    { background:#e4f5f1; color:#17654e; }
.team-chip.seat-legal   { background:#eaeff5; color:#41506a; }
.team-chip.seat-exec    { background:#e2f3ed; color:#14503f; }

.team-chip.empty-seat { background:#f1f3f6; color:#8b95a5; border:1px dashed #c3cbd6; }

/* --------------------------------------------------------- evidence */
.transcript { padding:18px; display:grid; gap:12px; }
.transcript .turn { display:grid; grid-template-columns:150px 1fr; gap:14px; align-items:start; }
.transcript .turn b { color:var(--muted); font-size:11px; line-height:1.4; }
.transcript .turn p { margin:0; padding:11px 14px; border-radius:12px; font-size:13px; line-height:1.5; }
.transcript .turn.agent p { background:#eef1f5; }
.transcript .turn.caller p { background:#fff2ee; }

.page-capture { padding:18px; background:#eef1f5; }
.browser-chrome { display:flex; align-items:center; gap:9px; padding:9px 13px; border-radius:9px 9px 0 0;
  background:#dfe4ea; color:#46525f; font:11px ui-monospace,SFMono-Regular,Menlo,monospace; }
.browser-chrome .lock { font-size:11px; }
.fake-page { padding:28px; border-radius:0 0 9px 9px; background:#fff; border:1px solid #d3d9e0; border-top:0; max-width:430px; margin:0 auto; }
.fake-brand { color:var(--coral-dark); font-weight:900; font-size:15px; margin-bottom:16px; }
.fake-page h3 { margin:0 0 6px; font-size:19px; }
.fake-page > p { margin:0 0 16px; color:var(--muted); font-size:12px; line-height:1.5; }
.fake-page label { display:block; margin-bottom:11px; color:#4f5a6c; font-size:11px; font-weight:700; }
.fake-page input { display:block; width:100%; margin-top:4px; padding:9px 11px; border:1px solid var(--line); border-radius:7px;
  background:#f8f9fb; font-size:12px; }
.fake-page button { width:100%; margin-top:6px; padding:11px; border:0; border-radius:8px; background:var(--coral); color:#fff;
  font-weight:800; font-size:13px; opacity:.75; }
.fake-page small { display:block; margin-top:14px; text-align:center; color:#9aa4b2; font-size:10px; }

.doc-body { padding:22px 24px; }
.doc-body h3 { margin:0 0 5px; font-size:20px; }
.doc-body h4 { margin:18px 0 7px; font-size:13px; color:var(--coral-dark); text-transform:uppercase; letter-spacing:.07em; }
.doc-body p { color:#3f4a5c; font-size:13px; line-height:1.6; }
.doc-body ul { margin:0 0 12px; padding-left:19px; color:#3f4a5c; font-size:13px; line-height:1.7; }
.doc-meta { color:var(--muted); font-size:11px !important; margin-bottom:14px !important; }
.doc-callout { margin:14px 0; padding:13px 16px; border-left:4px solid var(--teal); background:#eef8f6; color:#2d5a55;
  font-size:12.5px; line-height:1.55; }
.doc-compare { display:grid; grid-template-columns:repeat(3,1fr); gap:11px; padding:0 24px 20px; }
.doc-compare > div { padding:14px; border:1px solid var(--line); border-radius:11px; background:#fbfcfd; }
.doc-compare b { display:block; margin-bottom:9px; font-size:11px; color:var(--coral-dark); }
.doc-compare ul { margin:0; padding-left:17px; font-size:11.5px; line-height:1.65; color:#4a5568; }
.doc-compare li.struck { text-decoration:line-through; color:#a8b0bc; }
.doc-compare li.added { color:#9c2835; font-weight:700; }

.pr-head { padding:20px 22px 4px; }
.pr-head h3 { margin:0 0 6px; font-size:19px; }
.pr-head p { color:#3f4a5c; font-size:13px; line-height:1.55; }
.system-window pre.diff { margin:14px 22px; padding:16px; min-height:0; border-radius:9px; background:#111a2a; overflow:auto;
  font:12px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace; color:#dae4f4; }
pre.diff code { color:inherit; }
.review-block { margin:0 22px 18px; padding:13px 16px; border:1px solid var(--line); border-radius:11px; background:#f8f9fb; }
.review-block b { display:block; margin-bottom:5px; color:var(--muted); font-size:11px; }
.review-block p { margin:0; font-size:13px; color:#3f4a5c; }

.chat-log { padding:16px 20px; display:grid; gap:2px; }
.chat-line { display:grid; grid-template-columns:130px 52px 1fr; gap:10px; align-items:baseline; padding:8px 10px; border-radius:9px; }
.chat-line b { color:#33415a; font-size:12px; }
.chat-line time { color:#98a2b1; font:10px ui-monospace,monospace; }
.chat-line p { margin:0; font-size:13px; line-height:1.5; color:#3f4a5c; }
.chat-line.highlighted { background:#fff6e4; box-shadow:inset 3px 0 0 var(--amber); }
.chat-line.muted { color:var(--muted); font-size:12px; grid-template-columns:1fr; padding-left:14px; }

.chart-block { padding:20px 22px 8px; }
.chart { display:flex; align-items:flex-end; gap:5px; height:130px; padding:0 4px 8px; border-bottom:1px solid var(--line); }
.chart span { flex:1; height:var(--h); border-radius:3px 3px 0 0; background:linear-gradient(180deg,#7fa6cf,#477faf); }
.chart span.drop { background:linear-gradient(180deg,#f0a79f,#e0675a); }
.chart-axis { display:flex; justify-content:space-between; padding:7px 4px 0; color:var(--muted); font-size:10px; }
.chart-axis .marker { color:#9c2835; font-weight:800; }

.queue-summary { background:#fff6e4 !important; color:#66583e; font-size:12.5px; }

.forum-post { padding:22px 24px; }
.forum-post h3 { margin:0 0 4px; font-size:19px; line-height:1.25; }
.forum-post p { color:#3f4a5c; font-size:13px; line-height:1.6; }
.forum-replies { margin-top:16px; border-top:1px solid var(--line); padding-top:12px; display:grid; gap:8px; }
.forum-replies .reply { padding:10px 13px; border-left:3px solid var(--line); background:#f8f9fb; font-size:12.5px; color:#4a5568; }
.forum-replies .reply b { color:#33415a; }

.press-item { padding:13px 0; border-bottom:1px solid #edf0f3; }
.press-item b { display:block; margin-bottom:4px; color:var(--coral-dark); font-size:11px; }
.press-item p { margin:0; font-size:13px; line-height:1.55; color:#3f4a5c; }

/* --------------------------------------------------- variant banners */
.variant-banner { display:flex; align-items:baseline; gap:12px; padding:11px 15px; background:#eef8f6;
  border-bottom:1px solid #cee0db; color:#2d5a55; font-size:12px; }
.variant-banner.tight { background:#fff7e7; border-bottom-color:#f0e2c8; color:#66583e; }
.variant-banner b { flex:0 0 auto; font-size:12px; }
.variant-banner span { line-height:1.45; }
.variant-count { padding:12px 15px; background:#f8f9fb; border-top:1px solid #edf0f3; color:var(--muted); font-size:12px; }

/* -------------------------------------------------------- the lenses */
.lens-bar { margin:0 0 20px; padding:15px 17px; border:1px solid #cee0db; border-radius:13px; background:#f1f8f6; }
.lens-intro { margin:0 0 10px; color:#245f58; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.lens-buttons { display:flex; flex-wrap:wrap; gap:8px; }
.lens-button { display:inline-flex; align-items:center; gap:8px; padding:9px 13px; border:1px solid #9ec6bd; border-radius:9px;
  background:#fff; color:#245f58; font-size:12.5px; font-weight:750; }
.lens-button span { font-size:14px; }
.lens-button:hover:not(.empty) { border-color:var(--teal); background:#e7f6f2; }
.lens-button.used { opacity:.55; }
.lens-button.empty { border-style:dashed; border-color:#c3cbd6; background:#f7f8fa; color:#8b95a5; }
.lens-output { display:grid; gap:9px; }
.lens-output:not(:empty) { margin-top:13px; }
.lens-card { padding:13px 15px; border-radius:11px; background:#fff; border:1px solid #cee0db; }
.lens-card b { display:block; margin-bottom:6px; color:#1f5a52; font-size:13px; }
.lens-card .lens-icon { display:inline-grid; place-items:center; width:21px; height:21px; margin-right:8px; border-radius:6px;
  background:var(--teal); color:#fff; font-size:12px; vertical-align:-4px; }
.lens-card p { margin:0; color:#455663; font-size:13px; line-height:1.6; }

/* ------------------------------------------------ tier 3: locked option */
.choices label.locked-choice { opacity:.62; background:#f7f8fa; border-style:dashed; cursor:not-allowed; }
.choices label.locked-choice:hover { border-color:var(--line); background:#f7f8fa; }
.locked-note { display:block; margin-top:9px; padding:9px 11px; border-radius:8px; background:#fbdde1; color:#7d2530;
  font-size:11px; line-height:1.45; }
.locked-note b { display:block; margin-bottom:3px; font-size:11px; }

/* -------------------------------------------------- decision outcomes */
.outcome-row { display:grid; grid-template-columns:38px 1fr; gap:12px; align-items:start; padding:12px 0; }
.outcome-row + .outcome-row { border-top:1px solid #e6ebf0; }
.outcome-row b { display:block; margin-bottom:4px; font-size:13px; }
.outcome-row span:not(.outcome-icon) { color:#4a5568; font-size:12.5px; line-height:1.55; }
.outcome-row.gap b { color:#7a4b8f; }

/* ------------------------------------------------------------ ledger */
.ledger-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:11px; margin-bottom:22px; }
.ledger-grid.small { grid-template-columns:repeat(4,1fr); margin-bottom:0; }
.ledger-cell { padding:16px 18px; border:1px solid var(--line); border-radius:13px; background:#fff; box-shadow:var(--shadow); }
.ledger-cell span { display:block; color:var(--muted); font-size:11px; font-weight:750; }
.ledger-cell strong { display:block; margin:6px 0 4px; font-size:26px; letter-spacing:-.02em; }
.ledger-cell small { color:var(--muted); font-size:11px; line-height:1.4; }
.ledger-causes { margin-top:14px; display:grid; gap:7px; }
.cause-row { display:grid; grid-template-columns:54px 1fr; gap:12px; align-items:baseline; padding:10px 13px;
  border-radius:9px; background:#f6f1f8; }
.cause-row b { color:#7a4b8f; font-size:14px; }
.cause-row span { color:#4a5568; font-size:12.5px; line-height:1.45; }

/* ------------------------------------------------------- the split */
.split-instructions { border-left:5px solid var(--navy); }
.split-rooms { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0 14px; }
.room-card { padding:16px 18px; border-radius:13px; border:1px solid var(--line); }
.room-card.room-a { background:#fff2ee; border-color:#f3c9bd; }
.room-card.room-b { background:#eef4fb; border-color:#c3d6ea; }
.room-card b { display:block; margin-bottom:5px; font-size:14px; }
.room-seats { margin:0 0 8px !important; color:var(--muted); font-size:11px !important; font-weight:700; }
.room-card p { margin:0; font-size:12.5px; line-height:1.5; color:#3f4a5c; }
.split-actions { display:flex; gap:14px; padding-top:6px; }

.brief-window { max-width:760px; }
.brief-questions { margin:16px 0 10px; padding:14px 17px; border-radius:11px; background:#f7f8fb; border:1px solid var(--line); }
.brief-questions b { display:block; margin-bottom:7px; font-size:12px; color:var(--coral-dark); }
.brief-questions ol { margin:0; padding-left:19px; color:#3f4a5c; font-size:13px; line-height:1.75; }
.inject-box { margin:16px 0; padding:15px 17px; border-radius:11px; background:#fbdde1; border:1px solid #f0bcc3; }
.inject-box > b { display:block; margin-bottom:8px; color:#8d2230; font-size:12.5px; }
.inject-body p { margin:0 0 8px; color:#5f2b33; font-size:13px; line-height:1.55; }
.inject-body p:last-child { margin-bottom:0; }
.inject-warn { padding:10px 12px; border-radius:8px; background:#fff; color:#8d2230 !important; font-weight:600; }
.room-a-card { border-left-color:#e0675a; }
.room-b-card { border-left-color:#477faf; }

/* ------------------------------------------------- reconciliation */
.reconciliation { margin-top:26px; padding:26px; border-radius:18px; background:#fff; border:1px solid var(--line);
  border-top:5px solid var(--navy); box-shadow:var(--shadow); }
.reconciliation.hidden { display:none; }
.recon-head h2 { margin:0 0 18px; }
.recon-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:16px; }
.recon-room { padding:15px 17px; border-radius:12px; }
.recon-room.a { background:#fff2ee; }
.recon-room.b { background:#eef4fb; }
.recon-room b { display:block; margin-bottom:6px; font-size:11px; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); }
.recon-room p { margin:0; font-size:13.5px; line-height:1.5; font-weight:650; color:#2b3546; }
.recon-room small { display:block; margin-top:9px; color:#5a6473; font-size:12px; line-height:1.5; font-style:italic; }
.recon-finding { margin-top:12px; padding:16px 18px; border-radius:12px; background:#f7f8fb; border-left:4px solid var(--line); }
.recon-finding.critical { background:#fbdde1; border-left-color:#c8404f; }
.recon-finding > b { display:block; margin-bottom:8px; font-size:14px; }
.recon-finding p { margin:0 0 8px; font-size:13px; line-height:1.6; color:#3f4a5c; }
.recon-finding p:last-child { margin-bottom:0; }
.recon-finding ul { margin:0; padding-left:19px; font-size:13px; line-height:1.7; color:#3f4a5c; }
.recon-mitigated { padding:11px 13px; border-radius:9px; background:#dff3ea; color:#17654e !important; }
.recon-unmitigated { padding:11px 13px; border-radius:9px; background:#fff; color:#8d2230 !important; }

/* ---------------------------------------------------------- record */
.summary-warn { padding:13px 16px; border-radius:10px; background:#fff7e7; border-left:4px solid var(--amber,#e0a02a);
  color:#66583e !important; font-size:12.5px !important; }
.condition-list { margin:0; padding-left:19px; color:#3f4a5c; font-size:13.5px; line-height:1.8; }
.debrief-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:16px; }
.debrief-grid > div { padding:15px 17px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.debrief-grid b { display:block; margin-bottom:6px; color:var(--coral-dark); font-size:12px; }
.debrief-grid p { margin:0; font-size:12.5px; line-height:1.55; color:#3f4a5c; }
.debrief-gaps { display:grid; gap:10px; margin-top:14px; }
.debrief-gaps > div { padding:14px 16px; border-radius:11px; background:#f6f1f8; }
.debrief-gaps b { display:block; margin-bottom:5px; color:#7a4b8f; font-size:13px; }
.debrief-gaps p { margin:0; font-size:12.5px; line-height:1.55; color:#4a5568; }

/* -------------------------------------------------------- responsive */
@media (max-width:1100px) {
  .seat-picker { grid-template-columns:repeat(3,1fr); }
  .how-to-read .read-grid { grid-template-columns:1fr 1fr; }
  .ledger-grid, .ledger-grid.small { grid-template-columns:1fr 1fr; }
  .debrief-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:820px) {
  .seat-picker { grid-template-columns:1fr 1fr; }
  .doc-compare, .split-rooms, .recon-pair { grid-template-columns:1fr; }
  .transcript .turn, .chat-line { grid-template-columns:1fr; gap:3px; }
  .debrief-grid { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .seat-picker { grid-template-columns:1fr; }
  .how-to-read .read-grid, .ledger-grid, .ledger-grid.small { grid-template-columns:1fr; }
  .split-actions { flex-direction:column; gap:8px; }
}

/* ------------------------------------------------------------- print */
@media print {
  .lens-bar, .split-actions, .reconciliation { display:none !important; }

  body[class*="brief-print-"] .route { display:none !important; }
  body[class*="brief-print-"] #phase6 { display:block !important; page-break-after:auto; }
  body[class*="brief-print-"] #phase6 > *:not(.evidence-view) { display:none !important; }
  body[class*="brief-print-"] .evidence-view { display:none !important; }
  body[class*="brief-print-"] #incidentBoard { display:none !important; }
  body[class*="brief-print-"] .decision-card { display:none !important; }
  body.brief-print-a #p6-brief-a { display:block !important; }
  body.brief-print-b #p6-brief-b { display:block !important; }
  .brief-window { max-width:none; border:0; box-shadow:none; }
  .brief-window .system-bar { background:#fff !important; color:#000 !important; border-bottom:2px solid #000; }
  .inject-box { border:2px solid #000; background:#fff !important; }
  .inject-box > b, .inject-body p, .inject-warn { color:#000 !important; }
}

/* ------------------------------------------- post-decision findings */
.findings { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0 0 18px; padding-bottom:16px;
  border-bottom:1px solid #e6ebf0; }
.findings-col { padding:15px 17px; border-radius:12px; }
.findings-col.established { background:#eef8f6; }
.findings-col.open { background:#f7f8fb; }
.findings-col b { display:block; margin-bottom:8px; font-size:11px; font-weight:900; text-transform:uppercase;
  letter-spacing:.07em; }
.findings-col.established b { color:#1f5a52; }
.findings-col.open b { color:#5a6473; }
.findings-col ul { margin:0; padding-left:17px; }
.findings-col li { margin-bottom:7px; font-size:12.5px; line-height:1.55; color:#3f4a5c; }
.findings-col li:last-child { margin-bottom:0; }
@media (max-width:820px) { .findings { grid-template-columns:1fr; } }

.record-phase { margin-bottom:16px; padding:15px 17px; border-radius:12px; background:#fbfcfd; border:1px solid var(--line); }
.record-phase > b { display:block; margin-bottom:8px; color:var(--coral-dark); font-size:12px; }
.record-phase ul { margin:0 0 10px; padding-left:18px; }
.record-phase li { margin-bottom:6px; font-size:13px; line-height:1.55; color:#3f4a5c; }
.record-open { margin:0; padding-top:9px; border-top:1px solid #e6ebf0; color:#5a6473; font-size:12px; line-height:1.55; }

/* v1 lays .role-outcome out as a 40px|1fr grid for its single-row form.
   This scenario renders findings, multiple seat rows and actions inside it,
   each doing its own layout, so the parent must not impose a grid. */
.role-outcome.show { display:block; }
.role-outcome .outcome-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:14px; }

/* ==================================================================
   Density and readability pass.
   All overrides — ../incident_roaming_bites/styles.css is shared with
   scenario one and must not be edited.
   ================================================================== */

/* --- the story banner is now the phase heading (the duplicate
       .phase-header was removed from every phase section) --- */
.phase-story { margin-bottom:26px; padding:26px 30px; }
.phase-story h2 { margin:14px 0 14px; font-size:clamp(32px,4.4vw,46px); }
.phase-story-copy { gap:10px 32px; }
.phase-story-copy p { font-size:16px; line-height:1.55; color:#dde5ee; }
.phase-story-meta { gap:12px; }
.phase-story-meta > span:first-child { margin-right:2px; }
.story-sev { padding:4px 9px; border-radius:100px; font-size:10px; font-weight:900;
  letter-spacing:.07em; background:rgba(255,255,255,.14); color:#fff; }
.story-sev.medium { background:#7a4a24; color:#ffd9b8; }
.story-sev.high { background:#7d2530; color:#ffc2c7; }
.phase-story footer > small { font-size:12.5px; }

/* --- incident board: collapsed by default, one summary line --- */
.board-head-right { display:flex; align-items:center; gap:14px; }
.board-toggle { padding:8px 14px; border:1px solid var(--line); border-radius:9px; background:#fff;
  color:#4a5568; font-size:12.5px; font-weight:750; }
.board-toggle:hover { border-color:#acb5c3; }
.board-summary { margin:10px 0 0; color:var(--muted); font-size:13px; }
.incident-board.collapsed { padding:16px 20px; }
.incident-board.collapsed .team-chips,
.incident-board.collapsed .board-grid,
.incident-board.collapsed .board-note { display:none; }
.incident-board.collapsed .board-head { margin:0; }
.incident-board:not(.collapsed) .board-summary { display:none; }

/* --- evidence: bigger, calmer --- */
.log-table { font-size:14.5px; }
.log-table th { font-size:11.5px; }
.log-table.dense td { font-size:12.5px; }
.system-foot { font-size:13.5px; line-height:1.55; padding:14px 18px; }
.evidence-caution { font-size:13.5px; line-height:1.55; padding:13px 16px; }
.system-window pre { font-size:13px; line-height:1.7; }
.detail-grid dd { font-size:14.5px; }
.detail-grid dt { font-size:13px; }
.message p { font-size:14.5px; line-height:1.55; }
.transcript .turn p { font-size:14.5px; }
.transcript .turn b { font-size:12px; }
.chat-line p { font-size:14.5px; }
.chat-line b { font-size:13px; }
.doc-body p, .doc-body ul { font-size:14.5px; line-height:1.65; }
.doc-body li { margin-bottom:4px; }
.doc-callout { font-size:14px; line-height:1.6; padding:14px 17px; }
.doc-compare ul { font-size:12.5px; }
.pr-head p { font-size:14.5px; line-height:1.6; }
.review-block p { font-size:14.5px; }
.system-window pre.diff { font-size:13px; }
.forum-post p { font-size:14.5px; line-height:1.65; }
.forum-replies .reply { font-size:13.5px; }
.press-item p { font-size:14.5px; line-height:1.6; }
.queue-summary { font-size:13.5px !important; }

/* --- orientation strip: one stacked block instead of two dense columns --- */
.evidence-orientation { grid-template-columns:34px 1fr; gap:14px; padding:14px 17px; margin-bottom:18px; }
.evidence-orientation p { display:block; font-size:13.5px; line-height:1.6; }
.evidence-orientation p b { display:block; margin-bottom:3px; font-size:13.5px; }
.evidence-orientation p + p { margin-top:9px; padding-top:9px; }
.evidence-orientation strong { display:inline; margin-right:7px; font-size:10px; }
.evidence-orientation span { display:inline; }
.evidence-orientation .look-label { display:inline; margin-left:4px; font-size:13.5px; }
.orientation-icon { width:30px; height:30px; }

/* --- decisions --- */
.decision-card { padding:28px; }
.decision-card h2 { font-size:25px; }
.choices label { padding:15px; }
.choices b { font-size:15px; }
.choices small { font-size:13.5px; line-height:1.55; }
.notes-label { font-size:13px; }
.lens-bar { padding:14px 16px; }
.lens-intro { font-size:11.5px; }
.lens-button { font-size:13.5px; padding:10px 14px; }
.lens-card p { font-size:14px; line-height:1.65; }
.lens-card b { font-size:14px; }

/* --- findings + record --- */
.findings-col li { font-size:14px; line-height:1.6; }
.findings-col b { font-size:11.5px; }
.outcome-row span:not(.outcome-icon) { font-size:13.5px; line-height:1.6; }
.outcome-row b { font-size:14px; }
.record-phase li { font-size:14px; }
.record-open { font-size:13px; }
.condition-list { font-size:14.5px; }
.ledger-cell small { font-size:12px; }
.ledger-cell span { font-size:12px; }
.cause-row span { font-size:13.5px; }
.recon-room p { font-size:14.5px; }
.recon-finding p, .recon-finding ul { font-size:14px; line-height:1.65; }
.room-card p { font-size:13.5px; }
.brief-questions ol { font-size:14.5px; }
.inject-body p { font-size:14.5px; line-height:1.6; }
.debrief-grid p { font-size:13.5px; }

/* --- evidence tabs a touch larger --- */
.evidence-tab { font-size:13.5px; padding:10px 15px; }

/* v1 pads every evidence panel to 430px to stop tab-switch jump, but tab
   content here ranges from ~300px to ~900px so it only adds dead space. */
.evidence-view { min-height:0; margin-bottom:6px; }
