@font-face{font-family:Mona Sans;src:url(../fonts/MonaSans.woff2) format("woff2");font-weight:200 900;font-stretch:75% 125%;font-display:swap}:root{--n-50: #f2f5f3;--n-100: #e4ebe6;--n-300: #b6bfb8;--n-500: #909692;--n-800: #232925;--n-900: #101411;--g-300: #5fed83;--g-500: #0fbf3e;--g-700: #08872b;--g-900: #0a241b;--line: #2f3631;--font: "Mona Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--head: 56px}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:var(--n-900);color:var(--n-50);font:400 1rem/1.5 var(--font);font-variant-ligatures:none;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ol,ul{margin:0;padding:0}ol,ul{list-style:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--g-300);outline-offset:2px}.stage :focus-visible{outline-color:var(--g-700)}.top{height:var(--head);display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--n-50);text-decoration:none;font-weight:700}.top nav{display:flex;gap:4px}.top nav a{color:var(--n-300);text-decoration:none;font-weight:600;font-size:.9375rem;padding:8px 12px;border-radius:8px;min-height:40px;display:inline-flex;align-items:center}.top nav a:hover{color:var(--n-50);background:var(--n-800)}.top nav a[aria-current=page]{color:var(--n-50);box-shadow:inset 0 -2px 0 var(--g-500);border-radius:8px 8px 0 0}.bench{display:grid;grid-template-columns:minmax(0,1fr) 360px;height:calc(100dvh - var(--head));min-height:600px;gap:16px;padding:16px}.stage{position:relative;min-height:0;border-radius:16px;background:var(--n-100);overflow:hidden;color:var(--n-900)}.board{position:absolute;inset:0;touch-action:pan-y}.board-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y}.board-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.board-spots,.board-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.spot{position:absolute;left:0;top:0;padding:0;margin:0;background:transparent;border:0;border-radius:3px;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.spot[data-spot^=switch],.spot[data-spot^=cap],.spot[data-spot^=stab],.spot[data-spot^=screw]{outline:1.5px solid rgba(8,135,43,.55);outline-offset:-2px;background:#0fbf3e1a}.spot[data-spot^=screw]{border-radius:50%}.spot:hover{background:#0fbf3e38}.spot[data-spot=part]{outline:0;background:transparent;cursor:pointer}.spot[data-spot=part]:hover{background:#0fbf3e14}.spot-test:hover{background:transparent}.spot-blocker,.spot-blocker:hover{background:transparent;cursor:default}.spot:focus-visible{outline:2px solid var(--g-700);outline-offset:1px}.layer-label{position:absolute;left:0;top:0;padding:0 0 0 22px;font-size:.8125rem;font-weight:600;line-height:1;white-space:nowrap;color:var(--n-900);margin-top:-.5em;opacity:0;transition:opacity .25s;font-feature-settings:"tnum"}.layer-label:before{content:"";position:absolute;left:4px;top:50%;width:14px;height:1px;background:var(--n-900)}.layer-label:after{content:"";position:absolute;left:1px;top:50%;width:5px;height:5px;margin-top:-2px;border-radius:50%;background:var(--n-900)}.stage-tools{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;pointer-events:none}.segment{display:inline-flex;padding:3px;gap:2px;pointer-events:auto;background:#101411e6;border-radius:10px}.segment button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;background:transparent;border:0;border-radius:8px;color:var(--n-300);font-weight:600;font-size:.875rem;cursor:pointer}.segment button:hover{color:var(--n-50)}.segment button[aria-pressed=true]{background:var(--n-50);color:var(--n-900)}.swatch{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff59}.segment button[aria-pressed=true] .swatch{box-shadow:inset 0 0 0 1px #10141166}.unbox{--half: 26px;position:absolute;inset:0;padding-bottom:52px;background:var(--n-900);container-type:size;overflow:hidden}.unbox[data-done]{pointer-events:none;animation:unbox-out .6s 1.4s both}@keyframes unbox-out{to{opacity:0;visibility:hidden}}.u-scene{--k: .5;--u: calc(100cqw / 1500);position:absolute;left:50%;top:calc(50% - var(--half));width:min(100cqw,120cqh);aspect-ratio:1.2;transform:translate(-50%,-50%);container-type:inline-size}.u-photo,.u-vignette,.u-cavity,.u-lidshadow,.u-focus,.u-inside,.u-pw,.u-box{position:absolute;inset:0;width:100%;height:100%}.u-photo{display:block;-webkit-user-select:none;user-select:none;pointer-events:none}.u-vignette{pointer-events:none;background:radial-gradient(ellipse at 50% 52%,transparent 70%,rgba(16,20,17,.4) 100%);box-shadow:inset 0 0 3cqw .5cqw var(--n-900)}.u-inside{pointer-events:none}.u-pile{position:absolute;inset:0}.u-lidshadow,.u-focus{pointer-events:none}.u-lidwrap{position:absolute;left:0;top:0;width:1500px;height:1250px;transform-origin:0 0;transform:scale(var(--k));pointer-events:none}.u-lid{position:absolute;left:0;top:0;width:1500px;height:1250px;max-width:none;transform-origin:0 0;-webkit-user-select:none;user-select:none}.u-lidback{background:linear-gradient(200deg,#c4905f,#a87649 70%,#9a6a42)}.u-box{cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;z-index:5}.unbox[data-done] .u-box{cursor:default}.u-focus{z-index:5;opacity:0}.u-box:focus-visible~.u-focus{opacity:1}.u-in{position:absolute;height:auto;transform:translate(-50%,-50%) rotate(var(--irz));filter:drop-shadow(0 calc(var(--u) * 5) calc(var(--u) * 7) rgba(30,14,4,.55));-webkit-user-select:none;user-select:none}.u-in.is-gone{visibility:hidden}.u-in.is-returning{animation:unbox-return .5s cubic-bezier(.3,.7,.3,1) both}@keyframes unbox-return{0%{opacity:0;transform:translate(-50%,calc(-50% - var(--u) * 90)) rotate(var(--irz))}to{opacity:1;transform:translate(-50%,-50%) rotate(var(--irz))}}.u-pw{pointer-events:none;z-index:3}.u-pw.is-lifting{animation:unbox-clip 1s linear both}@keyframes unbox-clip{0%{clip-path:var(--rim)}30%,to{clip-path:var(--free)}}.u-part{position:absolute;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,-50%) scale(1) rotateX(var(--rx)) rotateY(var(--ry)) rotate(var(--rz))}.u-part img{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 calc(var(--u) * 14) calc(var(--u) * 12) rgba(30,14,4,.5))}.u-part:before{content:"";position:absolute;left:4%;right:4%;bottom:-4%;height:24%;background:radial-gradient(closest-side,rgba(30,14,4,.55),transparent);filter:blur(calc(var(--u) * 6));z-index:-1}.u-part.is-out{opacity:1;visibility:visible}.u-part.is-lifting{animation:unbox-lift 1s cubic-bezier(.25,.7,.25,1) both}@keyframes unbox-lift{0%{opacity:1;visibility:visible;transform:translate(calc(-50% + var(--dx) * var(--u)),calc(-50% + var(--dy) * var(--u))) scale(var(--s0)) rotateX(0) rotateY(0) rotate(var(--rz0))}45%{opacity:1;visibility:visible;transform:translate(calc(-50% + var(--dx) * var(--u) * .5),calc(-50% + var(--dy) * var(--u) * .5 - var(--u) * 230)) scale(1.05) rotateX(10deg) rotateY(-8deg) rotate(-14deg)}to{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1) rotateX(var(--rx)) rotateY(var(--ry)) rotate(var(--rz))}}.u-part.is-lifting:before{animation:unbox-shadow 1s both}@keyframes unbox-shadow{0%,60%{opacity:0}to{opacity:1}}.u-label{position:absolute;left:50%;top:calc(100% + .6cqw);transform:translate(-50%);white-space:nowrap;padding:2px 7px;border-radius:999px;background:#101411d1;font:600 11px var(--font);color:var(--n-100);font-size:clamp(9px,1.3cqw,12px)}.u-part.is-lifting .u-label{animation:unbox-label .3s .8s both}@keyframes unbox-label{0%{opacity:0}}.panel{display:flex;flex-direction:column;gap:20px;padding:4px 4px 4px 8px;overflow-y:auto;min-height:0}.stepper{display:grid;gap:2px}.stepper li{display:flex;align-items:center;gap:12px;min-height:32px;color:var(--n-500);font-weight:600;font-size:.9375rem}.step-mark{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;font-size:.75rem;font-variant-numeric:tabular-nums;border:1.5px solid var(--n-500);flex:none}.stepper .is-done{color:var(--n-300)}.stepper .is-done .step-mark{background:var(--g-500);border-color:var(--g-500);color:var(--n-900)}.stepper .is-current{color:var(--n-50)}.stepper .is-current .step-mark{border-color:var(--n-50);background:var(--n-50);color:var(--n-900)}.instruction h2{font-size:1.75rem;line-height:1.15;font-weight:700;font-stretch:100%}.instruction p{margin-top:8px;color:var(--n-300);font-size:1.0625rem}.progress{display:grid;gap:8px}.progress-bar{height:6px;border-radius:3px;background:var(--n-800);overflow:hidden}.progress-bar span{display:block;height:100%;width:100%;background:var(--g-500);transform-origin:left;transition:transform .25s}.progress-text{color:var(--n-300);font-size:.875rem;font-variant-numeric:tabular-nums}.primary{min-height:52px;padding:0 20px;background:var(--g-500);color:var(--n-900);border:0;border-radius:12px;cursor:pointer;font-weight:700;font-size:1.0625rem}.primary:hover{background:var(--g-300)}.primary:active{transform:translateY(1px)}.tester{display:flex;flex-direction:column;gap:8px;color:var(--n-300)}.typed{min-height:4.5lh;max-height:6.5lh;overflow-y:auto;padding:10px 12px;background:var(--n-900);border:1px solid var(--line);border-radius:10px;color:var(--n-50);font:500 1.0625rem/1.5 var(--font);white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4}.typed:focus-visible{outline:2px solid var(--g-500);outline-offset:2px}.typed[data-empty]:before{content:"Type or tap keys";color:var(--n-500);position:absolute;pointer-events:none}.caret{display:inline-block;width:2px;height:1.1em;margin-left:1px;vertical-align:text-bottom;background:var(--g-500);animation:caret-blink 1.1s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}.tester-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.tester strong{color:var(--n-50);font-size:1.25rem;font-variant-numeric:tabular-nums}.tester-last{min-width:0}.chip{padding:0 8px;border:1px solid var(--g-500);border-radius:999px;color:var(--g-300);font-size:.75rem;font-weight:600}.tester-meta .text-btn{margin-left:auto}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.tool{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;background:var(--n-800);border:1px solid var(--line);border-radius:10px;color:var(--n-50);font-weight:600;font-size:.875rem;cursor:pointer}.tool:hover:not(:disabled){border-color:var(--n-500)}.tool:disabled{color:var(--n-500);cursor:default}.tool.danger{background:#3a1c1c;border-color:#7c3030}.confirm{display:inline-flex;gap:8px}.text-btn{background:none;border:0;color:var(--g-300);font-weight:600;cursor:pointer;text-decoration:underline;padding:4px}.notice{min-height:1.5em;color:var(--n-300);font-size:.9375rem}.notice:empty{display:none}.page{max-width:1120px;margin:0 auto;padding:32px 20px 64px}.page h1{font-size:2.25rem;line-height:1.1;font-weight:700;margin-bottom:24px}.page h1:focus{outline:none}.count{color:var(--n-500);font-weight:500;font-variant-numeric:tabular-nums}.video{aspect-ratio:16 / 9;border-radius:16px;overflow:hidden;background:var(--n-800)}.video iframe,.video-play{width:100%;height:100%;border:0;display:block}.video-play{position:relative;padding:0;background:none;cursor:pointer}.video-play img{width:100%;height:100%;object-fit:cover}.play-label{position:absolute;left:20px;bottom:20px;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px;border-radius:12px;background:var(--g-500);color:var(--n-900);font-weight:700}.video-play:hover .play-label{background:var(--g-300)}.guide-cols{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;margin-top:40px}.guide h2{font-size:1.125rem;font-weight:700;color:var(--n-300);margin-bottom:16px}.guide-steps{counter-reset:step;display:grid;gap:0}.guide-steps li{counter-increment:step;display:grid;grid-template-columns:40px 1fr;padding:16px 0;border-top:1px solid var(--line)}.guide-steps li:before{content:counter(step);color:var(--g-300);font-weight:700;font-variant-numeric:tabular-nums;grid-row:span 2}.guide-steps h3{font-size:1.125rem;font-weight:700}.guide-steps p{color:var(--n-300)}.guide-parts li{padding:12px 0;border-top:1px solid var(--line);color:var(--n-50)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.photo-tile{display:block;width:100%;padding:0;border:0;border-radius:12px;overflow:hidden;background:var(--n-800);cursor:pointer}.photo-tile img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;transition:transform .25s}.photo-tile:hover img{transform:scale(1.03)}.lightbox{width:min(1200px,96vw);max-width:none;max-height:96dvh;padding:0;border:0;border-radius:16px;background:var(--n-900);color:var(--n-50);overflow:hidden}.lightbox::backdrop{background:#101411e0}.lightbox-body img{width:100%;max-height:calc(96dvh - 72px);object-fit:contain;background:#000}.lightbox-bar{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 16px}.lightbox-caption{flex:1;font-size:.9375rem;color:var(--n-300)}.lightbox-count{color:var(--n-500);font-variant-numeric:tabular-nums;font-size:.875rem;margin-right:8px}.lightbox-error{padding:48px 16px;text-align:center}.icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;background:var(--n-800);border:1px solid var(--line);border-radius:10px;cursor:pointer}.icon-btn:hover{border-color:var(--n-500)}@media(max-width:960px){.bench{grid-template-columns:1fr;grid-template-rows:auto auto;height:auto;min-height:0;gap:12px;padding:12px}.stage{height:min(83.4vw + 52px,560px);min-height:290px}.board,.unbox{bottom:52px}.unbox{padding-bottom:0;--half: 0px}.stage-tools{bottom:8px}.panel{overflow:visible;padding:0 4px;gap:14px}.stepper{display:flex;gap:6px}.stepper li{flex:1;min-height:0;justify-content:center}.stepper .step-name{display:none}.instruction h2{font-size:1.375rem}.instruction p{margin-top:4px;font-size:1rem}.primary{min-height:56px}.actions{margin-top:0}.guide-cols{grid-template-columns:1fr;gap:32px}}@media(max-width:520px){.top{padding:0 12px}.brand span{display:none}.stage{height:calc(83.4vw + 52px);min-height:280px}.panel{gap:10px}.u-label{display:none}.segment button{padding:0 8px;min-height:34px;gap:6px;font-size:.8125rem}.stage-tools{left:8px;right:8px;flex-wrap:nowrap;gap:4px}.page{padding-top:20px}.page h1{font-size:1.75rem}.photo-grid{grid-template-columns:repeat(2,1fr);gap:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.photo-tile:hover img{transform:none}.u-part.is-lifting,.u-part.is-lifting:before,.u-part.is-lifting .u-label,.u-pw.is-lifting,.u-in.is-returning{animation:none}.caret{animation:none}.unbox[data-done]{animation-delay:0s}}
