@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";#history-dialog{width:min(1080px,94vw);max-height:90dvh;padding:24px;background:var(--paper);color:var(--ink);border:1px solid var(--border-strong);border-radius:14px}#history-dialog[open]{display:flex;flex-direction:column;width:min(1080px,calc(100vw - 32px));max-width:min(1080px,calc(100vw - 32px));height:min(900px,90dvh);overflow:hidden}#history-dialog .dialog-heading{margin-bottom:8px;flex-shrink:0}.version-save,.version-tabs,.version-footer{flex-shrink:0}.version-save{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;padding:12px 14px;background:#f5f6f2;border:1px solid var(--border);border-radius:10px}.version-save label{flex:1;min-width:180px;font-size:12.5px;font-weight:600;color:var(--muted)}.version-save input{display:block;width:100%;margin-top:5px;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:7px;background:var(--paper);font-size:14px;color:var(--ink)}.version-tabs{display:flex;gap:6px;margin:10px 0}.version-tabs button{padding:5px 12px;min-height:32px;font-size:13px;font-weight:600;border:1px solid var(--border);background:#f5f6f2;border-radius:7px}.version-tabs button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}#history-dialog .version-grid{display:grid;grid-template-columns:280px 1fr;gap:20px;border-top:1px solid var(--border);padding-top:14px;flex:1;min-height:0;overflow:hidden}#history-dialog .version-grid>div:first-child{display:flex;flex-direction:column;min-height:0}#history-list{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1;overflow:auto;padding-right:4px}#history-list>button{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:5px;text-align:left;border:1px solid var(--border);padding:12px 14px;min-height:108px;border-radius:9px;background:var(--paper);width:100%;min-width:0;font-size:13.5px;white-space:normal;overflow-wrap:anywhere;transition:border-color .14s ease,background-color .14s ease}#history-list>button:hover:not(:disabled){background:#f7f8f4;border-color:var(--border-strong)}#history-list>button:focus{outline:2px solid var(--accent)}#history-list>button strong,#history-list>button span,#history-list>button small{max-width:100%;min-width:0;white-space:normal}#history-list strong{font-size:15px;font-weight:700;color:var(--ink)}#history-list small{color:var(--accent);font-size:12.5px;font-weight:600}#history-list span,#history-preview p{font-size:13px;color:var(--muted)}#history-preview{min-width:0;overflow:auto;background:#f4f6f0;border:1px solid var(--border);border-radius:10px;padding:16px}#history-preview svg{width:100%;height:40dvh}#history-error{color:var(--accent);font-size:13px}#history-error:empty{display:none}#history-dialog .version-footer{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:14px;margin-top:12px;border-top:1px solid var(--border);background:var(--paper)}.version-footer p{flex:1;min-width:180px;font-size:13px;color:var(--muted)}.version-tables{line-height:1.6}#archive-selected[hidden],#history-more[hidden]{display:none}@media(max-width:767px){#history-dialog[open]{height:94dvh;width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:14px}.version-save{gap:6px;padding:8px 10px}.version-tabs{margin:8px 0}#history-dialog .version-grid{grid-template-columns:1fr;grid-template-rows:minmax(110px,.7fr) minmax(130px,1fr);gap:12px}#history-preview svg{height:28dvh}#history-dialog .version-footer{padding-top:8px;margin-top:8px;gap:6px}.version-footer .button{flex:1}.version-footer p{flex-basis:100%;margin:0}}.selection-actions{display:flex;gap:4px;align-items:center;font-size:12.5px;padding:6px 12px;background:#f7f8f4;border-bottom:1px solid var(--border)}.selection-actions strong{margin-right:auto;font-size:12.5px;font-weight:700;color:var(--ink)}.selection-actions button{font-size:12px;font-weight:600;min-height:28px;padding:3px 8px;border-radius:6px;background:var(--paper);border:1px solid var(--border)}.selection-actions button:hover:not(:disabled){background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}.clearance-panel{padding:12px 14px;border-bottom:1px solid var(--border);background:#fafaf7;display:grid;grid-template-columns:1fr 1fr;gap:6px}.clearance-panel>h3{grid-column:1 / -1;font-size:12.5px;font-weight:700;display:flex;align-items:center;justify-content:space-between;margin-bottom:2px;color:var(--ink)}.clearance-panel>h3 span{font-size:11.5px;color:var(--muted);font-weight:500;background:var(--surface-2);padding:1px 6px;border-radius:99px}.clearance-row{padding:7px 9px;background:var(--paper);border:1px solid var(--border);border-radius:7px;display:flex;flex-direction:column;gap:2px}.clearance-row.narrow{background:#fdf6f3;border-color:#e4b6a6}.clearance-row.overlap{background:#fef2f2;border-color:#f2b8b5}.clearance-row>div{display:flex;justify-content:space-between;align-items:center;font-size:12px}.clearance-row b{font-weight:650;color:var(--ink)}.clearance-row strong{color:var(--teal);font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}.clearance-row.narrow strong{color:var(--accent)}.clearance-row.overlap strong{color:#b91c1c}.clearance-row p,.clearance-row small{font-size:11.5px;color:var(--muted);line-height:1.35;margin:1px 0 0;overflow-wrap:anywhere}.clearance-row p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.clearance-target{grid-column:1 / -1;font-size:12px;font-weight:550;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;padding-top:6px;border-top:1px dashed var(--border)}.clearance-target input{width:64px;min-height:28px;padding:3px 6px;border:1px solid var(--border);border-radius:6px;background:var(--paper);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.clearance-explanation{grid-column:1 / -1;font-size:12px;color:var(--muted)}.clearance-explanation summary{padding:4px 0 0;min-height:24px;font-size:12px;font-weight:550;color:var(--muted);cursor:pointer}.clearance-note{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}.scene-selection-box{position:absolute;border:1.5px solid var(--accent);background:#b844211f;pointer-events:none;z-index:5}.canvas-tools [data-tool=box-select].active,.canvas-tools [data-tool=clearance].active{color:var(--accent);background:var(--accent-soft)}.canvas-area[data-box-select=true] #plan-stage,.canvas-area[data-box-select=true] canvas{cursor:crosshair}#selection-summary:empty,#clearance-inspector:empty{display:none}.demo-banner{padding:6px 16px;background:var(--accent-soft);font-size:13px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.demo-banner a{color:var(--accent);font-weight:650}@media(max-width:1100px){.clearance-panel>h3,.selection-actions{padding-right:36px}}@media(max-width:767px){.selection-actions{padding:6px 10px;flex-wrap:wrap}.clearance-panel{padding:10px 12px}.demo-banner{font-size:12.5px;padding:6px 10px}.canvas-tools button[data-tool=clearance]{font-size:0;gap:0}.canvas-tools [data-tool=box-select]{font-size:12.5px}}:root{font-family:Pretendard Variable,Malgun Gothic,-apple-system,BlinkMacSystemFont,sans-serif;color:#181d18;background:#f2f3ee;font-synthesis:none;--bg: #f2f3ee;--paper: #fcfcfa;--surface-2: #eaece5;--surface-3: #dfe3d9;--ink: #181d18;--muted: #5a625a;--accent: #b84421;--accent-hover: #9a3619;--accent-soft: #f6ebe6;--teal: #1f5e52;--teal-soft: #e6f0ed;--border: #d5dad0;--border-strong: #bfc6b9;--warning: #8a5a1e;--danger: #b42318;--radius: 8px;--radius-sm: 6px;--radius-lg: 12px;accent-color:var(--accent);caret-color:var(--accent);scrollbar-color:#c2c8bc transparent}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body{margin:0;font-size:14px;line-height:1.5;background:var(--bg);color:var(--ink)}button,input,select{font:inherit;border-radius:var(--radius)}button{cursor:pointer;border:1px solid transparent;color:inherit;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-height:36px;transition:background-color .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease,opacity .12s ease,transform .1s ease}button:hover:not(:disabled){background:var(--surface-2)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.42;cursor:not-allowed}input,select{min-width:0;max-width:100%;font-size:14px}svg.lucide{width:16px;height:16px;stroke-width:1.85;flex-shrink:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3{line-height:1.25;letter-spacing:-.025em;text-wrap:balance}h1{font-size:20px;font-weight:700}h2{font-size:16px;font-weight:650}h3{font-size:15px;font-weight:650}h4{font-size:13px;font-weight:650}p{word-break:keep-all;overflow-wrap:anywhere}img{max-width:100%;display:block}::selection{background:var(--accent);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{text-underline-offset:.2em}button[hidden],[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;padding:10px 14px;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);z-index:100}.skip-link:focus{top:12px}.button{padding:7px 13px;font-weight:600;font-size:13.5px;border-radius:var(--radius)}.button.primary{background:var(--accent);color:var(--paper);border-color:var(--accent);box-shadow:0 1px 2px #181d181f,inset 0 1px #ffffff24}.button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button.secondary{background:var(--surface-2);color:var(--ink);border-color:var(--border)}.button.secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong)}.icon-button{width:34px;height:34px;min-height:34px;flex-shrink:0;padding:6px;border:1px solid transparent;border-radius:var(--radius-sm)}.icon-button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border)}.full{width:100%}.text-button{font-size:13px;color:var(--accent);font-weight:600;padding:5px 10px}.danger{color:var(--danger)}.plan-object{cursor:grab;transition:filter .12s ease}.plan-object.fixed{cursor:pointer}.plan-object:active{cursor:grabbing}.plan-object:hover{filter:brightness(1.05)}.plan-object .detail{fill:#dfddd4;stroke:#88857b}.plan-object .chair-back{fill:inherit;filter:brightness(1.12)}.plan-object.removed{opacity:.22;stroke-dasharray:5 3}.plan-object .selection-outline{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:5 3;pointer-events:none}.plan-object.selected{filter:drop-shadow(0 3px 6px rgba(184,68,33,.22))}.object-label{font-family:inherit;font-size:13.5px;font-weight:650;text-anchor:middle;fill:#1e241f;paint-order:stroke;stroke:#f8f8f3;stroke-width:3.2px;stroke-linejoin:round;pointer-events:none}.fixed .object-label{fill:#f4f6f2;stroke:#222723}.dimension-label{font-family:inherit;font-size:17px;font-weight:650;fill:#3d4b42;text-anchor:middle;font-variant-numeric:tabular-nums}.dimension-label .axis-label{font-size:12.5px;font-weight:500;fill:#5f6b61}.area-label{font-size:12.5px;font-weight:500;fill:#616c62}.selection-dimension{font-size:14px;fill:var(--accent);font-weight:700;text-anchor:middle;paint-order:stroke;stroke:#fcfcfa;stroke-width:4px;font-variant-numeric:tabular-nums}.plan-opening{cursor:pointer}.plan-opening.selected{filter:drop-shadow(0 0 4px rgba(184,68,33,.45))}.rotation-stem{stroke:var(--accent);stroke-width:2;stroke-dasharray:3 2;pointer-events:none}.rotation-handle{fill:var(--paper);stroke:var(--accent);stroke-width:2.5;cursor:grab}.rotation-handle:hover{fill:var(--accent)}.rotation-handle:active{cursor:grabbing}#scene-stage{position:absolute;inset:0}#scene-stage canvas{width:100%;height:100%;display:block;outline:0;touch-action:none}.scene-error,.scene-loading{padding:64px 32px;font-size:15px;max-width:56ch;margin:auto}.scene-error p{margin-top:12px;color:var(--muted)}.recovery-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}#photo-stage{position:absolute;inset:0;display:flex;flex-direction:column;background:#e3e7df}.photo-preview{min-height:0;flex:1;position:relative;padding:16px 16px 52px;display:flex;justify-content:center;align-items:center}.photo-preview>img{height:100%;width:100%;object-fit:contain;border-radius:var(--radius)}.photo-nav{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;background:#fcfcfaeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:3px 10px;border-radius:99px;border:1px solid var(--border)}.photo-thumbnails{height:86px;flex-shrink:0;display:flex;gap:6px;overflow-x:auto;padding:8px 12px;background:#d8ddd3;border-top:1px solid var(--border)}.photo-thumbnails button{height:66px;min-width:64px;padding:2px;border:2px solid transparent;border-radius:var(--radius-sm);overflow:hidden}.photo-thumbnails button.active{border-color:var(--accent);background:var(--paper)}.photo-thumbnails img{height:100%;width:100%;object-fit:cover;border-radius:4px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,16px);opacity:0;pointer-events:none;background:#181d18;color:#fcfcfa;max-width:min(90vw,520px);padding:10px 16px;border-radius:99px;z-index:120;transition:opacity .16s ease,transform .16s ease;font-size:13.5px;font-weight:500;box-shadow:0 8px 24px #181d1838}.toast.visible{opacity:1;transform:translate(-50%)}.toast.error{background:#9e2a1c}dialog{border:1px solid var(--border);border-radius:var(--radius-lg);max-width:min(680px,calc(100vw - 32px));width:100%;padding:24px;background:var(--paper);color:var(--ink);box-shadow:0 20px 60px #181d1838}dialog::backdrop{background:#181d186b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dialog-heading h2{font-size:20px;font-weight:700}dialog>p{font-size:13.5px;color:var(--muted);margin:8px 0 18px}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.catalog>button{padding:14px 10px;display:flex;flex-direction:column;gap:6px;background:#f5f6f2;white-space:normal;border:1px solid var(--border);border-radius:var(--radius)}.catalog>button:hover:not(:disabled){background:var(--accent-soft);border-color:#d9a796}.catalog strong{font-size:14px;font-weight:650}.catalog>button>span:last-child{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.catalog-icon{color:var(--item-color);filter:brightness(.72);height:38px;display:flex;align-items:center}.catalog-icon svg{height:28px;width:28px}.opening-add{display:flex;gap:8px;padding-top:16px;margin-top:16px;border-top:1px solid var(--border);justify-content:flex-end}.empty-list{padding:32px 16px;color:var(--muted);display:grid;justify-items:center;gap:10px;text-align:center;font-size:13px}.web-save-notice{margin:0;padding:8px 16px;border-bottom:1px solid #dfc89f;background:#fcf1de;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.web-save-notice[hidden],#web-save-conflict-actions[hidden]{display:none}.web-save-notice p{flex:1;min-width:220px;font-size:13px}.web-save-notice button{min-height:32px;font-size:12.5px}.web-save-conflict-actions{display:flex;gap:6px;flex-wrap:wrap}.saved-plan-bar{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;min-height:36px;padding:4px 16px;border-bottom:1px solid var(--border);background:#f7f8f4;flex-shrink:0}.saved-plan-bar[hidden],.saved-plan-bar button[hidden]{display:none}.saved-plan-bar>div:first-child{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.saved-plan-bar #document-state{font-size:12px;font-weight:650;background:var(--surface-2);color:var(--ink);padding:2px 8px;border-radius:99px;border:1px solid var(--border)}.saved-plan-bar #save-version{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}.saved-plan-actions{display:flex;gap:6px;flex-wrap:wrap}.saved-plan-actions .button{font-size:12px;font-weight:600;min-height:28px;padding:3px 10px;background:var(--paper);border:1px solid var(--border);border-radius:6px}.saved-plan-actions .button:hover:not(:disabled){background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}#inspector[aria-busy=true],#purchase-body[aria-busy=true]{opacity:.65}@media(max-width:767px){.saved-plan-bar{padding:4px 10px;gap:4px 8px;min-height:34px}.saved-plan-bar>div:first-child{gap:4px 6px}.saved-plan-bar #save-version{font-size:11.5px;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-plan-actions .button{min-height:28px;padding:2px 8px;font-size:11.5px}}.purchase-banner{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 20px 14px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--paper)}.purchase-banner p{font-size:13.5px;color:var(--muted)}.purchase-banner b{color:var(--accent);font-variant-numeric:tabular-nums}.purchase-banner .over{color:#b42318}#purchase-dialog{width:min(1220px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:0;background:var(--paper);border:1px solid var(--border-strong);border-radius:14px;color:var(--ink);box-shadow:0 24px 64px #181d183d}#purchase-body{padding:28px 32px}.purchase-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.purchase-heading h2{font-size:24px;font-weight:700;letter-spacing:-.025em}.eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);margin-bottom:4px}.purchase-intro{margin:14px 0 22px;max-width:78ch;font-size:13.5px;line-height:1.6;color:var(--muted)}.purchase-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.purchase-content{min-width:0}.purchase-section-heading{display:flex;gap:12px;justify-content:space-between;align-items:baseline;margin-bottom:12px;flex-wrap:wrap}.purchase-section-heading h3{font-size:18px;font-weight:700}.purchase-section-heading>span{font-size:13px;color:var(--muted)}.purchase-advice,.floor-condition{font-size:13px;color:#7c521b;padding:10px 14px;background:#f9f3e6;border:1px solid #ead8ba;border-radius:8px;margin-bottom:14px;line-height:1.5}.floor-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.floor-option{padding:16px;border:1px solid var(--border);border-radius:10px;background:#fafaf7;min-width:0;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.floor-option.selected{border:2px solid var(--accent);padding:15px;background:var(--paper);box-shadow:0 4px 16px #b8442114}.floor-choice{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:0 0 10px;white-space:normal;text-align:left}.floor-choice:hover:not(:disabled){background:transparent}.floor-choice>span{font-size:14.5px;font-weight:700;color:var(--ink)}.floor-choice strong{font-size:22px;font-weight:750;font-variant-numeric:tabular-nums;color:var(--ink)}.floor-choice small{font-size:12.5px;color:var(--muted)}.floor-choice[aria-pressed=true]>span:after{content:" · 선택됨";color:var(--accent);font-weight:700}#purchase-dialog a{color:var(--accent);font-weight:600;overflow-wrap:anywhere}#purchase-dialog details{font-size:13px;color:var(--muted);margin-top:10px}#purchase-dialog details p{margin:6px 0}#purchase-dialog summary{cursor:pointer;min-height:30px;display:list-item;font-size:13px;font-weight:600}#purchase-dialog summary:after{content:none}.floor-option>p{font-size:13px;line-height:1.5;color:var(--muted)}.floor-option>.purchase-field{margin-top:14px}.tile-quantity{margin-top:10px;font-size:12.5px;color:var(--muted)}.comparison-total{padding-top:10px;margin-top:10px;border-top:1px solid var(--border);font-size:13px}.comparison-total b{display:block;font-size:14px;color:var(--ink)}.floor-condition{margin-top:10px;margin-bottom:0}.preview-note{display:block;margin-top:4px;color:var(--muted);font-size:12.5px}.product-section{margin-top:28px}.purchase-product{padding:18px 16px;margin-bottom:10px;border:1px solid var(--border);border-radius:10px;background:var(--paper)}.product-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.product-top strong{font-size:16px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.product-category{font-size:12px;font-weight:650;color:var(--teal);background:var(--teal-soft);padding:2px 8px;border-radius:99px}.purchase-product h3{margin:6px 0 4px;font-size:16px;font-weight:700}.seller-link,.product-reviews,.product-reason{font-size:13px;margin-top:5px;line-height:1.5}.product-reviews{color:var(--accent);font-weight:550}.product-reason{color:var(--muted)}.product-controls{display:grid;grid-template-columns:88px minmax(110px,1fr) auto;gap:10px;align-items:end;margin-top:14px;clear:both}.purchase-field{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--muted)}.purchase-field input{width:100%;height:36px;border:1px solid var(--border);border-radius:7px;padding:5px 9px;background:#f7f8f4;color:var(--ink);font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums}.purchase-field input:focus{background:var(--paper);border-color:var(--accent);outline:none}.purchase-input{display:flex;align-items:center;gap:6px}.purchase-input>span{flex-shrink:0;font-size:12.5px}.placed-count,.consumable-label{font-size:12.5px;color:var(--muted)}.placed-count{margin-top:6px}.consumable-label{align-self:center}.purchase-budget{position:sticky;top:16px;background:#f4f6f0;border:1px solid var(--border-strong);border-radius:12px;padding:20px;box-shadow:0 4px 16px #181d180d}.purchase-budget h3{font-size:19px;font-weight:700}.budget-total{display:flex;flex-direction:column;margin-top:16px;padding:12px 14px;background:var(--paper);border:1px solid var(--border);border-radius:9px;gap:2px;font-variant-numeric:tabular-nums}.budget-total>span{font-size:12px;font-weight:600;color:var(--muted)}.budget-total>strong{font-size:26px;font-weight:750;line-height:1.25;color:var(--ink)}.budget-meter{height:7px;background:#dce1d6;border-radius:99px;margin:14px 0 8px;overflow:hidden}.budget-meter>span{display:block;height:100%;background:var(--teal);border-radius:99px;transition:width .2s ease}.budget-remaining{font-size:13px;font-weight:650;display:flex;justify-content:space-between;gap:6px;color:var(--teal);font-variant-numeric:tabular-nums}.budget-remaining.over{color:#b42318}.budget-lines{border-top:1px solid var(--border);margin:16px 0 14px;padding-top:12px}.budget-lines>div{display:flex;gap:8px;justify-content:space-between;font-size:13px;margin:6px 0}.budget-lines dt{color:var(--muted)}.budget-lines dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums}.purchase-budget>.purchase-field{margin-top:10px}.budget-limit{margin-top:12px;font-size:13px}.budget-help,.research-note{font-size:12px;line-height:1.5;color:var(--muted);margin-top:12px}.purchase-budget>button{margin-top:16px}.purchase-alert{background:#fef2f2;color:#991b1b;border:1px solid #f2b8b5;padding:10px 12px;position:sticky;bottom:0;margin-top:12px;border-radius:8px;font-size:13px}.product-inspector{padding:12px 0;border-top:1px solid var(--border);margin-top:12px}.product-inspector p{font-size:12.5px;margin-top:6px;color:var(--muted);line-height:1.5}.product-inspector a{color:var(--accent)}.product-picture{margin:10px 0}.product-picture img{width:100%;height:180px;object-fit:contain;border-radius:8px;background:#f3f5f0;border:1px solid var(--border)}.product-picture figcaption{font-size:11.5px;color:var(--muted);line-height:1.45;margin-top:5px}.purchase-product>.product-picture{float:right;width:118px;margin:6px 0 10px 14px}.purchase-product>.product-picture img{height:118px}.product-inspector .product-picture img{height:190px}.product-evidence{clear:both}.usage-outline{fill:none;stroke:#a47736;stroke-width:1.5;stroke-dasharray:6 4;pointer-events:none}.purchase-entry-actions a{text-decoration:none}.v2-aisle-note{margin-top:6px;font-size:12.5px;color:var(--teal);font-weight:550}@media(max-width:1100px){.purchase-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.floor-options{grid-template-columns:1fr}.purchase-banner{margin:0 16px 12px;flex-wrap:wrap}.product-controls{grid-template-columns:80px 1fr}.product-controls>button,.consumable-label{grid-column:1 / -1}}@media(max-width:767px){#purchase-dialog{width:100vw;max-height:100dvh;height:100dvh;margin:0;border-radius:0;border:0}#purchase-body{padding:18px 14px}.purchase-heading h2{font-size:20px}.purchase-layout{display:flex;flex-direction:column;gap:22px}.purchase-budget{position:static;order:-1;width:100%}.purchase-content{width:100%}.purchase-product>.product-picture{width:96px}.purchase-product>.product-picture img{height:96px}.purchase-entry-actions{width:100%}}#camera-panel{margin:0}#camera-panel summary{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:34px;color:var(--ink);font-weight:650}#camera-panel summary>span{font-size:12px;color:var(--muted);font-weight:400}#camera-panel summary:after{margin-left:auto}.camera-body{padding:10px 0 14px}.camera-presets,.camera-actions,.camera-saved,.camera-pan,#camera-bookmarks{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.camera-body button{background:#f7f8f4;border:1px solid var(--border);padding:5px 10px;min-height:32px;font-size:12.5px;font-weight:550;border-radius:6px}.camera-body button:hover:not(:disabled){background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}.camera-sliders{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.camera-sliders label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);background:#f7f8f4;padding:6px 8px;border:1px solid var(--border);border-radius:7px}.camera-sliders output{font-weight:700;font-size:12.5px;color:var(--ink);font-variant-numeric:tabular-nums}.camera-sliders input{width:100%;min-height:22px;margin:0;cursor:pointer}.camera-pan button{min-width:34px;font-size:16px}.camera-actions label{display:flex;align-items:center;gap:6px;font-size:12.5px}.camera-actions select,.camera-body>label select{padding:6px 8px;border:1px solid var(--border);border-radius:7px;background:#f7f8f4;min-height:34px;width:100%;color:var(--ink);font-size:13px}.camera-body>label{display:flex;flex-direction:column;gap:4px;margin-top:12px;font-size:12px;font-weight:550;color:var(--muted)}.camera-saved{margin-top:10px}.camera-saved>span,.camera-body>p{font-size:12px;color:var(--muted)}.camera-body>p{margin-top:10px;line-height:1.5}.camera-pan>span{font-size:12px;color:var(--muted)}#scene-stage canvas:focus-visible{outline-offset:-3px}.inspector #camera-panel{margin:8px 14px 0;padding:0 0 16px}.inspector #camera-panel summary{position:relative;flex-direction:column;align-items:flex-start;gap:2px;padding-right:20px}.inspector #camera-panel summary:after{position:absolute;right:0;top:4px}.inspector #camera-panel summary strong{font-size:13px}.inspector .camera-presets button{flex:1 0 42%}.inspector .camera-actions label{flex-wrap:wrap}@media(max-width:767px){.inspector #camera-panel:has(details[open]){position:fixed;inset:auto 0 0;z-index:16;margin:0;padding:8px 14px;max-height:46dvh;overflow-y:auto;background:var(--paper);border-top:1px solid var(--border);box-shadow:0 -8px 24px #181d1829}.inspector #camera-panel:has(details[open]) summary{position:sticky;top:-8px;background:var(--paper);z-index:1;min-height:38px}.inspector .camera-presets button{flex:1 0 25%}}:root{--bg: #f2f3ee;--paper: #fcfcfa;--surface-2: #eaece5;--surface-3: #dfe3d9;--ink: #181d18;--muted: #5a625a;--accent: #b84421;--accent-hover: #9a3619;--accent-soft: #f6ebe6;--teal: #1f5e52;--teal-soft: #e6f0ed;--border: #d5dad0;--border-strong: #bfc6b9;--radius: 8px;--radius-sm: 6px;--radius-lg: 12px;color:var(--ink);background:var(--bg)}body{overflow:hidden;background:var(--bg);font-size:14px}#app{height:100dvh;display:flex;flex-direction:column;overflow:hidden}button,input,select{border-radius:var(--radius)}button{min-height:34px;font-size:13px;box-shadow:none}input,select{font-size:14px}button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.studio-header{height:52px;flex-shrink:0;display:flex;align-items:center;gap:14px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--paper);z-index:20}.studio-brand{display:flex;align-items:center;gap:9px;font-size:14.5px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;color:var(--ink);text-decoration:none}.studio-mark{width:28px;height:28px;display:grid;place-items:center;background:var(--ink);color:var(--paper);border-radius:7px;box-shadow:0 1px 3px #181d1829}.studio-mark svg{width:15px;height:15px}.room-menu,.file-menu{position:relative}.room-menu>summary,.file-menu>summary{display:flex;align-items:center;gap:6px;cursor:pointer;min-height:32px;list-style:none;font-size:13.5px;font-weight:600;border-radius:var(--radius-sm);transition:background-color .14s ease,border-color .14s ease}.room-menu>summary{padding:4px 10px;background:#f5f6f2;border:1px solid var(--border)}.room-menu>summary:hover,.file-menu>summary:hover{background:var(--surface-2)}.room-menu>summary::-webkit-details-marker,.file-menu>summary::-webkit-details-marker{display:none}.file-menu>summary{width:34px;height:34px;justify-content:center;border:1px solid var(--border);background:var(--paper)}.menu-popover{position:absolute;top:calc(100% + 8px);left:0;width:244px;padding:6px;background:var(--paper);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 32px #181d1824,0 2px 6px #181d180f;z-index:50}.file-menu .menu-popover{left:auto;right:0;width:210px}.menu-popover>p{padding:6px 10px 4px;font-size:11.5px;font-weight:650;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.menu-popover button{display:flex;width:100%;justify-content:flex-start;padding:8px 10px;min-height:36px;gap:8px;text-align:left;font-size:13px;font-weight:500;border-radius:7px}.menu-popover button small{font-size:12px;margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}.menu-popover button.active{color:var(--accent);background:var(--accent-soft);font-weight:650}.studio-header .view-tabs{margin:0 auto;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;display:flex;align-items:center;gap:2px}.view-tabs button{padding:4px 12px;font-size:13px;font-weight:550;min-height:28px;border-radius:6px;color:var(--muted)}.view-tabs button svg{width:14px;height:14px}.view-tabs button.active{background:var(--paper);color:var(--ink);font-weight:650;box-shadow:0 1px 3px #181d181a,0 0 0 1px #181d180a}.studio-save{display:flex;align-items:center;gap:8px}.studio-save #save-state{font-size:12.5px;color:var(--muted);max-width:180px;display:flex;align-items:center;gap:5px;padding:4px 9px;background:#f5f6f2;border:1px solid var(--border);border-radius:99px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-save #save-state svg{width:13.5px;height:13.5px;color:var(--teal)}.studio-save .button{padding:6px 12px;min-height:34px;font-size:13px}.workspace{display:grid;grid-template-columns:236px minmax(0,1fr) 304px;gap:0;flex:1;min-height:0;overflow:hidden;max-width:none;margin:0;width:100%;align-items:stretch}.inventory,.inspector{position:relative;top:auto;height:auto;max-height:none;min-height:0;background:var(--paper);border-color:var(--border);overflow:auto}.inventory{display:flex;flex-direction:column;padding:0;grid-column:1;grid-row:1;border-right:1px solid var(--border)}.inspector{border-left:1px solid var(--border);padding:0;grid-column:3;grid-row:1}.panel-heading{padding:10px 14px;min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #ebede7}.panel-heading h2{font-size:13.5px;font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;gap:6px}.panel-heading h2 span{font-size:11.5px;font-weight:650;background:var(--surface-2);border-radius:99px;padding:1px 7px;color:var(--muted);font-variant-numeric:tabular-nums}.inventory .panel-heading .icon-button{margin-left:auto;background:#f5f6f2;border-color:var(--border)}.inventory .panel-heading .icon-button:hover{background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}.search{display:flex;align-items:center;gap:7px;margin:8px 10px 6px;padding:0 10px;min-height:34px;background:#f4f5f0;border:1px solid var(--border);border-radius:7px;color:var(--muted);transition:border-color .14s ease,background-color .14s ease}.search:focus-within{border-color:var(--accent);background:var(--paper)}.search input{width:100%;min-height:32px;border:0;background:transparent;outline:none;font-size:13px;color:var(--ink)}.search input::placeholder{color:#7c847b}.search svg{width:14px;height:14px}.list-tabs{display:grid;grid-template-columns:repeat(4,1fr);margin:0 10px 8px;padding:2px;gap:2px;background:var(--surface-2);border-radius:7px}.list-tabs button{font-size:12px;font-weight:550;padding:4px;min-height:26px;border-radius:5px;color:var(--muted)}.list-tabs button.active{background:var(--paper);color:var(--ink);font-weight:650;box-shadow:0 1px 2px #181d1814}.inventory-summary{font-size:12px;padding:6px 12px;border-block:1px solid var(--border);color:var(--muted);background:#f7f8f4;font-variant-numeric:tabular-nums}.inventory-list{display:block;flex:1;min-height:0;overflow:auto;padding:4px 6px 10px}.object-row-card{border:1px solid transparent;border-radius:7px;margin:2px 0;background:transparent;transition:background-color .12s ease,border-color .12s ease}.object-row-card:hover{background:#f5f6f1}.object-row-card.selected{border-color:#dba896;background:var(--accent-soft)}.object-row-head{display:flex;align-items:center;gap:2px;padding-right:4px;min-width:0}.object-row{width:100%;padding:6px 7px;gap:8px;min-height:46px;display:flex;align-items:center;text-align:left;justify-content:flex-start;border:1px solid transparent;border-radius:7px}.object-row.selected{border-color:#dba896;background:var(--accent-soft)}.object-row-card .object-row{margin:0;border:0;background:transparent;flex:1;min-width:0}.object-symbol{width:28px;height:28px;min-width:28px;display:grid;place-items:center;color:var(--item-color);background:#f2f4ef;border:1px solid rgba(24,29,24,.06);border-radius:6px;flex-shrink:0}.object-symbol svg{width:15px;height:15px;filter:brightness(.68)}.object-description{display:flex;min-width:0;flex:1;flex-direction:column;gap:1px}.object-description strong{font-size:13px;font-weight:600;white-space:normal;line-height:1.3;word-break:keep-all;color:var(--ink)}.object-description>span{font-size:11.5px;color:var(--muted);line-height:1.3;white-space:normal;font-variant-numeric:tabular-nums}.row-status{color:#8c948b;display:flex;align-items:center;flex-shrink:0}.row-status svg{width:13.5px;height:13.5px}.row-status.measured{color:var(--teal)}.row-action-btn{font-size:11.5px;font-weight:600;min-height:24px;padding:2px 7px;border-radius:5px;background:var(--paper);border:1px solid var(--border);color:var(--muted);flex-shrink:0}.row-action-btn.remove:hover:not(:disabled){background:#f9ebe7;border-color:#d9a796;color:var(--accent)}.row-action-btn.restore{background:var(--teal-soft);border-color:#9ec4bb;color:var(--teal)}.item-inline-actions{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0 7px 7px}.item-inline-actions button{font-size:12px;font-weight:600;border-color:var(--border);background:var(--paper);min-height:28px;padding:3px 6px;border-radius:6px}.item-inline-actions button svg{width:13px;height:13px}.item-inline-actions button.active{background:var(--teal);border-color:var(--teal);color:var(--paper)}.item-inline-actions button.remove-active{background:#7f544a;border-color:#7f544a;color:var(--paper)}.inventory-group{border:1px solid #e6e9e1;border-radius:8px;background:#fafaf7;margin:4px 2px;min-width:0}.inventory-group>summary{list-style:none;display:flex;gap:7px;align-items:center;padding:7px 8px;min-height:44px;font-size:13px;border-radius:7px}.inventory-group>summary::-webkit-details-marker{display:none}.inventory-group>summary:after,.inventory-group[open]>summary:after{content:none}.inventory-group>summary:hover{background:var(--surface-2)}.group-symbol{display:grid;place-items:center;color:var(--accent);width:24px;height:24px;background:var(--accent-soft);border-radius:6px;flex-shrink:0}.group-symbol svg{width:14px;height:14px}.group-label{flex:1;min-width:0;font-weight:600;word-break:keep-all;font-size:12.5px}.group-label b{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:700;background:var(--accent-soft);padding:0 5px;border-radius:99px;font-size:11.5px;margin-left:2px}.group-label small{display:block;font-size:11.5px;color:var(--muted);font-weight:400;margin-top:1px}.group-chevron{width:14px!important;color:var(--muted);transition:transform .14s ease}.inventory-group[open] .group-chevron{transform:rotate(180deg)}.group-actions{display:flex;gap:4px;padding:0 6px 6px}.group-actions button{flex:1;font-size:11.5px;font-weight:600;min-height:26px;background:var(--paper);border:1px solid var(--border);color:var(--ink);padding:3px 6px;border-radius:5px}.group-actions button:hover:not(:disabled){background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}.group-items{padding:0 4px 4px}.inventory-bottom{font-size:12px;padding:8px 12px;line-height:1.45;border-top:1px solid var(--border);color:var(--muted);background:#f8f9f5;flex-shrink:0;display:flex;align-items:flex-start;gap:6px}.inventory-bottom svg{width:14px;height:14px;margin-top:1px}.drawing{padding:0;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg);overflow:hidden;gap:0;grid-column:2;grid-row:1}.studio-context{height:42px;min-height:42px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--paper)}#area-chip{font-size:12.5px;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums;background:#f4f5f0;border:1px solid var(--border);padding:3px 9px;border-radius:6px}#area-chip span{font-size:12px;color:var(--muted);font-weight:500}#layout-btn{gap:6px;min-width:0;min-height:30px;padding:3px 10px;background:#fafaf7;border:1px solid var(--border);border-radius:7px;font-weight:600}#layout-btn:hover{background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}#layout-btn svg{width:14px;height:14px;color:var(--accent)}#layout-name{overflow:hidden;text-overflow:ellipsis;max-width:220px;white-space:nowrap;font-size:12.5px}#budget-chip{font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--teal);background:var(--teal-soft);padding:3px 9px;border-radius:99px;margin-right:auto}.compare-button{margin-left:auto;min-height:30px;padding:4px 10px;font-size:12.5px;font-weight:600;background:var(--paper);border:1px solid var(--border);border-radius:7px;color:var(--muted)}.compare-button svg{width:14px;height:14px}.compare-button.active{color:var(--accent);background:var(--accent-soft);border-color:#d9a796}.canvas-area{flex:1;min-height:0;height:auto;margin:0;border:0;border-radius:0;background:radial-gradient(circle at 50% 45%,#edf0e9,#e1e6dd);position:relative;overflow:hidden;isolation:isolate}#plan-stage,#scene-stage,#photo-stage{position:absolute;inset:0;min-height:0;width:100%;height:100%;overflow:hidden}#plan-stage{display:flex;align-items:center;justify-content:center;padding:38px 20px 68px;touch-action:none}#floor-plan{max-width:100%;max-height:100%;height:100%;width:100%;display:block;overflow:visible;transform-origin:center}.canvas-notice{position:absolute;top:12px;left:14px;right:auto;max-width:calc(100% - 28px);padding:4px 11px;border:1px solid rgba(208,214,202,.9);border-radius:99px;background:#fcfcfae0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #181d180d;z-index:2;pointer-events:none;display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:#3f493f}.canvas-notice svg{width:14px;height:14px;color:var(--accent)}.canvas-notice span{font-size:12.5px}.canvas-tools{position:absolute;bottom:14px;left:50%;transform:translate(-50%);display:flex;flex-wrap:nowrap;justify-content:flex-start;width:max-content;gap:2px;padding:4px;max-width:calc(100% - 24px);background:#fcfcfaf2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #cbd1c3;border-radius:11px;box-shadow:0 8px 24px #181d181a,0 1px 3px #181d180f;overflow-x:auto;z-index:4;white-space:nowrap}.canvas-tools button{min-width:32px;min-height:32px;padding:5px 8px;font-size:12.5px;font-weight:550;flex-shrink:0;border-radius:7px;color:var(--ink)}.canvas-tools button svg{width:15px;height:15px}.canvas-tools button.active{background:var(--accent-soft);color:var(--accent);border-color:#e4b6a6;font-weight:650}.canvas-tools .tool-divider{margin:4px 3px;height:22px;width:1px;background:var(--border);flex-shrink:0}.zoom-label{font-size:12.5px;font-weight:650;font-variant-numeric:tabular-nums;min-width:42px;align-self:center;text-align:center;color:var(--ink)}.drawing-bottom{display:flex;justify-content:space-between;gap:12px;min-height:28px;padding:4px 16px;border-top:1px solid var(--border);background:var(--paper);font-size:12.5px;line-height:1.3;align-items:center;color:var(--muted);margin:0}.drawing-bottom>span:first-child{display:flex;align-items:center;gap:6px}.drawing-bottom svg{width:13.5px;height:13.5px;color:var(--accent)}.drawing-bottom b{font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}#view-help{font-size:12px}.layer-controls{margin:0;padding:5px 16px;min-height:28px;display:flex;align-items:center;gap:16px;font-size:12.5px;color:var(--muted);background:#f6f7f3;border-top:1px solid #e4e8de}.layer-controls label{display:flex;align-items:center;gap:6px;cursor:pointer;font-weight:500}.layer-controls input{width:14px;height:14px;margin:0}.inspector-body{padding:12px 14px 20px}.selected-title{display:flex;align-items:center;gap:10px;padding:0;margin:0 0 12px}.selected-title h3{font-size:15px;font-weight:700;line-height:1.35;word-break:keep-all}.large-symbol{width:38px;height:38px;flex-shrink:0;display:grid;place-items:center;border-radius:9px;background:#f2f4ef;border:1px solid var(--border);color:var(--accent)}.large-symbol svg{width:20px;height:20px}.measurement-tag{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:var(--warning);margin-top:3px;background:#f8f1e4;border:1px solid #ead8ba;padding:1px 7px;border-radius:99px}.measurement-tag svg{width:12px;height:12px}.measurement-tag.confirmed{color:var(--teal);background:var(--teal-soft);border-color:#b8d8d0}.retain-options{display:flex;margin:10px 0 12px;gap:3px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.retain-options button{width:50%;min-height:30px;font-size:12.5px;font-weight:600;border-radius:6px;color:var(--muted)}.retain-options button svg{width:14px;height:14px}.retain-options button.active{background:var(--paper);color:var(--teal);box-shadow:0 1px 2px #181d1814}.retain-options button.remove-active{background:#7f544a;color:var(--paper)}.rotation-panel{margin:0 0 14px;padding:10px;background:#f7f8f4;border:1px solid var(--border);border-radius:9px;display:flex;flex-direction:column;gap:7px}.rotation-header{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;font-weight:650;color:var(--ink)}.rotation-header>span{display:flex;align-items:center;gap:5px}.rotation-header svg{width:14px;height:14px;color:var(--accent)}.rotation-header strong{font-variant-numeric:tabular-nums;color:var(--accent);background:var(--accent-soft);padding:1px 7px;border-radius:99px;font-size:12.5px}.rotation-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.rotation-steps button{font-size:12px;font-weight:650;min-height:28px;padding:3px 4px;border-radius:6px;background:var(--paper);border:1px solid var(--border);font-variant-numeric:tabular-nums}.rotation-steps button:hover:not(:disabled){background:var(--accent-soft);border-color:#d9a796;color:var(--accent)}.rotation-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.rotation-presets button{min-height:24px;padding:2px 3px;font-size:11px;font-weight:550;background:transparent;border:1px solid #d5dbd0;border-radius:5px;color:var(--muted);font-variant-numeric:tabular-nums}.rotation-presets button.active{background:var(--accent);border-color:var(--accent);color:var(--paper);font-weight:650}.rotation-slider-row{display:flex;align-items:center;padding-top:2px}.rotation-slider-row input[type=range]{width:100%;height:20px;cursor:pointer;margin:0}.inspector h4{display:flex;align-items:center;justify-content:space-between;margin:12px 0 6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--muted)}.inspector h4>span{font-size:11.5px;font-weight:500}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;font-size:12px;font-weight:550;color:var(--muted);min-width:0}.field>span:first-child{font-size:12px}.field>input,.field>select,.input-unit{border:1px solid var(--border);background:#f7f8f4;min-height:34px;border-radius:7px;color:var(--ink);width:100%;transition:border-color .14s ease,background-color .14s ease}.field>input:focus,.field>select:focus,.input-unit:focus-within{background:var(--paper);border-color:var(--accent);outline:2px solid rgba(184,68,33,.16);outline-offset:0}.field>input,.field>select{padding:5px 9px;font-size:13px;font-weight:550}.input-unit{display:flex;align-items:center;padding-right:8px;gap:4px;overflow:hidden}.input-unit input{width:100%;padding:4px 8px;border:0;background:transparent;min-height:32px;font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink)}.input-unit input:focus{outline:none}.input-unit>span{color:var(--muted);font-size:11.5px;font-weight:500}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.field-grid .field{margin-bottom:4px}.field input[type=color]{padding:2px;width:100%;min-height:34px;cursor:pointer}.volume-line{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--muted);padding:6px 9px;margin-top:4px;background:#f5f6f2;border-radius:6px}.volume-line strong{font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}.check-label{display:flex;align-items:center;gap:7px;margin:12px 0;font-size:13px;line-height:1.45;color:var(--ink);cursor:pointer}.check-label input{width:15px;height:15px;flex-shrink:0}.form-error{font-size:12.5px;color:var(--danger);margin-top:8px;line-height:1.45}.form-error:empty{display:none}details>summary{cursor:pointer;font-size:13px;min-height:34px;align-content:center;font-weight:650;color:var(--ink);list-style:none}details>summary::-webkit-details-marker{display:none}.position-fields,.product-details,.finish-panel,.validation-panel{border-top:1px solid var(--border);margin-top:12px;padding-top:8px}.position-fields>summary,.product-details>summary,.finish-panel>summary,.validation-panel>summary{display:flex;gap:7px;align-items:center;font-size:13px;min-height:32px;padding:4px 0}.position-fields>summary:after,.product-details>summary:after,.finish-panel>summary:after,.validation-panel>summary:after{content:"+";margin-left:auto;font-size:16px;font-weight:500;color:var(--muted)}details[open]>summary:after{content:"−"}.finish-panel summary>svg,.validation-panel summary>svg{width:15px;height:15px;color:var(--muted)}.finish-fields{padding-top:8px}.color-field{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:13px}.color-field input{width:56px;height:32px;background:var(--paper);border:1px solid var(--border);border-radius:6px;padding:2px}.validation-panel p,.validation-panel li{font-size:12.5px;color:var(--muted);line-height:1.5;margin:5px 0}.validation-panel ul{padding-left:16px;margin:4px 0}.validation-panel summary>span{color:var(--warning);background:#f8f1e4;padding:1px 6px;border-radius:99px;font-size:11.5px;font-variant-numeric:tabular-nums}.field-note,.object-note,.fixed-info p{font-size:12.5px;color:var(--muted);line-height:1.55}.object-note{margin-top:8px}.field-note{margin:6px 0 10px}.fixed-info{padding:12px;background:#f4f6f1;border:1px solid var(--border);border-radius:8px;margin-bottom:14px}.fixed-info>svg{display:block;margin-bottom:6px;color:var(--teal)}.fixed-info strong{display:block;font-size:13.5px}.fixed-info p{margin-top:4px}.evidence-photo{width:100%;height:116px;overflow:hidden;position:relative;padding:0;margin-top:14px;border-radius:8px;border:1px solid var(--border)}.evidence-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}.evidence-photo>span{position:absolute;bottom:0;left:0;right:0;padding:5px 10px;background:#181d18d1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#f8f9f5;font-size:12px;font-weight:550;display:flex;align-items:center;justify-content:space-between}.evidence-photo svg{width:14px;height:14px}.product-evidence{margin:12px 0}#camera-panel{padding:0 14px 16px;margin:0;border-bottom:0}#camera-details{border-top:1px solid var(--border);padding-top:8px}#camera-details>summary{padding:6px 0;font-size:13px;color:var(--ink);min-height:32px}#camera-details>summary>span{display:none}.camera-presets{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.camera-sliders{grid-template-columns:1fr 1fr;gap:10px}.camera-body p{font-size:12.5px}.web-save-notice{flex-shrink:0;font-size:13px;padding:8px 16px;margin:0;border-radius:0;background:#fcf1de;border:0;border-bottom:1px solid #dfc89f;z-index:9}.web-save-notice p{margin:0}#web-save-conflict-actions{display:flex;gap:8px}#layout-dialog{width:min(980px,calc(100vw - 32px));max-width:min(980px,calc(100vw - 32px))}#purchase-banner{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;border:0;background:transparent}#purchase-banner>div>strong,#purchase-banner>div>p{display:none}.v2-preset-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.v2-preset-btn{padding:12px 14px;white-space:normal;line-height:1.45;min-height:58px;text-align:left;justify-content:flex-start;font-size:13px;font-weight:600;border-radius:9px;background:#f5f6f2;border:1px solid var(--border);color:var(--ink)}.v2-preset-btn:hover:not(:disabled){border-color:#d9a796;background:#faf5f2}.v2-preset-btn.active,.v2-preset-btn.active:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.v2-floor-toggle{grid-column:1 / -1;min-height:40px;justify-content:center}.purchase-entry-actions{display:flex;gap:8px;flex-wrap:wrap}#layout-preview{margin-top:16px;display:grid;grid-template-columns:1fr 220px;gap:20px;align-items:center;background:#f3f5ef;border:1px solid var(--border);padding:16px;border-radius:10px}#layout-preview:empty{display:none}#layout-preview svg{max-height:320px;width:100%}#layout-preview p{font-size:13px;color:var(--muted);margin:8px 0}#layout-preview strong{font-size:18px;font-weight:700}.layout-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.layout-footer p{font-size:13px;color:var(--muted);max-width:460px}#help-dialog{width:min(560px,calc(100vw - 32px))}#help-dialog li{margin-bottom:12px;font-size:13.5px;line-height:1.5}#help-dialog>p{font-size:13.5px;color:var(--muted)}.mobile-nav,.drawer-close{display:none}@media(min-width:1101px)and (max-width:1350px){.workspace{grid-template-columns:212px minmax(0,1fr) 280px}.studio-brand>span:last-child{display:none}.studio-header{gap:12px}.canvas-tools button{padding:5px 6px;gap:4px}.canvas-tools button span,#budget-chip{display:none}}@media(max-width:1100px){.studio-brand>span:last-child{display:none}.studio-header{gap:10px;padding:0 12px}.studio-save #save-state{display:none}.workspace{grid-template-columns:212px minmax(0,1fr)}.inspector{position:absolute;right:12px;top:104px;bottom:64px;width:300px;z-index:15;border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 36px #181d182e;display:none}.workspace[data-panel=inspector] .inspector{display:block}.drawer-close{display:flex;position:absolute;right:8px;top:8px;width:32px;min-height:32px;z-index:3}.inspector .panel-heading{padding-right:44px}.mobile-nav{display:flex;justify-content:center;gap:10px;min-height:44px;flex-shrink:0;border-top:1px solid var(--border);background:var(--paper)}.mobile-nav button{font-size:13px;font-weight:600;gap:6px;padding:5px 14px}.mobile-nav button.active{color:var(--accent);background:var(--accent-soft)}.inventory .drawer-close,#budget-chip{display:none}}@media(max-width:767px){.studio-header{height:46px;gap:6px;padding:0 10px}.studio-brand{display:none}.room-menu>summary{border:0;padding:2px 6px;background:transparent;font-size:13.5px}.studio-header .view-tabs{padding:2px;margin:auto}.view-tabs button{min-height:30px;padding:4px 8px}.view-tabs button span{font-size:13px}.view-tabs svg{display:none}.studio-save{gap:4px}.studio-save .button{width:34px;height:34px;min-height:34px;padding:6px}.studio-save .button>span{display:none}.file-menu>summary{width:32px;height:32px;min-height:32px}.workspace{display:flex;flex:1;min-height:0;position:relative}.drawing{flex:1;width:100%;height:100%}.studio-context{height:38px;min-height:38px;padding:0 10px;gap:6px}#area-chip{display:none}#layout-btn{max-width:calc(100% - 104px);font-size:13px;min-height:28px;padding:2px 8px}#layout-name{max-width:175px;font-size:13px}.compare-button{font-size:12.5px;min-height:28px;padding:2px 8px;gap:4px}.compare-button svg{width:14px}.inventory,.inspector{position:absolute;inset:auto 8px 8px;width:auto;height:min(66dvh,540px);max-height:calc(100% - 24px);z-index:15;border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 14px 36px #181d183d;display:none}.workspace[data-panel=inventory] .inventory{display:flex}.workspace[data-panel=inspector] .inspector{display:block}.inventory .drawer-close{display:flex}.inventory .panel-heading{padding-right:44px}.inspector{padding-top:0}.panel-heading{min-height:48px}.mobile-nav{padding:3px 8px max(3px,env(safe-area-inset-bottom));gap:4px;min-height:48px;justify-content:space-around}.mobile-nav button{flex:1;flex-direction:column;gap:2px;padding:3px;min-height:40px;font-size:12px;border-radius:8px}.mobile-nav svg{width:16px;height:16px}.canvas-notice{font-size:12px;top:8px;left:10px;right:auto;max-width:calc(100% - 20px)}.canvas-notice span{display:none}#plan-stage{padding:36px 10px 68px}.drawing-bottom{font-size:12px;padding:3px 10px;min-height:24px}.drawing-bottom .desktop-only,#view-help{display:none}.layer-controls{font-size:12px;padding:3px 10px;gap:10px;min-height:24px}.canvas-tools{bottom:8px;max-width:calc(100% - 16px);width:calc(100% - 16px);padding:3px;flex-wrap:wrap;justify-content:center}.canvas-tools button{min-height:34px;min-width:34px;font-size:12.5px;padding:4px 6px}.canvas-tools [data-tool=rotate-left],.canvas-tools [data-tool=rotate-right],.canvas-tools [data-tool=eye],.canvas-tools [data-tool=overview]{display:none}.canvas-tools .tool-divider{margin:3px 2px}.canvas-tools [data-tool=toggle-remove] span{display:none}.zoom-label{min-width:32px;font-size:12px}.web-save-notice{font-size:12.5px;padding:6px 10px;max-height:140px;overflow:auto}.web-save-notice button{font-size:12.5px;white-space:normal;padding:5px 9px}.toast{bottom:112px;font-size:13px}.object-row{min-height:48px}.row-action-btn,.list-tabs button{min-height:32px}.retain-options button,.rotation-steps button{min-height:36px}dialog{padding:18px;max-height:88dvh}.dialog-heading h2{font-size:18px}.v2-preset-bar{grid-template-columns:1fr 1fr}#layout-preview{grid-template-columns:1fr;padding:10px}#layout-preview>div{padding:6px}#layout-preview svg{max-height:240px}.layout-footer{align-items:stretch;flex-direction:column;gap:10px}.layout-footer .button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.fullscreen-bar{display:none}.drawing.is-fullscreen{position:fixed;inset:0;z-index:900;width:100vw;height:100dvh;grid-column:auto;grid-row:auto}.drawing.is-fullscreen:fullscreen{width:100%;height:100%}.drawing.is-fullscreen .studio-context,.drawing.is-fullscreen .drawing-bottom{display:none}.drawing.is-fullscreen .fullscreen-bar{position:absolute;top:max(12px,env(safe-area-inset-top));left:12px;right:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:8px;pointer-events:none}.fullscreen-bar>*{pointer-events:auto}.fullscreen-views,.fullscreen-exit{display:inline-flex;align-items:center;gap:2px;padding:4px;background:#fcfcfaf2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #cbd1c3;border-radius:var(--radius-lg);box-shadow:0 6px 18px #181d181f}.fullscreen-views button,.fullscreen-exit{min-height:34px;padding:0 12px;border:0;border-radius:var(--radius);background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.fullscreen-views button.active{background:var(--ink);color:var(--paper)}.fullscreen-exit{gap:6px;padding:0 14px}.fullscreen-exit svg{width:16px;height:16px}.fullscreen-views button:focus-visible,.fullscreen-exit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drawing.is-fullscreen .layer-controls{position:absolute;top:64px;right:12px;z-index:5;padding:4px 10px;border:1px solid #cbd1c3;border-radius:var(--radius-lg);background:#fcfcfaf2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.drawing.is-fullscreen .canvas-notice{top:60px}body.canvas-fullscreen{overflow:hidden}body.canvas-fullscreen .mobile-nav{display:none}@media(max-width:640px){.fullscreen-views button{padding:0 9px}.fullscreen-exit span{display:none}}
