@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--ink:#333c37;--green:#376d54;--cream:#faf8ef;--line:#e4e6dc;--orange:#de8055}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:0}header{display:flex;justify-content:space-between;align-items:center;padding:24px 4%;gap:20px}small{font-size:10px;letter-spacing:2px;font-weight:700}h1{font-family:Outfit,system-ui;margin:5px 0 0;font-size:30px;letter-spacing:-1px}h1 span{color:var(--green)}#stats{display:flex;gap:12px}.stat{background:white;border:1px solid var(--line);padding:12px 18px;border-radius:14px}.stat strong{display:block;font-size:22px}.stat small{letter-spacing:1px;color:#83897f}main{display:grid;grid-template-columns:minmax(340px,1fr) minmax(390px,1fr);gap:24px;padding:0 4% 20px;max-width:1600px;margin:auto}.room{height:610px;position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(#e2ead8 0 66%,#c8ae8e 66%);border:7px solid #fff;box-shadow:0 6px 25px #3331}.room:after{content:'';position:absolute;top:66%;height:12px;left:0;right:0;background:#a6b29c}.room-top{position:absolute;z-index:2;top:20px;left:20px;right:20px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#65785c}.window{position:absolute;left:9%;top:90px;width:125px;height:150px;background:#b5d9e1;border:10px solid #fff8e7;border-radius:60px 60px 4px 4px;display:flex;align-items:center;justify-content:space-around;box-shadow:0 6px #b4c4aa}.window:after{content:'';position:absolute;width:7px;height:100%;background:#fff8e7}.poster{position:absolute;right:10%;top:90px;background:#f5cfa0;padding:15px 20px;transform:rotate(4deg);font:bold 22px Outfit,system-ui;box-shadow:2px 5px #0001}.poster b{color:#b8654c}.shelf{position:absolute;left:36%;top:260px;border-bottom:10px solid #ae8261;font-size:27px;transform:rotate(-1deg)}.rug{position:absolute;left:16%;bottom:25px;width:70%;height:105px;background:#d4dbb8;border-radius:50%;transform:rotate(-7deg);border:8px solid #c0cb9e}.bed{position:absolute;left:-25px;bottom:85px;width:155px;height:210px;background:#e9a48a;border:9px solid #b47f61;border-radius:10px 30px 8px 5px;transform:rotate(-8deg);z-index:2;box-shadow:0 10px #8a6959}.bed span{display:block;background:#f8eedb;height:55px;margin:0 5px 30px;border-radius:8px;font-size:30px}.bed b{color:#fff8e7}.desk{position:absolute;left:30%;top:300px;width:140px;height:110px;background:#bb8b64;border-bottom:15px solid #936949;border-radius:8px;z-index:3}.monitor{display:block;background:#34453f;border:7px solid #556359;border-radius:7px;color:#cce7c7;width:100px;height:75px;margin:-45px auto 10px;font-size:30px;box-shadow:0 8px #74624e}.monitor small{display:block;font-size:7px;letter-spacing:1px}.desk b{font-size:12px;color:#fff}.packing{position:absolute;right:5%;bottom:55px;background:#c29365;border-radius:8px;border-bottom:20px solid #9a704d;width:155px;height:100px;font-size:45px;z-index:3}.packing b{display:block;font-size:12px;color:white}.printer-obj{position:absolute;z-index:4;right:6%;top:260px;background:#6c7d70;border:7px solid #8d9e8c;border-bottom:14px solid #536553;width:95px;height:115px;border-radius:12px;color:#fff}.printer-obj:nth-child(2){right:26%;top:385px}.printer-obj:nth-child(3){right:5%;top:390px}.printer-obj .inside{display:block;background:#364b41;height:56px;border-radius:5px;padding-top:14px;font-size:23px}.printer-obj small{font-size:8px;letter-spacing:0}.busy .inside{animation:glow 1s infinite alternate}.room-caption{position:absolute;bottom:10px;left:0;right:0;text-align:center;font-size:11px;color:#745d49;z-index:5}@keyframes glow{to{background:#c5db96;color:#325c43}}.workspace{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;min-height:610px}nav{display:flex;overflow:auto;border-bottom:1px solid var(--line);padding:10px 12px;gap:3px}nav button{background:none;color:#7b837b;padding:12px 10px;border-radius:10px;white-space:nowrap;font-size:12px;font-weight:bold}nav button.active{background:#eaf0e4;color:var(--green)}#panel{padding:24px;max-height:545px;overflow:auto}h2{font:600 25px Outfit,system-ui;margin:0 0 7px}h3{font-size:15px;margin:0 0 6px}p{font-size:13px;line-height:1.6;color:#7b827b;margin:6px 0 16px}.card{border:1px solid var(--line);border-radius:15px;padding:16px;margin:12px 0}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.badge{font-size:10px;padding:5px 8px;border-radius:20px;background:#f1f4e9;color:#5e7657;white-space:nowrap}.primary{background:var(--green);color:white;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:600}.secondary{background:#f0f2e9;color:var(--green);border-radius:9px;padding:9px 12px;font-size:12px}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.06)}.hint{background:#fff3dd;border-radius:12px;padding:12px;font-size:12px;line-height:1.6;margin:12px 0;color:#8a693c}.muted{font-size:12px;color:#899087}.progress{height:7px;background:#eef0e9;border-radius:8px;overflow:hidden;margin:12px 0}.progress i{display:block;background:#8cac70;height:100%;transition:width 1s linear}input,select{border:1px solid #dfe4d9;border-radius:8px;padding:9px;background:white;color:var(--ink);max-width:100%}input[type=number]{width:65px}label{font-size:11px;font-weight:600;display:block;margin:12px 0 5px}.controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.dot{width:13px;height:13px;border-radius:50%;display:inline-block;vertical-align:middle;margin-right:4px}.canvas{height:160px;background:repeating-linear-gradient(0deg,transparent,transparent 19px,#dde3d6 20px),repeating-linear-gradient(90deg,#f4f6ee,#f4f6ee 19px,#dde3d6 20px);border-radius:12px;position:relative;overflow:hidden;margin:12px 0}.shape{position:absolute;display:flex;align-items:center;justify-content:center;color:white;text-shadow:0 1px 3px #0004;border:2px solid #0001;font-size:14px;cursor:pointer}.shape.selected{outline:3px dashed #385f4c;outline-offset:3px}.cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.intro{border-left:3px solid var(--orange);padding-left:12px}#toast{position:fixed;bottom:32px;left:50%;transform:translateX(-50%);background:#334e40;color:white;padding:13px 22px;border-radius:13px;box-shadow:0 4px 30px #0002;z-index:50;opacity:0;pointer-events:none;transition:opacity .2s;font-size:13px}footer{padding:0 4% 20px;font-size:10px;color:#959b90}footer button{background:none;color:#92998b;text-decoration:underline;float:right;font-size:10px}@media(max-width:850px){main{grid-template-columns:1fr}.room{height:450px}.room-top{top:12px}.window{top:60px;height:120px}.poster{top:60px}.shelf{top:190px}.desk{top:245px}.printer-obj{top:200px}.printer-obj:nth-child(2){top:305px}.printer-obj:nth-child(3){top:305px}.bed{bottom:55px;height:170px}.packing{bottom:35px}.workspace{min-height:480px}header{padding:18px 4%}h1{font-size:24px}.stat{padding:8px 12px}.stat strong{font-size:18px}#stats{gap:5px}#panel{max-height:none}}@media(max-width:470px){header{align-items:start}h1{font-size:20px}header small{font-size:8px}.stat{padding:8px}.stat strong{font-size:15px}.stat small{font-size:8px}main{padding:0 12px 15px;gap:14px}#panel{padding:18px}.room{height:420px}.poster{right:6%}}
