.answer-observations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:14px 0; }
.answer-observation { min-width:0; padding:10px; border:1px solid #263342; border-radius:7px; background:#0c131c; }
.answer-observation span,.answer-observation small { display:block; color:#8191a5; font-size:10px; }
.answer-observation b { display:block; margin:5px 0; overflow-wrap:anywhere; }
.answer-note { margin-top:13px; padding-top:12px; border-top:1px solid #283443; }
.answer-note ul, .answer-note ol { margin:7px 0 0; padding-left:18px; color:#9cabbc; line-height:1.6; }
.workspace { min-height:0; overflow:hidden; }
.conversation { min-height:0; overscroll-behavior:contain; scroll-behavior:smooth; }
.top-nav { display:flex; align-items:center; gap:2px; margin-left:auto; }
.top-nav button { background:transparent; border:0; color:#8fa0b4; font:600 12px Manrope; padding:8px 11px; border-radius:6px; cursor:pointer; }
.top-nav button:hover, .top-nav button.active { color:#d7e6f8; background:#182333; }
.signout-link { margin-left:8px; color:#8fa0b4; background:transparent; border:1px solid var(--line); border-radius:6px; padding:6px 10px; font:600 11px Manrope; cursor:pointer; }
.signout-link:hover { color:#e7eef8; border-color:#3a4d64; }
.search[hidden] { display:none; }
.shell.investigate { grid-template-columns:248px minmax(0,1fr); }
.shell.investigate .context { display:none; }
.shell.investigate .session { display:none; }
.shell.investigate .toast { right:22px; }
.shell.investigate .message { max-width:980px; }
.direct-answer { font-size:15px; line-height:1.55; color:#dbe6f3; margin:0 0 12px; }
.case-continued { max-width:980px; margin:0 auto 10px; color:#8fb4dd; font:600 11px Manrope; }
.answer-fold { margin-top:12px; padding-top:10px; border-top:1px solid #283443; }
.answer-fold summary { cursor:pointer; color:#9dc8ff; font:700 11px Manrope; }
.answer-fold[open] summary { margin-bottom:10px; }
.incident-case .answer-fold { border-top-color:#2b4a6e; }
.overview-hero h1.good { color:var(--green); }
.overview-hero h1.warn { color:var(--amber); }
.composer-wrap { padding:16px max(22px,4vw) 22px; background:linear-gradient(#101820,#0d1219); }
.composer-label { max-width:980px; margin:0 auto 8px; color:#c5d3e4; font:600 13px Manrope; }
.composer-chips { max-width:980px; margin:0 auto 10px; display:flex; flex-wrap:wrap; gap:6px; }
.composer { max-width:980px; margin:auto; padding:12px 14px; border-color:#3a5474; box-shadow:0 0 0 1px #1a2d45, 0 16px 40px #0006; align-items:flex-end; }
.composer textarea { min-height:36px; max-height:160px; padding:5px 0; resize:none; overflow:auto; outline:0; border:0; background:transparent; color:#e4ecf8; font:14px Manrope; line-height:1.5; flex:1; }
.composer textarea::placeholder { color:#718196; }
.send { width:36px; height:36px; }
.composer-hint { max-width:980px; margin:8px auto 0; color:#6e7d91; font-size:11px; }
.chip { border:1px solid #2a3b52; background:#121b27; color:#c5d6ea; border-radius:999px; padding:5px 10px; font:600 11px Manrope; cursor:pointer; }
.chip:hover { border-color:#5184c5; background:#152433; }
.inspect-chips { margin:0 0 18px; }
.inspect-chip-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.inspect-chip { border:1px solid #2a3b52; background:#121b27; color:#c5d6ea; border-radius:8px; padding:12px 10px; text-align:left; cursor:pointer; display:grid; gap:4px; }
.inspect-chip:hover { border-color:#5184c5; background:#152433; }
.inspect-chip b { font:700 12px Manrope; color:#e7f1ff; }
.inspect-chip span { font:11px Manrope; color:#8090a4; line-height:1.35; }
@media(max-width:900px){ .inspect-chip-grid { grid-template-columns:1fr 1fr; } }
.follow-ups { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.follow-ups button { border:1px solid #36557a; background:#172537; color:#b8d4f6; border-radius:6px; padding:8px 11px; font:700 11px Manrope; cursor:pointer; }
.incident-case { margin:14px 0; padding:12px; border:1px solid #2b4a6e; border-radius:8px; background:#102033; }
.incident-case-head { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; }
.incident-case-head span { color:#8fb4dd; font:700 10px Manrope; letter-spacing:.08em; }
.incident-case-head b { color:#d7ecff; font:10px 'DM Mono'; }
.incident-case p { margin:0 0 10px; color:#b9cce0; font-size:12px; line-height:1.5; }
.incident-case-actions { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.incident-case .code { margin:0 0 8px; max-height:180px; overflow:auto; }
.incident-brief { margin-top:14px; }
.incident-brief .panel-heading { align-items:flex-start; }
.incident-brief-text { white-space:pre-wrap; max-height:280px; overflow:auto; margin:0 0 10px; }
.incident-brief-actions { display:flex; align-items:center; gap:8px; }
.oncall-next { display:flex; gap:10px; align-items:flex-start; margin:0 0 12px; padding:10px 12px; border:1px solid #365b86; border-radius:8px; background:#122033; }
.oncall-next span { color:#6ba7f8; font:700 10px 'DM Mono'; letter-spacing:.08em; padding-top:2px; }
.oncall-next b { color:#e7f1ff; font:600 13px Manrope; line-height:1.45; }
.oncall-next ol { margin:0; padding-left:18px; color:#e7f1ff; font:600 13px Manrope; line-height:1.45; }
.oncall-next li { margin:0 0 6px; }
.oncall-delta { display:flex; gap:10px; align-items:flex-start; margin:0 0 10px; padding:10px 12px; border:1px solid #2d654f; border-radius:8px; background:#10241d; }
.oncall-delta span { color:#78e2aa; font:700 10px 'DM Mono'; letter-spacing:.08em; padding-top:2px; }
.oncall-delta b { color:#d7f5e6; font:600 13px Manrope; line-height:1.45; }
.incident-brief .panel-heading small { display:block; margin-top:6px; color:#7d8ca0; }
.coverage-strip { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 10px; }
.coverage-chip { min-width:120px; padding:8px; border:1px solid #2b4a6e; border-radius:6px; background:#0d1a2b; }
.coverage-chip span { display:block; color:#8fb4dd; font:700 10px Manrope; letter-spacing:.06em; }
.coverage-chip b { display:block; margin:4px 0 2px; color:#d7ecff; font:10px 'DM Mono'; }
.coverage-chip small { color:#9bb0c6; font-size:11px; line-height:1.35; }
.coverage-chip.ok b { color:#8ee0b5; }
.coverage-chip.missing b, .coverage-chip.n\/a b { color:#e0c48e; }
.coverage-chip.empty b { color:#b9cce0; }
.privacy-proof { margin-top:14px; border:1px solid #263444; border-radius:8px; background:#101821; padding:0 12px 12px; }
.privacy-proof summary { cursor:pointer; list-style:none; display:flex; flex-wrap:wrap; gap:6px 12px; align-items:baseline; padding:12px 2px; }
.privacy-proof summary::-webkit-details-marker { display:none; }
.privacy-proof summary span { color:#6ba7f8; font:700 10px 'DM Mono'; letter-spacing:.08em; }
.privacy-proof summary b { color:#c5d3e4; font:600 12px Manrope; }
.privacy-proof[open] summary { border-bottom:1px solid #263444; margin-bottom:12px; }
.privacy-proof .overview-grid { margin:0 0 12px; }
.privacy-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.privacy-proof .auth-note { margin:0; }
.conversation-history.compact { max-width:980px; margin:22px auto 0; padding-top:16px; }
.history-item { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid #223042; }
.history-item b { color:#d5e2f0; font-weight:600; }
.history-item small { color:#8090a4; white-space:nowrap; }
@media (max-width:1150px) { .privacy-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:700px) {
  .privacy-grid { grid-template-columns:1fr; }
  .top { gap:8px; padding:0 10px; }
  .top-nav { gap:0; }
  .top-nav button { padding:8px 7px; font-size:11px; }
  .signout-link { margin-left:4px; padding:6px 8px; }
  .composer-label { font-size:12px; }
}
button.clear { margin-left:auto; color:#758499; cursor:pointer; font-size:11px; background:transparent; border:0; padding:0; font-family:Manrope,Arial,sans-serif; }
button.clear[hidden] { display:none; }
.context-section .route-meta + .connection-state,
.context-section .connection-state + .connection-state { margin-top:8px; }
.tool-result { overflow:auto; border:1px solid #293444; border-radius:8px; background:#0c131c; }
.tool-result table { width:100%; border-collapse:collapse; font:11px 'DM Mono'; }
.tool-result th, .tool-result td { padding:8px 10px; border-bottom:1px solid #223042; text-align:left; white-space:nowrap; }
.tool-result th { color:#8090a4; font-weight:500; }
.conversation-history { max-width:900px; margin:28px auto 0; padding-top:22px; border-top:1px solid #26303d; }
.conversation-history>h2 { margin:0 0 18px; color:#8090a4; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.verdict { display:inline-block; margin-bottom:10px; padding:4px 7px; border:1px solid #365275; border-radius:5px; color:#9dc8ff; font:10px 'DM Mono'; text-transform:uppercase; }
.root-cause { margin:12px 0; padding:12px; border-left:3px solid #5bda9b; border-radius:5px; background:#10251e; }
.root-cause b { color:#80e6b4; font-size:11px; }
.root-cause p { margin:6px 0 0; color:#c1d8cc; }
.bubble { white-space:pre-wrap; max-width:min(680px,85%); overflow-wrap:anywhere; }
.grounded-claims { margin:14px 0; }
.grounded-claims>b { color:#d6e4f6; font-size:11px; }
.grounded-claim { position:relative; margin-top:8px; padding:10px; border:1px solid #263342; border-radius:7px; background:#0c131c; }
.grounded-claim p { margin:0 70px 8px 0; color:#b9c7d8; }
.grounded-claim>span { position:absolute; right:10px; top:10px; color:#79dca9; font:9px 'DM Mono'; }
.evidence-refs { display:flex; flex-wrap:wrap; gap:5px; }
.evidence-refs code { max-width:100%; overflow-wrap:anywhere; padding:3px 5px; border-radius:4px; background:#162337; color:#8fbdf8; font:9px 'DM Mono'; }
.auth-page {
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,520px);
  grid-template-areas:"intro card";
  background:#0b0f15;
}
.auth-intro {
  grid-area:intro;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:10vh 8vw;
  background:radial-gradient(circle at 30% 20%,#1c3151 0,transparent 35%),#0d131d;
}
.auth-intro .brand { margin-bottom:8vh; }
.text-link { background:transparent; border:0; color:#8dbdff; font:600 12px Manrope; cursor:pointer; padding:8px 0; }
.text-link:hover { color:#d7e6f8; }
.overview-grid .text-link { display:block; padding:6px 0 0; font-size:11px; text-align:left; }
.discovery-approve { margin-top:12px; display:grid; gap:10px; }
.llm-policy { max-width:520px; margin-top:12px; }
.welcome .text-link { display:block; margin:10px 0 18px; }
.auth-copy .eyebrow { margin-bottom:8px; }
.auth-intro h1 { font-size:40px; line-height:1.12; letter-spacing:-1.6px; max-width:520px; margin:0 0 14px; }
.auth-intro p { max-width:520px; font-size:15px; line-height:1.7; color:#9dacbf; margin:0 0 18px; }
.auth-points { display:flex; flex-wrap:wrap; gap:10px 18px; color:#8fc8a9; font-size:11px; }
.auth-card {
  grid-area:card;
  align-self:stretch;
  width:auto;
  margin:0;
  padding:0 48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:0;
  border-left:1px solid var(--line);
  border-radius:0;
  background:#101722;
  box-shadow:none;
}
.auth-card #auth-form, .auth-card .tabs { width:min(380px,100%); }
.auth-card-brand { display:none; margin-bottom:22px; }
.auth-error { margin:2px 0 0; color:#f4a3a4; font-size:12px; line-height:1.45; }
.auth-error[hidden] { display:none; }
.password-field { display:flex; align-items:center; gap:8px; background:#0c121a; border:1px solid #283444; border-radius:6px; padding-right:8px; }
.password-field:focus-within { border-color:#5a94df; }
.password-field input { border:0 !important; background:transparent !important; padding:10px; flex:1; min-width:0; }
.show-password { border:0; background:transparent; color:#8dbdff; font:700 11px Manrope; cursor:pointer; padding:6px 4px; }
.show-password:hover { color:#d7e6f8; }
body:has(.auth-page) { overflow:auto; }
body:has(.auth-page) .toast { right:24px; }
@media (max-width:700px) {
  .answer-observations { grid-template-columns:1fr; }
  .auth-page { grid-template-columns:1fr; grid-template-areas:"card" "intro"; }
  .auth-card { padding:36px 24px 28px; border-left:0; min-height:auto; }
  .auth-card-brand { display:flex; }
  .auth-intro { padding:28px 24px 40px; min-height:0; }
  .auth-intro .brand { display:none; }
  .auth-intro h1 { font-size:26px; letter-spacing:-1px; margin-bottom:10px; }
  .auth-copy { margin:0; }
}
.report-counts { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:14px 0 4px; }
.report-counts small { color:#8191a5; margin-left:6px; }
.report-status { display:inline-block; font:600 9px 'DM Mono'; letter-spacing:.04em; padding:3px 6px; border-radius:4px; border:1px solid #2b3747; color:#9cabbc; background:#0f151e; white-space:nowrap; }
.report-status.critical { color:#ffb0b4; border-color:#7a3238; background:#2a1316; }
.report-status.warn { color:#f7d08a; border-color:#6a5127; background:#241c0e; }
.report-status.ok { color:#8be0b3; border-color:#2f6a4e; background:#0f2119; }
.report-status.info { color:#9dc8ff; border-color:#2b4a6e; background:#0f1a28; }
.report-status.unavailable { color:#8191a5; }
.report-item { border:1px solid #243041; border-radius:7px; background:#0f161f; margin:6px 0; }
.report-item summary { display:grid; grid-template-columns:auto minmax(140px,220px) minmax(0,1fr); align-items:center; gap:10px; padding:9px 11px; cursor:pointer; list-style:none; }
.report-item summary::-webkit-details-marker { display:none; }
.report-item summary small { color:#9cabbc; overflow-wrap:anywhere; }
.report-item[open] { border-color:#33465e; }
.report-item .report-table, .report-item .auth-note { margin:0 11px 10px; }
.report-item.unavailable summary b { color:#8191a5; }
.wait-share { display:grid; grid-template-columns:90px minmax(0,1fr) 54px 150px; align-items:center; gap:10px; margin:6px 14px; }
.waits-view .wait-strip, .waits-view .wait-legend { margin-left:14px; margin-right:14px; }
.waits-view .wait-legend { padding-bottom:10px; }
.wait-share span { font:600 11px Manrope; color:#c5d3e4; }
.wait-share div { height:10px; border-radius:5px; background:#141c27; overflow:hidden; }
.wait-share i { display:block; height:100%; border-radius:5px; }
.wait-share b { font:600 11px 'DM Mono'; text-align:right; }
.wait-share small { color:#8191a5; font-size:10px; }
.wait-strip { display:flex; align-items:flex-end; gap:2px; height:120px; padding:8px; border:1px solid #243041; border-radius:7px; background:#0c131c; }
.wait-bucket { flex:1; min-width:3px; height:100%; display:flex; align-items:flex-end; }
.wait-bucket-bar { width:100%; display:flex; flex-direction:column-reverse; border-radius:2px 2px 0 0; overflow:hidden; }
.wait-bucket-bar i { display:block; width:100%; }
.wait-legend { display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; color:#9cabbc; font-size:10px; }
.wait-legend i { display:inline-block; width:8px; height:8px; border-radius:2px; margin-right:5px; vertical-align:middle; }
.case-tools { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; padding-top:10px; border-top:1px solid #283443; }
.case-notes { flex-basis:100%; margin-top:6px; }
.note-list { list-style:none; margin:0 0 8px; padding:0; }
.note-list li { padding:8px 10px; border:1px solid #243041; border-radius:6px; background:#0c131c; margin-bottom:6px; }
.note-list p { margin:0 0 4px; color:#dbe6f3; white-space:pre-wrap; }
.note-list small { color:#8191a5; font-size:10px; }
.note-form { display:flex; gap:8px; align-items:flex-start; }
.note-form textarea { flex:1; min-width:0; resize:vertical; background:#0c131c; color:var(--text); border:1px solid #2a3545; border-radius:6px; padding:8px; font:12px Manrope; }
.ticket-draft { max-height:46vh; overflow:auto; }
.fleet-view { max-width:1180px; }
.fleet-table { overflow-x:auto; margin-top:14px; }
.fleet-table table { min-width:980px; }
.fleet-table td { vertical-align:top; }
.fleet-table td.warn { color:#f7d08a; }
.fleet-table td small { display:block; color:#8191a5; font-size:10px; margin-top:2px; }
.fleet-row { cursor:pointer; }
.fleet-row:hover, .fleet-row:focus { background:#152131; outline:none; }
.fleet-name b { font-size:12px; }
.forecast-view { max-width:900px; }
.forecast-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; }
.forecast-card { border:1px solid #263242; background:#111923; border-radius:8px; padding:14px; display:flex; flex-direction:column; gap:8px; }
.forecast-card.critical { border-color:#7a3238; }
.forecast-card.warn { border-color:#6a5127; }
.forecast-head { display:flex; align-items:center; gap:8px; }
.forecast-head b { font-size:13px; }
.forecast-values { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.forecast-values span { display:block; color:#7f90a5; font-size:10px; text-transform:uppercase; letter-spacing:.04em; }
.forecast-values b { display:block; font:14px 'DM Mono'; margin-top:4px; }
.forecast-card p { margin:0; color:#c5d3e4; line-height:1.5; font-size:12px; }
.forecast-card small { color:#8191a5; font-size:10px; }
.drift-view { max-width:900px; }
.drift-view .overview-grid, .drift-view .check-list, .drift-view .form-copy, .drift-view .auth-note, .drift-view .tool-result, .drift-view .compare-picker { margin-left:14px; margin-right:14px; }
.check-list { color:#f7d08a; line-height:1.7; font-size:12px; }
.check-row small { flex-basis:100%; }
.check-row { flex-wrap:wrap; }
.compare-picker { display:flex; align-items:center; gap:10px; margin-top:12px; margin-bottom:12px; color:#aebdd0; font-size:12px; }
.compare-picker select { background:#0c131c; color:var(--text); border:1px solid #2a3545; border-radius:6px; padding:6px 8px; }
.alert-section > .form-copy { padding:12px 14px 4px; margin:0; }
.alert-channel { flex-wrap:wrap; }
.alert-channel b small { font-weight:400; margin-left:6px; }
.alert-channel > small { flex-basis:100%; }
.alert-actions { display:flex; gap:6px; flex-basis:100%; }
.alert-actions .secondary { padding:5px 10px; font-size:11px; }
.text-link.danger { color:#f4a3a4; padding:5px 4px; }
.alert-form { padding:14px; border-top:1px solid #283544; }
.alert-envs { border:1px solid #2a3545; border-radius:6px; padding:8px 12px; display:flex; flex-wrap:wrap; gap:14px; color:#aebdd0; font-size:12px; }
.alert-envs legend { color:#7f90a5; font-size:10px; padding:0 4px; }
.alert-envs label { display:flex; align-items:center; gap:6px; }
@media (max-width: 900px) {
  .forecast-grid { grid-template-columns:1fr; }
  .report-item summary { grid-template-columns:auto minmax(0,1fr); }
  .report-item summary small { grid-column:1/-1; }
  .wait-share { grid-template-columns:70px minmax(0,1fr) 48px; }
  .wait-share small { display:none; }
}
