:root{--bg:#0d1117;--panel:#151b23;--panel-2:#1c2530;--border:#2a3441;--text:#e6edf3;--muted:#8b98a5;--dim:#6e7d8c;--accent:#4c9aff;--ok:#3fb950;--warn:#d29922;--bad:#f85149;--info:#a371f7;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.55}.wrap{max-width:1240px;margin:0 auto;padding:28px 24px 72px}.masthead{border-bottom:1px solid var(--border);margin-bottom:26px;padding-bottom:20px}.masthead h1{letter-spacing:-.01em;margin:0 0 6px;font-size:22px;font-weight:650}.masthead p{color:var(--muted);max-width:78ch;margin:0}.badges{flex-wrap:wrap;gap:8px;margin:14px 0 0;display:flex}.badge{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);text-transform:uppercase;border-radius:4px;padding:4px 9px;font-size:11px}.badge.mock{color:#e2b341;background:#2b2210;border-color:#7a5c12}.badge.ok{color:var(--ok);background:#10231400;border-color:#1f6f2d}.badge.bad{color:var(--bad);background:#2a1512;border-color:#7d2b26}.tiles{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:10px;margin:20px 0 0;display:grid}.tile{background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:12px 14px}.tile .n{font-family:var(--mono);font-size:21px;font-weight:600}.tile .l{color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:11px}.tile.ok .n{color:var(--ok)}.tile.warn .n{color:var(--warn)}.tile.bad .n{color:var(--bad)}.tile.info .n{color:var(--info)}section{margin-top:38px}section>h2{text-transform:uppercase;letter-spacing:.1em;color:var(--dim);margin:0 0 4px;font-size:12px;font-weight:600}section>.lede{color:var(--muted);max-width:84ch;margin:0 0 14px}.scenarios{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:14px;display:grid}.scn{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px 17px}.scn header{align-items:baseline;gap:10px;margin-bottom:3px;display:flex}.scn .id{font-family:var(--mono);color:var(--bg);background:var(--accent);border-radius:4px;padding:1px 7px;font-size:12px;font-weight:700}.scn h3{flex:1;margin:0;font-size:14.5px;font-weight:620}.scn .risk{color:var(--muted);border-left:2px solid var(--border);margin:6px 0 12px;padding-left:10px;font-size:12.5px}.scn ul{margin:0;padding:0;list-style:none}.scn li{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px;padding:6px 0;display:grid}.scn li:first-child{border-top:0}.scn .lbl{color:var(--text);font-size:12.5px}.scn .det{color:var(--dim);font-size:11.5px;font-family:var(--mono);grid-column:1/-1;line-height:1.45}.scn .sum{color:var(--muted);border-top:1px dashed var(--border);margin:12px 0 0;padding-top:10px;font-size:12.5px}.st{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;border-radius:3px;padding:2px 7px;font-size:10.5px}.st-synced{color:var(--ok);background:#0f2a17;border-color:#1f6f2d}.st-skip{color:var(--muted);border-color:var(--border);background:#232a33}.st-block{color:var(--bad);background:#2a1512;border-color:#7d2b26}.st-retry{color:var(--warn);background:#2b2210;border-color:#7a5c12}.st-info{color:var(--info);background:#221a33;border-color:#4b3576}.st-fail{color:var(--bad);background:#2a1512;border-color:#7d2b26}.verdict{font-family:var(--mono);letter-spacing:.05em;border-radius:3px;padding:2px 7px;font-size:10.5px}.verdict.pass{color:var(--ok);background:#0f2a17}.verdict.fail{color:var(--bad);background:#2a1512}.scroll{border:1px solid var(--border);background:var(--panel);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:720px;font-size:12.5px}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 12px}th{text-transform:uppercase;letter-spacing:.07em;color:var(--dim);background:var(--panel-2);font-size:10.5px;font-weight:600;position:sticky;top:0}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#1a222c}td.num,th.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}td.mono{font-family:var(--mono);color:var(--muted);font-size:11.5px}td.wrap-cell{white-space:normal;min-width:260px;color:var(--muted)}tr.mismatch td{background:#1f1512}tr.mismatch td:first-child{box-shadow:inset 3px 0 0 var(--bad)}.fx{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px;display:grid}.fxcard{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px 17px}.fxcard.realised{border-left:3px solid var(--ok)}.fxcard.unrealised{border-left:3px solid var(--info)}.fxcard h3{margin:0 0 2px;font-size:14.5px}.fxcard .kind{font-family:var(--mono);letter-spacing:.07em;color:var(--dim);text-transform:uppercase;font-size:10.5px}.calc{font-family:var(--mono);margin:12px 0;font-size:12px}.calc div{border-bottom:1px solid var(--border);justify-content:space-between;gap:14px;padding:5px 0;display:flex}.calc div:last-child{border-bottom:0;border-top:1px solid var(--muted);margin-top:3px;font-weight:650}.calc .k{color:var(--muted)}.calc .v{font-variant-numeric:tabular-nums}.gain .v{color:var(--ok)}.loss .v{color:var(--bad)}.fxcard p{color:var(--muted);margin:10px 0 0;font-size:12.5px}.note{border:1px solid var(--border);border-left:3px solid var(--warn);background:var(--panel);color:var(--muted);border-radius:6px;margin-top:14px;padding:12px 14px;font-size:12.5px}.note strong{color:var(--text)}.note code{font-family:var(--mono);color:var(--warn);font-size:11.5px}.blocked{background:#1c1310;border:1px solid #7d2b26;border-radius:8px;padding:16px 17px}.blocked h3{color:var(--bad);margin:0 0 8px;font-size:14.5px}.blocked dl{grid-template-columns:148px 1fr;gap:7px 16px;margin:0;font-size:12.5px;display:grid}.blocked dt{color:var(--dim);font-family:var(--mono);font-size:11.5px}.blocked dd{margin:0}footer{border-top:1px solid var(--border);color:var(--dim);margin-top:46px;padding-top:18px;font-size:12.5px}footer h2{text-transform:uppercase;letter-spacing:.1em;color:var(--dim);margin:0 0 8px;font-size:12px}footer ul{margin:0 0 14px;padding-left:18px}footer li{margin-bottom:3px}@media (max-width:720px){.wrap{padding:20px 14px 56px}.blocked dl{grid-template-columns:1fr;gap:2px 0}}
