*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7fa;color:#172033;overflow:hidden}button,input,select{font:inherit}.app{height:100vh;display:grid;grid-template-columns:224px minmax(660px,1fr) 360px;grid-template-rows:64px 1fr;transition:grid-template-columns .25s ease}.app.sidebarCollapsed{grid-template-columns:72px minmax(720px,1fr) 360px}.app.drawerClosed{grid-template-columns:224px minmax(760px,1fr) 0}.app.sidebarCollapsed.drawerClosed{grid-template-columns:72px minmax(820px,1fr) 0}.topbar{grid-column:1/-1;height:64px;background:#fff;border-bottom:1px solid #e7ebf0;display:flex;align-items:center;padding:0 16px;gap:16px;z-index:20}.brand{display:flex;align-items:center;gap:10px;min-width:190px}.brandMark{width:34px;height:34px;border-radius:11px;background:#2563eb;color:#fff;display:grid;place-items:center;font-weight:800}.brand strong{font-size:18px}.brand strong span{color:#2563eb}.siteSelector{height:42px;border:1px solid #e3e7ed;background:#fff;border-radius:12px;display:flex;align-items:center;gap:9px;padding:0 12px;min-width:250px;text-align:left}.siteSelector>span:nth-child(2){display:grid;flex:1}.siteSelector b{font-size:12px}.siteSelector small{font-size:10px;color:#758094}.diamond{color:#2563eb;font-size:18px}.topnav{height:64px;display:flex;align-items:stretch;gap:4px;flex:1;overflow:hidden}.topnav a{display:flex;align-items:center;padding:0 10px;font-size:12px;color:#626d7e;white-space:nowrap;position:relative}.topnav a.active{color:#2563eb;font-weight:700}.topnav a.active:after{content:"";height:2px;background:#2563eb;position:absolute;left:8px;right:8px;bottom:0}.editorNav{font-weight:700}.topActions{display:flex;align-items:center;gap:8px}.searchBox{width:245px;height:38px;border:1px solid #e3e7ed;border-radius:11px;background:#fafbfc;display:flex;align-items:center;padding:0 10px;color:#8b95a5}.searchBox input{border:0;background:transparent;outline:0;width:100%;padding-left:7px;font-size:11px}.liveBadge,.notification{height:38px;border:1px solid #e3e7ed;border-radius:10px;background:#fff}.liveBadge{padding:0 12px;color:#178f50}.liveBadge i{display:inline-block;width:7px;height:7px;background:#22c55e;border-radius:50%;margin-right:5px}.notification{width:38px;position:relative}.notification b{position:absolute;right:-5px;top:-6px;background:#ef4444;color:#fff;border-radius:10px;font-size:9px;padding:2px 5px}.userBlock{display:flex;align-items:center;gap:8px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eef3ff;color:#2563eb;font-weight:700;font-size:11px}.userBlock>div:last-child{display:grid}.userBlock b{font-size:11px}.userBlock select{border:0;background:transparent;color:#758094;font-size:9px;outline:0;max-width:120px}.sidebar{grid-row:2;background:#fff;border-right:1px solid #e7ebf0;padding:16px 12px 14px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.sidebar>div:first-child,.sidebarBottom{display:grid;gap:5px}.sidebar button{height:46px;border:0;border-radius:11px;background:transparent;display:grid;grid-template-columns:34px 1fr auto;align-items:center;text-align:left;padding:0 10px;color:#5f6b7d}.sidebar button.active{background:#edf3ff;color:#2563eb}.sidebar button span{font-size:18px;text-align:center}.sidebar button b{font-size:12px;font-weight:580}.sidebar button em{font-style:normal;font-size:9px;background:#eef3ff;color:#2563eb;border-radius:10px;padding:3px 6px}.sidebarBottom{border-top:1px solid #edf0f4;padding-top:10px}.sidebarUser{display:flex;align-items:center;gap:9px;padding:10px}.avatar.small{width:30px;height:30px}.sidebarUser span{display:grid}.sidebarUser b{font-size:10px}.sidebarUser small{font-size:9px;color:#22a55b}.sidebar.collapsed{padding-left:8px;padding-right:8px}.sidebar.collapsed button{grid-template-columns:1fr;padding:0}.sidebar.collapsed button b,.sidebar.collapsed button em,.sidebar.collapsed .sidebarUser span{display:none}.sidebar.collapsed .sidebarUser{justify-content:center}.main{grid-row:2;padding:14px;display:grid;grid-template-rows:minmax(0,1fr) 96px;gap:12px;min-width:0;overflow:hidden}.commandPanel{background:#fff;border:1px solid #e6eaf0;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px #0f172a0b;display:grid;grid-template-rows:auto 1fr}.canvasHeader{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px 10px}.canvasHeader p{margin:0 0 5px;font-size:10px;color:#7b8798}.canvasHeader h1{font-size:18px;margin:0}.canvasHeader small{font-size:10px;color:#7b8798}.canvasHeader>div:last-child{display:flex;gap:7px}.canvasHeader button{width:36px;height:36px;border:1px solid #e3e7ed;background:#fff;border-radius:10px}.canvasWrap{position:relative;min-height:0;background:radial-gradient(circle at 50% 40%,#fff 10%,#f8fafc);overflow:hidden}.canvasWrap canvas{display:block}.floorControls{position:absolute;right:18px;top:50%;transform:translateY(-50%);display:grid;gap:7px}.floorControls button{width:46px;height:42px;border:1px solid #e3e7ed;border-radius:12px;background:#fffffff2;box-shadow:0 5px 18px #0f172a0f;font-size:11px}.floorControls button.active{border-color:#4e87ff;background:#eef4ff;color:#2563eb;font-weight:700}.floorControls button:disabled{opacity:.35}.canvasHint{position:absolute;left:18px;bottom:22px;font-size:10px;color:#7a8596}.canvasDock{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:flex;gap:4px;padding:6px;background:#fffffff5;border:1px solid #e3e7ed;border-radius:14px;box-shadow:0 10px 30px #0f172a14}.canvasDock button{height:34px;border:0;background:transparent;border-radius:9px;color:#657184;padding:0 10px}.canvasDock button.active{background:#eef4ff;color:#2563eb}.sceneLabel{background:#fffffff5;border:1px solid #dfe5ec;border-radius:12px;box-shadow:0 10px 28px #0f172a1f;padding:7px 9px;display:flex;gap:7px;min-width:142px;pointer-events:none}.sceneLabel>span{width:21px;height:21px;border-radius:50%;background:#2563eb;color:#fff;display:grid;place-items:center;font-size:9px;font-weight:700}.sceneLabel>div{display:grid}.sceneLabel b{font-size:9px}.sceneLabel small{font-size:8px;color:#748094}.sceneLabel i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#22c55e}.sceneLabel i.warning{background:#f59e0b}.sceneLabel i.critical{background:#ef4444}.statusStrip{background:#fff;border:1px solid #e6eaf0;border-radius:18px;display:grid;grid-template-columns:1.25fr repeat(4,1fr);overflow:hidden}.statusStrip button{border:0;border-right:1px solid #edf0f4;background:#fff;display:flex;align-items:center;gap:10px;padding:12px;text-align:left}.statusStrip button:last-child{border-right:0}.statusStrip button>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center}.statusStrip .green{background:#eaf9f0;color:#18a55a}.statusStrip .red{background:#fff0f0;color:#ef4444}.statusStrip .blue{background:#edf3ff;color:#2563eb}.statusStrip .amber{background:#fff6e3;color:#f59e0b}.statusStrip .mint{background:#eaf9f2;color:#16966a}.statusStrip button>div{display:grid}.statusStrip small{text-transform:uppercase;font-size:8px;letter-spacing:.4px;color:#8993a3}.statusStrip strong{font-size:13px}.statusStrip em{font-style:normal;font-size:9px;color:#778294}.drawer{grid-row:2;background:#fff;border-left:1px solid #e7ebf0;padding:16px;overflow:auto;min-width:0;transition:.25s}.drawer:not(.open){transform:translate(100%);opacity:0;pointer-events:none}.drawerHeader{display:flex;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #edf0f4}.drawerTitleRow{display:flex;gap:10px}.drawerCode{width:36px;height:36px;border-radius:10px;background:#eef4ff;color:#2563eb;display:grid;place-items:center;font-size:10px;font-weight:700}.drawerHeader h2{margin:0 0 4px;font-size:16px}.drawerHeader p{margin:0;color:#778294;font-size:9px}.drawerHeader>button{border:0;background:transparent;font-size:22px;color:#8d97a6}.statusPill{display:inline-block;margin:12px 0;padding:5px 9px;border-radius:20px;font-size:10px}.statusPill.healthy{background:#eaf9f0;color:#178f50}.statusPill.warning{background:#fff5df;color:#b87400}.statusPill.critical{background:#fff0f0;color:#d63434}.drawerTabs{display:flex;border-bottom:1px solid #edf0f4;overflow:auto}.drawerTabs button{border:0;background:transparent;padding:9px 8px;color:#778294;font-size:10px;white-space:nowrap}.drawerTabs button.active{color:#2563eb;border-bottom:2px solid #2563eb}.roleNotice{margin:14px 0 10px;padding:10px;border-radius:10px;background:#edf4ff;color:#2a60b9;font-size:10px}.metricGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.metricCard{border:1px solid #e4e8ee;border-radius:11px;padding:11px}.metricCard small{display:block;font-size:9px;color:#7d8797;margin-bottom:5px}.metricCard strong{font-size:15px}.sectionHeading{display:flex;justify-content:space-between;align-items:center;margin:17px 0 9px;text-transform:uppercase;font-size:10px;letter-spacing:.35px}.sectionHeading a{color:#2563eb;text-transform:none;font-size:9px}.alertCard{border:1px solid #f1d4d4;background:#fff8f8;border-radius:12px;padding:12px}.alertCard b{color:#d43a3a;font-size:11px}.alertCard p{font-size:10px}.alertCard small{font-size:9px;color:#8a94a4}.actionGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.actionGrid button{min-height:42px;border:1px solid #e1e6ed;background:#fff;border-radius:10px;text-align:left;padding:9px;font-size:10px}.healthBlock{display:flex;gap:14px;align-items:center;padding:14px;background:#f8fafc;border:1px solid #edf0f4;border-radius:14px;margin-top:14px}.healthScore{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;border:8px solid #51c982;font-size:20px;font-weight:700}.healthBlock h3{font-size:12px;margin:0 0 4px}.healthBlock p{font-size:9px;color:#778294;margin:0}@media(max-width:1380px){.app{grid-template-columns:72px minmax(610px,1fr) 330px}.sidebar{padding-left:8px;padding-right:8px}.sidebar button{grid-template-columns:1fr;padding:0}.sidebar button b,.sidebar button em,.sidebarUser span{display:none}.sidebarUser{justify-content:center}.siteSelector{display:none}.brand{min-width:150px}.topnav a{padding:0 7px}.searchBox{width:185px}}@media(max-width:1120px){.app{grid-template-columns:72px 1fr 0}.drawer{position:fixed;right:0;top:64px;bottom:0;width:350px;z-index:30;box-shadow:-16px 0 40px #0f172a1f}.topnav a:not(.active):not(.editorNav){display:none}.searchBox{width:170px}}.app,.main,.commandPanel,.canvasWrap,.threeCanvasHost{min-width:0;min-height:0}.canvasWrap,.threeCanvasHost{width:100%!important;height:100%!important}.threeCanvasHost{position:absolute;inset:0;overflow:hidden;background:#fff;contain:strict}.threeCanvasHost canvas{display:block;touch-action:none}.sceneLoading,.sceneFallback{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;padding:24px;text-align:center;color:#526174;background:radial-gradient(circle at 50% 40%,#fff 10%,#f3f6fa);font-size:11px}.sceneLoading{z-index:2}.sceneFallback{z-index:7}.sceneFallback strong{color:#172033;font-size:14px}.sceneFallback p{max-width:300px;margin:0;line-height:1.5}.sceneFallback button{height:34px;padding:0 14px;border:1px solid #2563eb;border-radius:8px;background:#2563eb;color:#fff;font-size:10px;font-weight:700;cursor:pointer}.masterDataBackdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:#0f172a61;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.masterDataPanel{width:min(1120px,100%);max-height:calc(100vh - 48px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 24px 80px #0f172a3d;padding:22px}.masterDataPanel>header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #edf0f4;padding-bottom:15px}.masterDataPanel header small{color:#7b8798;font-size:9px}.masterDataPanel header h2{margin:4px 0;font-size:20px}.masterDataPanel header p{margin:0;color:#778294;font-size:10px}.masterDataPanel header button{border:0;background:transparent;color:#657184;font-size:12px}.masterDataPanel header button:last-child{font-size:24px}.masterDataHeaderActions{display:flex;align-items:center;gap:12px}.masterDataStatus{display:flex;justify-content:space-between;align-items:center;min-height:36px;color:#5e6b7d;font-size:10px}.masterDataStatus button{border:0;background:transparent;color:#2563eb;font-size:10px;font-weight:700}.masterDataGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.masterDataCard{display:grid;align-content:start;gap:9px;padding:13px;border:1px solid #e1e7ee;border-radius:12px;background:#fbfcfe}.masterDataCard h3{margin:0 0 2px;font-size:12px}.masterDataCard label,.masterDataLogin label{display:grid;gap:4px;color:#748094;font-size:9px}.masterDataCard input,.masterDataCard select,.masterDataLogin input{width:100%;height:32px;border:1px solid #dbe2ea;border-radius:7px;background:#fff;padding:0 8px;color:#172033;font-size:10px}.masterDataCard .primaryButton,.masterDataLogin .primaryButton{width:100%;height:34px;margin-top:3px}.masterDataSummary{display:flex;gap:8px;margin-top:12px}.masterDataSummary strong{flex:1;padding:11px;border-radius:9px;background:#edf4ff;color:#2563eb;text-align:center;font-size:11px}.authPanel{width:min(420px,100%)}.masterDataLogin{display:grid;gap:12px;padding-top:18px}.masterDataError{margin:0;color:#dc2626;font-size:10px}.canvasWrap{isolation:isolate}.canvasWrap:fullscreen{border-radius:0;background:#f8fafc}.sectionMain{grid-template-rows:minmax(0,1fr)}.sectionPage{min-width:0;overflow:auto;padding:28px;border:1px solid #e6eaf0;border-radius:18px;background:radial-gradient(circle at 50% 0%,#fff,#f7f9fc 90%);box-shadow:0 8px 30px #0f172a0b}.sectionPageHero{display:flex;align-items:center;gap:16px;max-width:760px;margin:7vh auto 34px}.sectionPageHero p{margin:0 0 6px;color:#7b8798;font-size:10px}.sectionPageHero h1{margin:0 0 8px;font-size:25px}.sectionPageHero small{color:#657184;font-size:11px;line-height:1.6}.sectionPageIcon{display:grid;flex:0 0 58px;width:58px;height:58px;place-items:center;border-radius:16px;background:#edf4ff;color:#2563eb;font-size:25px}.sectionPageGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:760px;margin:0 auto}.sectionPageGrid article{padding:15px;border:1px solid #e2e8f0;border-radius:12px;background:#fffc}.sectionPageGrid small{color:#8a94a4;text-transform:uppercase;letter-spacing:.4px;font-size:8px}.sectionPageGrid strong{display:block;margin:8px 0 5px;font-size:12px}.sectionPageGrid p{margin:0;color:#748094;font-size:10px;line-height:1.5}.editorPage{min-width:0;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr;border:1px solid #e6eaf0;border-radius:18px;background:#fff;box-shadow:0 8px 30px #0f172a0b}.editorToolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid #e7ebf0}.editorToolbar p{margin:0 0 4px;color:#7b8798;font-size:9px}.editorToolbar h1{margin:0 0 4px;font-size:18px}.editorToolbar small{color:#778294;font-size:9px}.editorToolbarActions{display:flex;align-items:center;gap:7px}.editorToolbarActions button{height:34px;padding:0 10px;border:1px solid #dfe5ec;border-radius:8px;background:#fff;color:#5f6d80;font-size:9px;font-weight:700}.editorToolbarActions button.active{background:#edf4ff;border-color:#bcd3ff;color:#2563eb}.editorToolbarActions .primaryButton{border-color:#2563eb;background:#2563eb;color:#fff}.editorSwitch{display:flex;align-items:center;gap:5px;color:#657184;font-size:9px}.editorWorkspace{min-height:0;display:grid;grid-template-columns:230px minmax(0,1fr) 245px}.editorHierarchy,.editorInspector{min-width:0;overflow:auto;padding:14px;background:#fbfcfe}.editorHierarchy{border-right:1px solid #e7ebf0}.editorInspector{border-left:1px solid #e7ebf0}.editorSectionHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:#273449;font-size:10px}.editorSectionHeader span{color:#8792a2;font-size:8px}.editorSectionHeader button{border:0;background:transparent;color:#dc2626;font-size:9px}.editorFloor{display:grid;gap:4px;margin-bottom:10px}.editorFloor>div{display:flex;justify-content:space-between;align-items:center;padding:7px;border-radius:7px;background:#edf4ff;color:#2563eb}.editorFloor>div b{font-size:10px}.editorFloor>div small{color:#6f86ac;font-size:8px}.editorFloor>div button{border:0;background:transparent;color:#2563eb;font-size:14px}.editorFloor>button,.editorRoom{border:0;border-radius:6px;padding:6px 8px;background:transparent;color:#657184;text-align:left;font-size:9px;cursor:pointer}.editorFloor>button:hover,.editorFloor>button.selected,.editorRoom:hover,.editorRoom.selected{background:#eaf1ff;color:#2563eb}.editorRoom{display:block;width:100%;margin-bottom:4px}.editorHierarchyActions{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:15px}.editorHierarchyActions button{height:32px;border:1px dashed #b8c8dc;border-radius:7px;background:#fff;color:#2563eb;font-size:9px;font-weight:700}.editorCanvas{position:relative;min-width:0;overflow:hidden;background:radial-gradient(circle at 50% 44%,#fff,#f6f8fb 88%)}.editorGridBackdrop{position:absolute;inset:0;opacity:.7;background-image:linear-gradient(#e5ebf2 1px,transparent 1px),linear-gradient(90deg,#e5ebf2 1px,transparent 1px);background-size:32px 32px}.editorObject{position:absolute;z-index:1;transform:translate(-50%,-50%);min-width:105px;padding:8px 10px;border:1px solid #dbe3eb;border-radius:8px;background:#fffffff0;box-shadow:0 8px 20px #0f172a1a;color:#273449;font-size:9px;cursor:pointer}.editorObject i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#22c55e}.editorObject.selected{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24,0 10px 22px #0f172a1f}.editorObject.readonly{cursor:default}.editorCanvasHint{position:absolute;left:14px;bottom:12px;z-index:2;color:#8590a0;font-size:9px}.editorInspector label{display:grid;gap:4px;margin-bottom:12px;color:#748094;font-size:9px}.editorInspector input,.editorInspector select{height:31px;border:1px solid #dbe2ea;border-radius:7px;padding:0 8px;background:#fff;color:#172033;font-size:10px}.inspectorGroup{display:grid;gap:5px;margin-bottom:13px;color:#748094;font-size:9px}.inspectorGroup>div{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.emptyInspector{color:#8490a1;font-size:10px;line-height:1.5}.revisionBadge{display:inline-block;padding:5px 7px;border-radius:10px;background:#eaf9f0;color:#16834a;font-size:8px}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.canvasWrap>.floorControls,.canvasWrap>.canvasHint,.canvasWrap>.canvasDock{z-index:5}.canvasHeaderActions{align-items:center}.stackedToggle{height:36px;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid #dfe5ec;border-radius:8px;color:#657184;font-size:10px;font-weight:700;cursor:pointer}.stackedToggle input{position:absolute;opacity:0;pointer-events:none}.stackedToggle i{position:relative;width:30px;height:17px;border-radius:10px;background:#cbd3dd;transition:background .2s ease}.stackedToggle i:after{content:"";position:absolute;width:13px;height:13px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a33;transition:transform .2s ease}.stackedToggle input:checked+i{background:#2563eb}.stackedToggle input:checked+i:after{transform:translate(13px)}.spatialLabels{position:absolute;inset:0;z-index:4;pointer-events:none}.facilityLabel,.assetLabel{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;border:1px solid #d9e1ea;background:#fffffff5;box-shadow:0 8px 22px #0f172a21;color:#172033;display:flex;align-items:center;text-align:left;cursor:pointer;left:50%;top:50%;will-change:left,top}.facilityLabel{min-width:132px;min-height:43px;border-radius:7px;padding:7px 10px;gap:8px;border-left:4px solid var(--zone-color)}.facilityLabel:hover,.assetLabel:hover{border-color:var(--zone-color, #2563eb);transform:translate(-50%,-50%) translateY(-2px)}.facilityLabel i{width:9px;height:9px;border-radius:50%;background:#22c55e;flex:0 0 9px}.facilityLabel.warning i{background:#f59e0b}.facilityLabel.critical i{background:#ef4444}.facilityLabel span,.assetLabel span:last-child{display:grid;min-width:0}.facilityLabel b,.assetLabel b{font-size:10px;white-space:nowrap}.facilityLabel small,.assetLabel small{font-size:8px;color:#738094;white-space:nowrap}.facilityLabel.stackedLabel{min-width:0;min-height:32px;max-width:126px;padding:5px 8px;gap:6px;box-shadow:0 5px 14px #0f172a1a}.facilityLabel.stackedLabel b{max-width:96px;overflow:hidden;text-overflow:ellipsis}.facilityLabel.stackedLabel small{display:none}.facilityLabel.stackedLabel.floor-lt3{opacity:.96}.facilityLabel.stackedLabel.floor-lt2{opacity:.68}.facilityLabel.stackedLabel.floor-lt1{opacity:.42}.facilityLabel.stackedLabel:hover{opacity:1;z-index:2}.assetLabel{min-width:145px;border-radius:7px;padding:7px 9px;gap:8px}.assetLabel.missing{border-left:4px solid #ef4444}.assetLabel.due{border-left:4px solid #f59e0b}.assetLabel.verified{border-left:4px solid #22a55b}.rfidSignal{color:#2563eb;font-size:10px;font-weight:800;transform:rotate(180deg)}.backToFloor{position:absolute;z-index:6;top:14px;left:18px;height:36px;padding:0 12px;border:1px solid #dbe3ec;border-radius:8px;background:#fffffff5;color:#2563eb;font-size:10px;font-weight:700;box-shadow:0 5px 16px #0f172a14}.modalBackdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0f172a5c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.facilityModal{width:min(520px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 70px #0f172a40;border-top:4px solid var(--zone-color);padding:20px}.facilityModal header{display:grid;grid-template-columns:44px 1fr 32px;align-items:center;gap:11px}.facilityModal header h2{margin:2px 0 0;font-size:18px}.facilityModal header small{color:#778294;font-size:9px}.modalIcon{width:44px;height:44px;display:grid;place-items:center;border-radius:7px;background:color-mix(in srgb,var(--zone-color) 14%,white);color:var(--zone-color);font-weight:800}.modalClose{border:0;background:transparent;color:#7d8795;font-size:24px}.modalStatusRow{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0f4;padding:8px 0 14px;color:#657184;font-size:10px}.modalMetrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.modalMetrics div{border:1px solid #e3e8ef;border-radius:7px;padding:11px;display:grid;gap:5px}.modalMetrics small{color:#7c8797;font-size:8px}.modalMetrics strong{font-size:13px}.assetPreviewList{display:grid;border-top:1px solid #edf0f4}.assetPreviewList>div{display:flex;align-items:center;gap:9px;padding:10px 2px;border-bottom:1px solid #edf0f4}.assetPreviewList i{width:8px;height:8px;border-radius:50%;background:#22a55b}.assetPreviewList i.due{background:#f59e0b}.assetPreviewList i.missing{background:#ef4444}.assetPreviewList i.found{background:#16a34a}.assetPreviewList i.notFound{background:#ef4444}.assetPreviewList span{display:grid}.assetPreviewList b{font-size:10px}.assetPreviewList small{color:#778294;font-size:8px}.assetPreviewList>div.scanning{animation:scanPulse 1s ease-in-out infinite}.assetPreviewList em{margin-left:auto;font-style:normal;font-size:9px;font-weight:700;padding:4px 7px;border-radius:10px}.assetPreviewList em.found{color:#15803d;background:#eaf9f0}.assetPreviewList em.notFound{color:#dc2626;background:#fff0f0}.facilityModal footer{display:flex;justify-content:flex-end;gap:8px;padding-top:16px}.facilityModal footer button{height:38px;border-radius:7px;padding:0 14px;font-size:10px;font-weight:700}.secondaryButton{border:1px solid #dce3eb;background:#fff;color:#5e6a7c}.primaryButton{border:1px solid #2563eb;background:#2563eb;color:#fff}.scanButton{border:1px solid #2563eb;background:#eef4ff;color:#2563eb}.scanButton:disabled{opacity:.65;cursor:wait}.primaryButton:disabled{opacity:.65;cursor:wait}.primaryButton span{margin-left:8px}.deviceControl,.climateControl{margin-top:14px;padding:13px;border:1px solid #dfe5ec;border-radius:8px;background:#f8fafc}.deviceControl.armed{border-color:#b9e7cc;background:#f2fbf6}.deviceControl.unarmed{border-color:#fecaca;background:#fff7f7}.controlHeading{display:flex;align-items:center;justify-content:space-between;gap:10px}.controlHeading>div{display:grid;gap:3px}.controlHeading small{font-size:8px;color:#7c8797;text-transform:uppercase}.controlHeading strong{font-size:12px}.deviceControl p{color:#687588;font-size:9px;line-height:1.45;margin:10px 0}.controlSwitch{position:relative;width:38px;height:21px;flex:0 0 38px}.controlSwitch input{position:absolute;opacity:0}.controlSwitch i{position:absolute;inset:0;border-radius:12px;background:#cbd3dd;cursor:pointer;transition:.2s}.controlSwitch i:after{content:"";position:absolute;width:17px;height:17px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a40;transition:transform .2s}.controlSwitch input:checked+i{background:#16a34a}.controlSwitch input:checked+i:after{transform:translate(17px)}.controlState{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(100,116,139,.16);padding-top:9px}.controlState span{font-size:9px;font-weight:800;color:#16a34a}.unarmed .controlState span{color:#dc2626}.controlState small{color:#778294;font-size:8px}.controlLive{color:#15803d;background:#dcfce7;border-radius:10px;padding:4px 7px;font-size:8px;font-weight:800}.temperatureControl{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:12px;margin:12px 0 8px}.temperatureControl button{width:34px;height:34px;border:1px solid #dbe2ea;border-radius:50%;background:#fff;color:#2563eb;font-size:17px}.temperatureGauge{justify-self:center;width:82px;height:82px;border-radius:50%;display:grid;place-content:center;text-align:center;position:relative;background:conic-gradient(#2563eb var(--temperature-progress),#e5eaf0 0)}.temperatureGauge:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff}.temperatureGauge strong,.temperatureGauge small{position:relative;z-index:1}.temperatureGauge strong{font-size:20px}.temperatureGauge small{color:#778294;font-size:7px}.temperatureRange{width:100%;accent-color:#2563eb}.rangeLabels{display:flex;justify-content:space-between;color:#8590a0;font-size:7px}@keyframes scanPulse{50%{opacity:.42}}.healthScore{flex:0 0 68px;width:68px;height:68px;aspect-ratio:1}.healthBlock>div:last-child{min-width:0}@media(max-height:760px){.main{grid-template-rows:minmax(420px,1fr) 88px}}@media(max-width:900px){.facilityLabel{min-width:105px;padding:6px}.facilityLabel small{display:none}.modalMetrics{grid-template-columns:1fr}}@media(max-width:760px){.app,.app.sidebarCollapsed,.app.drawerClosed,.app.sidebarCollapsed.drawerClosed{grid-template-columns:56px minmax(0,1fr) 0;grid-template-rows:58px minmax(0,1fr)}.topbar{height:58px;padding:0 10px;gap:8px}.brand{min-width:34px}.brand strong,.topnav,.liveBadge,.userBlock>div:last-child{display:none}.topActions{margin-left:auto}.searchBox{width:34px;padding:0 9px}.searchBox input{display:none}.main{padding:8px;grid-template-rows:minmax(360px,1fr) 150px;gap:8px}.commandPanel{border-radius:12px}.canvasHeader{padding:12px}.canvasHeader h1{font-size:16px}.canvasHeaderActions{gap:4px}.canvasHeader button{width:32px;height:32px}.stackedToggle{padding:0 6px}.floorControls{right:8px}.canvasDock{bottom:8px;max-width:calc(100% - 16px);overflow-x:auto}.canvasDock button{padding:0 7px}.canvasHint{left:10px;bottom:60px;max-width:50%;line-height:1.4}.statusStrip{grid-template-columns:repeat(2,minmax(150px,1fr));overflow:auto}.drawer{top:58px;width:min(350px,100vw)}.masterDataBackdrop{padding:10px}.masterDataPanel{max-height:calc(100vh - 20px);padding:14px;border-radius:12px}.masterDataGrid{grid-template-columns:1fr}.masterDataSummary{display:grid;grid-template-columns:1fr 1fr}.sectionPage{padding:16px;border-radius:12px}.sectionPageHero{margin:4vh auto 24px}.sectionPageHero h1{font-size:20px}.sectionPageGrid{grid-template-columns:1fr}.editorPage{border-radius:12px}.editorToolbar{align-items:flex-start;flex-direction:column;padding:12px}.editorToolbarActions{flex-wrap:wrap}.editorWorkspace{grid-template-columns:1fr;grid-template-rows:190px minmax(300px,1fr) auto}.editorHierarchy{border-right:0;border-bottom:1px solid #e7ebf0}.editorInspector{border-left:0;border-top:1px solid #e7ebf0}}.topActions{margin-left:auto}.editor3dWorkspace{grid-template-columns:282px minmax(0,1fr) 292px}.editor3dCanvas{background:#f7f9fc}.editor3dCanvas canvas{display:block;width:100%;height:100%}.editorAddPrimary{width:100%;min-height:35px;margin-bottom:10px;border:1px solid #bcd2ee;border-radius:8px;background:#edf4ff;color:#2563eb;font-size:9px;font-weight:750;cursor:pointer}.editorTreeBuilding{display:grid;gap:3px;margin-bottom:9px;padding:5px;border:1px solid #e2e8ef;border-radius:9px;background:#fff}.editorTreeBuilding>button:first-child,.editorTreeFloor>button:first-child{min-width:0;min-height:31px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:4px;padding:5px 7px;border:0;border-radius:6px;background:transparent;color:#526074;text-align:left;cursor:pointer}.editorTreeBuilding>button:first-child b,.editorTreeFloor>button:first-child b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.editorTreeBuilding>button:first-child small,.editorTreeFloor>button:first-child small{color:#8a96a6;font-size:7px}.editorTreeBuilding button.selected,.editorTreeFloor button.selected,.editorTreeObject.selected{background:#eaf2ff!important;color:#2563eb!important}.editorTreeFloor{display:grid;gap:2px;margin-left:11px;padding-left:5px;border-left:1px solid #dce4ed}.editorTreeObject{min-width:0;min-height:25px;display:flex;align-items:center;gap:6px;padding:4px 8px 4px 24px;border:0;border-radius:5px;background:transparent;color:#667387;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:8px;cursor:pointer}.editorTreeObject i{width:7px;height:7px;flex:0 0 7px;border-radius:2px}.editorTreeAdd{min-height:27px;margin-left:15px;border:0;background:transparent;color:#2563eb;text-align:left;font-size:8px;cursor:pointer}.editorLibraryHeader{position:sticky;top:-14px;z-index:3;margin:10px -14px 0;padding:12px 14px 7px;border-top:1px solid #e7ebf0;background:#fbfcfe}.editorLibraryHeader .editorSectionHeader{margin-bottom:8px}.editorLibraryHeader input{width:100%;height:31px;border:1px solid #dce3eb;border-radius:7px;padding:0 8px;color:#334155;font-size:9px}.editorCategoryTabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:8px}.editorCategoryTabs button{min-width:0;height:34px;display:grid;place-items:center;border:1px solid #e0e6ed;border-radius:7px;background:#fff;color:#728095;font-size:12px;cursor:pointer}.editorCategoryTabs button span{display:none}.editorCategoryTabs button.active{border-color:#9ec0f7;background:#eaf2ff;color:#2563eb}.editorLibraryList{display:grid;gap:4px;padding-bottom:12px}.editorLibraryList>button{min-height:38px;display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;border:1px solid #e1e7ee;border-radius:7px;background:#fff;color:#46556a;text-align:left;cursor:pointer}.editorLibraryList>button:disabled{opacity:.45;cursor:not-allowed}.editorLibraryList>button>i{width:10px;height:22px;border-radius:3px}.editorLibraryList>button>span{display:grid;min-width:0}.editorLibraryList b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.editorLibraryList small{color:#8b96a5;text-transform:capitalize;font-size:7px}.editorLibraryList em{color:#2563eb;font-style:normal;font-size:14px}.editor3dLabel{display:inline-block;padding:4px 7px;border:1px solid #dce4ec;border-radius:6px;background:#ffffffeb;box-shadow:0 4px 12px #0f172a14;color:#536176;white-space:nowrap;font-size:8px;font-weight:700}.editor3dLabel.selected{border-color:#86acf1;color:#2563eb}.editorTransformDock{position:absolute;z-index:5;left:50%;bottom:15px;display:flex;gap:4px;padding:5px;transform:translate(-50%);border:1px solid #dce3eb;border-radius:11px;background:#fffffff2;box-shadow:0 8px 25px #0f172a1a}.editorTransformDock button{height:31px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:#68768a;font-size:8px;font-weight:700;cursor:pointer}.editorTransformDock button.active{background:#eaf2ff;color:#2563eb}.editorTransformHint{min-height:34px;justify-content:center;padding:0 12px;color:#6b788b;font-size:8px;white-space:nowrap;pointer-events:none}.editorEmptyState{position:absolute;z-index:4;left:50%;top:50%;width:min(360px,75%);padding:22px;transform:translate(-50%,-50%);border:1px solid #dfe6ed;border-radius:14px;background:#fffffff0;box-shadow:0 16px 45px #0f172a1f;text-align:center}.editorEmptyState>span{display:grid;width:45px;height:45px;place-items:center;margin:0 auto 9px;border-radius:12px;background:#eaf2ff;color:#2563eb;font-size:20px}.editorEmptyState h2{margin:0 0 6px;font-size:15px}.editorEmptyState p{margin:0 0 13px;color:#748196;font-size:9px;line-height:1.55}.editorEmptyState button{height:33px;padding:0 12px;border:0;border-radius:7px;background:#2563eb;color:#fff;font-size:9px;font-weight:750;cursor:pointer}.editorInspectorActions{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:12px}.editorInspectorActions button{height:30px;border:1px solid #dfe5ec;border-radius:7px;background:#fff;color:#556378;font-size:8px;font-weight:700;cursor:pointer}.editorInspectorActions button.danger{border-color:#f0caca;color:#d13c3c}.editorAttributeHeader{display:flex;align-items:center;justify-content:space-between;margin:14px 0 8px;padding-top:10px;border-top:1px solid #e6ebf0;color:#344258;font-size:9px}.editorAttributeHeader small{color:#8c97a6;font-size:8px}.editorAttributes{display:grid;gap:7px}.editorAttributes label{margin:0}.editorAttributes label>span{display:flex;justify-content:space-between;align-items:center}.editorAttributes label>span button{border:0;background:transparent;color:#bd5360;font-size:12px;cursor:pointer}.editorAttributes input[type=checkbox]{width:16px;height:16px}.editorAddAttribute{display:grid;grid-template-columns:1fr 1fr auto;gap:4px;margin-top:9px}.editorAddAttribute input{min-width:0}.editorAddAttribute button{border:0;border-radius:6px;background:#2563eb;color:#fff;font-size:8px;font-weight:700}.editorRevisionHistory{margin-top:14px}.editorRevisionHistory>div:not(.editorAttributeHeader){display:grid;grid-template-columns:1fr auto;gap:2px 6px;margin-bottom:5px;padding:7px;border:1px solid #e4e9ef;border-radius:7px;background:#fff}.editorRevisionHistory b{font-size:8px}.editorRevisionHistory span{font-size:7px;text-transform:uppercase}.editorRevisionHistory span.published{color:#16834a}.editorRevisionHistory span.draft{color:#b8790a}.editorRevisionHistory>div small{grid-column:1/-1;color:#8a95a4;font-size:7px}@media(max-width:1120px){.editor3dWorkspace{grid-template-columns:230px minmax(0,1fr) 260px;grid-template-rows:minmax(0,1fr)}}@media(max-width:760px){.editor3dWorkspace{grid-template-columns:1fr;grid-template-rows:220px minmax(360px,1fr) auto}}.app.moduleMode{grid-template-columns:224px minmax(0,1fr) 0}.app.moduleMode.sidebarCollapsed{grid-template-columns:72px minmax(0,1fr) 0}.moduleMode .drawer{display:none}.moduleMode .main{grid-template-rows:minmax(0,1fr)}.operationsPage,.workOrdersPage{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid #e5eaf0;border-radius:18px;background:#f7f9fc;box-shadow:0 8px 30px #0f172a0b}.workOrdersPage{grid-template-rows:auto auto minmax(0,1fr)}.moduleHeader{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #e5eaf0;background:#fff}.moduleHeader p{margin:0 0 4px;color:#8290a3;font-size:9px}.moduleHeader h1{margin:0 0 4px;font-size:19px}.moduleHeader small{color:#718095;font-size:9px}.moduleHeaderActions{display:flex;align-items:center;gap:8px}.moduleHeaderActions>span{display:flex;align-items:center;gap:5px;padding:6px 9px;border-radius:20px;background:#f0f3f6;color:#778497;font-size:8px}.moduleHeaderActions>span i{width:6px;height:6px;border-radius:50%;background:#9aa5b4}.moduleHeaderActions>span.connected{background:#eaf8ef;color:#198b50}.moduleHeaderActions>span.connected i{background:#22a55b}.moduleHeaderActions button{height:33px;padding:0 11px;border:1px solid #dce3eb;border-radius:8px;background:#fff;color:#526176;font-size:9px;font-weight:700;cursor:pointer}.operationsSummary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:10px 12px}.operationsSummary article{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding:11px 13px;border:1px solid #e1e7ed;border-radius:10px;background:#fff}.operationsSummary article small{color:#758297;font-size:8px;text-transform:uppercase}.operationsSummary article strong{grid-row:1/3;grid-column:2;align-self:center;font-size:23px}.operationsSummary article span{color:#8b96a6;font-size:8px}.operationsSummary article.critical{border-left:3px solid #ef4444}.operationsSummary article.critical strong{color:#dc2626}.operationsWorkspace{min-height:0;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr);gap:10px;padding:0 12px 12px}.alarmQueue,.incidentRail{min-width:0;min-height:0;overflow:auto;border:1px solid #e0e6ed;border-radius:11px;background:#fff}.panelHeading{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-bottom:1px solid #e8ecf1}.panelHeading>div{display:grid;gap:2px}.panelHeading strong{color:#29374b;font-size:10px}.panelHeading small{color:#8995a5;font-size:8px}.panelHeading button{height:29px;padding:0 9px;border:0;border-radius:7px;background:#2563eb;color:#fff;font-size:8px;font-weight:700;cursor:pointer}.panelHeading button:disabled{opacity:.45}.alarmTableHeader,.alarmRow{display:grid;grid-template-columns:24px minmax(220px,1.7fr) 95px 105px 65px 150px;align-items:center;gap:7px}.alarmTableHeader{position:sticky;top:0;z-index:2;min-height:30px;padding:0 10px;background:#f7f9fb;color:#8b96a5;text-transform:uppercase;font-size:7px}.alarmRow{position:relative;min-height:66px;padding:8px 10px;border-top:1px solid #edf0f4;color:#657286;font-size:8px}.alarmRow:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#94a3b8}.alarmRow.critical:before{background:#ef4444}.alarmRow.high:before{background:#f97316}.alarmRow.medium:before{background:#f59e0b}.alarmRow>div:nth-child(2){display:grid;gap:4px;min-width:0}.alarmRow b{overflow:hidden;color:#27364a;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.alarmRow small{overflow:hidden;color:#8591a2;text-overflow:ellipsis;white-space:nowrap;font-size:7px}.alarmRow>div:last-child{display:flex;gap:4px}.alarmRow button{min-height:27px;padding:0 7px;border:1px solid #dce3eb;border-radius:6px;background:#fff;color:#3765a5;font-size:7px;font-weight:700;cursor:pointer}.workflowStatus{display:inline-flex;width:fit-content;align-items:center;padding:4px 7px;border-radius:10px;background:#eef1f5;color:#667386;text-transform:capitalize;font-size:7px;font-weight:700}.workflowStatus.active{background:#fff0f0;color:#d93c3c}.workflowStatus.acknowledged,.workflowStatus.investigating,.workflowStatus.in_progress{background:#fff6df;color:#ad7200}.workflowStatus.closed,.workflowStatus.verified,.workflowStatus.completed{background:#eaf8ef;color:#18864d}.workflowStatus.open,.workflowStatus.assigned{background:#eaf2ff;color:#2563eb}.incidentRail{padding-bottom:8px}.incidentRail .panelHeading{position:sticky;top:0;z-index:2;background:#fff}.incidentRail article{margin:8px 8px 0;padding:11px;border:1px solid #e1e7ee;border-left:3px solid #f59e0b;border-radius:9px;background:#fff;cursor:pointer}.incidentRail article.critical{border-left-color:#ef4444}.incidentRail article.high{border-left-color:#f97316}.incidentRail article.selected{box-shadow:0 0 0 2px #2563eb26}.incidentRail article>div:first-child{display:flex;align-items:center;justify-content:space-between}.incidentRail h3{margin:9px 0 5px;color:#27364a;font-size:11px}.incidentRail p{margin:0;color:#6d7a8d;font-size:8px;line-height:1.5}.incidentRail dl,.workOrderDetail dl{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0}.incidentRail dl div,.workOrderDetail dl div{display:grid;gap:2px}.incidentRail dt,.workOrderDetail dt{color:#8a95a4;font-size:7px}.incidentRail dd,.workOrderDetail dd{margin:0;color:#445268;font-size:8px;font-weight:700}.incidentRail article>button{width:100%;height:29px;border:1px solid #bcd3ef;border-radius:7px;background:#edf4ff;color:#2563eb;font-size:8px;font-weight:700;cursor:pointer}.verifiedText{color:#16834a!important}.workOrderCreate{display:grid;grid-template-columns:1.1fr 1.5fr .65fr .8fr .85fr auto;gap:7px;padding:10px 12px;border-bottom:1px solid #e1e7ed;background:#f9fbfd}.workOrderCreate label{display:grid;gap:3px;color:#778497;font-size:7px}.workOrderCreate input,.workOrderCreate select{min-width:0;height:31px;border:1px solid #dce3eb;border-radius:7px;padding:0 7px;background:#fff;color:#35445a;font-size:8px}.workOrderCreate button{align-self:end;height:31px;padding:0 11px;border:0;border-radius:7px;background:#2563eb;color:#fff;font-size:8px;font-weight:700}.workOrderWorkspace{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:10px;padding:10px 12px 12px}.workOrderBoard{min-width:0;min-height:0;display:grid;grid-template-columns:repeat(5,minmax(175px,1fr));gap:7px;overflow:auto}.workOrderBoard>section{min-width:175px;padding:6px;border:1px solid #e0e6ed;border-radius:10px;background:#eef2f6}.workOrderBoard>section>header{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 8px;color:#5b687b;font-size:8px;font-weight:700;text-transform:uppercase}.workOrderBoard>section>header b{display:grid;width:20px;height:20px;place-items:center;border-radius:8px;background:#fff;color:#6b788a;font-size:8px}.workOrderBoard article{margin-bottom:6px;padding:9px;border:1px solid #dde4eb;border-top:3px solid #94a3b8;border-radius:8px;background:#fff;box-shadow:0 3px 10px #0f172a09;cursor:pointer}.workOrderBoard article.emergency{border-top-color:#ef4444}.workOrderBoard article.high{border-top-color:#f97316}.workOrderBoard article.medium{border-top-color:#eab308}.workOrderBoard article.selected{box-shadow:0 0 0 2px #2563eb2e}.workOrderBoard article>div{display:flex;justify-content:space-between;color:#8a95a4;text-transform:uppercase;font-size:7px}.workOrderBoard article>div span{color:#b45309;font-weight:800}.workOrderBoard h3{margin:8px 0 5px;color:#2d3b4f;font-size:9px;line-height:1.35}.workOrderBoard p{display:-webkit-box;margin:0;overflow:hidden;color:#748095;font-size:7px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.workOrderBoard footer{display:grid;gap:3px;margin-top:9px;padding-top:7px;border-top:1px solid #edf0f4;color:#58667b;font-size:7px}.workOrderBoard footer small{color:#8b96a5;font-size:7px}.workOrderDetail{min-width:0;overflow:auto;padding:12px;border:1px solid #e0e6ed;border-radius:10px;background:#fff}.workOrderDetail>p{color:#667489;font-size:8px;line-height:1.55}.workOrderSection{display:grid;gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid #e7ebf0}.workOrderSection>strong{color:#35445a;font-size:9px}.workOrderSection label{display:flex;align-items:flex-start;gap:7px;color:#5f6d81;font-size:8px}.workOrderSection>span{color:#58708e;font-size:8px}.readingGrid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}.readingGrid div{padding:8px;border-radius:7px;background:#f3f6f9}.readingGrid small{display:block;margin-bottom:3px;color:#8894a4;font-size:7px}.readingGrid strong{color:#344258;font-size:8px}.verificationNote{margin-top:12px;padding:9px;border-radius:8px;background:#eaf8ef}.verificationNote small{color:#18864d;font-size:7px;text-transform:uppercase}.verificationNote p{margin:4px 0 0;color:#3e6450;font-size:8px;line-height:1.45}.workOrderPrimaryAction{width:100%;height:35px;margin-top:13px;border:0;border-radius:8px;background:#2563eb;color:#fff;font-size:9px;font-weight:750;cursor:pointer}@media(max-width:1380px){.app.moduleMode{grid-template-columns:72px minmax(0,1fr) 0}.alarmTableHeader,.alarmRow{grid-template-columns:22px minmax(190px,1fr) 85px 80px 55px 128px}}@media(max-width:980px){.operationsSummary{grid-template-columns:repeat(2,1fr)}.operationsWorkspace,.workOrderWorkspace{grid-template-columns:1fr;overflow:auto}.alarmQueue{min-height:420px}.incidentRail,.workOrderDetail{min-height:300px}.workOrderCreate{grid-template-columns:1fr 1fr}}.editorSourceBackdrop{position:absolute;inset:0;z-index:12;display:grid;place-items:center;padding:24px;background:#f2f6fab8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.editorSourcePicker{width:min(650px,100%);max-height:min(620px,calc(100% - 20px));overflow:auto;padding:22px;border:1px solid #dce4ed;border-radius:17px;background:#fffffffa;box-shadow:0 24px 70px #0f172a2e}.editorSourcePicker>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.editorSourcePicker header small{color:#2563eb;text-transform:uppercase;letter-spacing:.5px;font-size:8px;font-weight:750}.editorSourcePicker header h2{margin:5px 0 6px;color:#1f2d42;font-size:19px}.editorSourcePicker header p{max-width:510px;margin:0;color:#748196;font-size:9px;line-height:1.55}.editorSourcePicker header>button{width:30px;height:30px;flex:0 0 30px;border:1px solid #dfe5ec;border-radius:8px;background:#fff;color:#6c788a;font-size:17px;cursor:pointer}.editorSourceChoices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.editorSourceChoices>button{min-height:148px;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:start;gap:12px;padding:18px;border:1px solid #dce4ed;border-radius:13px;background:#fbfcfe;color:#536176;text-align:left;cursor:pointer;transition:.18s ease}.editorSourceChoices>button:hover{transform:translateY(-2px);border-color:#91b6ed;background:#f3f7ff;box-shadow:0 10px 25px #2563eb17}.editorSourceChoices>button>span{display:grid;width:46px;height:46px;place-items:center;border-radius:12px;background:#eaf2ff;color:#2563eb;font-size:20px}.editorSourceChoices>button>div{display:grid;gap:4px}.editorSourceChoices b{color:#2563eb;text-transform:uppercase;font-size:7px;letter-spacing:.45px}.editorSourceChoices strong{color:#26364b;font-size:13px}.editorSourceChoices small{color:#78859a;font-size:8px;line-height:1.5}.editorSourceChoices em{color:#2563eb;font-style:normal;font-size:16px}.editorSourceBack{margin:-5px 0 10px;border:0;background:transparent;color:#2563eb;font-size:8px;font-weight:700;cursor:pointer}.editorExistingList{display:grid;gap:7px}.editorExistingList>button{min-height:57px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 11px;border:1px solid #dfe5ec;border-radius:10px;background:#fff;color:#536176;text-align:left;cursor:pointer}.editorExistingList>button:hover{border-color:#9dbbed;background:#f5f8ff}.editorExistingList>button:disabled{opacity:.55;cursor:wait}.editorExistingList>button>span{display:grid;width:36px;height:36px;place-items:center;border-radius:9px;background:#edf3ff;color:#2563eb;font-size:15px}.editorExistingList>button>div{display:grid;gap:3px;min-width:0}.editorExistingList b{overflow:hidden;color:#2c3b50;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.editorExistingList small{color:#8390a2;font-size:8px}.editorExistingList em{color:#5876a1;font-style:normal;font-size:8px;font-weight:700}.editorSourceNote{margin:10px 0 0;padding:9px;border-radius:8px;background:#fff7e8;color:#876222;font-size:8px;line-height:1.5}@media(max-width:720px){.editorSourceChoices{grid-template-columns:1fr}.editorSourcePicker{padding:16px}}.editorToolbarActions .editorGuidedButton{border-color:#9dbcf0;background:#edf4ff;color:#2563eb}.editor3dWorkspace{overflow:hidden}.editor3dWorkspace .editorHierarchy,.editor3dWorkspace .editorInspector{overflow-x:hidden}.editorInspector input,.editorInspector select{min-width:0;width:100%;box-sizing:border-box}.editorInspector .inspectorGroup>div{min-width:0}.editorWizardBackdrop{position:absolute;inset:0;z-index:14;display:grid;place-items:center;padding:18px;background:#edf3f9cc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.editorWizard{width:min(780px,100%);max-height:min(700px,calc(100% - 10px));overflow:auto;border:1px solid #d9e2eb;border-radius:17px;background:#fff;box-shadow:0 26px 80px #0f172a33}.editorWizard>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 15px}.editorWizard>header small{color:#2563eb;text-transform:uppercase;letter-spacing:.5px;font-size:8px;font-weight:800}.editorWizard>header h2{margin:5px 0;color:#1f2e43;font-size:19px}.editorWizard>header p{margin:0;color:#768397;font-size:9px;line-height:1.5}.editorWizard>header>button{width:30px;height:30px;border:1px solid #dde4eb;border-radius:8px;background:#fff;color:#6e7a8c;font-size:17px;cursor:pointer}.editorWizardProgress{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0 22px 16px;list-style:none}.editorWizardProgress li{position:relative;display:flex;align-items:center;gap:8px;color:#9aa5b4}.editorWizardProgress li:not(:last-child):after{content:"";position:absolute;z-index:0;left:34px;right:8px;top:14px;height:2px;background:#e1e7ed}.editorWizardProgress li.active:not(:last-child):after{background:#a9c5ef}.editorWizardProgress li>span{position:relative;z-index:1;display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border:2px solid #dce3eb;border-radius:50%;background:#fff;font-size:9px;font-weight:800}.editorWizardProgress li.active>span{border-color:#2563eb;background:#2563eb;color:#fff}.editorWizardProgress li>div{position:relative;z-index:1;display:grid;padding-right:7px;background:#fff}.editorWizardProgress b{color:#667386;font-size:9px}.editorWizardProgress li.active b{color:#254d87}.editorWizardProgress small{font-size:7px}.editorWizardForm,.editorWizardObjects{padding:18px 22px 20px;border-top:1px solid #e7ebf0;background:#fbfcfe}.editorWizardIntro{display:flex;align-items:center;gap:11px;margin-bottom:15px;padding:11px;border:1px solid #dce6f2;border-radius:10px;background:#f1f6ff}.editorWizardIntro>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:9px;background:#dceaff;color:#2563eb;font-size:17px}.editorWizardIntro>div{display:grid;gap:3px}.editorWizardIntro strong{color:#2e4564;font-size:10px}.editorWizardIntro p{margin:0;color:#708098;font-size:8px}.editorWizardFields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.editorWizardFields label,.editorWizardObjectToolbar label{display:grid;gap:4px;color:#68768a;font-size:8px;font-weight:650}.editorWizardFields input,.editorWizardFields select,.editorWizardObjectToolbar input,.editorWizardObjectToolbar select{min-width:0;width:100%;height:34px;border:1px solid #d9e1e9;border-radius:7px;padding:0 9px;background:#fff;color:#2f3e53;font-size:9px}.editorWizardArea{display:grid;align-content:center;justify-items:center;min-height:57px;border:1px dashed #b9cae0;border-radius:8px;background:#f5f8fc}.editorWizardArea small{color:#7c899b;font-size:7px}.editorWizardArea strong{margin-top:3px;color:#2563eb;font-size:14px}.editorWizardForm footer,.editorWizardObjects footer{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:18px;padding-top:14px;border-top:1px solid #e4e9ef}.editorWizardForm footer button,.editorWizardObjects footer button{min-height:34px;padding:0 12px;border:1px solid #dce3eb;border-radius:8px;background:#fff;color:#617086;font-size:8px;font-weight:750;cursor:pointer}.editorWizardForm footer button.primary,.editorWizardObjects footer button.primary{border-color:#2563eb;background:#2563eb;color:#fff}.editorWizardPreview{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:13px;padding:11px 12px;border:1px solid #dce4ec;border-radius:9px;background:#fff}.editorWizardPreview b{display:grid;min-width:64px;height:34px;place-items:center;border-radius:8px;background:#eaf2ff;color:#2563eb;font-size:10px}.editorWizardPreview span{color:#45546a;font-size:9px;font-weight:700}.editorWizardPreview small{color:#8490a0;font-size:8px}.editorWizardObjectToolbar{display:grid;grid-template-columns:1fr 1.4fr auto;align-items:end;gap:8px;margin-bottom:10px}.editorWizardObjectToolbar>div{display:grid;min-width:88px;height:34px;grid-template-columns:auto 1fr;grid-template-rows:1fr 1fr;align-items:center;column-gap:5px;padding:4px 9px;border-radius:8px;background:#edf4ff}.editorWizardObjectToolbar>div b{grid-row:1/3;color:#2563eb;font-size:17px}.editorWizardObjectToolbar>div small{color:#667d9e;font-size:7px}.editorWizardCategories{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:10px}.editorWizardCategories button{min-height:36px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #dfe5ec;border-radius:7px;background:#fff;color:#6a778a;font-size:8px;cursor:pointer}.editorWizardCategories button span{color:#607895;font-size:11px}.editorWizardCategories button.active{border-color:#9bbbed;background:#eaf2ff;color:#2563eb;font-weight:750}.editorWizardLibrary{max-height:270px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;overflow:auto;padding:1px}.editorWizardLibrary>button{min-width:0;min-height:49px;display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;border:1px solid #dfe5ec;border-radius:8px;background:#fff;color:#536176;text-align:left;cursor:pointer}.editorWizardLibrary>button:hover{border-color:#9cbced;background:#f5f8ff}.editorWizardLibrary>button i{width:9px;height:29px;border-radius:3px}.editorWizardLibrary>button>span{display:grid;min-width:0}.editorWizardLibrary b{overflow:hidden;color:#35445a;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.editorWizardLibrary small{color:#8a95a5;text-transform:capitalize;font-size:7px}.editorWizardLibrary em{color:#2563eb;white-space:nowrap;font-style:normal;font-size:7px;font-weight:750}@media(max-width:720px){.editorWizardFields,.editorWizardLibrary,.editorWizardCategories{grid-template-columns:1fr 1fr}.editorWizardObjectToolbar{grid-template-columns:1fr}.editorWizardProgress li>div{display:none}}
