.stage{position:relative;height:250px;margin:0;background:#000;border:1px solid #2b2218;box-shadow:0 0 0 7px #241c12,0 0 0 8px #0d0a07;overflow:hidden;transition:height .6s cubic-bezier(.2,.9,.2,1)}.stage+.machine{margin-top:16px}.stage canvas{display:block;width:100%;height:100%}.stage-open{position:absolute;right:14px;bottom:12px;font:11px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#d9cfb8;border:1px solid #5a4a2e;padding:9px 14px;background:#0a0907bf}.stage-open:hover{border-color:#b8925a;color:#fff}.stage.full{height:min(82vh,760px)}.stage.full .stage-open{display:none}.stage-tools{position:absolute;left:14px;right:14px;bottom:12px;display:flex;gap:16px;align-items:center;font:11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#8d8d8d}.stage-tools label{margin:0;display:flex;gap:8px;white-space:nowrap}.stage-tools input[type=range]{flex:1;accent-color:var(--lamp);min-width:0}.stage-tools button{color:#d9cfb8;border:1px solid #5a4a2e;padding:8px 12px;background:#0a0907bf;white-space:nowrap}.stage-tools button:hover{border-color:#b8925a;color:#fff}.stage [hidden]{display:none}.stage-fallback{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:#8d8d8d;font-size:12px}@media(max-width:760px){.stage{order:1;height:200px;margin-top:8px}.machine{order:2}.sheet{order:3}.stage.full{height:70vh}.stage-tools{flex-wrap:wrap;gap:10px}}@media(prefers-reduced-motion:reduce){.stage{transition:none}}
