.lathe{--paper:#eaf0f5;--card:#fff;--ink:#1b2145;--muted:#5a6486;--line:#cdd7e3;--brand:#5b3fd4;--brand2:#7a5cf0;--pink:#ff6f91;--wood:#f2c47c;--good:#12805c;--warn:#b25b00;--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--sans:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.lathe,.lathe *{box-sizing:border-box}.lathe button{font:inherit;color:inherit;cursor:pointer}.lathe{background:var(--paper);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);font:15px/1.5 var(--sans);color:var(--ink);text-align:left;border-radius:22px;grid-template:"top top"64px"stage panel"600px"strip strip"/minmax(0,1fr) 410px;margin:18px calc(50% + -1*min(620px,50vw - 12px)) 28px;display:grid;overflow:hidden}.lathe .top{border-bottom:2px solid var(--ink);background:var(--card);grid-area:top;justify-content:space-between;align-items:center;padding:0 22px;display:flex}.lathe .brand{align-items:center;gap:14px;display:flex}.lathe .ttl{font:800 1.35rem/1 var(--sans);letter-spacing:.08em;margin:0}.lathe .sub2{font:500 .72rem var(--mono);letter-spacing:.16em;color:var(--muted);margin:5px 0 0}.lathe .progress{border:2px solid var(--ink);background:var(--paper);box-shadow:3px 3px 0 var(--ink);font:700 .95rem var(--mono);border-radius:12px;align-items:center;gap:12px;padding:8px 14px;display:flex}.lathe .pbar{border:2px solid var(--ink);background:#fff;border-radius:99px;width:110px;height:10px;display:block;overflow:hidden}.lathe .pbar i{background:var(--brand);height:100%;transition:width .4s;display:block}.lathe .stage-wrap{grid-area:stage;min-height:0;padding:14px 0 10px 14px}.lathe .lathe-stage{border:2px solid var(--ink);height:100%;box-shadow:5px 5px 0 var(--ink);touch-action:none;cursor:grab;background:#e9eff4;border-radius:18px;position:relative;overflow:hidden}.lathe .lathe-stage:active{cursor:grabbing}.lathe .lathe-stage:focus-visible{outline:4px solid var(--brand2);outline-offset:3px}.lathe .gl{width:100%;height:100%;display:block}.lathe .lathe-labels{pointer-events:none;position:absolute;inset:0}.lathe .chip3d{white-space:nowrap;border:2px solid var(--ink);font:700 .74rem var(--mono);box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:8px;padding:3px 10px;position:absolute;top:0;left:0}.lathe .hud{z-index:2;position:absolute}.lathe .tl{flex-wrap:wrap;gap:8px;display:flex;top:14px;left:14px}.lathe .tr{top:14px;right:14px}.lathe .bl{font:500 .72rem var(--mono);color:var(--muted);margin:0;bottom:12px;left:16px}.lathe .bc{bottom:12px;left:50%;transform:translate(-50%)}.lathe .cam{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:12px;gap:4px;padding:4px;display:flex}.lathe .cam button{min-width:40px;height:36px;font:700 .85rem var(--mono);background:0 0;border:0;border-radius:8px}.lathe .cam button:hover{background:var(--paper)}.lathe .chip{border:2px solid var(--ink);font:700 .8rem var(--mono);box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:10px;padding:6px 12px}.lathe .chip.on{background:var(--ink);color:#fff}.lathe .play{border:2px solid var(--ink);font:700 .8rem var(--mono);box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:10px;padding:6px 12px}.lathe .panel{flex-direction:column;grid-area:panel;min-height:0;padding:14px 14px 10px;display:flex}.lathe .tabs{gap:4px;display:flex}.lathe .tab{border:2px solid var(--ink);font:700 .8rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:#dfe7ef;border-bottom:0;border-radius:12px 12px 0 0;padding:9px 14px}.lathe .tab.on{background:var(--card);color:var(--ink)}.lathe .pane{background:var(--card);border:2px solid var(--ink);min-height:0;box-shadow:5px 5px 0 var(--ink);border-radius:0 14px 14px;flex:1;padding:14px 16px 18px;overflow:auto}.lathe .pill{background:var(--ink);color:#fff;font:700 .68rem var(--mono);letter-spacing:.08em;border-radius:99px;padding:3px 11px;display:inline-block}.lathe h2{font:800 1.35rem/1.15 var(--sans);margin:6px 0 4px}.lathe .ph{margin-top:0}.lathe h3{font:800 1.05rem var(--sans);margin:14px 0 6px}.lathe .sub{font:700 .78rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:20px}.lathe .brief{color:#2c3560;margin:0 0 10px;font-size:.95rem}.lathe .predict{border:2px solid var(--brand);background:#f3efff;border-radius:14px;padding:12px}.lathe .pq{margin:0 0 8px;font-weight:700}.lathe .opt{text-align:left;border:2px solid var(--ink);width:100%;box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:12px;margin:5px 0 0;padding:9px 13px;font-weight:600;display:block}.lathe .opt:hover{background:#fff7e0}.lathe .opt.sm{padding:9px 12px;font-size:.92rem}.lathe .opt.right{border-color:var(--good);background:#dff5ea}.lathe .opt.wrong{background:#fde3e3;border-color:#b3261e}.lathe .fb{border-radius:12px;margin:0 0 12px;padding:10px 12px;font-size:.92rem}.lathe .fb.good{border:2px solid var(--good);background:#e3f6ec}.lathe .fb.warn{border:2px solid var(--warn);background:#fff1d9}.lathe .ctrls{border:2px solid var(--line);border-radius:14px;margin:0 0 10px;padding:10px 14px 4px;position:relative}.lathe .ctrls.lockd{opacity:.5}.lathe .lockmsg{font:700 .78rem var(--mono);color:var(--brand);margin:0 0 6px}.lathe .sl{margin:0 0 4px;display:block}.lathe .sl span{font:700 .78rem var(--mono);justify-content:space-between;margin-bottom:2px;display:flex}.lathe .sl b{color:var(--brand)}.lathe input[type=range]{width:100%;height:30px;accent-color:var(--brand)}.lathe .status{font:700 .82rem var(--mono);background:var(--paper);border:2px solid var(--line);border-radius:10px;margin-bottom:10px;padding:8px 12px}.lathe .status.ok{border-color:var(--good);color:var(--good);background:#e3f6ec}.lathe .win{border:2px solid var(--good);background:#e3f6ec;border-radius:14px;padding:12px 14px}.lathe .win h3{color:var(--good);margin:0 0 4px}.lathe .win p{margin:0 0 10px;font-size:.92rem}.lathe .next{border:2px solid var(--ink);background:var(--brand);color:#fff;box-shadow:3px 3px 0 var(--ink);border-radius:12px;padding:10px 18px;font-weight:800}.lathe .ghost{border:2px dashed var(--muted);font:700 .8rem var(--mono);color:var(--muted);background:0 0;border-radius:10px;padding:7px 12px}.lathe .ghost:disabled{opacity:.5}.lathe .hint{background:#fffbe6;border-left:4px solid #e8b400;border-radius:6px;margin:0 0 8px;padding:8px 10px;font-size:.92rem}.lathe .legend{gap:10px;margin:0;padding:0;list-style:none;display:grid}.lathe .legend li{gap:12px;display:flex}.lathe .legend p{color:var(--muted);margin:0;font-size:.9rem}.lathe .sw{border:2px solid var(--ink);border-radius:7px;flex:none;width:22px;height:22px;margin-top:2px}.lathe .note{color:var(--muted);font-size:.88rem}.lathe .small{font-size:.78rem}.lathe .eq{background:var(--paper);border:2px solid var(--ink);font:500 1.05rem var(--mono);border-radius:14px;gap:8px;padding:14px 16px;display:grid}.lathe .eq .num{color:var(--brand);font-weight:700}.lathe .int{vertical-align:middle;align-items:center;display:inline-flex}.lathe .isym{margin-right:1px;font:300 2.1rem/1 serif}.lathe .lim{flex-direction:column;justify-content:space-between;height:2rem;margin-right:6px;font-size:.7rem;display:inline-flex}.lathe .dx{font-style:italic}.lathe .fr{text-align:center;vertical-align:middle;flex-direction:column;display:inline-flex}.lathe .fr i{padding:0 3px;font-style:normal}.lathe .fr i:first-child{border-bottom:2px solid var(--ink)}.lathe .bars{gap:10px;display:grid}.lathe .bars div{grid-template-columns:1fr auto;align-items:center;gap:4px 10px;display:grid}.lathe .bars span{font:700 .78rem var(--mono)}.lathe .bar{border:2px solid var(--ink);border-radius:8px;grid-column:1/2;height:16px;display:block}.lathe .bar.ex{background:var(--brand)}.lathe .bar.st{background:var(--wood)}.lathe .bars b{font:700 .95rem var(--mono)}.lathe .qcard{border:2px solid var(--line);border-radius:14px;margin-bottom:12px;padding:12px}.lathe .qp{margin:0 0 8px;font-weight:600}.lathe .qn{background:var(--ink);color:#fff;width:24px;height:24px;font:700 .8rem var(--mono);border-radius:7px;place-items:center;margin-right:8px;display:inline-grid}.lathe .strip{border-top:2px solid var(--ink);background:#dfe7ef;flex-direction:column;grid-area:strip;gap:8px;min-width:0;padding:8px 18px;display:flex}.lathe .strip-head{font:700 .72rem var(--mono);letter-spacing:.12em;align-items:baseline;gap:14px;display:flex}.lathe .strip-head em{color:var(--muted);font-style:normal;font-weight:500}.lathe .cards{gap:12px;padding:2px 4px 8px 2px;display:flex;overflow-x:auto}.lathe .lcard{border:2px solid var(--ink);text-align:left;width:218px;box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:14px;flex:none;align-items:center;gap:10px;padding:6px 12px 6px 6px;font-size:.9rem;font-weight:700;display:flex}.lathe .lcard .th{background:var(--paper);border-radius:9px;flex:none;place-items:center;width:74px;height:50px;display:grid}.lathe .lcard svg{width:68px;height:46px}.lathe .lcard small{font:500 .68rem var(--mono);color:var(--muted);display:block}.lathe .lcard.now{border-color:var(--brand);box-shadow:3px 3px 0 var(--brand);background:#f3efff}.lathe .lcard.done .th{background:#dff5ea}.lathe .lcard.lock{opacity:.55;box-shadow:none;border-style:dashed}@media (max-width:980px){.lathe{border-radius:16px;grid-template:"top""stage""panel""strip"/minmax(0,1fr);margin-left:-4px;margin-right:-4px}.lathe .stage-wrap{padding:12px 12px 0}.lathe .lathe-stage{height:50vh;min-height:300px}.lathe .chip3d{padding:2px 7px;font-size:.62rem}.lathe .chip{padding:5px 9px;font-size:.7rem}.lathe .panel{padding:14px 12px}.lathe .pane{max-height:none}.lathe .ttl{font-size:1rem}.lathe .sub2{display:none}.lathe .top{padding:0 12px}.lathe .progress{padding:6px 10px}.lathe .pbar{width:60px}.lathe .tab{padding:9px 10px}.lathe .hintline,.lathe .play{display:none}.lathe .tl{right:14px}}@media (prefers-reduced-motion:reduce){.lathe,.lathe *{transition:none!important}}.lathe .chip3d.drag{color:#1b2145;background:#ff6f91;animation:1.8s ease-in-out infinite pulse}.lathe .chip3d.locked{color:var(--muted);background:#fff;animation:none}.lathe .chip3d.shake{animation:.4s shake}@keyframes pulse{50%{box-shadow:2px 2px 0 var(--ink),0 0 0 6px #ff6f9159}}@keyframes shake{25%{margin-left:-6px}75%{margin-left:6px}}.lathe .gsvg{border:2px solid var(--ink);touch-action:none;background:#fff;border-radius:14px;width:100%;height:auto;display:block}.lathe .gread{font:500 .8rem var(--mono);justify-content:space-between;gap:10px;margin:10px 0 6px;display:flex}.lathe .gread b{color:var(--brand)}.lathe .tabs{flex-wrap:wrap}.lathe .tab{padding:9px 11px}@media (prefers-reduced-motion:reduce){.lathe .chip3d.drag{animation:none}}.lathe .gl-off{border:2px solid var(--ink);font:600 .82rem var(--mono);z-index:3;background:#fff7e0;border-radius:10px;margin:0;padding:10px 12px;position:absolute;inset:auto 14px 56px}.lathe h2,.lathe h3{color:var(--ink)}.lathe button:focus-visible,.lathe input:focus-visible{outline:3px solid var(--brand2);outline-offset:2px}.lathe button{margin:0}.lathe .top{grid-area:top}
