:root{--bg: #0b0f14;--panel: #131a22;--line: #223041;--panel2: #182029;--fg: #e6edf3;--muted: #8b9bb0;--good: #3fb950;--bad: #f85149;--warn: #d29922;--accent: #58a6ff;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.shell{max-width:760px;margin:0 auto;padding:24px 18px 72px}.shell.narrow{max-width:420px;padding-top:12vh}h1{font-size:26px;margin:0 0 2px;letter-spacing:-.02em}h2{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 12px}.sub{color:var(--muted);margin:0 0 22px;font-size:14px}.topbar{display:flex;justify-content:space-between;align-items:flex-start}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:14px}.card.warn{border-color:#5c4813;background:#1e1a0e}.muted-card{background:var(--panel2)}label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}input,select{width:100%;padding:9px 11px;border-radius:8px;border:1px solid var(--line);background:#0d1319;color:var(--fg);font-size:15px}input.tiny{width:74px;padding:5px 7px;font-size:14px}button{margin-top:14px;padding:9px 16px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#06121f;font-weight:600;font-size:15px;cursor:pointer}button:disabled{opacity:.55;cursor:default}button.ghost{background:transparent;color:var(--muted);border-color:var(--line);margin:0}.tabs{display:flex;gap:8px;margin-bottom:14px}.tabs button{margin:0;background:transparent;color:var(--muted);border-color:var(--line);text-transform:capitalize}.tabs button.on{background:var(--panel);color:var(--fg);border-color:var(--accent)}.row{display:flex;gap:8px;align-items:center}.row select{width:auto}.metric{margin-bottom:12px}.metric-head{display:flex;justify-content:space-between;font-size:14px;margin-bottom:5px}.bar{height:7px;background:#0d1319;border-radius:4px;overflow:hidden}.bar-fill{height:100%;background:var(--good);transition:width .3s}.bar-fill.over{background:var(--bad)}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;font-weight:500;color:var(--muted);font-size:12px;padding:5px 6px;border-bottom:1px solid var(--line)}.tbl td{padding:6px;border-bottom:1px solid #1a232e;vertical-align:middle}.tbl button{margin:0;padding:4px 10px;font-size:13px}.kv{list-style:none;padding:0;margin:0;font-size:14px}.kv li{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid #1a232e}.kv li span:first-child{color:var(--muted)}.chip{font-size:10px;padding:1px 6px;border-radius:999px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.chip-high{border-color:#1f4d2b;color:var(--good)}.chip-medium{border-color:#4d431f;color:var(--warn)}.chip-low{border-color:#4d2b1f;color:var(--bad)}.good{color:var(--good)}.bad{color:var(--bad)}.muted{color:var(--muted)}.small{font-size:13px}.steps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.step{font-size:12px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}.step.on{border-color:var(--accent);color:var(--accent)}.step.done{border-color:#1f4d2b;color:var(--good)}.subcard{background:#0d1319;border:1px solid var(--line);border-radius:9px;padding:12px 14px;margin:12px 0}.locs{list-style:none;padding:0;margin:10px 0}.locs li{padding:8px 0;border-bottom:1px solid #1a232e}.headline{font-size:17px;font-weight:600;margin:0 0 8px;line-height:1.35}.body{white-space:pre-wrap;margin:0 0 10px;font-size:15px}.focus{margin:6px 0 10px;padding-left:18px;font-size:14px}.focus li{margin:5px 0}h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 4px}input[type=file]{padding:7px;font-size:14px}input[type=checkbox]{width:auto;margin-right:6px}.tabs{flex-wrap:wrap}.scoreline{display:flex;align-items:baseline;gap:12px;margin:0 0 8px}.bignum{font-size:42px;font-weight:700;letter-spacing:-.03em}.band{font-size:13px;padding:3px 10px;border-radius:999px;border:1px solid var(--line)}.band-low{color:var(--good);border-color:#1f4d2b}.band-watch{color:var(--warn);border-color:#4d431f}.band-elevated{color:#f0883e;border-color:#5c3a13}.band-act{color:var(--bad);border-color:#5c1f1f}.card.band-act{border-color:#5c1f1f;background:#1e1113}.card.band-elevated{border-color:#5c3a13}.contrib{list-style:none;padding:0;margin:12px 0 0}.contrib li{padding:9px 0;border-top:1px solid #1a232e}.contrib li.actionable{border-left:2px solid var(--bad);padding-left:10px}.crow{display:flex;justify-content:space-between;align-items:center;gap:10px}.pts{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px}details.risk{border-top:1px solid #1a232e;padding:9px 0}details.risk summary{cursor:pointer;font-size:15px}details.risk[open] summary{margin-bottom:8px}.sev{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;background:var(--muted)}.sev-5{background:var(--bad)}.sev-4{background:#f0883e}.sev-3{background:var(--warn)}.sev-2,.sev-1{background:var(--muted)}.cal{list-style:none;padding:0;margin:0;font-size:14px}.cal li{display:grid;grid-template-columns:24px 62px 1fr auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #1a232e}.cal li.cal-done{opacity:.55}.caldate{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.calstate{font-size:11px;text-transform:uppercase;letter-spacing:.05em}.chatbox{max-height:58vh;overflow-y:auto}.msg{margin:10px 0;display:flex}.msg-user{justify-content:flex-end}.msg-body{max-width:84%;padding:9px 13px;border-radius:12px;white-space:pre-wrap;font-size:15px;line-height:1.5}.msg-user .msg-body{background:#1b3350;border:1px solid #24466b}.msg-assistant .msg-body{background:#0d1319;border:1px solid var(--line)}.composer textarea{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:#0d1319;color:var(--fg);font:inherit;font-size:15px;resize:vertical}.composer .crow{margin-top:8px}.composer button{margin:0}.threads{list-style:none;padding:0;margin:0}.threads li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #1a232e}.linkish{background:none;border:none;color:var(--fg);padding:0;margin:0;font-size:14px;text-align:left;cursor:pointer}.linkish.on{color:var(--accent)}
