@import"https://fonts.googleapis.com/css2?family=Archivo+Black&family=IBM+Plex+Mono:wght@400;600&display=swap";:root{--ink:#151411;--paper:#e8e3d8;--hot:#f04b32;--acid:#d8f24a;--line:#2c2a25;--muted:#777166}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--ink);color:var(--ink);font-family:IBM Plex Mono,monospace}button,input{font:inherit}button{min-height:44px;border:1px solid var(--line);background:transparent;color:inherit;font-weight:600;cursor:pointer}button:hover,button:focus-visible{background:var(--acid);color:var(--ink);outline:2px solid var(--hot);outline-offset:2px}main{height:100vh;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--paper)}header{display:flex;justify-content:space-between;align-items:stretch;border-bottom:3px solid var(--ink);min-height:94px}.brand{display:flex;align-items:center;gap:18px;padding:15px 24px;background:var(--hot);min-width:47%}.brand span{writing-mode:vertical-rl;font-size:11px}.brand h1{font:clamp(38px,4vw,67px)/.82 "Archivo Black",sans-serif;letter-spacing:-.055em;margin:0}.brand p{margin:0;font-size:12px}.transport{display:flex;align-items:center;gap:8px;padding:14px 20px}.transport label{font-size:11px;font-weight:600}.transport input{width:58px;background:transparent;border:0;border-bottom:1px solid;padding:5px}.transport #status{font-size:10px;color:var(--muted);max-width:110px}.hot{background:var(--ink);color:var(--paper)}.shell{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 340px}.stage{min-width:0;min-height:0;padding:22px 24px;overflow:auto;border-right:3px solid var(--ink)}.source{height:58px;border:1px solid;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;margin-bottom:14px}.source strong,.source small{display:block}.source small{color:var(--muted);font-size:10px;margin-top:4px}.file{font-size:11px;font-weight:600;border-bottom:2px solid;padding:8px;cursor:pointer}.file input{display:none}canvas{display:block;width:100%;height:clamp(120px,21vh,220px);background:var(--ink);border-left:10px solid var(--hot);margin-bottom:18px}.lane-head{display:flex;justify-content:space-between;font-size:10px;font-weight:600;margin:12px 0 6px}.lane{height:112px;display:grid;grid-template-columns:repeat(16,minmax(42px,1fr));gap:3px;touch-action:none;min-width:720px}.step{position:relative;border:1px solid var(--line);background:#cbc5ba;overflow:hidden}.step .fill{position:absolute;inset:auto 0 0;background:var(--hot);pointer-events:none}.bias .step{background:linear-gradient(to top,#25231f 50%,#cbc5ba 50%)}.bias .fill{left:0;right:0;bottom:50%;height:3px;background:var(--acid)}.bias .step:after{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:1px dotted #7f786d}.step b{position:absolute;top:5px;left:6px;font-size:9px;z-index:2}.step-numbers{min-width:720px}aside{min-height:0;overflow:auto;background:#d3cec3}details{border-bottom:2px solid;padding:0 18px 18px}summary{padding:17px 0;font-size:12px;font-weight:600;cursor:pointer}.sliders{display:grid;gap:16px}.sliders label{font-size:10px;font-weight:600}.sliders label span{display:flex;justify-content:space-between;margin-bottom:5px}.sliders input{width:100%;accent-color:var(--hot)}.recipes{display:grid;grid-template-columns:1fr;gap:6px}.state{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.export{width:calc(100% - 36px);margin:18px;height:66px;background:var(--hot);display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:13px}.export span{font-size:24px}.note{margin:0 18px 24px;font-size:9px;color:var(--muted)}@media(max-width:850px){html,body{overflow:auto}main{height:auto;min-height:100vh}header{position:sticky;top:0;z-index:5;display:block;background:var(--paper)}.brand{min-width:0;padding:10px 14px;height:59px}.brand h1{font-size:36px}.brand p{display:none}.transport{padding:7px 10px;overflow-x:auto}.transport #status{display:none}.shell{display:block;min-width:0}.stage{box-sizing:border-box;width:100vw;max-width:100vw;border-right:0;padding:14px 12px;overflow-x:auto}.source{height:52px}canvas{height:130px}.lane{height:94px}.lane-head{min-width:720px}.shell aside{overflow:visible;border-top:3px solid}.recipes{grid-template-columns:repeat(3,1fr)}aside details:not([open]){padding-bottom:0}}@media(max-width:480px){.brand span{display:none}.transport button{padding:0 10px;white-space:nowrap}.transport label{display:flex;align-items:center}.transport input{width:50px}.source strong{font-size:11px}.source small{display:none}.file{font-size:9px}.recipes{grid-template-columns:1fr}.stage{padding-bottom:20px}}
