:root{
  --mono:"IBM Plex Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --radius:0;
  --hairline:1px;
  --shadow:none;
  --page-pad:18px;
}

[data-mode="dark"]{
  --bg:#050607;
  --panel:#0b0f11;
  --panel-2:#101518;
  --panel-3:#151b1f;
  --ink:#e8eef0;
  --ink-strong:#ffffff;
  --muted:#89969b;
  --muted-2:#5e6b71;
  --line:#263139;
  --line-2:#182126;
  --track:#12191d;
  --good:#57d99a;
  --good-soft:#0e2a20;
  --warn:#f0b04e;
  --warn-soft:#2d2110;
  --bad:#ff7666;
  --bad-soft:#351816;
  --raw-bg:#030405;
  --raw-ink:#dce9ec;
}

[data-mode="light"]{
  --bg:#efede7;
  --panel:#fbfaf5;
  --panel-2:#f3f1ea;
  --panel-3:#e9e6dd;
  --ink:#151715;
  --ink-strong:#050605;
  --muted:#5d625d;
  --muted-2:#7a7d75;
  --line:#c5c0b5;
  --line-2:#ded9cc;
  --track:#e1ddd1;
  --good:#166943;
  --good-soft:#dff1e7;
  --warn:#82570f;
  --warn-soft:#f6ead2;
  --bad:#9e352d;
  --bad-soft:#f4ddd9;
  --raw-bg:#111;
  --raw-ink:#f5f2ea;
}

[data-theme="terminal"]{
  --accent:#48d7ff;
  --accent-2:#f0b04e;
  --accent-soft:color-mix(in srgb,var(--accent) 16%,transparent);
  --selection:color-mix(in srgb,var(--accent) 22%,var(--panel));
  --font-mode:var(--mono);
}

[data-theme="warroom"]{
  --accent:#8fb5ff;
  --accent-2:#ff9c62;
  --accent-soft:color-mix(in srgb,var(--accent) 15%,transparent);
  --selection:color-mix(in srgb,var(--accent) 20%,var(--panel));
  --font-mode:var(--sans);
}

[data-theme="orbital"]{
  --accent:#9fe4ff;
  --accent-2:#b8c6d8;
  --accent-soft:color-mix(in srgb,var(--accent) 13%,transparent);
  --selection:color-mix(in srgb,var(--accent) 18%,var(--panel));
  --font-mode:var(--mono);
}

[data-theme="lab"]{
  --accent:#d8c17e;
  --accent-2:#64706c;
  --accent-soft:color-mix(in srgb,var(--accent) 18%,transparent);
  --selection:color-mix(in srgb,var(--accent) 18%,var(--panel));
  --font-mode:var(--sans);
}

*{box-sizing:border-box}
html{background:var(--bg);color:var(--ink)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.42;min-width:1160px}
button,input,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.42}
a{color:var(--accent)}
h1,h2,h3,h4,p{margin:0}
ul,ol{margin:8px 0 0 20px;padding:0}
li{margin:0 0 5px}

.warroom-page{max-width:1920px;margin:0 auto;padding:var(--page-pad);display:grid;gap:14px}
.command-strip{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(380px,1fr) auto;gap:18px;align-items:center;border:1px solid var(--line);background:var(--panel);padding:10px 12px;box-shadow:0 0 0 1px var(--line-2)}
.identity-block{display:grid;gap:4px;min-width:0}
.system-mark{font-family:var(--mono);font-size:1.03rem;font-weight:900;letter-spacing:.18em;color:var(--ink-strong);text-transform:uppercase;white-space:nowrap}
.corpus-line{font-family:var(--mono);font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.command-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.command-btn,.upload-command{height:34px;border:1px solid var(--line);background:transparent;color:var(--ink);padding:0 10px;font-family:var(--mono);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none;border-radius:0}
.command-btn:hover,.upload-command:hover{background:var(--selection);color:var(--ink-strong)}
.command-btn.primary,.upload-command.primary{background:var(--ink-strong);color:var(--bg);border-color:var(--ink-strong)}
.command-btn.primary:hover,.upload-command.primary:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}
.file-input{display:none}

