:root{--bg: #0a0d0d;--panel: #121414;--text: #d9d9d9;--accent: #59f28c;--system: #73d9f2;--success: #59f28c;--warning: #f2cc4d;--error: #f25959;--trace: #f2994d;--dim: #808585;--echo: #cc99ff;--font: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}:root[data-theme=amber]{--bg: #0f0a03;--panel: #1a1205;--text: #ffb84d;--accent: #ffcc66;--system: #ff9e33;--success: #ffd980;--warning: #ff8c26;--error: #ff5933;--trace: #ff8026;--dim: #8c662e;--echo: #ffe6b3}:root[data-theme=ice]{--bg: #050a14;--panel: #0a121f;--text: #cce6ff;--accent: #73d9ff;--system: #73bfff;--success: #80ffe6;--warning: #ffd966;--error: #ff6680;--trace: #ffa666;--dim: #66809e;--echo: #ccb3ff}:root[data-theme=mono]{--bg: #0d0d0d;--panel: #171717;--text: #e0e0e0;--accent: #ffffff;--system: #bfbfbf;--success: #ffffff;--warning: #d9d9d9;--error: #ff7373;--trace: #cccccc;--dim: #737373;--echo: #f2f2f2}:root[data-theme=red]{--bg: #120303;--panel: #1c0505;--text: #ff8c80;--accent: #ff4d40;--system: #ff7366;--success: #ffb399;--warning: #ffcc66;--error: #ff3333;--trace: #ff6633;--dim: #8c4038;--echo: #ffbfd9}:root[data-theme=lantern]{--bg: #0d0514;--panel: #170a21;--text: #e0ccff;--accent: #bf8cff;--system: #b399ff;--success: #d9a6ff;--warning: #ffcc73;--error: #ff668c;--trace: #ff9966;--dim: #73618f;--echo: #f2bfff}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);overflow:hidden}body{font:14px/1.45 var(--font);-webkit-text-size-adjust:100%}#app{display:flex;flex-direction:column;height:100dvh;max-width:980px;margin:0 auto;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#header{padding:8px 16px 4px;font-size:11px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#job{color:var(--system)}#meter{background:var(--panel);padding:6px 16px;font-size:11px}#meter .row{display:flex;align-items:center;gap:10px}#meter .row.small{margin-top:4px;flex-wrap:wrap;row-gap:2px}#meter .label{color:var(--dim)}#meter .bar{flex:1;height:8px;border-radius:2px;background:color-mix(in srgb,var(--dim) 25%,transparent);overflow:hidden}#trace-fill{height:100%;width:0;background:var(--success);transition:width .4s ease-out,background .4s}#trace-pct{width:40px;text-align:right;font-variant-numeric:tabular-nums}#heat,#rate,#credits{color:var(--dim)}#heat.hot{color:var(--warning)}#breach{color:var(--error)}#fw{color:var(--trace)}#timer{color:var(--warning)}#timer.low{color:var(--error)}.spacer{flex:1}#output{flex:1;overflow-y:auto;padding:8px 16px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--dim) transparent}.crt-on #output{text-shadow:0 0 4px color-mix(in srgb,var(--text) 35%,transparent)}.line{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.45em}.normal{color:var(--text)}.prompt{color:var(--accent)}.system{color:var(--system)}.success{color:var(--success)}.warning{color:var(--warning)}.error{color:var(--error)}.trace{color:var(--trace)}.dim{color:var(--dim)}.echo,.chat{color:var(--echo)}#input-row{display:flex;align-items:baseline;gap:6px;padding:10px 16px;background:var(--panel)}#prompt{color:var(--accent);white-space:nowrap;flex-shrink:0;max-width:60%;overflow:hidden;text-overflow:ellipsis}#input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text);caret-color:var(--accent);font:inherit;padding:0}#crt,#pulse,#flash{position:fixed;inset:0;pointer-events:none}#crt{display:none;background:repeating-linear-gradient(to bottom,rgb(0 0 0 / .22) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 55%,rgb(0 0 0 / .5) 100%)}.crt-on #crt{display:block}#flash{background:red;opacity:0}#flash.go{animation:flash 1.2s ease-out}@keyframes flash{0%{opacity:.55}to{opacity:0}}#pulse{background:red;opacity:0}#pulse.on{animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.02}50%{opacity:.1}}@media(max-width:600px),(pointer:coarse){#input,#prompt{font-size:16px}body{font-size:13px}}@media(prefers-reduced-motion:reduce){#flash.go,#pulse.on{animation:none}}
