@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400 500;font-display:swap;src:url(/projects/forma/assets/fonts/cormorant-garamond-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400 500;font-display:swap;src:url(/projects/forma/assets/fonts/cormorant-garamond-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/projects/forma/assets/fonts/dm-sans-variable.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/projects/forma/assets/fonts/manrope-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.app-shell.studio-loading{visibility:hidden;pointer-events:none}.app-shell.studio-ready{animation:studio-reveal .65s ease both}@keyframes studio-reveal{0%{opacity:0}to{opacity:1}}.loading-screen{position:fixed;inset:0;z-index:1000;background:#f4f1e9;color:#424839;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 24px;overflow:auto}.loading-wordmark{font-family:Manrope,sans-serif;font-weight:600;font-size:38px;letter-spacing:-2px}.loading-wordmark span{color:#879071}.loading-kicker{display:block;font-size:9px;letter-spacing:2.3px;font-weight:500}.loading-screen>.loading-kicker{margin-top:8px;color:#929585}.loading-drawing{width:112px;height:92px;position:relative;margin:42px 0 26px;transform:rotate(-8deg)}.loading-drawing i{position:absolute;width:30px;height:38px;top:20px;border:1px solid #879071;border-radius:9px 9px 5px 5px;background:#e9e7dc}.loading-drawing i:nth-child(1){left:12px}.loading-drawing i:nth-child(2){left:42px}.loading-drawing i:nth-child(3){left:72px}.loading-drawing b{position:absolute;width:12px;height:32px;top:40px;border:1px solid #879071;border-radius:5px;background:#e9e7dc;left:5px}.loading-drawing b:nth-of-type(2){left:99px}.loading-drawing>span{position:absolute;width:84px;height:17px;top:52px;left:16px;border:1px solid #879071;border-radius:4px;background:#e9e7dc}.loading-copy .loading-kicker{color:#7d846b}.loading-copy h1{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(37px,5vw,58px);font-weight:400;line-height:1.05;letter-spacing:-1.7px;margin:18px 0}.loading-copy h1 em{font-weight:400;color:#818970}.loading-copy p{font-size:12px;color:#929588;min-height:20px;max-width:360px;line-height:1.65}.loading-progress{width:min(290px,85vw);margin-top:27px}.loading-progress-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.1px;margin-bottom:12px}.loading-track{height:2px;background:#dddccf}.loading-track>span{display:block;height:100%;background:#788266;transition:width .4s ease}.loading-footnote{font-family:Cormorant Garamond,Georgia,serif;font-size:16px;font-style:italic;color:#a0a18f;margin:44px 0 0}.loading-retry{display:flex;gap:40px;background:#535e46;color:#fff;padding:14px 23px;border-radius:4px;margin-top:20px}.loading-retry:hover{background:#414e34;color:#fff!important}.space-select-label{display:inline-flex;align-items:center;gap:6px;pointer-events:auto}.space-select-label select{appearance:none;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;padding:6px 0;cursor:pointer;max-width:210px;outline-offset:3px}.space-collection{display:grid;gap:9px;margin-top:16px}.space-card{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:11px 9px;border:1px solid #e3e1d7;border-radius:7px}.space-card.selected{border-color:#8a947c;background:#eeefe6}.space-card>svg{margin-left:auto;width:14px}.space-card-copy{display:flex;flex-direction:column;min-width:0}.space-card-copy small{font-size:8px;letter-spacing:1.3px;color:#96998b}.space-card-copy strong{font-family:Cormorant Garamond,Georgia,serif;font-size:21px;font-weight:500;margin:3px 0 2px}.space-card-copy>span{font-size:9px;color:#8b8e81;line-height:1.6}.space-plan{position:relative;width:59px;height:64px;flex-shrink:0;background:#e5dfd1;border-left:2px solid #b8b39f;border-top:2px solid #b8b39f}.space-plan>i{position:absolute;width:39px;height:15px;background:#afad94;border:2px solid #95977c;border-radius:3px;top:8px;left:9px}.space-plan>b{position:absolute;width:23px;height:15px;border-radius:50%;background:#c0ad90;top:33px;left:23px}.space-plan>em{position:absolute;width:13px;height:14px;border-radius:3px;background:#ad8d70;top:38px;left:6px;transform:rotate(-28deg)}.space-plan>em:nth-of-type(2){display:none}.plan-gallery{background:#ab9b84}.plan-gallery>i{transform:rotate(90deg);top:25px;left:-9px;background:#829075}.plan-gallery>b{left:21px;width:20px;height:20px;background:#e2dccb;top:24px}.plan-gallery>em{left:44px;top:13px;transform:rotate(90deg);background:#71675b}.plan-gallery>em:nth-of-type(2){display:block;top:40px}.plan-courtyard{background:#e5d6b8;border-top:4px dotted #b8ac8f}.plan-courtyard>i{background:#dbd5bb;height:13px}.plan-courtyard>i:after{content:"";position:absolute;height:20px;width:12px;background:#dbd5bb;top:8px;left:-2px;border-radius:2px;border:2px solid #95977c}.plan-courtyard>em{left:44px;top:39px;background:#bd9274}.material-sample.surface-boucle,.surface-boucle.macro-surface,.surface-boucle.fabric-macro{background-image:url(/projects/forma/assets/textures/upholstery-scan/boucle-neutral.webp);background-color:var(--sample-color, #d8cfbd);background-blend-mode:multiply;background-size:145px}.material-sample.surface-linen,.material-sample.surface-woven,.surface-linen.macro-surface,.surface-woven.macro-surface,.surface-linen.fabric-macro,.surface-woven.fabric-macro{background-image:url(/projects/forma/assets/textures/upholstery-scan/linen-neutral.webp);background-color:var(--sample-color, #d8cfbd);background-blend-mode:multiply;background-size:145px}.object-preview.textile-preview{background:#e8e4d8;isolation:isolate;height:164px}.textile-preview .mini-object{position:absolute;inset:0;transform:none;width:100%;height:100%}.textile-preview .macro-surface{position:absolute;inset:0;background-size:280px}.textile-preview .preview-index,.textile-preview .preview-category,.textile-preview .preview-corner{z-index:2;color:#474a3d;background:#f7f4ebe8;padding:4px 6px;border-radius:3px}.textile-detail-button{display:flex;align-items:center;gap:8px;font-size:10px;margin-top:14px;color:#697555}.textile-detail-button svg:last-child{margin-left:auto}.fabric-inspect{display:flex;align-items:center;gap:11px;width:100%;margin-top:20px;border-top:1px solid #e4e1d6;padding:15px 0 0;text-align:left}.fabric-macro{display:block;width:48px;height:48px;border-radius:50%;flex-shrink:0}.fabric-inspect strong{display:block;font-family:Cormorant Garamond,Georgia,serif;font-size:19px;font-weight:500}.fabric-inspect small{display:block;font-size:9px;color:#909385;margin-top:4px}.fabric-inspect>svg{margin-left:auto}.material-sample.surface-stone,.material-sample.surface-travertine{background-image:url(/projects/forma/assets/textures/mineral-scan/travertine-neutral.webp);background-size:90px;background-color:var(--sample-color, #d8cfbd);background-blend-mode:multiply}@media(prefers-reduced-motion:reduce){.app-shell.studio-ready{animation:none}.loading-track>span{transition:none}}@media(max-height:640px){.loading-drawing{margin:20px 0 10px}.loading-footnote{margin-top:20px}.loading-copy h1{font-size:38px}.loading-wordmark{font-size:30px}}@media(max-width:820px){.space-select-label select{max-width:190px}.loading-copy h1{font-size:44px}}:root{font-family:DM Sans,sans-serif;color:#35392f;background:#f5f3ed;font-synthesis:none;font-weight:400;--paper: #f8f7f3;--line: #e4e3dc;--muted: #93948a;--olive: #535e46;--ink: #343a2e}*{box-sizing:border-box}body{margin:0}button,a,input,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{color:inherit;border:0;cursor:pointer;background:none}button,a,input,select{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #777f64}button:disabled{cursor:default;opacity:.3}button:not(:disabled),a{transition:background .18s,color .18s,opacity .18s,box-shadow .18s,transform .18s}button:not(:disabled):hover{color:#71815a}a{color:inherit;text-decoration:none}svg{flex-shrink:0;stroke-width:1.5}.app-shell{height:100dvh;min-height:600px;display:flex;flex-direction:column;overflow:hidden}.header{height:88px;flex:0 0 88px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);z-index:5}.brand{display:flex;align-items:center;gap:10px}.brand>span:nth-child(2){font-family:Manrope,sans-serif;letter-spacing:-2px;font-size:36px;font-weight:600;line-height:1}.brand-period{color:#7a8668}.brand-symbol{width:24px;height:27px;position:relative;margin-right:5px}.brand-symbol i{display:block;position:absolute;left:0;width:23px;height:1.5px;background:var(--ink);transform:rotate(-28deg);transform-origin:left}.brand-symbol i:nth-child(1){top:7px}.brand-symbol i:nth-child(2){top:17px;width:16px}.brand-symbol i:nth-child(3){left:0;top:6px;width:1.5px;height:26px;transform:none}.brand-sub{font-size:9px;font-weight:500;letter-spacing:2.1px;margin:8px 0 0 21px;border-left:1px solid #d6d6cb;padding-left:22px}.header-nav{display:flex;gap:36px;align-self:stretch;align-items:center;margin-left:-80px}.header-nav button{height:100%;position:relative;font-size:12px;color:#999b91;font-weight:500}.header-nav button.active{color:#444c38}.header-nav button.active>span{position:absolute;width:20px;height:2px;background:#667552;bottom:18px;left:calc(50% - 10px)}.header-nav small{font-size:9px;margin-left:3px;background:#e9ebdf;border-radius:50%;padding:2px 5px}.header-actions{display:flex;align-items:center;gap:18px}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.icon-button:hover{background:#e9e9e080}.save-button{background:#505c42;color:#fffdf5;padding:13px 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:11px;letter-spacing:.15px;border-radius:3px}.save-button:not(:disabled):hover{background:#677654;color:#fff}.workspace{display:flex;flex:1;min-height:0}.tool-rail{width:72px;flex-shrink:0;background:var(--paper);border-right:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-direction:column;padding:22px 0 19px;z-index:4}.rail-top,.rail-bottom{display:flex;align-items:center;flex-direction:column;gap:14px}.rail-button{width:42px;height:42px;border-radius:6px;color:#95988e;display:flex;align-items:center;justify-content:center;position:relative}.rail-button.active{color:#536047;background:#e9ecdf}.rail-button.active:before{content:"";position:absolute;left:-15px;height:18px;width:2px;background:#6c7858;border-radius:1px}.rail-button:hover{background:#eeeee6}.rail-divider{width:23px;height:1px;background:var(--line);margin:8px 0}.rail-sign{width:29px;height:29px;border-radius:50%;background:#e5e0d3;display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,serif;font-size:19px;font-style:italic;margin-top:4px}.viewport{position:relative;flex:1;min-width:0;overflow:hidden;background:#ddd7c7}.scene{position:absolute;inset:0;isolation:isolate}.scene canvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-4px}.scene-heading{position:absolute;top:34px;left:34px;pointer-events:none;z-index:2}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:600;color:#8c8f80;display:flex;align-items:center;gap:8px}.scene-heading .eyebrow{color:#707565;font-size:9px;letter-spacing:1.65px}.small-line{width:20px;height:1px;background:#7c816f}.scene-heading h1{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(43px,3.9vw,64px);line-height:.96;letter-spacing:-1.5px;margin:18px 0 16px;color:#3d4535}.scene-heading h1 em{font-weight:400}.scene-heading p{font-size:10px;letter-spacing:.2px;color:#7c7d70}.scene-status{position:absolute;right:25px;top:29px;display:flex;align-items:center;gap:7px;background:#f7f6eece;padding:9px 12px;font-size:8px;letter-spacing:1px;border:1px solid #fff6;border-radius:3px;pointer-events:none;color:#767d67}.live-dot{display:inline-block;width:5px;height:5px;min-width:5px;border-radius:50%;background:#84936d;box-shadow:0 0 0 3px #84936d12}.status-divider{height:9px;width:1px;background:#c4c7b8;margin:0 2px}.scene-top-actions{position:absolute;top:77px;right:25px;display:flex;gap:5px;background:#f8f7efc9;padding:3px;border-radius:4px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scene-vertical-actions{position:absolute;right:24px;bottom:161px;display:flex;flex-direction:column;padding:4px;background:#fbfaf3dd;border:1px solid #fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:4px;box-shadow:0 2px 15px #3331}.scene-vertical-actions span{height:1px;background:#dcded3;margin:4px 6px}.scene-bottom{position:absolute;bottom:26px;left:20px;right:20px;display:flex;align-items:center;flex-direction:column;gap:17px;pointer-events:none}.navigation-tip{display:flex;align-items:center;gap:7px;font-size:9px;color:#535749;background:#f6f4eaac;padding:6px 9px;border-radius:3px}.camera-controls{display:flex;gap:10px;align-items:center;pointer-events:auto}.view-tabs{display:flex;background:#f7f6efe8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:5px;border:1px solid #fffc;border-radius:5px;box-shadow:0 3px 18px #27291c0d}.view-tabs button{padding:10px 14px;font-size:10px;color:#8a8f7f;border-radius:3px;white-space:nowrap}.view-tabs button.active{background:#e7e9dd;color:#4d583f}.walk-button{background:#f7f6efed;display:flex;align-items:center;gap:8px;padding:15px 17px;border:1px solid #fffc;border-radius:5px;font-size:10px;box-shadow:0 3px 18px #27291c0d;white-space:nowrap}.walk-button.active{background:#525e44;color:#fff}.scene-hotspot{position:absolute;left:0;top:0;z-index:1;display:flex;align-items:center;gap:7px;padding:0;pointer-events:auto;white-space:nowrap;will-change:transform}.hotspot-dot{width:23px;height:23px;display:grid;place-items:center;background:#fafaf2df;border:1px solid #fff;color:#5f6950;font-size:17px;font-weight:300;border-radius:50%;box-shadow:0 1px 10px #3325;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hotspot-label{display:none;font-size:9px;background:#fafaf2ee;padding:6px 9px;border-radius:3px;box-shadow:0 1px 10px #3321}.scene-hotspot.selected .hotspot-dot{background:#647153;color:#fff;border:3px solid #f3f1e2;width:26px;height:26px}.scene-hotspot:hover .hotspot-label,.scene-hotspot.selected .hotspot-label{display:block}.scene-hotspot.selected:after{content:"";position:absolute;width:34px;height:34px;border:1px solid #faf8eaaa;border-radius:50%;left:-4px;top:-4px;pointer-events:none}.inspector{width:318px;flex-shrink:0;background:var(--paper);border-left:1px solid var(--line);display:flex;flex-direction:column;z-index:4}.inspector-heading{padding:30px 26px 23px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.inspector-heading h2{font-family:Cormorant Garamond,Georgia,serif;font-weight:500;font-size:28px;letter-spacing:-.65px;margin:8px 0 0}.inspector-heading>.icon-button{display:none}.inspector-scroll{flex:1;overflow:auto;padding:23px 26px 24px;scrollbar-width:thin;scrollbar-color:#d7d8cc transparent}.section-label{display:block;font-size:9px;font-weight:600;letter-spacing:1.15px;color:#929588}.object-select-wrap{margin-bottom:18px}.object-select{border:1px solid #dedfd3;border-radius:3px;display:flex;align-items:center;margin-top:10px;height:39px;padding:0 12px;gap:10px;background:#fcfcf7;color:#737a65;position:relative}.object-select select{font-size:11px;font-weight:500;appearance:none;border:0;background:transparent;width:100%;height:100%;color:#59614e;cursor:pointer;z-index:1;padding-right:17px}.object-select>svg:last-child{position:absolute;right:12px}.object-preview{height:143px;background:radial-gradient(ellipse at 50% 80%,#d8d3c777,transparent 58%),#eeede6;border:1px solid #e8e7df;border-radius:3px;position:relative;overflow:hidden}.preview-index{position:absolute;left:12px;top:12px;font-size:8px;letter-spacing:1px;color:#aaad9f}.preview-category{position:absolute;left:12px;bottom:11px;font-size:7px;letter-spacing:1.3px;color:#a4a695}.preview-corner{position:absolute;right:12px;bottom:8px;font-size:17px;color:#9fa38f}.mini-object{height:100%;display:flex;align-items:center;justify-content:center;transform:translateY(5px);filter:drop-shadow(0 12px 7px #554c3522)}.mini-object>svg{width:101px;height:95px;fill:var(--object-color);stroke:#817d6b}.mini-sofa{position:relative;width:182px;height:69px;transform:perspective(500px) rotateY(-12deg) rotateX(7deg)}.mini-sofa i{position:absolute;bottom:15px;width:55px;height:35px;background:var(--object-color);border-radius:8px 8px 6px 6px;box-shadow:inset 0 6px 12px #fff5,inset 0 -4px 5px #796c4824}.mini-sofa i:nth-child(1){left:10px}.mini-sofa i:nth-child(2){left:66px}.mini-sofa i:nth-child(3){left:122px}.mini-sofa:before{content:"";position:absolute;left:4px;bottom:7px;width:180px;height:25px;background:var(--object-color);border-radius:7px;box-shadow:inset 0 -7px 7px #796c4828}.mini-sofa:after{content:"";position:absolute;left:14px;bottom:8px;width:160px;height:14px;background:var(--object-color);border-radius:5px;box-shadow:inset 0 4px 4px #fff4,inset 0 -3px 3px #796c4825}.mini-sofa b{position:absolute;bottom:9px;width:14px;height:32px;border-radius:5px;background:var(--object-color);box-shadow:inset 0 4px 4px #fff4,inset 0 -2px 4px #796c4840;z-index:1}.mini-sofa b:nth-of-type(1){left:0}.mini-sofa b:nth-of-type(2){right:-5px}.mini-sofa span{position:absolute;left:8px;bottom:2px;height:7px;width:168px;background:#756b5230;border-radius:3px;z-index:-1}.mini-table{width:132px;height:62px;position:relative}.mini-table i{position:absolute;top:0;left:0;width:132px;height:37px;border-radius:50%;background:var(--object-color);box-shadow:inset 0 -8px 5px #76674730;z-index:2}.mini-table b{position:absolute;width:23px;height:44px;left:25px;bottom:0;border-radius:0 0 7px 7px;background:var(--object-color);box-shadow:inset -7px 0 4px #76674735}.mini-table b:last-child{left:82px}.mini-surface{width:120px;height:85px;transform:rotateX(45deg) rotate(-30deg);border-radius:2px;background-color:var(--object-color);box-shadow:-4px 4px #a79d8977}.object-description{margin-top:17px}.object-description h3{font-size:12px;font-weight:550;margin:0 0 5px}.object-description p{font-size:10px;color:#94958b;line-height:1.6;margin:0}.section-divider{height:1px;background:var(--line);margin:22px 0}.label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;font-size:11px}.selection-name{font-size:10px;color:#858b79}.material-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.material-option{padding:0;text-align:center;display:flex;align-items:center;flex-direction:column;gap:8px;font-size:9px;color:#949689;line-height:1.3}.material-option.selected{color:#4a553d}.material-sample{display:block;height:52px;width:100%;border-radius:3px;position:relative;background-color:var(--sample-color, #c3b69d);box-shadow:inset 0 0 0 1px #71654812}.material-option.selected .material-sample{outline:1px solid #778166;outline-offset:3px}.sample-check{position:absolute;bottom:4px;right:4px;background:#f7f9f1;color:#596a43;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center}.surface-boucle{background-image:url(/projects/forma/assets/textures/fabric/roughness.jpg);background-size:90px;background-blend-mode:multiply;filter:contrast(.9)}.surface-linen,.surface-woven{background-image:repeating-linear-gradient(0deg,#fff1 0 1px,#53472a20 1px 2px,transparent 2px 4px),repeating-linear-gradient(90deg,#fff3 0 1px,#53472a20 1px 2px,transparent 2px 4px)}.surface-velvet{background-image:linear-gradient(130deg,#fff7,#51402022 70%),url(/projects/forma/assets/textures/fabric/roughness.jpg);background-size:cover;background-blend-mode:soft-light}.surface-leather{background-image:url(/projects/forma/assets/textures/leather/color.jpg);background-size:100px;background-blend-mode:luminosity}.surface-oak,.surface-walnut{background-image:url(/projects/forma/assets/textures/wood/color.jpg);background-size:130px}.surface-walnut{background-blend-mode:multiply;background-color:#8f7050}.surface-plaster,.surface-limewash,.surface-concrete{background-image:url(/projects/forma/assets/textures/mineral-scan/plaster-neutral.webp);background-size:100px;background-blend-mode:multiply}.surface-limewash{filter:contrast(.85)}.surface-concrete{filter:grayscale(1)}.surface-marble{background-image:url(/projects/forma/assets/textures/marble/color.jpg);background-size:150px}.surface-travertine,.surface-stone{background-image:repeating-linear-gradient(2deg,#a18d671a 0 1px,#fff2 1px 4px,#a18d671a 4px 5px,transparent 5px 9px);background-color:#cfc2ab}.color-label{margin-top:26px}.color-swatches{display:flex;justify-content:space-between;gap:8px;margin-top:3px}.color-swatches button{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid #6f6a4b15}.color-swatches button.selected{outline:1px solid #889078;outline-offset:3px}.color-swatches button:hover{transform:translateY(-2px)}.custom-color{display:flex;justify-content:space-between;align-items:center;margin-top:20px;font-size:10px;color:#95998b;cursor:pointer}.custom-color>span{display:flex;align-items:center;gap:6px}.color-input-wrap{position:relative;display:flex}.color-input-wrap>span{width:15px;height:15px;border-radius:50%;border:1px solid #6663}.color-input-wrap input{position:absolute;width:45px;opacity:0;height:25px;right:0;cursor:pointer}.material-note{margin-top:23px;border-top:1px solid var(--line);padding-top:19px;display:flex;gap:10px;color:#959c85;align-items:flex-start}.material-note p{font-size:10px;color:#7a846b;line-height:1.4;margin:0}.material-note p span{font-size:9px;color:#a3a799;display:block;margin-top:3px}.inspector-footer{padding:17px 20px 15px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:13px;background:#f5f5ee}.inspector-footer>span{font-size:9px;color:#9a9e8e;display:flex;gap:7px;align-items:center}.inspector-footer button{display:flex;gap:7px;align-items:center;font-size:9px;color:#7c856c;-webkit-user-select:none;user-select:none;touch-action:none}.footer{height:38px;flex:0 0 38px;padding:0 28px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);background:var(--paper);z-index:5;font-size:7px;color:#979b8b;letter-spacing:1.2px}.footer>span:first-child i{font-family:Cormorant Garamond,serif;letter-spacing:.4px;font-size:11px;margin-left:5px;color:#7a8369}.footer>div{display:flex;gap:13px;align-items:center}.footer>div button{display:flex;gap:6px;align-items:center;font-size:8px;letter-spacing:.3px;padding:0}.panel-intro{font-size:12px;line-height:1.8;color:#929787;margin:0 0 25px}.lighting-options{display:flex;flex-direction:column;gap:12px}.lighting-options>button{display:flex;gap:12px;padding:13px 10px;border:1px solid #e3e4d9;border-radius:4px;text-align:left;align-items:center}.lighting-options>button.selected{background:#ecefe2;border-color:#b4bea0}.lighting-options>button>span:nth-child(2){flex:1}.lighting-options strong{display:block;font-size:11px;font-weight:500}.lighting-options small{display:block;margin-top:4px;font-size:9px;color:#9b9f8c}.light-icon{width:39px;height:39px;display:grid;place-items:center;background:#f1e8d2;color:#a29864;border-radius:50%}.light-icon.golden{background:#ead9bd;color:#bc9058}.light-icon.evening{background:#dedee5;color:#8e8aa3}.range-input{accent-color:#737e5c;width:100%;height:3px;margin:12px 0}.range-labels{display:flex;justify-content:space-between;font-size:9px;color:#a1a58f;margin-top:6px}.quiet-note{font-size:11px;line-height:1.8;padding:16px;background:#efefe5;color:#91977f;border-radius:4px;margin-top:30px}.object-list{display:flex;flex-direction:column;margin-top:8px}.object-list button{display:flex;align-items:center;gap:11px;text-align:left;border-bottom:1px solid #e8e9df;padding:14px 0}.object-list-icon{width:33px;height:35px;background:#eeeee5;border-radius:4px;display:grid;place-items:center;color:#7d876d}.object-list button>span:nth-child(2){flex:1}.object-list strong{display:block;font-weight:500;font-size:11px}.object-list small{display:block;color:#9fa38e;font-size:9px;margin-top:5px}.object-list i{width:14px;height:14px;border-radius:50%;border:1px solid #7771}.object-list svg:last-child{color:#acb19d}.segmented{display:flex;padding:4px;border:1px solid #e0e2d4;border-radius:4px;background:#f0f1e8}.segmented button{flex:1;font-size:10px;padding:9px 5px;border-radius:3px;color:#929b81}.segmented button.active{background:#fafbf6;color:#5d6b47;box-shadow:0 1px 4px #3331}.layout-toggle{margin-top:13px}.palette-list{display:flex;flex-direction:column;margin-top:12px}.palette-list button{display:flex;align-items:center;gap:14px;font-size:10px;padding:12px 0;border-bottom:1px solid #e8e9df;text-align:left}.palette-list button>span:nth-child(2){flex:1}.palette-dots{display:flex;padding-left:3px}.palette-dots i{width:19px;height:25px;margin-left:-3px;border-radius:4px;border:1px solid #f9f8f2}.settings-views{margin:13px 0;display:flex;flex-direction:column;gap:8px}.settings-views button{display:flex;gap:15px;align-items:center;padding:13px 14px;border:1px solid #e4e5db;border-radius:3px;text-align:left;font-size:11px}.settings-views button>span{font-size:9px;color:#a6ad96}.settings-views button>svg{margin-left:auto}.settings-views button.selected{background:#ebeedf;border-color:#c2cbb1}.helper-text{font-size:10px;line-height:1.8;color:#9ba28c;margin:14px 0 22px}.outline-button{display:flex;align-items:center;justify-content:center;gap:9px;font-size:11px;border:1px solid #d8deca;border-radius:3px;padding:12px 16px;width:100%;margin:10px 0;color:#778166}.text-button{font-size:10px;display:inline-flex;gap:8px;align-items:center;padding:0;color:#7e8a6b}.credits-link{margin:18px 0}.toast{position:fixed;bottom:62px;left:50%;transform:translate(-50%);background:#3e4937;color:#f3f4e9;padding:15px 23px;font-size:12px;display:flex;align-items:center;gap:10px;border:1px solid #78876866;border-radius:5px;box-shadow:0 8px 32px #27311e24;z-index:100;max-width:90vw;animation:toast-in .25s ease}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.modal-backdrop{position:fixed;inset:0;background:#31372c66;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:25px;z-index:50}.modal{position:relative;background:#f8f8f0;width:580px;max-width:100%;max-height:88dvh;overflow:auto;border-radius:7px;padding:40px;box-shadow:0 30px 80px #151b1633}.modal>.icon-button{position:absolute;right:15px;top:15px}.modal h2{font-family:Cormorant Garamond,serif;font-weight:400;font-size:40px;letter-spacing:-1px;line-height:1.1;margin:15px 0 26px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:30px}.help-grid>div>svg{color:#8e9c78;margin-bottom:12px}.help-grid strong{display:block;font-size:12px;font-weight:500}.help-grid p{font-size:11px;line-height:1.75;color:#979f86}.modal-actions{display:flex;gap:12px;justify-content:flex-end;align-items:center}.modal-actions>.outline-button{width:auto}.empty-state{display:flex;align-items:center;flex-direction:column;padding:20px 15px;color:#8c987a;text-align:center}.empty-state p{font-family:Cormorant Garamond,serif;font-size:27px;color:#6c795b;margin:17px 0 8px}.empty-state>span{font-size:12px;line-height:1.7;max-width:270px}.empty-state .save-button{margin-top:25px}.saved-list>div{display:flex;gap:16px;align-items:center;border-bottom:1px solid #e0e5d6;padding:18px 0}.saved-list>div>div:nth-child(2){flex:1}.saved-list strong{font-size:12px;font-weight:500}.saved-list small{display:block;font-size:10px;color:#a1ab92;margin-top:4px}.credits-list{display:flex;flex-direction:column}.credits-list a{font-size:11px;padding:14px 0;display:flex;justify-content:space-between;border-bottom:1px solid #e3e7da;gap:20px}.credits-list a span{font-size:9px;color:#95a181}.share-input{width:100%;padding:13px;border:1px solid #ced6bf;background:#f1f3e8;color:#7f8b6b;border-radius:4px;font-size:12px}.scene-error{position:absolute;inset:30% 15%;z-index:10;padding:30px;background:#f8f7edee;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 5px 30px #5552;text-align:center;border-radius:8px;font-size:13px;line-height:1.7;height:max-content}.scene-error button{padding:10px 20px;background:#5e6a4e;color:#fff;border-radius:3px;font-size:12px}.walk-pad{position:absolute;left:25px;bottom:145px;display:grid;grid-template-columns:repeat(3,34px);gap:5px}.walk-pad button{width:34px;height:34px;background:#faf9eddd;border:1px solid #fff;border-radius:4px;touch-action:none;-webkit-user-select:none;user-select:none;font-size:18px}.walk-pad button:first-child{grid-column:2}.walk-pad button:nth-child(2){grid-column:1}.walk-mode canvas{cursor:crosshair!important}.comparison-badge{position:absolute;left:50%;top:27px;transform:translate(-50%);padding:9px 15px;background:#526044;color:#fff;border-radius:3px;font-size:11px}.mobile-customise{display:none}@media(min-width:1600px){.inspector{width:355px}.inspector-scroll{padding:27px 31px}.inspector-heading{padding:33px 31px 28px}.object-preview{height:174px}.material-sample{height:61px}.color-swatches button{width:35px;height:35px}.object-description{margin-top:20px}.section-divider{margin:27px 0}.scene-heading{top:44px;left:46px}}@media(max-height:790px)and (min-width:821px){.header{height:73px;flex-basis:73px}.inspector-heading{padding-top:21px;padding-bottom:18px}.inspector-scroll{padding-top:18px}.object-preview{height:105px}.object-select-wrap{margin-bottom:13px}.object-description{margin-top:12px}.section-divider{margin:17px 0}.material-sample{height:43px}.color-label{margin-top:20px}.color-swatches button{width:28px;height:28px}.material-note{margin-top:17px;padding-top:14px}.scene-heading h1{font-size:49px}.inspector-footer{padding:12px 20px;gap:10px}.footer{height:32px;flex-basis:32px}}@media(max-width:1100px){.brand-sub{display:none}.header-nav{margin:0}.header{padding:0 24px}.inspector{width:290px}.inspector-heading,.inspector-scroll{padding-left:22px;padding-right:22px}.scene-heading{left:24px;top:29px}.scene-heading h1{font-size:46px}.scene-status{font-size:7px;padding:8px;right:15px;top:24px}.scene-status>span:last-child,.status-divider{display:none}.scene-top-actions{right:15px;top:64px}.view-tabs button{padding:10px;font-size:9px}.walk-button{padding:14px 11px;font-size:9px}.camera-controls{gap:6px}.footer>div{display:none}.tool-rail{width:62px}.rail-button.active:before{left:-10px}}@media(max-width:820px){.app-shell{min-height:520px}.header{height:69px;flex-basis:69px;padding:0 20px}.brand>span:nth-child(2){font-size:31px}.brand-symbol{transform:scale(.88)}.header-nav{gap:22px}.header-nav button{font-size:11px}.header-nav button.active>span{bottom:12px}.header-actions{gap:5px}.save-button{padding:11px 13px;font-size:10px}.tool-rail{width:57px;padding-top:20px}.rail-button{width:37px;height:37px}.rail-top,.rail-bottom{gap:13px}.rail-button.active:before{left:-10px}.inspector{position:absolute;right:0;top:69px;bottom:32px;width:310px;box-shadow:-12px 0 30px #383b2412;transform:translate(100%);transition:transform .28s;z-index:8}.inspector.mobile-open{transform:translate(0)}.inspector-heading{padding-top:22px}.inspector-heading>.icon-button{display:flex}.inspector-heading h2{font-size:27px}.scene-heading{top:27px}.scene-heading h1{font-size:52px}.scene-status{right:20px;top:25px}.scene-top-actions{right:20px}.scene-heading p{font-size:10px}.scene-bottom{bottom:66px;gap:13px}.mobile-customise{position:absolute;bottom:17px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:9px;background:#586748;color:#fff;padding:12px 25px;border-radius:4px;font-size:11px;white-space:nowrap;box-shadow:0 4px 14px #343b2422}.scene-vertical-actions{bottom:205px;right:19px}.footer{height:32px;flex-basis:32px;padding:0 20px}.footer-edition{font-size:7px}.walk-pad{bottom:210px}.toast{bottom:90px}.camera-controls .view-tabs button{padding:11px 12px;font-size:10px}.walk-button{font-size:10px;padding:16px 13px}.object-preview{height:143px}}@media(max-width:540px){.header{padding:0 15px;height:65px;flex-basis:65px}.header-nav{display:none}.header-actions{gap:8px}.header-actions>.icon-button{width:28px}.brand{gap:5px}.brand>span:nth-child(2){font-size:29px}.brand-symbol{margin-right:2px}.tool-rail{width:49px}.rail-button.active:before{left:-6px}.rail-button{width:36px;height:36px}.rail-top,.rail-bottom{gap:14px}.rail-sign{width:24px;height:24px;font-size:16px}.scene-heading{left:20px;top:25px}.scene-heading .eyebrow{font-size:7px;letter-spacing:1.1px;gap:6px}.small-line{width:12px}.scene-heading h1{font-size:44px;margin:16px 0 12px}.scene-heading p{font-size:8px}.scene-status{top:24px;right:13px;font-size:6px;padding:7px}.scene-top-actions{top:57px;right:12px;flex-direction:column;gap:0;padding:0}.scene-top-actions .icon-button{width:29px;height:29px}.scene-vertical-actions{right:12px;bottom:207px}.scene-vertical-actions .icon-button{width:28px;height:28px}.scene-bottom{left:9px;right:9px;bottom:70px;gap:11px}.camera-controls{gap:7px;flex-direction:column;width:100%}.view-tabs{padding:3px;width:auto}.camera-controls .view-tabs button{padding:9px 10px;font-size:9px}.walk-button{font-size:9px;padding:10px 15px;background:#f7f6eff5}.navigation-tip{font-size:8px;padding:5px 8px}.navigation-tip svg{width:12px}.scene-hotspot .hotspot-dot{width:21px;height:21px;font-size:15px}.hotspot-label{font-size:8px;padding:5px 7px}.inspector{width:min(310px,calc(100vw - 49px));top:65px}.inspector-heading{padding:21px 20px 17px}.inspector-heading h2{font-size:26px}.inspector-scroll{padding:18px 20px}.footer{padding:0 13px}.footer>span:first-child{font-size:6px;letter-spacing:.7px}.footer>span:first-child i{font-size:10px}.footer-edition{font-size:6px}.modal{padding:32px 24px}.modal h2{font-size:33px}.help-grid{gap:18px}.credits-list a{flex-direction:column;gap:7px}.saved-list>div{gap:9px}.saved-list .palette-dots i{width:13px}.modal-actions{flex-direction:column-reverse;align-items:stretch}.modal-actions .outline-button{width:100%}.comparison-badge{top:auto;bottom:234px}.toast{font-size:11px;width:max-content;padding:13px 16px}.walk-pad{left:15px;bottom:240px}.scene-error{inset:27% 6%;padding:20px;font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.scene-heading{z-index:3}html,body,#root{width:100%;height:100%;overflow:hidden}.app-shell{position:relative;width:100%}.workspace{position:relative;overflow:hidden}@media(max-width:820px){.inspector{top:0;bottom:0}}.render-status{position:absolute;right:24px;top:123px;background:#f6f5eedf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:9px 12px;border:1px solid #fff8;border-radius:4px;display:flex;align-items:center;gap:8px;font-size:9px;color:#687658;z-index:3}.geometry-note{margin:15px 0 10px;padding:14px;background:#eeefe5;border-radius:4px}.geometry-note span{font-size:8px;letter-spacing:1px;color:#82916d}.geometry-note strong{display:block;font-size:10px;font-weight:400;margin-top:6px;color:#798767}.scene-heading .eyebrow{background:#f7f6f0ed;border:1px solid #ffffff80;padding:4px 9px;border-radius:3px}.scene-heading .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:540px){.render-status{right:12px;top:134px;max-width:160px;font-size:8px}}
