:root{color:#1f2937;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{overscroll-behavior:none;width:100%;height:100%;position:fixed;inset:0;overflow:hidden}.homeOverlay{z-index:1000;color:#e2e8f0;background:linear-gradient(160deg,#0f172a 0%,#1e293b 60%,#334155 100%);padding:32px 24px 48px;position:absolute;inset:0;overflow-y:auto}.homeOverlayInner{max-width:1180px;margin:0 auto}.homeHeader{margin-bottom:28px}.homeBrand{letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin-bottom:8px;font-size:13px}.homeHeader h1{color:#f8fafc;margin:0 0 8px;font-size:28px}.homeSubtitle{color:#cbd5e1;max-width:720px;margin:0;font-size:14px}.homeSection{margin-bottom:32px}.homeSection h2{text-transform:uppercase;letter-spacing:.06em;color:#93c5fd;margin:0 0 14px;font-size:16px}.homeRegionGrid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.homeRegionCard{background:#0f172ab3;border:1px solid #334155;border-radius:12px;flex-direction:column;gap:8px;padding:16px;display:flex}.homeRegionTitle{color:#f8fafc;font-size:18px;font-weight:600}.homeRegionName{color:#cbd5e1;font-size:13px}.homeRegionDesc{color:#94a3b8;font-size:12px}.homeRegionMeta{flex-wrap:wrap;gap:16px;margin:6px 0;display:flex}.homeRegionMeta div{flex-direction:column;display:flex}.homeRegionMeta dt{text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-size:10px}.homeRegionMeta dd{color:#e2e8f0;margin:0;font-size:13px}.homeRegionActions{flex-direction:column;gap:8px;margin-top:6px;display:flex}.homeRegionInput,.homeRegionActions .primaryButton{width:100%}.homeRegionInput{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:8px;padding:8px 10px;font-size:13px}.homeRegionProjects{border-top:1px solid #334155;margin-top:8px;padding-top:8px}.homeRegionProjectsTitle{color:#94a3b8;margin-bottom:6px;font-size:11px}.homeProjectChip{color:#e2e8f0;cursor:pointer;background:#1e293b;border:1px solid #475569;border-radius:999px;margin:0 6px 6px 0;padding:4px 10px;font-size:12px;display:inline-block}.homeProjectChip:hover{background:#2563eb;border-color:#2563eb}.homeProjectList{flex-direction:column;gap:6px;display:flex}.homeProjectRow{color:#e2e8f0;cursor:pointer;text-align:left;background:#0f172a99;border:1px solid #334155;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.homeProjectRow:hover{background:#2563eb26;border-color:#2563eb}.homeProjectRowName{font-weight:500}.homeProjectRowRegion{color:#94a3b8;font-size:12px}.homeFooter{margin-top:8px}*{box-sizing:border-box}body{margin:0}.shell{width:100dvw;height:100dvh;display:block;overflow:hidden}.panel{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #cbd5e1b8;border-radius:10px;flex-direction:column;width:min(340px,100vw - 32px);max-height:min(620px,100vh - 116px);padding:0;display:flex;position:absolute;top:92px;left:16px;overflow:hidden}.panelScroll{flex:auto;min-height:0;padding:0 12px 10px;overflow:auto}.workspacePanel{z-index:4;box-shadow:0 10px 26px #0f172a1a}.scenarioRunsPanel{width:min(360px,100vw - 32px);left:380px}.scenarioResultPanel{width:min(620px,100vw - 32px);max-height:min(760px,100vh - 116px);left:auto;right:24px}.panelResizeHandle{z-index:5;cursor:nwse-resize;width:18px;height:18px;position:absolute;bottom:0;right:0}.panelResizeSide{z-index:3;position:absolute}.panelResizeSideRight{cursor:ew-resize;width:10px;top:0;bottom:0;right:0}.panelResizeSideBottom{cursor:ns-resize;height:10px;bottom:0;left:0;right:0}.panelResizeSideRight:after,.panelResizeSideBottom:after{content:"";background:#94a3b873;position:absolute}.panelResizeSideRight:after{border-radius:999px;width:2px;top:12px;bottom:12px;right:2px}.panelResizeSideBottom:after{border-radius:999px;height:2px;bottom:2px;left:12px;right:12px}.panelResizeSideRight:hover:after,.panelResizeSideBottom:hover:after{background:#64748bbf}.panelResizeHandle:before{content:"";border-bottom:2px solid #94a3b8d9;border-right:2px solid #94a3b8d9;width:9px;height:9px;position:absolute;bottom:3px;right:3px}.panelResizeHandle:hover:before{border-color:#475569f2}.projectBadge{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff8c;border:1px solid #cbd5e18c;border-radius:999px;align-items:center;gap:7px;max-width:min(460px,100vw - 24px);padding:5px 12px;display:flex;position:absolute;bottom:8px;right:8px;box-shadow:0 4px 14px #0f172a1a}.projectBadgeLabel{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.projectBadgeName{color:#0f172a;white-space:nowrap;font-size:13px;font-weight:800}.mapLegendLauncher{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #cbd5e1d1;border-radius:999px;align-items:center;gap:3px;padding:3px;display:flex;position:absolute;top:10px;right:56px}.mapLegendLauncher span{color:#475569;padding:0 4px;font-size:11px;font-weight:800}.mapControls.rulerPanel{border-color:#fca5a5;width:220px;padding:6px 10px 8px;inset:52px 56px auto auto}.rulerPanel .panelHeader{justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;display:flex}.rulerPanel .controlTitle{margin:0}.rulerValue{color:#b91c1c;letter-spacing:.2px;margin:0 0 2px;font-size:20px;font-weight:800}.rulerAzimuth{color:#b91c1c;margin:0 0 4px;font-size:13px;font-weight:700}.rulerPanel .smallNote{margin:0 0 6px}.rulerPanel .secondaryButton{width:100%;padding:4px 8px}.addPanel{width:min(380px,100vw - 32px);left:16px}.selectionPanel{width:min(350px,100vw - 32px);left:auto;right:332px}.selectionActionBar{z-index:2;background:#f8fafcfa;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;gap:6px;padding:7px;display:flex;position:sticky;top:0}.selectionModeNote{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;margin-top:7px;padding:6px 8px}.scenarioSavedItem{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:flex-start;gap:8px;padding:6px 0;display:flex}.scenarioSavedItem>div{flex:1;min-width:0}.scenarioSavedItem .smallNote{margin:0}.scenarioSavedItem>.scenarioSavedActions,.scenarioRunItem>.scenarioRunItemActions{flex-direction:column;flex:none;gap:6px;display:flex}.scenarioRunOpenActions{justify-content:flex-end;margin:6px 0 2px;display:flex}.scenarioInputsDangerZone{border-top:1px solid #e2e8f0e6;justify-content:flex-end;margin-top:14px;padding-top:12px;display:flex}.scenarioNavTabs{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;margin:8px 0;padding:3px;display:grid}.scenarioNavTabs .modeTab{text-align:center;border-radius:7px;padding:7px 6px;font-size:12px}.scenarioNavTabs .modeTabActive{background:#fff;border-color:#bfdbfe #bfdbfe #2563eb;border-bottom-style:solid;border-bottom-width:2px;font-weight:600;box-shadow:0 1px 2px #0f172a14}.scenarioNavTabsRun{margin-bottom:14px}.scenarioReportPanel{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px}.scenarioNavTabsSub{background:#eef2f7;border-color:#cbd5e1;border-bottom-style:solid;border-bottom-width:2px;margin:0 0 14px}.scenarioNavTabsSub .modeTabActive{background:#fff;border-color:#93c5fd #93c5fd #2563eb;border-bottom-style:solid;border-bottom-width:2px}.loadingNote{align-items:center;gap:8px;margin-top:14px;padding-top:4px;display:flex}.loadingNote .runProgressSpinner{border-width:2px;width:16px;height:16px}.scenarioSavedList{gap:6px;display:grid}.scenarioSavedList .scenarioSavedItem{border:1px solid #e2e8f0;border-radius:10px;align-items:center;padding:8px 10px}.scenarioSavedInfo{flex:1;min-width:0}.scenarioSavedTitle{color:#0f172a;margin:0 0 2px;font-size:13px;font-weight:700}.scenarioRunList{gap:7px;display:grid}.scenarioRunItem{background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.scenarioRunInfo{flex:1;min-width:0}.scenarioRunInfo .smallNote{margin:2px 0 0}.scenarioRunTitle{color:#0f172a;margin:0;font-size:13px;font-weight:700}.scenarioRunItemLegacy{background:#f8fafc}.scenarioWaveList{gap:8px;margin:8px 0;display:grid}.scenarioWaveCard{border-top:2px solid #e2e8f0;padding:14px 0 4px}.scenarioWaveCard:first-child{border-top:none;padding-top:2px}.scenarioWaveHeader{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.scenarioWaveHeader h4{color:#0f172a;text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:14px;font-weight:800}.requiredMark{color:#dc2626;font-weight:800}.fieldLabelText{align-items:center;gap:4px;display:inline-flex}.scenarioFormBlock{border-top:2px solid #e2e8f0;margin:14px 0;padding-top:12px}.scenarioFormBlockTitle{color:#0f172a;text-transform:uppercase;letter-spacing:.02em;margin:0 0 6px;font-size:14px;font-weight:800}.scenarioPasteRow{align-items:center;gap:6px;margin:8px 0;display:flex}.scenarioPasteRow select{flex:1;min-width:0}.scenarioFireRules{gap:6px;margin:4px 0 0;display:grid}.checkboxRow,.objectSection label.checkboxRow{color:#334155;cursor:pointer;align-items:flex-start;gap:8px;font-size:12px;font-weight:400;display:flex}.checkboxRow input,.objectSection label.checkboxRow input{flex-shrink:0;width:auto;margin-top:2px}.checkboxRow>span{flex:1;min-width:0}.checkboxRowDisabled{opacity:.55;cursor:not-allowed}.scenarioActionHeading{color:#0f172a;margin:10px 0 4px;font-size:13px}.scenarioRunCard{color:#334155;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:10px;gap:5px;padding:8px;display:grid}.scenarioRunCard:hover,.scenarioRunCardActive{background:#eff6ff;border-color:#93c5fd}.scenarioRunCard b{color:#0f172a;font-size:12px;display:block}.scenarioRunCard small{color:#64748b;margin-top:2px;font-size:10px;display:block}.duplicateTargetWarning{color:#b91c1c;font-weight:800}.scenarioAnimationControls{flex-wrap:wrap;align-items:end;gap:8px;margin:8px 0;display:flex}.scenarioAnimationControls label{min-width:88px}.scenarioAnimationMarker{background:#dc2626;border:2px solid #fff;border-radius:5px 5px 5px 0;width:22px;height:22px;transform:rotate(45deg)}.scenarioRaidMarker{color:#dc2626;width:26px;height:26px;position:absolute}.scenarioRaidPlane{filter:drop-shadow(0 1px 2px #fffffff2)drop-shadow(0 2px 4px #0f172a47);clip-path:polygon(50% 0%,61% 41%,96% 56%,96% 70%,59% 62%,56% 100%,44% 100%,41% 62%,4% 70%,4% 56%,39% 41%);transform-origin:50%;background:currentColor;width:100%;height:100%;display:block}.scenarioRaidMarkerSmall{opacity:.82;width:22px;height:22px}.scenarioRaidMarkerMedium{opacity:.92;width:26px;height:26px}.scenarioRaidMarkerHeavy{opacity:1;width:32px;height:32px}.scenarioRaidMarkerStrike{color:#dc2626}.scenarioRaidMarkerUndetected{color:#64748b;opacity:.72}.scenarioRaidMarkerReactive{color:#f97316}.scenarioRaidMarkerLabel{color:#0f172a;pointer-events:none;white-space:normal;text-align:center;overflow-wrap:break-word;word-break:normal;background:#fffffff0;border:1px solid #0f172a2e;border-radius:7px;width:170px;padding:3px 5px;font-size:10px;font-weight:800;line-height:1.15;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.scenarioRaidMarkerHit{background:#16a34a;box-shadow:0 0 0 2px #16a34a47}.scenarioRaidMarkerMiss{background:#f97316;box-shadow:0 0 0 2px #f9731647}.scenarioRaidMarkerNoEffect{background:#eab308;box-shadow:0 0 0 2px #eab30847}.raidFastForwardNotice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:6px 8px}.raidStatusGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;display:grid}.reportBlock{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:10px}.reportBlock .smallNote+.smallNote{margin-top:3px}.reportBlockHint{color:#94a3b8;font-style:italic}.reportGroupSeparator{margin-top:12px}.reportBlock{min-width:0}.reportItem{border-left:2px solid #e2e8f0;margin-top:8px;padding-left:8px}.reportItemTitle{color:#0f172a;margin:0 0 2px;font-size:12px;font-weight:600}.reportItemLine{color:#475569;margin:0;font-size:12px}.reportItemNote{margin:0 0 3px;font-size:11px}.reportItemSubTitle{color:#64748b;margin-top:3px}.reportItemSubLine{color:#64748b;padding-left:10px;font-style:italic}.reportItemReference{border-left-color:#cbd5e1}.reportItemReference .reportItemTitle,.reportItemReference .reportItemLine{color:#94a3b8;font-style:italic}.reportDeviationBad{color:#dc2626;font-weight:600}.reportDeviationWarn{color:#d97706}.reportDeviationOk{color:#16a34a}.scenarioReportTabs{flex-wrap:wrap;margin:8px 0;display:flex}.scenarioReportTabs .modeTab{text-align:center;flex:auto;min-width:92px;padding:7px 9px}.raidLegend{background:#f8fafceb;border:1px solid #dbe3ef;border-radius:9px;gap:5px;padding:7px;display:grid}.raidLegend span{color:#475569;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.scenarioRaidMarkerLegend{background:#2563eb;border:2px solid #fff;border-radius:999px;flex:none;width:12px;height:12px;display:inline-block;box-shadow:0 0 0 1px #0f172a2e}.scenarioRaidMarkerLegend.scenarioRaidMarkerHit{background:#16a34a}.scenarioRaidMarkerLegend.scenarioRaidMarkerMiss{background:#f97316}.scenarioRaidMarkerLegend.scenarioRaidMarkerNoEffect{background:#eab308}.scenarioRaidMarkerLegend.scenarioRaidMarkerEw{background:#7e22ce}.scenarioRaidMarkerLegend.scenarioRaidMarkerEwMiss{background:#0ea5e9}.raidPlaneLegend{clip-path:polygon(50% 0%,61% 41%,96% 56%,96% 70%,59% 62%,56% 100%,44% 100%,41% 62%,4% 70%,4% 56%,39% 41%);background:#dc2626;flex:none;width:16px;height:16px;font-style:normal;line-height:1;display:inline-block}.raidPlaneLegendUndetected{background:#64748b}.raidPlaneLegendReactive{background:#f97316}.raidEventHitSquare{background:#16a34a}.raidEventMissSquare{background:#f97316}.raidEventEwSquare{background:#7e22ce}.raidEventEwMissSquare{background:#0ea5e9}.raidEventTargetSquare,.scenarioRaidMarkerLegend.scenarioRaidMarkerTarget{background:#b91c1c}.scenarioRaidMarkerLegend.scenarioRaidMarkerDescent{background:#14b8a6}.scenarioHumanInputs{gap:8px;margin-top:8px;display:grid}.scenarioHumanInputCard{background:#f8fafcc7;border:1px solid #e2e8f0;border-radius:9px;padding:8px}.scenarioHumanInputCard h4{color:#0f172a;margin:0 0 6px;font-size:13px}.projectActionTabs{margin-bottom:8px}.panelHeader{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.panel>.panelHeader{flex:none;padding:10px 12px 0}.draggablePanelHeader{cursor:move;-webkit-user-select:none;user-select:none}.panelHeaderActions{gap:6px;display:flex}.panelHeader button{cursor:pointer}.panelHeader h1,.panelHeader h2{margin:0;font-size:15px;line-height:1.2}.panelCloseButton{color:#64748b;cursor:pointer;min-width:24px;min-height:24px;font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-self:flex-start;align-items:flex-start;padding:0 2px;font-size:18px;font-weight:400;line-height:1;display:inline-flex}.panelCloseButton:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.iconCloseButton{font-size:19px;font-weight:300}.topBar{z-index:6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:none;background:#ffffffe0;border:1px solid #cbd5e1c2;border-radius:8px;justify-content:flex-start;align-items:center;gap:8px;width:max-content;max-width:calc(100dvw - 96px);padding:3px 5px;display:flex;position:absolute;top:8px;left:16px;right:auto;overflow:visible;box-shadow:0 6px 18px #0f172a14}.topBar::-webkit-scrollbar{display:none}.topBrand{color:#0f172a;white-space:nowrap;padding:0 2px;font-size:12px;font-weight:900}.topMenu,.panelChips{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.topMenuButton,.panelChip{color:#334155;cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:800}.topMenuButton:hover,.panelChip:hover{background:#f1f5f9}.topMenuButtonActive,.panelChipActive{color:#1d4ed8;box-shadow:none;background:#2563eb1a;border-color:#0000}.queueBadgeWrap{margin-left:4px;position:relative}.queueBadge{color:#475569;cursor:pointer;font:inherit;white-space:nowrap;background:#f8fafc;border:1px solid #cbd5e1e6;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:800}.queueBadge:hover{background:#f1f5f9}.queueBadgeMine{color:#1d4ed8;background:#2563eb1a;border-color:#2563eb73}.queueBadgeFree{color:#047857;background:#ecfdf5;border-color:#10b981}.queueBadgePaused{color:#b45309;background:#f59e0b1f;border-color:#d9770680}.queuePopover{z-index:8;background:#fffffff7;border:1px solid #cbd5e1e6;border-radius:10px;flex-direction:column;gap:8px;width:min(380px,100dvw - 48px);padding:10px 12px;display:flex;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 10px 30px #0f172a29}.queuePopoverTitle{color:#0f172a;font-size:13px;font-weight:900}.queueMineList{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.queueMineItem{border:1px solid #e2e8f0e6;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:6px 8px;display:grid}.queueMineItem .secondaryButton{grid-area:1/2/span 2}.queueMineLabel{color:#0f172a;font-size:12px;font-weight:800}.navigationBar{z-index:5;color:#334155;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc2;border:1px solid #cbd5e19e;border-radius:7px;align-items:center;gap:6px;max-width:calc(100dvw - 32px);padding:4px 8px;display:flex;position:absolute;top:45px;left:16px;overflow:hidden;box-shadow:0 5px 14px #0f172a0f}.navigationBar span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.navigationBar strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:900;overflow:hidden}.eyebrow{color:#475569;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:700}h1{color:#0f172a;margin:0 0 10px;font-size:19px;line-height:1.15}p{color:#475569;line-height:1.6}dl{gap:16px;margin-top:32px;display:grid}dt{color:#64748b;font-size:13px}dd{color:#0f172a;margin:4px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px}.mapSection{width:100dvw;height:100dvh;position:fixed;inset:0;overflow:hidden}.map{position:absolute;inset:0}.mapLoadingPanel{z-index:5;color:#334155;background:#f8fafcf0;border:1px solid #cbd5e1;border-radius:10px;gap:2px;width:min(300px,100vw - 32px);padding:8px 10px;font-size:12px;display:grid;position:absolute;top:76px;left:16px}.mapLoadingPanel strong{color:#0f172a}.mapLoadingPanel span{color:#64748b;font-size:11px}.azotMarker{cursor:pointer;background:#dc2626;border:3px solid #fff;border-radius:50%;outline:2px solid #7f1d1d;width:18px;height:18px}.maplibregl-ctrl-attrib{font-size:11px}.elevationPanel{z-index:3;color:#0f172a;background:#fffffff0;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;font:13px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;position:absolute;bottom:24px;left:16px}.movePanel{z-index:7;color:#7c2d12;background:#fff7edf5;border:1px solid #fed7aa;border-radius:10px;align-items:center;gap:8px;max-width:min(520px,100vw - 32px);padding:8px 10px;font-size:12px;display:flex;position:absolute;top:64px;left:16px}.movePanel strong{color:#9a3412}.panelToggle{z-index:3;color:#0f172a;cursor:pointer;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px 14px;font-weight:700;position:absolute;top:16px;left:16px}.panelToggle:hover{background:#f8fafc}.mapControls,.layerLegendPanel{z-index:3;color:#334155;background:#ffffffeb;border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font:12px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:absolute}.mapControls{width:210px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 96px);bottom:86px;left:16px;overflow-y:auto}.layerLegendPanel{flex-direction:column;width:min(320px,100vw - 32px);max-height:calc(100vh - 92px);padding:0;display:flex;top:64px;right:16px;overflow:hidden}.layerLegendPanel>.panelHeader{flex:none;padding:8px 10px 0}.layerLegendPanel .panelScroll{padding:0 10px 8px}.layerLegendPanel h2,.controlTitle{color:#0f172a;margin:0 0 8px;font-size:13px;font-weight:800}.contrastToggle{white-space:nowrap;margin-top:8px;display:block}.contrastToggle input{margin-right:6px}.pitchButtons{gap:6px;margin-top:8px;display:flex}.pitchButtons button{color:#0f172a;cursor:pointer;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:5px 7px}.objectSection{border-top:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr);gap:6px;margin-top:8px;padding-top:8px;display:grid}.objectSection h2{color:#0f172a;margin:0;font-size:13px}.sectionSubheading{color:#0f172a;margin:4px 0 0;font-size:12px;font-weight:900}.objectSection label{color:#334155;gap:5px;font-size:11px;font-weight:700;display:grid}.objectSection input,.objectSection select,.objectSection textarea{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:5px 7px;font-size:12px}.selectionReadOnly .objectSection input,.selectionReadOnly .objectSection select,.selectionReadOnly .objectSection textarea{pointer-events:none;color:#475569;background:#f8fafc}.selectionReadOnly .objectSection input[type=checkbox]{pointer-events:auto}.objectSection textarea{resize:vertical}.primaryButton,.secondaryButton,.dangerButton{color:#0f172a;cursor:pointer;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:9px;padding:6px 8px;font-size:12px;font-weight:700}.primaryButton:disabled,.secondaryButton:disabled,.dangerButton:disabled{cursor:not-allowed;opacity:.55}.primaryButton{color:#fff;background:#2563eb;border-color:#1d4ed8}.secondaryButton{color:#334155;background:#fff;border-color:#cbd5e1}.primaryButtonActive{background:#dc2626;border-color:#991b1b}.dangerButton{color:#be123c;background:#fff1f2;border-color:#fecaca}.smallNote{color:#64748b;margin:0;font-size:11px;line-height:1.35}.smallNote.reportGroupSeparator{margin-top:12px}.smallNote.fieldGridNote{grid-column:1/-1}.smallNote.fieldGridNote strong{color:#334155}.objectToolbar{align-items:center;gap:8px;display:flex}.modeTabs{background:0 0;border:0;border-radius:0;grid-template-columns:1fr;gap:3px;padding:0;display:grid}.modeTab{color:#334155;cursor:pointer;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;padding:8px 9px;font-size:13px;font-weight:800}.modeTabActive{color:#1d4ed8;box-shadow:none;background:#eff6ff;border-color:#dbeafe}.modeTab:disabled{color:#94a3b8;cursor:not-allowed;opacity:.72}.fieldGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.fieldGrid label:first-child{grid-column:1/-1}.advancedFields{border:1px solid #e2e8f0;border-radius:8px;padding:6px 7px}.advancedFields summary{color:#334155;cursor:pointer;font-size:12px;font-weight:700}.advancedFields .fieldGrid{margin-top:8px}.legend{flex-wrap:wrap;gap:8px 10px;display:flex}.legend span{color:#334155;align-items:center;gap:5px;font-size:12px;display:inline-flex}.legendDot{border:1px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 1px #94a3b8}.importance-red{background:#dc2626}.importance-orange{background:#f97316}.importance-yellow{background:#facc15}.importance-blue{background:#2563eb}.importance-green{background:#16a34a}.objectList{gap:8px;max-height:180px;display:grid;overflow:auto}.catalogList{gap:6px;max-height:170px;display:grid;overflow:auto}.catalogListTall{max-height:none;overflow:visible}.catalogItem{color:#0f172a;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 9px;display:block}.catalogItemRow{grid-template-columns:32px 1fr;align-items:start;gap:9px;display:grid}.catalogItemRow strong{color:#0f172a;font-size:13px;line-height:1.25;display:block}.catalogItemIcon{place-items:center;width:30px;height:30px;display:inline-grid}.catalogItemIcon svg{width:30px;height:30px;display:block}.catalogItem small{color:#64748b;display:block}.catalogBadges{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.catalogBadges i{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:4px 6px;font-size:10px;font-style:normal;font-weight:800;line-height:1}.catalogItemThreat{background:#fff7ed;border-style:dashed}.catalogConfidence-high{color:#166534!important;background:#f0fdf4!important;border-color:#bbf7d0!important}.catalogConfidence-medium{color:#92400e!important;background:#fffbeb!important;border-color:#fde68a!important}.catalogConfidence-low{color:#991b1b!important;background:#fef2f2!important;border-color:#fecaca!important}.catalogItemActive{border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed24}.catalogSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0;display:grid}.catalogSubtypeGrid{flex-wrap:wrap;gap:6px;margin:4px 0 8px;display:flex}.catalogSummaryGrid button,.catalogSubtypeGrid button{color:#475569;cursor:pointer;font:inherit;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:6px 8px;font-size:11px;font-weight:800}.catalogSummaryGrid button:hover,.catalogSubtypeGrid button:hover,.catalogSubtypeGrid .catalogSummaryActive,.catalogSummaryGrid .catalogSummaryActive{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.panelBreadcrumb{z-index:2;background:#f8fafcfa;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;align-items:center;gap:5px;margin:-2px -2px 10px;padding:7px 8px;display:flex;position:sticky;top:-10px}.panelBreadcrumb button{color:#2563eb;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:12px;font-weight:900}.panelBreadcrumb button:hover{text-decoration:underline}.panelBreadcrumb span{color:#94a3b8;font-size:12px;font-weight:900}.panelBreadcrumb strong{color:#0f172a;font-size:12px;font-weight:900}.catalogDetailBox{gap:8px;margin-top:4px;display:grid}.catalogDetailBox h3{color:#0f172a;margin:0;font-size:15px}.catalogDetailHeader{justify-content:space-between;align-items:center;gap:8px;display:flex}.catalogEditForm{gap:8px;display:grid}.catalogParamEditor,.weaponChannelsEditor{border-top:1px solid #e2e8f0;gap:8px;padding-top:8px;display:grid}.weaponChannelsEditor h4{color:#0f172a;margin:0;font-size:13px}.weaponChannelCard{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:6px;padding:8px;display:grid}.catalogParamEditor h4{color:#0f172a;margin:0;font-size:13px}.catalogParamBlock{background:#fff;border:1px solid #e2e8f0;border-radius:10px;gap:8px;padding:8px;display:grid}.catalogParamRoot{background:0 0;border:0;padding:0}.catalogParamNested{background:#f8fafc;border:1px solid #eef2f7;border-radius:8px;gap:6px;padding:7px;display:grid}.catalogParamHeader{justify-content:space-between;align-items:center;gap:8px;display:flex}.catalogParamHeader strong{color:#0f172a;overflow-wrap:anywhere;font-size:12px}.catalogParamHeader span{color:#64748b;font-size:11px;font-weight:800}.miniButton{color:#64748b;cursor:pointer;font:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:3px 6px;font-size:10px;font-weight:800}.miniButton:hover{color:#991b1b;background:#fef2f2;border-color:#fecaca}.catalogDetailGrid{grid-template-columns:minmax(92px,.42fr) minmax(0,1fr);gap:5px 8px;margin:0;display:grid}.catalogDetailGrid dt{color:#64748b;font-size:11px;font-weight:800}.catalogDetailGrid dd{color:#0f172a;overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:700}.objectListItem{color:#0f172a;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:9px;gap:3px;padding:9px 10px;display:grid}.objectListItem small{color:#64748b}.objectListItemActive{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb24}.cardActions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.profileFacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.profileFacts span{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:2px;padding:5px 7px;font-size:11px;line-height:1.25;display:grid}.profileFacts b{color:#0f172a;text-transform:uppercase;letter-spacing:.04em;font-size:10px}.toast{z-index:5;color:#1e3a8a;text-align:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;min-width:220px;max-width:min(420px,100vw - 32px);padding:10px 14px;font-size:14px;font-weight:700;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0f172a2e}.toast-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.toast-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.layerToggle,.categoryToggles label{color:#334155;align-items:center;gap:7px;font-size:12px;line-height:1.3;display:flex}.layerToggle{font-weight:800}.layerToggleSpaced{border-top:1px solid #e2e8f0;margin-top:10px;padding-top:10px}.legendSelectAll{border-bottom:1px solid #e2e8f0;align-items:center;gap:8px;margin:2px 0 8px;padding:0 0 8px;display:flex}.legendSelectAll .layerToggle{flex:none}.legendSelectAll span{color:#64748b;font-size:11px;line-height:1.25}.linkButton{color:#2563eb;cursor:pointer;font:inherit;background:0 0;border:0;padding:4px;font-size:11px;font-weight:800}.linkButton:hover{color:#1d4ed8;text-decoration:underline}.categoryToggles{border-top:1px solid #e2e8f0;gap:7px;margin-top:8px;padding-top:8px;display:grid}.visibilityList,.objectVisibilityList,.sourceVisibilityList{gap:6px;display:grid}.visibilityList{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:7px}.viewshedBlock{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;gap:7px;padding:9px;display:grid}.viewshedActions{flex-wrap:wrap;gap:8px;display:flex}.viewshedStatus{color:#166534;margin:0}.viewshedChannelSelect{color:#166534;gap:4px;font-size:13px;display:grid}.viewshedChannelLabel{font-weight:600}.customSelect{position:relative}.customSelectButton{color:#166534;width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #bbf7d0;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;display:flex}.customSelectButton:hover{border-color:#86efac}.customSelectButton:disabled{opacity:.6;cursor:default}.customSelectValue{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.customSelectChevron{color:#16a34a;flex:none;font-size:11px}.customSelectMenu{z-index:30;background:#fff;border:1px solid #bbf7d0;border-radius:8px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 8px 24px #0f172a2e}.customSelectMenu li{margin:0}.customSelectOption{color:#1f2937;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 9px;display:block}.customSelectOption:hover{background:#f0fdf4}.customSelectOptionActive{color:#166534;background:#dcfce7;font-weight:600}.viewshedLegend{border-top:1px solid #bbf7d0;gap:5px;margin-top:2px;padding-top:7px;display:grid}.viewshedLegendRow{color:#334155;align-items:center;gap:7px;font-size:12px;display:flex}.viewshedSwatch{border:1px solid #cbd5e1;border-radius:3px;flex:none;width:16px;height:16px}.viewshedSwatch--visible{background:linear-gradient(90deg,#15803d,#86efac)}.viewshedSwatch--blocked{background:#9ca3af}.viewshedSwatch--nodata{background:#fff}.projectVersionBox{border-top:1px solid #e2e8f0;gap:7px;margin-top:6px;padding-top:8px;display:grid}.objectVisibilityItem{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:5px;padding:7px;display:grid}.sourceVisibilityList{margin-left:18px}.visibilityToggle{color:#334155;align-items:center;gap:7px;font-size:12px;line-height:1.25;display:flex}.visibilityToggle strong{color:#0f172a}.categoryToggles input:disabled+.legendDot,.categoryToggles input:disabled+.legendSquare{opacity:.5}.categoryToggles label:has(input:disabled){opacity:.5}.objectsPanel{width:min(360px,100vw - 32px)}.catalogPanel{width:min(460px,100vw - 32px)}.objectManagerList{gap:2px;display:grid}.objectManagerGroup{padding-top:2px}.objectManagerGroup summary{color:#0f172a;cursor:pointer;border-radius:6px;align-items:center;gap:7px;padding:6px 4px;font-size:12px;font-weight:800;list-style:none;display:flex}.objectManagerGroup summary:hover{background:#f1f5f9}.objectManagerGroup summary::-webkit-details-marker{display:none}.objectManagerRows{gap:1px;margin-top:2px;display:grid}.objectManagerSubgroup{gap:1px;margin-top:4px;display:grid}.objectManagerRow{color:#334155;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;gap:8px;width:100%;padding:5px 8px;display:flex}.objectManagerRow:hover,.objectManagerRowActive{background:#eff6ff}.objectManagerRow span{gap:3px;display:grid}.objectManagerRow small{color:#64748b;font-size:11px}.objectManagerRow em{color:#b91c1c;white-space:nowrap;font-size:11px;font-style:normal;font-weight:800}.legendSquare{border:1px solid #fff;border-radius:2px;width:10px;height:10px;box-shadow:0 0 0 1px #94a3b8}.mogLegendSquare{background:#14b8a6}.barrierLegendSquare{background:#64748b}.retroLegendSquare{background:#7c3aed}.visibilitySquare.visibility-visible{background:#22c55e}.visibilitySquare.visibility-blocked{background:#9ca3af}.visibilitySquare.visibility-none{background:#e5e7eb;box-shadow:0 0 0 1px #cbd5e1}.tooltipsPanel .smallNote{margin-top:6px}.layer-detection{background:#0ea5e9}.layer-countermeasure{background:#7c3aed}.layer-mog{background:#0f766e}.layer-barrier{background:#64748b}.legendDetails,.legendGroup{border-top:1px solid #e2e8f0;margin-top:8px;padding-top:8px}.legendDetails summary,.legendGroup summary{color:#334155;cursor:pointer;font-size:12px;font-weight:800}.legendGroup summary{grid-template-columns:1fr 28px;align-items:center;min-height:30px;list-style:none;display:grid}.legendGroup summary::-webkit-details-marker{display:none}.legendGroup summary:after{content:"▸";color:#475569;border-radius:6px;place-items:center;width:28px;height:28px;font-size:20px;font-weight:700;line-height:1;display:inline-grid}.legendGroup summary:hover:after{background:#f1f5f9}.legendGroup[open] summary:after{content:"▾"}.coverage-detection{background:#0ea5e9}.coverage-ew{background:#9333ea}.coverage-weapon{background:#ef4444}.coverage-barrier{background:#64748b}.vulnerabilityLegendGroup{border-color:#ec4899}.allPvoLegendGroup{border-top-color:#94a3b8}.vulnerabilityScale{color:#475569;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;font-size:11px;font-weight:800;display:grid}.vulnerabilityScale i{background:linear-gradient(90deg,#fdf2f859,#f9a8d4b3,#ec4899d9,#be185deb,#4a044ef5);border:1px solid #83184359;border-radius:999px;height:14px}.candidateMenu{z-index:3;color:#0f172a;background:#fffffff7;border:1px solid #33415559;border-radius:10px;gap:7px;padding:10px 12px;font:12px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;position:absolute;box-shadow:0 14px 34px #0f172a40}.candidateMenu strong{padding-right:18px;font-size:13px}.candidateMenuNote{color:#475569;font-size:11px}.candidateMenuComment{color:#334155;word-break:break-word;font-size:11px;font-style:italic}.candidateMenuInput{font:inherit;border:1px solid #33415559;border-radius:7px;padding:5px 7px}.candidateMenuAction{font:inherit;cursor:pointer;background:#f1f5f9;border:1px solid #33415566;border-radius:7px;padding:5px 8px;font-weight:600}.candidateMenuAction:hover{background:#e2e8f0}.candidateMenuClose{color:#64748b;cursor:pointer;background:0 0;border:none;padding:2px;font-size:12px;line-height:1;position:absolute;top:6px;right:8px}.vulnerabilityTooltip{z-index:2;color:#3b0764;pointer-events:none;background:#fdf2f8f5;border:1px solid #83184373;border-radius:10px;gap:6px;width:260px;padding:9px 10px;font:12px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;position:absolute;box-shadow:0 14px 34px #0f172a38}.vulnerabilityTooltip strong{color:#831843;font-size:13px}.tooltipNote{color:#9d174d;font-size:11px}.vulnerabilityTooltipRow{grid-template-columns:88px 1fr 34px;align-items:center;gap:6px;display:grid}.vulnerabilityTooltipRow span{color:#44403c;font-size:11px;line-height:1.15}.vulnerabilityTooltipRow b{color:#1c1917;text-align:right;font-size:11px}.vulnerabilityTooltipBar{background:#78716c2e;border-radius:999px;height:8px;overflow:hidden}.vulnerabilityTooltipBar i{border-radius:inherit;background:linear-gradient(90deg,#f9a8d4,#ec4899,#be185d,#4a044e);height:100%;display:block}.mapHoverTooltip{z-index:2;color:#0f172a;pointer-events:none;background:#f8fafcf5;border:1px solid #33415547;border-radius:10px;gap:8px;width:300px;padding:9px 10px;font:12px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;position:absolute;box-shadow:0 14px 34px #0f172a38}.mapHoverTooltip section{gap:5px;display:grid}.mapHoverTooltip strong{color:#0f172a;font-size:12px}.mapHoverTooltipRow{grid-template-columns:14px 1fr auto;align-items:center;gap:7px;display:grid}.mapHoverTooltipRaidEvent{grid-template-columns:14px minmax(0,1fr) minmax(72px,auto)}.mapHoverTooltipRow span{color:#334155;line-height:1.2}.mapHoverTooltipRow b{color:#0f172a;text-align:right;font-size:11px;font-weight:800}.mapHoverTooltipRaidEvent em{color:#64748b;grid-column:2/-1;font-size:11px;font-style:normal;line-height:1.1}.mapHoverTooltipReason{color:#475569;white-space:normal;grid-column:1/-1;max-width:360px;font-size:11px;line-height:1.25}.raidUavCard{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:6px;padding:8px 10px}.raidUavCard p{margin:2px 0}.raidUavReason{color:#64748b;line-height:1.3}.raidChronologyList{flex-direction:column;gap:4px;display:flex}.raidChronologyRow{border-bottom:1px solid #eef2f7;grid-template-columns:minmax(120px,auto) minmax(130px,auto) 1fr;align-items:baseline;gap:6px;padding:4px 6px;font-size:12px;display:grid}.raidChronologyTime{color:#475569;font-variant-numeric:tabular-nums}.raidChronologyEvent{color:#0f172a;font-weight:700}.raidChronologyUav{color:#2563eb}.raidChronologyAsset{color:#7c3aed}.raidChronologyReason{color:#64748b;grid-column:1/-1;line-height:1.3}.restrictionLegendSquare{background:#f97316}.geometryActions{flex-wrap:wrap;gap:8px;display:flex}.functionList,.equipmentList,.mogEquipmentBlock,.mogPersonnelCard{gap:6px;display:grid}.mogPersonnelCard{background:#f0fdfa;border:1px solid #ccfbf1;border-radius:12px;padding:7px}.functionCard,.equipmentItem{background:#fff;border:1px solid #e2e8f0;border-radius:10px;gap:4px;padding:6px 7px;display:grid}.functionCard span,.equipmentItem small{color:#64748b;font-size:12px;line-height:1.35}.function-detection{border-left:4px solid #0ea5e9}.function-ew{border-left:4px solid #9333ea}.function-weapon{border-left:4px solid #ef4444}.function-barrier{border-left:4px solid #64748b}.function-personnel{border-left:4px solid #0f766e}.equipmentItem{grid-template-columns:1fr auto;align-items:center}.equipmentItemInfo{flex-direction:column;gap:2px;min-width:0;display:flex}.equipmentItemInfo strong,.equipmentItemInfo small{display:block}.equipmentItemActions{align-items:center;gap:6px;display:flex}.equipmentFormActions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inlineToggle{align-items:center;gap:8px;display:flex}.objectSection label.inlineToggle,.objectSection label.contrastToggle{align-items:center;gap:8px;font-size:12px;font-weight:400;display:flex}.objectSection label.inlineToggle input,.objectSection label.contrastToggle input{width:auto;margin-right:0}.fieldGroup{border:1px solid #64748b59;border-radius:8px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.fieldGroupTitle{color:#475569;font-size:12px;font-weight:600}.modalBackdrop{z-index:7;background:#0f172a47;place-items:center;display:grid;position:absolute;inset:0}.coordinateDialog{background:#fffffffa;border:1px solid #cbd5e1;border-radius:14px;width:min(420px,100vw - 32px);padding:16px;box-shadow:0 24px 60px #0f172a3d}.coordinateDialog label{color:#334155;gap:5px;font-size:11px;font-weight:700;display:grid}.coordinateDialog input{width:100%}.blockedPreflightDialog{background:#fffffffa;border:1px solid #fca5a5;border-radius:14px;flex-direction:column;width:min(620px,100vw - 32px);max-height:min(80vh,720px);padding:16px;display:flex;box-shadow:0 24px 60px #0f172a3d}.blockedPreflightBody{flex:auto;min-height:0;margin-top:8px;overflow-y:auto}.equipmentEditDialog{max-height:min(84vh,720px);overflow-y:auto}.equipmentEditDialog .objectSection{border-top:none;margin-top:4px;padding-top:0}@media (width<=640px){.topBar{flex-wrap:wrap;align-items:center;max-width:calc(100dvw - 32px);min-height:38px}.topMenu,.panelChips{flex-wrap:wrap;flex:auto}.topBrand{display:none}.topMenuButton,.panelChip{padding:5px 6px;font-size:10px}.panel,.selectionPanel,.fieldGrid{grid-template-columns:1fr}.panel,.selectionPanel{width:auto;top:64px;left:16px;right:16px}.layerLegendPanel{width:min(240px,100vw - 242px);top:64px;left:auto;right:16px}.mapControls{width:200px;bottom:86px;left:16px;right:auto}}.runProgressOverlay{z-index:1200;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f172a6b;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.runProgressCard{text-align:center;background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:12px;min-width:260px;max-width:min(380px,100vw - 32px);padding:22px 26px;display:flex;box-shadow:0 18px 48px #0f172a52}.runProgressSpinner{border:4px solid #dbe3ef;border-top-color:#2563eb;border-radius:999px;width:38px;height:38px;animation:.9s linear infinite runProgressSpin}@keyframes runProgressSpin{to{transform:rotate(360deg)}}.runProgressText{color:#0f172a;font-size:15px;font-weight:800}.runProgressSub{color:#64748b;font-size:12px;font-weight:600;line-height:1.3}.runProgressBar{background:#e2e8f0;border-radius:999px;width:100%;height:4px;position:relative;overflow:hidden}.runProgressBarFill{background:#2563eb;border-radius:999px;width:40%;height:100%;animation:1.4s ease-in-out infinite runProgressSlide;position:absolute;top:0;left:0}@keyframes runProgressSlide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.scenarioInputsHint{color:#64748b;margin-top:8px;font-style:italic}.preflightReport{background:#f8fafc;border:1px solid #e2e8f0;border-left-width:4px;border-radius:8px;max-height:320px;margin:10px 0;padding:10px 12px;overflow-y:auto}.preflightReportBlocked{background:#fef2f2;border-left-color:#dc2626}.preflightReportWarnings{background:#fffbeb;border-left-color:#f59e0b}.preflightReportOk{background:#f0fdf4;border-left-color:#16a34a}.preflightReportHead{color:#0f172a;margin:0 0 6px;font-size:12px;font-weight:800}.preflightReportSection{margin-top:6px}.preflightReportSectionTitle{text-transform:uppercase;letter-spacing:.02em;color:#334155;cursor:default;margin:0 0 4px;font-size:11px;font-weight:700}details.preflightReportSection>summary.preflightReportSectionTitle{cursor:pointer}.preflightReportList{gap:3px;margin:0;padding-left:16px;display:grid}.preflightReportItem{color:#334155;font-size:11px;line-height:1.35}.preflightReportItemBlocker{color:#b91c1c;font-weight:600}.preflightReportItemWarning{color:#92400e}.runSnapshotNote{color:#1e3a8a;border-left:3px solid #2563eb;padding-left:8px}.projectNavList{flex-direction:column;gap:6px;margin:10px 0;display:flex}.projectNavItem{color:#0f172a;cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.projectNavItem:after{content:"›";color:#94a3b8;font-size:18px;font-weight:800}.projectNavItem:hover:not(:disabled){background:#eef2f7;border-color:#cbd5e1}.projectNavItem:disabled{opacity:.5;cursor:not-allowed}.projectNavItemDanger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.projectNavItemDanger:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.drawPalette{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border:1px solid #cbd5e1d9;border-radius:14px;flex-direction:column;width:340px;min-width:264px;max-width:calc(100vw - 32px);max-height:calc(100vh - 96px);display:flex;position:absolute;top:56px;right:56px;overflow:hidden;box-shadow:0 10px 30px #0f172a2e}.drawPaletteHeader{cursor:grab;flex:none}.drawPaletteEntity{top:auto;bottom:56px}.drawPaletteHeader{text-transform:uppercase;letter-spacing:.03em;color:#334155;border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;padding:9px 12px;font-size:12px;font-weight:800;display:flex}.drawPaletteBody{flex-direction:column;flex:auto;gap:9px;min-height:0;padding:11px 12px 13px;display:flex;overflow-y:auto}.drawPaletteField{color:#475569;flex-direction:column;gap:4px;font-size:11px;font-weight:700;display:flex}.drawPaletteField select{border:1px solid #cbd5e1;border-radius:8px;padding:5px 7px;font-size:13px}.drawPaletteNewLayer{gap:6px;display:flex}.drawPaletteNewLayer input{border:1px solid #cbd5e1;border-radius:8px;flex:1;min-width:0;padding:5px 7px;font-size:12px}.drawPaletteLayerName{color:#0f172a;font-size:13px;font-weight:800}.drawPaletteTools{grid-template-columns:repeat(2,1fr);gap:5px;display:grid}.drawToolButton{cursor:pointer;color:#334155;text-align:left;background:#f8fafc;border:1px solid #d8e0ea;border-radius:8px;align-items:center;gap:6px;min-width:0;padding:6px 7px;font-size:11px;font-weight:600;display:flex}.drawToolButton:hover{background:#eef2f7}.drawToolButtonActive{color:#1d4ed8;background:#e0ecff;border-color:#2563eb}.drawToolIcon{font-size:15px;line-height:1}.drawToolLabel{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.drawPaletteColors{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.drawColorSwatch{cursor:pointer;border:2px solid #94a3b899;border-radius:50%;width:20px;height:20px;padding:0}.drawColorSwatchActive{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a26}.drawColorPicker{cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:6px;width:26px;height:24px;padding:0}.drawPaletteHint{margin:0}.userLayerGroup{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:4px;padding:4px 8px}.userLayerGroupActive{background:#eff6ff;border-color:#2563eb}.userLayerSelectRow{cursor:pointer;color:#0f172a;text-align:left;background:0 0;border:none;align-items:center;gap:7px;width:100%;padding:4px 0;font-size:12px;font-weight:800;display:flex}.userLayerSelectRow:hover{color:#2563eb}.userLayerName{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.userLayerCount{color:#64748b;font-size:11px;font-weight:600}.userLayerEditingBadge{color:#2563eb;background:#dbeafe;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:700}.userLayerGroup .userLayerControls{flex-wrap:wrap;align-items:center;gap:7px;padding:4px 0 8px;display:flex}.userLayerVisibilityToggle{color:#475569;align-items:center;gap:5px;font-size:12px;display:flex}.objectManagerRowActions{align-items:center;gap:8px;display:flex}.dangerLink{color:#b91c1c}.lethalityMatrixTableWrap{margin:10px 0;overflow-x:auto}.lethalityMatrixTable{border-collapse:collapse;width:100%;font-size:12px}.lethalityMatrixTable th,.lethalityMatrixTable td{vertical-align:top;text-align:left;border:1px solid #e2e8f0;padding:6px 8px}.lethalityMatrixTable thead th{color:#0f172a;background:#f8fafc}.lethalityMatrixTable tbody th{background:#fbfdff;max-width:260px;font-weight:600}.lethalityMatrixTable th b{display:block}.lethalityMatrixTable th small{color:#64748b;margin-top:2px;font-weight:400;line-height:1.35;display:block}.lethalityMatrixTable td input{width:100%;min-width:84px}.lethalityMatrixTable thead select{width:100%;margin-bottom:4px}.lethalityWarningNote{color:#78350f;background:#fffbeb;border-left:3px solid #f59e0b;border-radius:0 6px 6px 0;padding:6px 9px}.catalogRefresh{background:#f0f9ff;border-left:3px solid #0ea5e9;border-radius:0 6px 6px 0;margin-bottom:10px;padding:8px 10px}.catalogRefreshHead{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.catalogRefreshBody{max-height:260px;margin:6px 0;font-size:12px;overflow-y:auto}.catalogRefreshPlacement+.catalogRefreshPlacement{border-top:1px solid #bae6fd;margin-top:6px;padding-top:6px}.catalogRefreshPlacementName{margin-top:4px;font-weight:600}.catalogRefreshEquipment{padding-left:8px}.catalogRefreshChannelName{color:#0c4a6e;margin-top:4px}.catalogRefreshFields{margin:2px 0 0;padding:0 0 0 10px;list-style:none}.catalogRefreshFields li{flex-wrap:wrap;gap:6px;line-height:1.35;display:flex}.catalogRefreshFieldName{color:#475569}.catalogRefreshFieldValue{font-variant-numeric:tabular-nums}.catalogRefreshBadge{color:#92400e;background:#fef3c7;border-radius:4px;padding:0 5px;font-size:11px}.catalogRefreshOrphan{color:#9f1239;padding-left:10px}.authScreen{color:#182033;background:#f4f6fb;place-items:center;min-height:100dvh;display:grid}.authCard{background:#fff;border:1px solid #dfe5f1;border-radius:18px;width:min(380px,100vw - 32px);padding:28px;box-shadow:0 18px 50px #1723411f}.authCard h1{margin:0 0 8px;font-size:24px}.authCard p{color:#64708a;margin:0 0 22px;line-height:1.45}.authCard label{color:#34415a;margin:14px 0 6px;font-size:13px;font-weight:600;display:block}.authCard input{box-sizing:border-box;width:100%;font:inherit;border:1px solid #cbd5e7;border-radius:10px;padding:11px 12px}.authCard input:focus{border-color:#4d78d7;outline:2px solid #9db9ff}.authCard button{width:100%;font:inherit;color:#fff;cursor:pointer;background:#315fdc;border:0;border-radius:10px;margin-top:18px;padding:12px 14px;font-weight:700}.authCard button:disabled{opacity:.65;cursor:default}.authError{color:#b42318;min-height:20px;margin-top:12px;font-size:13px}.authUserChip{white-space:nowrap;background:#ffffffd9;border:1px solid #dbe3f0;border-radius:6px;align-items:center;gap:6px;margin-left:4px;padding:2px 4px 2px 8px;display:flex}.authUserName{color:#0f172a;font-size:12px;font-weight:700}.authLogoutButton{color:#64708a;font:inherit;cursor:pointer;background:0 0;border:0;padding:3px 4px;font-size:12px;font-weight:700}.authLogoutButton:hover{color:#b42318}.adminOverlay{z-index:1300;background:#0f172a73;place-items:center;display:grid;position:fixed;inset:0}.adminCard{background:#fff;border:1px solid #dfe5f1;border-radius:14px;flex-direction:column;width:min(1060px,100vw - 40px);max-height:calc(100dvh - 60px);padding:18px 20px;display:flex;box-shadow:0 18px 50px #17234140}.adminHeader{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.adminHeader h2{margin:0;font-size:18px}.adminColumns{grid-template-columns:260px 1fr;gap:16px;min-height:0;display:grid;overflow:hidden}.adminList{flex-direction:column;gap:6px;padding-right:4px;display:flex;overflow-y:auto}.adminListItem{font:inherit;text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;font-size:13px;display:flex}.adminListItemActive{background:#eff6ff;border-color:#2563eb}.adminDetail{padding-right:6px;overflow-y:auto}.adminSection{border-top:1px solid #eef2f7;padding:10px 0}.adminSection h3{margin:0 0 8px;font-size:14px}.adminField{color:#34415a;margin:8px 0;font-size:13px;font-weight:600;display:block}.adminField input,.adminField select{width:min(340px,100%);font:inherit;border:1px solid #cbd5e7;border-radius:8px;margin-top:4px;padding:7px 9px;font-weight:400;display:block}.adminProjectRule{font-weight:400}.adminCheck{align-items:center;gap:8px;margin:6px 0;font-size:13px;display:flex}.adminAuditList{margin:6px 0 0;padding-left:16px;font-size:12.5px;line-height:1.5}.adminActions{border-top:1px solid #eef2f7;align-items:center;gap:12px;padding:12px 0 4px;display:flex}.adminNotice{color:#047857;font-size:13px}.adminError{color:#b42318;font-size:13px}@media (width<=900px){.adminColumns{grid-template-columns:1fr}.adminList{max-height:30dvh}}.adminRegionRow{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.adminRegionActions{flex-shrink:0;gap:8px;display:flex}.homeAuthRow{justify-content:flex-end;align-items:center;gap:10px;margin-bottom:6px;display:flex}.homeAuthName{color:#cbd5e1;font-size:13px;font-weight:700}.homeAuthButton{color:#e2e8f0;cursor:pointer;font:inherit;background:#ffffff14;border:1px solid #cbd5e173;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:700}.homeAuthButton:hover{background:#ffffff29}
