:root{--bg:#000;--panel-2:#000;--panel:#0b0b0a;--border:#2b2925;--text:#ece7da;--muted:#8b8574;--accent:#ffb000;--accent-dim:#cc8a00;--warn:#ff6a2b;--danger:#ff6b6b;--font-pixel:"Press Start 2P", ui-monospace, monospace;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sidebar-w:380px;font-family:var(--font-mono);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:13px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}:focus{outline:none}:focus-visible{outline:1px solid var(--accent);outline-offset:1px}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:13px;overflow:hidden}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:0 0;margin:8px 0}::-webkit-scrollbar-thumb{background:#3a362e padding-box padding-box;border:4px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffb00073 padding-box padding-box}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:#3a362e transparent}}.topbar{background:var(--panel);flex-wrap:wrap;align-items:baseline;gap:14px;padding:12px 16px 10px;display:flex}h1{font-family:var(--font-pixel);letter-spacing:-.5px;color:var(--accent);text-shadow:0 0 14px #ffb00080;margin:0;font-size:15px;animation:4s ease-in-out infinite alternate pulse}@keyframes pulse{0%{text-shadow:0 0 10px #ffb00059}to{text-shadow:0 0 18px #ffb000a6}}.tagline{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:11px}.shell{background-color:var(--panel);height:calc(100% - 46px);display:flex;overflow:hidden}.main-col{flex-direction:column;flex:1;min-width:0;display:flex}.well{background:var(--bg);border-radius:16px;flex-direction:column;flex:1;min-height:0;margin:12px;display:flex;overflow:hidden}.stage{flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:10px;min-height:0;padding:12px;display:flex;position:relative;overflow:auto}.stage>.briefing,.stage>.result{margin-block:auto}.readout-host{border:2px dotted var(--border);background:var(--panel);border-bottom-right-radius:16px;border-bottom-left-radius:16px;flex-shrink:0;padding:14px}.readout{flex-direction:column;gap:2px;display:flex}.rline{white-space:pre;text-overflow:ellipsis;font-variant-numeric:tabular-nums;color:var(--text);font-size:12px;overflow:hidden}.rline.tone-accent{color:var(--accent)}.rline.tone-warn{color:var(--warn)}.rline.tone-muted{color:var(--muted)}.controlbar{flex-wrap:wrap;align-items:center;gap:10px;padding:0 12px 12px;display:flex}.stats{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-variant-numeric:tabular-nums;gap:14px;margin-left:auto;font-size:11px;display:flex}.stat-accent{color:var(--accent)}.resizer{cursor:col-resize;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:8px;display:flex}.resizer:before{content:"";background:var(--border);border-radius:999px;width:3px;height:34px}.resizer:hover:before{background:var(--accent-dim)}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.resizing canvas{pointer-events:none}.sidebar{width:var(--sidebar-w);background:var(--panel);scrollbar-gutter:stable;flex-direction:column;flex-shrink:0;gap:12px;padding:12px;display:flex;overflow-y:auto}.panel h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:500}.panel h2:before{content:">";color:var(--accent);margin-right:6px;transition:transform .15s;display:inline-block}.panel-body{flex-direction:column;gap:8px;display:flex}.hint{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);font-family:var(--font-mono);cursor:pointer;border-radius:8px;padding:7px 12px;font-size:13px;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-block}.btn:hover{border-color:var(--accent-dim)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#000;font-weight:600}.btn.primary:hover{background:var(--accent-dim);border-color:var(--accent-dim)}.btn.danger{border-color:var(--danger);color:var(--danger);background:0 0;font-weight:600}.btn.danger:hover{background:#ff6b6b1f}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--bg);border:1px solid var(--border);color:var(--muted);font-size:11px;font-family:var(--font-mono);cursor:pointer;border-radius:999px;padding:4px 11px;transition:border-color .12s,color .12s}.chip:hover{color:var(--text)}.chip.on{border-color:var(--accent);color:var(--accent);font-weight:700}.transport-list{flex-direction:column;gap:4px;display:flex}.trow{text-align:left;cursor:pointer;font-family:var(--font-mono);color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:92px 1fr auto;align-items:center;gap:8px;padding:7px 9px;font-size:12px;transition:background .12s,border-color .12s;display:grid}.trow:hover{background:var(--panel-2)}.trow.active{border-color:var(--accent);background:var(--panel-2)}.tcode{color:var(--accent);letter-spacing:.04em;font-size:11px;font-weight:700}.tname{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tprobe{letter-spacing:.06em;color:var(--muted);font-size:10px}.tprobe.ok{color:var(--accent-dim)}.tprobe.denied{color:var(--warn)}.trow.degraded .tcode{color:var(--muted)}textarea,input[type=text],input[type=number]{background:var(--panel-2);color:var(--text);border:1px solid var(--border);font-family:var(--font-mono);resize:vertical;border-radius:4px;width:100%;padding:6px 8px;font-size:13px}textarea:focus,input[type=text]:focus{border-color:var(--accent)}.add-rule{border:1px dashed var(--border);color:var(--muted);width:100%;font-family:var(--font-mono);cursor:pointer;background:0 0;border-radius:6px;padding:7px;font-size:12px;transition:color .12s,border-color .12s}.add-rule:hover{color:var(--text);border-color:var(--accent)}.hidden-file{display:none}.keydisplay{font-family:var(--font-pixel);color:var(--accent);text-shadow:0 0 12px #ffb00073;letter-spacing:2px;text-align:center;padding:10px 0 4px;font-size:22px}.keyinput{text-align:center;letter-spacing:6px;color:var(--accent)!important;padding:10px 8px!important;font-size:22px!important}.slider{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:11px;display:flex}.slider input{accent-color:var(--accent);flex:1}.slider-val{color:var(--accent);font-variant-numeric:tabular-nums;text-align:right;min-width:34px}.viz{border:1px solid var(--border);background:#000;border-radius:10px;flex:1;width:100%;min-height:140px;display:block}.viz.glyph-tx{aspect-ratio:1;width:auto;max-width:100%;height:100%;image-rendering:pixelated;border:none;border-radius:0;flex:0 auto}.viz.trace{flex:0 0 90px}.viz.trace.tall{flex:0 0 200px}.viz.feed-small{object-fit:cover;flex:0 0 150px}.symlog{color:var(--muted);white-space:pre;font-variant-numeric:tabular-nums;max-width:100%;margin:0;font-size:11px;line-height:1.5;overflow:auto}.lamp{aspect-ratio:1;border:1px solid var(--border);background:#050505;border-radius:18px;width:min(70vmin,320px);transition:background 20ms linear}.lamp.on{background:#fff;box-shadow:0 0 90px #ffffff8c}.lamp.buzz.on{background:var(--accent);box-shadow:0 0 70px #ffb00080}.handshake{flex-direction:column;align-items:center;gap:10px;width:100%;height:100%;min-height:0;display:flex}.btn.step{flex-shrink:0}.paper-out{flex-direction:column;align-items:center;gap:10px;width:100%;height:100%;min-height:0;display:flex}.pdf-preview{border:1px solid var(--border);background:#fff;border-radius:8px;flex:1;width:100%;min-height:220px}.result{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:640px;display:flex}.verdict{font-family:var(--font-pixel);text-align:center;color:var(--accent);text-shadow:0 0 10px #ffb00066;font-size:12px;line-height:1.7}.verdict.bad{color:var(--danger);text-shadow:none}.result-text{background:var(--panel-2);border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;border-radius:9px;width:100%;max-height:240px;margin:0;padding:10px;font-size:12px;overflow:auto}.result-actions{gap:8px;display:flex}.log{background:var(--panel-2);border:1px solid var(--border);height:130px;color:var(--muted);white-space:pre-wrap;word-break:break-word;border-radius:9px;margin:0;padding:8px;font-size:11px;line-height:1.55;overflow:auto}.ledger{font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;font-size:11px;display:flex}.ltotal{color:var(--accent);padding-bottom:4px}.lrow{grid-template-columns:1fr auto auto;gap:10px;display:grid}.lcode{color:var(--text)}.lmuted{color:var(--muted)}.lsep{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;border-top:1px solid var(--border);margin-top:6px;padding-top:6px}#boot{background:var(--bg);z-index:50;opacity:0;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#boot .boot-title{font-family:var(--font-pixel);color:var(--accent);text-shadow:0 0 20px #ffb0008c;letter-spacing:-.5px;font-size:20px}body.booting #boot{opacity:1;pointer-events:auto}body.booted #boot{animation:.5s cubic-bezier(.2,.8,.2,1) forwards bootOut}body.booting .shell,body.booting .topbar{opacity:0}body.booted .topbar{opacity:0;animation:.35s ease-out .18s forwards fadeIn}body.booted .main-col{opacity:0;animation:.4s cubic-bezier(.2,.9,.2,1) .24s forwards riseIn}body.booted .sidebar{opacity:0;animation:.4s cubic-bezier(.2,.9,.2,1) .3s forwards slideIn}body.booted .shell{opacity:1}@keyframes bootOut{to{opacity:0;visibility:hidden;transform:scale(1.04)}}@keyframes fadeIn{to{opacity:1}}@keyframes riseIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes slideIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@media (width<=900px){.shell{flex-direction:column;height:calc(100% - 58px)}.resizer{display:none}.sidebar{border-left:none;border-top:1px solid var(--border);width:100%;max-height:45%}.main-col{flex:55%;min-height:240px}.well{margin:8px}.rline{font-size:11px}}@media (prefers-reduced-motion:reduce){#boot{display:none}body.booting #app{visibility:visible}h1,body.booted .topbar,body.booted .main-col,body.booted .sidebar,body.booting .shell,body.booting .topbar{opacity:1;animation:none;transform:none}}.briefing{flex-direction:column;align-items:flex-start;gap:14px;width:100%;max-width:520px;padding:4px 8px;display:flex}.brief-code{font-family:var(--font-pixel);color:var(--accent);text-shadow:0 0 14px #ffb00073;letter-spacing:-.5px;font-size:18px}.brief-facts{font-variant-numeric:tabular-nums;flex-direction:column;gap:3px;width:100%;font-size:12px;display:flex}.brief-row{grid-template-columns:106px 1fr;gap:10px;display:grid}.brief-row span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.brief-row b{color:var(--text);font-weight:500}.brief-note{border-left:1px solid var(--border);max-width:100%;padding-left:10px}.brief-go{color:var(--accent);margin:0;font-size:12px}.escalate{align-items:center;gap:6px;display:flex}.esc-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.chip.esc{border-color:var(--accent-dim);color:var(--accent)}.chip.esc:hover{border-color:var(--accent);background:#ffb0001a}
