@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,Arial,sans-serif;color:#25372e;background:#fff;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0;background:none;border-radius:8px}button:focus-visible,a:focus-visible{outline:3px solid #91ab65;outline-offset:3px}button:hover{filter:brightness(.95)}header{height:88px;padding:0 32px;display:flex;align-items:center;border-bottom:1px solid #e8ebe7;gap:40px}.brand{font-size:25px;font-weight:800;text-decoration:none;color:#25372e;display:flex;align-items:center;gap:10px;letter-spacing:-1px}.logo{background:#2d563f;color:white;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:32px;font-weight:500}.beta{font-size:10px;letter-spacing:1px;background:#edf1e9;padding:5px;color:#718071;align-self:flex-start;margin-top:4px}.project{font-size:14px;color:#627069;flex:1}.project>span{margin:0 14px;color:#acb2ac}.project .pill{margin:0;padding:7px 10px;border-radius:20px;background:#f2f4f0;color:#627069;font-size:12px}.primary{background:#2d563f;color:white;padding:12px 18px;font-size:14px;font-weight:600}main{display:grid;grid-template-columns:240px minmax(350px,1fr) 320px;min-height:690px;height:calc(100dvh - 133px)}.left{padding:32px 24px;overflow:auto}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;color:#8b948d}h1{font-size:29px;line-height:1.25;letter-spacing:-1.3px;margin:17px 0 12px}p.intro{font-size:13px;color:#849086;line-height:1.8;margin:0}.divider{height:1px;background:#e8ebe7;margin:27px 0 24px}#rooms{margin:15px -8px 24px}.room{padding:13px 10px;display:flex;align-items:center;width:100%;text-align:left;font-size:12px;margin:4px 0;gap:10px}.room .room-icon{font-size:17px}.room small{margin-left:auto;color:#899388;font-size:11px}.room.active{background:#edf3e8;color:#31543b;font-weight:700}.plan-card{background:#f7f8f5;border:1px solid #e9ede6;width:100%;padding:10px 12px;text-align:left}.plan-card img{width:100%;height:151px;object-fit:contain;mix-blend-mode:multiply}.plan-card span{display:block;font-size:12px;padding-top:12px}.plan-card b{float:right}.note{display:flex;gap:9px;color:#99a095;font-size:11px;line-height:1.7;margin-top:22px}.note p{margin:0}.workspace{position:relative;background:#f0f2ec;overflow:hidden;background-image:radial-gradient(#cbd1c6 0.7px,transparent 0.7px);background-size:18px 18px}.canvas-top{position:absolute;z-index:2;top:27px;left:28px;right:24px;display:flex;justify-content:space-between;gap:15px;pointer-events:none}.canvas-top h2{font-size:17px;font-weight:600;margin-top:8px;letter-spacing:-.6px}.view-toggle{pointer-events:auto;background:#fff;display:flex;gap:3px;padding:4px;box-shadow:0 3px 12px #324e3510;height:37px}.view-toggle button{padding:4px 12px;font-size:12px}.view-toggle .active{background:#2d563f;color:white}#scene{width:100%;height:100%;touch-action:none}#scene canvas{display:block;width:100%;height:100%}#loading{position:absolute;top:45%;width:100%;text-align:center;color:#6c7c6a;font-size:14px}.scene-caption{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#ffffffdc;border:1px solid #fff;border-radius:30px;padding:10px 16px;font-size:11px;box-shadow:0 5px 30px #3447340a;display:flex;align-items:center;gap:8px}.live-dot{width:6px;height:6px;border-radius:50%;background:#6d9352}.bottom-tools{position:absolute;bottom:25px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:12px}.hint{font-size:10px;color:#849080}.zoom{display:flex;box-shadow:0 3px 15px #324e3510;background:#fff;padding:4px;border-radius:8px}.zoom button{font-size:21px;width:34px;height:32px}.right{padding:32px 24px;display:flex;flex-direction:column;overflow:auto}.right h2{font-size:23px;letter-spacing:-1px;margin:11px 0 25px}.tabs{display:flex;border-bottom:1px solid #e9ece7;gap:15px;margin-bottom:24px}.tabs button{padding:0 0 13px;font-size:12px;border-radius:0;color:#8a938c}.tabs .active{color:#2d563f;border-bottom:2px solid #2d563f;font-weight:800}.panel-title{font-size:14px;font-weight:700;margin:0 0 5px}.sub{font-size:11px;color:#939b92;line-height:1.8}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:21px 0}.swatch{height:45px;border:4px solid white;outline:1px solid #e3e7df;position:relative;border-radius:50%}.swatch.active{outline:2px solid #36563c}.swatch.active:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:white;text-shadow:0 1px 3px #0008}.choice-name{font-size:13px;font-weight:600;display:flex;justify-content:space-between}.choice-name small{font-size:11px;font-weight:400;color:#8d978b}.custom{display:flex;gap:12px;align-items:center;margin:20px 0 25px;font-size:12px}.custom input{width:30px;height:30px;border:0;padding:0;background:none;cursor:pointer}.section-label{font-size:12px;font-weight:700;margin:26px 0 13px}.textures{display:grid;grid-template-columns:1fr 1fr;gap:12px}.texture{border:1px solid #e3e7e0;border-radius:9px;padding:6px;text-align:left;font-size:11px;overflow:hidden}.texture.active{border:2px solid #496844;padding:5px}.texture .sample{height:75px;border-radius:5px;margin-bottom:8px;background:#ece9df}.texture span{display:block;padding:0 4px 5px}.sample.linen{background:repeating-linear-gradient(90deg,#d6cfbd99 0 1px,transparent 1px 3px),repeating-linear-gradient(#e7e1d3 0 2px,#d9d0bd 2px 3px)}.sample.stripe{background:repeating-linear-gradient(90deg,#f1eddf 0 10px,#aabb9d 10px 13px)}.sample.oak{background:repeating-linear-gradient(90deg,#ceae83 0 22px,#b69b72 23px 24px,#d9bc93 25px 48px)}.sample.walnut{background:repeating-linear-gradient(90deg,#765940 0 22px,#56412f 23px 24px,#8c6b50 25px 48px)}.sample.tile{background:repeating-linear-gradient(90deg,transparent 0 29px,#fff 29px 30px),repeating-linear-gradient(#c7c9bf 0 29px,#fff 29px 30px)}.sample.white{background:#eeeae0}.right-footer{margin-top:auto;padding-top:35px;font-size:11px;line-height:1.8;color:#9ba393}.right-footer span{float:left;color:#8d9f73;font-size:25px;margin-right:12px}.furn-item{display:flex;width:100%;padding:15px 10px;background:#f4f6f0;align-items:center;gap:12px;margin:10px 0;text-align:left}.furn-item b{font-size:13px;display:block}.furn-item small{font-size:11px;color:#89927f}.furn-item>span{font-size:25px}.furn-item i{margin-left:auto;font-size:21px;font-style:normal}footer{height:45px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;border-top:1px solid #e8ebe7;font-size:10px;color:#9ba393}footer button{font-size:11px}#selection{position:absolute;bottom:150px;left:50%;transform:translateX(-50%);background:white;border-radius:12px;padding:12px;box-shadow:0 5px 25px #0001;max-width:95%;width:310px;text-align:center;font-size:12px}#selection button{padding:9px;background:#eef2e8;margin:5px 2px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);transition:.3s;background:#253d2d;color:white;border-radius:12px;padding:14px 22px;font-size:13px;z-index:20;max-width:90%}#toast.show{transform:translateX(-50%) translateY(0)}dialog{border:0;border-radius:15px;padding:30px;max-width:90vw;color:#25372e}dialog::backdrop{background:#15271988}dialog img{width:360px;max-width:100%;display:block;margin:auto}dialog p{font-size:12px}dialog>button{float:right;font-size:24px}@media(min-width:1500px){main{grid-template-columns:270px 1fr 360px}.right{padding:36px 32px}.left{padding:36px 30px}}@media(max-width:1100px){main{grid-template-columns:190px 1fr 280px}.left,.right{padding:24px 16px}h1{font-size:25px}.hint{display:none}.canvas-top h2{font-size:14px}.project{display:none}header{justify-content:space-between}.canvas-top{left:20px}.tabs{gap:12px}}@media(max-width:760px){header{height:70px;padding:0 16px;gap:10px}.brand{font-size:21px}.beta{display:none}.primary{font-size:11px;padding:10px}main{display:flex;flex-direction:column;height:auto;min-height:0}.left{padding:16px;order:0}.left>.eyebrow,.left h1,.intro,.divider,.plan-card,.note{display:none}#rooms{display:flex;overflow:auto;margin:0;gap:8px}.room{white-space:nowrap;width:auto;padding:10px;font-size:11px;margin:0}.room small{display:none}.workspace{height:480px;order:1}.right{order:2;padding:24px;min-height:400px}.right h2{margin:8px 0 20px}.right-footer{display:none}.tabs{gap:25px}.swatches{grid-template-columns:repeat(8,1fr)}.swatch{height:34px}.textures{grid-template-columns:repeat(2,1fr)}.canvas-top h2{font-size:15px}footer{height:auto;padding:15px;gap:10px}footer>span:nth-child(2){display:none}.scene-caption{bottom:70px}.bottom-tools{bottom:15px}.canvas-top{top:20px}.scene-caption{font-size:11px}.texture .sample{height:65px}}
/* Multi-apartment editor */
main{grid-template-columns:260px minmax(300px,1fr) 350px;height:calc(100dvh - 133px);min-height:720px}.left{padding:24px 18px}.right{padding:24px 20px;overflow:hidden}.right h2{margin-bottom:20px}#panel{overflow:auto;min-height:0;padding:2px 3px 18px;flex:1}#apartment,#category{width:100%;padding:12px 9px;background:#f3f5f0;border:1px solid #dce3d8;border-radius:8px;color:#354c3d;font:inherit;font-size:13px;margin:12px 0 20px}#category{margin:8px 0 12px;padding:9px;font-size:12px}.design-heading{font-size:13px;font-weight:700;display:flex;justify-content:space-between;margin:5px 0 12px}.design-heading span{font-size:10px;color:#8f9b8c;font-weight:500}.design{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:12px 8px;border:1px solid #e6eae1;margin:8px 0;background:white}.design.active{border-color:#6e8b5c;background:#f1f5eb}.design-colors{display:flex;flex-direction:column}.design-colors i{width:23px;height:14px}.design-colors i:first-child{border-radius:4px 4px 0 0}.design-colors i:last-child{border-radius:0 0 4px 4px}.design b{font-size:11px;display:block;line-height:1.6}.design small{font-size:11px;color:#7c8a74;display:block;margin-top:3px}.design em{margin-left:auto;font-size:15px;font-style:normal}.divider{margin:20px 0}.left .plan-card img{height:120px}.left .note{margin-top:14px}.left .room{font-size:12px}.budget{border-top:1px solid #e5eadf;padding-top:17px;background:#fff;margin-top:auto;flex-shrink:0}.budget-top{display:flex;justify-content:space-between;font-weight:700;font-size:14px;margin-bottom:12px}.budget-top span{font-size:10px;font-weight:500;background:#f2f0e6;padding:4px 7px;border-radius:4px;color:#928462}.budget-line{display:flex;justify-content:space-between;gap:8px;font-size:12px;padding:5px 0;color:#7a8876}.budget-line b{font-size:12px;color:#3b503e}.budget-total{display:flex;align-items:center;justify-content:space-between;margin:12px 0;font-size:13px}.budget-total strong{font-size:25px;letter-spacing:-1px}.budget .primary{width:100%;padding:13px}.budget>button:not(.primary){width:100%;font-size:12px;margin:8px 0 0;color:#658157}.budget p{font-size:10px;text-align:center;color:#8f9889;margin:8px 0 0}.catalog{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product{padding:8px;text-align:left;border:1px solid #e6eade;background:#fff;min-width:0}.product-image{position:relative;height:86px;background:#f1f3ec;border-radius:5px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.product-image img{width:90%;height:90%;object-fit:contain}.product-add{position:absolute;right:4px;bottom:4px;background:white;border-radius:50%;width:20px;height:20px;display:grid;place-items:center;font-size:15px}.product b{font-size:11px;line-height:1.4;display:block;min-height:30px}.product small{font-size:10px;color:#8d9886;display:block;margin:6px 0}.product strong{font-size:13px}.bespoke{font-size:42px;color:#9caa8f}.search{font:inherit;font-size:12px;border:1px solid #dce4d6;border-radius:6px;padding:11px;width:100%;margin-top:15px;color:#334b3b}.stock-note{font-size:10px;color:#85917c;line-height:1.7}.stock-note a{color:inherit}.texture small{font-size:11px;display:block;padding:0 4px 5px;color:#75846c}.texture .sample.paint{background-image:none}.space-top{margin-top:20px}#selection{bottom:130px;width:320px;z-index:3}.scene-caption{bottom:80px}.order-dialog{width:860px;max-width:94vw;max-height:88dvh;padding:28px}.close-dialog{position:sticky;top:0;float:right;font-size:26px;background:white}.demo-banner{background:#f4f1e6;border:1px solid #e8e0ca;padding:13px;font-size:13px;border-radius:8px;margin:16px 0;color:#796e4d}#orderLines h3{font-size:16px;margin:26px 0 10px}#orderLines table{width:100%;border-collapse:collapse;font-size:12px}#orderLines th{text-align:left;color:#8b9583;font-size:11px;font-weight:500;padding:10px 5px}#orderLines td{border-top:1px solid #e9ede4;padding:11px 5px}#orderLines td:not(:first-child){white-space:nowrap}#orderLines td:last-child,#orderLines th:last-child{text-align:right}#orderSummary{display:flex;justify-content:space-between;padding-top:24px;margin-top:15px;border-top:1px solid #d9e1d1}#orderSummary strong{font-size:25px}.order-note{font-size:12px;color:#829078;line-height:1.8}.order-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:20px}.order-actions button{font-size:12px}#orderResult{line-height:1.8;font-size:13px;background:#eff5e8;border-radius:8px}#orderResult:not(:empty){padding:18px;margin-top:20px}button:disabled{opacity:.45;cursor:default}.eyebrow{font-size:11px}.hint{font-size:11px}.tabs button{font-size:13px}.sub{font-size:12px}.scene-caption{font-size:12px}.room small{font-size:12px}
@media(min-width:1500px){main{grid-template-columns:280px 1fr 380px}.design b{font-size:13px}.product b{font-size:13px}.product-image{height:115px}}
@media(max-width:1100px) and (min-width:761px){main{grid-template-columns:205px minmax(220px,1fr) 300px}.left,.right{padding:20px 13px}.design{padding:10px 6px;gap:6px}.design b{font-size:10px}.budget-total strong{font-size:23px}.canvas-top h2{font-size:13px}}
@media(max-width:760px){main{display:flex;height:auto;min-height:0}.left{padding:16px}.left>label.eyebrow{display:block}#apartment{margin:7px 0 12px}.design-heading{margin:5px 0 8px}#designs{display:flex;gap:7px;overflow:auto}.design{min-width:172px;padding:9px;margin:0 0 12px}.design b{font-size:11px}.design-colors i{width:17px;height:12px}.left .divider{display:none}.left>.eyebrow{display:none}.left #rooms{margin-top:4px}.workspace{height:510px}.right{height:auto;overflow:visible;padding:22px 18px}#panel{max-height:470px;flex:initial}.budget{margin-top:20px;padding-top:20px}.budget-line{font-size:14px}.budget-line b{font-size:14px}.catalog{grid-template-columns:repeat(2,1fr)}.product-image{height:115px}.product b{font-size:13px;min-height:0}.product small{font-size:12px}.product strong{font-size:15px}.swatches{grid-template-columns:repeat(4,1fr);max-width:300px}.swatch{height:48px}.design-heading span{font-size:11px}.order-dialog{padding:18px}#orderLines{overflow:auto}#orderLines table{min-width:440px}.order-actions{flex-direction:column}.order-actions button{padding:12px}.budget p{font-size:12px}.budget-top span{font-size:12px}#selection{bottom:130px}.hint{display:none}}

.mobile-budget{display:none}@media(max-width:760px){body{padding-bottom:76px}.mobile-budget{position:fixed;bottom:0;left:0;right:0;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:#ffffffed;backdrop-filter:blur(12px);border-top:1px solid #d9e2d2;box-shadow:0 -5px 22px #233b2410}.mobile-budget>span{font-size:11px;color:#89917e}.mobile-budget strong{display:block;font-size:22px;letter-spacing:-.5px;color:#2d4937;margin-top:3px}.mobile-budget .primary{font-size:13px}.order-dialog{max-height:82dvh}}

.render-controls{position:absolute;z-index:3;left:24px;top:106px;display:flex;align-items:center;gap:12px;max-width:calc(100% - 40px)}
.render-controls button{background:#fffdf5;border:1px solid #d1d5c9;border-radius:24px;padding:9px 16px;color:#304d3b;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 3px 12px #2431230a}
.render-controls button[aria-pressed="true"]{background:#304d3b;color:#fff}.render-controls span{font-size:11px;color:#596457;background:#ffffffd9;padding:6px 9px;border-radius:12px}
@media(max-width:700px){.render-controls{left:12px;top:91px;gap:6px}.render-controls span{max-width:130px;font-size:10px}.render-controls button{padding:8px 10px}}

.render-controls button:disabled{opacity:.48;cursor:not-allowed}
