:root{--bg: #1b1714;--paper: #f2e4c9;--ink: #1b1714;--rule: #8a6a45;--ok: #2f6b3c;--bad: #9b2c1f;--mono: "IBM Plex Mono", ui-monospace, monospace;--sans: "IBM Plex Sans", sans-serif;scrollbar-gutter:stable}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--sans)}.frame{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:28px 0 64px}header.ledger{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--rule);padding-bottom:12px;margin-bottom:22px}header.ledger strong{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-size:13px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{border:1px solid var(--rule);padding:14px;background:#241f1b}.stat b{font-family:var(--mono);font-size:28px;display:block}.panel{margin-top:18px;border:1px solid var(--rule);padding:14px;max-height:420px;overflow:auto;scrollbar-gutter:stable}table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid #3a322c}.bars{display:flex;align-items:flex-end;gap:6px;height:120px;margin-top:12px}.bars i{flex:1;background:var(--paper);min-height:4px;display:block}@media(max-width:800px){.grid{grid-template-columns:1fr 1fr}}.muted{color:#cbb79a}.bad{color:var(--paper);background:var(--bad);padding:8px 10px}.gate-card{max-width:420px;max-height:none}.gate-card form{display:grid;gap:12px;margin-top:14px}.gate-card label{display:grid;gap:6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-family:var(--mono)}.gate-card input{font:inherit;text-transform:none;letter-spacing:0;padding:10px 12px;border:1px solid var(--rule);background:#1b1714;color:var(--paper)}.gate-card button,.text-btn{font:inherit;cursor:pointer}.gate-card button{justify-self:start;padding:10px 14px;border:1px solid var(--paper);background:var(--paper);color:var(--ink);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase}.gate-card button:disabled{opacity:.6}.text-btn,.gate-card button.text-btn{padding:0;border:0;background:none;color:var(--paper);text-decoration:underline;letter-spacing:0;text-transform:none}
