/* Full viewport workshop and a sketchbook of furniture references. */
.in-workshop{height:100svh;overflow:hidden;padding:0!important}
.in-workshop .site-header,.in-workshop .section-nav,.in-workshop footer,.in-workshop #wood-dust{display:none!important}
#taller{position:fixed;inset:0;z-index:30;width:100%;height:100svh;min-height:0;margin:0;padding:0;animation:none;background:#21160e}
.workshop-full{position:absolute;inset:0;border:0;border-radius:0;margin:0;overflow:hidden}
.workshop-full .workshop-scene{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;overflow:hidden;cursor:crosshair}
.workshop-world{position:absolute;left:50%;top:0;will-change:transform}
.workshop-full .scene-image{position:absolute;inset:0;width:100%;height:100%;min-width:0;object-fit:fill}
.workshop-full .workshop-scene::after{box-shadow:none;background:linear-gradient(180deg,#100a09b0,transparent 27%,transparent 72%,#100a09b0)}
#workshop-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}
.workshop-top{position:absolute;top:0;left:0;right:0;padding:24px 3vw;display:flex;justify-content:space-between;gap:25px;z-index:8;pointer-events:none}
.workshop-title,.workshop-quick{pointer-events:auto}
.workshop-back{display:inline-block;font-size:13px;padding:6px 0 9px;border-bottom:1px solid #ecd09f66;margin-bottom:15px}
.workshop-title .eyebrow{font-size:10px;letter-spacing:2.5px;margin-bottom:8px;color:#ead2af}
.workshop-title h2{font-size:clamp(28px,3vw,43px);letter-spacing:-1px;margin:0;text-shadow:0 2px 16px #170a02}
.workshop-quick{display:flex;gap:8px;align-items:start;padding-top:8px}
.workshop-quick button,.workshop-stations button,.workshop-crew button{padding:10px 15px;color:#f1dab8;background:#20170eed;border:1px solid #ead1a95e;border-radius:5px;font-size:12px;line-height:1.4;white-space:nowrap;min-height:42px;backdrop-filter:blur(8px)}
.workshop-quick button:hover,.workshop-stations button:hover,.workshop-crew button:hover{background:#674320;border-color:#edcc8d}
.workshop-quick button[aria-pressed=true],.workshop-stations button[aria-pressed=true],.workshop-crew button[aria-pressed=true]{border-color:#e9c487;background:#77502be8;color:#ffe0a1}
.workshop-quick small{font:9px monospace;margin-left:4px;color:#cde4b3}
.workshop-bottom{position:absolute;left:3vw;right:3vw;bottom:24px;z-index:8;display:flex;align-items:end;justify-content:space-between;gap:20px;pointer-events:none}
.workshop-live-status{position:relative;max-width:360px;padding:12px 17px 12px 32px;background:#1d150deb;border-left:2px solid #e0b76f;backdrop-filter:blur(9px);border-radius:4px;pointer-events:auto}
.workshop-live-status .status-dot{position:absolute;left:15px;top:22px;width:6px;height:6px;background:#ebc47d;border-radius:50%;box-shadow:0 0 14px #e9c483;animation:status-glow 2s ease-in-out infinite}
.workshop-live-status p{margin:0 0 4px;color:#f4ddba;font-size:13px;line-height:1.4}
.workshop-live-status small{display:block;font-size:10px;color:#c0a584;line-height:1.5}
.workshop-bottom-actions{pointer-events:auto;display:flex;flex-direction:column;align-items:end;gap:8px}
.workshop-stations,.workshop-crew{display:flex;gap:7px;pointer-events:auto;align-items:center}
.workshop-crew>span{font:10px monospace;letter-spacing:1px;color:#eed0a7;margin-right:3px}
.workshop-crew button{font-size:11px;min-height:33px;padding:6px 13px}
.workshop-stations #workshop-reset{color:#c1a88b;font-size:11px}
.machine-info{position:absolute;right:3vw;top:155px;width:min(360px,calc(100vw - 30px));max-height:calc(100svh - 295px);overflow:auto;overscroll-behavior:contain;padding:23px 26px;background:#251a0ff5;border:1px solid #e0b87670;border-radius:7px;box-shadow:0 20px 70px #0c050789;backdrop-filter:blur(14px);z-index:10;animation:info-arrive .25s both}
.machine-info .eyebrow{font-size:9px;letter-spacing:1.4px;padding-right:24px;margin-bottom:15px}
#machine-close{position:absolute;right:13px;top:13px;height:30px;width:30px;border-radius:50%;border:1px solid #d0ac7270;background:#50361b;color:#f8d69a;font:23px Arial}
.machine-info h3{font-size:32px;margin-bottom:15px}
.machine-info p{font-size:14px;line-height:1.75;color:#d7c2a0;margin-bottom:18px}
#machine-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:18px}
#machine-tags span{font-size:10px;padding:4px 9px;border:1px solid #d9ba7c44;border-radius:13px;color:#ebc58b;background:#d6ad6620}
.machine-info .primary-button,.machine-info .secondary-button{width:100%;padding:11px 15px;margin-bottom:9px}
.machine-info .machine-disclaimer{font-size:10px;line-height:1.6;margin:4px 0 0;color:#ac9371}
.walking-carpenter{position:absolute;width:9.5%;aspect-ratio:3/4;transform:translate(-50%,-96%);z-index:6;pointer-events:none;filter:brightness(var(--scene-brightness));transition:filter 1s}
.walker-art{position:absolute;inset:0;background:url('assets/walking-carpenter-atlas.png') 0% 0%/400% 200% no-repeat;transform-origin:50% 95%;filter:drop-shadow(2px 4px 2px #110a034a)}
.walker-art.ramiro-art{background-image:url('assets/ramiro-walk-atlas.png')}
.walker-art.daniel-art{background-image:url('assets/daniel-walk-atlas.png')}
.walker-shadow{position:absolute;width:6.5%;height:1.5%;border-radius:50%;background:#10080063;filter:blur(3px);transform:translate(-50%,-20%);z-index:5;pointer-events:none}
.walker-label{position:absolute;left:50%;top:3%;transform:translate(-50%,-100%);padding:4px 9px;border:1px solid #ead6a758;background:#211609ed;border-radius:14px;color:#ffe7c3;font:10px/1.4 Arial,sans-serif;white-space:nowrap;pointer-events:auto;cursor:pointer}
.walking-carpenter.is-active .walker-label{border-color:#e6bf76;color:#24180d;background:#e4bc7c}
.walk-target{position:absolute;height:17px;width:28px;transform:translate(-50%,-50%);border:2px solid #f4d59c;border-radius:50%;z-index:5;box-shadow:0 0 15px #ecc38388;animation:target-breathe 1s infinite;pointer-events:none}
.workshop-full .workshop-hotspot{display:block;font-size:11px;padding:8px 12px;min-height:38px;cursor:pointer}
.workshop-full .hotspot-lights{left:42%;top:15%}
.workshop-full .hotspot-drill{left:6%;top:57%}
.workshop-full .hotspot-saw{right:4%;top:55%}
.workshop-full .hotspot-bench{left:40%;top:42%}
.workshop-full .hotspot-materials{right:10%;top:31%}
.saw-motion-ring{position:absolute;left:81.7%;top:45%;width:2.3%;height:4.1%;border-radius:50%;border:2px dashed #f9d29b;opacity:0;pointer-events:none;transform:rotateX(35deg);box-shadow:0 0 12px #efb66188}
.saw-on .saw-motion-ring{opacity:.8;animation:saw-spin .22s linear infinite}
.drill-motion-spindle{position:absolute;left:16.9%;top:45%;width:.3%;height:6%;background:repeating-linear-gradient(0deg,#ebc584 0 3px,#634527 4px 7px);opacity:0;pointer-events:none}
.drill-on .drill-motion-spindle{opacity:.7;animation:spindle .12s linear infinite}
.workshop-full .bench-plane{left:39%;top:36%;width:16%}
.in-workshop .carpenter-button{display:none}
.in-workshop .carpenter-guide{bottom:150px;right:3vw}
.in-workshop #guide-hide{top:-13px}
.in-workshop #guide-panel{bottom:50px;max-height:calc(100svh - 235px)}

/* Crops preserve each complete furniture silhouette, including wide pieces. */
.furniture-art.art-extra{background-image:url('assets/furniture-extra-atlas.png');background-size:var(--extra-size,300%) 200%;background-position:var(--extra-x,0%) var(--extra-y,0%);aspect-ratio:var(--extra-aspect,1);transition:filter .5s}
.art-desk{--extra-size:274.2857%;--extra-x:0%;--extra-y:0%;--extra-aspect:1.09375}
.art-wardrobe{--extra-size:331.0345%;--extra-x:52.2388%;--extra-y:0%;--extra-aspect:.90625}
.art-chair{--extra-size:300%;--extra-x:100%;--extra-y:0%;--extra-aspect:1}
.art-bench{--extra-size:274.2857%;--extra-x:0%;--extra-y:100%;--extra-aspect:1.09375}
.art-nightstand{--extra-size:365.7143%;--extra-x:50.1792%;--extra-y:100%;--extra-aspect:.8203125}
.art-tv{--extra-size:276.259%;--extra-x:100%;--extra-y:100%;--extra-aspect:1.0859375}
.furniture-item{display:flex;flex-direction:column;justify-content:space-between}
.furniture-item .art-extra{background-color:#29211b}
.request-catalog{padding:20px;background:#21170fe0;border:1px solid #bd9b693f;margin:0 0 25px;border-radius:6px}
.request-catalog-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}
.request-catalog-heading .eyebrow{font-size:10px;margin:0;letter-spacing:2px}
.request-catalog-heading button{font-size:12px;padding:9px 13px;white-space:nowrap}
.request-pieces{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#be986155 transparent;padding:3px 3px 9px}
.request-piece-button{flex:1 0 108px;max-width:160px;padding:7px 8px 9px;background:#3b2c1c;border:1px solid #c6a47344;border-radius:5px;color:#dbc8a9;scroll-snap-align:start;transition:border-color .2s,background .2s,transform .2s}
.request-piece-button:hover{transform:translateY(-3px);background:#584023}
.request-piece-button[aria-pressed=true]{border-color:#f0c383;background:#6c4c29;color:#ffe5be}
.request-piece-button .furniture-art{width:100%;max-width:105px;margin:0 auto 6px;max-height:120px;pointer-events:none}
.request-piece-button strong{display:block;font:12px/1.4 Arial,sans-serif;font-weight:500;text-transform:capitalize}
.request-layout{grid-template-columns:1fr 1.1fr}
.request-summary{position:sticky;top:20px}
.request-colors{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 20px}
.request-colors button{width:33px;height:33px;border-radius:50%;background:var(--color);border:2px solid #ffffff25;box-shadow:inset 0 3px 8px #ffffff21,0 3px 7px #0004;transition:transform .2s}
.request-colors button:hover{transform:scale(1.15)}
.request-colors button[aria-pressed=true]{outline:2px solid #f1cf98;outline-offset:4px}
.request-form .custom-color-label{display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:15px}
#request-custom-color{height:36px;width:58px;padding:3px;border:1px solid #ddba7560;background:#38271b;cursor:pointer;border-radius:4px}
.request-details{border:1px solid #c4a6763b;border-radius:4px;margin:22px 0 8px;padding:16px}
.request-details legend{font-size:12px;color:#d8be93;padding:0 7px}
.request-details>label{font-size:12px;display:block;margin-bottom:6px}
.request-details select{font-size:13px;padding:9px}
.request-extras{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:17px 0}
.request-extras label{display:flex;gap:7px;align-items:center;font-size:12px;color:#e8cfaa;cursor:pointer}
.request-extras input{accent-color:#ddad67;width:16px;height:16px}
.request-details>small{font-size:10px;color:#a38c70;display:block;line-height:1.6}
.request-preview{position:relative;display:grid;place-items:center;min-height:330px;border-radius:6px;background:radial-gradient(ellipse at 50% 85%,#d1ac7425,transparent 65%),#282019;overflow:hidden;perspective:900px;--tilt-x:0deg;--tilt-y:0deg;--preview-scale:1}
.request-preview .furniture-art{width:min(94%,340px);max-height:none;max-width:none;transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(var(--preview-scale));transition:filter .5s,transform .2s}
.preview-grain{position:absolute;inset:0;box-shadow:inset 0 0 40px #08040238;pointer-events:none}
.preview-controls{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;padding:13px 0 3px}
.preview-controls span{flex-basis:100%;font-size:10px;color:#b89e7a;margin-bottom:3px}
.preview-controls button{font-size:11px;padding:7px 11px;border:1px solid #c2a06e55;border-radius:4px;background:#493322;color:#e4c9a0}
.request-summary .request-summary-details{font-size:11px;color:#bda17b;margin-top:7px}
.dialog-copy .dialog-pager{margin-top:15px}
#dialog-art{width:min(480px,100%);max-height:none}.request-piece-button .furniture-art{max-height:none}

/* Small real-tool interactions around the original fan of tools. */
.menu-extras{display:contents}
.menu-side{position:absolute;top:clamp(225px,29vh,320px);z-index:7;width:185px;padding:19px 18px;background:linear-gradient(140deg,#442d1bd9,#1d140ced);border:1px solid #e1b67340;border-radius:6px;box-shadow:0 12px 35px #09040055;backdrop-filter:blur(12px)}
.menu-build{left:4vw}.menu-inspiration{right:4vw}
.menu-side .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:14px}
.menu-side h3{font-size:25px;letter-spacing:-.3px;margin:0 0 12px}
.menu-side p{font-size:12px;line-height:1.65;color:#d3b897;margin-bottom:16px}
.menu-text-button{background:none;border-top:1px solid #c4a16c3c;color:#e6bd80;text-align:left;font-size:10px;line-height:1.5;padding:12px 0 0;width:100%}
.bench-challenge{position:relative;display:flex;justify-content:space-between;gap:7px;padding:17px 7px;background:repeating-linear-gradient(3deg,#51361f 0 3px,#5c4026 4px 8px);border:1px solid #b287523f;border-radius:5px;margin-bottom:12px}
.bench-challenge button{height:30px;width:30px;border:1px dashed #e1bf8977;background:#1c130869;color:#e3c79d;border-radius:50%;font-size:20px;line-height:1}
.bench-challenge button[aria-pressed=true]{background:#d2a15c;color:#24180e;border-style:solid}
.challenge-hammer.tool-art{position:absolute;top:-53px;left:var(--hammer-left,50%);width:95px;transform:translateX(-50%) rotate(-10deg);opacity:0;z-index:3;filter:drop-shadow(3px 6px 5px #0007)}
.hammering .challenge-hammer{opacity:1;animation:hammer-hit .42s both}
#bench-challenge-status{font-size:10px;margin:0 0 9px;color:#e2c186;min-height:30px}
.inspiration-actions{display:flex;gap:7px;margin-bottom:12px}
.inspiration-actions button{font-size:10px;padding:9px;background:#9b70312b;border:1px solid #d7b47a55;border-radius:4px;color:#f0cf96;line-height:1.5}
.inspiration-actions #new-inspiration{font-size:19px;padding:4px 10px}
.inspiration-actions button:hover{background:#8b632c60}
.home-play-controls{display:flex;flex-direction:column;gap:8px}
.home-play-controls button{padding:9px 13px;font-size:12px;background:#1c120aeb;border:1px solid #cfab7450;border-radius:5px;color:#e5c8a0;backdrop-filter:blur(5px)}
#menu-extras-toggle{display:none}
@keyframes status-glow{50%{opacity:.55}}
@keyframes info-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes target-breathe{50%{opacity:.45;scale:1.2}}
@keyframes saw-spin{to{rotate:360deg}}
@keyframes spindle{to{background-position:0 7px}}
@keyframes hammer-hit{0%{transform:translateX(-50%) rotate(-35deg);opacity:0}25%{opacity:1}70%{transform:translateX(-50%) translateY(18px) rotate(8deg);opacity:1}100%{transform:translateX(-50%) rotate(-15deg);opacity:0}}
@media(max-width:1100px){.menu-side{width:167px;left:2vw;padding:16px}.menu-inspiration{left:auto;right:2vw}.menu-side h3{font-size:23px}.request-layout{gap:20px}.workshop-bottom{flex-direction:column;align-items:start;gap:12px}.workshop-bottom-actions{align-items:start}.in-workshop .carpenter-guide{bottom:172px}.workshop-live-status{max-width:340px}.machine-info{max-height:calc(100svh - 345px)}}
@media(max-width:900px){.menu-extras{display:none;position:fixed;z-index:40;left:15px;right:15px;bottom:130px;max-height:60svh;overflow:auto;border:1px solid #d5b07877;border-radius:7px;background:#291c11f5;padding:15px;box-shadow:0 20px 70px #000a}.menu-extras-open .menu-extras{display:grid;grid-template-columns:1fr 1fr;gap:15px}.menu-side{position:static;width:100%;padding:16px;box-shadow:none}.menu-side p{max-width:260px}#menu-extras-toggle{display:block}.home-play-controls button{font-size:10px;padding:8px 10px}.request-layout{grid-template-columns:1fr}.request-summary{position:static}.request-preview{min-height:300px}.workshop-quick{flex-wrap:wrap;max-width:220px;justify-content:end}.workshop-quick button{font-size:11px;padding:9px 11px}.workshop-title h2{max-width:260px}.machine-info{top:155px}.workshop-title .eyebrow{letter-spacing:1.5px}}
@media(max-width:600px){.workshop-top{padding:13px 15px;display:block}.workshop-title h2{font-size:27px;max-width:none}.workshop-title .eyebrow{display:none}.workshop-back{font-size:12px;margin-bottom:12px;padding-top:0}.workshop-quick{justify-content:start;max-width:none;gap:6px;padding-top:13px}.workshop-quick button{min-height:35px;font-size:10px;padding:7px 11px}.workshop-bottom{left:15px;right:15px;bottom:15px;gap:8px}.workshop-live-status{max-width:calc(100% - 20px);padding:9px 13px 9px 27px}.workshop-live-status p{font-size:11px}.workshop-live-status small{font-size:9px}.workshop-live-status .status-dot{left:12px;top:15px}.workshop-bottom-actions{width:100%;gap:7px}.workshop-stations{width:100%;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;gap:6px}.workshop-stations button{font-size:10px;min-height:35px;padding:8px 11px}.workshop-crew{gap:5px;flex-wrap:wrap}.workshop-crew>span{font-size:8px}.workshop-crew button{font-size:10px;min-height:30px;padding:6px 10px}.workshop-full .workshop-hotspot{font-size:11px;padding:8px}.workshop-full .hotspot-lights{top:20%}.machine-info{top:145px;right:15px;width:calc(100vw - 30px);max-height:calc(100svh - 355px);padding:20px}.machine-info h3{font-size:28px}.machine-info p{font-size:13px;line-height:1.65}.machine-info .machine-disclaimer{font-size:9px}.machine-info .primary-button,.machine-info .secondary-button{font-size:12px;padding:10px}.in-workshop .carpenter-guide{bottom:178px;right:15px}.in-workshop #guide-panel{bottom:43px;max-height:calc(100svh - 238px)}.in-workshop #guide-open{font-size:10px;padding:8px 10px}.walking-carpenter{width:9.5%}.walker-label{font-size:10px}.request-catalog{padding:15px;margin-bottom:18px}.request-catalog-heading{align-items:start}.request-catalog-heading .eyebrow{font-size:9px;letter-spacing:1px;max-width:150px}.request-piece-button{flex-basis:112px}.request-catalog-heading button{font-size:11px;padding:8px 10px}.request-form,.request-summary{padding:22px}.request-preview{min-height:280px}.request-colors{gap:11px}.menu-extras-open .menu-extras{grid-template-columns:1fr;max-height:58svh}.menu-side{padding:17px}.home-controls{gap:8px}.home-play-controls button{max-width:100px;font-size:9px;line-height:1.4}.tool-navigation{gap:9px;letter-spacing:1px;font-size:10px}}
@media(max-height:620px){.workshop-top{padding-top:10px}.workshop-title h2{font-size:26px}.workshop-title .eyebrow{display:none}.workshop-back{margin-bottom:8px}.workshop-bottom{bottom:10px}.workshop-live-status{display:none}.machine-info{top:102px;max-height:calc(100svh - 225px)}.in-workshop .carpenter-guide{bottom:108px}.in-workshop #guide-panel{max-height:calc(100svh - 160px)}.menu-side{top:210px}.workshop-title{max-width:45%}.workshop-top{display:flex}.workshop-quick{padding-top:0;max-width:none}}
.motion-off .walking-carpenter,.motion-off .walker-art{animation:none!important}.motion-off .request-preview .furniture-art{transition:none}
@media(prefers-reduced-motion:reduce){.machine-info,.challenge-hammer,.saw-motion-ring,.drill-motion-spindle,.workshop-live-status .status-dot,.walk-target{animation:none!important}}
/* Main explanations and choices stay comfortably readable over the room. */
.machine-info p{font-size:16px}.workshop-quick button,.workshop-stations button{font-size:14px}.workshop-crew button,.workshop-live-status p{font-size:13px}.workshop-full .workshop-hotspot{font-size:13px}.request-piece-button strong{font-size:14px}.request-details legend,.request-details>label,.request-extras label,.request-form .custom-color-label{font-size:14px}.menu-side p{font-size:14px}.menu-side .eyebrow{font-size:10px}.menu-text-button,.inspiration-actions button{font-size:12px}.walker-label{font-size:12px}
@media(max-width:600px){.workshop-quick button,.workshop-stations button{font-size:12px}.workshop-crew button,.workshop-live-status p,.workshop-full .workshop-hotspot{font-size:12px}.machine-info p{font-size:15px}.walker-label{font-size:12px}.menu-side p{font-size:14px}.workshop-live-status{position:absolute;bottom:88px;left:0;max-width:210px;opacity:.85}.in-workshop .carpenter-guide{bottom:112px}.workshop-bottom:has(.workshop-stations:hover) .workshop-live-status{opacity:1}}
.menu-side{padding:16px;max-height:clamp(260px,calc(100% - clamp(225px,29vh,320px) - 110px),350px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c1a07455 transparent}
.menu-side .eyebrow{font-size:9px;letter-spacing:.8px;margin-bottom:10px}.menu-side h3{font-size:22px;margin-bottom:10px}.menu-side p{line-height:1.5;margin-bottom:10px}.bench-challenge{padding:10px 7px;margin-bottom:10px}#bench-challenge-status{min-height:18px;margin-bottom:6px}.menu-side .menu-text-button{padding-top:10px}
.at-home .carpenter-button{display:none}.at-home .carpenter-guide{bottom:72px;right:4vw}.at-home #guide-panel{bottom:45px;max-height:calc(100svh - 185px)}.at-home .carpenter-guide:has(#guide-panel:not([hidden])) .carpenter-button{display:block;width:76px}.at-home .carpenter-guide:has(#guide-panel:not([hidden])) #guide-panel{bottom:120px;max-height:calc(100svh - 265px)}
@media(max-width:900px){.menu-side{max-height:none;overflow:visible}.at-home .carpenter-guide{bottom:140px;right:15px}.at-home #guide-panel{bottom:44px;max-height:calc(100svh - 220px)}}

/* A smaller cast, with a wider view of the workshop. */
.walking-carpenter{width:19%}.walker-shadow{width:9%;height:1.6%}.workshop-full .workshop-hotspot{z-index:110}.walker-label{top:0%}
.workshop-full .workshop-scene{background:radial-gradient(ellipse at center,#65401b50,transparent 80%),#21160e}
.workshop-title h2{font-size:clamp(27px,2.4vw,34px)}.machine-info h3{font-size:28px}.machine-info{width:min(340px,calc(100vw - 30px))}
.walking-carpenter.is-working .walker-art{animation:worker-gesture .6s ease-in-out infinite;transform-origin:50% 95%}
.workshop-activities{margin:12px 0 16px;padding-top:17px;border-top:1px solid #d2ae713e}
.workshop-activities .eyebrow{padding:0;font-size:10px;margin-bottom:13px}
.workshop-activities label{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;color:#e7c79b;line-height:1.5;margin:11px 0 7px}
.workshop-activities output{font:12px monospace;white-space:nowrap}
#demo-measure{width:100%;accent-color:#d4a55f;cursor:ew-resize;margin:5px 0 15px}
.activity-buttons{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.activity-buttons button{padding:10px 5px;background:#70502977;border:1px solid #d2aa6655;color:#f4d8ad;border-radius:4px;font-size:13px}
.activity-buttons button:hover{background:#9b6c2b;color:#fff1d5}
#demo-paint{height:31px;width:53px;padding:2px;background:#493323;border:1px solid #c8a76766;border-radius:4px;cursor:pointer}
.workbench-measure{position:absolute;inset:0;pointer-events:none;opacity:0;z-index:113}
.measuring .workbench-measure{opacity:1}
.demo-tape.tool-art{position:absolute;left:33%;top:39%;width:10%;transform:rotate(-12deg);filter:drop-shadow(3px 3px 4px #0005);animation:tape-check 1s ease-in-out infinite}
.demo-dimension{position:absolute;left:39%;top:47.5%;width:var(--measured-width,16.8%);border-bottom:2px dashed #f7d391;height:2.5%;transition:width .2s;transform:rotate(-1deg)}
.demo-dimension::before,.demo-dimension::after{content:'';position:absolute;bottom:-7px;height:13px;border-left:1px solid #f7d391}.demo-dimension::before{left:0}.demo-dimension::after{right:0}
.demo-dimension>span{position:absolute;left:50%;top:-21px;translate:-50% 0;white-space:nowrap;background:#27190bf0;border:1px solid #e6c38977;border-radius:4px;padding:3px 10px;font:13px monospace;color:#f6d59b}
.board-tint{position:absolute;left:37.8%;top:49.6%;width:29.2%;height:5.5%;background:var(--demo-color,#477e86);mix-blend-mode:color;clip-path:polygon(4% 0,97% 0,100% 85%,0 100%);opacity:0;pointer-events:none}
.board-colored .board-tint{opacity:.72}.painting .board-tint{animation:coat-board 2.5s both}
.workshop-brush.tool-art{position:absolute;left:44%;top:37%;width:11%;transform:rotate(-12deg);opacity:0;pointer-events:none;z-index:113}
.painting .workshop-brush{opacity:1;animation:workshop-paint .6s ease-in-out infinite}
@keyframes worker-gesture{50%{rotate:2deg;translate:3px 0}}
@keyframes tape-check{50%{rotate:5deg;translate:4px 0}}
@keyframes workshop-paint{50%{translate:12px 5px;rotate:5deg}}
@keyframes coat-board{from{clip-path:polygon(4% 0,8% 0,8% 100%,0 100%)}to{clip-path:polygon(4% 0,97% 0,100% 85%,0 100%)}}

/* Material choices update the visual reference and the saved request. */
.request-materials{margin-top:23px;padding:22px 0;border-top:1px solid #c6a57238;border-bottom:1px solid #c6a57238}
.request-materials>label{display:block;font-size:15px;color:#f0d7b1;margin-bottom:9px}
.material-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:17px 0 14px}
.material-picker button{padding:6px;text-align:left;background:#3a2a1b;border:1px solid #b68e5847;border-radius:5px;transition:border-color .2s,transform .2s;color:#e2caa6;min-width:0}
.material-picker button:hover{transform:translateY(-3px);border-color:#e5bd7e}
.material-picker button[aria-pressed=true]{border-color:#f0c994;background:#795730;color:#fff0d0}
.material-picker button>span:last-child{display:block;font-size:12px;line-height:1.4;padding:6px 2px 1px;overflow-wrap:anywhere}
.material-sample{display:block;background:url('assets/materials-atlas.png') var(--material-col,0%) var(--material-row,0%)/300% 200% no-repeat;aspect-ratio:1.4;border-radius:3px;width:100%}
.request-materials p{font-size:14px;line-height:1.7;margin:0 0 8px;color:#d7bd96}
.request-materials>small{font-size:11px;line-height:1.6;color:#a9906d;display:block}
#request-art{filter:var(--request-filter,none)}
.material-summary{display:flex;align-items:center;justify-content:center;text-align:left;gap:12px;padding:13px 10px;margin:18px 0 5px;border-top:1px solid #c9aa693d;border-bottom:1px solid #c9aa693d}
.material-summary .material-sample{width:65px;height:47px;aspect-ratio:1}
.material-summary strong{font:18px Georgia,serif;display:block;margin-top:3px;color:#f0d9b6}
.material-summary div>span{font-size:11px;color:#b7a07f}
@media(max-width:600px){.material-picker{gap:8px}.material-picker button>span:last-child{font-size:12px}.material-summary strong{font-size:17px}.workshop-activities label{font-size:13px}.activity-buttons button{padding:11px 6px;font-size:12px}.walking-carpenter{width:19%}.demo-dimension>span{font-size:12px}.walker-label{font-size:13px}}
.motion-off .walking-carpenter.is-working .walker-art,.motion-off .demo-tape,.motion-off .workshop-brush,.motion-off .board-tint{animation:none!important}
@media(prefers-reduced-motion:reduce){.walking-carpenter.is-working .walker-art,.demo-tape,.workshop-brush,.board-tint{animation:none!important}}

/* The chosen sample replaces the surface; smooth boards retain no wood grain. */
#request-art.has-material-texture{position:relative;aspect-ratio:1;background-image:none!important;filter:var(--finish-filter,none)}
#request-material-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#texture-preview-status{font-size:13px;line-height:1.5;margin:8px 0;color:#d6bd95}

/* More request models use the unchanged neutral image atlas. */
.art-expanded{background-image:url('assets/request-extra-neutral.png');background-color:transparent;background-repeat:no-repeat;aspect-ratio:var(--new-aspect,1);background-size:var(--new-size);background-position:var(--new-position)}
.art-kitchen{--new-aspect:398/451;--new-size:315.0753768844221% 278.04878048780483%;--new-position:1.9859813084112148% 20.17434620174346%}
.art-kitchen-l{--new-aspect:397/402;--new-size:315.8690176322418% 311.94029850746267%;--new-position:51.22520420070011% 20.774647887323944%}
.art-kitchen-base{--new-aspect:362/346;--new-size:346.4088397790055% 362.42774566473986%;--new-position:98.4304932735426% 29.515418502202646%}
.art-bath-vanity{--new-aspect:362/359;--new-size:346.4088397790055% 349.3036211699164%;--new-position:2.8026905829596416% 81.67597765363128%}
.art-overhead{--new-aspect:388/191;--new-size:323.1958762886598% 656.5445026178011%;--new-position:49.30715935334873% 75.72906867356538%}
.art-bunk{--new-aspect:394/399;--new-size:318.2741116751269% 314.2857142857143%;--new-position:98.0232558139535% 85.14619883040936%}
#request-art.art-expanded{aspect-ratio:1}.request-pieces{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;gap:12px}.request-piece-button{max-width:none;min-width:0;padding:12px 10px}.request-piece-button .furniture-art{max-height:125px}.request-piece-button strong{font-size:14px}.request-other{display:flex;justify-content:space-between;align-items:center;gap:18px;text-align:left;width:100%;margin-top:17px;padding:18px;border:1px dashed #d4ae7566;border-radius:5px;background:#36271b;color:#f2ddbe}.request-other strong{font:25px/1.2 Georgia,serif}.request-other span{font-size:14px;color:#c7b092}.request-other:hover,.request-other[aria-pressed=true]{background:#604329;border-color:#edc48b}.request-other-info{padding:18px;background:#caa06b0b;border:1px solid #caa06b44;border-radius:5px;margin:0 0 18px}.request-other-info p{font-size:14px;margin:10px 0 0}.request-other-info input{width:100%;padding:11px 12px;border:1px solid #caa06b55;color:#f8edd8;background:#23180f;border-radius:4px}.request-custom-placeholder{padding:25px;text-align:center;max-width:360px}.request-custom-placeholder strong{font:32px/1.25 Georgia,serif;overflow-wrap:anywhere;display:block}.request-custom-placeholder p{font-size:16px;margin:16px 0 0}#request-other-info label{font-size:16px}
@media(max-width:800px){.request-pieces{grid-template-columns:repeat(3,minmax(0,1fr))}.request-other{align-items:flex-start;flex-direction:column;gap:9px}.request-other strong{font-size:23px}}
@media(max-width:430px){.request-pieces{grid-template-columns:repeat(2,minmax(0,1fr))}.request-piece-button{padding:10px}.request-piece-button strong{font-size:14px}.request-piece-button .furniture-art{max-width:110px}}
