:root{font-family:Arial,Helvetica,sans-serif;color:#23302c;background:#f4f5f2;font-synthesis:none;--orange:#ff7c3d;--sage:#839986;--ink:#20312d;--line:#dce1d9}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ff7c3d;outline-offset:3px}header{height:84px;padding:0 36px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:48px}.wordmark{font-size:29px;letter-spacing:-1.4px;font-weight:800;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:0}.wordmark span{color:#e86730}.wordmark small{font-size:12px;letter-spacing:2px;margin-left:24px;padding-left:24px;border-left:1px solid var(--line);font-weight:500}.project-name{font-size:14px;color:#63716a;flex:1}.quiet{background:none;border:none;font-size:14px;color:#344f40}.workspace{min-width:0;padding:34px 34px 26px}main{display:grid;grid-template-columns:minmax(0,1fr) 360px;max-width:1920px;margin:auto}.stage-head{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.8px;margin:0 0 11px;color:#6c7c71}h1{font-size:30px;letter-spacing:-1px;margin:0;font-weight:500}h2{font-size:23px;letter-spacing:-.6px;font-weight:500;margin:0}.badge{padding:8px 12px;border:1px solid #cbd6c8;border-radius:30px;font-size:12px;letter-spacing:.5px}.render-label{position:absolute;bottom:13px;left:16px;font-size:12px;color:#687a6c;background:#f4f5f2aa;padding:6px;border-radius:4px;pointer-events:none}#viewport{position:relative;height:510px;margin-top:18px;background:#edf0e9;border-radius:9px;overflow:hidden}#viewport canvas{width:100%;height:100%;display:block;touch-action:none}#loading{position:absolute;inset:0;display:grid;place-items:center;background:#edf0e9;z-index:3}.dimensions{position:absolute;top:16px;left:16px;display:flex;gap:8px;pointer-events:none}.dimensions span{background:#fffdf7eb;padding:9px 12px;font-size:13px;border:1px solid #d7ded1;border-radius:5px}.view-controls{display:flex;justify-content:space-between;margin:16px 0 7px;gap:12px}.view-controls>div{display:flex;gap:4px;flex-wrap:wrap}.view-controls button{background:transparent;color:#4f6157;border:1px solid transparent;padding:9px 11px;border-radius:5px;font-size:13px}.view-controls button.active,.view-controls button:hover{background:#fff;border-color:#ced7cb;color:#24332a}.gesture{font-size:12px;color:#899387;text-align:center;margin:8px}.lower{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;margin-top:28px;border-top:1px solid var(--line);padding-top:25px}.photo-strip{display:flex;gap:8px}.photo-strip button{border:1px solid var(--line);border-radius:6px;padding:0;background:white;overflow:hidden;width:92px;height:76px}.photo-strip img{width:100%;height:100%;object-fit:contain}.text-button{border:0;background:none;padding:12px 0;font-size:14px;color:#536c57}.summary{font-size:14px}.summary p{margin:6px 0;line-height:1.5}.primary{background:var(--ink);color:white;border:0;border-radius:5px;padding:12px 18px;font-size:14px;margin-top:12px}.primary:hover{background:#385944}aside{border-left:1px solid var(--line);background:#fff;padding:30px 26px;max-height:calc(100vh - 84px);overflow:auto;position:sticky;top:0}.aside-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.aside-title span{font-size:10px;color:#879383;letter-spacing:1px}form section{border-top:1px solid var(--line);padding:22px 0}label{font-size:14px;font-weight:600;display:block;margin-bottom:10px}label span{font-size:11px;color:#829080;font-weight:400;float:right;margin-top:2px}.field{margin-top:18px}.field label{font-size:13px;margin-bottom:8px}select{width:100%;padding:11px 9px;background:#fafbf8;border:1px solid #dce2d7;color:var(--ink);border-radius:4px;font-size:14px}select:disabled{opacity:.5}.segmented{display:flex;background:#f0f3ed;padding:4px;border-radius:6px;gap:3px}.segmented button{flex:1;border:0;padding:10px 4px;background:transparent;color:#748072;font-size:13px;border-radius:4px}.segmented button.active{color:#243c2b;background:white;box-shadow:0 1px 4px #20312d19}.section-label{display:flex;justify-content:space-between}.section-label span{font-size:12px;color:#6b7d65}.finishes{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.finish{height:40px;border:3px solid #fff;border-radius:4px;outline:1px solid #d8ded4;background-size:cover;background-position:center}.finish.active{outline:2px solid #ff7c3d;outline-offset:2px}.small{font-size:12px;line-height:1.6;color:#7a8477;margin:9px 0 0}.fit-note{font-size:12px;color:#96613b;line-height:1.5;margin-bottom:0}.fit-note:empty{display:none}details{border-top:1px solid var(--line);padding-top:18px}summary{font-size:13px;cursor:pointer}dialog{border:0;border-radius:12px;max-width:1120px;width:90vw;max-height:90vh;padding:32px;color:var(--ink);box-shadow:0 20px 100px #001a1044}dialog::backdrop{background:#12251bd0;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:16px}.dialog-head button{border:0;background:#eef1eb;border-radius:50%;font-size:27px;width:38px;height:38px;flex-shrink:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.gallery figure{margin:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}.gallery img{width:100%;height:180px;object-fit:contain;background:white;display:block}.gallery figcaption{padding:13px;font-size:13px;line-height:1.6;background:#f7f9f5}.gallery a,#sourcesContent a{color:#47705c}.tag{font-size:10px;background:#e6ecdf;border-radius:3px;padding:3px 6px;display:inline-block;margin-top:6px}#sourcesContent{font-size:15px;line-height:1.7}#sourcesContent table{width:100%;border-collapse:collapse;font-size:13px;margin:16px 0}th,td{padding:9px;text-align:left;border-bottom:1px solid var(--line)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:#223b2c;color:#fff;padding:14px 20px;border-radius:5px;font-size:14px;transition:transform .25s;z-index:5}#toast.show{transform:translateX(-50%) translateY(0)}@media(min-width:1600px){#viewport{height:630px}}@media(max-width:1080px){header{padding:0 24px;gap:16px}.project-name{display:none}.quiet{margin-left:auto}.workspace{padding:25px 20px}main{grid-template-columns:minmax(0,1fr) 320px}aside{padding:26px 20px}#viewport{height:450px}.lower{grid-template-columns:1fr}.view-controls{flex-wrap:wrap}}@media(max-width:760px){header{height:70px;padding:0 16px}.wordmark{font-size:23px}.wordmark small{font-size:10px;padding-left:12px;margin-left:12px;letter-spacing:1px}.quiet{font-size:12px}main{display:flex;flex-direction:column}.workspace{padding:23px 16px 24px}h1{font-size:25px}.badge{font-size:10px}.eyebrow{font-size:10px}#viewport{height:380px}.dimensions span{font-size:11px;padding:7px 8px}.render-label{font-size:10px}.lower{grid-template-columns:1fr 1fr;gap:16px}.photo-strip button{width:65px;height:62px}.photo-strip button:nth-child(n+4){display:none}aside{position:static;max-height:none;border-top:1px solid var(--line);border-left:0;padding:28px 24px}form{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}form details{grid-column:1/-1}.gallery{grid-template-columns:1fr 1fr}dialog{padding:22px}.gallery img{height:150px}}@media(max-width:480px){#viewport{height:320px}.lower{grid-template-columns:1fr}.photo-strip button{width:80px}form{display:block}.gallery{grid-template-columns:1fr}.quiet{max-width:92px}.view-controls button{font-size:12px;padding:8px}.dimensions{gap:5px;left:9px;top:9px}.gesture{font-size:10px}}

.build-photo{display:block;width:100%;border:1px solid #b8c8bc;background:#fff;color:var(--ink);font-size:14px;padding:10px 12px;border-radius:4px;margin-top:12px;text-align:left}.build-photo:hover{background:#e9f0e8}.photo-note{margin:6px 0;font-size:12px;line-height:1.5;color:#59685d}.tag{font-size:12px}.gallery figcaption{font-size:14px}.field label,.segmented button,.view-controls button{font-size:14px}

.motion-row{display:flex;gap:10px;align-items:center;min-height:30px;font-size:14px;color:#53685b}.motion-meter{width:72px;height:4px;border-radius:4px;background:#dbe2d7;overflow:hidden}.motion-meter i{display:block;width:100%;height:100%;background:var(--orange);transform-origin:left;transform:scaleX(var(--progress,0))}.motion-meter:not(.running) i{background:var(--sage)}#motionToggle{margin-left:auto;border:1px solid #d5ddd1;border-radius:4px;background:transparent;color:#405948;padding:5px 9px;font-size:14px}
#loading{align-content:center;justify-items:center;gap:12px;padding:24px;text-align:center}#loading p{margin:0;max-width:280px}

.gallery-tabs{display:flex;gap:6px;padding:5px;background:#edf2e9;border-radius:6px;margin:18px 0}.gallery-tabs button{flex:1;background:none;border:0;border-radius:4px;padding:11px;font-size:14px;color:#496052}.gallery-tabs button.active{background:white;color:var(--ink);box-shadow:0 1px 4px #20312d18}.photo-filters{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:14px;margin-top:20px}.photo-filters label{font-size:14px}.photo-filters select,.photo-filters input{display:block;margin-top:9px;font:inherit;width:100%;border:1px solid #dce2d7;border-radius:4px;background:#fafbf8;color:var(--ink);padding:11px 9px}.photo-filters input:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.part-image{height:180px;background:white;display:flex;align-items:center;justify-content:center}.image-unavailable{font-size:14px;line-height:1.6;color:#6b7b70;text-align:center;padding:20px}.part-photo-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;font-size:13px}.part-photo-nav button{border:1px solid #ccd8c9;background:white;border-radius:4px;padding:5px 13px;color:#31543d}.part-photo-nav button:disabled{opacity:.35;cursor:default}#partEmpty{font-size:16px;padding:24px;text-align:center;color:#637469}[hidden]{display:none!important}@media(max-width:760px){.photo-filters{grid-template-columns:1fr 1fr}.photo-filters label:last-child{grid-column:1/-1}.part-image{height:150px}}@media(max-width:480px){.photo-filters{grid-template-columns:1fr}.photo-filters label:last-child{grid-column:auto}}
#partGallery .photo-note{overflow-wrap:anywhere}#partGallery details{margin-top:12px;padding-top:10px}#partGallery summary{font-size:14px}

.playground{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.destruction-controls{display:flex;gap:7px;flex-wrap:wrap}.destruction-controls button{font-size:14px;min-height:42px;padding:9px 13px;border:1px solid #c9d3c6;border-radius:5px;background:#fff;color:var(--ink)}#destroyExplosion{background:#ff7c3d;color:#342115;border-color:#df652b}#destroyCollapse{background:#263c34;color:#fff;border-color:#263c34}.destruction-controls button:hover{filter:brightness(.95)}.destruction-controls button:disabled{opacity:.45;cursor:default}#destructionHint{font-size:13px;color:#637469;margin:0}.graphics-controls{display:flex;align-items:center;gap:9px;margin-left:auto}.graphics-controls label{font-size:14px;margin:0}.graphics-controls select{width:85px;padding:9px;font-size:14px;min-height:42px}#graphicsActive{font-size:13px;color:#637469;white-space:nowrap}@media(max-width:760px){.graphics-controls{margin-left:0}.playground{gap:12px}.destruction-controls{width:100%}#destructionHint{width:100%}.motion-row{flex-wrap:wrap}#motionStatus{max-width:50%}}

.render-quality{position:absolute;top:48px;left:20px;font-size:12px;color:#45514e;background:#ffffffcf;padding:5px 9px;border-radius:5px;pointer-events:none}.drawer-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0 0}.drawer-controls button{font:inherit;font-size:14px;background:#fff;border:1px solid #c7cfca;border-radius:6px;padding:8px 12px;cursor:pointer}.drawer-controls span{font-size:13px;color:#596560}

.room-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 0;border-top:1px solid var(--line);margin-top:12px}.room-toolbar select{width:156px;min-height:40px}.room-toolbar button,.room-options button:not(.text-button):not(.primary){background:#fff;border:1px solid #c9d4cb;border-radius:5px;color:var(--ink);padding:10px 12px;font:inherit;font-size:13px;min-height:40px}.check-label{display:flex;align-items:center;gap:8px;font-size:14px;margin:0}.check-label input{width:17px;height:17px;accent-color:var(--ink)}#roomSizeLabel{font-size:12px;color:#61756b}.room-options{margin-top:26px}.room-options>summary{font-size:16px;font-weight:600;padding-bottom:8px}.room-options fieldset{border:0;padding:0;margin:0;min-width:0}.room-options fieldset:disabled{opacity:.45}.room-options section{padding:20px 0;border-top:1px solid var(--line);margin-top:18px}.room-options form{display:block}.room-size{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.room-size label{font-size:12px;font-weight:500}.room-size input{display:block;width:100%;min-width:0;padding:10px 7px;border:1px solid #d4ddd5;border-radius:4px;background:#fafbf8;font:inherit;font-size:15px;margin-top:7px;color:var(--ink)}.room-size input:focus-visible,.room-color input:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.room-color{display:flex;gap:8px;align-items:center}.room-color select{flex:1;min-width:0}.room-color input[type=color]{flex:none;width:42px;height:42px;padding:3px;border:1px solid #d4ddd5;border-radius:4px;background:#fff}.room-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.room-status{font-size:13px;color:#147399;min-height:18px}.room-options .check-label{margin-top:16px;font-size:13px;line-height:1.5}.slat-dimensions{margin-top:15px}.slat-size{grid-template-columns:repeat(2,minmax(0,1fr))}.room-menu{position:absolute;z-index:5;width:260px;max-width:calc(100% - 16px);background:#fff;border:1px solid #cdd9d0;border-radius:8px;box-shadow:0 8px 36px #182d2b30;padding:7px}.room-menu span{display:block;color:#728277;font-size:12px;padding:7px 10px}.room-menu button{display:block;width:100%;border:0;background:none;text-align:left;padding:11px 10px;color:var(--ink);font:inherit;font-size:13px;border-radius:4px}.room-menu button:hover,.room-menu button:focus-visible{background:#edf4f0}.drawing-wall{cursor:crosshair}.room-options button:disabled,.room-toolbar button:disabled{opacity:.5;cursor:default}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.room-options{margin-top:30px}.room-toolbar{gap:8px}.room-toolbar select{flex:1;max-width:170px}.room-options section{max-width:600px}.room-options .room-size{max-width:600px}}

.room-options button:not(.text-button):not(.primary),.room-options .check-label,.room-size label,.room-menu button{font-size:14px}

.loading-indicator{width:126px;height:4px;overflow:hidden;border-radius:4px;background:#d5dfd7;transform:translateZ(0)}.loading-indicator span{display:block;width:42%;height:100%;border-radius:4px;background:#ff7c3d;animation:desk-loading 1.25s ease-in-out infinite;will-change:transform}@keyframes desk-loading{0%{transform:translateX(-110%)}100%{transform:translateX(350%)}}.loading-elapsed{font-size:13px;color:#63756a}#loadingStage{font-size:16px;color:#20312d}#loadingNote{font-size:14px;line-height:1.5}.loading-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.loading-actions button,.loading-details button{border:1px solid #becfc2;background:#fff;color:#20312d;border-radius:5px;padding:9px 12px;font:inherit;font-size:14px}.loading-details{max-width:calc(100% - 16px);width:340px;border:0;padding-top:2px;text-align:left}.loading-details summary{font-size:13px;color:#617469;text-align:center}.loading-details pre{max-height:120px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.4;background:#fff;padding:10px;border-radius:5px}.loading-details button{display:block;margin:8px auto 0}#loading{overflow:auto}.loading-failed #loadingStage{color:#87412d}@media(prefers-reduced-motion:reduce){.loading-indicator span{animation:none;transform:translateX(70%)}}

.placement-tools{padding:14px 16px;background:#eef4f1;border:1px solid #cbdad2;border-radius:7px;margin:0 0 12px}.placement-tools[hidden]{display:none}.placement-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px}.placement-actions button{min-height:42px;padding:9px 12px;border:1px solid #bccfc4;border-radius:5px;background:white;color:var(--ink);font:inherit;font-size:14px}.placement-actions button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.placement-actions button:disabled{opacity:.45;cursor:default}.placement-actions span{font-size:13px}.placement-tools p{margin:4px 0 0}.placing-desk{cursor:grab;touch-action:none}.placing-desk.dragging-desk{cursor:grabbing}.placement-actions button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}

/* Private-office catalog controls. Product photos retain their full frame. */
.fabric-colors{display:flex;gap:10px;margin:12px 0}.fabric-swatch{width:44px;height:44px;border-radius:50%;border:3px solid transparent;box-shadow:0 0 0 1px #c8cfca}.fabric-swatch[aria-pressed="true"]{border-color:#fff;box-shadow:0 0 0 2px #ec6b32}.product-sources{padding-left:18px;font-size:11px;line-height:1.6}.product-sources a{color:#526f63}.furniture-preview{margin:14px 0 8px;background:#fff;border:1px solid #e0e4df;border-radius:9px;overflow:hidden}.furniture-preview img{display:block;object-fit:contain;width:100%;height:180px}.furniture-preview figcaption{font-size:10px;color:#778179;padding:4px 12px 10px}.room-options summary span{font-size:10px;font-weight:400;color:#6f7d73;margin-left:8px}.room-options>select{width:100%}.room-options .primary{width:100%}#fabricControls label{display:flex;justify-content:space-between}#fabricName{font-weight:400}#accessoryOptions>.field{margin-top:14px}#accessoryFields .field{margin-top:14px}#furnitureOptions .text-button{display:inline-block}#windowHint{min-height:2em}

.expand-viewer{position:absolute;right:14px;top:14px;z-index:4;border:1px solid #becbc2;background:#ffffffcf;border-radius:6px;padding:10px 13px;font-size:14px;color:#20312d}.presentation{overflow:hidden}.presentation header{display:none}.presentation main{display:block;max-width:none}.presentation .workspace{padding:0}.presentation #viewport{position:fixed;inset:0;width:100vw;height:100dvh;margin:0;border-radius:0}.presentation aside{position:fixed;right:16px;top:66px;bottom:18px;width:300px;max-height:none;z-index:5;border:1px solid #ffffffb3;border-radius:12px;background:#f7faf3bf;backdrop-filter:blur(14px);padding:18px;box-shadow:0 6px 28px #102b1a12}.presentation .aside-title{margin-bottom:16px}.presentation aside h2{font-size:19px}.presentation form section{padding:14px 0}.presentation .field{margin-top:12px}.presentation select{padding:8px;font-size:14px;background:#ffffffb3}.presentation .room-options{margin-top:18px;padding-top:14px}.presentation .workspace>:not(#viewport):not(.viewer-tools){display:none}.presentation .view-controls{position:fixed;left:18px;right:332px;bottom:18px;z-index:5;margin:0;padding:8px;border:1px solid #ffffffb3;background:#f7faf3b8;backdrop-filter:blur(12px);border-radius:10px}.presentation .room-toolbar{position:fixed;left:18px;top:18px;z-index:5;background:#f7faf3b8;backdrop-filter:blur(12px);border-radius:9px;padding:10px;max-width:calc(100vw - 540px)}.presentation #placementTools{position:fixed;left:18px;bottom:86px;max-width:calc(100vw - 350px);z-index:5;background:#f7faf3bd;backdrop-filter:blur(12px);border-radius:10px;padding:12px}.presentation .expand-viewer{right:18px;top:18px}.presentation .render-label{bottom:76px}.presentation .dimensions{top:82px}.presentation .graphics-controls{display:none}@media(max-width:980px){.expand-viewer{display:none}}

.height-controls{position:absolute;left:50%;bottom:50px;transform:translateX(-50%);z-index:8;display:flex;align-items:center;gap:5px;padding:8px;background:#f5f7efed;border:1px solid #c3cabc;border-radius:12px;box-shadow:0 4px 20px #0002}.height-controls[hidden]{display:none}.height-controls button{min-width:40px;min-height:40px}.height-controls button[aria-pressed=true]{background:#294e44;color:white}

.wonder-controls{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:12px 0}.wonder-controls button{font-size:12px;background:transparent;color:#59645b;border:1px solid #c9cfc6;padding:7px 12px;border-radius:20px}.wonder-controls span{flex-basis:100%}@media(pointer:coarse){#badLuck{display:none}}

.snapshot-dock{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:14px 0}.snapshot-dock button{min-height:40px}.snapshot-dock span.small{flex-basis:100%}.customer-dialog{max-width:540px}.customer-dialog input:not([type=checkbox]),#staffEmail{width:100%;padding:12px;border:1px solid #b8c1b5;border-radius:6px;background:#fff;margin:7px 0 14px}.customer-dialog .check-label{align-items:flex-start;margin:14px 0;line-height:1.5}.customer-dialog .check-label input{margin-top:5px;flex-shrink:0}.customer-dialog form>button{margin:8px 4px 0 0}.snapshot-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}.snapshot-list figure{margin:0}.snapshot-list img{width:100%;height:auto;border-radius:8px}.budget-scroll{overflow:auto}#budgetDialog table{width:100%;border-collapse:collapse;font-size:12px}#budgetDialog th,#budgetDialog td{padding:12px 8px;text-align:left;border-bottom:1px solid #d1d8ce}#leadList article{padding:16px 0;border-bottom:1px solid #c5cfc2}#leadList button{margin:5px 8px 5px 0}#budgetTotal{font-weight:700;font-size:22px}.staff-signin{font-size:12px}@media(min-width:981px){body.presentation .snapshot-dock{position:fixed;left:18px;bottom:150px;z-index:5;max-width:350px;padding:8px;background:#f7faf3c9;border-radius:10px;backdrop-filter:blur(12px)}body.presentation .snapshot-dock span.small{display:none}}@media(max-width:600px){.staff-signin{display:none}}

@media(min-width:981px){.presentation .wonder-controls{position:fixed;left:18px;bottom:216px;z-index:5;max-width:350px;margin:0;padding:7px;background:#f7faf3ba;backdrop-filter:blur(12px);border-radius:10px}.presentation .wonder-controls span:empty{display:none}}

/* Fullscreen controls share one flow so growing menus cannot overlap. */
@media(min-width:981px){
 .presentation .workspace{position:fixed;left:18px;right:334px;bottom:18px;z-index:2;display:flex;flex-direction:column;gap:8px;max-height:calc(100dvh - 150px);overflow-y:auto;padding:0;pointer-events:none;scrollbar-width:thin}
 .presentation #viewport{z-index:0;pointer-events:auto}
 .presentation .workspace>.view-controls,.presentation .workspace>.room-toolbar,.presentation .workspace>#placementTools,.presentation .workspace>.snapshot-dock,.presentation .workspace>.wonder-controls{position:relative;inset:auto;z-index:1;width:100%;max-width:none;flex:none;margin:0;padding:9px 12px;pointer-events:auto;background:#f7faf3e8;border:1px solid #ffffffb3;border-radius:10px;backdrop-filter:blur(12px)}
 .presentation .workspace>#placementTools{padding:12px}
 .presentation .workspace>.view-controls{order:3;flex-wrap:wrap}
 .presentation .workspace>.room-toolbar{order:1}
 .presentation .workspace>#placementTools{order:2}
 .presentation .workspace>.wonder-controls{order:4}
 .presentation .workspace>.snapshot-dock{order:5}
 .presentation .workspace>.snapshot-dock span.small{display:none}
 .presentation .render-label{bottom:12px}
 .presentation .dimensions{top:18px}
 .presentation aside{top:66px;bottom:18px}
}

.move-scene{position:absolute;left:14px;bottom:14px;z-index:4;min-height:44px;padding:10px 15px;border:1px solid #cf6734;border-radius:7px;background:#ff7c3d;color:#292d23;font-size:14px;font-weight:600;box-shadow:0 2px 10px #0002}
.move-scene[aria-pressed=true]{background:#20312d;color:#fff;border-color:#20312d}
.placement-selection{display:flex;gap:10px;align-items:center;margin-bottom:10px}.placement-selection label{font-size:14px;flex:none}.placement-selection select{flex:1;min-width:0;max-width:440px;margin:0;padding:10px;font-size:14px;background:#fff}
.placement-nudge button{min-width:44px}.placement-tools .placement-actions{margin-bottom:8px}.placement-tools .small{font-size:13px;line-height:1.5}.render-label{left:auto;right:10px;max-width:calc(100% - 180px);text-align:right}
@media(min-width:981px){.presentation .move-scene{left:18px;top:70px;bottom:auto}.presentation .workspace>#placementTools{position:sticky;top:0;z-index:2}.presentation .workspace:has(#placementTools:not([hidden]))>.wonder-controls,.presentation .workspace:has(#placementTools:not([hidden]))>.snapshot-dock{display:none}}
@media(max-width:600px){.placement-selection{display:block}.placement-selection label{display:block;margin-bottom:6px}.placement-selection select{width:100%;max-width:none}.move-scene{left:9px;bottom:9px;padding:10px 12px}.placement-tools{padding:12px}.placement-actions button{min-height:44px}.placement-tools #placementDoor .small{flex-basis:100%}}
@media(min-width:981px){
 .presentation .workspace>#placementTools{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
 .presentation #placementTools .placement-selection{flex-basis:100%;margin:0}
 .presentation #placementTools .placement-actions{margin:0}
 .presentation #placementHint{flex-basis:100%;margin:0}
 .presentation #placementDoor{padding-left:12px;border-left:1px solid #cbdad2}
 .presentation #placementDoor .small{display:none}
}
@media(min-width:981px){.presentation #viewport{z-index:auto}.presentation .height-controls{left:180px;top:70px;bottom:auto;transform:none;flex-wrap:wrap;max-width:calc(100vw - 530px)}}

/* Desktop viewer tools sit in a compact left rail; mobile stays stacked. */
@media(min-width:981px){
 .workspace{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;padding:26px 24px;align-content:start}
 .workspace>.stage-head{grid-column:1/-1}
 .workspace>#viewport{grid-column:2;grid-row:2;margin:0;height:clamp(540px,calc(100dvh - 200px),820px)}
 .workspace>.viewer-tools{grid-column:1;grid-row:2;min-width:0;max-height:clamp(540px,calc(100dvh - 200px),820px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:12px;background:#ffffffc9;border:1px solid var(--line);border-radius:10px}
 .workspace>.lower{grid-column:1/-1;margin-top:0}
 .viewer-tools>div{margin:0;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;max-width:none}
 .viewer-tools .view-controls{display:block;padding-top:0}
 .viewer-tools .view-controls>div,.viewer-tools .destruction-controls,.viewer-tools .snapshot-dock{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .viewer-tools .view-controls>div+div{margin-top:6px}
 .viewer-tools button{font-size:14px;line-height:1.25;min-height:36px;padding:7px 6px;overflow-wrap:anywhere}
 .viewer-tools .view-controls button,.viewer-tools .snapshot-dock button{border:1px solid #c9d4cb;border-radius:5px;background:#ffffffb3;color:var(--ink)}
 .viewer-tools .view-controls button.active{background:#e2ebe2;border-color:#829986}
 .viewer-tools .room-toolbar{display:grid;gap:7px}
 .viewer-tools .room-toolbar select,.viewer-tools .room-toolbar button{width:100%;min-height:36px}
 .viewer-tools .motion-row{flex-wrap:wrap;gap:6px;font-size:12px}
 .viewer-tools #motionToggle{margin-left:0}
 .viewer-tools .motion-meter{width:38px}
 .viewer-tools #motionStatus{flex:1;min-width:72px}
 .viewer-tools .playground{display:block}
 .viewer-tools #destructionHint{display:none}
 .viewer-tools .graphics-controls{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
 .viewer-tools .graphics-controls select{flex:1;min-height:36px;padding:6px}
 .viewer-tools #graphicsActive{white-space:normal}
 .viewer-tools .wonder-controls{gap:5px}
 .viewer-tools .wonder-controls button{flex:1;border-radius:5px}
 .viewer-tools .drawer-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px}
 .viewer-tools .drawer-controls span,.viewer-tools .snapshot-dock span.small{grid-column:1/-1;font-size:12px;line-height:1.4}
 .viewer-tools .gesture{line-height:1.5;text-align:left;margin:9px 0}
 .viewer-tools .snapshot-dock #export{grid-column:1/-1;margin:2px 0 0;background:var(--ink);color:#fff;padding:10px 8px}
 .viewer-tools .placement-selection{display:block}
 .viewer-tools .placement-selection select{max-width:none;width:100%;font-size:14px}
 .viewer-tools .placement-actions{display:flex;flex-wrap:wrap;gap:5px}
 .viewer-tools .placement-nudge button{min-width:34px}
 .viewer-tools #placementHint{font-size:12px}
 .viewer-tools #placementTools[hidden]{display:none}
 body.presentation .workspace{position:static;inset:auto;display:block;max-height:none;overflow:visible;gap:0;padding:0;pointer-events:none}
 body.presentation .workspace>#viewport{height:100dvh;max-height:none}
 body.presentation .workspace>.viewer-tools{display:block;position:fixed;left:18px;top:18px;bottom:18px;width:220px;max-height:none;z-index:5;pointer-events:auto;background:#f7faf3dc;border-color:#ffffffb3;backdrop-filter:blur(12px);box-shadow:0 6px 28px #102b1a12}
 body.presentation .viewer-tools>div{position:static;inset:auto;width:auto;max-width:none;margin:0;padding:10px 0;background:transparent;backdrop-filter:none;border:0;border-bottom:1px solid var(--line);border-radius:0}
 body.presentation .viewer-tools>.view-controls{padding-top:0}
 body.presentation .viewer-tools .snapshot-dock span.small{display:block}
 body.presentation .viewer-tools .graphics-controls{display:flex}
 body.presentation .viewer-tools #placementDoor{border:0;padding:0}
 body.presentation .dimensions{left:254px;top:18px}
 body.presentation .render-quality{left:254px;top:55px}
 body.presentation .move-scene{left:254px;top:90px;bottom:auto}
 body.presentation .height-controls{left:254px;top:146px;bottom:auto;max-width:220px;transform:none}
}

@media(min-width:981px){
 body:not(.open-office) .workspace>.viewer-tools{box-sizing:border-box;height:var(--control-rail-available,calc(100dvh - 160px));max-height:var(--control-rail-available,calc(100dvh - 160px));padding-bottom:clamp(140px,22dvh,220px);scroll-padding-bottom:24px}
}

.viewer-effects{border:0;padding:0}
.viewer-effects>summary{display:none}
@media(min-width:981px){
 .viewer-tools .viewer-effects{padding:10px 0;border-bottom:1px solid var(--line)}
 .viewer-tools .viewer-effects>summary{display:list-item;font-size:14px;font-weight:600;line-height:1.5}
 .viewer-tools .viewer-effects>div{margin:0;padding:10px 0;border:0;max-width:none}
 body.presentation .viewer-tools .wonder-controls{position:static;inset:auto;width:auto;max-width:none;padding:10px 0;margin:0;border:0;border-radius:0;background:transparent;backdrop-filter:none}
}

@media(min-width:981px){
 .workspace>.viewer-tools{align-self:start}
 body.presentation .workspace>.viewer-tools{bottom:auto;max-height:calc(100dvh - 36px)}
}

.style-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.style-fields label{min-width:0}.style-palette{display:flex;gap:5px;margin:14px 0 8px}.style-palette span{height:24px;flex:1;border-radius:5px;border:1px solid #0002}.style-finish-controls{margin:12px 0}.style-finish-controls summary{font-size:12px;font-weight:650;cursor:pointer}.style-plan-summary{font-size:12px;line-height:1.6;padding:10px 0}.style-plan-summary p{margin:5px 0}.render-dialog{width:min(920px,94vw)}.render-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:12px;line-height:1.6;max-height:390px;overflow:auto;padding:16px;background:#f1f4f1;border-radius:8px}.render-dialog img{width:100%;max-height:400px;object-fit:contain;background:#eaece8;border-radius:10px}.render-dialog details{margin:14px 0}.render-dialog summary{cursor:pointer;font-weight:650}.render-dialog .room-buttons{flex-wrap:wrap}.open-office #renderOptions{display:none}@media(max-width:520px){.style-fields{grid-template-columns:1fr}.render-dialog pre{font-size:11px}}

.render-image-actions{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0 20px}.render-image-actions a{font-size:14px;font-weight:650;text-underline-offset:3px}.render-dialog #renderPreview{max-height:540px;height:auto}

.render-generator{border:1px solid #a6bcbd;background:#f5fafa;padding:1.2rem;border-radius:12px;margin:1rem 0}.render-generator h3{font-size:1.1rem;margin:.5rem 0 1rem}.render-generator label{font-size:1rem;display:block;margin:.7rem 0}.render-generator input[type=range]{display:block;width:100%;accent-color:#216a59;margin:1rem 0 .4rem}.render-mode-labels{display:flex;justify-content:space-between;gap:.7rem;font-size:.875rem}.render-mode-labels span:nth-child(2){font-weight:700;text-align:center}.render-mode-labels span:last-child{text-align:right}.render-generator p{font-size:1rem;line-height:1.5}.render-generator .small{font-size:.875rem}#renderedImage{width:100%;height:auto;border-radius:8px;display:block}#imageRenderHistory p{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}#imageRenderHistory button{white-space:normal;text-align:left}#renderRevisionForm select{width:100%;font-size:1rem}.render-generator a{color:#185c4c;text-decoration:underline}.render-generator button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:520px){.render-generator{padding:.8rem}.render-mode-labels{font-size:.875rem}}

.render-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.render-compare figure{margin:0}.render-compare img{width:100%;height:auto;border-radius:8px}.render-compare figcaption{font-size:.875rem;margin:.4rem 0}@media(max-width:650px){.render-compare{grid-template-columns:1fr}}

/* The surrounding studio is separate from the customer's room finishes. */
.vignette-setting{border:1px solid #a7bdce;border-left:4px solid #77a1bc;border-radius:8px;background:#f2f8fb;margin:12px 0;padding:12px}.vignette-setting>summary{font-size:1rem;font-weight:600;cursor:pointer}.vignette-setting label{font-size:.875rem;margin:14px 0 7px}.vignette-setting select{min-height:42px;font-size:.875rem}.vignette-setting p{font-size:.875rem;line-height:1.5;color:#4c6271;margin:10px 0 0}.setting-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.setting-actions button{min-height:42px;padding:9px 11px;border:1px solid #8eafc4;border-radius:5px;background:white;color:#20312d;font-size:.875rem}.setting-actions button[aria-pressed=true]{background:#20312d;color:white}.open-office .vignette-setting{display:none}

.miniature-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem;margin-top:.5rem;border:1px solid #ddc7b6;border-radius:.6rem;background:#fff8f2}.miniature-controls[hidden]{display:none}.miniature-controls button{min-height:40px}.miniature-controls .small{flex-basis:100%}

/* The product title stays readable alongside the Offisavvy attribution. */
header{gap:24px}.wordmark{flex-shrink:0}.wordmark .brand-lockup{display:grid;gap:4px;line-height:1;color:var(--ink);letter-spacing:-1.1px}.wordmark .brand-lockup strong{font:inherit}.wordmark .brand-descriptor{font-size:11px;line-height:1.25;font-weight:500;letter-spacing:.45px;color:#63716a}.wordmark small{margin-left:18px;padding-left:18px;white-space:nowrap}
@media(max-width:1100px){header{height:auto;min-height:84px;padding-top:12px;padding-bottom:12px;gap:12px 20px;flex-wrap:wrap}.wordmark{margin-right:auto}.wordmark small{margin-left:12px;padding-left:12px}.project-name{display:none}}
@media(max-width:600px){header{min-height:76px;gap:8px 14px}.wordmark{font-size:25px;flex-basis:100%}.wordmark .brand-descriptor{font-size:10px}.wordmark small{font-size:10px}.quiet{max-width:none;margin-left:0}.registration-button{font-size:12px}}

/* Rendering refinement stays silent; it is not a design control. */
#renderQuality{display:none!important}
