@font-face{font-family:K3 Mono;src:local(Arial Black),local(Helvetica Neue),local(Arial)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--black:#000;--white:#fff;--line:#ffffff38;--panel-gap:1px;--mono:"Comic Code", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{background:var(--black);width:100%;height:100%;margin:0;overflow:hidden}#app{justify-content:flex-start;align-items:center;display:flex}.lab-grid{gap:var(--panel-gap);background:var(--white);grid-template-rows:1fr;grid-template-columns:1fr;width:min(100vw,100vh);height:min(100vw,100vh);display:grid;position:relative}.lab-grid:after{content:"";z-index:5;pointer-events:none;box-shadow:inset -1px 0 0 var(--line);position:absolute;inset:0}.k3-panel{isolation:isolate;background:var(--black);min-width:0;min-height:0;position:relative;overflow:hidden}.k3-panel canvas{cursor:grab;width:100%;height:100%;display:block}.k3-panel canvas:active{cursor:grabbing}.panel-title{z-index:2;color:var(--white);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;mix-blend-mode:difference;flex-direction:column;gap:2px;font-size:11px;display:flex;position:absolute;top:12px;left:12px}.panel-title strong{font:inherit;line-height:1}.font-picker{border:1px solid var(--line);width:100%;color:var(--white);font-family:var(--mono);text-transform:uppercase;background:#ffffff0a;border-radius:8px;font-size:10px}.font-picker summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.font-picker summary span{text-overflow:ellipsis;white-space:nowrap;opacity:.72;overflow:hidden}.font-body{grid-template-columns:minmax(0,1fr) auto auto;gap:6px;padding:0 8px 8px;display:grid}.font-picker button{padding:5px 7px}.font-picker button:disabled{cursor:not-allowed;opacity:.42}.panel-controls{z-index:20;border:1px solid var(--line);width:min(300px,100% - 20px);color:var(--white);background:#000000fa;border-radius:10px;position:fixed;top:10px;left:10px}.scene-controls,.control-controls{left:auto;right:10px}.panel-controls.is-dragging{z-index:30;-webkit-user-select:none;user-select:none}.panel-controls summary{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;justify-content:space-between;align-items:center;padding:8px 10px;font-size:11px;display:flex}.panel-controls.is-dragging summary{cursor:grabbing}.scene-controls>summary,.control-controls>summary{cursor:grab;touch-action:none}.control-body{gap:8px;padding:0 10px 10px;display:grid}.control-row{min-height:22px;font-family:var(--mono);text-transform:uppercase;grid-template-columns:94px minmax(0,1fr) 38px;align-items:center;gap:8px;font-size:10px;display:grid}.control-row.boolean{grid-template-columns:1fr auto}.control-boolean-group{flex-wrap:wrap;gap:8px 12px;display:flex}.control-row.boolean.inline{grid-template-columns:none;justify-content:flex-start;align-items:center;gap:6px;width:auto;min-height:22px;display:inline-flex}.control-row.boolean.inline input{flex:none;width:16px;height:16px}.control-row.boolean.inline span{white-space:nowrap}.control-row.select,.control-row.text{grid-template-columns:94px minmax(0,1fr)}.control-row.color{grid-template-columns:94px minmax(0,1fr) 54px}.control-row output{text-align:right;font-variant-numeric:tabular-nums;opacity:.82}input[type=range]{width:100%;accent-color:var(--white)}input[type=checkbox]{width:16px;height:16px;accent-color:var(--white)}input[type=text]{border:1px solid var(--line);background:var(--black);width:100%;color:var(--white);font:inherit;text-transform:uppercase;border-radius:6px;padding:3px 6px}input[type=color]{border:1px solid var(--line);background:var(--black);cursor:pointer;border-radius:6px;width:100%;height:22px;padding:1px 2px}select{border:1px solid var(--line);background:var(--black);width:100%;color:var(--white);font:inherit;text-transform:uppercase;border-radius:6px;padding:3px 6px}.export-actions{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:6px;padding-top:2px;display:grid}.experiment-status{color:#ffffffb8;font-family:var(--mono);text-transform:uppercase;margin:0;font-size:10px;line-height:1.35}button{border:1px solid var(--line);color:var(--white);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:6px;padding:7px 8px;font-size:10px;font-weight:700}button:hover,button:focus-visible{background:var(--white);color:var(--black)}@media (width<=850px),(height<=640px){html,body,#app{height:auto;min-height:100%;overflow:auto}#app{flex-direction:column;justify-content:flex-start;align-items:stretch;display:flex}.lab-grid{flex:none;width:100vw;height:100vw;max-height:72vh}.panel-controls{width:calc(100% - 20px);max-width:none;margin:10px 10px 0;position:static!important}.panel-controls:last-child{margin-bottom:10px}.scene-controls,.control-controls{left:auto;right:auto}.panel-controls summary,.scene-controls>summary,.control-controls>summary{cursor:pointer;touch-action:auto}.panel-controls.is-dragging summary{cursor:pointer}.control-body{gap:10px}}