.ingest-dock{display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,1.5fr) auto;gap:0;border:1px solid var(--line);background:var(--panel);min-height:66px}
.ingest-dock>div{padding:10px 12px;border-right:1px solid var(--line)}
.ingest-dock>div:last-child{border-right:0}
.dock-label,.ui-label,.micro{font-family:var(--mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-weight:900;margin-bottom:6px}
.status{font-family:var(--mono);font-size:.76rem;color:var(--muted)}
.status[data-state="ok"]{color:var(--good)}
.status[data-state="error"]{color:var(--bad)}
.status[data-state="busy"]{color:var(--accent)}
.dock-actions{display:flex;align-items:center;gap:8px;background:var(--panel-2)}

.market-graph-shell{border:1px solid var(--line);background:var(--panel);min-height:260px}
.market-loading{font-family:var(--mono);color:var(--muted);padding:18px;text-transform:uppercase;letter-spacing:.08em}
.market-section{padding:14px 14px 16px}
.market-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:start;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:12px}
.market-head h2{font-family:var(--mono);font-size:.92rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-strong);margin-bottom:6px}
.market-head p{font-family:var(--mono);font-size:.75rem;color:var(--muted);max-width:1500px}
.market-stat{border:1px solid var(--line);padding:8px 10px;text-align:right;background:var(--panel-2);font-family:var(--mono);min-width:210px}
.market-stat b{display:block;color:var(--ink-strong);font-size:1rem}
.market-stat span{display:block;color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}
.market-chart{display:grid;gap:4px}
.market-footnote{font-family:var(--mono);font-size:.72rem;color:var(--muted);margin-top:10px;padding-top:10px;border-top:1px solid var(--line-2)}
.role-postings-row{display:grid;grid-template-columns:34px minmax(330px,.34fr) minmax(250px,1fr) 98px 72px 122px;gap:10px;align-items:center;padding:5px 6px;border-bottom:1px solid var(--line-2);background:transparent;color:var(--ink)}
.role-postings-row:last-child{border-bottom:0}
.role-postings-row:hover{background:var(--selection)}
.role-postings-rank,.role-postings-value,.role-postings-share,.role-postings-salary{font-family:var(--mono);font-weight:900;color:var(--accent);text-align:right}
.role-postings-rank{text-align:left;color:var(--muted)}
.role-postings-label{font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-strong)}
.role-postings-track{height:15px;background:var(--track);border:1px solid var(--line);display:block;position:relative}
.role-postings-bar{display:block;width:var(--bar);height:100%;background:var(--accent)}
.role-postings-share{color:var(--muted)}
.role-postings-salary{color:var(--good);font-size:.72rem;white-space:nowrap}

.console-results{min-height:360px}
.pre-score-console{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;border:1px solid var(--line);background:var(--panel);padding:18px;min-height:300px;align-items:stretch}
.pre-score-copy{display:flex;flex-direction:column;justify-content:flex-start;border:1px solid var(--line);background:var(--panel-2);padding:18px;min-height:260px}
.pre-score-copy h1{font-family:var(--font-mode);font-size:clamp(2rem,4vw,4.8rem);line-height:.92;letter-spacing:-.06em;text-transform:uppercase;color:var(--ink-strong);max-width:980px;margin-bottom:8px}
.standby-tagline{display:block;font-family:var(--mono);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:900;margin:0 0 18px;max-width:920px}
.pre-score-copy p:last-child{font-family:var(--mono);font-size:.86rem;color:var(--muted);max-width:920px}
.upload-tile{border:1px solid var(--ink-strong);background:var(--ink-strong);color:var(--bg);display:flex;flex-direction:column;justify-content:space-between;padding:18px;text-transform:uppercase;font-family:var(--mono);font-weight:900;letter-spacing:.1em;text-decoration:none;cursor:pointer;min-height:260px}
.upload-tile:hover{background:var(--accent);border-color:var(--accent)}
.upload-tile span{font-size:1.1rem}
.upload-tile strong{font-size:.76rem;color:inherit}

