:root{--bg:#0d0f14;--panel:#161a22;--panel-2:#1e2430;--border:#2a3140;--text:#e6e9ef;--muted:#8b93a7;--accent:#5b8cff;--ok:#4ade80;--warn:#fbbf24;--err:#f87171;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:14px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}#app{flex-direction:column;height:100%;display:flex}header{border-bottom:1px solid var(--border);align-items:baseline;gap:16px;padding:16px 24px;display:flex}header h1{letter-spacing:.2px;margin:0;font-size:16px;font-weight:600}.status{color:var(--muted);font-size:12px}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}.status.err{color:var(--err)}.perf{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}main{flex:1;grid-template-columns:1fr 300px;min-height:0;display:grid}.stage{background:radial-gradient(circle at 50% 0%, #151a24 0%, var(--bg) 70%);min-height:0;padding:24px;overflow-y:auto}.toolbar{background:var(--panel);border:1px solid var(--border);z-index:5;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:16px;padding:10px 12px;display:flex;position:sticky;top:0}.tools{gap:4px;display:flex}.tools button{padding:6px 12px;font-size:12px}.tools button.active{background:var(--accent);border-color:var(--accent);color:#06102a;font-weight:600}.tfield{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.tfield b{color:var(--text);min-width:16px}.tfield input[type=range]{width:120px}.tfield input[type=number]{background:var(--panel-2);width:64px;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:6px;padding:5px 6px}.hint{color:var(--muted);margin-left:auto;font-size:11px}.views{grid-template-columns:repeat(auto-fill, minmax(min(var(--view-size,320px), 100%), var(--view-size,320px)));place-content:start center;gap:16px;width:100%;display:grid}.view{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;min-width:0;padding:10px;display:flex}.view-head{align-items:flex-start;gap:6px;min-width:0;display:flex}.channels{flex-wrap:wrap;flex:1;gap:4px 6px;min-width:0;display:flex}.channels label{color:var(--muted);white-space:nowrap;align-items:center;gap:3px;font-size:11px;display:flex}.channels select{border-radius:4px;width:auto;max-width:76px;padding:2px 4px;font-size:11px}.channels select:disabled{opacity:.4}.channels label.single{cursor:pointer;gap:4px}.channels input[type=checkbox]{accent-color:var(--accent);margin:0}.view canvas{aspect-ratio:1;width:100%;image-rendering:pixelated;background:#fff;border-radius:6px;display:block}.view-head button.remove{width:24px;color:var(--muted);flex:none;align-self:flex-start;padding:2px 0;line-height:1}button.wide{width:100%}.lab{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;padding:10px 12px}.lab summary{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;font-size:12px}.lab[open] summary{margin-bottom:10px}.lab>*+*{margin-top:10px}.lab-row{gap:14px;display:flex}.kernel-grids{flex-direction:column;gap:8px;display:flex}.kernel{grid-template-columns:40px 1fr;align-items:center;gap:6px;display:grid}.kernel-title{color:var(--muted);text-align:right;margin:0;font-size:10px}.kgrid{grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.kgrid input{text-align:center;border:1px solid var(--border);background:var(--panel-2);width:100%;min-width:0;color:var(--text);font-variant-numeric:tabular-nums;border-radius:3px;padding:3px 1px 3px 3px;font-size:10px}.kgrid input:focus{outline:1px solid var(--accent);outline-offset:-1px}.kgrid input:disabled{opacity:.8}.panel{border-left:1px solid var(--border);background:var(--panel);flex-direction:column;gap:18px;padding:20px;display:flex;overflow-y:auto}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.field b{color:var(--text)}select,input[type=range]{width:100%}select{background:var(--panel-2);color:var(--text);border:1px solid var(--border);font:inherit;border-radius:6px;padding:8px 10px}input[type=range]{accent-color:var(--accent)}.buttons{gap:8px;display:flex}button{border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;padding:9px 12px}.buttons button{flex:1}button:hover{border-color:var(--accent)}button.primary{background:var(--accent);border-color:var(--accent);color:#06102a;font-weight:600}.info{gap:6px;margin:0;font-size:12px;display:grid}.info>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding-bottom:6px;display:flex}.info dt{color:var(--muted)}.info dd{font-variant-numeric:tabular-nums;margin:0}.cond-sliders{flex-direction:column;gap:4px;display:flex}.cond-sliders .row{align-items:center;gap:6px;font-size:12px;display:flex}.cond-sliders .row label{text-align:center;min-width:22px;font-size:14px;line-height:1}.cond-sliders input[type=range]{flex:1;min-width:0}.cond-sliders output{text-align:right;min-width:30px;color:var(--text);font-variant-numeric:tabular-nums}.cond-reset{font:inherit;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);cursor:pointer;border-radius:6px;align-self:flex-start;padding:3px 8px;font-size:11px}.cond-reset:hover{color:var(--text)}.loss{color:var(--accent);gap:4px;margin-top:6px;display:grid}.loss[hidden]{display:none}.sparkline{width:100%;height:44px;color:var(--accent)}.loss-caption{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}
