:root{--surface:#fff;--surface-subtle:#f4f5f7;--canvas:#e9ecf0;--ink:#202630;--muted:#606a79;--line:#d8dde5;--accent:#245dcc;--accent-soft:#eaf0fd;--success:#2c7655;--success-soft:#eef7f1;--warning:#8a6118;--warning-soft:#fff6e1;--danger:#b13f3f;--radius:6px;--backdrop:#141c2a6b;--shadow-overlay:0 12px 40px #141c2a29;color:var(--ink);background:var(--surface-subtle);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}.floor-plan-loading,.property-onboarding{place-content:center;min-height:100vh;padding:2rem;display:grid}.property-onboarding>section{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(100%,28rem);padding:2rem}h1,h2,p{margin:0}button,input,select,textarea{font:inherit}textarea{resize:vertical;min-height:5.5rem}button{border-radius:var(--radius);min-height:44px;color:inherit;background:var(--surface);cursor:pointer;border:1px solid #0000;padding:.55rem .85rem}button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}input,select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-height:44px;padding:.55rem .7rem}label{color:var(--muted);gap:.35rem;font-size:.9rem;font-weight:650;display:grid}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:750}.stack-form,.room-create-form{gap:1rem;margin-top:1.5rem;display:grid}.property-editor{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-subtle);gap:.7rem;padding:.9rem;display:grid}.danger-action{border-color:var(--line);color:var(--danger);background:var(--warning-soft);font-weight:700}.primary-action{border-color:var(--accent);color:var(--surface);background:var(--accent);font-weight:700}.secondary-action{border-color:var(--line);font-weight:700}.form-error,.canvas-error{color:var(--danger);font-size:.9rem}.floor-plan-shell{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(190px,260px) minmax(0,1fr) minmax(220px,300px);min-height:100vh;display:grid;overflow:hidden}.room-pane,.inspector-pane{background:var(--surface);flex-direction:column;gap:1rem;min-height:0;padding:1.25rem;display:flex}.room-pane{border-right:1px solid var(--line)}.inspector-pane{border-left:1px solid var(--line)}.pane-heading{gap:.7rem;display:grid}.pane-heading h1{font-size:1.25rem}.room-list{gap:.4rem;min-height:0;display:grid;overflow-y:auto}.room-list-item{text-align:left;border-color:#0000;grid-template-columns:auto 1fr;align-items:center;gap:.5rem;width:100%;display:grid}.room-list-item small{color:var(--muted);grid-column:2}.room-list-item.selected{border-color:var(--accent);background:var(--accent-soft)}.room-status{color:var(--muted);font-size:1.25rem}.room-create-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-subtle);padding:.9rem}.form-actions,.choice-row{gap:.5rem;display:flex}.form-actions>*{flex:1}.plan-pane{background:var(--surface-subtle);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;position:relative}.canvas-controls{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-overlay);gap:.25rem;padding:.25rem;display:flex;position:absolute;bottom:1rem;right:1rem}.canvas-controls button{border-color:#0000;min-width:44px;font-weight:650}.canvas-controls .zoom-level{min-width:62px;color:var(--muted);font-variant-numeric:tabular-nums}.canvas-controls .snap-toggle{border-left:1px solid var(--line);border-radius:0 var(--radius) var(--radius) 0;color:var(--muted);margin-left:.25rem;font-size:.8rem}.canvas-controls .snap-toggle[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.plan-history{gap:.25rem;margin-left:auto;display:flex}.plan-history button{border-color:var(--line);min-width:44px;color:var(--muted);font-size:1rem}.resize-handle rect{fill:var(--surface);stroke:var(--accent);stroke-width:2px;vector-effect:non-scaling-stroke}.resize-hit{fill:#0000;stroke:none;cursor:nwse-resize}.snap-guide{stroke:var(--accent);stroke-dasharray:6 5;stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:none}.gap-dimension{pointer-events:none}.gap-line,.gap-tick{stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.gap-label{fill:var(--accent);font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--surface);stroke-width:5px;stroke-linejoin:round;vector-effect:non-scaling-stroke;font-weight:650}.wall-elevation{gap:.4rem;margin:0;display:grid}.wall-elevation figcaption{color:var(--muted);font-size:.7rem;font-weight:650}.wall-elevation svg{background:var(--surface-subtle);border-radius:var(--radius);width:100%;height:auto}.elevation-wall{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px;vector-effect:non-scaling-stroke}.elevation-wall.assumed{stroke-dasharray:5 4}.elevation-floor{stroke:var(--ink);stroke-width:3px;vector-effect:non-scaling-stroke}.elevation-item{cursor:pointer}.elevation-item rect{stroke-width:1.5px;vector-effect:non-scaling-stroke}.elevation-item.door rect{fill:var(--surface-subtle);stroke:var(--muted)}.elevation-item.window rect{fill:var(--accent-soft);stroke:var(--accent)}.elevation-item.utility rect{fill:var(--warning-soft);stroke:var(--warning)}.elevation-item.assumed rect{stroke-dasharray:5 4}.elevation-item text{fill:var(--muted);font-variant-numeric:tabular-nums;pointer-events:none}.elevation-item.assumed text{font-style:italic}.notch-editor{border:1px solid var(--line);border-radius:var(--radius);gap:.5rem;margin:0;padding:.6rem .7rem .7rem;display:grid}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;display:grid}.choice-grid button{border-color:var(--line);font-size:.8rem}.choice-grid button.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);font-weight:650}.notch-editor label{grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:.5rem}.notch-handle circle{fill:var(--surface);stroke:var(--accent);stroke-width:2px;vector-effect:non-scaling-stroke}.notch-handle .resize-hit{fill:#0000;stroke:none;cursor:move}.gap-editor{border:1px solid var(--line);border-radius:var(--radius);gap:.5rem;margin:0;padding:.6rem .7rem .7rem;display:grid}.gap-editor label{grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:.5rem}.gap-editor span{overflow-wrap:anywhere}.plan-caption{min-height:3.5rem;color:var(--muted);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 1rem;font-size:.9rem;display:flex}.plan-caption button{min-height:38px}.floor-plan-canvas{touch-action:none;width:100%;height:100%;min-height:480px;color:var(--muted)}.canvas-grid{fill:url(#grid)}.room-drawing{cursor:grab}.room-drawing:active{cursor:grabbing}.room-fill{fill:var(--surface);stroke:none}.room-drawing.selected .room-fill{fill:var(--surface-subtle)}.wall-line{stroke:var(--ink);stroke-linecap:round;stroke-width:120px}.room-label{fill:var(--ink);pointer-events:none;font-weight:700}.door-drawing,.window-line,.utility-marker{cursor:pointer}.door-line{stroke:var(--danger);stroke-linecap:round;stroke-width:72px}.door-arc{fill:none;stroke:var(--danger);stroke-dasharray:74 54;stroke-width:38px}.door-drawing.selected .door-line,.door-drawing.selected .door-arc{stroke:var(--danger)}.window-line{stroke:var(--accent);stroke-linecap:round;stroke-width:130px}.utility-marker text{fill:var(--warning);pointer-events:none;font-weight:800}.utility-marker.selected rect{stroke:var(--warning);stroke-width:3px}.empty-plan-label{fill:var(--muted)}.canvas-error{margin:.5rem 1rem .75rem}.empty-inspector,.inspector-content{align-content:start;gap:1rem;display:grid}.checklist-panel{border-top:1px solid var(--line);gap:.85rem;min-height:0;margin-top:.4rem;padding-top:1rem;display:grid}.checklist-heading,.measurement-header,.summary-header{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.checklist-heading h2{margin-top:.2rem}.checklist-heading button{min-height:40px}.completion-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-subtle);grid-template-columns:auto 1fr;gap:.15rem .65rem;padding:.8rem;display:grid}.completion-card>strong{color:var(--accent);grid-row:span 2;align-self:center;font-size:1.55rem}.completion-card>span{font-size:.88rem;font-weight:700}.completion-card>small{color:var(--muted)}.completion-breakdown{flex-wrap:wrap;grid-column:1/-1;gap:.35rem;margin-top:.45rem;display:flex}.completion-breakdown span{color:var(--muted);background:var(--accent-soft);border-radius:999px;padding:.18rem .38rem;font-size:.72rem;font-weight:700}.checklist-actions{gap:.5rem;display:flex}.checklist-actions>*{border-color:var(--line);flex:1;font-weight:700}.checklist-actions button.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.checklist-list{gap:.35rem;max-height:min(35vh,340px);display:grid;overflow-y:auto}.checklist-item{border-color:var(--line);text-align:left;grid-template-columns:auto 1fr;gap:.6rem;width:100%;min-height:54px;display:grid}.checklist-item.complete{color:var(--success);background:var(--success-soft)}.checklist-item.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.checklist-state{color:var(--accent);align-self:center;font-size:1.25rem}.checklist-item.complete .checklist-state{color:var(--success)}.checklist-copy{gap:.12rem;display:grid}.checklist-copy small{color:var(--muted);font-size:.75rem}.empty-checklist{color:var(--muted);font-size:.9rem}.checklist-add{border-color:var(--line);font-weight:700}.checklist-add-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-subtle);gap:.75rem;padding:.75rem;display:grid}.checkbox-label{align-items:center;gap:.5rem;display:flex}.checkbox-label input{width:1.15rem;min-height:1.15rem}.empty-inspector h2,.inspector-content h2{font-size:1.2rem}.empty-inspector p,.inspector-help{color:var(--muted);font-size:.92rem;line-height:1.5}fieldset{border:0;gap:.5rem;min-width:0;margin:0;padding:0;display:grid}legend{color:var(--muted);margin-bottom:.45rem;font-size:.9rem;font-weight:650}.choice-row button{border-color:var(--line);flex:1}.choice-row button.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);font-weight:750}dl{gap:.6rem;margin:0;display:grid}dl div{justify-content:space-between;display:flex}dt{color:var(--muted)}dd{margin:0;font-weight:700}.quick-add-toolbar{padding:.65rem max(1rem, env(safe-area-inset-right)) max(.65rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--surface);grid-column:1/-1;gap:.5rem;display:flex;overflow-x:auto}.quick-add-toolbar button{border-color:var(--line);flex:none;font-weight:650}body{min-width:320px;font-size:14px}button{border-radius:var(--radius);min-width:44px}input,select,textarea{border-radius:var(--radius);min-width:0;font-size:16px}select{height:44px}summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;list-style:none;display:flex}summary:after{content:"+";color:var(--muted);margin-left:auto}details[open]>summary:after{content:"−"}summary:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.floor-plan-shell{grid-template-rows:57px minmax(0,1fr) auto;grid-template-columns:212px minmax(0,1fr) 292px;height:100dvh;min-height:0}.workspace-header{background:var(--surface);border-bottom:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding:0 20px;display:flex}.workspace-brand{letter-spacing:-.02em;align-items:center;gap:10px;display:flex}.brand-mark{width:28px;height:28px;color:var(--surface);background:var(--ink);border-radius:5px;place-items:center;font-size:25px;display:grid}.workspace-context{border-left:1px solid var(--line);color:var(--muted);letter-spacing:0;margin-left:8px;padding-left:18px;font-size:12px}.sync-indicator{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.sync-indicator small{border-left:1px solid var(--line);padding-left:6px}.sync-indicator.error{color:var(--danger)}.sync-indicator.syncing{color:var(--accent)}.sync-indicator.offline,.sync-indicator.signed-out{color:var(--muted)}.sync-retry{border-color:var(--line);color:var(--ink);padding-inline:10px;font-size:11px;font-weight:650}.account-control{align-items:center;gap:8px;display:flex;position:relative}.account-control>button{border-color:var(--line);padding-inline:12px;font-size:12px;font-weight:650}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;color:var(--muted);font-size:12px;font-weight:650;overflow:hidden}.account-form{z-index:30;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(300px,90vw);box-shadow:var(--shadow-overlay);text-align:left;gap:10px;padding:14px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.account-form label{gap:6px;font-size:11px}.account-form .choice-row button{border-color:var(--line);flex:1;font-size:12px}.account-form .choice-row button.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);font-weight:650}.account-help{color:var(--muted);font-size:11px}.room-pane,.inspector-pane{overscroll-behavior:contain;gap:14px;min-width:0;padding:16px;overflow-y:auto}.room-pane{background:var(--surface-subtle)}.pane-heading{gap:10px}.pane-heading h1{overflow-wrap:anywhere;margin-top:5px;font-size:18px}.eyebrow{letter-spacing:.07em;font-size:10px}.property-details{border-bottom:1px solid var(--line);font-size:12px}.property-editor{background:0 0;border:0;padding:0 0 12px}.room-list-heading{color:var(--muted);justify-content:space-between;font-size:11px;font-weight:650;display:flex}.room-list{flex-shrink:0;gap:3px;margin-inline:-6px;overflow:visible}.room-list-item{border-radius:var(--radius);gap:2px 8px;min-height:66px;padding:9px;font-size:13px}.room-list-item.selected{color:var(--accent);background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent);border-color:#0000}.room-list-item small{font-size:11px}.room-status{color:var(--muted);grid-row:span 3;font-size:17px}.room-status.complete{color:var(--success)}.room-list-item .room-missing{color:var(--warning)}.room-create-form{gap:10px;margin:0;padding:10px}.plan-pane{background:var(--canvas)}.plan-caption{border-bottom:1px solid var(--line);align-items:center;min-height:64px;padding:10px 20px;font-size:11px}.plan-caption p{margin-top:5px}.plan-caption button,.checklist-heading button,.photo-detail-heading button{min-height:44px}.floor-plan-canvas{min-height:0;color:var(--muted);display:block}.canvas-controls{gap:2px;padding:3px;bottom:14px;right:14px}.canvas-controls button{padding-inline:8px;font-size:13px}.gap-editor,.notch-editor{font-size:11px}.gap-editor legend,.notch-editor legend{color:var(--muted);font-size:11px;font-weight:650}.notch-editor .choice-grid button{min-height:44px}.room-fill{stroke:var(--line);stroke-width:2px;vector-effect:non-scaling-stroke}.room-drawing.selected .room-fill{fill:var(--accent-soft);stroke:var(--accent);stroke-width:3px}.wall-line{stroke:var(--ink);stroke-linecap:square;stroke-width:6px;vector-effect:non-scaling-stroke}.wall-line.active{stroke:var(--accent);stroke-width:9px}.room-label{font-weight:650}.room-dimension{fill:var(--muted);font-variant-numeric:tabular-nums;pointer-events:none}.door-line,.door-arc{stroke:var(--muted)}.door-arc{stroke-dasharray:none}.hinge-dot{fill:var(--muted)}.door-drawing.selected .door-line,.door-drawing.selected .door-arc{stroke:var(--accent);stroke-width:4px;vector-effect:non-scaling-stroke}.door-drawing.selected .hinge-dot{fill:var(--accent)}.object-hit-line{stroke:#0000;stroke-width:44px;vector-effect:non-scaling-stroke}.window-line{stroke:var(--muted);stroke-width:9px;vector-effect:non-scaling-stroke}.window-line.selected{stroke:var(--accent);stroke-width:12px}.utility-marker rect{fill:var(--surface);stroke:var(--muted);stroke-width:2px;vector-effect:non-scaling-stroke}.utility-marker text{fill:var(--ink)}.utility-marker.selected rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:3px}.inspector-content,.empty-inspector{gap:10px}.inspector-content h2,.empty-inspector h2{font-size:17px}.inspector-help,.empty-inspector p,.inspector-content label,legend{font-size:11px}.inspector-content .danger-action{background:var(--surface);border-color:var(--line);font-size:12px;font-weight:500}.checklist-panel{flex-shrink:0;gap:12px;margin:0;padding-top:16px}.checklist-heading h2{font-size:16px}.checklist-heading button{padding-inline:10px;font-size:12px}.completion-card{background:0 0;border:0;border-radius:0;padding:10px 0}.completion-card>strong{letter-spacing:-.03em;font-size:27px}.completion-card>span{font-size:12px}.completion-card>small{font-size:11px}.completion-breakdown span{background:0 0;border-radius:0;padding:3px 0;font-size:11px}.completion-breakdown span:first-child{color:var(--warning)}.completion-breakdown span+span:before{content:"·";padding-right:5px}.checklist-actions{gap:6px}.checklist-actions button{white-space:nowrap;padding:7px 6px;font-size:11px}.checklist-list{gap:0;max-height:none;overflow:visible}.checklist-item{border:0;border-bottom:1px solid var(--line);border-radius:0;min-height:68px;padding:10px 8px;font-size:13px}.checklist-item.required:not(.complete){border-left:2px solid var(--warning)}.checklist-item.recommended:not(.complete){border-left:2px solid var(--line)}.checklist-item.active{box-shadow:inset 3px 0 var(--accent);background:var(--accent-soft)}.checklist-item.complete{background:0 0}.checklist-item.complete.active{background:var(--accent-soft)}.checklist-state{color:var(--warning);font-size:16px}.checklist-item.recommended .checklist-state{color:var(--muted)}.checklist-copy{gap:4px;min-width:0}.checklist-copy strong{overflow-wrap:anywhere;font-weight:600}.checklist-copy small{font-size:11px;line-height:1.5}.checklist-link{display:block}.checklist-add{font-size:12px}.checkbox-label{min-height:44px}.checkbox-label input{width:20px;min-width:20px}.quick-add-toolbar{padding:8px 16px max(8px, env(safe-area-inset-bottom));align-items:center;gap:8px;position:relative;overflow:visible}.quick-add-toolbar button{padding-inline:13px;font-size:12px}.quick-add-context{flex-shrink:0;width:180px;font-size:12px;font-weight:650}.quick-add-context small{color:var(--muted);padding-top:3px;font-size:10px;font-weight:400;display:block}.utility-tools{position:relative}.utility-popover{z-index:4;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-overlay);grid-template-columns:repeat(2,minmax(100px,1fr));gap:4px;padding:8px;display:grid;position:absolute;bottom:calc(100% + 16px);right:0}.inspector-trigger,.inspector-mobile-heading,.inspector-backdrop,.mobile-navigation,.mobile-room-select{display:none}.property-onboarding>section,.measurement-card,.measurement-actions{box-shadow:none}.summary-hero{background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line);border-radius:0}.summary-hero>strong{color:var(--accent)}.summary-hero p{color:var(--muted)}.summary-card{border-radius:var(--radius)}@media (width<=1100px) and (width>=1024px){.floor-plan-shell{grid-template-columns:186px minmax(0,1fr) 272px}.room-pane,.inspector-pane{padding:12px}}@media (width<=1023px){.floor-plan-shell{grid-template-columns:200px minmax(0,1fr)}.inspector-pane{display:none}.inspector-trigger{border-color:var(--line);font-size:12px;display:block}.inspector-open .inspector-pane{z-index:20;width:min(360px,90vw);box-shadow:var(--shadow-overlay);display:flex;position:fixed;inset:0 0 0 auto}.inspector-open .inspector-backdrop{z-index:19;background:var(--backdrop);border:0;border-radius:0;width:100%;display:block;position:fixed;inset:0}.inspector-mobile-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.quick-add-context{width:168px}}@media (width<=767px){.floor-plan-shell{grid-template-rows:52px auto minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr)}.workspace-header{padding-inline:12px}.workspace-brand{gap:7px;font-size:13px}.workspace-context{display:none}.sync-indicator{gap:4px;font-size:10px}.sync-indicator small{font-size:10px}.room-pane{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:8px;max-height:34dvh;padding:10px 12px;display:grid}.pane-heading{display:none}.property-details{grid-column:1/-1}.property-details:not([open]),.room-list,.room-list-heading{display:none}.mobile-room-select{display:block}.room-create-form{grid-column:1/-1}.room-pane>.secondary-action{grid-area:1/2}.mobile-room-select{grid-area:1/1}.mobile-navigation{padding:6px 10px max(6px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);grid-column:1/-1;gap:4px;display:flex}.mobile-navigation button{flex:1;font-size:12px}.mobile-navigation button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);font-weight:700}.mobile-checklist .plan-pane,.mobile-checklist .quick-add-toolbar{display:none}.mobile-checklist:not(.inspector-open) .inspector-pane{border:0;display:flex}.mobile-checklist:not(.inspector-open) .object-inspector,.mobile-checklist:not(.inspector-open) .inspector-mobile-heading{display:none}.mobile-checklist .checklist-panel{border:0;padding-top:0}.mobile-checklist .checklist-list{max-height:none}.mobile-checklist .mobile-navigation{grid-row:5}.plan-caption{gap:5px;min-height:60px;padding-inline:12px}.plan-caption p{font-size:10px}.canvas-controls{bottom:8px;right:8px}.canvas-controls button{padding-inline:6px;font-size:12px}.quick-add-toolbar{flex-wrap:wrap;gap:4px;padding:6px 8px}.quick-add-context{display:none}.quick-add-toolbar button{padding-inline:8px;font-size:11px}.quick-add-toolbar>button[aria-label=공간\ 추가]{display:none}.utility-popover{right:0}.checklist-actions button{font-size:13px}.checklist-item{font-size:14px}.checklist-copy small{font-size:12px}}.utility-marker rect.object-hit-rect{fill:#0000;stroke:none}.quick-add-toolbar button[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.measurement-mode{background:var(--surface-subtle);grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;display:grid;position:fixed;inset:0 0 auto;overflow:hidden}.measurement-header{padding:14px max(24px, env(safe-area-inset-right)) 14px max(24px, env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:24px;display:flex}.measurement-header>div:first-child{flex:1;min-width:0}.measurement-header .eyebrow{overflow-wrap:anywhere;font-size:11px}.measurement-header h1{margin-top:4px;font-size:22px}.measurement-header button{border-color:var(--line)}.measurement-progress{text-align:right;font-variant-numeric:tabular-nums;gap:3px;display:grid}.measurement-progress span{font-size:20px;font-weight:650}.measurement-progress small{color:var(--muted)}.measurement-scroll{overscroll-behavior:contain;min-height:0;scroll-padding:16px;overflow-y:auto}.measurement-card{align-content:start;gap:20px;width:min(100%,960px);margin:auto;padding:clamp(20px,4vw,48px);display:grid}.measurement-item-heading{gap:8px;display:grid}.measurement-required{color:var(--warning);font-size:12px;font-weight:650}.measurement-card h2{letter-spacing:-.035em;overflow-wrap:anywhere;font-size:clamp(24px,3.5vw,38px);line-height:1.2}.measurement-value-label{gap:8px;font-size:12px}.measurement-input{align-items:center;gap:16px;display:flex}.measurement-input input{border:2px solid var(--accent);text-align:right;font-variant-numeric:tabular-nums;min-width:0;min-height:88px;font-size:52px;font-weight:600}.measurement-input>span{color:var(--muted);font-size:20px}.measurement-secondary{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:24px;padding-top:8px;display:grid}.measurement-secondary>label{font-size:12px}textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-height:88px;color:var(--ink);font:inherit;padding:10px;font-size:16px}.measurement-actions{padding:12px max(24px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--surface);align-items:center;gap:12px;display:flex}.measurement-save-hint{color:var(--muted);flex:1;font-size:12px}.measurement-actions button{border-color:var(--line);min-width:112px;min-height:56px}.measurement-actions .primary-action{min-width:200px}.completion-surface{text-align:center;grid-template-rows:auto;place-content:center;gap:20px;padding:24px}.photo-context{gap:12px;min-width:0;display:grid}.photo-context-copy{align-items:center;gap:12px;display:flex}.photo-context-copy button{border-color:var(--line);flex-shrink:0}.photo-context-copy p{min-width:0;color:var(--muted);overflow-wrap:anywhere;gap:4px;font-size:11px;line-height:1.5;display:grid}.photo-context-copy strong{color:var(--ink);font-weight:500}.photo-note-input{font-size:12px}.photo-note-input textarea{min-height:72px}.photo-note-input>small{color:var(--muted);justify-self:end;font-size:11px}.photo-empty{color:var(--muted);font-size:12px;line-height:1.5}.photo-file-input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.photo-reference-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:8px;display:grid}.photo-reference-card{border-color:var(--line);text-align:left;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;padding:8px;display:grid}.photo-reference-thumbnail,.photo-thumbnail{object-fit:cover;border-radius:var(--radius);background:var(--canvas);width:72px;height:72px}.photo-reference-copy{gap:5px;min-width:0;display:grid}.photo-reference-copy strong{overflow-wrap:anywhere;font-size:13px}.photo-reference-copy small,.photo-reference-copy em{color:var(--muted);font-size:12px;font-style:normal}.photo-reference-copy em{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-photo-status=failed]{color:var(--danger)!important}[data-photo-status=uploading]{color:var(--accent)!important}[data-photo-status=uploaded]{color:var(--success)!important}.photo-preview-placeholder{color:var(--muted);align-content:center;justify-items:center;gap:4px;display:grid}.photo-preview-placeholder>span{font-size:24px}.photo-preview-placeholder small{text-align:center;font-size:10px}.photo-detail-backdrop{z-index:40;background:var(--backdrop);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.photo-detail-overlay{overscroll-behavior:contain;background:var(--surface);border-radius:var(--radius);width:min(100%,720px);max-height:calc(100dvh - 40px);box-shadow:var(--shadow-overlay);overflow-y:auto}.photo-detail-heading{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex;position:sticky;top:0}.photo-detail-heading h3{overflow-wrap:anywhere;margin:4px 0 0;font-size:16px}.photo-detail-heading button{border-color:var(--line);flex-shrink:0}.photo-detail-image{object-fit:contain;background:var(--canvas);width:100%;height:min(40dvh,380px);display:block}.photo-detail-image.photo-preview-placeholder{display:grid}.photo-detail-metadata{gap:14px;padding:20px;display:grid}.photo-detail-metadata div{grid-template-columns:112px minmax(0,1fr);gap:12px;font-size:13px;display:grid}.photo-detail-metadata dd{white-space:pre-wrap;overflow-wrap:anywhere;font-weight:500}.photo-preview-help{color:var(--muted);padding:0 20px 20px;font-size:12px;line-height:1.6}.property-summary{background:var(--surface);min-height:100dvh;padding:0 max(24px,50% - 540px) 40px}.summary-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:24px 0;display:flex}.summary-header h1{letter-spacing:-.03em;overflow-wrap:anywhere;margin-top:5px;font-size:26px}.summary-header button{border-color:var(--line);flex-shrink:0}.summary-hero{align-items:center;gap:20px;padding:20px 0;display:flex}.summary-hero>strong{font-variant-numeric:tabular-nums;font-size:32px}.summary-hero h2{font-size:14px}.summary-hero p{margin-top:6px;font-size:12px}.summary-priorities{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:32px;display:grid}.summary-section{border-bottom:1px solid var(--line);min-width:0;padding:24px 0}.summary-section>h2{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:16px;font-size:15px;display:flex}.summary-section>h2 small{color:var(--muted);font-size:11px;font-weight:400}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px;display:grid}.summary-card{border:0;min-width:0;padding:0}.summary-card h3{margin:0 0 10px;font-size:13px;font-weight:500}.summary-card p{font-variant-numeric:tabular-nums;letter-spacing:-.02em;overflow-wrap:anywhere;font-size:22px;font-weight:600}.summary-card small{color:var(--muted);margin-top:8px;font-size:11px;display:block}.summary-passage .summary-card p{color:var(--accent);font-size:30px}.summary-dimensions{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.summary-dimensions div{gap:6px;display:grid}.summary-dimensions dt{font-size:11px}.summary-dimensions dd{font-variant-numeric:tabular-nums;font-size:16px}.summary-spatial-card{align-content:start;gap:12px;display:grid}.summary-spatial-card h3{border-bottom:1px solid var(--line);padding-bottom:8px}.summary-spatial-card h4{color:var(--muted);margin:0 0 6px;font-size:12px}.summary-detail-list{font-variant-numeric:tabular-nums;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.summary-empty,.summary-photo-count{color:var(--muted);font-size:13px;line-height:1.6}.summary-spatial-card .summary-empty{font-size:13px;font-weight:400}.summary-photo-count{margin-bottom:12px}.summary-missing ul{margin:0;padding:0;list-style:none;display:grid}.summary-missing li{border-bottom:1px solid var(--line);grid-template-columns:90px minmax(0,1fr) auto;gap:16px;padding:12px 0;font-size:13px;display:grid}.summary-missing li span,.summary-missing li small{color:var(--muted)}.summary-missing h2{color:var(--warning)}@media (height<=550px){.measurement-header{padding-block:6px}.measurement-header h1{font-size:18px}.measurement-card{gap:12px;padding:16px 24px}.measurement-card h2{font-size:24px}.measurement-item-heading{align-items:center;gap:12px;display:flex}.measurement-input input{min-height:64px;font-size:36px}.measurement-actions{padding-block:8px}.measurement-actions button{min-height:48px}}@media (width<=767px){.measurement-header{gap:12px;padding-inline:16px}.measurement-card{gap:16px;padding:20px 16px}.measurement-header h1{font-size:18px}.measurement-header .eyebrow{font-size:10px}.measurement-progress span{font-size:16px}.measurement-secondary{grid-template-columns:minmax(0,1fr);gap:20px}.measurement-input input{min-height:72px;font-size:40px}.measurement-actions{padding:10px 16px max(10px, env(safe-area-inset-bottom));gap:10px}.measurement-save-hint{display:none}.measurement-actions button{flex:1;min-width:0}.measurement-actions .primary-action{flex:2;min-width:0}.property-summary{padding:0 16px 24px}.summary-header{gap:12px;padding-block:16px}.summary-header h1{font-size:22px}.summary-header button{font-size:12px}.summary-priorities{grid-template-columns:minmax(0,1fr);gap:0}.summary-grid{gap:20px}.summary-hero{gap:16px}.photo-detail-backdrop{padding:12px}.photo-detail-overlay{max-height:calc(100dvh - 24px)}.photo-detail-metadata div{grid-template-columns:80px minmax(0,1fr)}}.measurement-mode[data-compact=true] .measurement-header{padding-block:6px}.measurement-mode[data-compact=true] .measurement-header h1{font-size:18px}.measurement-mode[data-compact=true] .measurement-card{gap:12px;padding-block:16px}.measurement-mode[data-compact=true] .measurement-card h2{font-size:24px}.measurement-mode[data-compact=true] .measurement-item-heading{align-items:center;gap:12px;display:flex}.measurement-mode[data-compact=true] .measurement-input input{min-height:64px;font-size:36px}.measurement-mode[data-compact=true] .measurement-actions{padding-block:8px}.measurement-mode[data-compact=true] .measurement-actions button{min-height:48px}.photo-sketchpad{z-index:40;background:var(--ink);grid-template-rows:auto minmax(0,1fr) auto auto;height:100dvh;display:grid;position:fixed;inset:0;overflow:hidden}.sketchpad-header{padding:10px max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left));background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;display:flex}.sketchpad-header p{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:650;overflow:hidden}.sketchpad-sheet-frame{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;min-height:0;padding:8px;display:grid;overflow:hidden}.sketchpad-sheet{touch-action:none;background:var(--surface);cursor:crosshair;width:auto;max-width:100%;height:100%;max-height:100%;position:relative}.sketchpad-sheet img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.sketchpad-sheet svg{width:100%;height:100%;position:absolute;inset:0}.sketchpad-missing{height:100%;color:var(--muted);text-align:center;place-items:center;padding:24px;font-size:13px;display:grid}.sketch-mark.pen{fill:#e2483f;stroke:none}.sketch-mark.measure line{stroke:#e2483f;stroke-width:3px;vector-effect:non-scaling-stroke}.sketch-mark.measure circle,.sketch-mark.note circle{fill:#e2483f}.sketch-mark text{fill:#e2483f;paint-order:stroke;stroke:#fff;stroke-width:6px;stroke-linejoin:round;font-size:34px;font-weight:750}.sketch-mark.active line,.sketch-mark.active circle{stroke:var(--accent);fill:var(--accent)}.sketchpad-text{padding:10px max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--line);align-items:end;gap:8px;display:flex}.sketchpad-text label{flex:1;font-size:11px}.sketchpad-tools{padding:8px max(12px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sketchpad-tools button{border-color:var(--line);min-width:64px;font-size:13px;font-weight:650}.sketchpad-tools button.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.sketchpad-tools small{color:var(--muted);flex:1 0 100%;font-size:11px}.photo-mode{background:var(--surface-subtle);grid-template-rows:auto auto auto minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.photo-mode-header{padding:14px max(20px, env(safe-area-inset-right)) 14px max(20px, env(safe-area-inset-left));background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;display:flex}.photo-mode-header h1{margin-top:4px;font-size:20px}.photo-capture-bar{padding:14px max(20px, env(safe-area-inset-right)) 14px max(20px, env(safe-area-inset-left));align-items:end;gap:12px;display:flex}.photo-capture-bar label{flex:0 200px;font-size:11px}.capture-action{flex:1;min-height:56px;font-size:16px}.photo-mode-list{min-height:0;padding:0 max(20px, env(safe-area-inset-right)) 20px max(20px, env(safe-area-inset-left));align-content:start;gap:6px;margin:0;list-style:none;display:grid;overflow-y:auto}.photo-mode-list button{border-color:var(--line);text-align:left;gap:4px;width:100%;min-height:64px;display:grid}.photo-mode-list small{color:var(--muted);font-size:11px}.photo-mode-empty{color:var(--muted);padding:24px 0;font-size:13px}.photo-trigger{border-color:var(--line);font-size:12px;font-weight:650}