.console-shell{display:grid;grid-template-columns:310px minmax(0,1fr);gap:14px;align-items:start}
.role-rail{position:sticky;top:86px;max-height:calc(100vh - 104px);overflow:auto;border:1px solid var(--line);background:var(--panel)}
.rail-head{padding:12px;border-bottom:1px solid var(--line);background:var(--panel-2);display:grid;gap:7px}
.rail-head h2{font-family:var(--mono);font-size:.88rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-strong)}
.rail-head p{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.role-list{display:grid}
.role-btn{display:grid;grid-template-columns:28px minmax(0,1fr) 58px;gap:8px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line-2);background:transparent;color:var(--ink);padding:10px 12px;font-family:var(--mono);min-height:52px}
.role-btn:hover{background:var(--selection)}
.role-btn.active{background:var(--selection);box-shadow:inset 3px 0 0 var(--accent)}
.role-btn .rank{font-weight:900;color:var(--muted);font-size:.78rem}
.role-btn .role-name{font-family:var(--sans);font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-strong)}
.role-btn .score{font-weight:900;color:var(--accent);text-align:right}
.role-btn .role-sub{grid-column:2/4;color:var(--muted);font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.console-main{display:grid;gap:14px;min-width:0}
.active-summary{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:14px;border:1px solid var(--line);background:var(--panel);padding:14px}
.active-title{display:grid;gap:8px;min-width:0}
.active-title h2{font-family:var(--font-mode);font-size:clamp(1.6rem,2.8vw,3.3rem);line-height:.96;letter-spacing:-.045em;color:var(--ink-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase}
.active-meta{display:flex;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.score-tile{border:1px solid var(--line);background:var(--panel-2);display:grid;place-items:center;text-align:center;min-height:126px;font-family:var(--mono)}
.score-tile b{font-size:3.1rem;line-height:.85;color:var(--accent)}
.score-tile span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;margin-top:6px}
.score-line{display:flex;align-items:baseline;justify-content:center;gap:7px}
.score-line span{display:inline;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin-top:0}
.score-vector{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:4px}
.vector-cell{border:1px solid var(--line);background:var(--panel-2);padding:7px 8px;min-width:0;cursor:help}
.vector-cell b{display:block;font-family:var(--mono);font-size:1rem;line-height:.95;color:var(--ink-strong);white-space:nowrap}
.vector-cell b span{display:inline;font-size:.72em;color:var(--muted);text-transform:none;letter-spacing:.04em}
.vector-cell>span{display:block;font-family:var(--mono);text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vector-label{font-size:.58rem;letter-spacing:.07em;margin-top:5px}
.bottleneck-line{display:flex;gap:8px;align-items:center;font-family:var(--mono);font-size:.76rem;color:var(--muted)}
.bottleneck-line b{color:var(--bad);text-transform:uppercase;letter-spacing:.1em}

.drill-tabs{display:flex;border:1px solid var(--line);background:var(--panel);overflow:auto}
.drill-tab{border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);height:36px;padding:0 12px;font-family:var(--mono);font-weight:850;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.drill-tab:hover{background:var(--selection);color:var(--ink-strong)}
.drill-tab.active{background:var(--accent);color:var(--bg)}
.drill-action-btn{margin-left:auto;border:0;border-left:1px solid var(--line);background:var(--ink-strong);color:var(--bg);height:36px;padding:0 14px;font-family:var(--mono);font-weight:900;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.drill-action-btn:hover{background:var(--accent);color:var(--bg)}
.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;align-items:start}
.workspace-grid.full-width{grid-template-columns:minmax(0,1fr)}
.ledger-panel,.inspector-panel{border:1px solid var(--line);background:var(--panel);min-width:0}
.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:12px;border-bottom:1px solid var(--line);background:var(--panel-2)}
.panel-head h3{font-family:var(--mono);font-size:.86rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-strong)}
.panel-head p{font-family:var(--mono);font-size:.72rem;color:var(--muted);margin-top:4px}
.factor-filter{display:grid;gap:5px;min-width:230px;font-weight:850}
.factor-filter span{font-family:var(--mono);font-size:.62rem;color:var(--accent);text-transform:uppercase;letter-spacing:.1em}
.factor-filter select{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:7px 9px;font-family:var(--mono);font-size:.72rem}
.panel-body{padding:12px;min-width:0}
.inspector-panel{position:sticky;top:86px;max-height:calc(100vh - 104px);overflow:auto}
.inspector-empty{padding:12px;color:var(--muted);font-family:var(--mono);font-size:.78rem}
.inspector-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}

