/* Grounded workshop presentation. Gameplay and save schema stay unchanged. */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600&display=swap');
:root{--ink:#d9dbd2;--green:#afba8b;--cream:#20231f;--line:#43483e;--orange:#b69763}body{background:radial-gradient(ellipse at 15% 0,#34392f,transparent 60%),#20231f;color:var(--ink);font-family:'IBM Plex Sans',system-ui,sans-serif}header{padding:26px 3% 22px;border-bottom:1px solid #444a3a;margin-bottom:22px;background:#1c211bb8}header>div>small{font-size:9px;color:#9da58f;letter-spacing:2.7px}h1{font-family:'Barlow Condensed',system-ui,sans-serif;font-size:34px;letter-spacing:.5px;font-weight:600;text-transform:uppercase}h1 span{color:#d2d6c6}.stat{border-radius:3px;background:linear-gradient(120deg,#363c30,#292f25);border:1px solid #505744;box-shadow:inset 0 1px #ffffff05;padding:10px 22px;min-width:110px}.stat strong{font-family:'Barlow Condensed',system-ui;font-size:27px;font-weight:500;color:#e0e3d3}.stat small{font-size:9px;color:#9ea78e;letter-spacing:1.5px}main{padding:0 3% 24px;gap:18px;grid-template-columns:minmax(380px,1.15fr) minmax(380px,1fr);max-width:1700px}.room{height:660px;border:1px solid #5b6050;border-radius:4px;background:#74776a url('room.svg') center/100% 100% no-repeat;box-shadow:0 15px 35px #0004;isolation:isolate}.room:after{content:'';position:absolute;inset:0;height:auto;background:linear-gradient(180deg,#141b19bb 0,transparent 15%,transparent 78%,#0f1815d9 100%);pointer-events:none;z-index:5}.scene-light{position:absolute;inset:0;background:radial-gradient(ellipse at 23% 20%,#ffeed009,transparent 70%);box-shadow:inset 0 0 65px #1019104a;pointer-events:none;z-index:4}.room-top{top:18px;left:18px;right:18px;font-size:8px;font-weight:500;letter-spacing:1.5px;color:#e1e2d2;z-index:7}.room-top i{color:#89917e;font-style:normal;margin:0 6px}.room-caption{display:flex;align-items:center;gap:7px;justify-content:start;left:18px;right:18px;bottom:17px;font-size:8px;letter-spacing:1.3px;color:#c8cebd;z-index:7}.room-caption>span:last-child{margin-left:auto;font-size:7px;letter-spacing:.7px;color:#9da993}.live-dot{display:inline-block;width:5px;height:5px;background:#b2bb8c;border-radius:50%;box-shadow:0 0 8px #c6dba566}.scene-hotspot{position:absolute;background:none;border:0;border-radius:0;box-shadow:none;transform:none;z-index:6;color:#e4e7d9;display:flex;flex-direction:column;align-items:center;justify-content:end;padding:0 0 7px;transition:background .2s}.scene-hotspot b{font-family:'IBM Plex Sans',system-ui;font-size:9px;background:#1b241be8;border:1px solid #83916a77;padding:6px 10px;font-weight:500;box-shadow:0 3px 7px #0003}.scene-hotspot small{display:none;font-size:7px;letter-spacing:1px;background:#b6c098;color:#283222;padding:4px 9px}.scene-hotspot:hover{background:linear-gradient(transparent,#d8e2b71a);filter:none}.scene-hotspot:hover small,.scene-hotspot:focus-visible small{display:block}.scene-hotspot:hover b{border-color:#b2bf90}.bed{left:1%;top:51%;bottom:auto;width:25%;height:37%}.desk{left:37%;top:43%;width:22%;height:20%}.packing{right:3%;bottom:5%;width:29%;height:24%;font-size:inherit}.packing b,.desk b,.bed b{font-size:9px;color:#e4e7d9}.printer-obj{position:absolute;z-index:3;right:31%;top:45%;width:13%;height:18%;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;color:#d8dccd;transform:skewY(-1deg);overflow:visible}.printer-obj:nth-child(2){right:17%;top:43%;height:20%;width:13%}.printer-obj:nth-child(3){right:3%;top:42%;height:21%;width:13%}.printer-frame{position:absolute;inset:15% 8% 22%;border:5px solid #b4b3a6;border-bottom-width:10px;border-radius:5px 5px 2px 2px;background:linear-gradient(135deg,#262e2ae8,#4f5b50ba);box-shadow:4px 4px 0 #4c5349,6px 7px 8px #18211955,inset 2px 2px 7px #17201a}.model-0 .printer-frame{border-color:#d5d1bf;background:linear-gradient(135deg,#666b5e,#8e9480);border-radius:12px 12px 3px 3px;border-width:7px 7px 12px}.model-0 .spool{display:none}.gantry{position:absolute;top:32%;left:0;right:0;height:4px;background:linear-gradient(#b0b5a3,#4c5349);box-shadow:0 2px #1d2820}.toolhead{position:absolute;top:29%;left:35%;width:22%;height:22%;background:linear-gradient(90deg,#434e42,#828b77);border-bottom:3px solid #242e25;box-shadow:2px 1px 2px #0006;z-index:2}.print-bed{position:absolute;left:9%;right:7%;bottom:8%;height:8%;background:#a1a28e;transform:skewX(-10deg);box-shadow:0 4px #424f42}.printed-part{position:absolute;left:37%;bottom:17%;width:26%;height:19%;background:linear-gradient(90deg,#6d8d76,#b0b39a);border-radius:2px 5px 0 0;opacity:.4}.printer-foot{position:absolute;left:8%;right:4%;bottom:20%;height:10%;background:linear-gradient(120deg,#b4b3a3,#6e7665);box-shadow:3px 4px 5px #15211966;border-radius:1px}.printer-foot i{position:absolute;right:12%;top:20%;width:18%;height:40%;background:#333d30;border:1px solid #a6b899}.printer-obj b{position:absolute;top:85%;left:-10%;right:-10%;font-family:'Barlow Condensed',system-ui;font-size:13px;font-weight:500;letter-spacing:.6px;text-shadow:0 1px 3px #000}.printer-obj small{position:absolute;top:99%;left:-18%;right:-18%;font-size:6px;letter-spacing:.8px;color:#c9d2b5;text-shadow:0 1px 3px #000}.spool{position:absolute;width:37%;height:25%;right:-4%;top:-5%;border:4px solid #828b75;background:radial-gradient(ellipse,#283723 18%,#9a9b83 20%,#8d967b 55%,#44523f 58%);border-radius:50%;box-shadow:3px 1px #3f4c3b;transform:rotate(-20deg)}.model-1 .printer-frame{border-top:0;border-left:4px solid #9b9f91;border-right:4px solid #939a89;background:transparent;box-shadow:none;border-radius:0}.model-1 .gantry{top:26%;left:-12%;right:-12%;height:6px}.model-1 .toolhead{top:20%;height:26%;width:28%;background:#bcbfaf;border-bottom:5px solid #596653}.model-2 .printer-frame{border-color:#4e5850;border-width:7px 6px 11px;background:linear-gradient(125deg,#2d3b32b0,#7a928b33 48%,#263b3099 50%);box-shadow:4px 4px 0 #303f34,6px 7px 8px #18211955,inset 2px 2px 7px #17201a}.model-2 .printer-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,transparent 40%,#b9cebb18 41%,transparent 56%);border:1px solid #7e918077}.model-2 .printer-foot{background:#4b584b}.model-2 .spool{top:-10%;right:12%}.busy .inside{animation:none}.busy .toolhead{animation:printing 3s ease-in-out infinite alternate}.busy .printed-part{opacity:1}.busy .printer-foot i{background:#bdd49c;box-shadow:0 0 6px #afcf8b77}@keyframes printing{to{left:60%}}.printer-obj:hover{filter:brightness(1.2)}.printer-obj:hover b{color:#fff}.workspace{background:#292e26;border:1px solid #505743;border-radius:4px;min-height:660px;box-shadow:0 15px 35px #0002}nav{padding:0 12px;gap:0;background:#22271f;border-bottom:1px solid #4a523e}nav button{color:#9ca48f;border-radius:0;font-size:11px;font-weight:500;padding:17px 12px;border-bottom:2px solid transparent;letter-spacing:.3px}nav button.active{background:linear-gradient(transparent,#afbc8b0b);border-bottom-color:#afba8b;color:#d5dcbe}#panel{padding:25px;max-height:605px}h2{font-family:'Barlow Condensed',system-ui;font-weight:500;font-size:29px;letter-spacing:.3px;color:#e0e1d5}h3{font-size:13px;font-weight:500;color:#d9ddca}p{color:#a3ac96;font-size:12px;line-height:1.7;margin-bottom:18px}.card{border:1px solid #48513b;background:linear-gradient(130deg,#32392c,#2d3428);border-radius:3px;padding:16px;margin:12px 0;box-shadow:inset 0 1px #ffffff03}.badge{background:#1f281c;border:1px solid #536043;color:#bbc7a1;border-radius:2px;padding:4px 7px;font-size:9px;letter-spacing:.3px}.primary{background:#adb98c;color:#212b19;border:1px solid #bbc79a;border-radius:2px;font-size:11px;letter-spacing:.3px;font-weight:600;box-shadow:inset 0 1px #f7ffdb30}.secondary{background:#39432f;color:#d0d9bc;border:1px solid #566346;border-radius:2px;font-size:11px}.primary:hover:not(:disabled){background:#c0cb9e}.hint{background:#45432a;border:1px solid #68623a;border-left:3px solid #b5a365;border-radius:2px;color:#c6bd98;font-size:11px;padding:12px 14px}.muted{font-size:11px;color:#a3ae94}.progress{border-radius:1px;height:4px;background:#1e2719;margin:15px 0}.progress i{background:#b7c48d}input,select{background:#22291e;border:1px solid #566147;border-radius:2px;color:#d7ddc8;padding:9px;font-size:12px;color-scheme:dark}label{font-size:10px;color:#abb79a;letter-spacing:.4px}.canvas{border:1px solid #57624b;border-radius:2px;background:repeating-linear-gradient(0deg,transparent,transparent 19px,#778c6026 20px),repeating-linear-gradient(90deg,#222d21,#222d21 19px,#778c6026 20px);box-shadow:inset 0 0 40px #101c1266}.shape{border-radius:2px;box-shadow:3px 4px 0 #0003;text-shadow:0 1px 2px #0008}.shape.selected{outline:1px dashed #d4dbb8;outline-offset:4px}.intro{border-color:#9e9c6e}#toast{background:#c1c9ad;color:#202b19;border:1px solid #dae2c6;border-radius:3px;font-size:12px;box-shadow:0 5px 25px #0004}footer{color:#87917a;padding:0 3% 20px;font-size:9px}footer button{color:#a1ad8e;font-size:9px}@media(prefers-reduced-motion:reduce){.busy .toolhead{animation:none}}@media(max-width:1000px){main{grid-template-columns:1fr}.room{height:auto;aspect-ratio:900/760;max-height:740px}.workspace{min-height:500px}#panel{max-height:none}nav button{padding:17px 18px}.printer-obj b{font-size:16px}.printer-obj small{font-size:8px}}@media(max-width:550px){header{padding:18px 4%;gap:8px}header>div>small{font-size:7px;letter-spacing:1px}h1{font-size:23px;letter-spacing:0}.stat{min-width:0;padding:8px 10px}.stat strong{font-size:21px}.stat small{font-size:7px}#stats{gap:5px}main{padding:0 10px 18px;gap:14px}.room-top{font-size:6px;left:10px;right:10px;top:12px;letter-spacing:.6px}.room-top i{margin:0 2px}.room-caption{font-size:6px;left:10px;right:10px;bottom:10px;letter-spacing:.7px}.room-caption>span:last-child{font-size:5px;letter-spacing:0}.scene-hotspot b,.packing b,.desk b,.bed b{font-size:7px;padding:4px 6px}.scene-hotspot small{font-size:5px}.printer-obj b{font-size:10px}.printer-obj small{font-size:5px;letter-spacing:.3px}.printer-frame{border-width:3px!important;border-bottom-width:6px!important}.model-0 .printer-frame{border-width:4px!important;border-bottom-width:7px!important}.spool{border-width:2px}#panel{padding:20px 16px}nav{padding:0 5px;justify-content:space-around}nav button{padding:15px 8px;font-size:10px}.workspace{min-height:450px}.card{padding:13px}.row{gap:8px}.primary{padding:10px}.controls select{max-width:165px}.gantry{height:3px}.model-1 .gantry{height:4px}}

.room-settings{position:absolute;z-index:8;right:16px;top:43px;background:#202b20dc;color:#cdd7b7;border:1px solid #79876a;font-size:9px;padding:7px 10px;letter-spacing:.3px;border-radius:2px}.workshop-status{position:absolute;top:56px;left:18px;z-index:7;padding:10px 13px;background:#1c271fe8;border-left:2px solid #a8b988;box-shadow:0 3px 12px #0002}.workshop-status>span{font-size:7px;letter-spacing:1.6px;color:#a6b293;display:block}.workshop-status strong{font-size:12px;font-weight:500;display:block;margin:5px 0}.workshop-status div{font-size:9px;color:#b0bda2}.workshop-details{position:absolute;inset:0;z-index:2;pointer-events:none}.pegboard{position:absolute;right:8%;top:29%;width:17%;height:11%;background:radial-gradient(#302f22 1px,transparent 1px) 0 0/7px 7px,#776d52;box-shadow:3px 3px 6px #0004;border:4px solid #55543f}.pegboard i{position:absolute;left:15%;top:20%;height:48%;width:5px;background:linear-gradient(#a8aa96 60%,#543c29 61%);transform:rotate(12deg);box-shadow:2px 2px 2px #0004}.pegboard i:nth-child(2){left:44%;transform:rotate(-10deg);width:7px}.pegboard i:nth-child(3){left:72%;width:4px}.pegboard span{position:absolute;bottom:3px;left:5px;color:#c3b99c;font:6px monospace;letter-spacing:1px}.filament-stack{position:absolute;left:52%;top:69%;width:14%;height:6%;transform:skewY(-5deg)}.filament-stack i{position:absolute;width:28%;height:60%;bottom:0;border-radius:50%;border:4px solid #686c5a;background:radial-gradient(#283124 20%,#b09a76 22%,#8a9d8b 55%,#777d67 57%);box-shadow:3px 2px #353e2f}.filament-stack i:nth-child(2){left:30%;background:radial-gradient(#283124 20%,#b09a76 22%,#a28671 55%,#777d67 57%)}.filament-stack i:nth-child(3){left:60%;background:radial-gradient(#283124 20%,#b09a76 22%,#728798 55%,#777d67 57%)}.floor-carton{position:absolute;right:8%;top:69%;width:9%;height:6%;background:linear-gradient(120deg,#9d805b,#715a3d);border-top:6px solid #b7a07c;transform:skewY(-5deg);font:bold 10px monospace;color:#3e3a2a;text-align:center;padding:3px;box-shadow:3px 4px 6px #0003}.floor-carton small{font-size:6px;letter-spacing:1px}.room[data-light="evening"] .scene-light{background:linear-gradient(100deg,#d69e552b,#ab6c2a1f 50%,#121b3066);box-shadow:inset 0 0 100px #33250e77}.room[data-light="night"] .scene-light{background:linear-gradient(110deg,#162d5666,#111f4677 40%,#060f2a66);box-shadow:inset 0 0 140px #050d27b3}.room[data-light="night"]{background-color:#353f4b;background-blend-mode:multiply}.room[data-light="night"] .desk{box-shadow:0 -18px 28px -10px #bfd5db22}.room[data-finish="warm"]{background-color:#b89e7e;background-blend-mode:luminosity}.room[data-finish="slate"]{background-color:#687584;background-blend-mode:luminosity}.room[data-light="night"][data-finish="warm"]{background-color:#564735;background-blend-mode:multiply}.room[data-light="night"][data-finish="slate"]{background-color:#263951;background-blend-mode:multiply}@media(max-width:550px){.room-settings{top:29px;right:9px;font-size:7px;padding:5px}.workshop-status{top:32px;left:10px;padding:7px 9px}.workshop-status>span{font-size:5px;letter-spacing:1px}.workshop-status strong{font-size:9px;margin:3px 0}.workshop-status div{font-size:6px}.pegboard{border-width:2px}.pegboard i{width:3px}.pegboard span{font-size:4px}.floor-carton{font-size:6px;padding:0;border-top-width:3px}.floor-carton small{font-size:4px}.filament-stack i{border-width:2px}nav button{padding:15px 6px;font-size:9px}}
