:root{--paper: #faf8f4;--paper-raised: #ffffff;--paper-inset: #f1eee7;--ink: #1c1e21;--ink-soft: #4a4d52;--ink-faint: #8a8d93;--hairline: #d9d4c9;--hairline-strong: #b8b2a4;--accent: #1a6b4a;--accent-soft: #e3efe8;--problem: #b3261e;--problem-soft: #f9e7e5;--warn: #8a6d1a;--warn-soft: #f6efd8;--chip: #24303c;--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace;--font-display: "Source Serif 4", Georgia, serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%}body{background:var(--paper);background-image:radial-gradient(circle at 1px 1px,rgba(28,30,33,.035) 1px,transparent 0);background-size:22px 22px;color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.45}.num,td.num,th.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.neg{color:var(--problem)}.pos{color:var(--accent)}.shell{max-width:1240px;margin:0 auto;padding:0 20px 60px}.masthead{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 18px;padding:18px 0 10px;border-bottom:2px solid var(--ink)}.masthead h1{font-family:var(--font-display);font-size:21px;font-weight:700;margin:0;letter-spacing:.01em}.masthead h1 span{color:var(--accent)}.masthead .refresh-stamp{margin-left:auto;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-soft)}.masthead .refresh-stamp.out-of-tie{color:var(--problem);font-weight:600}.nav{display:flex;flex-wrap:wrap;gap:2px;padding:8px 0;border-bottom:1px solid var(--hairline);align-items:center}.nav a{color:var(--ink-soft);text-decoration:none;padding:4px 10px;font-size:13px;font-weight:500;border-radius:2px}.nav a.active{background:var(--ink);color:var(--paper)}.nav a:hover:not(.active){background:var(--paper-inset)}.nav .help-link{margin-left:auto}.scopebar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;margin:14px 0;background:var(--paper-raised);border:1px solid var(--hairline);border-left:4px solid var(--chip);border-radius:2px}.scopebar .label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint)}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:500;border:1px solid var(--hairline-strong);border-radius:999px;background:var(--paper);cursor:pointer}.chip.on{background:var(--chip);color:#fff;border-color:var(--chip)}.chip.scope-chip{background:var(--ink);color:var(--paper);border-color:var(--ink);cursor:default}.chip.delta-chip.on{background:var(--accent);border-color:var(--accent)}.chip:disabled{opacity:.45;cursor:not-allowed}.scopebar .basis-note{font-size:11.5px;color:var(--warn);font-weight:600}.alerts{margin:12px 0;display:grid;gap:6px}.alert{padding:8px 12px;font-size:13px;border-radius:2px;background:var(--warn-soft);border-left:4px solid var(--warn)}.alert.critical{background:var(--problem-soft);border-left-color:var(--problem)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:12px;margin:16px 0}.card{background:var(--paper-raised);border:1px solid var(--hairline);border-radius:2px;padding:12px 14px 10px;position:relative;overflow:hidden}.card:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--hairline)}.card.good:after{background:var(--accent)}.card.bad:after{background:var(--problem)}.card.watch:after{background:var(--warn)}.card .k{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:4px}.card .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.card .sub{font-size:12px;color:var(--ink-soft);margin-top:3px}h2.section{font-family:var(--font-display);font-size:16.5px;font-weight:700;margin:26px 0 8px;display:flex;align-items:baseline;gap:10px}h2.section .note{font-family:var(--font-body);font-weight:400;font-size:12px;color:var(--ink-faint)}table.grid{width:100%;border-collapse:collapse;background:var(--paper-raised);border:1px solid var(--hairline)}table.grid th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);text-align:left;padding:6px 10px;border-bottom:1px solid var(--hairline-strong);background:var(--paper-inset);font-weight:600}table.grid td{padding:5px 10px;border-bottom:1px solid var(--hairline);font-size:13px}table.grid tr:last-child td{border-bottom:none}table.grid tr.total td{border-top:2px solid var(--ink);font-weight:600}table.grid tr:hover td{background:#fdfcf9}.flag-cell{background:var(--problem-soft)!important}.tag{font-size:10.5px;padding:1px 7px;border-radius:999px;border:1px solid var(--hairline-strong);color:var(--ink-soft)}.tag.inherited{border-style:dashed}.tag.override{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.tag.problem{background:var(--problem-soft);color:var(--problem);border-color:var(--problem)}.chart-frame{background:var(--paper-raised);border:1px solid var(--hairline);padding:14px;border-radius:2px}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--ink-soft);margin-bottom:8px}.chart-legend .swatch{display:inline-block;width:10px;height:10px;margin-right:5px;vertical-align:-1px}input,select,textarea,button{font-family:var(--font-body);font-size:13px;color:var(--ink)}input,select,textarea{border:1px solid var(--hairline-strong);border-radius:2px;padding:5px 8px;background:#fff}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}input.num-input{font-family:var(--font-mono);text-align:right}button.btn{background:var(--ink);color:var(--paper);border:none;padding:6px 14px;border-radius:2px;font-weight:600;cursor:pointer;font-size:13px}button.btn.primary{background:var(--accent)}button.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--hairline-strong)}button.btn:disabled{opacity:.4;cursor:not-allowed}.field{display:grid;gap:3px}.field>span{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-faint)}.workbench-row{background:var(--paper-raised);border:1px solid var(--hairline);border-radius:2px;padding:12px 14px;margin-bottom:12px}.workbench-inputs{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.buildup{display:flex;flex-wrap:wrap;gap:0;margin-top:12px;border:1px solid var(--hairline)}.buildup .step{padding:7px 14px;border-right:1px solid var(--hairline);background:var(--paper);min-width:96px}.buildup .step .k{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-faint)}.buildup .step .v{font-family:var(--font-mono);font-size:15px;font-weight:600}.buildup .step.result{background:var(--ink);color:var(--paper)}.buildup .step.result .k{color:#faf8f4a6}.buildup .step.problem{background:var(--problem-soft)}.summary-strip{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:22px;align-items:center;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:2px;margin-top:16px}.summary-strip .k{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#faf8f499}.summary-strip .v{font-family:var(--font-mono);font-size:16px;font-weight:600}.help-layout{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start}.help-toc{position:sticky;top:12px;font-size:12.5px;display:grid;gap:4px}.help-toc a{color:var(--ink-soft);text-decoration:none}.help-toc a:hover{color:var(--accent)}.help-body{max-width:760px}.help-body h1,.help-body h2,.help-body h3{font-family:var(--font-display)}.help-body h2{border-bottom:1px solid var(--hairline);padding-bottom:4px;margin-top:30px}.help-body code{font-family:var(--font-mono);background:var(--paper-inset);padding:1px 5px;border-radius:2px;font-size:12.5px}.help-body table{border-collapse:collapse}.help-body th,.help-body td{border:1px solid var(--hairline);padding:4px 10px;font-size:13px}.empty-note{padding:30px;text-align:center;color:var(--ink-faint);background:var(--paper-raised);border:1px dashed var(--hairline-strong)}.muted{color:var(--ink-faint);font-size:12px}@media(max-width:640px){.shell{padding:0 10px 40px}.cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.card .v{font-size:18px}.help-layout{grid-template-columns:1fr}.help-toc{position:static}table.grid{display:block;overflow-x:auto}}@media print{body{background:#fff;font-size:12px}.nav,.scopebar .chip:not(.scope-chip):not(.on),button,.help-link{display:none!important}.shell{max-width:none;padding:0}.card,.chart-frame,table.grid{border-color:#999;break-inside:avoid}.masthead{border-bottom-color:#000}a{color:inherit;text-decoration:none}}