.evidence-ledger{display:grid;gap:6px}
.evidence-row{display:grid;grid-template-columns:72px minmax(0,1fr) 92px;gap:10px;align-items:start;width:100%;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);text-align:left;padding:10px}
.evidence-row:hover,.evidence-row.active{background:var(--selection);border-color:var(--accent)}
.evidence-id{font-family:var(--mono);font-weight:900;color:var(--accent);font-size:.78rem;text-transform:uppercase}
.evidence-text{min-width:0}
.evidence-text strong{display:block;color:var(--ink-strong);font-size:.92rem;line-height:1.25;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.evidence-text span{display:block;color:var(--muted);font-size:.78rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.evidence-score{text-align:right;font-family:var(--mono)}
.evidence-score b{display:block;color:var(--ink-strong);font-size:1rem}
.evidence-score span{display:block;color:var(--muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.09em}
.match-line{font-family:var(--mono);font-size:.68rem;color:var(--muted);margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.gap-queue{display:grid;gap:6px}
.gap-button{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:8px;width:100%;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);text-align:left;padding:9px}
.gap-button:hover,.gap-button.active{background:var(--selection);border-color:var(--bad)}
.gap-button strong{display:block;color:var(--ink-strong);font-size:.84rem;line-height:1.22;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gap-button span{display:block;color:var(--muted);font-family:var(--mono);font-size:.66rem;margin-top:4px}
.gap-button b{font-family:var(--mono);color:var(--bad);text-align:right}

.drill-panel{display:grid;gap:12px}
.split-detail,.single-grid,.compact-two,.block-grid,.two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.single-grid{grid-template-columns:1fr}
.block-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ui-block,.factor-card,.factor-compact,.resp-detail{border:1px solid var(--line);background:var(--panel-2);padding:12px;min-width:0}
.ui-block h3,.factor-card h3,.factor-compact h4,.resp-detail h3{color:var(--ink-strong)}
.ui-block p,.factor-card p,.factor-compact p{color:var(--muted)}
.header-line{font-family:var(--mono);font-size:.78rem;color:var(--muted);margin-bottom:4px}
.section-header-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:start}
.section-header-copy{min-width:0}
.section-score-box{border:1px solid var(--line);background:var(--panel-3);padding:10px}
.score-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line)}
.score-breakdown div{padding:8px;border-right:1px solid var(--line);text-align:center}
.score-breakdown div:last-child{border-right:0}
.score-breakdown b{display:block;color:var(--accent);font-family:var(--mono)}
.score-breakdown span{display:block;color:var(--muted);font-family:var(--mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}

.inventory-section{border:1px solid var(--line);background:var(--panel);margin-bottom:12px}
.inventory-section>details{border:0;margin:0;background:transparent}
.section-summary{padding:11px 12px;border-bottom:1px solid var(--line);background:var(--panel-2);display:flex;justify-content:space-between;gap:16px;align-items:flex-start;cursor:pointer;font-weight:400;list-style:none}
.section-summary::-webkit-details-marker{display:none}
.section-summary::after{content:"OPEN";font-family:var(--mono);font-size:.62rem;color:var(--accent);letter-spacing:.1em;margin-top:3px}
.section-summary.static-summary{cursor:default}
.section-summary.static-summary::after{content:""}
.inventory-section>details:not([open])>.section-summary{border-bottom:0}
.inventory-section>details:not([open])>.section-summary::after{content:"VIEW";color:var(--muted)}
.section-summary h2{font-family:var(--mono);font-size:.86rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-strong);margin-bottom:4px}
.section-summary p{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.section-body{padding:12px}

.resp-browser{border:1px solid var(--line);background:var(--panel);min-width:0}
.resp-filter-tabs{display:flex;border-bottom:1px solid var(--line);background:var(--panel-2);overflow:auto}
.resp-filter-tab{border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);height:34px;padding:0 11px;font-family:var(--mono);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.resp-filter-tab:hover{background:var(--selection);color:var(--ink-strong)}
.resp-filter-tab.active{background:var(--accent);color:var(--bg)}
.resp-filter-tab b{font-weight:900;margin-left:4px}
.resp-browser-grid{display:grid;grid-template-columns:minmax(230px,32%) minmax(0,1fr);min-height:520px}
.resp-browser-grid.no-filter{min-height:420px}
.resp-factor-list{border-right:1px solid var(--line);max-height:690px;overflow:auto;background:var(--panel-2)}
.resp-list-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;text-align:left;border:0;border-bottom:1px solid var(--line-2);background:transparent;color:var(--ink);padding:9px 10px;letter-spacing:0;text-transform:none}
.resp-list-item[hidden]{display:none!important}
.resp-list-item:hover{background:var(--selection)}
.resp-list-item.active{background:var(--panel);box-shadow:inset 3px 0 0 var(--accent)}
.resp-list-title{font-weight:850;color:var(--ink-strong);line-height:1.16;min-width:0}
.resp-list-score{font-family:var(--mono);font-weight:900;color:var(--accent)}
.resp-list-meta{grid-column:1/3;color:var(--muted);font-family:var(--mono);font-size:.66rem;line-height:1.25}
.resp-status{grid-column:1/3;width:max-content;border:1px solid var(--line);background:var(--panel);padding:2px 5px;font-family:var(--mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.resp-status.hit{color:var(--good);background:var(--good-soft)}
.resp-status.partial{color:var(--warn);background:var(--warn-soft)}
.resp-status.weak{color:var(--bad);background:var(--bad-soft)}
.resp-detail-pane{min-width:0;max-height:690px;overflow:auto;padding:12px;background:var(--panel)}
.resp-detail[hidden]{display:none!important}
.resp-detail{background:var(--panel-2)}
.resp-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:12px}
.resp-detail-head h3{font-size:1.18rem;line-height:1.1;margin-top:2px}
.resp-detail-score{border:1px solid var(--line);background:var(--panel-3);min-width:56px;text-align:center;padding:6px 8px;font-family:var(--mono);font-weight:900;color:var(--accent)}
.resp-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);margin:10px 0;background:var(--panel)}
.resp-metrics div{padding:8px;border-right:1px solid var(--line)}
.resp-metrics div:last-child{border-right:0}
.resp-metrics b{display:block;color:var(--accent);font-family:var(--mono);font-size:.95rem}
.resp-metrics span{font-family:var(--mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.resp-detail-block{margin:12px 0}
.resp-detail-block h4,.subhead{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0 0 6px;font-family:var(--mono)}
.resp-empty{padding:14px;color:var(--muted);font-family:var(--mono)}

.factor-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.factor-head strong{border:1px solid var(--line);padding:3px 6px;background:var(--panel);color:var(--accent);font-family:var(--mono)}
.factor-card.good,.factor-compact.match{border-color:color-mix(in srgb,var(--good) 45%,var(--line))}
.factor-card.warn,.factor-card.neutral,.factor-compact.partial{border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}
.factor-card.bad,.factor-card.weak,.factor-card.missing,.factor-compact.missing{border-color:color-mix(in srgb,var(--bad) 42%,var(--line))}
.factor-compact{display:grid;gap:6px}
.compact-head{display:flex;justify-content:space-between;gap:8px}
.term-pair{display:grid;gap:5px;font-family:var(--mono);font-size:.7rem;color:var(--muted)}
.field-list{display:grid;grid-template-columns:130px minmax(0,1fr);gap:5px 10px;margin:10px 0;font-size:.78rem}
.field-list dt{font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.field-list dd{margin:0;min-width:0;color:var(--ink)}
.coverage-bar{height:8px;background:var(--track);border:1px solid var(--line);margin-top:5px}
.coverage-bar span{display:block;height:100%;background:var(--accent)}
.claim-box{border:1px solid var(--line);background:var(--panel);padding:9px;color:var(--ink);font-size:.82rem;white-space:pre-wrap}
.std-list{color:var(--ink)}
.std-list b{color:var(--ink-strong)}
.chip,.pill{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:2px 6px;margin:2px 3px 2px 0;font-family:var(--mono);font-size:.66rem;line-height:1.35;text-transform:none}
.chip.hit{color:var(--good);border-color:color-mix(in srgb,var(--good) 50%,var(--line))}
.chip.miss,.chip.cap{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 50%,var(--line))}
.pill b{font-weight:900;color:var(--accent)}
.meta,.muted{color:var(--muted)}
.meta{font-family:var(--mono);font-size:.72rem}

.table-wrap,.raw-table-wrap{overflow:auto;border:1px solid var(--line);background:var(--panel)}
table{width:100%;border-collapse:collapse;font-size:.78rem}
th,td{border-bottom:1px solid var(--line-2);border-right:1px solid var(--line-2);padding:7px 8px;vertical-align:top;text-align:left}
th{position:sticky;top:0;background:var(--panel-2);color:var(--ink-strong);font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;z-index:1}
td{color:var(--ink)}
tr.selected-row td{background:var(--selection)}
.raw-json{white-space:pre-wrap;overflow:auto;max-height:520px;font-family:var(--mono);font-size:.7rem;background:var(--raw-bg);color:var(--raw-ink);padding:12px;border:1px solid var(--line)}
details{border:1px solid var(--line);background:var(--panel);margin-top:10px}
summary{padding:8px 10px;font-weight:850;cursor:pointer;background:var(--panel-2);font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-strong)}
details>div{padding:10px}
.location-picker{display:grid;gap:6px;margin-bottom:10px;font-weight:850}
.location-picker span{font-family:var(--mono);font-size:.66rem;color:var(--accent);text-transform:uppercase;letter-spacing:.1em}
.location-picker select{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:8px 9px}
.empty{border:1px dashed var(--line);background:var(--panel);padding:20px;color:var(--muted);font-family:var(--mono)}
.empty.warn{border-color:var(--bad);color:var(--bad)}

@media(max-width:1300px){
  body{min-width:1024px}
  .workspace-grid{grid-template-columns:minmax(0,1fr) 330px}
  .workspace-grid.full-width{grid-template-columns:minmax(0,1fr)}
  .score-vector{grid-template-columns:repeat(3,minmax(0,1fr))}
  .role-postings-row{grid-template-columns:34px minmax(260px,.34fr) minmax(180px,1fr) 86px 62px 108px}
}

.ingest-state{border:1px solid var(--line);background:var(--panel);padding:14px;min-height:220px}
.ingest-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:14px;align-items:stretch;min-height:190px}
.ingest-grid>div{border:1px solid var(--line);background:var(--panel-2);padding:16px}
.ingest-grid h2{font-family:var(--font-mode);font-size:clamp(1.4rem,2.6vw,3.4rem);line-height:.95;letter-spacing:-.04em;text-transform:uppercase;color:var(--ink-strong);margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ingest-grid p:last-child{font-family:var(--mono);color:var(--muted)}
.ingest-steps{display:grid;align-content:stretch;gap:6px}
.ingest-steps span{display:flex;align-items:center;border:1px solid var(--line);background:var(--panel);padding:10px 12px;font-family:var(--mono);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}
