.realistic-visit{color:#213b43;background:#e7e7df}.realistic-visit>.visit-render{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.realistic-visit .visit-header{box-shadow:none;z-index:4;background:#fafbf8;border:1px solid #d7dfdf;border-radius:12px;margin:0;padding:14px 18px;top:18px;left:22px;right:22px}.visit-header>div{flex-direction:column;gap:4px;min-width:0;display:flex}.visit-header strong{overflow-wrap:anywhere;font-size:15px;font-weight:600;line-height:1.4}.visit-header>div>span{color:#53656b;font-size:12px}.realistic-visit .visit-exit{white-space:nowrap;background:#fff;border:1px solid #b4c4c8;min-height:44px;font-size:13px}.visit-tools{z-index:3;flex-wrap:wrap;align-items:flex-start;gap:10px;max-width:calc(100% - 44px);font-size:12px;display:flex;position:absolute;top:110px;left:22px}.visit-tools>label,.visit-tools>button,.visit-instructions{color:#213b43;background:#fafbf8;border:1px solid #c9d4d5;border-radius:9px;min-height:44px;margin:0}.visit-tools>label{flex-direction:row;align-items:center;gap:9px;padding:0 12px;font-size:12px;font-weight:400;display:flex}.visit-tools label select{color:#213b43;background:0 0;border:0;border-radius:0;width:auto;min-height:42px;padding:8px 22px 8px 4px;font-size:12px}.visit-tools>button{padding:10px 12px;font-size:12px}.visit-dressing input{accent-color:#007c9e;width:17px;height:17px;margin:0}.visit-instructions{padding:0;position:relative}.visit-instructions summary{min-height:44px;padding:12px 14px;font-size:12px;font-weight:500;line-height:18px;list-style-position:inside;margin:0!important}.visit-instructions p{color:#304e58;background:#fafbf8;border:1px solid #c9d4d5;border-radius:10px;width:280px;max-width:calc(100vw - 44px);margin:0;padding:16px;font-size:13px;line-height:1.7;position:absolute;top:48px;left:0;box-shadow:0 8px 24px #243b431a}.visit-minimap{z-index:2;pointer-events:none;background:#fafbf8;border:1px solid #c9d4d5;border-radius:12px;width:160px;max-height:180px;margin:0;padding:12px;position:absolute;bottom:64px;left:22px}.visit-minimap svg{width:100%;height:120px;display:block}.visit-minimap figcaption{text-align:center;color:#4c666f;padding-top:6px;font-size:11px}.realistic-visit .visit-pad{z-index:3;gap:7px;bottom:76px;right:26px}.realistic-visit .visit-pad>div{gap:7px}.realistic-visit .visit-pad button{color:#264955;touch-action:none;-webkit-user-select:none;user-select:none;background:#fafbf8;border:1px solid #aebfc4;border-radius:10px;place-items:center;width:52px;height:48px;min-height:44px;padding:8px;display:grid}.realistic-visit .visit-pad button:active{background:#d7eaf0;border-color:#3f8aa0}.visit-disclaimer{bottom:max(14px,env(safe-area-inset-bottom));color:#52656a;text-align:center;z-index:2;pointer-events:none;background:#fafbf8;border:1px solid #d2dada;border-radius:8px;margin:0;padding:9px 12px;font-size:11px;line-height:1.5;position:absolute;left:22px;right:22px}.visit-loading{z-index:3;color:#29444c;background:#e7e7df;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.visit-loading strong{font-size:18px;font-weight:600}.visit-loading span{color:#52656a;font-size:13px}.visit-fallback-notice{z-index:3;color:#3d5866;pointer-events:none;background:#f8fafb;border:1px solid #c8d7dd;border-radius:10px;max-width:480px;margin:0;padding:12px 16px;font-size:12px;line-height:1.6;position:absolute;top:170px;left:22px}@media (width<=700px){.realistic-visit .visit-header{top:max(10px,env(safe-area-inset-top));align-items:center;gap:12px;padding:11px 12px;left:10px;right:10px}.visit-header strong{max-width:28ch;font-size:13px}.visit-header>div>span{font-size:11px}.realistic-visit .visit-exit{padding:9px 10px;font-size:11px}.visit-tools{gap:7px;max-width:calc(100% - 20px);top:112px;left:10px}.visit-tools>label{padding:0 9px;font-size:11px}.visit-tools label select{max-width:100px;font-size:16px}.visit-tools>button,.visit-instructions summary{padding:12px 10px;font-size:11px}.visit-minimap{border-radius:10px;width:112px;padding:9px;bottom:86px;left:12px}.visit-minimap svg{height:86px}.visit-minimap figcaption{font-size:10px}.realistic-visit .visit-pad{gap:6px;bottom:90px;right:12px}.realistic-visit .visit-pad>div{gap:6px}.realistic-visit .visit-pad button{width:46px;min-width:44px;height:46px;min-height:44px}.visit-disclaimer{left:10px;right:10px;bottom:max(12px,env(safe-area-inset-bottom));text-align:left;padding:8px 10px;font-size:10px}.visit-fallback-notice{max-width:none;font-size:11px;top:175px;left:10px;right:10px}}@media (height<=500px) and (orientation:landscape){.realistic-visit .visit-header{padding:8px 12px;top:8px;left:10px;right:10px}.visit-header>div>span{display:none}.visit-tools{top:78px;left:10px}.visit-minimap{width:100px;padding:6px;bottom:46px}.visit-minimap svg{height:70px}.visit-minimap figcaption{display:none}.realistic-visit .visit-pad{bottom:56px}.visit-disclaimer{padding:5px 8px;font-size:10px;bottom:8px}}:root{color:#193747;font-synthesis:none;--ink:#193747;--muted:#4b6777;--accent:#007c9e;--line:#c9dce6;--surface:#fff;--radius:12px;background:#edf5f9;font-family:Segoe UI,Arial,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,select,input:not([type=checkbox]):not([type=range]){min-height:44px;color:var(--ink);background:#fff;border:1px solid #aec8d5;border-radius:9px;padding:10px 13px}button{cursor:pointer;font-weight:600}button:hover:not(:disabled){background:#e9f5fa;border-color:#75adbf}button:disabled{cursor:not-allowed;color:#647a86;opacity:.75;background:#f0f4f6}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button.primary:hover{background:#00647f}button.danger{color:#a0352b;border-color:#d7b6b0}button.danger:hover{background:#fff0ed}button[aria-pressed=true]{color:#124f65;background:#d9edf5;border-color:#529bb5}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #007c9e}input::placeholder{color:#536c7a;opacity:1}::selection{color:#133744;background:#a8e5f3}input{caret-color:var(--accent)}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.025em;font-size:26px;line-height:1.25}h2{letter-spacing:-.015em;font-size:18px;line-height:1.4}h3{font-size:16px;line-height:1.5}p{line-height:1.7}label{flex-direction:column;gap:7px;min-width:0;margin-bottom:16px;font-weight:600;line-height:1.5;display:flex}label input,label select{width:100%;min-width:0;font-weight:400}.note,small{color:var(--muted);font-size:12px;line-height:1.7}.note{margin:12px 0 18px}.notice,.storage-error{background:#e2f4fc;border:1px solid #bcd9e5;border-radius:10px;padding:14px 18px;line-height:1.6}.storage-error{color:#69451b;background:#fff5e6;border-color:#dfc49e;margin:14px 24px}.field-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px;display:grid}.field-pair label{margin:0}.checkbox{flex-direction:row;align-items:center}.checkbox input{width:18px;height:18px;accent-color:var(--accent)}details{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}summary{cursor:pointer;padding:6px 0;font-weight:600;line-height:1.6}details[open]>summary{margin-bottom:16px}.app-header{border-bottom:1px solid var(--line);background:#f9fcfe;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:18px 32px;display:flex}.brand{white-space:nowrap;align-items:center;gap:22px;display:flex}.brand strong{letter-spacing:-.04em;color:#007c9e;font-size:29px;font-weight:400}.brand span{color:#244b60;font-size:14px;font-weight:600}.app-header nav{flex-wrap:wrap;gap:10px;display:flex}.app-header button{background:0 0}.app-status{color:var(--muted);border-top:1px solid var(--line);background:#f9fcfe;justify-content:space-between;gap:24px;padding:16px 32px;font-size:12px;display:flex}.app-status p{margin:0}.app-status>span{white-space:nowrap}.home{grid-template-columns:330px minmax(0,1fr);align-items:start;gap:42px;max-width:1280px;margin:0 auto;padding:46px 36px 60px;display:grid}.home-start{background:#f4fbff;border:1px solid #c6dce7;border-radius:20px;padding:28px}.home-start h1{margin-bottom:20px;font-size:30px;line-height:1.2}.home-start>p{color:#426276;margin-bottom:24px}.home-action{text-align:left;flex-direction:column;gap:8px;width:100%;margin:0 0 12px;font-size:16px;display:flex;padding:18px!important}.home-action>span{font-size:12px;font-weight:400;line-height:1.6}.text-button{color:#006c8b;background:0 0;border:0;margin:4px 0 16px;padding-left:0!important}.home-start .note{margin-bottom:0;font-size:12px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px;display:flex}.section-heading h2{margin:0;font-size:22px}.section-heading>span{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.project-filters{grid-template-columns:minmax(0,1fr) 160px;gap:16px;margin-bottom:6px;display:grid}.project-filters label{font-size:12px}.saved-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.saved-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.thumbnail{background:#f3f9fc;border-bottom:1px solid #e1edf2;height:155px}.saved-content{flex-direction:column;flex:1;gap:8px;padding:20px;display:flex}.saved-content h3{overflow-wrap:anywhere;margin:0;font-size:16px}.saved-content p{color:var(--muted);margin:0;font-size:13px}.saved-content small{margin-bottom:10px}.saved-content button{margin-top:auto}.empty-state{border:1px solid var(--line);background:#f9fcfe;border-radius:16px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:285px;padding:34px;display:flex}.empty-state p{color:var(--muted);max-width:45ch}.drafts{background:#fff8eb;border:1px solid #d9c29c;border-radius:12px;margin-bottom:20px;padding:18px}.drafts h3{color:#6d4e1d;margin-bottom:12px}.drafts>div{justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.drafts>div+div{border-top:1px solid #e7dac2}.drafts small{display:block}.drafts b{overflow-wrap:anywhere}.editor-shell{grid-template-columns:220px minmax(0,1fr);display:grid}.session-rail{border-right:1px solid var(--line);background:#f7fbfe;min-width:0;padding:28px 16px}.session-rail h2{margin-bottom:16px;font-size:13px}.session-rail>button{text-align:left;width:100%;margin-bottom:12px}.session-link{flex-direction:column;gap:5px;display:flex;background:0 0!important;border-color:#0000!important}.session-link b{overflow-wrap:anywhere;font-size:13px}.session-link small{font-size:11px;font-weight:400}.session-link.active{background:#deeff6!important;border-color:#abd1df!important}.editor-main{width:100%;min-width:0;max-width:1800px;margin:auto;padding:24px}.editor-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.editor-toolbar h1{overflow-wrap:anywhere;margin:0 0 7px;font-size:22px}.doc-state{color:#795016;font-size:11px}.doc-state.saved{color:#236447}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.toolbar-actions button{font-size:12px}.mobile-sessions{display:none}.workspace{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.workspace.with-panel{grid-template-columns:minmax(0,1fr) 320px}.scene{background:#eef6fb;min-width:0;height:600px;position:relative}.scene-toolbar{z-index:2;flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:absolute;top:16px;left:16px;right:16px}.scene-toolbar>button{background:#fffffff2;padding:9px 11px;font-size:12px}.segments{border:1px solid #bed4df;border-radius:10px;display:flex;overflow:hidden}.segments button{border:0;border-radius:0;padding:8px 14px;font-size:12px}.grid-controls{z-index:2;align-items:center;gap:10px;display:flex;position:absolute;top:76px;left:16px}.grid-controls>button{min-height:36px;padding:8px 10px;font-size:11px}.grid-controls label{flex-direction:row;align-items:center;gap:8px;margin:0;font-size:11px;display:flex}.grid-controls select{width:auto;min-height:36px;padding:6px;font-size:11px}.plan-surface{width:100%;height:100%;position:relative}.plan-surface>canvas{touch-action:none;width:100%;height:100%;display:block}.zoom-controls{gap:6px;display:flex;position:absolute;bottom:54px;right:16px}.zoom-controls>button{background:#fffffff2;min-height:36px;padding:7px 11px;font-size:12px}.canvas-empty{text-align:center;pointer-events:none;width:75%;max-width:320px;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.canvas-empty h2{font-size:20px}.canvas-empty p{color:var(--muted);font-size:13px}.canvas-hint{color:#496778;pointer-events:none;background:#ffffffe0;border-radius:8px;margin:0;padding:9px 12px;font-size:11px;line-height:1.5;position:absolute;bottom:14px;left:16px;right:16px}.placement-bar{z-index:3;background:#fff;border:1px solid #8bbccc;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.placement-bar span{flex:1;min-width:140px;font-size:12px}.placement-bar button{font-size:12px}.workspace.expanded{z-index:10;background:#fff;position:fixed;inset:12px}.workspace.expanded .scene{height:calc(100dvh - 26px)}.workspace.expanded .inspector{max-height:calc(100dvh - 26px)}.inspector{border-left:1px solid var(--line);scrollbar-color:#abc8d7 #edf5f9;scrollbar-width:thin;background:#f9fcfe;max-height:600px;padding:18px;overflow:auto}.inspector h2{margin-top:20px}.inspector-tabs{flex-wrap:wrap;gap:5px;display:flex}.inspector-tabs button{min-height:36px;padding:8px;font-size:11px}.inspector label{font-size:12px}.inspector .field-pair{gap:8px}.inspector .field-pair>button{padding:8px;font-size:12px}.inspector input[type=range]{accent-color:var(--accent)}.item-footage{font-variant-numeric:tabular-nums;color:#007697;font-size:22px;font-weight:600}.catalog-list{flex-direction:column;gap:12px;display:flex}.catalog-card{background:#fff;border:1px solid #d5e3eb;border-radius:12px;grid-template-columns:65px minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid}.catalog-card img{object-fit:contain;width:65px;height:65px}.catalog-card h3{overflow-wrap:anywhere;margin:0 0 4px;font-size:14px}.catalog-card p{color:var(--muted);overflow-wrap:anywhere;margin:0 0 5px;font-size:11px;line-height:1.5}.catalog-card small{font-size:11px}.catalog-actions{grid-column:1/-1;gap:8px;display:flex}.catalog-actions button{flex:1;min-height:38px;padding:7px 10px;font-size:12px}.no-image{width:65px;height:65px;color:var(--muted);background:#e7eef2;border-radius:6px;place-items:center;font-size:12px;display:grid}.load-more{width:100%;margin-top:16px}.allocation-panel{border:1px solid var(--line);background:#fff;border-radius:16px;margin-top:20px;padding:22px}.allocation-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.allocation-heading h2{margin:0}.allocation-heading>div{white-space:nowrap;color:var(--muted);font-size:12px}.allocation-heading strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:26px;font-weight:600;line-height:1}.allocation-bar{background:#e7eff3;border-radius:5px;height:8px;margin-bottom:20px;display:flex;overflow:hidden}.allocation-bar span{display:block}.section-legend{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;margin:0;padding:0;list-style:none;display:grid}.section-legend li{border-bottom:1px solid #e6eef3;grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:10px;padding:9px 0;font-size:12px;line-height:1.5;display:grid}.swatch{border-radius:3px;width:10px;height:10px;margin-top:4px}.section-legend b{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.section-legend small{font-size:11px;display:block}.furniture-list{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px 20px}.furniture-list>button{text-align:left;border:0;border-bottom:1px solid #e4edf2;border-radius:5px;grid-template-columns:120px minmax(0,1fr) 90px;gap:12px;width:100%;font-size:12px;font-weight:400;display:grid}.furniture-list>button>span:last-child{text-align:right;font-variant-numeric:tabular-nums}dialog{width:min(640px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);background:#fafdff;border:1px solid #bcd3df;border-radius:18px;padding:26px;overflow:auto;box-shadow:0 16px 60px #153d5433}dialog::backdrop{background:#183b5270}.modal-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.modal-heading h2{margin:0;font-size:21px}.modal-heading>button{flex-shrink:0;font-size:12px}dialog form>.primary{width:100%;margin-top:10px}.preview-model{background:#edf5f9;border-radius:12px;height:320px;overflow:hidden}.reference-image{object-fit:contain;max-width:100%;max-height:240px;margin:24px auto;display:block}.visit-overlay{z-index:30;overscroll-behavior:none;background:#edf5fa;position:fixed;inset:0}.visit-overlay header{border:1px solid var(--line);z-index:2;background:#fffffff0;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:12px 18px;display:flex;position:absolute;top:12px;left:12px;right:12px}.visit-overlay>canvas{touch-action:none;width:100%;height:100%;display:block}.visit-help{color:var(--ink);pointer-events:none;font-size:12px;position:absolute;top:94px;left:20px;right:20px}.visit-pad{flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:24px;right:24px}.visit-pad>div{gap:8px;display:flex}.visit-pad button{touch-action:none;-webkit-user-select:none;user-select:none;min-width:52px;min-height:48px}.fatal-error{max-width:680px;margin:15vh auto;padding:32px}@media (width>=1600px){.scene{height:670px}.inspector{max-height:670px}}@media (width<=1150px){.editor-shell{grid-template-columns:175px minmax(0,1fr)}.session-rail{padding:24px 10px}.editor-main{padding:18px}.editor-toolbar{flex-direction:column;align-items:flex-start}.toolbar-actions{justify-content:flex-start}.workspace.with-panel{grid-template-columns:minmax(0,1fr) 285px}.scene-toolbar{gap:6px;left:10px;right:10px}.scene-toolbar>button{padding:8px;font-size:11px}.grid-controls{top:122px}.home{grid-template-columns:290px minmax(0,1fr);gap:26px;padding:32px 24px}.home-start{padding:24px}.saved-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=850px){.editor-shell{display:block}.session-rail{display:none}.folders-open .session-rail{border-bottom:1px solid var(--line);max-height:350px;display:block;overflow:auto}.mobile-sessions{margin-bottom:12px;font-size:12px;display:inline-block}.scene{height:530px}.inspector{max-height:530px}.home{grid-template-columns:260px minmax(0,1fr);gap:22px}.home-start h1{font-size:26px}.project-filters{grid-template-columns:minmax(0,1fr)}.section-heading{flex-wrap:wrap;gap:8px}.grid-controls{top:76px}}@media (width<=700px){:root{font-size:14px}.app-header{flex-direction:column;align-items:flex-start;gap:14px;padding:16px}.brand{gap:16px}.brand strong{font-size:27px}.app-header nav{gap:8px;width:100%}.app-header nav button{flex:1;padding:8px;font-size:12px}.home{grid-template-columns:minmax(0,1fr);gap:30px;max-width:560px;padding:24px 16px 36px}.home-start{padding:24px}.home-start h1{max-width:18ch;font-size:29px}.home-start>p{font-size:14px}.home-action{font-size:16px}.saved-grid{grid-template-columns:minmax(0,1fr)}.thumbnail{height:185px}.project-filters{grid-template-columns:minmax(0,1fr) 145px;gap:10px}.project-filters input,.project-filters select{font-size:16px}.editor-main{padding:16px 12px}.editor-toolbar{gap:12px}.editor-toolbar h1{font-size:21px}.toolbar-actions{gap:6px}.toolbar-actions button{padding:9px;font-size:11px}.workspace.with-panel{grid-template-columns:minmax(0,1fr)}.scene{height:480px}.scene-toolbar{gap:5px;top:12px;left:10px;right:10px}.scene-toolbar>button{padding:8px;font-size:11px}.grid-controls{gap:7px;top:118px;left:10px}.zoom-controls{bottom:73px;right:10px}.canvas-hint{font-size:11px;left:10px;right:10px}.canvas-empty{top:51%}.inspector{border-left:0;border-top:1px solid var(--line);max-height:640px;padding:20px}.inspector input,.inspector select{font-size:16px}.inspector-tabs button{min-height:44px;font-size:12px}.catalog-card{grid-template-columns:72px minmax(0,1fr);padding:14px}.catalog-card img{width:72px;height:70px}.catalog-card p,.catalog-card small{font-size:12px}.catalog-actions button{min-height:44px}.workspace.expanded{overflow:auto}.workspace.expanded .scene{height:calc(100dvh - 26px)}.workspace.expanded .inspector{max-height:none}.allocation-panel{padding:18px}.allocation-heading{align-items:flex-start;gap:12px}.allocation-heading h2{font-size:16px}.allocation-heading strong{font-size:24px}.section-legend{grid-template-columns:minmax(0,1fr)}.furniture-list{padding:16px 12px}.furniture-list>button{grid-template-columns:70px minmax(0,1fr) 70px;gap:8px;font-size:11px}.app-status{flex-direction:column;gap:8px;padding:16px}.app-status>span{font-size:11px}.placement-bar button{padding:8px;font-size:11px}.placement-bar span{font-size:11px}.preview-model{height:280px}dialog{padding:20px}dialog input,dialog select{font-size:16px}.modal-heading h2{font-size:19px}.visit-overlay header{gap:10px;padding:10px}.visit-overlay header strong{font-size:13px}.visit-help{font-size:11px;top:88px;left:16px}.visit-pad{bottom:max(20px,env(safe-area-inset-bottom));right:16px}}@media (width<=380px){.project-filters{grid-template-columns:minmax(0,1fr)}.scene-toolbar>button{font-size:10px}.scene{height:460px}.grid-controls{top:118px}.brand span{font-size:12px}.toolbar-actions>button{flex:1}.app-status{overflow-wrap:anywhere}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
