*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7fa;color:#152238}button,input{font:inherit}.loginPage{min-height:100vh;background:radial-gradient(circle at 18% 15%,#203b58 0,#101c2a 35%,#09121d 72%);display:grid;place-items:center;padding:32px;position:relative}.loginBrand{position:absolute;top:42px;left:52px;display:flex;align-items:center;gap:12px;color:#fff}.logoMark,.miniMark{display:grid;place-items:center;background:#2f80ed;color:#fff;font-weight:900;border-radius:10px}.logoMark{width:44px;height:44px;font-size:24px}.loginLogo{font-weight:900;font-size:25px;letter-spacing:1px}.loginClaim{font-size:12px;color:#aab9ca}.loginCard{width:min(440px,100%);background:#fff;border-radius:18px;padding:38px;box-shadow:0 28px 80px #0007}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.4px;color:#2f80ed}.loginCard h1{font-size:30px;margin:8px 0}.loginCard>p{color:#6b7789;margin:0 0 28px}.loginCard label{display:block;font-size:13px;font-weight:700;margin:15px 0 7px}.loginCard input[type=email],.loginCard input[type=password]{width:100%;padding:13px 14px;border:1px solid #d8e0e9;border-radius:9px;outline:none}.loginCard input:focus{border-color:#2f80ed;box-shadow:0 0 0 3px #2f80ed18}.formMeta{display:flex;justify-content:space-between;align-items:center;margin:15px 0}.remember{font-weight:500!important;margin:0!important;color:#536174}.remember input{margin-right:7px}.linkButton{background:none;color:#2f80ed;font-size:13px}.linkButton,.primary{border:0;cursor:pointer}.primary{width:100%;background:#1769d2;color:#fff;padding:13px;border-radius:9px;font-weight:800}.error{margin-top:12px;padding:9px;border-radius:7px;background:#fff0f0;color:#b42318;font-size:12px}.loginNote{border-top:1px solid #edf0f3;margin-top:25px;padding-top:18px;text-align:center;color:#8792a2;font-size:11px}.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.side{background:#0d1723;color:#fff;padding:24px 18px;display:flex;flex-direction:column}.brandRow{display:flex;align-items:center;gap:10px;padding:0 6px}.miniMark{width:34px;height:34px}.brand{font-size:20px;font-weight:900;letter-spacing:.6px}.tag{font-size:10px;color:#8291a3}.newProject{margin:28px 0 18px;background:#2477e5;color:#fff;border:0;border-radius:8px;padding:11px;text-align:left;font-weight:700}.nav{display:grid;grid-gap:5px;gap:5px}.nav div{padding:11px 12px;border-radius:8px;color:#aeb9c6;font-size:14px}.nav .active{background:#1a2a3c;color:#fff}.sideBottom{margin-top:auto;border-top:1px solid #243142;padding:18px 4px 0;display:grid;grid-template-columns:34px 1fr 25px;align-items:center;grid-gap:9px;gap:9px;font-size:11px}.sideBottom small{display:block;color:#7f8da0}.sideBottom button{background:none;border:0;color:#9aa8b9}.userDot{width:32px;height:32px;border-radius:50%;background:#243c59;display:grid;place-items:center}.main{padding:27px 30px}.appHeader{display:flex;justify-content:space-between;align-items:center}.appHeader h1{margin:4px 0 1px;font-size:27px}.appHeader p{margin:0;color:#788598;font-size:12px}.headerActions{display:flex;gap:9px}.headerActions button,.primarySmall{padding:9px 13px;border:1px solid #d8e0e9;background:#fff;border-radius:8px;font-weight:700}.headerActions .primarySmall{background:#1769d2;color:#fff;border-color:#1769d2}.cards{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:13px;gap:13px;margin:24px 0 16px}.card,.panel{background:#fff;border:1px solid #e2e7ed;border-radius:11px}.card{padding:17px}.card small,.card span{display:block;color:#7b8797;font-size:11px}.card strong{display:block;font-size:23px;margin:5px 0}.tabs{display:flex;gap:24px;border-bottom:1px solid #dfe5ec;margin-bottom:15px;font-size:12px;color:#738094}.tabs>*{padding:10px 0}.tabs b{color:#1769d2;border-bottom:2px solid #1769d2}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:15px;gap:15px}.viewer{height:580px;overflow:hidden}.panelTitle{height:56px;border-bottom:1px solid #edf0f3;padding:14px 17px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.panelTitle small{display:block;color:#8994a3;font-weight:400}.status{color:#238653;background:#eaf8f0;padding:5px 8px;border-radius:99px;font-size:10px}.canvasWrap{height:calc(100% - 56px)}.canvasWrap canvas{display:block}.rightCol{display:grid;grid-gap:15px;gap:15px;align-content:start}.rightCol>.panel:not(.upload){padding-bottom:15px}.rightCol h2{padding:0 17px}.row{display:flex;justify-content:space-between;border-bottom:1px solid #eef2f6;padding:10px 17px;font-size:12px}.upload{padding:16px}.drop{margin-top:13px;border:1.5px dashed #c8d3df;background:#f8fafc;border-radius:9px;padding:22px;text-align:center;color:#718096;display:grid;grid-gap:6px;gap:6px;font-size:12px}.drop strong{color:#354357}.drop button{justify-self:center;margin-top:7px;border:1px solid #ccd6e1;background:#fff;border-radius:7px;padding:7px 10px}@media(max-width:950px){.shell{grid-template-columns:1fr}.side{display:none}.cards{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:1fr}.main{padding:18px}.loginBrand{position:static;margin-bottom:24px}.loginPage{display:flex;flex-direction:column;justify-content:center}}.textInput{width:100%;padding:13px 14px;border:1px solid #d8e0e9;border-radius:9px;outline:none}.switchAuth{width:100%;margin-top:14px;border:0;background:none;color:#1769d2;cursor:pointer;font-weight:700}.loadingPage{min-height:100vh;display:grid;place-items:center;background:#0d1723;color:#fff;font-weight:800}.projectList{display:grid;grid-gap:12px;gap:12px;margin:25px 0}.projectCard{background:#fff;border:1px solid #e2e7ed;border-radius:11px;padding:18px;display:flex;justify-content:space-between;align-items:center}.projectCard h2{margin:5px 0}.projectCard p{margin:0;color:#788598}.emptyState{background:#fff;border:1px solid #e2e7ed;border-radius:12px;padding:45px;text-align:center}.emptyIcon{font-size:42px}.emptyState p{color:#788598}.previewWorkspace{grid-template-columns:1fr}.modalBack{position:fixed;inset:0;background:#07101acc;display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(500px,100%);background:#fff;border-radius:14px;padding:28px;box-shadow:0 30px 90px #0007}.modal h2{margin-top:0}.modal p{color:#6f7d8f}.modal label{display:block;font-size:13px;font-weight:700;margin:15px 0 7px}.modalActions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.modalActions button{padding:10px 14px;border-radius:8px;border:1px solid #d8e0e9;background:#fff}.modalActions .primarySmall{background:#1769d2;color:#fff;border-color:#1769d2}.projectButton{width:100%;text-align:left;cursor:pointer;font:inherit}.projectButton:hover{border-color:#9fc1ef;box-shadow:0 5px 18px #1c5fa00d}.backBtn{display:block;border:0;background:none;color:#1769d2;font-weight:700;padding:0;margin-bottom:10px;cursor:pointer}.detailGrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(360px,.7fr);grid-gap:15px;gap:15px;margin-top:25px}.docsPanel{min-height:560px}.docBody{padding:18px}.uploadZone{border:1.5px dashed #b9c9db;background:#f8fbff;border-radius:10px;padding:28px;text-align:center;display:grid;grid-gap:6px;gap:6px;color:#66768a;cursor:pointer}.uploadZone strong{color:#1769d2;font-size:15px}.uploadZone span{font-size:11px}.documents{display:grid;grid-gap:9px;gap:9px;margin:18px 0}.noDocs{padding:28px;text-align:center;color:#7a8797;border:1px solid #edf0f3;border-radius:9px}.docRow{display:grid;grid-template-columns:45px minmax(0,1fr) auto auto auto;grid-gap:12px;gap:12px;align-items:center;padding:12px;border:1px solid #e6ebf1;border-radius:9px}.pdfIcon{height:40px;border-radius:7px;background:#fff0f0;color:#c73b3b;display:grid;place-items:center;font-size:10px;font-weight:900}.docInfo{min-width:0}.docInfo b,.docInfo small{display:block}.docInfo b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.docInfo small{color:#8490a0;font-size:10px;margin-top:4px}.deleteBtn,.docAction{font-size:11px;border:1px solid #d8e0e9;background:#fff;border-radius:7px;padding:7px 9px;text-decoration:none;color:#31445c;cursor:pointer}.deleteBtn{color:#b42318}.analysisBar{margin-top:22px;border-top:1px solid #e7ebf0;padding-top:18px;display:flex;justify-content:space-between;gap:20px;align-items:center}.analysisBar small{display:block;color:#7b8797;margin-top:4px;max-width:600px}.analysisBar .primarySmall{background:#1769d2;color:#fff;border-color:#1769d2;white-space:nowrap}.analysisBar .primarySmall:disabled{opacity:.45}.success{margin-top:12px;padding:9px;background:#eaf8f0;color:#238653;font-size:12px}.miniViewer{height:560px;overflow:hidden}.detailLoading{padding:50px;text-align:center}.projectCard{border-style:solid}@media(max-width:1100px){.detailGrid{grid-template-columns:1fr}.miniViewer{height:460px}}@media(max-width:700px){.docRow{grid-template-columns:40px 1fr}.deleteBtn,.docAction,.docRow .status{grid-column:2}.analysisBar{align-items:stretch;flex-direction:column}}.analysisResults{margin-top:18px}.resultBody{padding:18px}.metricGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:12px;gap:12px}.metricGrid>div{border:1px solid #dbe4ee;border-radius:10px;padding:14px;background:#f8fbff}.metricGrid b,.metricGrid small{display:block}.metricGrid small{color:#718096;margin-bottom:6px}.metricGrid b{font-size:20px}.floorResults{margin-top:20px}.floorBlock{border-top:1px solid #e5eaf0;padding:14px 0}.floorHead{display:flex;justify-content:space-between;gap:16px}.floorHead span{color:#64748b}.roomGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:10px}.roomItem{padding:10px;border:1px solid #e5eaf0;border-radius:8px}.roomItem b,.roomItem small,.roomItem span{display:block}.roomItem small,.roomItem span{color:#64748b;margin-top:3px}.analysisLine{margin-top:14px;padding:12px;background:#f8fbff;border-radius:8px}.warning{margin-top:10px;padding:10px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px}@media(max-width:1100px){.metricGrid{grid-template-columns:repeat(3,1fr)}.roomGrid{grid-template-columns:repeat(2,1fr)}}.roofEditor{margin-top:22px}.roofLayout{grid-template-columns:360px minmax(0,1fr)}.roofControls,.roofLayout{display:grid;grid-gap:15px;gap:15px}.roofControls{padding:18px;align-content:start}.roofControls h3{margin:0}.roofControls label{display:grid;grid-gap:5px;gap:5px;font-size:12px;font-weight:700}.roofControls input,.roofControls select,.roofControls textarea{width:100%;padding:9px;border:1px solid #d8e0e9;border-radius:7px;background:#fff}.roofPair{grid-gap:10px;gap:10px}.roofStage{height:600px;overflow:hidden}.roofStage .canvasWrap{height:544px}.roofMetrics{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.roofMetric{padding:10px;background:#f8fbff;border:1px solid #dbe4ee;border-radius:8px}.roofMetric b,.roofMetric small{display:block}.roofMetric small{color:#718096}.roofActions{display:flex;gap:8px}.roofActions button{flex:1 1}.roofNote{font-size:11px;color:#718096;background:#f8fafc;padding:10px;border-radius:8px}.roofTabs{gap:8px}.roofTabs button{border:1px solid #d8e0e9;background:#fff;padding:7px 9px;border-radius:7px}.roofTabs .selected{background:#1769d2;color:#fff}.planPreview{height:230px;border:1px solid #dbe4ee;border-radius:9px;background:linear-gradient(#eef3f8 1px,transparent 0),linear-gradient(90deg,#eef3f8 1px,transparent 0);background-size:20px 20px;display:grid;place-items:center;position:relative}.planRect{border:3px solid #27496d;background:#fff9;width:72%;height:62%;position:relative}.ridgeLine{position:absolute;top:50%;left:0;right:0;border-top:2px dashed #2f80ed}.kneeLabel{position:absolute;font-size:10px;background:#fff;padding:2px}.kneeLabel.left{left:4px;top:4px}.kneeLabel.right{right:4px;bottom:4px}@media(max-width:1050px){.roofLayout{grid-template-columns:1fr}.roofStage{height:500px}}.roofDesigner{margin-top:22px}.roofDesignerTop{display:grid;grid-template-columns:auto 1fr auto;grid-gap:14px;gap:14px;align-items:center;margin-bottom:12px}.roofDesignerTop>button{border:1px solid #d8e0e9;background:#fff;border-radius:8px;padding:9px 12px}.roofDesignerTop>div{display:grid;grid-gap:2px;gap:2px}.roofDesignerGrid{display:grid;grid-template-columns:330px minmax(480px,1fr) 270px;grid-gap:14px;gap:14px;align-items:start}.roofToolbox,.surfacePanel{padding:16px;display:grid;grid-gap:10px;gap:10px;max-height:720px;overflow:auto}.roofToolbox h3,.surfacePanel h3{margin:8px 0 2px;font-size:14px}.roofToolbox label{display:grid;grid-gap:5px;gap:5px;font-size:11px;font-weight:700}.roofToolbox input,.roofToolbox select,.roofToolbox textarea,.roofToolbox>select{width:100%;padding:8px;border:1px solid #d8e0e9;border-radius:7px;background:#fff}.roofCaveat,.sourceHint{font-size:10px;line-height:1.45;color:#64748b;background:#f8fafc;border-radius:7px;padding:9px}.footprintMini{height:120px;background:linear-gradient(#edf2f7 1px,transparent 0),linear-gradient(90deg,#edf2f7 1px,transparent 0);background-size:16px 16px;border:1px solid #e2e8f0;border-radius:8px;display:grid;place-items:center}.footprintMini>div{max-width:75%;max-height:85%;min-width:60px;min-height:45px;border:2px solid #294b70;background:#dbeafe99;display:grid;place-items:center}.footprintMini span{font-size:9px;color:#294b70}.roof3d{height:720px;overflow:hidden}.roofCanvas{height:664px}.surfaceSummary{grid-gap:5px 10px;gap:5px 10px;padding:10px;background:#f8fbff;border:1px solid #dbe4ee}.surfaceSummary small{color:#64748b}.surfaceList{display:grid;grid-gap:6px;gap:6px}.surfaceList button{display:flex;justify-content:space-between;gap:8px;border:1px solid #e2e8f0;background:#fff;padding:9px;border-radius:7px;text-align:left;cursor:pointer}.surfaceList button.active{border-color:#2f80ed;background:#eff6ff}.selectedSurface{display:grid;grid-gap:3px;gap:3px;padding:12px;border-radius:8px;background:#102033;color:#fff}.selectedSurface span{font-size:10px;color:#9fb1c4}.selectedSurface strong{font-size:22px}.surfacePanel{height:720px}@media(max-width:1250px){.roofDesignerGrid{grid-template-columns:300px 1fr}.surfacePanel{grid-column:1/-1;height:auto;max-height:none}.surfaceList{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.roofDesignerGrid{grid-template-columns:1fr}.roof3d{height:520px}.roofCanvas{height:464px}.roofDesignerTop,.surfaceList{grid-template-columns:1fr}}.roofV28Grid{grid-template-columns:330px minmax(520px,1fr) 300px;align-items:start}.roofV28Grid,.roofWork{display:grid;grid-gap:14px;gap:14px}.roofV28 .roofCanvas{height:520px}.nodeList{display:grid;grid-gap:5px;gap:5px;max-height:190px;overflow:auto;margin:8px 0}.nodeList button{text-align:left}.editCard{border:1px solid #d9e2ec;background:#f8fafc;border-radius:10px;margin:9px 0;grid-gap:7px;gap:7px}.pdfUnderlay{overflow:hidden}.pdfUnderlay iframe{width:100%;height:520px;border:0;background:#e9eef4}.nodeTag{background:#fff;border:1px solid #cbd5e1;border-radius:4px;padding:1px 4px;font-size:9px;font-weight:700;white-space:nowrap}.surfaceList button small{display:block;color:#64748b}@media(max-width:1200px){.roofV28Grid{grid-template-columns:300px 1fr}.surfacePanel{grid-column:1/-1}}@media(max-width:800px){.roofV28Grid{grid-template-columns:1fr}.pdfUnderlay iframe,.roofV28 .roofCanvas{height:420px}}.roofV4{margin-top:18px}.roofV4Top{display:grid;grid-template-columns:auto 1fr auto;grid-gap:14px;gap:14px;align-items:center;margin-bottom:12px}.roofV4Top>button{border:1px solid #d8e0e9;background:#fff;border-radius:8px;padding:9px 12px}.roofV4Top>div{display:grid;grid-gap:2px;gap:2px}.roofV4Layout{display:grid;grid-template-columns:300px minmax(520px,1fr) 280px;grid-gap:14px;gap:14px;align-items:start}.roofV4Areas,.roofV4Tools{padding:15px;display:grid;grid-gap:10px;gap:10px;max-height:760px;overflow:auto}.roofV4Areas h3,.roofV4Tools h3{font-size:14px;margin:7px 0 0}.roofV4Tools label{display:grid;grid-gap:4px;gap:4px;font-size:11px;font-weight:700}.roofV4Tools input,.roofV4Tools select,.roofV4Tools>select{width:100%;padding:8px;border:1px solid #d8e0e9;border-radius:7px;background:#fff}.roofPair{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.roofTypeGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.roofTabs button,.roofTypeGrid button{border:1px solid #d8e0e9;background:#fff;border-radius:7px;padding:8px;cursor:pointer}.roofV4Work{display:grid;grid-gap:8px;gap:8px}.roofTabs{display:flex;gap:6px}.roofTabs button.active{background:#1673d1;color:#fff;border-color:#1673d1}.roofV4Stage{height:700px;overflow:hidden}.roofV4Stage iframe{width:100%;height:100%;border:0}.roofCanvas,.roofPlan{height:100%}.roofPlan{width:100%;display:block}.roofLabel{white-space:nowrap;background:#fff;border:1px solid #bfd0e0;border-radius:5px;padding:2px 5px;font-size:10px;font-weight:800;color:#17324d;box-shadow:0 1px 3px #0002}.roofJoinInfo{padding:10px 12px;border:1px solid #f1c36d;background:#fff8e8;border-radius:8px;font-size:11px;line-height:1.45}.roofLegend{grid-gap:5px;gap:5px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px;font-size:11px}.surfaceList button span{display:grid;grid-gap:2px;gap:2px}.surfaceList button small{color:#7b8ca0;font-size:9px}.editCard{display:grid;grid-gap:8px;gap:8px;padding:10px;background:#f8fbff;border:1px solid #dbe4ee;border-radius:8px}.deleteBtn{border:1px solid #f2b8b5!important;color:#b42318!important;background:#fff!important}.success{background:#eaf8ef;color:#167342;padding:8px;border-radius:7px;font-size:11px}.sourceHint{font-size:10px;color:#64748b;background:#f8fafc;border-radius:7px;padding:9px}@media(max-width:1250px){.roofV4Layout{grid-template-columns:280px 1fr}.roofV4Areas{grid-column:1/-1;max-height:none}.roofV4Stage{height:600px}}@media(max-width:850px){.roofV4Layout{grid-template-columns:1fr}.roofV4Stage{height:520px}.roofV4Top{grid-template-columns:1fr}.roofTypeGrid{grid-template-columns:1fr 1fr}}.roofV5{padding:0 24px 28px}.roofV5Top{display:flex;align-items:center;gap:18px;margin-bottom:14px}.roofV5Top b{flex:1 1}.roofV5Grid{grid-template-columns:245px minmax(0,1fr) 280px;grid-gap:12px;gap:12px}.roofV5Props,.roofV5Side{padding:14px;max-height:calc(100vh - 155px);overflow:auto}.roofV5Props h3,.roofV5Side h3{margin:12px 0 8px}.roofV5Props label,.roofV5Side label{display:block;font-size:11px;font-weight:700;margin:7px 0}.roofV5Props input,.roofV5Side input,.roofV5Side select{width:100%;padding:8px;border:1px solid #d7e0ea;border-radius:7px;background:#fff}.roofV5Side button{width:100%;margin:4px 0;padding:9px;border:1px solid #ccd9e6;border-radius:7px;background:#fff;cursor:pointer}.roofV5Side .activeTool{background:#e8f3ff;border-color:#1673d1;color:#075cac}.roofV5Main{display:grid;grid-template-rows:minmax(390px,56vh) 300px;grid-gap:12px;gap:12px}.roofOverlay{background:#f7f9fc}.roofOverlay svg{width:100%;display:block}.roof3DLive{overflow:hidden;position:relative}.roof3DLive .panelTitle{height:42px}.roof3DLive>div:last-child{height:calc(100% - 42px)}.roofV5Props>button{width:100%;display:flex;justify-content:space-between;padding:10px;margin:5px 0;border:1px solid #d7e0ea;border-radius:8px;background:#fff}.roofV5Props .surfaceActive{border-color:#1673d1;background:#edf6ff}.nodeTable>div{display:grid;grid-template-columns:28px repeat(3,1fr);grid-gap:4px;gap:4px;align-items:end;border-bottom:1px solid #edf1f5;padding:5px 0}.nodeTable>div.picked{background:#fff4e8}.nodeTable label{margin:0}.nodeTable input{padding:5px}.surfaceSummary{margin-top:14px;display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px;padding:12px;background:#f5f8fb;border-radius:8px}@media(max-width:1100px){.roofV5Grid{grid-template-columns:220px 1fr}.roofV5Props{grid-column:1/-1;max-height:none}.roofV5Main{grid-template-rows:500px 300px}}.roofConstraint{margin-top:14px;padding:12px;border:1px solid #cfe0f2;border-radius:10px;background:#f7fbff}.roofConstraint h3{margin-top:0}.roofConstraint select{width:100%;padding:8px;border:1px solid #d7e0ea;border-radius:7px;background:#fff}.constraintStats{display:grid;grid-template-columns:1fr auto;grid-gap:7px;gap:7px;margin:10px 0;padding:10px;background:#fff;border-radius:8px}.constraintStats span{font-size:11px;color:#60758a}.constraintStats b{font-size:12px}.roofOverlay image{image-rendering:auto}.roofSteps{display:flex;gap:8px;margin:0 0 14px}.roofSteps span{padding:8px 13px;border-radius:999px;background:#e9eef5;color:#617083;font-size:12px;font-weight:800}.roofSteps span.on{background:#1673d1;color:#fff}.floorPicker{padding:24px;max-width:1050px}.floorPicker>div:first-child{margin-bottom:18px}.floorCards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.floorCards button{text-align:left;padding:18px;border:1px solid #d7e1ec;border-radius:12px;background:#fff;cursor:pointer}.floorCards button:hover{border-color:#1673d1;box-shadow:0 5px 18px #1b64a817}.floorCards b,.floorCards em,.floorCards span,.floorCards strong{display:block}.floorCards strong{font-size:25px;margin:9px 0}.floorCards span{color:#65758b}.floorCards em{font-style:normal;color:#0874d8;font-weight:800;margin-top:16px}.chosenFloor{padding:10px;background:#edf6ff;border-radius:8px}.chosenFloor b,.chosenFloor span{display:block}.chosenFloor span{font-size:11px;color:#64748b;margin-top:3px}.roofLegend{display:grid;grid-gap:6px;gap:6px;margin-bottom:12px}.roofLegend span{font-size:12px;display:flex;align-items:center;gap:7px}.roofLegend i{width:22px;height:4px;border-radius:3px}.nodePickList{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px;gap:5px;margin:9px 0 14px}.nodePickList button{padding:7px;border:1px solid #d7e0ea;background:#fff;border-radius:6px;text-align:left}.nodePickList button span{display:block;font-size:9px;color:#7a8798}.nodePickList button.picked{border-color:#ff8b22;background:#fff5e9}.floorEmpty{padding:30px}@media(max-width:900px){.floorCards{grid-template-columns:1fr}}.roofHistoryActions{display:flex;gap:8px;align-items:center}.roofHistoryActions button{white-space:nowrap}.roofOverlay{position:relative;overflow:hidden}.roof2DControls{position:absolute;z-index:8;left:12px;top:12px;display:flex;align-items:center;gap:6px;background:hsla(0,0%,100%,.94);padding:6px 8px;border:1px solid #d7e0ea;border-radius:8px}.roof2DControls button{min-width:36px;height:34px;border:1px solid #b8c7d8;background:#fff;border-radius:6px;cursor:pointer;font-weight:700}.roof2DControls span{font-size:11px;color:#536579;margin-left:4px}.dangerButton{width:100%;margin-top:10px;border:1px solid #e2a3a3!important;background:#fff5f5!important;color:#a51f1f!important}.roofOverlay svg{touch-action:none;cursor:crosshair}.roofContextMenu{font:12px/1.3 system-ui,sans-serif;background:#fff;border:1px solid #b9c9da;border-radius:9px;box-shadow:0 8px 28px rgba(20,45,70,.22);padding:8px;display:flex;flex-direction:column;gap:6px;color:#17324d}.roofContextMenu b{padding:3px 5px}.roofContextMenu button{width:100%;text-align:left;padding:8px 9px;border:1px solid #d6e0ea;border-radius:6px;background:#fff;cursor:pointer}.roofContextMenu button:hover{background:#eef6ff}.roofContextMenu button.danger{color:#a51f1f;border-color:#efc3c3;background:#fff7f7}.floorEditorTabs{display:flex;gap:8px;padding:0 20px 10px;flex-wrap:wrap}.floorEditorTabs button{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:8px 12px;display:flex;gap:8px;align-items:center}.floorEditorTabs button small{color:#667085}.floorEditorTabs .activeTool{background:#e8f2ff;border-color:#2583d8;color:#075ea8}.floorRoomRow{display:flex;justify-content:space-between;border-bottom:1px solid #eaecf0;font-size:12px}.metricBox{display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px;font-size:12px;padding:10px;background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px}.metricBox b{text-align:right}.floorStudio{padding:0 18px 26px}.floorStudioTop{height:48px;display:flex;align-items:center;gap:14px}.floorStudioTop>b{flex:1 1}.floorStudioTop>div{display:flex;gap:7px}.floorStudioTop button{border:1px solid #d0d5dd;background:#fff;border-radius:7px;padding:8px 12px}.floorStudioGrid{display:grid;grid-template-columns:220px minmax(720px,1fr) 285px;grid-gap:12px;gap:12px;align-items:start}.floorStudioSide{background:#142334;color:#fff;border-radius:10px;padding:15px;min-height:720px}.floorStudioSide h3{margin:4px 0 12px}.floorLevelList{display:grid;grid-gap:7px;gap:7px;margin-bottom:22px}.floorLevelList button{background:#203348;color:#fff;border:1px solid #31485f;border-radius:8px;padding:12px;text-align:left;display:flex;flex-direction:column;gap:3px}.floorLevelList button.active{background:#1675e0;border-color:#328cf0}.floorLevelList span{font-size:12px;opacity:.85}.floorStudioSide label{display:grid;grid-gap:6px;gap:6px;font-size:12px;margin:8px 0}.floorStudioSide input[type=number]{padding:9px;border-radius:7px;border:0}.floorCheck{display:flex;gap:8px;align-items:center;margin:9px 0;font-size:13px}.floorRebuild{width:100%;padding:10px;margin-top:14px;border:0;border-radius:7px;background:#fff;color:#075cab;font-weight:700}.floorStudioMsg{font-size:11px;line-height:1.45;margin-top:12px;color:#dbe8f5}.floorStudioMain{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.floorPane,.floorStudioRight section,.floorThumbs{background:#fff;border:1px solid #dce3eb;border-radius:10px;overflow:hidden}.floorPaneHead{padding:12px 14px 6px}.floorPaneHead h2{font-size:16px;margin:0 0 8px}.floorTools{display:flex;gap:7px;flex-wrap:wrap}.floorTools button,.floorViewButtons button{border:1px solid #d7dee7;background:#fff;border-radius:6px;padding:7px 10px}.floorTools button.active,.floorViewButtons button.active{background:#1675e0;color:#fff;border-color:#1675e0}.floorSvgWrap{height:535px}.floorSvgWrap svg{width:100%;height:100%;display:block}.floorStats{display:grid;grid-template-columns:2fr 1fr 1fr;border-top:1px solid #e4e7ec}.floorStats span{padding:10px 12px;font-size:11px;border-right:1px solid #e4e7ec}.floorStats b{display:block;font-size:15px;margin-top:4px}.floor3dCanvas{height:535px;background:#f8fafc}.floorViewButtons{display:flex;gap:5px;padding:8px;border-top:1px solid #e4e7ec;justify-content:center}.floorThumbs{grid-column:1/-1;padding:10px 12px}.floorThumbs h3{margin:0 0 8px;font-size:14px}.floorThumbs>div{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.floorThumbs button{height:105px;text-align:left;border:1px solid #dce3eb;background:#fff;border-radius:7px;padding:8px;position:relative}.floorThumbs button.active{border:2px solid #1675e0}.floorThumbs button span{display:block;color:#475467;font-size:11px}.miniPlan{position:absolute;right:12px;bottom:10px;font-size:38px;color:#344054}.floorStudioRight{display:grid;grid-gap:10px;gap:10px}.floorStudioRight section{padding:13px}.floorStudioRight h3{margin:0 0 8px;font-size:15px}.floorStudioRight h3 small{font-weight:400}.floorStudioRight p{font-size:12px;line-height:1.5;color:#344054}.floorStudioRight .primarySmall{width:100%;margin-top:5px}.floorRoomRow{display:grid;grid-template-columns:1fr auto;grid-gap:2px 8px;gap:2px 8px;padding:7px 0;border-bottom:1px solid #edf0f3}.floorRoomRow b,.floorRoomRow span{font-size:12px}.floorRoomRow small{grid-column:1/-1;color:#667085}.floorControl{display:grid;grid-template-columns:1fr auto;grid-gap:9px;gap:9px;font-size:12px;background:#f8fafc;border:1px solid #e4e7ec;border-radius:7px;padding:10px}.floorControl b{text-align:right}.floorValidated{border-left:4px solid #22a06b!important}.floorValidated b{color:#137a50}@media(max-width:1350px){.floorStudioGrid{grid-template-columns:200px 1fr}.floorStudioRight{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.floorStudioMain{grid-template-columns:1fr 1fr}}@media(max-width:1000px){.floorStudioGrid{grid-template-columns:1fr}.floorStudioSide{min-height:auto}.floorStudioMain{grid-template-columns:1fr}.floorThumbs{grid-column:1}.floorStudioRight{grid-column:1;grid-template-columns:1fr}}.floorStudio{padding:0 8px 30px}.floorStudioGrid{grid-template-columns:245px minmax(0,1fr) 310px;gap:14px}.floorStudioSide{min-height:820px}.floorStudioMain{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.floor3dCanvas,.floorSvgWrap{height:650px}.floorPaneHead{min-height:78px}.floorPaneHead h2{font-size:18px}.floorTools button{font-size:13px;padding:9px 12px}.floorThumbs button{height:130px}.floorStudioRight section{padding:16px}.floorStudioRight{gap:14px}.floorStats b{font-size:17px}.roofV5{padding:0 8px 30px}.roofV5Grid{display:grid;grid-gap:14px;gap:14px;align-items:stretch}.roofV5Main{display:contents}.roofV5Props,.roofV5Side{max-height:820px;min-height:820px}.roof3DLive,.roofOverlay{height:820px}.roof3DLive .panelTitle{height:52px}.roof3DLive>div:last-child{height:calc(100% - 52px)}.roofOverlay svg{background:#fff}.roof2DControls{font-size:13px}.roof2DControls span{font-size:12px}.roofV5Props{grid-column:4}.roofV5Side{grid-column:1}.roofOverlay{grid-column:2}.roof3DLive{grid-column:3}@media(max-width:1500px){.floorStudioGrid{grid-template-columns:220px minmax(0,1fr) 270px}.floor3dCanvas,.floorSvgWrap{height:590px}.roofV5Grid{grid-template-columns:220px minmax(0,1fr) minmax(0,1fr) 270px}.roof3DLive,.roofOverlay,.roofV5Props,.roofV5Side{min-height:720px;height:720px}}@media(max-width:1180px){.roofV5Grid{grid-template-columns:220px 1fr 1fr}.roofV5Props{grid-column:1/-1;min-height:auto;height:auto;max-height:none}.floorStudioRight{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}}.floorContextMenu{min-width:210px;background:#fff;border:1px solid #cfd8e3;border-radius:9px;box-shadow:0 12px 35px rgba(16,24,40,.22);padding:8px;display:grid;grid-gap:5px;gap:5px}.floorContextMenu b{padding:6px 8px;font-size:13px}.floorContextMenu button{border:0;background:#f8fafc;text-align:left;border-radius:6px;padding:9px 10px;cursor:pointer}.floorContextMenu button:hover{background:#eef4fb}.floorSvgWrap{min-height:650px}.floor2dPane svg text{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;stroke-opacity:.92}.floorExact{position:fixed;inset:0;z-index:50;background:#f5f8fc;color:#0d1b36;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;overflow:auto}.exactTopNav{height:62px;margin-left:224px;background:#fff;border-bottom:1px solid #dfe6ee;display:flex;align-items:center;padding:0 14px;gap:10px}.exactTopNav nav{display:flex;gap:8px;flex:1 1}.exactTopNav button{height:40px;border:0;border-radius:8px;background:#f0f3f7;color:#0d1b36;padding:0 16px;font-size:14px;font-weight:600}.exactTopNav nav button.active{background:#0878f9;color:#fff}.exactTopNav .iconBtn{width:44px;padding:0;font-size:20px}.exactProject{font-weight:700;margin-right:18px}.exactBody{display:grid;grid-template-columns:224px minmax(920px,1fr) 300px;grid-gap:10px;gap:10px;min-height:calc(100vh - 62px)}.exactSidebar{grid-column:1;grid-row:1;background:linear-gradient(180deg,#0d1e2f,#10283b);color:#fff;padding:0 14px 22px;position:-webkit-sticky;position:sticky;top:0;height:100vh;margin-top:-62px}.exactBrand{height:68px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a3b4a}.exactBrand>span{display:grid;place-items:center;width:36px;height:36px;border-radius:7px;background:#0878f9;font-size:20px;font-weight:900}.exactBrand b{font-size:23px;letter-spacing:.2px}.exactBrand small{display:block;font-size:11px;font-weight:400}.exactSidebar h3{font-size:17px;margin:18px 0 9px}.exactProjectBlock>div{font-size:16px;margin-bottom:10px}.exactProjectBlock>button,.recalc{width:100%;height:42px;border:0;border-radius:7px;background:#0878f9;color:#fff;font-weight:700;font-size:14px}.exactLevels{display:grid;grid-gap:5px;gap:5px}.exactLevels button{height:64px;border:1px solid #324a5e;border-radius:7px;background:#193349;color:#fff;text-align:left;padding:8px 12px}.exactLevels button.active{background:#0878f9;border-color:#2b93ff}.exactLevels b,.exactLevels span{display:block}.exactLevels b{font-size:15px}.exactLevels span{font-size:13px;margin-top:4px}.exactSidebar label:not(.exactCheck){display:grid;grid-gap:6px;gap:6px;font-size:13px}.exactSidebar input[type=number]{height:38px;border:0;border-radius:6px;padding:0 10px;font-size:14px}.exactCheck{display:flex!important;align-items:center;gap:8px;margin:10px 0;font-size:13px}.exactCheck input{width:20px;height:20px;accent-color:#0878f9}.recalc{background:#fff;color:#0878f9;margin-top:9px}.exactMsg{display:block;margin-top:9px;line-height:1.35;color:#d7e6f3}.exactWorkspace{grid-column:2;display:grid;grid-template-columns:minmax(520px,1.12fr) minmax(430px,.88fr);grid-gap:8px;gap:8px;padding:8px 0 10px}.exactCard,.exactRight section,.exactThumbs{background:#fff;border:1px solid #dce4ed;border-radius:6px;box-shadow:0 1px 2px rgba(16,24,40,.03)}.exactCard{position:relative;overflow:hidden;height:755px}.exactCard h2{font-size:17px;margin:11px 12px 8px}.exactToolbar,.viewToolbar{display:flex;gap:5px;padding:0 12px 8px}.exactToolbar button,.roomActions button,.viewToolbar button{height:36px;border:1px solid #d9e1ea;background:#fff;border-radius:6px;padding:0 11px;font-size:12px;color:#0d1b36}.exactToolbar button.active,.viewToolbar button.active{background:#0878f9;border-color:#0878f9;color:#fff}.exactSvg{height:685px;padding:0 6px 5px}.exactSvg svg{width:100%;height:100%;display:block;touch-action:none}.exactSvg svg text{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}.exact3dCanvas{height:665px;background:#f8fafc}.viewToolbar{position:absolute;z-index:2;top:43px;left:0}.exact3dCanvas canvas{background:linear-gradient(#fff,#f7f9fb)}.exactThumbs{grid-column:1/-1;height:165px;padding:10px 12px}.exactThumbs h3{font-size:14px;margin:0 0 9px}.exactThumbs>div{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.exactThumbs button{height:110px;border:1px solid #dce4ed;border-radius:5px;background:#fff;padding:12px;text-align:left;display:flex;justify-content:space-between}.exactThumbs button.active{border:2px solid #0878f9}.exactThumbs b,.exactThumbs span{display:block}.exactThumbs b{font-size:13px}.exactThumbs span{font-size:12px;color:#496078;margin-top:4px}.thumbGlyph{font-size:38px!important;color:#202326!important;align-self:center}.exactRight{grid-column:3;display:grid;align-content:start;grid-gap:10px;gap:10px;padding:8px 10px 10px 0}.exactRight section{padding:12px}.exactRight h2{font-size:16px;margin:0 0 10px}.exactRight dl{display:grid;grid-template-columns:1fr auto;grid-gap:9px;gap:9px;margin:0;padding:10px;background:#fbfcfe;border:1px solid #e3e8ef;border-radius:5px}.exactRight dt{font-size:12px;color:#334a68}.exactRight dd{margin:0;font-size:13px;font-weight:800}.exactRoomList{border:1px solid #e3e8ef;border-radius:5px;overflow:hidden}.exactRoomList button{width:100%;height:36px;border:0;border-bottom:1px solid #edf0f4;background:#fff;display:grid;grid-template-columns:18px 1fr auto 18px;align-items:center;text-align:left;grid-gap:7px;gap:7px;padding:0 8px}.exactRoomList button:last-child{border-bottom:0}.exactRoomList b,.exactRoomList span{font-size:12px}.exactRoomList em{font-style:normal;font-weight:900}.dot{width:14px;height:14px;border-radius:50%;display:block}.d0{background:#aee2a8}.d1{background:#79c7f7}.d2{background:#f8b7b7}.d3{background:#ccc}.d4,.d5,.d6{background:#efd4aa}.d7{background:#9cc7ff}.roomActions{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px;margin-top:8px}.roomActions button.danger{color:#e32626}.statusCard{margin-top:auto}.statusCard>div{display:flex;gap:10px}.statusCard strong{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#21b45b;color:#fff;font-size:22px;flex:0 0 auto}.statusCard p{font-size:12px;line-height:1.55;margin:0;color:#334a68}.statusCard p b{color:#0d1b36}.floorContextMenu{position:fixed;z-index:9999}@media(max-width:1250px){.exactBody{grid-template-columns:210px minmax(760px,1fr) 270px}.exactTopNav{margin-left:210px}.exactSidebar{width:auto}.exactCard{height:690px}.exactSvg{height:620px}.exact3dCanvas{height:600px}}.exactRoomList button{cursor:pointer}.exactRoomList button:hover{background:#f2f7ff}.exactRoomList button.selected{background:#e7f2ff;box-shadow:inset 3px 0 0 #0878f9}.exactSvg polygon[data-hit=room]{pointer-events:all;cursor:pointer}.exactSvg polygon[data-hit=room]:hover{filter:brightness(.96)}.facadeHint{font-size:11px;color:#667085;line-height:1.35;margin:0 0 8px}.facadeRows{display:flex;flex-direction:column;gap:5px}.facadeRow{display:flex;justify-content:space-between;align-items:center;padding:7px 8px;border:1px solid #e3e8ef;border-radius:5px;background:#fff}.facadeRow span{display:flex;flex-direction:column}.facadeRow small{font-size:10px;color:#667085}.facadeRow strong{font-size:12px}.exactRight .facadeTotal{margin-top:9px!important;padding-top:8px;border-top:1px solid #d9e0e8}.facadeTotal dd{font-weight:800!important}.floorExact{overflow:hidden}.exactBody{overflow:hidden}.exactBody,.exactWorkspace{height:calc(100vh - 62px);min-height:0}.exactWorkspace{box-sizing:border-box;grid-template-rows:minmax(0,1fr) 165px;align-items:stretch;padding:8px 0 0}.exactCard{height:auto;min-height:0;align-self:stretch}.exact2d{display:flex;flex-direction:column}.exact2d .exactSvg{height:auto;min-height:0;flex:1 1 auto;padding-bottom:0}.exact3d{display:flex;flex-direction:column}.exact3d .exact3dCanvas{height:auto;min-height:0;flex:1 1 auto}.exactThumbs{height:auto;align-self:stretch;margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.exactRight,.exactThumbs{min-height:0;box-sizing:border-box}.exactRight{height:calc(100vh - 62px);overflow-y:auto}@media(max-width:1250px){.exact3dCanvas,.exactCard,.exactSvg{height:auto}}.roofPresetBar{margin:10px 0 12px;padding:10px 12px;background:#fff}.roofPresetHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:8px}.roofPresetHead>div:first-child{display:flex;flex-direction:column;gap:2px}.roofPresetHead span{font-size:11px;color:#607086}.presetQuick{display:flex;gap:8px}.presetQuick label{font-size:10px;font-weight:700;color:#526173}.presetQuick input{display:block;width:95px;padding:6px;border:1px solid #ccd9e6;border-radius:5px;margin-top:3px}.roofPresetCards{display:grid;grid-template-columns:repeat(10,minmax(86px,1fr));grid-gap:6px;gap:6px}.roofPresetCards button{height:104px;background:#fff;border:1px solid #d7e2ed;border-radius:6px;padding:5px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:space-between;color:#15263a}.roofPresetCards button:hover{border-color:#1683ee;background:#f5faff}.roofPresetCards button.active{border:2px solid #1683ee;background:#eef7ff}.roofPresetCards svg{width:74px;height:60px}.roofPresetCards b{font-size:11px;white-space:nowrap}.roofV5Props select{width:100%;padding:8px;border:1px solid #d7e0ea;border-radius:7px;background:#fff}.selectedPresetPreview{height:92px;margin:7px 0;border:1px solid #e0e7ef;border-radius:7px;display:flex;align-items:center;justify-content:center;background:#fbfdff}.selectedPresetPreview svg{width:120px;height:82px}.applyPresetButton{width:100%;padding:9px!important;margin:8px 0!important;border:0!important;border-radius:6px!important;background:#0878ed!important;color:#fff!important;font-weight:700;justify-content:center!important}.roofV5Grid{grid-template-columns:245px minmax(0,1fr) minmax(0,1fr) 310px}.roof3DLive,.roofOverlay,.roofV5Props,.roofV5Side{height:calc(100vh - 355px);min-height:500px;max-height:none}.roofOverlay svg{height:100%}.roofV5Props,.roofV5Side{overflow:auto}@media(max-width:1500px){.roofPresetCards{grid-template-columns:repeat(5,1fr)}.roofPresetCards button{height:92px}.roofPresetCards svg{height:48px}.roof3DLive,.roofOverlay,.roofV5Props,.roofV5Side{height:600px}}.exportPage{min-height:100vh;background:#f4f7fa;color:#14202b}.exportTop{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid #d9e1e8}.exportTop h1{margin:3px 0;font-size:24px}.exportTop p{margin:0;color:#687887}.exportTop span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#0878f9}.exportTop nav{display:flex;gap:8px}.exportTabs button,.exportTop button{border:1px solid #cbd6df;background:#fff;border-radius:6px;padding:9px 12px;font-weight:700;cursor:pointer}.exportTabs button.active,.exportTop button.active{background:#0878f9;color:#fff;border-color:#0878f9}.exportTabs{display:flex;gap:8px;padding:14px 24px 0;max-width:1500px;margin:auto}.exportReport{max-width:1500px;margin:0 auto;padding:14px 24px 60px}.exportSection{background:#fff;border:1px solid #dbe3ea;border-radius:10px;margin-bottom:18px;padding:18px}.exportSectionHead{display:flex;gap:14px;align-items:center;border-bottom:1px solid #e6ebef;padding-bottom:12px;margin-bottom:16px}.exportSectionHead>span{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:#0878f9;color:#fff;font-weight:900}.exportSectionHead h2{margin:0;font-size:21px}.exportSectionHead p{margin:3px 0 0;color:#687887}.exportViews{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.exportViews.single{grid-template-columns:minmax(420px,760px)}.exportViews article,.facadeDetailGrid article{border:1px solid #dfe6ec;border-radius:8px;overflow:hidden;background:#fbfcfd}.exportViews h3{font-size:13px;margin:0;padding:10px 12px;border-bottom:1px solid #e5eaee}.exportSvg{display:block;width:100%;height:340px;background:#fff}.exportMetrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;margin-top:14px}.exportMetrics>div{border:1px solid #dfe6ec;border-radius:7px;padding:12px}.exportMetrics small{display:block;color:#6a7885;margin-bottom:4px}.exportMetrics b{font-size:18px}.exportSub{font-size:15px;margin:20px 0 8px}.exportSection table{width:100%;border-collapse:collapse;font-size:13px}.exportSection td,.exportSection th{padding:9px 10px;border-bottom:1px solid #e4e9ed;text-align:left}.exportSection th{background:#f2f6f9;color:#4f6070}.exportSection tfoot td{font-weight:900;background:#f8fafc}.facadeDetailGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:10px;gap:10px}.facadeDetailGrid article{padding:12px}.facadeDetailHead{display:flex;justify-content:space-between;border-bottom:1px solid #e5eaee;padding-bottom:8px}.facadeDetailHead span{font-size:12px;color:#607080}.facadeDetailGrid dl{display:grid;grid-template-columns:1fr auto;grid-gap:5px;gap:5px;margin:10px 0}.facadeDetailGrid dd,.facadeDetailGrid dt{margin:0}.facadeDetailGrid h4{margin:12px 0 6px}.openingRow{display:flex;justify-content:space-between;padding:5px 0;border-top:1px solid #edf0f2;font-size:12px}.exportEmpty,.exportLoading{padding:36px;color:#6b7884;text-align:center}.exportLoading{font-size:18px}@media(max-width:900px){.exportMetrics,.exportViews{grid-template-columns:1fr}.exportTop{position:static;align-items:flex-start;flex-direction:column}.exportTop nav{flex-wrap:wrap}}.roofPresetCards button:disabled{opacity:.38;cursor:not-allowed;background:#f5f7f9;border-color:#dce3ea}.faceActions{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px;margin-top:9px}.faceActions button{padding:8px 6px;border:1px solid #cbd8e5;border-radius:6px;background:#fff;font-weight:700;cursor:pointer}.faceActions .dangerButton{border-color:#efb4b4;color:#a32626;background:#fff8f8}.dormPage{min-height:100vh;background:#f5f7fa;color:#10213a}.dormTop{height:62px;display:flex;align-items:center;gap:8px;padding:0 18px;background:#fff;border-bottom:1px solid #d9e1ea;box-sizing:border-box}.dormTop button{border:0;background:#f7f9fb;padding:10px 13px;border-radius:6px;font-weight:700;color:#26364b;cursor:pointer}.dormTop button.active{background:#0878f9;color:#fff}.dormTop strong{margin-left:auto;font-size:12px}.dormGrid{display:grid;grid-template-columns:460px minmax(650px,1fr);height:calc(100vh - 62px)}.dormConfig{padding:22px 28px;background:#fff;border-right:1px solid #dbe3ec;overflow:auto}.dormConfig h2{margin:0 0 24px}.dormConfig h3{font-size:14px;margin:22px 0 12px;border-top:1px solid #e5eaf0;padding-top:18px}.dormConfig h2+h3{border-top:0;padding-top:0}.dormTypes{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.dormTypes button{height:126px;border:1px solid #ccd7e2;border-radius:7px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer}.dormTypes button.active{border:2px solid #0878f9;background:#f2f8ff;color:#0878f9}.dormTypes i{font-style:normal;font-size:42px;color:#596776}.dormFields{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.dormField>span{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.dormField>div{display:flex;border:1px solid #ccd7e2;border-radius:6px;overflow:hidden}.dormField input{width:100%;border:0;padding:10px;font-size:14px;outline:0}.dormField b{padding:10px;background:#f7f9fb;border-left:1px solid #dce3e9;font-size:12px}.autoDepth{margin-top:14px;padding:14px;border:1px solid #b9dafc;background:#eef7ff;border-radius:7px;display:grid;grid-template-columns:1fr auto;grid-gap:3px 10px;gap:3px 10px}.autoDepth span{font-size:12px;font-weight:700}.autoDepth strong{font-size:18px;color:#0878f9}.autoDepth small{grid-column:1/-1;color:#5b6b7d}.dormNote{font-size:12px;color:#5f6f80;background:#f7f9fb;padding:12px;border-radius:6px}.dormVisual{padding:14px;overflow:auto}.dormViewTabs{display:flex;gap:8px;margin-bottom:8px}.dormViewTabs button{border:0;border-radius:6px;padding:10px 16px;font-weight:700;background:#e9eef4}.dormViewTabs button.active{background:#0878f9;color:#fff}.dormCanvas{height:470px;background:linear-gradient(#edf5ff,#fff);border:1px solid #d7e1ec;border-radius:8px;overflow:hidden;position:relative}.dormDim{position:absolute;background:#fff;border:1px solid #93bcea;border-radius:4px;padding:5px 8px;font-weight:800;color:#173b67}.dormDimW{top:22px;left:48%}.dormDimD{bottom:20px;left:20px}.dormMini{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-top:10px}.dormMini article,.dormResults{background:#fff;border:1px solid #dbe3ec;border-radius:7px}.dormMini h4{margin:0;padding:9px 11px;border-bottom:1px solid #e4e9ee;font-size:12px}.dormMini svg{width:100%;height:145px}.dormMini text{font-size:12px;font-weight:700;fill:#26384e}.dormResults{margin-top:10px;padding:12px}.dormResults h3{margin:0 0 9px;font-size:14px}.dormResults dl{margin:0;display:grid;grid-template-columns:repeat(4,minmax(130px,1fr) auto);font-size:12px}.dormResults dd,.dormResults dt{margin:0;padding:8px;border-top:1px solid #edf0f3}.dormResults dd{font-weight:800;text-align:right}@media(max-width:1200px){.dormGrid{grid-template-columns:390px 1fr}.dormCanvas{height:400px}.dormResults dl{grid-template-columns:1fr auto 1fr auto}}.orientationPage{padding:14px 18px 30px;background:#f7f9fb;min-height:100vh}.orientationHero{text-align:center;padding:24px 0 20px;color:#22b6ad;font-size:17px}.orientationLogo{font-size:32px;margin-bottom:12px}.orientationSearch{max-width:1180px;margin:0 auto 16px;background:#fff;padding:18px;border-radius:14px;box-shadow:0 4px 22px #0000000c;display:flex;gap:12px}.orientationSearch input{flex:1 1;border:1px solid #cfd8e3;border-radius:7px;padding:13px 15px;font-size:15px}.orientationGrid{max-width:1180px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-gap:16px;gap:16px}.orientationMap{height:600px;background:#e7edf1;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 3px 18px #0000000d}.leafletHost{width:100%;height:100%;z-index:1}.mapSource{position:absolute;right:10px;bottom:10px;z-index:500;background:#fff;padding:7px 9px;border-radius:5px;font-size:11px;font-weight:700}.orientationSide{display:flex;flex-direction:column;gap:12px}.orientationCard{background:#fff;border-radius:13px;padding:17px;box-shadow:0 3px 18px #0000000d}.orientationCard h3{margin:0 0 17px}.orientationCard p{font-size:13px;line-height:1.45;color:#56606b;margin:14px 0 0}.orientationCard small{display:block;margin-top:8px;color:#65717d}.toggleRow{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px}.orientationLegend{border-top:1px solid #dfe5ea;padding:15px 4px;display:flex;flex-direction:column;gap:11px;color:#56606b;font-size:13px}.orientationLegend span{display:flex;align-items:center;gap:9px}.leg{width:22px;height:4px;border-radius:2px;background:#555}.leg.sel{background:#22c7cf}.orientationRows{max-height:330px;overflow:auto;display:flex;flex-direction:column;gap:5px}.orientationRow{width:100%;border:1px solid #e1e6eb;background:#fff;border-radius:7px;padding:9px 11px;display:flex;justify-content:space-between;text-align:left}.orientationRow.active{border-color:#19bfc4;background:#effcfc}.orientationError{max-width:1180px;margin:0 auto 12px}.floorTop{display:flex;gap:8px}.floorTop button{border:1px solid #d7dee7;background:#fff;border-radius:6px;padding:8px 11px;font-weight:700}.floorTop .primarySmall{background:#1479ed;color:#fff}.leaflet-control-zoom{position:absolute;left:10px;top:10px;z-index:800;background:#fff;border:1px solid #aaa}.leaflet-control-zoom a{display:block;width:28px;height:28px;line-height:28px;text-align:center;color:#111;text-decoration:none;border-bottom:1px solid #ddd}.leaflet-control-attribution{position:absolute;right:0;bottom:0;background:#ffffffc9;font-size:9px;padding:2px 4px}.leaflet-marker-pane,.leaflet-overlay-pane,.leaflet-pane,.leaflet-tile-pane,.leaflet-tooltip-pane{position:absolute;left:0;top:0;width:100%;height:100%}.leaflet-overlay-pane svg,.leaflet-tooltip{position:absolute}.leaflet-tooltip{background:#fff;border:1px solid #bbb;padding:4px 6px;border-radius:4px;white-space:nowrap;font-size:11px}@media(max-width:900px){.orientationGrid{grid-template-columns:1fr}.orientationMap{height:480px}}.facadeNumber{background:#fff!important;border:2px solid #555!important;border-radius:5px!important;box-shadow:0 1px 4px #0003!important;color:#202326!important;font-size:11px!important;font-weight:800!important;padding:3px 6px!important;pointer-events:auto!important;cursor:pointer!important}.facadeNumber:before{display:none!important}.facadeNumber.active{background:#13b8b2!important;border-color:#07969b!important;color:#fff!important}.leaflet-interactive{cursor:pointer}.leaflet-container{font-family:inherit;background:#e7edf1;overflow:hidden;position:relative;outline:0}.leaflet-map-pane{position:absolute;left:0;top:0}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-tooltip-pane{z-index:650}.leaflet-control-container{position:relative;z-index:800}.leaflet-tile,.leaflet-tile-container{position:absolute;left:0;top:0}.leaflet-tile{visibility:inherit;width:256px;height:256px}.leaflet-zoom-animated{transform-origin:0 0}.leaflet-fade-anim .leaflet-tile{will-change:opacity}.leaflet-zoom-anim .leaflet-zoom-animated{will-change:transform}.orientationPage{background:#f5f7fa;padding:14px 18px 34px}.orientationHero{color:#1769d2;padding:18px 0 16px}.orientationLogo{font-size:27px;color:#152238}.orientationLogo b{color:#1769d2}.orientationSearch{border:1px solid #e2e7ed;border-radius:11px;box-shadow:none;padding:13px;max-width:1280px}.orientationSearch input{border-color:#d8e0e9;border-radius:8px}.orientationGrid{max-width:1280px;grid-template-columns:minmax(0,1fr) 330px}.orientationMap{height:650px;background:#eef2f6}.orientationCard,.orientationMap{border:1px solid #e2e7ed;border-radius:11px;box-shadow:none}.orientationCardHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.orientationCardHead h3{margin:0}.orientationExport{border:0;background:#1769d2;color:#fff;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:800;cursor:pointer}.orientationExport:disabled{opacity:.4;cursor:not-allowed}.orientationRow{cursor:pointer;color:#152238}.orientationRow:hover{border-color:#9fc1ef;background:#f8fbff}.orientationRow.active{border-color:#1769d2;background:#eef5ff}.leg.sel{background:#1769d2}.facadeNumber.active{background:#1769d2!important;border-color:#0e55b2!important}.mapSource{color:#31445c;border:1px solid #d8e0e9}.leaflet-control-zoom a{color:#1769d2;font-weight:900}.orientationSide{min-width:0}@media(max-width:900px){.orientationMap{height:520px}}.roofOverlay>svg,.roofOverlay>svg *{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cpath%20d%3D%22M3%202V23L9%2017L14%2026L18%2024L13%2015H23Z%22%20fill%3D%22black%22%20stroke%3D%22white%22%20stroke-width%3D%221.5%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") 2 1,default!important}.roofOverlay>svg [style*="cursor: move"],.roofOverlay>svg [style*="cursor:move"]{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cpath%20d%3D%22M14%201L9%207h3v5H7V9L1%2014l6%205v-3h5v5H9l5%206%205-6h-3v-5h5v3l6-5-6-5v3h-5V7h3z%22%20fill%3D%22black%22%20stroke%3D%22white%22%20stroke-width%3D%221.2%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") 14 14,move!important}.roofOverlay>svg [data-hit],.roofOverlay>svg [style*="cursor: pointer"],.roofOverlay>svg [style*="cursor:pointer"]{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cpath%20d%3D%22M6%2013c-3-2-5%200-3%203l5%208h13l3-8V9c0-3-4-3-4%200V6c0-3-4-3-4%200V4c0-3-4-3-4%200v7-7c0-3-4-3-4%200v12z%22%20fill%3D%22black%22%20stroke%3D%22white%22%20stroke-width%3D%221.5%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") 9 10,pointer!important}.roofOverlay>svg [style*="cursor: crosshair"],.roofOverlay>svg [style*="cursor:crosshair"]{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cpath%20d%3D%22M14%201v26M1%2014h26%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22M14%201v26M1%2014h26%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%2F%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2214%22%20r%3D%223%22%20fill%3D%22black%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E") 14 14,crosshair!important}.exactRight .facadeCompassCard,.exactRight .facadeGroupedCard{border:1px solid #dbe4ef;border-radius:9px;background:#fff;padding:12px;margin-bottom:12px}.facadeCompassCard h2,.facadeGroupedCard h2{margin:0 0 10px;font-size:15px;color:#10233f}.facadeCompassSquare{width:100%;aspect-ratio:1;max-width:330px;margin:0 auto;border:1px solid #e6edf5;border-radius:9px;display:grid;place-items:center;background:#fbfdff}.facadeCompassSquare svg{display:block;width:94%;height:94%;overflow:visible}.facadeGroupedCard .facadeHint{font-size:11px;line-height:1.5;color:#64748b;margin:0 0 10px}.facadeGroup{border:1px solid #dbe4ef;border-radius:8px;overflow:hidden;margin:8px 0;background:#fff}.facadeGroupHeader{display:flex;width:100%;align-items:center;justify-content:space-between;text-align:left;gap:7px;border:0;border-left:4px solid var(--facade-color);padding:10px 8px;background:color-mix(in srgb,var(--facade-color) 7%,#fff);color:#0f172a;cursor:pointer}.facadeGroupHeader span:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}.facadeGroupHeader b{font-size:14px;color:var(--facade-color)}.facadeGroupHeader small{font-size:10px;font-weight:400;color:#64748b}.facadeGroupHeader strong{white-space:nowrap;font-size:13px}.facadeGroupHeader strong span{color:var(--facade-color);padding-left:4px}.facadeGroupRows{padding:0 9px}.facadeGroupRow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #e8edf3;font-size:12px}.facadeGroupRow:last-child{border-bottom:0}.facadeGroupRow span{display:flex;flex-direction:column;gap:3px}.facadeGroupRow b{font-size:12px;color:#152238}.facadeGroupRow small{font-size:10px;color:#64748b}.facadeGroupRow strong{font-size:12px;white-space:nowrap;color:#10233f}.floorExact .exactRight section.facadeCompassCard,.floorExact .exactRight section.facadeGroupedCard{display:block;min-width:0;box-sizing:border-box;padding:12px;border:1px solid #dbe4ef;border-radius:9px;background:#fff;overflow:hidden}.floorExact .exactRight .facadeGroupedCard .facadeGroup{display:block;margin:9px 0;border:1px solid #dbe4ef;border-radius:8px;overflow:hidden;background:#fff}.floorExact .exactRight .facadeGroupedCard button.facadeGroupHeader{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;width:100%;min-width:0;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;text-align:left;margin:0;padding:11px 9px;border:0;border-left:4px solid var(--facade-color);border-radius:0;background:color-mix(in srgb,var(--facade-color) 8%,#fff);font-family:inherit;line-height:1.35;cursor:pointer}.floorExact .exactRight .facadeGroupTitle{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px;white-space:normal}.floorExact .exactRight .facadeGroupTitle b{display:block;font-size:13px;line-height:1.3;color:var(--facade-color);white-space:normal}.floorExact .exactRight .facadeGroupTitle small{display:block;font-size:10px;line-height:1.4;font-weight:400;color:#64748b;white-space:normal}.floorExact .exactRight .facadeGroupValue{flex:0 0 auto;display:flex;align-items:center;gap:6px;white-space:nowrap}.floorExact .exactRight .facadeGroupValue strong{font-size:12px;line-height:1.2;color:#10233f;white-space:nowrap}.floorExact .exactRight .facadeGroupChevron{font-size:15px;color:var(--facade-color);width:16px;text-align:center}.floorExact .exactRight .facadeGroupRows{display:block;padding:0 9px}.floorExact .exactRight .facadeGroupRow{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:7px;padding:9px 0;border-bottom:1px solid #e8edf3;min-width:0;line-height:1.35}.floorExact .exactRight .facadeGroupRow:last-child{border-bottom:0}.floorExact .exactRight .facadeGroupRowLabel{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px;align-items:flex-start}.floorExact .exactRight .facadeGroupRowLabel b{font-size:12px;color:#152238;font-weight:700;white-space:normal}.floorExact .exactRight .facadeGroupRowLabel small{font-size:10px;color:#64748b;white-space:normal}.floorExact .exactRight .facadeGroupRow>strong{flex:0 0 auto;font-size:12px;white-space:nowrap;color:#10233f}.floorExact .exactRight .facadeGroupedCard dl.facadeTotal{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 9px;margin:10px 0 0;border:1px solid #dbe4ef;border-radius:7px}.floorExact .exactRight .facadeGroupedCard dl.facadeTotal dt{min-width:0;font-size:11px}.floorExact .exactRight .facadeGroupedCard dl.facadeTotal dd{margin:0;white-space:nowrap;font-size:12px;font-weight:800}.floorExact .exactRight{grid-auto-rows:max-content;align-content:start;min-height:0;overflow-y:auto}.floorExact .exactRight>.facadeCompassCard,.floorExact .exactRight>.facadeGroupedCard,.floorExact .exactRight>section{height:auto;min-height:max-content;overflow:visible}.floorExact .exactRight .facadeCompassSquare{width:min(144px,100%);max-width:144px;box-sizing:border-box;min-height:0;aspect-ratio:1/1}.floorExact .exactRight .facadeCompassCard>p{margin:6px 0 0;font-size:12px;line-height:1.4}.floorExact:not(.planEditor) .exactBody{grid-template-columns:224px minmax(0,1fr) 280px}.floorExact:not(.planEditor) .exactWorkspace{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1250px){.floorExact:not(.planEditor) .exactBody{grid-template-columns:210px minmax(0,1fr) 250px}}.baPage{min-height:100vh;background:#f5f8fc;color:#10233f;font-family:inherit}.baNav{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:#fff;border-bottom:1px solid #e2e8f0;padding:12px max(20px,calc((100vw - 1400px)/2))}.baNav button{background:#f5f8fc;border:0;border-radius:7px;padding:10px 13px;font-weight:650;color:#31445c;cursor:pointer}.baNav button.baActive{color:#1756c9;background:#e9f1ff;box-shadow:inset 0 -3px #2563eb}.baLogo{font-size:20px;margin-right:auto;color:#113a72}.baNav .baRefresh{margin-left:auto}.baContent{max-width:none;margin:auto;padding:20px clamp(16px,2vw,28px) 28px}.baContent h1{font-size:27px;margin:0 0 5px}.baLead{margin:0 0 22px;color:#60738b}.baMetrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.baMetrics article{display:flex;align-items:center;gap:12px;padding:16px;min-height:106px;background:#fff;border:1px solid #dce5ef;border-radius:13px;min-width:0}.baMetrics article>span{font-size:26px;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;color:#1874d2;background:#edf5ff;flex-shrink:0}.baMetrics article>.baMetricGreen{color:#16a34a;background:#ebfcef}.baMetrics article>.baMetricPurple{color:#8039ef;background:#f3edff}.baMetrics article>.baMetricAmber{color:#f59e0b;background:#fff6db}.baMetrics article div{display:flex;flex-direction:column;gap:5px;min-width:0}.baMetrics small{font-size:12px;color:#5e7086}.baMetrics strong{font-size:23px;white-space:nowrap;color:#10233f}.baViews{grid-template-columns:1.35fr 1fr;grid-gap:13px;margin-bottom:15px}.baColumns,.baViews{display:grid;gap:13px}.baColumns{grid-template-columns:1.15fr 1fr .95fr;grid-gap:13px;align-items:start}.baPanel{background:#fff;border:1px solid #dce5ef;border-radius:13px;padding:15px;min-width:0}.baPanel h2{font-size:17px;margin:0 0 8px;color:#10233f}.baPanel>p{color:#64748b;font-size:12px;margin:0 0 15px;line-height:1.5}.baDrawing{width:100%;height:auto;display:block;max-height:360px}.baCompass{display:grid;place-items:center}.baCompass svg{width:min(100%,235px);height:auto}.baLegend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:7px;font-size:12px}.baLegend div{display:flex;gap:7px;align-items:center}.baLegend i{width:10px;height:10px;border-radius:50%;flex-shrink:0}.baFacade{border:1px solid #e0e7f0;border-radius:9px;overflow:hidden;margin:9px 0}.baFacade button{width:100%;border:0;background:#f8fafc;display:flex;align-items:center;gap:9px;padding:11px 9px;text-align:left;cursor:pointer;color:#10233f}.baFacade button i{width:8px;height:25px;border-radius:3px;flex-shrink:0}.baFacade button b{flex:1 1;font-size:12px}.baFacade button strong{white-space:nowrap;font-size:12px}.baFacade button span{color:#64748b}.baFacade table{width:100%;border-collapse:collapse;font-size:11px}.baFacade td,.baFacade th{padding:9px 7px;border-top:1px solid #e6edf5;text-align:left}.baFacade th{background:#f6f9fe;color:#5e7086}.baFacade td:last-child,.baFacade th:last-child{text-align:right;white-space:nowrap}.baTotal{display:flex;justify-content:space-between;gap:9px;padding:13px;background:#eaf3ff;border-radius:8px;margin-top:16px;font-size:12px}.baTotal b:last-child{white-space:nowrap}.baGreen{background:#eaf8ef}.baRoofRow{display:flex;align-items:center;gap:11px;border:1px solid #e2e8f0;border-radius:9px;padding:12px 9px;margin:9px 0}.baRoofRow>div{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.baRoofRow b{font-size:12px}.baRoofRow small{font-size:11px;color:#64748b}.baRoofRow strong{font-size:12px;white-space:nowrap}.baRoofIcon{font-size:27px;color:#168c43;background:#eef9f1;padding:8px;border-radius:9px}.baRing{width:min(100%,220px);margin:18px auto;background:conic-gradient(#1874d2 0 var(--facade-pct),#22a559 var(--facade-pct) 100%);display:grid;place-items:center}.baRing,.baRing>div{aspect-ratio:1;border-radius:50%}.baRing>div{background:#fff;width:68%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px}.baRing strong{font-size:21px}.baRing small{font-size:12px;color:#64748b}.baBreakdown{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;font-size:12px;margin-bottom:17px}.baBreakdown b{text-align:right}.baInfo{background:#f1f7ff;padding:13px;border-radius:9px;font-size:12px;line-height:1.5}.baInfo p{margin:8px 0 0}.baWarning{background:#fff6e5;border:1px solid #f5dfaa;border-radius:8px;padding:11px;font-size:12px;line-height:1.5;margin-top:10px}.baEmpty{color:#64748b;font-size:13px;padding:28px;text-align:center}.baDashboard{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);grid-gap:16px;gap:16px;align-items:start}.baMainColumn,.baSidebar{display:grid;grid-gap:14px;gap:14px;min-width:0;align-content:start}.baPanelHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.baPanelHeading h2{margin:0}.baPanelHeading small{color:#64748b}.baModelPanel .ba3dCanvas{height:clamp(320px,43vh,560px)}.baAreaThreeColumns{grid-template-columns:repeat(3,minmax(0,1fr))}.baAreaThreeColumns .baFacade button{flex-wrap:wrap}.baAreaThreeColumns .baFacade button b{min-width:90px}.baAreaThreeColumns .baFacade button small{font-size:11px}.baAreaThreeColumns .baEmpty{padding:16px 0}.baOrientationBody{display:grid;grid-template-columns:130px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center}.baOrientationBody .baLegend{grid-template-columns:1fr;margin:0;font-size:11px}.baDetection summary{cursor:pointer;font-weight:700;font-size:14px}.baDetection summary small{font-size:11px;font-weight:400;color:#64748b;margin-left:8px}.baDetection[open] summary{margin-bottom:12px}.baDetection .baRoofRow{flex-wrap:wrap}.baDetection .baRoofRow>div{flex-basis:180px}.baDetection button{font:inherit;font-size:12px;padding:7px;border:1px solid #cbdbea;border-radius:6px;background:#f5f8fc;color:#164a7d;cursor:pointer}.baOverviewActions{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:1250px){.baAreaThreeColumns{grid-template-columns:repeat(2,minmax(0,1fr))}.baAreaThreeColumns>.baPanel:last-child{grid-column:1/-1}.baMetrics article{padding:12px;gap:9px}.baMetrics article>span{width:38px;height:44px}.baMetrics small{font-size:11px}}@media(max-width:1100px){.baMetrics{grid-template-columns:repeat(6,minmax(0,1fr))}.baMetrics article{grid-column:span 2}.baMetrics article:nth-last-child(-n+2){grid-column:span 3}}@media(max-width:900px){.baDashboard{grid-template-columns:1fr}.baSidebar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.baDetection{grid-column:1/-1}}@media(max-width:600px){.baContent{padding:15px}.baMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.baMetrics article,.baMetrics article:nth-last-child(-n+2){grid-column:auto}.baMetrics article:last-child{grid-column:1/-1}.baAreaThreeColumns,.baSidebar{grid-template-columns:1fr}.baMetrics strong{font-size:21px}}.ba3dWrap{background:#f3f7fc;border-radius:11px;overflow:hidden;border:1px solid #e0e9f3}.ba3dFooter,.ba3dToolbar{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap;padding:10px 13px;color:#41556e;font-size:11px}.ba3dToolbar{border-bottom:1px solid #e1eaf3;font-weight:650}.ba3dToolbar button{background:#fff;color:#164a7d;border:1px solid #cbdbea;border-radius:6px;padding:6px 10px;font-size:11px;cursor:pointer}.ba3dCanvas{width:100%;height:360px;position:relative;touch-action:none}.ba3dCanvas canvas{display:block;width:100%;height:100%;cursor:-webkit-grab;cursor:grab}.ba3dCanvas canvas:active{cursor:-webkit-grabbing;cursor:grabbing}.ba3dFooter{border-top:1px solid #e1eaf3;min-height:34px}.ba3dFooter strong{color:#163f69}@media(max-width:720px){.ba3dCanvas{height:310px}}.baOverviewTitle{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}.baOverviewTitle .baLead{margin:0}.baOverviewTitle button{border:1px solid #bcd3ed;background:#eaf3ff;color:#1554a5;border-radius:8px;padding:10px 14px;font-weight:700;cursor:pointer}.baOverviewTitle button:disabled{opacity:.5;cursor:not-allowed}.baAlignLayout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(290px,.85fr);grid-gap:17px;gap:17px;align-items:start}.baAlignMain,.baAlignSide{min-width:0;display:flex;flex-direction:column;gap:15px}.baAlignHeading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.baAlignHeading h2{font-size:24px;margin:0 0 7px}.baAlignHeading p{margin:0;color:#526a86;font-size:13px}.baAlignHeading button{background:#fff;border:1px solid #ccd9e8;border-radius:8px;padding:9px 13px;cursor:pointer;color:#153b64}.baAlignModes{display:flex;gap:8px;margin-bottom:12px}.baAlignModes button{border:1px solid #d7e2ef;background:#fff;padding:9px 13px;border-radius:7px;color:#274663;cursor:pointer}.baAlignModes button.selected{background:#e6f2ff;color:#1359b4;border-color:#8fbde8;font-weight:700}.baAlignPlan{display:block;width:100%;height:auto;max-height:440px}.baAlignBottom{display:grid;grid-template-columns:1fr 1fr;grid-gap:15px;gap:15px}.baAlignBottom h3,.baAlignSide h3{font-size:15px;margin:0 0 12px;color:#10233f}.baAlignSide .baPanel{padding:17px}.baAlignSide .baPanel>h2{font-size:19px;margin-bottom:20px}.baAlignSide .baPanel>h3{border-top:1px solid #e1e8f2;padding-top:15px;margin-top:18px}.baAlignSide .baPanel>p{font-size:12px;color:#657b95;line-height:1.5;margin:8px 0 12px}.baAlignSide label{display:flex;flex-direction:column;gap:6px;margin:10px 0;font-size:12px;font-weight:600;color:#243d5b}.baAlignSide input,.baAlignSide select{width:100%;box-sizing:border-box;background:#fff;border:1px solid #cddbeb;border-radius:7px;padding:10px;font:inherit;color:#10233f;min-height:39px}.baAlignTip{border-radius:8px;background:#eaf4ff;color:#1755a3;padding:12px;font-size:12px;line-height:1.5}.baAlignFields{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 10px;gap:0 10px}.baAlignPrimary,.baAlignSecondary{width:100%;padding:12px 10px;border-radius:8px;cursor:pointer;font-weight:700;margin:6px 0;border:1px solid #b8d3ed}.baAlignPrimary{background:#0873d1;color:#fff;border-color:#0873d1}.baAlignPrimary:disabled{opacity:.5;cursor:not-allowed}.baAlignSecondary{background:#fff;color:#164b84}.baAlignFloor{display:flex;align-items:center;gap:11px;padding:12px 4px;border-bottom:1px solid #e7edf4}.baAlignFloor>span{width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:12px;font-weight:800}.baAlignFloor>div{display:flex;flex-direction:column;gap:4px}.baAlignFloor b{font-size:12px}.baAlignFloor small{font-size:11px;color:#64748b}@media(max-width:1080px){.baAlignLayout{grid-template-columns:1fr}.baAlignSide{display:grid;grid-template-columns:1fr 1fr;align-items:start}}@media(max-width:700px){.baAlignBottom,.baAlignSide{display:flex;flex-direction:column}.baAlignSide .baPanel{width:100%;box-sizing:border-box}}.baPlanViewport{position:relative;overflow:hidden;border-radius:10px;background:#f5f8fc}.baPanSvg{touch-action:none;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.baPanSvg:active{cursor:-webkit-grabbing;cursor:grabbing}.baPlanControls{position:absolute;right:9px;top:9px;z-index:2;display:flex;gap:5px}.baPlanControls button{background:#fff;color:#153b64;border:1px solid #cbd5e1;border-radius:6px;min-width:32px;padding:6px 9px;font-size:12px;font-weight:700;cursor:pointer}.baPanSvg,.baPanSvg:active{cursor:crosshair!important}.baPanSvg [data-align-point]{cursor:crosshair!important;stroke:#10233f;stroke-width:1.5px}.roofLevelsPanel{margin:12px 0;padding:16px;border:1px solid #cbdceb;border-radius:12px;background:#f7fbff}.roofLevelsHead{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.roofLevelsHead>div{flex:1 1;min-width:220px}.roofLevelsHead h3{margin:0 0 6px;color:#102e50;font-size:16px}.roofLevelsHead p{margin:0;font-size:12px;line-height:1.5;color:#526b86}.roofLevelsHead button{min-height:37px;padding:8px 12px;cursor:pointer}.roofLevelsHead button:disabled{opacity:.45;cursor:not-allowed}.roofLevelsList{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:10px;gap:10px;margin-top:13px}.roofLevelCard{background:#fff;border:1px solid #dce6f2;border-left:4px solid #2281cc;border-radius:9px;padding:10px;display:flex;flex-direction:column;gap:5px;font-size:12px}.roofLevelCard strong{color:#122b49}.roofLevelCard small,.roofLevelCard span{color:#64748b}.roofLevelCard b{font-size:17px;color:#133a66}.roofLevelCard em{font-style:normal;color:#a35a00;font-size:11px;line-height:1.4}.roofLevelsFoot{margin-top:12px;color:#49637c;font-size:12px;line-height:1.5}.roofEndpointGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.roofFacadeControls{padding:10px;background:#f2f7fd;border:1px solid #dce6f2;border-radius:8px;margin:10px 0}.roofFacadeControls>label:first-child{display:flex;flex-direction:row;align-items:center;gap:8px}.roofFacadeControls input[type=checkbox]{width:16px;height:16px;flex:0 0 16px}.roofFacadeControls small{display:block;line-height:1.5;color:#51647a}.roofPrecision{display:grid;grid-gap:6px;gap:6px;margin:10px 0;padding:10px;border-radius:8px;background:#f2f7fd}.roofPrecision>div{display:flex;justify-content:space-between;gap:8px;font-size:12px}.roofPrecision span{color:#51647a}@media(max-width:650px){.roofEndpointGrid{grid-template-columns:1fr}.roofLevelsHead{align-items:stretch}}.roofPresetBar .presetQuick{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.roofPresetBar .presetQuick select{display:block;min-width:185px;max-width:100%;padding:8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#10233f}.roofRotatePreset{display:block;margin-top:6px;border:1px solid #9dbfe4;background:#edf5ff;color:#164f90;border-radius:6px;padding:7px 10px;font-weight:700;cursor:pointer}.roofContourCheck{padding:14px 16px;border:1px solid #cbdcec;border-radius:10px;background:#fff;margin:10px 0}.roofContourCheck strong{color:#12355a;font-size:15px}.roofContourCheck p{font-size:12px;color:#425c76;margin:9px 0}.roofContourCheck button{background:#eaf4ff;color:#164f8a;border:1px solid #a9c9e9;border-radius:7px;padding:9px 12px;font-weight:700;cursor:pointer}.roofContourCheck button:disabled{opacity:.5;cursor:not-allowed}.roofContourCheck small{display:block;margin-top:9px;color:#63758a;font-size:11px}.floorMeasureReference{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:10px 0;padding:10px;border:1px solid #cbd9ea;border-radius:8px;background:#f3f8ff;color:#173858}.floorMeasureReference strong{font-size:12px}.floorMeasureReference label{font-size:11px;display:flex;align-items:center;gap:5px}.floorMeasureReference input{width:76px;padding:6px;border:1px solid #bdcfe5;border-radius:5px;background:#fff;color:#123}.floorMeasureReference button{padding:7px 9px;border:1px solid #94b8e4;border-radius:6px;background:#fff;color:#165393;cursor:pointer;font-size:11px;font-weight:700}.floorMeasureReference small{flex-basis:100%;color:#52677d;font-size:11px;line-height:1.4}.roofDimensions{margin:10px 0;padding:14px 16px;border:1px solid #cbdcec;border-radius:10px;background:#fff;color:#153456}.roofDimensions>strong{font-size:14px}.roofDimensionsGrid{display:grid;grid-template-columns:minmax(140px,1fr) auto;grid-gap:8px 15px;gap:8px 15px;margin:12px 0;font-size:12px}.roofDimensionsGrid span{color:#52677c}.roofDimensionsGrid b{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.roofDimensions small{display:block;font-size:11px;line-height:1.5;color:#64748b}.dormSavedList{margin:20px;padding:20px;background:#fff;border:1px solid #d8e3ef;border-radius:10px}.dormSavedList h2{font-size:18px;margin:0 0 12px}.dormSavedList>p{font-size:13px;color:#64748b}.dormSavedCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.dormSavedCards article{border:1px solid #d5e0ec;border-radius:9px;padding:14px;background:#f8fbff}.dormSavedCards h3{font-size:15px;margin:0 0 8px}.dormSavedCards p{font-size:12px;color:#52677e;line-height:1.5}.dormSavedCards article>div{display:flex;gap:8px;flex-wrap:wrap}.dormSaveActions button,.dormSavedCards button{padding:9px 12px;border:1px solid #a8c8ea;border-radius:6px;background:#fff;color:#145b9d;font-weight:700;cursor:pointer}.dormSaveActions{display:flex;gap:8px;margin-top:12px}.dormSaveActions button:first-child{background:#086de0;color:#fff}.dormSaveActions button:disabled,.dormSavedCards button:disabled{opacity:.5;cursor:not-allowed}.dormSaveStatus{font-size:12px;color:#285780;line-height:1.4}.dormPage .dormGrid{height:auto;min-height:0;align-items:stretch}.dormPage .dormConfig{overflow:visible}.dormPage .dormVisual{overflow:visible;min-width:0}.dormPage .dormSavedList{margin:12px 14px 20px;padding:16px 18px;border-radius:9px}.dormPage .dormSavedList h2{margin:0 0 12px}@media(max-width:1050px){.dormPage .dormGrid{grid-template-columns:minmax(0,1fr)}.dormPage .dormConfig{border-right:0;border-bottom:1px solid #dbe3ec}.dormPage .dormSavedList{margin:12px}}.roofAreaMismatch{margin:12px 0;padding:12px 15px;border:1px solid #e7c48c;border-radius:8px;background:#fffaf1;color:#69450e;font-size:12px}.roofAreaMismatch p{margin:6px 0}.roofAreaMismatch small{display:block;color:#795b30}.roofDormerLink{border:1px solid #d5e2f0;border-radius:8px;padding:12px;margin:12px 0;background:#f8fbff}.roofDormerLink h4{margin:0 0 9px;font-size:13px}.roofDormerLink select{width:100%;padding:9px;border:1px solid #b8cce3;border-radius:6px;background:#fff;color:#173b62}.roofDormerLinked{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding:7px;border:1px solid #dce7f1;border-radius:6px;background:#fff;font-size:12px}.roofDormerLinked button{padding:6px 8px;border:1px solid #d2b4b4;border-radius:5px;background:#fff7f7;color:#9b3333;cursor:pointer}.roofDormerLink p,.roofDormerLink small{display:block;margin-top:9px;font-size:11px;line-height:1.5;color:#63758b}.roofFacadeSetting{padding:9px;margin:7px 0;border:1px solid #d8e3ee;border-radius:7px;background:#f8fbff;display:grid;grid-gap:7px;gap:7px}.roofFacadeSetting strong{font-size:12px}.roofFacadeSetting input,.roofFacadeSetting select{max-width:100%;padding:6px;border:1px solid #b8cce1;border-radius:5px;background:#fff}.roofFacadeInputs{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.roofFacadeInputs label{font-size:11px;display:grid;grid-gap:4px;gap:4px}.roofFacadeHint{font-size:12px;color:#506782}.atticRoofPanel{margin:10px 0 14px;padding:13px;border:1px solid #c7d9ed;border-radius:9px;background:#f6faff;color:#173858;display:grid;grid-gap:9px;gap:9px;font-size:12px}.atticRoofPanel .atticRoofToggle{font-size:14px;font-weight:800;display:flex;align-items:center;gap:9px}.atticRoofPanel p{margin:3px 0;line-height:1.5}.atticRoofPanel label:not(.atticRoofToggle){display:grid;grid-gap:4px;gap:4px}.atticRoofPanel input[type=number],.atticRoofPanel select{padding:7px;min-width:0;width:100%;background:#fff;color:#173858;border:1px solid #c7d9ed;border-radius:6px}.atticRoofPanel .atticRoofEdge{padding:8px;display:grid;grid-template-columns:1fr 1.2fr 1fr 1.3fr;align-items:center;grid-gap:8px;gap:8px;border:1px solid #d9e5f2;background:#fff;border-radius:6px}.atticRoofPanel .atticRoofError{color:#a03c28;font-weight:600}.atticRoofPanel small{color:#52667f;line-height:1.5}@media(max-width:900px){.atticRoofPanel .atticRoofEdge{grid-template-columns:1fr 1fr}}.atticRoomRoofAreas{margin:10px 0;padding:12px;border:1px solid #b9d1e8;border-radius:8px;background:#f3f8ff}.atticRoomRoofAreas h3{font-size:13px;margin:0 0 8px;color:#164776}.atticRoomRoofAreas dl{display:grid;grid-template-columns:1fr auto;grid-gap:6px;gap:6px;margin:0}.atticRoomRoofAreas .atticRoofAreaLine{display:contents}.atticRoomRoofAreas dd,.atticRoomRoofAreas dt{font-size:12px;margin:0}.atticRoomRoofAreas dd{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.atticRoomRoofAreas small{display:block;margin-top:9px;color:#61738a;line-height:1.4}.exactWorkspace .exact2d,.exactWorkspace .exact3d{height:calc(100dvh - 94px);min-height:520px;max-height:none}.exactWorkspace .exact2d{display:flex;flex-direction:column;min-height:0}.exactWorkspace .exact2d>h2{flex:0 0 auto}.exactWorkspace .exactRoofSettingsScroll{flex:0 0 50%;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 10px}.exactWorkspace .exactRoofSettingsScroll .atticRoofPanel{margin:0 0 8px}.exactWorkspace .exact2d .exactToolbar{flex:0 0 auto;overflow-x:auto;white-space:nowrap;padding-top:6px}.exactWorkspace .exact2d .exactSvg{flex:1 1;min-height:0;height:0;overflow:hidden}.exactWorkspace .exact3d .exact3dCanvas{flex:1 1;min-height:0;height:auto}@media(max-width:900px){.exactWorkspace .exact2d,.exactWorkspace .exact3d{height:calc(100dvh - 94px);min-height:460px}}.exactSvg .atticReferenceOverlay text{stroke:none;stroke-width:0;paint-order:normal;pointer-events:none}.epaceThemeToggle{position:fixed;right:18px;top:12px;z-index:99999;display:flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #a8b6c8;border-radius:999px;background:#fff;color:#1e3550;box-shadow:0 3px 14px #0002;font-weight:750;cursor:pointer}.epaceThemeToggle:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}html[data-theme=dark]{color-scheme:dark}html[data-theme=dark] body{background:#111923;color:#dce5ef}html[data-theme=dark] :is(.shell,.main,.mainContent,.workspace,.appMain,.exactWorkspace,.dashboard,.projectPage,.loadingPage){background-color:#111923;color:#dce5ef}html[data-theme=dark] :is(.side,.sidebar,.appHeader,.exactCard,.card,.panel,.modal,.modalContent,.loginCard,.projectCard,.summaryCard,.statsCard,.surfaceCard,.exactRoofSettingsScroll,.atticRoofPanel,.floorPanel,.roofPanel,.dormerPanel,.buildingPanel,.exportPanel){background-color:#1b2735;color:#e2eaf3;border-color:#34475b}html[data-theme=dark] :is(.exact2d,.exact3d,.canvasWrap,.viewerWrap,.previewPane,.roomCard,.tableWrap,.dataTable,.tabContent){background-color:#202e3d;color:#e2eaf3;border-color:#34475b}html[data-theme=dark] :is(input,select,textarea){background-color:#253549;color:#f0f5fa;border-color:#4a6078}html[data-theme=dark] :is(input,select,textarea)::placeholder{color:#aabbd0}html[data-theme=dark] :is(button:not(.primary):not(.primarySmall):not(.epaceThemeToggle),.backBtn,.tab,.nav button){color:#dce8f5;border-color:#48617b}html[data-theme=dark] :is(button:not(.primary):not(.primarySmall):not(.epaceThemeToggle)):hover{background-color:#30445a}html[data-theme=dark] :is(h1,h2,h3,h4,label,strong,b,th,td,p,small,summary){color:inherit}html[data-theme=dark] :is(.muted,.subtitle,.tag,.helpText,.hint,.caption){color:#aebed0}html[data-theme=dark] :is(table,th,td){border-color:#41556b}html[data-theme=dark] :is(th,.tableHeader){background-color:#26374a}html[data-theme=dark] :is(tr:nth-child(2n)){background-color:#1d2c3b}html[data-theme=dark] :is(.eyebrow,.linkButton,a){color:#82b7ff}html[data-theme=dark] .epaceThemeToggle{background:#293a4c;color:#f2f7ff;border-color:#5b7390}html[data-theme=dark] :is(.loginPage){background:radial-gradient(circle at 18% 15%,#253b51 0,#131e2b 45%,#0e1722 100%)}@media(max-width:650px){.epaceThemeToggle{top:8px;right:8px;padding:8px 10px;font-size:12px}}html[data-theme=dark] :is(.exactCard,.appHeader,.side,.shell,.atticRoofPanel,.floorPanel,.buildingPanel) :is(button,input,select,textarea){accent-color:#7db4f6}html[data-theme=dark] :is(.exactCard,.appHeader,.side,.shell,.atticRoofPanel,.floorPanel,.buildingPanel) :is(button,input,select,textarea):focus-visible{outline:2px solid #83baff;outline-offset:2px}html[data-theme=dark] :is(.exactCard,.appHeader,.side,.shell,.atticRoofPanel,.floorPanel,.buildingPanel) :is(button:disabled,input:disabled,select:disabled){opacity:.65}html[data-theme=dark] :is(.exactCard,.appHeader,.side,.shell,.atticRoofPanel,.floorPanel,.buildingPanel) :is(hr){border-color:#40546b}html[data-theme=dark] .epaceThemeToggle:hover{background:#364b61}.epaceThemeSlot{position:fixed;right:8px;top:12px;z-index:100000;display:flex;align-items:center;justify-content:center;width:39px;height:39px;pointer-events:none}.epaceThemeSlot .epaceThemeToggle{position:static;pointer-events:auto;display:grid;place-items:center;width:35px;height:35px;padding:0;border-radius:9px}.epaceThemeSlot .epaceThemeToggle span{display:none}body:has(.epaceThemeSlot) .appHeader{padding-right:64px}body:has(.epaceThemeSlot) .headerActions{padding-right:50px}@media(max-width:850px){.epaceThemeSlot{top:8px;right:6px}body:has(.epaceThemeSlot) .appHeader{padding-right:54px}}html[data-theme=dark] body :is(main,section,article,aside,header,footer,nav){color:#dbe7f3}html[data-theme=dark] :is(.appHeader,.exactCard,.card,.panel,.floorPanel,.roofPanel,.atticRoofPanel,.buildingPanel,.dormerPanel,.projectCard,.summaryCard,.statsCard,.roomCard,.tableWrap,.modalContent){background:#1c2938!important;color:#e3ecf6!important;border-color:#394d62!important}html[data-theme=dark] :is(.shell,.main,.mainContent,.workspace,.appMain,.dashboard,.projectPage,.exactWorkspace){background:#121b26!important;color:#e3ecf6}html[data-theme=dark] :is(.atticRoofPanel,.atticRoofPanel>div,.atticRoofPanel>section,.atticRoofPanel>details,.atticRoofFacadeGroups,.exactRoofSettingsScroll){background-color:#1c2938;color:#e3ecf6}html[data-theme=dark] :is(.atticRoofPanel,.floorPanel,.roofPanel,.buildingPanel,.dormerPanel) :is(label,p,small,summary,span){color:#d5e2ef}html[data-theme=dark] :is(.atticRoofPanel,.floorPanel,.roofPanel,.buildingPanel,.dormerPanel) :is(input,select,textarea){background:#27394d!important;color:#f0f6fc!important;border-color:#4b637d!important}html[data-theme=dark] :is(.atticRoofPanel,.floorPanel,.roofPanel,.buildingPanel,.dormerPanel) :is(button:not(.primary):not(.primarySmall)){background:#27394d;color:#eaf2fb;border-color:#4b637d}html[data-theme=dark] :is(.exact2d,.exact3d,.canvasWrap,.viewerWrap,.previewPane) canvas{filter:none}.epaceThemeSlot{right:88px;top:8px;width:36px;height:36px}.epaceThemeSlot .epaceThemeToggle{width:34px;height:34px;border-radius:7px;box-shadow:none}body:has(.epaceThemeSlot) .appHeader{padding-right:105px}body:has(.epaceThemeSlot) .headerActions{padding-right:88px}html[data-theme=dark] .exactTopNav,html[data-theme=dark] .floorExact{background:#0b1724!important;color:#e6eef8}html[data-theme=dark] .exactTopNav{border-color:#263b50!important}html[data-theme=dark] .exactTopNav :is(button,.iconBtn){background:#182a3d;color:#e6eef8;border:1px solid #36506b}html[data-theme=dark] .exactTopNav button.active{background:#0878f9;color:#fff}html[data-theme=dark] .exactBody,html[data-theme=dark] .exactWorkspace{background:#0b1724!important}html[data-theme=dark] .exact2d,html[data-theme=dark] .exact3d,html[data-theme=dark] .exactThumbs{background:#101f2f!important;border-color:#2d435a!important;color:#e5eef8}html[data-theme=dark] .exactRight{background:#0b1724!important;color:#e5eef8}html[data-theme=dark] .exactRight section{background:#112235!important;color:#e5eef8!important;border-color:#304960!important}html[data-theme=dark] .exactRight :is(dl,.facadeCompassSquare,.facadeGroup,.exactRoomList){background:#16283b!important;border-color:#344d66!important;color:#e5eef8}html[data-theme=dark] .exactRight :is(dt,dd,h2,small,p,span){color:#e0eaf5}html[data-theme=dark] .exactRight :is(.facadeGroupHeader,.exactRoomList button){background:#192d42;color:#e8f1fb;border-color:#344d66}html[data-theme=dark] .exactRoofSettingsScroll{background:#101f2f!important}html[data-theme=dark] .exact3dCanvas,html[data-theme=dark] .exactSvg{background:#0d1b2a!important}html[data-theme=dark] .exactToolbar,html[data-theme=dark] .viewToolbar{background:#101f2f}html[data-theme=dark] :is(.exactToolbar,.viewToolbar) button:not(.active){background:#1a2e43;color:#e5eef8;border-color:#3b5470}html[data-theme=dark] .exactThumbs :is(h3,button,b,span){color:#e5eef8}html[data-theme=dark] .exactThumbs button{background:#172b3f;border-color:#354e68}html[data-theme=dark] .exactThumbs button.active{background:#173d65;border-color:#2484ef}.exactWorkspace{grid-template-rows:minmax(0,1fr) auto;align-content:start}.exactWorkspace .exactThumbs{grid-column:1/-1;grid-row:2;display:block!important;visibility:visible!important;height:auto!important;min-height:130px!important;margin:0 0 12px}.exactWorkspace .exactThumbs>div{display:flex;gap:10px;flex-wrap:wrap;padding:10px}.exactWorkspace .exactThumbs button{min-width:175px}.exactWorkspace .exact2d,.exactWorkspace .exact3d{grid-row:1;height:calc(100dvh - 240px);min-height:420px}@media(max-width:900px){.epaceThemeSlot{right:86px;top:7px}.exactWorkspace .exact2d,.exactWorkspace .exact3d{height:calc(100dvh - 240px);min-height:380px}}.exactWorkspace .exactSavedLevelsHead{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #30455c}.exactWorkspace .exactSavedLevelsHead h3{margin:0;font-size:16px}.exactWorkspace .exactSavedLevelsTable{overflow-x:auto;padding:0!important;display:block!important}.exactWorkspace .exactSavedLevelsTable table{width:100%;border-collapse:collapse;font-size:12px}.exactWorkspace .exactSavedLevelsTable :is(th,td){text-align:left;padding:13px 15px;border-bottom:1px solid #30455c;white-space:nowrap}.exactWorkspace .exactSavedLevelsTable button{padding:7px 13px;border:1px solid #2976c7;border-radius:5px;background:#0878f9;color:#fff;cursor:pointer}html[data-theme=dark] .exactSavedLevelsTable th{background:#1a3045!important;color:#dce9f8}html[data-theme=dark] .exactSavedLevelsHead,html[data-theme=dark] .exactSavedLevelsTable td{background:#102235;color:#e2ecf8}html[data-theme=dark] .exactSvg svg rect[data-floor-background=true]{fill:#0c1b2a}html[data-theme=dark] .exactSvg svg{background:#0c1b2a}html[data-theme=dark] .exact3dCanvas{background:#0c1b2a!important}html[data-theme=dark] .exactRight .facadeGroup :is(button,div){color:#e5eef8}html[data-theme=dark] .exactRight .facadeGroup button{background:#172b3f!important}html[data-theme=dark] .exactRight .facadeCompassSquare{background:#122438!important}html[data-theme=dark] .exactRight .facadeCompassCard,html[data-theme=dark] .exactRight .facadeGroupedCard{background:#112235!important}.floorExact .exactTopNav{display:flex;align-items:center;gap:8px}.floorExact .exactTopNav .exactProject{margin-left:auto}.floorExact .exactHeaderTools{position:relative;padding-right:0}.floorExact .exactHeaderTools .exactThemeAnchor{width:36px;height:36px;display:block;flex:0 0 36px}body:has(.floorExact) .epaceThemeSlot{position:fixed;top:3px;right:78px;width:36px;height:36px}body:has(.floorExact) .epaceThemeSlot .epaceThemeToggle{border-radius:6px;background:#172a3e;color:#cbe2fb;border:1px solid #3b5875}.floorExact .exactTopNav .iconBtn{width:36px;height:36px;min-width:36px;padding:0;border-radius:6px}html[data-theme=dark] .exactRight .facadeGroup{background:#15283b!important}html[data-theme=dark] .exactRight .facadeGroupHeader{background:#1b3045!important;color:#e6eff9!important}html[data-theme=dark] .exactRight .facadeGroupHeader *{color:inherit!important}html[data-theme=dark] .exactRight .exactRoomList{background:#15283b!important}html[data-theme=dark] .exactRight .exactRoomList button{background:#192d42!important;color:#e6eff9!important}html[data-theme=dark] .exact2d .exactRoofSettingsScroll{background:#102032!important}html[data-theme=dark] .exact2d .atticRoofEdge{background:#182d42!important;border-color:#3a5570!important}html[data-theme=dark] .exact2d .atticRoofPanel{background:#122539!important}@media(min-width:1100px){.exactWorkspace{gap:8px;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}}body:has(.floorExact) .epaceThemeSlot{right:auto;transform:none;z-index:100001}.floorExact .exactHeaderTools{display:flex;align-items:center;gap:6px}.floorExact .exactThemeAnchor{display:block;flex:0 0 36px;width:36px;height:36px}body:has(.floorExact) .epaceThemeSlot{position:fixed!important;top:40px!important;right:112px!important;left:auto!important;width:36px!important;height:36px!important;transform:none!important;z-index:100001!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}body:has(.floorExact) .epaceThemeSlot .epaceThemeToggle{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;visibility:visible!important;opacity:1!important;background:#172a3e!important;color:#e6eff9!important;border:1px solid #3b5875!important;border-radius:6px!important}.floorExact .exactHeaderTools .exactThemeButton{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border-radius:6px;background:#172a3e;color:#e6eff9;border:1px solid #3b5875;cursor:pointer}.floorExact .exactHeaderTools .exactThemeButton svg{display:block}body:not(:has(.floorExact)) .epaceThemeSlot{position:fixed!important;top:40px!important;right:64px!important;left:auto!important;width:36px!important;height:36px!important;z-index:100001!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important}body:not(:has(.floorExact)) .epaceThemeSlot .epaceThemeToggle{pointer-events:auto!important;width:34px!important;height:34px!important;border-radius:6px!important;background:#172a3e!important;border:1px solid #3b5875!important;color:#e6eff9!important;box-shadow:none!important}body:has(.floorExact) .epaceThemeSlot{display:none!important}.projectOverviewGrid{grid-template-columns:minmax(235px,.9fr) minmax(300px,1fr) minmax(370px,1.35fr);gap:14px;align-items:stretch}.projectInfoPanel,.projectOverviewGrid .docsPanel,.projectOverviewGrid .miniViewer{min-height:425px;height:auto}.projectOverviewGrid .miniViewer{height:425px}.projectOverviewGrid .docBody{padding:14px}.projectOverviewGrid .uploadZone{padding:20px 12px}.projectOverviewGrid .analysisBar{gap:10px;flex-wrap:wrap}.projectInfoBody{padding:18px;display:grid;grid-gap:17px;gap:17px}.projectInfoBody>div{display:grid;grid-template-columns:minmax(80px,42%) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;font-size:13px}.projectInfoBody span{color:#62738c}.projectInfoBody strong{overflow-wrap:anywhere;color:#17243a}.overviewCompassGrid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,.8fr);grid-gap:14px;gap:14px;margin-top:16px;align-items:stretch}.overviewCompassMap{min-width:0;overflow:hidden}.overviewCompassMap>.panelTitle{margin-bottom:10px}.overviewCompassMap .epOrientation .epMapWrap .leafletHost{height:430px!important}.overviewCompassDirection{padding-bottom:20px}.frontFacadeCompass{position:relative;border:1px solid #d5e0ee;border-radius:50%;width:min(230px,85%);aspect-ratio:1;margin:26px auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:radial-gradient(circle,#fff 48%,#f4f8fe 49%,#fff 70%);color:#14243a}.frontFacadeCompass:after{content:"▼";color:#1769d2;font-size:24px}.frontFacadeDegree{font-size:26px;font-weight:800}.frontFacadeCompass small{text-align:center;max-width:175px;font-size:11px}.frontFacadeNorth,.frontFacadeSouth{position:absolute;font-weight:800}.frontFacadeNorth{top:12px}.frontFacadeSouth{bottom:10px}.overviewCompassDirection>p{padding:14px;margin:12px;background:#f1f6fc;color:#526783;font-size:13px;border-radius:8px;line-height:1.5}@media(max-width:1150px){.projectOverviewGrid{grid-template-columns:1fr 1fr}.projectOverviewGrid .miniViewer{grid-column:1/-1}.overviewCompassGrid{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}}@media(max-width:720px){.overviewCompassGrid,.projectOverviewGrid{grid-template-columns:1fr}.projectOverviewGrid .miniViewer{grid-column:auto}.overviewCompassMap .epOrientation .epMapWrap .leafletHost{height:360px!important}}.overviewCompassGrid{display:block}.overviewCompassMap{width:100%}.exactRight .selectedFacadeCard{border-top:3px solid #e53935}.exactRight .selectedFacadeCard .standingHeightCheck{display:flex;align-items:center;gap:8px;padding:10px 0}.exactRight .selectedFacadeCard .standingHeightCheck input[type=checkbox]{width:17px;height:17px;flex:0 0 17px;margin:0}.exactRight .selectedFacadeCard input[aria-invalid=true]{border-color:#b42318}.exactRight .selectedFacadeCard small[role=alert]{display:block;color:#b42318;margin-top:4px}.main:has(.projectNav){padding:0}.projectHeading{padding:20px 24px}.projectAnalysisEmpty,.projectModelView{margin:20px}.projectModelView .canvasWrap{height:calc(100dvh - 150px);min-height:400px}.floorExact .projectNav,.projectNav{display:flex;align-items:center;gap:10px;min-height:54px;height:auto;background:#fff;border-bottom:1px solid #dfe6ee;padding:8px 12px;color:#0d1b36}.projectNav nav{display:flex;align-items:center;gap:6px;overflow-x:auto;min-width:0;flex:1 1}.floorExact .projectNav nav button,.projectNav nav button{height:36px;flex-shrink:0;border:0;border-radius:7px;background:#f0f3f7;color:#0d1b36;padding:0 12px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.floorExact .projectNav nav button.active,.projectNav nav button.active{background:#0878f9;color:#fff}.projectNavName{font-size:13px;white-space:nowrap;margin-left:auto}.projectNavTools{display:flex;gap:5px;flex-shrink:0}.projectNavTools button{display:grid;place-items:center;width:32px;height:34px;border:0;border-radius:6px;background:#f0f3f7;color:#0d1b36;cursor:pointer;font-size:17px}.projectNavTools .projectThemeButton{background:#172a3e;color:#e6eff9;border:1px solid #3b5875}body:has(.projectNav) .epaceThemeSlot{display:none!important}html[data-theme=dark] .projectNav{background:#0b1724;color:#e6eef8;border-color:#263b50}html[data-theme=dark] .projectNav button{background:#182a3d;color:#e6eef8}@media(max-width:900px){.floorExact .projectNav,.projectNav{gap:6px;padding:6px}.projectNavName{display:none}.floorExact .projectNav nav button,.projectNav nav button{padding:0 10px;font-size:12px}}.projectExportMenu{position:relative;display:flex;align-items:center}.projectExportDropdown{position:fixed;z-index:1000;width:310px;max-width:calc(100vw - 24px);box-sizing:border-box;overflow-y:auto;padding:8px;background:#fff;color:#142c48;border:1px solid #cfdae7;border-radius:8px;box-shadow:0 10px 35px #142c4826;white-space:normal}.projectExportDropdown button{width:100%;height:auto;min-height:40px;display:block;text-align:left;padding:10px;background:#f3f7fc;color:#142c48;margin-bottom:5px;border:0;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer}.projectExportDropdown small{display:block;font-size:11px;line-height:1.45;font-weight:400;padding-top:4px}.projectExportDropdown label{display:block;font-size:12px;padding:8px 2px}.projectExportDropdown select{display:block;width:100%;padding:7px;border:1px solid #cfdae7;border-radius:5px;margin-top:5px;background:#fff;color:#142c48}.projectExportDropdown [role=alert]{color:#a82626;font-size:12px}.projectExportDropdown [role=status]{color:#0878f9;font-size:12px}.projectExportDropdown button:disabled{opacity:.6;cursor:wait}.exactSvg svg[data-roof-drawing=true],.exactSvg svg[data-roof-drawing=true] *{cursor:crosshair!important}.exactWorkspace.exactAreaWorkspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.exactWorkspace.exactAreaWorkspace .exact2d,.exactWorkspace.exactAreaWorkspace .exact3d{min-width:0;width:100%}.exactRight.tapwaterOnly>*{display:none!important}.exactRight.tapwaterOnly>.tapwaterPanel{display:block!important}.projectTrashButton{position:fixed;left:12px;bottom:12px;z-index:100;width:120px;padding:11px 12px;text-align:left;border:1px solid #496078;border-radius:6px;background:#152b40;color:#fff;cursor:pointer;font:inherit;font-size:13px}.side>.sideBottom{margin-bottom:54px}.gkNavigationBottom{padding-bottom:64px}.exactSidebar{padding-bottom:70px}.floorExact .exactRight{padding-top:58px}.contourDormerToolbar{border-top:1px solid #dbe4ef}.exactSvg svg[data-dormer-drawing=true],.exactSvg svg[data-dormer-drawing=true] *{cursor:crosshair!important}.exactRight .contourDormerPanel{border-top:3px solid #087bff}.contourDormerPanel p{font-size:12px;line-height:1.5}.contourDormerPanel label{display:block;margin:9px 0;font-size:12px}.contourDormerPanel label>input,.contourDormerPanel select{display:block;width:100%;box-sizing:border-box;margin-top:5px;padding:7px;border:1px solid #cbd9ea;border-radius:5px;background:var(--surface,#fff);color:inherit}.contourDormerPanel .dormerCandidateList label{display:flex;gap:7px;align-items:center}.contourDormerPanel .dormerCandidateList input{width:auto;margin:0}.contourDormerTypes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px;margin:14px 0}.exactRight .contourDormerTypes button{min-width:0;margin:0;white-space:normal;padding:7px 3px;display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid #cbd9ea;border-radius:6px;font-size:11px;background:#fff;color:#123c69}.contourDormerTypes svg{width:37px;height:30px}.exactRight .contourDormerTypes button.active{border-color:#087bff;background:#edf5ff;color:#087bff}.contourDormerNote{padding:10px;background:#fff7e5;border:1px solid #f0d591;border-radius:6px}.contourDormerActions{display:flex;gap:7px;flex-wrap:wrap}.exactRight .contourDormerActions button:first-child{background:#087bff;color:#fff;border:0;border-radius:5px}.contourDormerActions button:disabled{opacity:.45;cursor:not-allowed}.contourDormerSaved{padding-top:12px;margin-top:12px;border-top:1px solid #dbe4ef}.contourDormerSaved b,.contourDormerSaved small{display:block;margin-bottom:6px}html[data-theme=dark] .contourDormerPanel label>input,html[data-theme=dark] .contourDormerPanel select,html[data-theme=dark] .exactRight .contourDormerTypes button{background:#112235;color:#dce9f7}html[data-theme=dark] .contourDormerNote{background:#3c341f;color:#f7e4b0}.contourDormerReferenceStatus{padding:9px;border:1px solid #b9ddc5;background:#eefaf2;border-radius:6px}.dormerColorLegend{display:block;line-height:1.5;margin-top:10px}.dormerColorLegend i{display:inline-block;width:10px;height:10px;background:#126d36;border-radius:2px;margin-right:4px}html[data-theme=dark] .contourDormerReferenceStatus{background:#163726;border-color:#2b704b}.dormerSteps{list-style:none;margin:12px 0;padding:0;display:grid;grid-gap:6px;gap:6px}.dormerSteps li{font-size:12px;padding:8px;border-radius:5px;background:var(--surface-muted,#edf3f9)}.dormerSteps li[aria-current=step]{background:#e7f2ff;color:#075ba8;border-left:3px solid #087bff;font-weight:700}.dormerMeasurements{margin:12px 0;border-top:1px solid #cbd9ea;padding-top:9px}.dormerMeasurements summary{cursor:pointer;font-size:12px;font-weight:700}.dormerQuickActions{display:grid;grid-gap:8px;gap:8px;margin:12px 0}.exactRight .dormerQuickActions button{display:flex;align-items:center;gap:10px;width:100%;margin:0;padding:10px;text-align:left;white-space:normal;border:1px solid #bfd2e9;border-radius:7px;background:var(--surface,#fff);color:inherit}.dormerQuickActions svg{width:36px;height:28px;flex-shrink:0}.dormerQuickActions small{display:block;margin-top:4px;opacity:.75}.contourDormerOverlay [role=button]:focus{outline:none;stroke:#f90;stroke-width:5px}.floorExact.planEditor{background:#edf2f7}.planEditor .exactBody{grid-template-columns:200px minmax(0,1fr) 300px;gap:12px}.planEditor .exactTopNav{margin-left:200px}.planEditor .exactSidebar{overflow-y:auto;position:relative;height:100vh;box-sizing:border-box;padding:0 12px 70px;background:#102333}.planEditor .exactBrand small{letter-spacing:.7px}.planEditor .exactProjectBlock>div{font-size:12px;line-height:1.5}.planEditor .exactProjectBlock>button{height:32px;font-size:11px}.planEditor .exactSidebar h3{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#a6b9c9}.planEditor .exactLevels button{min-height:46px!important;height:auto!important;padding:8px 10px!important;gap:3px!important;border-radius:6px}.planEditor .exactLevels b{font-size:12px}.planEditor .exactLevels span{font-size:10px}.planEditor .exactWorkspace{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto minmax(0,1fr);gap:10px;min-width:0;padding:14px 0 12px;height:calc(100dvh - 62px)}.planEditor .planEditorHeader{grid-column:1/-1;grid-row:1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 2px 8px}.planEyebrow{font-size:9px;color:#1470c9;letter-spacing:1.6px;font-weight:800}.planEditorHeader h1{font-size:23px;line-height:1.3;margin:4px 0;color:#142b40;letter-spacing:-.5px}.planEditorHeader p{font-size:11px;color:#6b7d8e;margin:0}.planHeaderActions{display:flex;gap:5px;align-items:center}.planHeaderActions button{border:1px solid #d5dfe9;border-radius:6px;background:#fff;color:#35516b;padding:8px 10px;font-size:11px;cursor:pointer}.planHeaderActions button:disabled{opacity:.4;cursor:default}.planHeaderActions [role=group]{display:flex;margin-left:7px}.planHeaderActions [aria-pressed=true]{color:#fff;background:#1278e3;border-color:#1278e3}.planEditor .userAreaModeBar{grid-column:1/-1;grid-row:2;margin:0;gap:5px;overflow-x:auto;flex-wrap:nowrap}.planEditor .userAreaModeBar button{white-space:nowrap;font-size:11px;padding:8px 11px;min-height:32px}.planEditor .exact2d{grid-column:1;grid-row:3;min-width:0;border-radius:10px;border:1px solid #d8e1ec;box-shadow:0 3px 14px #15385308;overflow:hidden}.planEditor .exact3d{grid-column:2;grid-row:3;min-width:0;border-radius:10px;overflow:hidden}.planEditor .exactThumbs{display:none}.planEditor--2d .exact2d,.planEditor--3d .exact3d{grid-column:1/-1}.planEditor--2d .exact3d,.planEditor--3d .exact2d{display:none}.planEditor .exactCard>h2{font-size:12px;padding:13px 14px;margin:0;border-bottom:1px solid #e4ebf2}.planEditor .exactSvg{background:#fbfdff;padding:0}.planEditor .exactToolbar{flex-wrap:wrap;gap:5px;padding:8px 10px;border-bottom:1px solid #e4ebf2;overflow:visible}.planEditor .exactToolbar button{font-size:10px;padding:6px 9px;min-height:28px}.planCanvasToolbar>b{font-size:11px;margin-right:8px}.planCanvasToolbar>span{font-size:10px;color:#76889a}.planCanvasToolbar .planScale{margin-left:auto}.planCanvasHint{flex-basis:100%;font-size:10px;line-height:1.5;color:#526e86;margin-top:3px}.planSectionLabel{font-size:9px;letter-spacing:1.2px;color:#a4bbce;font-weight:700;margin:20px 0 10px}.planToolGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.planToolGrid button{display:flex;align-items:center;flex-direction:column;gap:6px;background:#19364c;color:#dceaf4;border:1px solid #2b495e;border-radius:7px;padding:10px 4px;font-size:10px;cursor:pointer}.planToolGrid button>span{font-size:20px;line-height:1}.planToolGrid button[aria-pressed=true]{background:#e8f3ff;color:#0967c7;border-color:#65a9ef;box-shadow:inset 0 0 0 1px #65a9ef}.planAddFloor{width:100%;margin-top:10px;padding:8px;background:transparent;color:#bed5e8;border:1px dashed #537088;border-radius:6px;font-size:10px;cursor:pointer}.planTools form{font-size:11px;padding:10px 0}.planTools input{width:100%;padding:8px;box-sizing:border-box;margin:6px 0}.planTools form button{padding:7px 9px;border:0;border-radius:5px;background:#1278e3;color:#fff}.planTip{font-size:10px;line-height:1.5;color:#adc4d6;margin-top:14px}.planTip>b{color:#e2edf5}.planTip p{margin-top:5px}.planEditor .exactRight{padding-right:12px;min-width:0}.planEditor .exactRight section{border-radius:9px;box-shadow:0 2px 8px #15385305}.planEditor .exactRight h2{font-size:13px}@media(max-width:1050px){.planEditor .exactBody{grid-template-columns:170px minmax(0,1fr) 250px;gap:8px}.planEditor .exactTopNav{margin-left:170px}.planEditor .planEditorHeader{align-items:flex-start;flex-wrap:wrap}.planEditor .exactTopNav nav{overflow-x:auto}.planEditor .projectNav nav button{font-size:11px;padding:7px 9px}}@media(max-width:760px){.planEditor .exactBody{grid-template-columns:145px minmax(0,1fr);overflow:auto}.planEditor .exactTopNav{margin-left:145px}.planEditor .exactRight{grid-column:2;grid-row:2;height:auto;overflow:visible;padding:10px}.planEditor .exactSidebar{grid-row:1/3;min-height:100%;height:auto;margin-top:0}.planEditor .exactWorkspace{grid-column:2;height:75dvh;padding-right:8px}.planEditor .exactBrand{display:none}.planEditor .exactBody{height:calc(100dvh - 62px)}.planEditorHeader h1{font-size:19px}}.floorExact.planEditor .exactWorkspace.exactAreaWorkspace{grid-template-rows:auto auto minmax(0,1fr)}.floorExact.planEditor .exactWorkspace .userAreaModeBar{grid-row:2}.floorExact.planEditor .exactWorkspace .exact2d,.floorExact.planEditor .exactWorkspace .exact3d{grid-row:3;height:auto}.floorExact.planEditor .exactWorkspace .exactThumbs{display:none!important}.floorExact.planEditor{background:#f5f7fa;color:#162033;overflow:hidden}.floorExact.planEditor .exactTopNav{margin-left:0;padding-left:170px;height:60px;background:#fff}.floorExact.planEditor .exactTopNav:before{content:"⬡ EPACE";position:absolute;left:24px;font-size:23px;font-weight:800;letter-spacing:.4px;color:#102340}.floorExact.planEditor .exactBody{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-gap:0;gap:0;min-height:0;height:calc(100dvh - 60px)}.floorExact.planEditor .exactWorkspace.exactAreaWorkspace{position:relative;grid-column:1;grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:54px minmax(0,1fr);gap:0;padding:0;height:100%;min-height:0}.floorExact.planEditor .planEditorHeader{grid-row:1;margin:0;padding:0 18px;border-bottom:1px solid #dce3ec;background:#fff;z-index:4;gap:8px}.planEditorHeader>div:first-child{display:flex;align-items:center;gap:14px;min-width:0}.floorExact.planEditor .planEditorHeader h1{font-size:16px;margin:0;white-space:nowrap}.floorExact.planEditor .planEditorHeader p{font-size:12px;border-left:1px solid #dce3ec;padding-left:14px;white-space:nowrap}.planBack{border:1px solid #dce3ec;border-radius:7px;background:#fff;padding:6px 12px;color:#142b40}.floorExact.planEditor .planHeaderActions{gap:4px;display:flex;align-items:center}.planHeaderActions>small{font-size:11px;color:#536375;margin-right:10px}.floorExact.planEditor .planHeaderActions button{padding:5px 9px;font-size:12px;min-height:28px}.floorExact.planEditor .planHeaderActions>div{display:none}.floorExact.planEditor .exactWorkspace .exact2d,.floorExact.planEditor .exactWorkspace .exact3d{grid-row:2;border:0;border-radius:0;height:100%;min-height:0;box-shadow:none;background:#fbfdff}.floorExact.planEditor .exact2d>.floorResetControls,.floorExact.planEditor .exactCard>h2{display:none}.floorExact.planEditor .exactSvg{height:100%;padding:0;background:#f9fcff}.floorExact.planEditor .exactToolbar{position:absolute;z-index:5;top:10px;left:130px;right:14px;max-width:650px;border:1px solid #dce3ec;border-radius:9px;background:#fffffff2;padding:6px 9px;box-shadow:0 2px 6px #15385308;align-items:center;gap:6px}.floorExact.planEditor .planCanvasToolbar b{font-size:12px}.floorExact.planEditor .planCanvasToolbar button{font-size:11px;height:28px}.floorExact.planEditor .planCanvasToolbar .planScale{margin-left:auto;font-size:10px;color:#8192a5}.floorExact.planEditor .planCanvasHint{font-size:11px;line-height:1.4;flex-basis:100%;color:#536b83}.floorExact.planEditor .exactSidebar{position:absolute;z-index:8;top:68px;left:16px;width:94px;height:calc(100% - 140px);min-height:0;margin:0;padding:0;background:none;overflow:visible;pointer-events:none;color:#162033}.floorExact.planEditor .exactSidebar>.exactBrand,.floorExact.planEditor .exactSidebar>.exactLevels,.floorExact.planEditor .exactSidebar>.exactProjectBlock,.floorExact.planEditor .exactSidebar>[role=status],.floorExact.planEditor .exactSidebar>h3{display:none!important}.floorExact.planEditor .planTools{height:100%;padding:0;pointer-events:none}.floorExact.planEditor .planToolGrid{max-height:calc(100% - 270px);overflow-y:auto;box-sizing:border-box;pointer-events:auto;display:flex;flex-direction:column;padding:6px;gap:3px;background:#fff;border:1px solid #d6e1ee;border-radius:12px;box-shadow:0 2px 4px #1234560c}.floorExact.planEditor .planToolGrid button{flex-shrink:0;border:0;background:transparent;color:#162033;min-height:64px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:12px;padding:6px}.floorExact.planEditor .planToolGrid button>span{font-size:27px;line-height:28px}.floorExact.planEditor .planToolGrid button[aria-pressed=true]{background:#e0edff;color:#0878f9;box-shadow:none}.floorExact.planEditor .planObjectTray{pointer-events:auto;position:absolute;left:0;bottom:0;width:190px;box-sizing:border-box;padding:10px 12px;background:#fff;border:1px solid #d6e1ee;border-radius:12px;box-shadow:0 2px 4px #1234560c}.floorExact.planEditor .planObjectTray h3{font-size:13px;letter-spacing:0;text-transform:none;color:#162033;margin:0 0 6px}.floorExact.planEditor .planObjectTray button{display:flex;align-items:center;gap:10px;text-align:left;width:100%;padding:8px 2px;border:0;border-top:1px solid #edf0f5;background:transparent;color:#162033;font-size:12px;border-radius:0}.floorExact.planEditor .planObjectTray button[aria-pressed=true]{color:#0878f9;background:#edf5ff}.floorExact.planEditor .planObjectTray .planAddFloor{font-size:11px;margin:0;min-height:0;color:#0878f9}.floorExact.planEditor .planObjectTray input{width:100%;box-sizing:border-box;color:#162033}.floorExact.planEditor .exactRight{grid-column:2;grid-row:1;display:block;align-content:normal;margin:0;padding:0!important;height:100%;overflow:auto;background:#f0f2f5;border-left:1px solid #d6dce4}.floorExact.planEditor .planInspector{padding:0 16px 16px;box-sizing:border-box;font-size:13px;line-height:1.5;color:#162033}.planInspector>header{height:54px;box-sizing:border-box;display:flex;align-items:center;gap:10px;margin-bottom:16px}.floorExact.planEditor .planInspector h2{font-size:16px;line-height:1.3;margin:0;flex:1 1;min-width:0;overflow-wrap:anywhere}.planInspector>header>span{font-size:23px}.planInspector>header>button{border:0;background:none;font-size:27px;font-weight:300;color:#717b88;padding:0 4px}.planInspectorTabs{display:flex;gap:2px;padding:3px;border:1px solid #d4dae3;border-radius:9px;background:#e7eaef}.planInspectorTabs>button{flex:1 1;border:0;border-radius:7px;background:transparent;font-size:12px;padding:7px 4px;color:#283445}.planInspectorTabs>button[aria-selected=true]{background:#0878f9;color:#fff;box-shadow:0 1px 3px #0002}.floorExact.planEditor .planInspector h3{font-size:12px;font-weight:650;color:#7b818c;margin:22px 12px 7px;letter-spacing:0;text-transform:none}.floorExact.planEditor .planInspector .planPropertyGroup{padding:0 14px;margin:0;border:1px solid #dde2e9;border-radius:11px;box-shadow:none;background:#fff}.planStatistics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 3px;border:1px solid #dde2e9;border-radius:11px;background:#fff}.planStatistics>div{display:flex;flex-direction:column;align-items:center;border-right:1px solid #e5e8ee;gap:4px}.planStatistics>div:last-child{border:0}.planStatistics strong{font-size:13px;white-space:nowrap}.planStatistics strong small{font-size:10px}.planStatistics span{font-size:10px;color:#7b818c}.planPropertyRow{position:relative;display:flex!important;align-items:center;justify-content:space-between;gap:8px;min-height:47px;border-bottom:1px solid #eceff3;font-size:12px}.planPropertyRow:last-child{border:0}.planPropertyRow>span:first-child{flex:1 1;white-space:nowrap}.planPropertyRow input:not([type=color]),.planPropertyRow select{width:145px!important;min-width:0;height:30px!important;box-sizing:border-box;border:1px solid #dce1e9!important;border-radius:6px!important;background:#f7f8fa!important;color:#162033!important;font-size:12px!important;padding:5px 8px!important;text-align:right}.planPropertyRow .planInputUnit{position:absolute;right:9px;color:#697485;font-size:11px}.planPropertyRow:has(.planInputUnit) input{padding-right:24px!important;width:105px!important}.planPropertyRow input[type=color]{width:34px;height:28px;border:1px solid #d7dce4;border-radius:6px;padding:2px;background:#fff}.planPropertyRow b{font-size:12px;font-weight:500}.planPropertyRow>small{position:absolute;top:36px;color:#be3030;background:#fff;z-index:1}.planFollowHeight{display:flex!important;align-items:center;gap:9px;min-height:46px;font-size:11px}.planFollowHeight input{width:16px!important;height:16px;margin:0;accent-color:#0878f9}.floorExact.planEditor .planTextButton{display:block;color:#0878f9;border:0;background:none;text-align:left;font-size:12px;padding:12px 0;width:100%}.planObjectRow{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;border:0;border-bottom:1px solid #eceff3;background:transparent;width:100%;padding:13px 0;color:#162033;font-size:12px}.planObjectRow:last-child{border:0}.planObjectRow>span:last-child{font-size:20px;color:#8290a0}.planDelete{width:100%;margin:22px 0 0;padding:12px 14px;text-align:left;border:1px solid #dde2e9;border-radius:10px;background:#fff;color:#d93535;font-size:12px}.planInspector textarea{width:100%;min-height:140px;box-sizing:border-box;border:1px solid #dce3ec;border-radius:10px;padding:12px;font:inherit;color:#162033;background:#fff;resize:vertical}.planInspectorEmpty{padding:8px 10px;color:#687789}.planInspector p{font-size:12px}.planBottomControls{position:absolute;z-index:10;bottom:12px;left:16px;right:16px;display:flex;align-items:center;gap:9px;pointer-events:none}.planBottomControls>*{pointer-events:auto;background:#fff;border:1px solid #d6e1ee;border-radius:9px;padding:4px;box-shadow:0 2px 4px #1234560c}.planBottomControls select{color:#162033;font-size:12px;height:35px;max-width:210px;padding:4px 12px}.planBottomControls button{border:0;border-radius:5px;background:#fff;color:#162033;padding:6px 9px;font-size:12px}.planBottomControls button[aria-pressed=true]{background:#0878f9;color:#fff}.planZoom{margin-left:auto;display:flex}.floorExact.planEditor .exactSvg svg text{font-family:Inter,ui-sans-serif,system-ui,sans-serif;stroke-width:2px;font-weight:600}@media(max-height:850px){.floorExact.planEditor .planToolGrid button{min-height:49px}.floorExact.planEditor .planToolGrid button>span{font-size:22px;line-height:24px}.floorExact.planEditor .planObjectTray{left:104px;width:175px}.floorExact.planEditor .planObjectTray button{padding:6px 2px}}@media(max-width:1100px){.floorExact.planEditor .exactBody{grid-template-columns:minmax(0,1fr) 330px}.floorExact.planEditor .exactTopNav{padding-left:125px}.floorExact.planEditor .exactTopNav:before{font-size:19px;left:12px}.floorExact.planEditor .planEditorHeader p{display:none}.floorExact.planEditor .planInspector{padding:0 12px 12px}.planStatistics strong{font-size:11px}.planPropertyRow input:not([type=color]),.planPropertyRow select{width:120px!important}.floorExact.planEditor .exactTopNav nav{overflow:auto}.floorExact.planEditor .projectNavName{display:none}}@media(max-width:760px){.floorExact.planEditor .exactBody{grid-template-columns:minmax(0,1fr);height:calc(100dvh - 60px);overflow:auto}.floorExact.planEditor .exactWorkspace.exactAreaWorkspace{grid-column:1;height:75dvh;min-height:500px}.floorExact.planEditor .exactRight{grid-column:1;grid-row:2;margin:0;height:auto}.floorExact.planEditor .exactSidebar{height:calc(75dvh - 140px);min-height:360px}.floorExact.planEditor .exactToolbar{left:120px}.floorExact.planEditor .planObjectTray{left:104px;bottom:0;width:165px}.floorExact.planEditor .planEditorHeader h1{font-size:14px}.planHeaderActions>small{display:none}.planBottomControls{gap:4px}.planBottomControls select{max-width:125px}.planBottomControls button{padding:6px}.floorExact.planEditor .exactTopNav{margin:0;padding-left:96px}.floorExact.planEditor .exactTopNav:before{font-size:15px}.planInspector{max-width:650px;margin:auto}}html[data-theme=dark] .floorExact.planEditor{color-scheme:light;color:#162033!important;background:#f5f7fa!important}html[data-theme=dark] .floorExact.planEditor :is(.exactBody,.exactWorkspace,.exact2d,.exactSvg){background:#f9fcff!important;color:#162033!important}html[data-theme=dark] .floorExact.planEditor .exactRight{background:#f0f2f5!important;color:#162033!important}html[data-theme=dark] .floorExact.planEditor .planInspector section{background:#fff!important;color:#162033!important;border-color:#dde2e9!important}html[data-theme=dark] .floorExact.planEditor .planInspector :is(h2,small,p,span){color:inherit}html[data-theme=dark] .floorExact.planEditor .planInspector h3{color:#7b818c}html[data-theme=dark] .floorExact.planEditor .exactToolbar{background:#fffffff2;color:#162033}html[data-theme=dark] .floorExact.planEditor .exactToolbar button:not(.active){background:#fff;color:#162033;border-color:#dce3ec}.floorExact.planEditor .planToolGrid button>svg{width:27px;height:27px;flex:0 0 auto}.floorExact.planEditor .planObjectTray button>svg{width:18px;height:18px;flex:0 0 auto}.floorExact.planEditor .planBottomControls{left:146px}@media(max-width:760px){.floorExact.planEditor .planBottomControls{left:146px;flex-wrap:wrap}.floorExact.planEditor .planBottomControls select{max-width:120px}.floorExact.planEditor .planZoom{margin-left:0}}.floorExact.planEditor .exactSvg svg[data-plan-dragging=true],.floorExact.planEditor .exactSvg svg[data-plan-dragging=true] *{cursor:-webkit-grabbing!important;cursor:grabbing!important}.floorExact.planEditor [data-hit=corner]:focus{outline:none}.floorExact.planEditor [data-hit=corner]:focus circle:last-child{stroke:#034a9e;stroke-width:3}.planEditor .exactSvg{-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.planObjectPhotos>p{font-size:13px;color:#607080}.planPhotoGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:9px;gap:9px;margin-top:14px}.planPhotoGrid figure{position:relative;margin:0;min-width:0;aspect-ratio:1}.planPhotoGrid button{cursor:pointer}.planPhotoAdd,.planPhotoEmpty{aspect-ratio:1;border-radius:10px;background:#f1f3f5}.planPhotoAdd{border:0;font-size:32px;color:#728093}.planPhotoEmpty{border:2px dashed #dce2e8;background:transparent}.planPhotoThumb{width:100%;height:100%;padding:0;border:0;border-radius:10px;overflow:hidden;background:#eef0f2;color:#607080;font-size:10px}.planPhotoThumb img{width:100%;height:100%;object-fit:cover;display:block}.planPhotoRemove{position:absolute;top:3px;right:3px;border:0;border-radius:50%;width:21px;height:21px;background:#fff;color:#b42323;box-shadow:0 1px 4px #0003}.planPhotoBackdrop{position:fixed;inset:0;z-index:50000;background:#07111de0;display:flex;align-items:center;justify-content:center;padding:20px}.planPhotoViewer{width:min(1120px,100%);max-height:95dvh;display:flex;flex-direction:column;border:1px solid #ffffff30;border-radius:16px;overflow:hidden;background:#101a27;color:#fff;box-shadow:0 24px 80px #0008}.planPhotoViewer header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:20px}.planPhotoViewer h2{margin:0 0 4px;font-size:16px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planPhotoViewer header>div{min-width:0}.planPhotoViewer header span{font-size:12px;color:#b9c8d9}.planPhotoViewer button{cursor:pointer;color:#fff;background:#ffffff18;border:1px solid #ffffff30;border-radius:9px}.planPhotoViewer header button{font-size:28px;min-width:40px;height:40px}.planPhotoStage{position:relative;display:flex;align-items:center;justify-content:center;min-height:180px;min-width:0;background:#070e17;overflow:hidden}.planPhotoStage>img{display:block;max-width:100%;max-height:70dvh;object-fit:contain}.planPhotoStage>button{position:absolute;top:50%;transform:translateY(-50%);font-size:38px;width:44px;height:56px;background:#101a27bb}.planPhotoPrevious{left:12px}.planPhotoNext{right:12px}.planPhotoViewer nav{display:flex;justify-content:center;gap:8px;padding:12px;overflow:auto}.planPhotoViewer nav button{flex:0 0 56px;width:56px;height:56px;padding:2px;overflow:hidden}.planPhotoViewer nav button[aria-pressed=true]{border:2px solid #1687ff}.planPhotoViewer nav img{width:100%;height:100%;object-fit:cover;border-radius:5px}@media(max-width:600px){.planPhotoBackdrop{padding:8px}.planPhotoStage>img{max-height:65dvh}.planPhotoViewer header{padding:10px 12px}}.planAreaNote{margin:10px 4px 18px;color:#60718a;font-size:12px;line-height:1.5}.shell:has(.projectOverview)>.side{display:none}.shell:has(.projectOverview){display:block}.main:has(.projectOverview){margin:0;padding:0;max-width:none;width:100%}.main:has(.projectOverview)>.projectNav{margin:0}.projectOverview{--ep-bg:#f6f8fb;--ep-surface:#fff;--ep-line:#e0e6ee;--ep-text:#142d4e;--ep-muted:#77879b;--ep-accent:#087fff;--ep-plan:#eef0f2;--ep-context:#f5e5df;--ep-wall:#22292d;background:var(--ep-bg);color:var(--ep-text);min-height:calc(100dvh - 66px);font-size:13px}.projectOverview *{box-sizing:border-box}.overviewDialog button,.projectOverview button{font:inherit;cursor:pointer}.overviewDialog button:disabled,.projectOverview button:disabled{opacity:.5;cursor:wait}.overviewDialog button:focus-visible,.projectOverview button:focus-visible{outline:2px solid #087fff;outline-offset:3px}.projectOverview h1,.projectOverview h2,.projectOverview p{margin:0}.projectOverview .ep-layout{display:grid;grid-template-columns:minmax(330px,1fr) minmax(0,2fr);align-items:stretch}.projectOverview .ep-side{padding:25px 24px 32px;border-right:1px solid var(--ep-line);min-width:0;background:var(--ep-surface)}.projectOverview .ep-back,.projectOverview .ep-page-back,.projectOverview .ep-text-action{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:0;color:var(--ep-accent);font-size:12px;font-weight:600}.projectOverview .ep-back{margin-bottom:22px}.projectOverview .ep-side-title{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}.projectOverview .ep-side-title>div{min-width:0}.projectOverview h1{font-size:25px;letter-spacing:-.6px;line-height:1.2;overflow-wrap:anywhere}.projectOverview .ep-side-title p{margin-top:7px;color:var(--ep-muted);font-size:12px;line-height:1.5}.projectOverview .ep-icon-btn{display:grid;place-items:center;width:31px;height:31px;flex:0 0 auto;border:1px solid var(--ep-line);border-radius:7px;background:var(--ep-surface);color:var(--ep-muted)}.projectOverview .ep-description{width:100%;display:flex;align-items:flex-start;gap:10px;text-align:left;background:var(--ep-bg);border:1px solid var(--ep-line);border-radius:8px;padding:12px;margin:20px 0;color:var(--ep-muted);line-height:1.5}.projectOverview .ep-description svg{flex:0 0 auto;margin-top:1px}.projectOverview .ep-description span{white-space:pre-wrap;overflow-wrap:anywhere}.projectOverview .ep-side-section{border-top:1px solid var(--ep-line);padding-top:20px;margin-top:22px}.projectOverview .ep-side-section>h2{font-size:12px;font-weight:700;margin-bottom:16px}.projectOverview .ep-property-list{margin:0;display:grid;grid-gap:13px;gap:13px}.projectOverview .ep-property-list>div{display:flex;justify-content:space-between;gap:14px}.projectOverview dt{color:var(--ep-muted);font-size:12px}.projectOverview dd{margin:0;text-align:right;font-size:12px;font-weight:600;overflow-wrap:anywhere;max-width:65%}.projectOverview .ep-main{min-width:0;padding:30px 34px 60px}.projectOverview .ep-section{border-bottom:1px solid var(--ep-line);padding:0 0 30px;margin-bottom:28px}.projectOverview .ep-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:20px}.projectOverview .ep-section-head h2{font-size:19px;font-weight:650;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}.projectOverview .ep-page-header p,.projectOverview .ep-section-head p{font-size:12px;color:var(--ep-muted);margin-top:6px}.projectOverview .ep-count{font-size:11px;font-weight:500;min-width:22px;display:inline-grid;place-items:center;padding:3px 6px;border-radius:6px;background:#e9eef4;color:#6d7c8f}.projectOverview .ep-head-actions{display:flex;gap:16px;align-items:center}.projectOverview .ep-text-action{white-space:nowrap;min-height:30px}.projectOverview .ep-text-action svg{width:13px}.ep-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d8e1eb;border-radius:7px;padding:9px 12px;background:#fff;color:#193d69;text-decoration:none;font-size:12px;white-space:nowrap}.projectOverview .ep-action{border-color:var(--ep-line);color:var(--ep-text);background:var(--ep-surface)}.ep-action.ep-primary{background:#087fff;color:#fff;border-color:#087fff}.ep-action.ep-danger{color:#c33237;border-color:#f2c7c7}.projectOverview .ep-all-plans-grid,.projectOverview .ep-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.projectOverview .ep-plan-card{position:relative;min-width:0}.overviewDialog .ep-plan-image,.projectOverview .ep-plan-image{display:flex;align-items:center;justify-content:center;width:100%;height:176px;padding:16px;border:1px solid var(--ep-line,#e0e6ee);border-radius:11px;background:var(--ep-plan,#eef0f2);overflow:hidden}.overviewDialog .ep-plan-image svg,.projectOverview .ep-plan-image svg{width:100%;height:100%;--ep-plan:#fff;--ep-wall:#22292d;--ep-context:#f5e5df}.projectOverview .ep-plan-image:hover{border-color:#93c3fa}.projectOverview .ep-empty-plan{display:grid;place-items:center;grid-gap:10px;gap:10px;color:var(--ep-muted);font-size:11px}.projectOverview .ep-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:12px 2px 0}.projectOverview .ep-card-bottom>div{min-width:0}.projectOverview .ep-card-name{font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projectOverview .ep-card-sub{font-size:11px;margin-top:5px;color:var(--ep-muted)}.projectOverview .ep-card-bottom .ep-icon-btn{border:0;background:none}.projectOverview .ep-menu{position:absolute;top:100%;right:0;z-index:1000;width:200px;border:1px solid var(--ep-line);border-radius:10px;background:var(--ep-surface);box-shadow:0 12px 36px #182b4520;padding:5px}.projectOverview .ep-menu button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px;border:0;border-radius:6px;background:none;color:var(--ep-text);text-align:left}.projectOverview .ep-menu button:hover{background:var(--ep-bg)}.projectOverview .ep-menu button:last-child{color:#d44747}.projectOverview .ep-files,.projectOverview .ep-photos{display:flex;align-items:center;gap:18px;min-width:0}.projectOverview .ep-photo-item{position:relative;min-width:0;flex:1 1;max-width:210px}.projectOverview .ep-photo{width:100%;border:0;padding:0;background:none;text-align:left;color:var(--ep-text)}.projectOverview .ep-photo-frame{display:block;aspect-ratio:1.35;border:3px solid var(--ep-surface);border-radius:11px;box-shadow:0 1px 5px #1b304018;background:var(--ep-plan);overflow:hidden}.projectOverview .ep-photo-frame img{width:100%;height:100%;display:block;object-fit:cover}.projectOverview .ep-file-name,.projectOverview .ep-photo-caption{display:block;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:10px}.projectOverview .ep-file-size,.projectOverview .ep-photo-time{display:block;color:var(--ep-muted);font-size:11px;margin-top:5px}.projectOverview .ep-add-tile{display:grid;place-items:center;border:1px dashed #c9d5e3;border-radius:10px;width:52px;height:52px;flex:0 0 52px;background:var(--ep-surface);color:var(--ep-accent)}.projectOverview .ep-add-tile:hover{background:#edf5ff}.projectOverview .ep-files{gap:24px}.projectOverview .ep-file{min-width:0;width:180px;border:0;padding:0;background:none;color:var(--ep-text);text-align:left}.projectOverview .ep-document{display:flex;align-items:center;justify-content:center;position:relative;width:130px;height:166px;border:1px solid var(--ep-line);border-radius:9px;box-shadow:0 2px 5px #172c4310;background:var(--ep-surface);padding:8px;overflow:hidden}.projectOverview .ep-document>img{width:100%;height:100%;object-fit:contain}.projectOverview .ep-document>svg{width:42px;height:42px;color:#6e87a3}.projectOverview .ep-file-tag{position:absolute;right:7px;top:7px;border-radius:4px;background:#17324e;color:#fff;font-size:9px;font-weight:700;padding:4px 6px}.projectOverview .ep-overview-analysis{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;font-size:11px;color:var(--ep-muted)}.projectOverview .ep-overview-empty{padding:25px 0;color:var(--ep-muted);font-size:12px;line-height:1.6}.projectOverview .ep-page-back{margin-bottom:22px}.projectOverview .ep-page-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:26px}.projectOverview .ep-gallery-tabs{display:flex;gap:6px;border-bottom:1px solid var(--ep-line);padding-bottom:15px;margin-bottom:22px}.projectOverview .ep-gallery-tabs button{border:0;border-radius:7px;background:none;color:var(--ep-muted);padding:9px 14px}.projectOverview .ep-gallery-tabs button[aria-pressed=true]{background:var(--ep-surface);color:var(--ep-accent);box-shadow:0 1px 4px #0001}.projectOverview .ep-media-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:24px;gap:24px}.projectOverview .ep-media-gallery .ep-file,.projectOverview .ep-media-gallery .ep-photo-item{width:100%;max-width:none}.projectOverview .ep-photo-delete{position:absolute;right:5px;top:5px}.projectOverview .ep-floor-trash{margin-top:36px;padding-top:20px;border-top:1px solid var(--ep-line)}.projectOverview .ep-floor-trash h2{font-size:15px;margin-bottom:16px}.projectOverview .ep-floor-trash>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0}.ep-notice{padding:12px 16px;border:1px solid #bcddcf;border-radius:7px;background:#f0faf5;color:#275940;display:flex;gap:16px;align-items:center;margin:16px 0}.ep-notice button{background:none;border:0;color:#087fff}.ep-overview-error{color:#af3333;background:#fff1f1;border:1px solid #f0c3c3;padding:12px;margin-bottom:18px!important;border-radius:7px}.ep-overview-saving{padding:12px;color:#60758f}.overviewDialogBackdrop{position:fixed;inset:0;z-index:40000;background:#0b1e3b77;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.overviewDialog{background:#fff;color:#142d4e;border:1px solid #dce4ee;border-radius:14px;box-shadow:0 24px 80px #07162955;width:min(760px,100%);max-height:92dvh;display:flex;flex-direction:column;font-size:13px}.overviewDialog>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid #e0e6ee}.overviewDialog h2{font-size:18px;margin:0;overflow-wrap:anywhere}.overviewDialog>header button{border:0;background:none;color:#77879b}.overviewDialogBody{padding:24px;overflow:auto}.overviewDialogBody label{display:block;font-size:12px;margin-bottom:14px}.overviewDialogBody input,.overviewDialogBody textarea{width:100%;display:block;border:1px solid #d6e0eb;border-radius:7px;padding:11px;color:#142d4e;background:#f9fbfd;font:inherit;margin-top:8px}.overviewDialogBody textarea{min-height:150px;resize:vertical}.overviewDialog>footer{padding:16px 24px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #e0e6ee;flex-wrap:wrap}.overviewDialog .ep-document-viewer{width:100%;height:65dvh;border:1px solid #dce4ee;border-radius:6px}.overviewDialog .ep-file-remove{display:block;margin-top:15px;background:none;color:#c33237;border:0;padding:0}.projectOverview .epOrientation.epGeneralCompass{color:var(--ep-text);font-size:11px}.projectOverview .epOrientation.epGeneralCompass .epLayout{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.projectOverview .epOrientation.epGeneralCompass .epLayout>aside.epPanel,.projectOverview .epOrientation.epGeneralCompass .epLayout>section.epPanel{display:contents}.projectOverview .epOrientation.epGeneralCompass .epLayout>section>.epPanelHead{grid-column:1/-1;order:0;margin:0}.projectOverview .epOrientation.epGeneralCompass .epPanelHead h3{font-size:13px}.projectOverview .epOrientation.epGeneralCompass .epPanelHead button{font-size:10px;border-radius:5px}.projectOverview .epOrientation.epGeneralCompass .epMapWrap{grid-column:1/-1;order:1}.projectOverview .epOrientation.epGeneralCompass .epMapWrap .leafletHost{height:460px!important;min-height:460px;border-radius:7px!important}.projectOverview .epOrientation.epGeneralCompass .epNorth{font-size:20px}.projectOverview .epOrientation.epGeneralCompass .epMapNote{font-size:9px;bottom:8px;left:6px;max-width:calc(100% - 12px);padding:5px}.projectOverview .epOrientation.epGeneralCompass .epMapTools{left:7px;top:7px}.projectOverview .epOrientation.epGeneralCompass .epEmbeddedBuildingHeight{order:2;min-width:0;padding:0 0 14px;margin:0;border-color:var(--ep-line)}.projectOverview .epOrientation.epGeneralCompass .epEmbeddedBuildingHeight h3{font-size:11px;line-height:1.5}.projectOverview .epOrientation.epGeneralCompass .epEmbeddedBuildingHeight strong{display:block;font-size:18px;margin-top:5px}.projectOverview .epOrientation.epGeneralCompass .epEmbeddedBuildingHeight small{font-size:10px;line-height:1.5}.projectOverview .epOrientation.epGeneralCompass .epEmbeddedBuildingHeight p{font-size:11px;line-height:1.5;color:var(--ep-muted);margin-top:8px}.projectOverview .epOrientation.epGeneralCompass .epSummaryCompassRow{grid-column:1/-1;order:3;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-gap:10px;gap:10px;margin:0}.projectOverview .epOrientation.epGeneralCompass .epSummary{border-color:var(--ep-line);background:var(--ep-surface)}.projectOverview .epOrientation.epGeneralCompass .epSummaryHead{font-size:11px;padding:9px;background:var(--ep-bg);border-color:var(--ep-line)}.projectOverview .epOrientation.epGeneralCompass .epSummaryBody{grid-template-columns:1fr;padding:10px;font-size:10px}.projectOverview .epOrientation.epGeneralCompass .epSummaryColumn{gap:12px}.projectOverview .epOrientation.epGeneralCompass .epSummaryColumn+.epSummaryColumn{display:none}.projectOverview .epOrientation.epGeneralCompass .epSummaryFooter{padding:0 8px 10px}.projectOverview .epOrientation.epGeneralCompass .epSummaryFooter>span{display:none}.projectOverview .epOrientation.epGeneralCompass .epInlineCompass{padding:10px 6px;border-color:var(--ep-line)}.projectOverview .epOrientation.epGeneralCompass .epInlineCompass h3{font-size:11px}.projectOverview .epOrientation.epGeneralCompass .epInlineCompassDial{width:126px;height:126px;max-width:100%}.projectOverview .epOrientation.epGeneralCompass .epInlineCompassDial strong{font-size:13px;padding:11px 5px}.projectOverview .epOrientation.epGeneralCompass .epCompassNeedle{height:40px;top:22px}.projectOverview .epOrientation.epGeneralCompass .epInlineCompass .epDownload{font-size:10px;padding:8px;white-space:normal}.projectOverview .epOrientation.epGeneralCompass .epEmbeddedDownloads,.projectOverview .epOrientation.epGeneralCompass .epGroups,.projectOverview .epOrientation.epGeneralCompass .epHelp,.projectOverview .epOrientation.epGeneralCompass .epLayout>aside>.epPanelHead,.projectOverview .epOrientation.epGeneralCompass .epLayout>section>.epMuted{display:none}html[data-theme=dark] .projectOverview{--ep-bg:#0e1b2b;--ep-surface:#152537;--ep-line:#2a3b50;--ep-text:#dfebf8;--ep-muted:#93a7bf;--ep-plan:#203448;--ep-context:#705548;--ep-wall:#cedbea}html[data-theme=dark] .projectOverview .ep-count{background:#253b52;color:#b5c5d8}html[data-theme=dark] .projectOverview .epOrientation.epGeneralCompass .epInlineCompass{background:var(--ep-surface)}@media(min-width:1800px){.projectOverview .ep-plan-image{height:220px}.projectOverview .ep-photo-item{max-width:260px}.projectOverview .ep-main{padding:38px 48px}}@media(max-width:1150px){.projectOverview .ep-layout{grid-template-columns:minmax(310px,1fr) minmax(0,2fr)}.projectOverview .ep-side{padding:24px 16px}.projectOverview .ep-main{padding:28px 22px}.projectOverview .ep-head-actions>.ep-action{font-size:0;padding:7px}.projectOverview .ep-head-actions>.ep-action svg{width:18px}.projectOverview .ep-plans{gap:12px}.projectOverview .ep-plan-image{height:140px;padding:10px}.projectOverview .ep-photos{gap:12px}.projectOverview .ep-photos>.ep-photo-item:nth-of-type(n+4){display:none}}@media(max-width:820px){.projectOverview .ep-layout{grid-template-columns:300px minmax(0,1fr)}.projectOverview .ep-plans{grid-template-columns:repeat(2,minmax(0,1fr))}.projectOverview .ep-files>.ep-file:nth-of-type(n+3),.projectOverview .ep-photos>.ep-photo-item:nth-of-type(n+3),.projectOverview .ep-plans>.ep-plan-card:nth-child(n+3){display:none}.projectOverview .ep-all-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projectOverview .ep-main{padding:24px 16px}.projectOverview .ep-section-head h2{font-size:17px}}@media(max-width:640px){.projectOverview .ep-layout{grid-template-columns:1fr}.projectOverview .ep-side{border-right:0;border-bottom:1px solid var(--ep-line);padding:22px}.projectOverview .ep-main{padding:26px 22px}.projectOverview .ep-side-section{margin-top:18px;padding-top:18px}.projectOverview .ep-property-list{grid-template-columns:1fr 1fr;gap:12px 20px}.projectOverview .ep-property-list>div{display:block}.projectOverview dd{text-align:left;max-width:none;margin-top:5px}.projectOverview .ep-building-panel{max-width:none}.projectOverview .epOrientation.epGeneralCompass .epMapWrap .leafletHost{height:500px!important}.projectOverview .ep-photos>.ep-photo-item:nth-of-type(3){display:block}.projectOverview .ep-head-actions{gap:8px}.overviewDialogBackdrop{padding:12px}.overviewDialog>header,.overviewDialogBody{padding:18px}.overviewDialog>footer{padding:14px 18px}}.projectOverview .ep-empty-plan>svg{width:24px;height:24px}.projectOverview .epOrientation.epGeneralCompass .epPanelHead button{background:var(--ep-surface)!important;color:var(--ep-text)}.offlineStatus button{padding:5px 9px;border:1px solid #c2d4ed;border-radius:6px;background:var(--card-bg,#fff);color:inherit;font-size:11px;cursor:pointer}.offlineStatus button:disabled{opacity:.55;cursor:default}.offlineStatus small{display:block;margin-top:5px;color:#64748b}.roofZoneInspector{padding:12px;border:1px solid #cbd9e9;border-radius:8px;background:#fff;margin-bottom:12px;min-width:0}.roofZoneInspector h2{font-size:17px;margin:0 0 10px}.roofZoneInspector h3{font-size:14px;margin:14px 0 8px}.roofZoneInspector label{display:block;font-size:12px;margin:10px 0;line-height:1.5}.roofZoneInspector input:not([type=checkbox]),.roofZoneInspector select{display:block;box-sizing:border-box;width:100%;min-width:0;padding:8px;margin-top:4px;border:1px solid #cbd9e9;border-radius:5px;background:#fff;color:#10233f;font:inherit}.roofZoneInspector input[type=checkbox]{width:auto;margin-right:7px;accent-color:#087bff}.roofZoneInspector button{margin:4px 0;padding:9px 10px;border:1px solid #cbd9e9;border-radius:6px;background:#f8fbff;color:#153b64;cursor:pointer;max-width:100%;white-space:normal}.roofZoneInspector button:disabled{opacity:.5;cursor:not-allowed}.roofZoneInspector p{font-size:12px;line-height:1.5}.roofZoneInspector [role=alert]{color:#bd2626}.roofZoneInspector details{margin-top:12px;border-top:1px solid #e1e8f2;padding-top:10px}.roofZoneInspector summary{font-size:12px;font-weight:600;cursor:pointer;line-height:1.5}.roofPartConnection,.roofPartSetup{padding:10px;background:#f3f8ff;border:1px solid #dce8f7;border-radius:7px;margin:10px 0}.roofPartSetup>button{display:block;width:100%;background:#0873d1;border-color:#0873d1;color:#fff}.roofZoneInspector table{width:100%;border-collapse:collapse;font-size:11px}.roofZoneInspector td,.roofZoneInspector th{padding:6px 3px;text-align:left;border-bottom:1px solid #e1e8f2}.roofZoneInspector td:last-child{text-align:right;white-space:nowrap}.roofPlaneList{padding:12px;border:1px solid #cbd9e9;border-radius:8px;background:#fff;margin-bottom:12px;min-width:0}.roofPlaneList h2{font-size:17px;margin:0 0 10px}.roofPlaneList p{font-size:12px;line-height:1.5}.roofPlaneList button{font:inherit;font-size:12px;color:#153b64;cursor:pointer}.roofPlaneList button:hover{box-shadow:0 0 0 1px #087bff}.roofPlaneList button:focus-visible{outline:2px solid #087bff;outline-offset:2px}.baOverviewTabs{margin:20px 0;background:var(--panel,#fff);border:1px solid #dce5ef;border-radius:12px;overflow:hidden}.baOverviewTabs [role=tablist]{display:flex;overflow-x:auto;border-bottom:1px solid #dce5ef;padding:0 12px;gap:4px}.baOverviewTabs [role=tab]{padding:14px 12px;background:transparent;border:0;border-bottom:3px solid transparent;white-space:nowrap;color:inherit;font-weight:600;cursor:pointer}.baOverviewTabs [role=tab][aria-selected=true]{color:#1874d2;border-bottom-color:#1874d2}.baOverviewTabs [role=tab]:focus-visible,.baOverviewTabs [role=tabpanel]:focus-visible{outline:2px solid #1874d2;outline-offset:-3px}.baOverviewTabs [role=tabpanel]{padding:20px}.baOverviewTabs [hidden]{display:none}.baOverviewTabs h2{margin:0 0 16px;font-size:18px}.baOverviewTabs h3{font-size:14px;margin-top:22px}.baPropertyList{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:18px 28px;gap:18px 28px;margin:0}.baPropertyList dt{font-size:12px;color:#64748b;margin-bottom:4px}.baPropertyList dd{margin:0;font-size:14px;overflow-wrap:anywhere}.baProjectDescription{white-space:pre-wrap;font-size:14px;line-height:1.6}.baDataChecks{margin:0 0 20px}.baDataChecks summary{cursor:pointer;font-weight:600;font-size:13px}html[data-theme=dark] .baOverviewTabs{background:#1b2735;border-color:#34475b;color:#e2eaf3}html[data-theme=dark] .baOverviewTabs [role=tablist]{border-color:#34475b}html[data-theme=dark] .baOverviewTabs [role=tab][aria-selected=true]{color:#83baff;border-bottom-color:#83baff}html[data-theme=dark] .baPropertyList dt{color:#a7b8cc}