.floorplan-workspace-module__YGvmFq__page{height:100dvh;padding:calc(env(safe-area-inset-top) + 10px) calc(env(safe-area-inset-right) + 14px) calc(env(safe-area-inset-bottom) + 10px) calc(env(safe-area-inset-left) + 14px);overscroll-behavior:none;flex-direction:column;gap:8px;display:flex;overflow:hidden}.floorplan-workspace-module__YGvmFq__appBar{flex-shrink:0;align-items:center;gap:12px;display:flex}.floorplan-workspace-module__YGvmFq__appBarBrand{flex-direction:column;flex-shrink:0;gap:1px;display:flex}.floorplan-workspace-module__YGvmFq__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-strong);font-size:.68rem;font-weight:700}.floorplan-workspace-module__YGvmFq__appTitle{white-space:nowrap;text-overflow:ellipsis;max-width:22ch;font-size:1.05rem;line-height:1.2;overflow:hidden}.floorplan-workspace-module__YGvmFq__appTitleInput{width:min(24ch,100%);color:var(--foreground);background:0 0;border:1px solid #0000;border-radius:10px;margin:-.2rem -.35rem;padding:.2rem .35rem;font-size:1.05rem;font-weight:700;line-height:1.2}.floorplan-workspace-module__YGvmFq__appTitleInput:focus{background:#ffffffb8;border-color:#0d6f7347;outline:none}.floorplan-workspace-module__YGvmFq__areaInline{background:var(--surface);border:1px solid var(--border);min-width:0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;flex:1;align-items:baseline;gap:10px;padding:7px 14px;display:flex;overflow:hidden}.floorplan-workspace-module__YGvmFq__areaValue{white-space:nowrap;font-size:1.45rem;line-height:1}.floorplan-workspace-module__YGvmFq__areaSecondary{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;font-size:.84rem;overflow:hidden}.floorplan-workspace-module__YGvmFq__appBarActions{flex-shrink:0;align-items:center;gap:6px;display:flex}.floorplan-workspace-module__YGvmFq__primaryButton,.floorplan-workspace-module__YGvmFq__secondaryButton,.floorplan-workspace-module__YGvmFq__unitButton,.floorplan-workspace-module__YGvmFq__projectButton{cursor:pointer;white-space:nowrap;border:0;border-radius:999px;min-height:36px;padding:.55rem .95rem;font-size:.88rem;line-height:1;transition:transform .14s,box-shadow .14s,background .14s}.floorplan-workspace-module__YGvmFq__primaryButton:active,.floorplan-workspace-module__YGvmFq__secondaryButton:active,.floorplan-workspace-module__YGvmFq__unitButton:active,.floorplan-workspace-module__YGvmFq__projectButton:active{transform:scale(.97)}.floorplan-workspace-module__YGvmFq__primaryButton:disabled,.floorplan-workspace-module__YGvmFq__secondaryButton:disabled,.floorplan-workspace-module__YGvmFq__unitButton:disabled,.floorplan-workspace-module__YGvmFq__projectButton:disabled,.floorplan-workspace-module__YGvmFq__canvasOverlayButton:disabled,.floorplan-workspace-module__YGvmFq__canvasUtilityButton:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}@media (hover:hover){.floorplan-workspace-module__YGvmFq__primaryButton:hover,.floorplan-workspace-module__YGvmFq__secondaryButton:hover,.floorplan-workspace-module__YGvmFq__unitButton:hover,.floorplan-workspace-module__YGvmFq__projectButton:hover{transform:translateY(-1px)}}.floorplan-workspace-module__YGvmFq__viewModeButton{border:1px solid var(--border);cursor:pointer;background:var(--surface-strong);min-height:36px;color:var(--muted);white-space:nowrap;border-radius:999px;padding:.45rem .9rem;font-size:.84rem;font-weight:600;line-height:1;transition:background .12s,color .12s,border-color .12s}.floorplan-workspace-module__YGvmFq__viewModeButton[data-active=true]{background:var(--accent-strong);color:#fff;border-color:var(--accent-strong)}.floorplan-workspace-module__YGvmFq__primaryButton{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);color:#fff;box-shadow:0 8px 20px #0d6f7347}.floorplan-workspace-module__YGvmFq__secondaryButton,.floorplan-workspace-module__YGvmFq__unitButton{background:var(--surface-strong);color:var(--foreground);border:1px solid var(--border)}.floorplan-workspace-module__YGvmFq__errorBanner{color:#8f2626;background:#ae2e2e1f;border:1px solid #ae2e2e2e;border-radius:12px;flex-shrink:0;padding:8px 14px;font-size:.88rem}.floorplan-workspace-module__YGvmFq__workspace{flex:1;min-height:0;display:block}.floorplan-workspace-module__YGvmFq__canvasPanel{flex-direction:column;gap:6px;height:100%;min-height:0;display:flex}.floorplan-workspace-module__YGvmFq__canvasStage{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.floorplan-workspace-module__YGvmFq__canvasFrame{min-height:0;box-shadow:inset 0 0 0 1px #ffffff73, var(--shadow);background:linear-gradient(#fff8e9f5,#f5eedff5);border:1px solid #4f3f2926;border-radius:20px;flex:1;transition:border-color .14s,box-shadow .14s,background .14s;position:relative;overflow:hidden}.floorplan-workspace-module__YGvmFq__canvasFrame[data-view-mode=input],.floorplan-workspace-module__YGvmFq__canvasFrame[data-view-mode=result]{box-shadow:inset 0 0 0 1px #fff9, var(--shadow);background:#fff;border-color:#0000001f}.floorplan-workspace-module__YGvmFq__canvasFrame[data-draw-mode=measure]{box-shadow:inset 0 0 0 2px #7b61ff38, 0 0 0 3px #7b61ff1f, var(--shadow);background:linear-gradient(#f9f4fffa,#f2eafff5);border-color:#7b61ff6b}.floorplan-workspace-module__YGvmFq__canvasFrame[data-draw-mode=reference]{box-shadow:inset 0 0 0 2px #d0d0d073, 0 0 0 3px #dcdcdc47, var(--shadow);background:linear-gradient(#fafafafa,#f1f1f1f7);border-color:#acacac7a}.floorplan-workspace-module__YGvmFq__underlayImage{pointer-events:none;object-fit:fill;-webkit-user-select:none;user-select:none;z-index:0;filter:saturate(.92)contrast(.96);position:absolute}.floorplan-workspace-module__YGvmFq__canvas{z-index:1;touch-action:none;cursor:crosshair;width:100%;height:100%;display:block;position:relative}.floorplan-workspace-module__YGvmFq__canvas[data-mode=pan]{cursor:grab}.floorplan-workspace-module__YGvmFq__canvasUndoRedoOverlay{z-index:4;flex-wrap:wrap;align-items:center;gap:6px;display:flex;position:absolute;top:14px;left:14px}.floorplan-workspace-module__YGvmFq__canvasOverlayControls{z-index:2;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute;top:14px;right:14px}.floorplan-workspace-module__YGvmFq__canvasZoomControls{gap:6px;display:inline-flex}.floorplan-workspace-module__YGvmFq__canvasOverlayButton,.floorplan-workspace-module__YGvmFq__canvasUtilityButton{color:var(--foreground);cursor:pointer;background:#fffcf4eb;border:1px solid #3d322424;border-radius:999px;min-height:34px;padding:.45rem .72rem;box-shadow:0 8px 18px #1f1c1714}.floorplan-workspace-module__YGvmFq__canvasOverlayButton:active,.floorplan-workspace-module__YGvmFq__canvasUtilityButton:active{transform:scale(.97)}.floorplan-workspace-module__YGvmFq__canvasUtilityButton[data-active=true]{color:var(--accent-strong);background:#0d6f7324;border-color:#0d6f7347;box-shadow:0 8px 18px #0d6f731f}.floorplan-workspace-module__YGvmFq__canvasHint{max-width:280px;color:var(--muted);pointer-events:none;z-index:2;background:#fffcf4e0;border:1px solid #3d32241f;border-radius:12px;padding:8px 12px;font-size:.82rem;line-height:1.4;position:absolute;bottom:14px;left:14px}.floorplan-workspace-module__YGvmFq__canvasFooter{color:var(--muted);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;font-size:.8rem;display:flex}.floorplan-workspace-module__YGvmFq__drawModeToggle{flex-direction:column;align-items:stretch;gap:6px;display:inline-flex}.floorplan-workspace-module__YGvmFq__viewModeSegment{background:#fffcf4eb;border:1px solid #3d322429;border-radius:999px;display:inline-flex;overflow:hidden;box-shadow:0 8px 18px #1f1c1714}.floorplan-workspace-module__YGvmFq__viewModeSegmentButton{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;min-height:34px;padding:.45rem .85rem;font-size:.82rem;font-weight:600;line-height:1;transition:background .12s,color .12s}.floorplan-workspace-module__YGvmFq__viewModeSegmentButton+.floorplan-workspace-module__YGvmFq__viewModeSegmentButton{border-left:1px solid #3d32241f}.floorplan-workspace-module__YGvmFq__viewModeSegmentButton[data-active=true]{background:var(--accent-strong);color:#fff}.floorplan-workspace-module__YGvmFq__viewModeSegmentButton:active{opacity:.85}.floorplan-workspace-module__YGvmFq__drawModeToggle[data-mode=wall] .floorplan-workspace-module__YGvmFq__canvasUtilityButton[data-active=true]{color:var(--accent-strong);background:#0d6f7324;border-color:#0d6f7347;box-shadow:0 8px 18px #0d6f731f}.floorplan-workspace-module__YGvmFq__drawModeToggle[data-mode=measure] .floorplan-workspace-module__YGvmFq__canvasUtilityButton[data-active=true]{color:#5f44d5;background:#7b61ff29;border-color:#7b61ff57;box-shadow:0 8px 18px #7b61ff29}.floorplan-workspace-module__YGvmFq__drawModeToggle[data-mode=reference] .floorplan-workspace-module__YGvmFq__canvasUtilityButton[data-active=true]{color:#666;background:#e8e8e8eb;border-color:#b0b0b06b;box-shadow:0 8px 18px #8c8c8c1f}.floorplan-workspace-module__YGvmFq__legend{flex-wrap:wrap;gap:10px;margin-left:auto;display:flex}.floorplan-workspace-module__YGvmFq__legendItem{align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.floorplan-workspace-module__YGvmFq__legendMeasured,.floorplan-workspace-module__YGvmFq__legendCalculated,.floorplan-workspace-module__YGvmFq__legendUnknown,.floorplan-workspace-module__YGvmFq__legendActionable{border-radius:999px;flex-shrink:0;width:14px;height:3px;display:inline-block}.floorplan-workspace-module__YGvmFq__legendMeasured{background:#1672d4}.floorplan-workspace-module__YGvmFq__legendCalculated{background:#189b5c}.floorplan-workspace-module__YGvmFq__legendUnknown{background:repeating-linear-gradient(90deg,#b0b0b0,#b0b0b0 5px,#0000 5px 9px)}.floorplan-workspace-module__YGvmFq__legendActionable{background:#f7cd46;box-shadow:0 0 8px #f7cd46cc}.floorplan-workspace-module__YGvmFq__selectedWallPopover,.floorplan-workspace-module__YGvmFq__areaCard,.floorplan-workspace-module__YGvmFq__panel,.floorplan-workspace-module__YGvmFq__loadingCard{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px}.floorplan-workspace-module__YGvmFq__panel,.floorplan-workspace-module__YGvmFq__loadingCard{padding:12px 14px}.floorplan-workspace-module__YGvmFq__selectedWallPopover{z-index:3;width:min(320px,100% - 28px);padding:12px 14px 14px;position:absolute;top:58px;left:14px}.floorplan-workspace-module__YGvmFq__popoverHeader{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.floorplan-workspace-module__YGvmFq__popoverClose{width:32px;height:32px;color:var(--foreground);cursor:pointer;background:#3d322414;border:0;border-radius:999px;flex-shrink:0}.floorplan-workspace-module__YGvmFq__loadingCard{text-align:center;max-width:360px;margin:auto}.floorplan-workspace-module__YGvmFq__panel h2{font-size:.92rem;font-weight:700}.floorplan-workspace-module__YGvmFq__panelText{color:var(--muted);margin-top:4px;font-size:.84rem;line-height:1.4}.floorplan-workspace-module__YGvmFq__inlineFields{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:8px;display:grid}.floorplan-workspace-module__YGvmFq__field{flex-direction:column;gap:4px;margin-top:8px;display:flex}.floorplan-workspace-module__YGvmFq__fieldLabel{justify-content:space-between;align-items:center;gap:8px;font-size:.84rem;display:flex}.floorplan-workspace-module__YGvmFq__input,.floorplan-workspace-module__YGvmFq__select{width:100%;color:var(--foreground);background:#fffc;border:1px solid #3d322429;border-radius:12px;padding:.55rem .75rem;font-size:.9rem}.floorplan-workspace-module__YGvmFq__input:focus,.floorplan-workspace-module__YGvmFq__select:focus{border-color:#0d6f7359;outline:2px solid #0d6f7340}.floorplan-workspace-module__YGvmFq__stateBadge,.floorplan-workspace-module__YGvmFq__statusPill{text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:.22rem .55rem;font-size:.68rem;display:inline-flex}.floorplan-workspace-module__YGvmFq__stateBadge{color:var(--muted);background:#6155401a}.floorplan-workspace-module__YGvmFq__stateBadge[data-state=MEASURED]{color:#105cae;background:#1672d41f}.floorplan-workspace-module__YGvmFq__stateBadge[data-state=DERIVED]{color:#0d6f73;background:#0d6f731f}.floorplan-workspace-module__YGvmFq__stateBadge[data-state=CALCULATED],.floorplan-workspace-module__YGvmFq__statusPill[data-status=ready]{color:#157446;background:#189b5c1f}.floorplan-workspace-module__YGvmFq__statusPill[data-status=incomplete]{color:#a5561d;background:#dd7a3124}.floorplan-workspace-module__YGvmFq__statusPill[data-status=invalid]{color:#9c2d2d;background:#ae2e2e24}.floorplan-workspace-module__YGvmFq__wallMeta{color:var(--muted);margin-top:10px;font-size:.82rem}.floorplan-workspace-module__YGvmFq__projectList{gap:6px;margin-top:8px;display:grid}.floorplan-workspace-module__YGvmFq__projectButton{text-align:left;background:var(--surface-strong);color:var(--foreground);border:1px solid var(--border);gap:2px;padding:.5rem .75rem;font-size:.86rem;display:grid}.floorplan-workspace-module__YGvmFq__projectButton span{color:var(--muted);font-size:.78rem}.floorplan-workspace-module__YGvmFq__modalOverlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#1f1c1761;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.floorplan-workspace-module__YGvmFq__modal{background:var(--surface-strong);border:1px solid var(--border);border-radius:24px;flex-direction:column;gap:4px;width:min(480px,100vw - 32px);max-height:min(86dvh,760px);padding:24px 26px;display:flex;overflow-y:auto;box-shadow:0 24px 60px #1f1c1738}.floorplan-workspace-module__YGvmFq__modal h2{margin-bottom:6px;font-size:1.1rem}.floorplan-workspace-module__YGvmFq__modalActions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.floorplan-workspace-module__YGvmFq__settingsSection{margin-top:16px}.floorplan-workspace-module__YGvmFq__settingsSection h3{font-size:.92rem;font-weight:700}.floorplan-workspace-module__YGvmFq__cropModal{width:min(720px,100vw - 32px)}.floorplan-workspace-module__YGvmFq__cropViewport{aspect-ratio:4/3;cursor:crosshair;touch-action:none;background:#1f1c1714;border:1px solid #3d322429;border-radius:18px;width:100%;position:relative;overflow:hidden}.floorplan-workspace-module__YGvmFq__cropImage{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.floorplan-workspace-module__YGvmFq__cropShade{pointer-events:none;background:#1f1c1747;position:absolute;inset:0}.floorplan-workspace-module__YGvmFq__cropSelection{pointer-events:none;background:0 0;border:2px solid #fff;position:absolute;box-shadow:0 0 0 9999px #00000061}.floorplan-workspace-module__YGvmFq__cropHandle{pointer-events:none;background:#fff;border:1.5px solid #00000059;border-radius:3px;width:14px;height:14px;position:absolute;box-shadow:0 1px 4px #00000040}.floorplan-workspace-module__YGvmFq__cropHandleNW{top:-7px;left:-7px}.floorplan-workspace-module__YGvmFq__cropHandleN{top:-7px;left:calc(50% - 7px)}.floorplan-workspace-module__YGvmFq__cropHandleNE{top:-7px;right:-7px}.floorplan-workspace-module__YGvmFq__cropHandleE{top:calc(50% - 7px);right:-7px}.floorplan-workspace-module__YGvmFq__cropHandleSE{bottom:-7px;right:-7px}.floorplan-workspace-module__YGvmFq__cropHandleS{bottom:-7px;left:calc(50% - 7px)}.floorplan-workspace-module__YGvmFq__cropHandleSW{bottom:-7px;left:-7px}.floorplan-workspace-module__YGvmFq__cropHandleW{top:calc(50% - 7px);left:-7px}.floorplan-workspace-module__YGvmFq__selectedWallPopover[data-mode=exterior]{background:#1672d40d;border-color:#1672d438}.floorplan-workspace-module__YGvmFq__selectedWallPopover[data-mode=interior]{background:#d26e1e0d;border-color:#d26e1e38}.floorplan-workspace-module__YGvmFq__measureToggle{border:1px solid var(--border);border-radius:12px;margin-top:10px;display:flex;overflow:hidden}.floorplan-workspace-module__YGvmFq__measureToggleBtn{cursor:pointer;color:var(--muted);background:0 0;border:0;flex:1;padding:.55rem .5rem;font-size:.88rem;transition:background .14s,color .14s}.floorplan-workspace-module__YGvmFq__measureToggle[data-mode=exterior] .floorplan-workspace-module__YGvmFq__measureToggleBtn[data-active=true]{color:#fff;background:#1672d4}.floorplan-workspace-module__YGvmFq__measureToggle[data-mode=interior] .floorplan-workspace-module__YGvmFq__measureToggleBtn[data-active=true]{color:#fff;background:#d26a1a}.floorplan-workspace-module__YGvmFq__wallActions{align-items:center;gap:8px;margin-top:10px;display:flex}.floorplan-workspace-module__YGvmFq__wallTypeSelect{flex:1;min-width:0;position:relative}.floorplan-workspace-module__YGvmFq__wallTypeSelect:after{content:"▾";color:var(--muted);pointer-events:none;font-size:.75rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.floorplan-workspace-module__YGvmFq__wallTypeSelect select{appearance:none;border:1px solid var(--border);background:var(--surface-strong);width:100%;color:var(--foreground);cursor:pointer;border-radius:999px;padding:.5rem 1.8rem .5rem .95rem;font-size:.88rem}.floorplan-workspace-module__YGvmFq__wallTypeSelect select:focus{border-color:#0d6f7359;outline:2px solid #0d6f7340}.floorplan-workspace-module__YGvmFq__deleteWallButton{color:#9c2d2d;cursor:pointer;white-space:nowrap;background:#ae2e2e12;border:1px solid #ae2e2e40;border-radius:999px;flex-shrink:0;padding:.5rem .95rem;font-size:.88rem;transition:background .14s,transform .14s}@media (hover:hover){.floorplan-workspace-module__YGvmFq__deleteWallButton:hover{background:#ae2e2e26}}.floorplan-workspace-module__YGvmFq__deleteWallButton:active{transform:scale(.97)}.floorplan-workspace-module__YGvmFq__hiddenInput{display:none}@media (max-width:860px){.floorplan-workspace-module__YGvmFq__areaSecondary{display:none}}@media (max-width:820px){.floorplan-workspace-module__YGvmFq__page{gap:6px;padding:8px 10px}.floorplan-workspace-module__YGvmFq__appBar{flex-wrap:wrap;gap:8px}.floorplan-workspace-module__YGvmFq__areaInline{flex-basis:100%;order:3}.floorplan-workspace-module__YGvmFq__appBarActions{flex-wrap:wrap}.floorplan-workspace-module__YGvmFq__selectedWallPopover{width:calc(100% - 20px);top:54px;left:10px}.floorplan-workspace-module__YGvmFq__canvasOverlayControls{top:auto;bottom:10px;right:10px}}
