.workshop-world { position:absolute; inset:0; overflow:hidden; isolation:isolate; }
.workshop-world[hidden] { display:none; }
.workshop-room { position:absolute; inset:0; background:var(--paper) url('assets/notebook/workshop-room.png') center / 100% 100%; opacity:0.85; mix-blend-mode:multiply; pointer-events:none; }
.chapter-workshop #world { min-height:720px; }
.chapter-workshop .flying-machine { display:none; }
.chapter-workshop #stir,.chapter-workshop #stage-caption,.chapter-workshop #definition { display:none; }
.chapter-workshop #ink { opacity:0; }
.workshop-blueprint { position:absolute; top:13%; left:20%; width:67%; padding:20px 26px; background:#fff8e6ec; border-block:1px solid #9a784a77; box-shadow:5px 9px 22px #60452420; transform:rotate(-1deg); z-index:3; }
.bench-eyebrow { font:12px/1.4 system-ui,sans-serif; letter-spacing:0.15em; color:var(--rust); margin:0 0 9px; }
.bench-draft { font:italic clamp(18px,2vw,28px)/1.35 Georgia,serif; margin:0; overflow-wrap:anywhere; max-height:140px; overflow:auto; }
.workshop-apparatus { position:absolute; inset:23% 7% 22%; }
.bench-linkage { position:absolute; inset:0; width:100%; height:100%; stroke:#6e512b; stroke-width:3; stroke-dasharray:8 5; fill:none; }
.wheel-letter { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font:italic 18px Georgia,serif; color:#392d25; background:#fff0c9; border:1px solid #98734a; border-radius:50%; width:28px; height:28px; display:grid; place-items:center; }
.bench-wheel { position:absolute; width:19%; aspect-ratio:1; transform:translate(-50%,-50%); opacity:0.5; transition:opacity 0.5s; }
.bench-wheel.wheel-0 { width:35%; }
.bench-wheel.wheel-1 { width:20%; }
.bench-wheel.wheel-2 { width:15%; }
.bench-wheel.wheel-3 { width:19%; }
.bench-wheel.wheel-4 { width:15%; }
.bench-wheel.engaged,.bench-wheel.active { opacity:1; }
.bench-wheel.active { filter:drop-shadow(0 0 9px #ae6e2770); }
.wheel-art { position:absolute; inset:0; background-image:url('assets/notebook/workshop-parts.png'); background-size:200% 200%; background-repeat:no-repeat; clip-path:circle(49%); mix-blend-mode:multiply; }
.art-0 { background-position:0 0; }.art-1 { background-position:100% 0; }.art-2 { background-position:0 100%; }.art-3 { background-position:100% 100%; }
.bench-parts { position:absolute; top:3%; left:5%; right:5%; display:flex; justify-content:center; flex-wrap:wrap; gap:6px; z-index:4; }
.bench-part { font:14px/1.3 system-ui,sans-serif; background:#fff5dded; border:1px solid #a0855d; padding:9px 11px; }
.bench-part[aria-current=step] { background:var(--blue); color:#fff5df; border-color:var(--blue); }
.bench-part.written { border-bottom:3px solid var(--rust); }
.bench-measure { position:absolute; top:64%; left:26%; width:57%; border-block:1px solid #a85e37; padding:6px; text-align:center; color:var(--rust); font:italic 17px Georgia,serif; }
.bench-output { position:absolute; top:72%; left:15%; right:15%; text-align:center; font:italic 17px Georgia,serif; color:#6b492d; }
.bench-guide { position:absolute; bottom:15%; left:11%; right:11%; margin:0; text-align:center; font:17px/1.5 Georgia,serif; padding:9px; background:#fff5dfda; }
.bench-drive { position:absolute; bottom:5%; left:50%; transform:translateX(-50%); padding:14px 22px; border:1px solid #77552c; background:#4d3826; color:#fff4d6; font:16px Georgia,serif; }
.bench-task-rail { display:flex; position:absolute; top:62%; left:5%; right:5%; overflow:auto; padding:12px 0; gap:12px; }
.bench-task { min-width:145px; max-width:190px; padding:10px; border:1px solid #a5824e; background:#fff6df; font:15px/1.3 Georgia,serif; transition:transform 0.4s,background 0.4s; }
.bench-task.tracing { background:#dfbd76; transform:translateY(-7px); }
.workshop-world[data-mode=plan] .bench-output { top:76%; }
.workshop-world[data-mode=plan] .bench-guide { bottom:9%; font-size:15px; }
.workshop-world[data-mode=plan] .bench-drive { bottom:2%; }
.workshop-world[data-mode=plan] .workshop-blueprint { top:12%; }
.bench-quiz { border:0; padding:0; margin:24px 0; }
.bench-quiz legend { font-size:17px; margin-bottom:12px; }
.quiz-option { display:block; width:100%; padding:13px; text-align:left; background:#fff5df; border:1px solid var(--line); font:16px/1.4 Georgia,serif; margin-block:9px; }
.quiz-option:hover { border-color:var(--blue); }
.bench-feedback { font:16px/1.5 system-ui,sans-serif; color:var(--blue); }
.smart-summary { border-block:1px solid var(--line); padding:6px 0; font:16px/1.5 Georgia,serif; overflow-wrap:anywhere; }
.goal-pair { display:grid; gap:14px; margin-block:24px; }
.goal-pair section { padding:15px; border:1px solid var(--line); background:#fff6df66; overflow-wrap:anywhere; }
.goal-pair h2,.plan-step h2 { font:22px/1.25 Georgia,serif; margin:0 0 12px; }
.goal-pair p { font-size:17px; line-height:1.45; white-space:pre-wrap; }
.plan-list { padding-left:24px; }
.plan-step { padding:20px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.plan-step p { font-size:16px; line-height:1.5; }
.plan-revise { font-size:16px; margin-top:14px; }
.plan-revise summary { cursor:pointer; }
.plan-revise .quiet { margin-right:12px; }
.plan-status { color:var(--rust); font:16px/1.5 system-ui,sans-serif; }
@media(max-width:1000px) { .bench-part { font-size:14px; padding:7px; } .workshop-blueprint { left:10%; width:80%; top:17%; } }
@media(max-width:740px) {
  .chapter-workshop #world { height:620px; min-height:0; }
  .bench-parts { left:3%; right:3%; top:2%; gap:5px; }
  .bench-part { padding:8px; }
  .workshop-blueprint { top:19%; left:8%; width:84%; padding:14px; }
  .bench-draft { font-size:19px; max-height:100px; }
  .workshop-apparatus { inset:25% 3% 15%; }
  .bench-guide { font-size:16px; left:5%; right:5%; bottom:13%; }
  .bench-output { top:70%; left:10%; right:10%; font-size:17px; }
  .bench-drive { bottom:4%; width:max-content; }
  .workshop-world[data-mode=plan] .workshop-blueprint { top:19%; }
  .bench-task { min-width:130px; }
  .bench-measure { left:15%; width:70%; font-size:15px; }
}
