@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap";.app{margin:0;padding:0;height:100%;overflow:hidden}.app .ant-menu-item-icon{font-size:18px!important}.brand-block .ant-image,.brand-block .logo{width:48px!important;height:48px!important;flex:0 0 48px}.brand-block .ant-image-img,.brand-block .logo img{width:48px!important;height:48px!important;display:block;object-fit:cover;border-radius:14px;box-shadow:0 10px 24px #18569624}.app-header{display:flex;align-items:center;gap:20px;height:64px;line-height:normal;padding:0 24px;border-bottom:1px solid rgba(15,56,96,.08);box-shadow:0 8px 30px #0f38600f;z-index:10}.brand-block{display:flex;align-items:center;gap:12px;min-width:244px;height:100%;overflow:hidden;line-height:normal}.brand-block>div:last-child{display:flex;min-width:0;flex-direction:column;justify-content:center;line-height:normal}.switch{margin-left:8px}.platform-name{font-size:18px;font-weight:700;line-height:1.2;margin:0;color:#102a43;white-space:nowrap}.platform-subtitle{margin-top:3px;font-size:11px;line-height:1.2;color:#6b829c;letter-spacing:0;white-space:nowrap}.top-nav{flex:1;min-width:0;font-size:15px;border-bottom:none!important;background:transparent}.top-nav .ant-menu-item{height:40px;line-height:40px;margin:0 4px!important;padding-inline:14px;border-radius:8px;color:#1f2937;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.top-nav .ant-menu-item:after,.top-nav .ant-menu-submenu:after{display:none!important;border-bottom:none!important}.top-nav .ant-menu-item:hover{color:#1685d9!important;background:rgba(24,144,255,.06)}.top-nav .ant-menu-item-selected{color:#1685d9!important;background:rgba(24,144,255,.1)!important;box-shadow:inset 0 0 0 1px #1890ff24}.top-nav .ant-menu-item-selected .ant-menu-title-content,.top-nav .ant-menu-item-selected .anticon{color:#1685d9!important}.theme-switcher{display:inline-flex;align-items:center;flex-shrink:0;color:#54708d;font-size:13px}.app-body{height:calc(100% - 64px);min-height:0}.app-content{min-height:0;overflow:hidden}.map-container{position:relative;width:100%;height:100%;min-height:0;overflow:hidden}.cesium-viewer{position:relative;width:100%;height:100%}.map-device-overlay-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1200;pointer-events:none;overflow:visible}.map-device-overlay{position:absolute;top:0;left:0;display:inline-grid;align-items:center;justify-items:center;width:38px;height:38px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;opacity:0;pointer-events:none;cursor:pointer;transition:opacity .18s ease}.map-device-overlay:after{position:absolute;top:40px;left:12px;width:14px;height:14px;border:1px solid color-mix(in srgb,var(--device-glow) 78%,transparent);border-radius:50%;box-shadow:0 0 0 1px color-mix(in srgb,var(--device-glow) 20%,transparent);content:"";opacity:.28;pointer-events:none;transform:scale(.55);animation:mapDevicePulse 1.25s ease-out infinite}.map-device-overlay.is-visible{opacity:1;pointer-events:auto}.map-device-overlay:not(.is-visible):after{animation-play-state:paused}.map-device-overlay.is-active{z-index:20}.map-device-overlay:hover,.map-device-overlay:focus-visible{z-index:30}.map-device-overlay:hover,.map-device-overlay:focus,.map-device-overlay:focus-visible{border-color:transparent;outline:none}.map-device-overlay.is-active .map-device-logo-wrap{transform:translateY(-1px) scale(1.05)}.map-device-logo-wrap{position:relative;display:grid;width:38px;height:38px;place-items:center;flex:0 0 38px;border-radius:50%;background:rgba(2,17,31,.12);transition:transform .14s ease}.map-device-logo{display:block;width:38px;height:38px;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.map-device-hover-label{position:absolute;bottom:calc(100% + 8px);left:50%;display:grid;gap:3px;min-width:max-content;max-width:220px;padding:7px 10px;color:#fff;text-align:left;background:color-mix(in srgb,var(--device-dark) 92%,#020817);border:1px solid color-mix(in srgb,var(--device-glow) 70%,rgba(255,255,255,.24));border-radius:6px;box-shadow:0 8px 20px #0008124d;opacity:0;pointer-events:none;transform:translate(-50%,5px) scale(.97);transform-origin:center bottom;transition:opacity .14s ease,transform .16s ease}.map-device-hover-label:after{position:absolute;top:100%;left:50%;width:7px;height:7px;background:color-mix(in srgb,var(--device-dark) 92%,#020817);border-right:1px solid color-mix(in srgb,var(--device-glow) 70%,rgba(255,255,255,.24));border-bottom:1px solid color-mix(in srgb,var(--device-glow) 70%,rgba(255,255,255,.24));content:"";transform:translate(-50%,-4px) rotate(45deg)}.map-device-hover-label strong,.map-device-hover-label small{display:block;overflow:hidden;letter-spacing:0;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.map-device-hover-label strong{max-width:200px;font-size:12px;font-weight:800}.map-device-hover-label small{color:color-mix(in srgb,var(--device-glow) 46%,#fff);font-size:10px;font-weight:700}.map-device-overlay:not(.is-active):hover .map-device-hover-label,.map-device-overlay:not(.is-active):focus-visible .map-device-hover-label{opacity:1;transform:translate(-50%) scale(1)}@keyframes mapDevicePulse{0%{opacity:.82;transform:scale(.5)}72%,to{opacity:0;transform:scale(1.65)}}.map-device-center-popup{position:absolute;top:auto;bottom:50%;left:50%;z-index:100;display:grid;gap:8px;width:min(340px,calc(100% - 32px));max-height:min(420px,calc(50% - 24px));padding:14px;overflow:auto;text-align:left;background:linear-gradient(135deg,color-mix(in srgb,var(--device-dark) 94%,#020817),rgba(3,16,32,.96));border:1px solid color-mix(in srgb,var(--device-glow) 70%,rgba(255,255,255,.22));border-radius:8px;box-shadow:inset 0 1px #ffffff2e,0 18px 44px #00081261;pointer-events:auto;transform:translate(-50%);animation:mapCenterPopupIn .18s ease-out;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--device-glow) 56%,transparent) rgba(255,255,255,.08)}.map-device-popup-close{position:absolute;top:8px;right:8px;z-index:4;display:grid;width:26px;height:26px;padding:0;place-items:center;color:#ffffffd1;font-size:20px;line-height:1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:50%}.map-device-popup-close:hover,.map-device-popup-close:focus-visible{color:#fff;background:rgba(255,255,255,.16);border-color:#ffffff57;outline:none}.map-device-bubble-head{position:sticky;top:-14px;z-index:2;display:grid;gap:2px;padding:0 34px 9px 0;background:linear-gradient(180deg,color-mix(in srgb,var(--device-dark) 94%,#020817),transparent);border-bottom:1px solid rgba(255,255,255,.12)}@keyframes mapCenterPopupIn{0%{opacity:0;transform:translate(-50%,8px) scale(.97)}to{opacity:1;transform:translate(-50%) scale(1)}}.map-device-name,.map-device-metric,.map-device-detail-label,.map-device-detail-value,.map-device-empty{position:relative;z-index:1;overflow:hidden;color:#fff;line-height:1.25;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.55);white-space:nowrap}.map-device-name{font-size:13px;font-weight:800}.map-device-metric{color:color-mix(in srgb,var(--device-glow) 32%,#ffffff);font-size:12px;font-weight:700}.map-device-detail-list{position:relative;z-index:1;display:grid;gap:5px}.map-device-detail-row{display:grid;grid-template-columns:minmax(70px,.42fr) minmax(0,1fr);gap:8px;align-items:start;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.08)}.map-device-detail-row:last-child{border-bottom:0}.map-device-detail-label{color:#ddeeffb3;font-size:11px;font-weight:700}.map-device-detail-value{display:inline-flex;justify-content:flex-end;align-items:center;gap:6px;justify-self:end;color:#fff;font-size:11px;font-weight:700;text-align:right;white-space:normal;word-break:break-word}.map-device-status-dot{position:relative;flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#facc15;box-shadow:0 0 9px #facc15e6}.map-device-status-dot:after{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;content:"";border-radius:inherit;background:currentColor;opacity:.22;animation:mapStatusDotPulse 1.5s ease-out infinite}.map-device-status-dot.is-online{color:#22c55e;background:#22c55e;box-shadow:0 0 10px #22c55ef2}.map-device-status-dot.is-offline{color:#ef4444;background:#ef4444;box-shadow:0 0 10px #ef4444f2}.map-device-status-dot.is-unknown{color:#facc15;background:#facc15;box-shadow:0 0 10px #facc15f2}@keyframes mapStatusDotPulse{0%{transform:scale(.55);opacity:.32}72%,to{transform:scale(1.85);opacity:0}}.map-device-empty{color:#ffffffb8;font-size:12px;font-weight:700}.control-panel{position:absolute;top:16px;left:16px;display:flex;align-items:center;flex-wrap:wrap;gap:12px;width:min(820px,calc(100% - 32px));background:rgba(255,255,255,.94);padding:12px;border:1px solid rgba(15,56,96,.1);border-radius:8px;box-shadow:0 18px 45px #0f386024;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000}.control-panel .select{flex:0 0 240px}.control-panel .search{flex:1 1 320px;min-width:220px}.control-panel .dashboard-entry-button{flex:0 0 auto;height:32px;padding:0 16px;border:none;border-radius:7px;color:#fff;font-weight:700;background:linear-gradient(135deg,#1685d9 0%,#19b7ff 52%,#30d4ff 100%);box-shadow:0 8px 18px #1685d940,0 0 18px #30d4ff42}.control-panel .dashboard-entry-button:hover,.control-panel .dashboard-entry-button:focus{color:#fff;background:linear-gradient(135deg,#0f74c8 0%,#13aef5 48%,#4ae3ff 100%);box-shadow:0 10px 22px #1685d952,0 0 24px #30d4ff61}@media (max-width: 900px){.control-panel{width:min(560px,calc(100% - 24px));top:12px;left:12px;gap:8px;padding:10px}.control-panel .select{flex:1 1 180px}.control-panel .search{flex:1 1 260px;min-width:180px}}.control-panel h3{margin-top:0;margin-bottom:15px;color:#1a4ba1;border-bottom:1px solid #eee;padding-bottom:8px}.layer-control{margin-bottom:10px}.layer-control label{display:flex;align-items:center;cursor:pointer;font-size:14px}.layer-control input{margin-right:10px;width:16px;height:16px}.button-group{margin-top:15px;margin-bottom:15px}.button-group button{width:100%;padding:8px;background:#1a4ba1;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.button-group button:hover{background:#2a76c6}.info-section{margin-top:15px;padding-top:15px;border-top:1px solid #eee;font-size:12px;color:#666}.info-section p{margin:0 0 8px;font-weight:700}.info-section ul{margin:0;padding-left:15px}.info-section li{margin-bottom:5px}.cesium-viewer-bottom{display:none!important}.close{cursor:pointer}.not-ready{padding:24px;min-height:100%;text-align:center}.module-placeholder{min-height:100%;padding:28px;background:linear-gradient(180deg,rgba(246,250,255,.95),rgba(255,255,255,.98)),repeating-linear-gradient(90deg,rgba(24,144,255,.04) 0 1px,transparent 1px 42px)}.module-placeholder-panel{min-height:calc(100vh - 124px);display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:1fr auto;gap:22px;align-items:center;padding:52px;border:1px solid rgba(24,99,160,.12);border-radius:8px;background:rgba(255,255,255,.82);box-shadow:0 24px 70px #1b4e7a14}.module-placeholder-icon{align-self:start;margin-top:8px;font-size:72px;color:#1685d9}.module-placeholder-copy h1{margin:8px 0 12px;color:#102a43;font-size:32px;font-weight:700;letter-spacing:0}.module-placeholder-copy p{max-width:560px;margin:0;color:#526d86;font-size:15px;line-height:1.8}.module-placeholder-eyebrow{color:#1685d9;font-size:13px;font-weight:700}.module-placeholder-next{grid-column:2;display:inline-flex;align-items:center;gap:10px;width:fit-content;padding:10px 14px;color:#255f91;background:rgba(24,144,255,.08);border:1px solid rgba(24,144,255,.12);border-radius:8px;font-size:13px}.not-found-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:32px;background:linear-gradient(180deg,#f6faff 0%,#ffffff 100%)}.not-found-panel{width:min(560px,100%);padding:40px;text-align:center;border:1px solid rgba(24,99,160,.12);border-radius:8px;background:rgba(255,255,255,.92);box-shadow:0 24px 70px #1b4e7a14}.not-found-code{color:#1685d9;font-size:68px;font-weight:800;line-height:1}.not-found-panel h1{margin:18px 0 10px;color:#102a43;font-size:26px}.not-found-panel p{margin:0 0 24px;color:#526d86;font-size:15px}@media (max-width: 980px){.app-header{gap:12px;padding:0 12px}.brand-block{min-width:auto}.platform-subtitle,.theme-switcher span{display:none}}.info-logo{font-size:128px;color:#1890ff;margin:100px 0}.info-content{font-size:24px;color:#555}.login-page{position:relative;width:100%;height:100%;overflow:hidden;background:radial-gradient(circle at 20% 20%,#eef6ff 0%,#f7fbff 35%,#ffffff 70%);display:flex;align-items:center;justify-content:center}.login-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(24,144,255,.18) 1px,transparent 2px),radial-gradient(circle,rgba(121,209,255,.16) 1px,transparent 2px),radial-gradient(circle,rgba(79,161,255,.12) 1px,transparent 2px);background-size:70px 70px,120px 120px,160px 160px;background-position:0 0,30px 60px,80px 20px;opacity:.45;animation:particleTwinkle 9s ease-in-out infinite,particleFlow 22s linear infinite;z-index:0;pointer-events:none}.login-glow{position:absolute;width:900px;height:900px;background:radial-gradient(circle,rgba(84,169,255,.25),transparent 60%);filter:blur(10px);top:-220px;right:-240px;z-index:0;animation:glowFloat 12s ease-in-out infinite}.login-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(24,144,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(24,144,255,.08) 1px,transparent 1px);background-size:48px 48px;opacity:.6;z-index:0;animation:gridDrift 16s linear infinite}.login-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(79,161,255,.08),transparent 45%),linear-gradient(180deg,transparent,rgba(79,161,255,.06),transparent);mix-blend-mode:screen;animation:scanLine 8s ease-in-out infinite,pulseWave 10s ease-in-out infinite;pointer-events:none}.login-card{position:relative;z-index:1;width:460px;padding:36px 40px 28px;background:rgba(255,255,255,.8);border:1px solid rgba(24,144,255,.18);border-radius:20px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 60px #183c782e;animation:cardRise .9s ease forwards}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:22px}.login-mark{width:44px;height:44px;border-radius:14px;background:conic-gradient(from 180deg,#4fa1ff,#79d1ff,#5bd1e6,#4fa1ff);box-shadow:0 12px 24px #1890ff40;position:relative;animation:markPulse 6s ease-in-out infinite}.login-mark:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:10px;background:rgba(255,255,255,.8)}.login-title{font-family:Orbitron,sans-serif;font-size:20px;letter-spacing:.04em;color:#0f2a4a}.login-subtitle{font-size:12px;color:#5c7aa0;text-transform:uppercase;letter-spacing:.14em;margin-top:6px}.login-status{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(24,144,255,.08);color:#2b5d9a;font-size:12px;margin-bottom:20px}.login-status-dot{width:8px;height:8px;border-radius:50%;background:#2be1ff;box-shadow:0 0 10px #2be1ffcc}.login-form{display:flex;flex-direction:column;gap:16px}.login-field{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#45668a}.login-field input{height:44px;border-radius:12px;border:1px solid rgba(24,144,255,.2);background:rgba(255,255,255,.9);padding:0 14px;font-size:14px;color:#0f2a4a;outline:none;transition:all .2s ease}.login-field input:focus{border-color:#1890ff99;box-shadow:0 0 0 3px #1890ff26}.login-captcha{display:grid;grid-template-columns:1fr 120px;gap:12px;align-items:end}.login-captcha-box{height:44px;border-radius:12px;border:1px solid rgba(24,144,255,.2);background:linear-gradient(135deg,rgba(79,161,255,.2),rgba(121,209,255,.4));font-family:Orbitron,sans-serif;font-size:16px;letter-spacing:.2em;color:#0f2a4a;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.login-captcha-box:hover{transform:translateY(-1px);box-shadow:0 10px 18px #1890ff2e}.login-captcha-box:disabled{cursor:not-allowed;opacity:.75;transform:none;box-shadow:none}.login-captcha-image{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}.login-captcha-text{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.login-error{color:#e24b4b;font-size:12px;background:rgba(226,75,75,.08);padding:6px 10px;border-radius:8px}.login-submit{height:46px;border-radius:14px;border:none;background:linear-gradient(135deg,#4fa1ff,#2b8cff,#5bd1e6);color:#fff;font-weight:600;font-size:15px;cursor:pointer;box-shadow:0 16px 30px #1890ff40;transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}.login-submit:hover{transform:translateY(-1px);box-shadow:0 18px 36px #1890ff59}.login-submit:disabled{cursor:not-allowed;opacity:.85;transform:none}.login-submit:after{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.5),transparent);animation:buttonSheen 4.5s ease-in-out infinite}.login-footer{margin-top:20px;display:flex;justify-content:space-between;font-size:11px;color:#7a95b5}@media (max-width: 600px){.login-card{width:90%;padding:28px 24px}.login-captcha{grid-template-columns:1fr}}@keyframes glowFloat{0%,to{transform:translate(0) scale(1);opacity:.8}50%{transform:translate(-40px,30px) scale(1.05);opacity:1}}@keyframes gridDrift{0%{background-position:0 0}to{background-position:96px 96px}}@keyframes scanLine{0%,to{opacity:.3;transform:translateY(-20%)}50%{opacity:.8;transform:translateY(20%)}}@keyframes cardRise{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes markPulse{0%,to{box-shadow:0 12px 24px #1890ff40}50%{box-shadow:0 18px 40px #1890ff59}}@keyframes buttonSheen{0%{left:-60%;opacity:0}40%{opacity:0}60%{left:120%;opacity:.8}to{left:120%;opacity:0}}@keyframes particleTwinkle{0%,to{opacity:.35;filter:drop-shadow(0 0 0 rgba(24,144,255,0))}40%{opacity:.6;filter:drop-shadow(0 0 6px rgba(24,144,255,.2))}70%{opacity:.45;filter:drop-shadow(0 0 10px rgba(121,209,255,.25))}}@keyframes particleFlow{0%{background-position:0 0,30px 60px,80px 20px}to{background-position:120px 90px,150px 20px,40px 140px}}@keyframes pulseWave{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.7;transform:scale(1.02)}}.cesium-svgPath-svg{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.cesium-button{display:inline-block;position:relative;background:#303336;border:1px solid #444;color:#edffff;fill:#edffff;border-radius:4px;padding:5px 12px;margin:2px 3px;cursor:pointer;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.cesium-button:focus{color:#fff;fill:#fff;border-color:#ea4;outline:none}.cesium-button:hover{color:#fff;fill:#fff;background:#48b;border-color:#aef;box-shadow:0 0 8px #fff}.cesium-button:active{color:#000;fill:#000;background:#adf;border-color:#fff;box-shadow:0 0 8px #fff}.cesium-button:disabled,.cesium-button-disabled,.cesium-button-disabled:focus,.cesium-button-disabled:hover,.cesium-button-disabled:active{background:#303336;border-color:#444;color:#646464;fill:#646464;box-shadow:none;cursor:default}.cesium-button option{background-color:#000;color:#eee}.cesium-button option:disabled{color:#777}.cesium-button input,.cesium-button label{cursor:pointer}.cesium-button input{vertical-align:sub}.cesium-toolbar-button{box-sizing:border-box;width:32px;height:32px;border-radius:14%;padding:0;vertical-align:middle;z-index:0}.cesium-performanceDisplay-defaultContainer{position:absolute;top:50px;right:10px;text-align:right}.cesium-performanceDisplay{background-color:#282828b3;padding:7px;border-radius:5px;border:1px solid #444;font:700 12px sans-serif}.cesium-performanceDisplay-fps{color:#e52}.cesium-performanceDisplay-throttled{color:#a42}.cesium-performanceDisplay-ms{color:#de3}.cesium-animation-theme{visibility:hidden;display:block;position:absolute;z-index:-100}.cesium-animation-themeNormal{color:#222}.cesium-animation-themeHover{color:#4488b0}.cesium-animation-themeSelect{color:#242}.cesium-animation-themeDisabled{color:#333}.cesium-animation-themeKnob{color:#222}.cesium-animation-themePointer{color:#2e2}.cesium-animation-themeSwoosh{color:#8ac}.cesium-animation-themeSwooshHover{color:#aef}.cesium-animation-svgText{fill:#edffff;font-family:Sans-Serif;font-size:15px;text-anchor:middle}.cesium-animation-blank{fill:#000;fill-opacity:.01;stroke:none}.cesium-animation-rectButton{cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.cesium-animation-rectButton .cesium-animation-buttonGlow{fill:#fff;stroke:none;display:none}.cesium-animation-rectButton:hover .cesium-animation-buttonGlow{display:block}.cesium-animation-rectButton .cesium-animation-buttonPath{fill:#edffff}.cesium-animation-rectButton .cesium-animation-buttonMain{stroke:#444;stroke-width:1.2}.cesium-animation-rectButton:hover .cesium-animation-buttonMain{stroke:#aef}.cesium-animation-rectButton:active .cesium-animation-buttonMain{fill:#abd6ff}.cesium-animation-buttonDisabled{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.cesium-animation-buttonDisabled .cesium-animation-buttonMain{stroke:#555}.cesium-animation-buttonDisabled .cesium-animation-buttonPath{fill:#818181}.cesium-animation-buttonDisabled .cesium-animation-buttonGlow{display:none}.cesium-animation-buttonToggled .cesium-animation-buttonGlow{display:block;fill:#2e2}.cesium-animation-buttonToggled .cesium-animation-buttonMain{stroke:#2e2}.cesium-animation-buttonToggled:hover .cesium-animation-buttonGlow{fill:#fff}.cesium-animation-buttonToggled:hover .cesium-animation-buttonMain{stroke:#2e2}.cesium-animation-shuttleRingG,.cesium-animation-shuttleRingPointer,.cesium-animation-shuttleRingPausePointer{cursor:pointer}.cesium-animation-shuttleRingBack{fill:#181818;fill-opacity:.8;stroke:#333;stroke-width:1.2}.cesium-animation-shuttleRingSwoosh line{stroke:#8ac;stroke-width:3;stroke-opacity:.2;stroke-linecap:round}.cesium-animation-knobOuter{cursor:pointer;stroke:#444;stroke-width:1.2}.cesium-animation-knobInner{cursor:pointer}.cesium-baseLayerPicker-selected{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.cesium-baseLayerPicker-dropDown{display:block;position:absolute;box-sizing:content-box;top:auto;right:0;width:320px;max-height:500px;margin-top:5px;background-color:#262626bf;border:1px solid #444;padding:6px;overflow:auto;border-radius:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;transform:translateY(-20%);visibility:hidden;opacity:0;transition:visibility 0s .2s,opacity .2s ease-in,transform .2s ease-in}.cesium-baseLayerPicker-dropDown-visible{transform:translate(0);visibility:visible;opacity:1;transition:opacity .2s ease-out,transform .2s ease-out}.cesium-baseLayerPicker-sectionTitle{display:block;font-family:sans-serif;font-size:16pt;text-align:left;color:#edffff;margin-bottom:4px}.cesium-baseLayerPicker-choices{margin-bottom:5px}.cesium-baseLayerPicker-categoryTitle{color:#edffff;font-size:11pt}.cesium-baseLayerPicker-choices{display:block;border:1px solid #888;border-radius:5px;padding:5px 0}.cesium-baseLayerPicker-item{display:inline-block;vertical-align:top;margin:2px 5px;width:64px;text-align:center;cursor:pointer}.cesium-baseLayerPicker-itemLabel{display:block;font-family:sans-serif;font-size:8pt;text-align:center;vertical-align:middle;color:#edffff;cursor:pointer;word-wrap:break-word}.cesium-baseLayerPicker-item:hover .cesium-baseLayerPicker-itemLabel,.cesium-baseLayerPicker-item:focus .cesium-baseLayerPicker-itemLabel{text-decoration:underline}.cesium-baseLayerPicker-itemIcon{display:inline-block;position:relative;width:inherit;height:auto;background-size:100% 100%;border:solid 1px #444;border-radius:9px;color:#edffff;margin:0;padding:0;cursor:pointer;box-sizing:border-box}.cesium-baseLayerPicker-item:hover .cesium-baseLayerPicker-itemIcon{border-color:#fff;box-shadow:0 0 8px #fff,0 0 8px #fff}.cesium-baseLayerPicker-selectedItem .cesium-baseLayerPicker-itemLabel{color:#bdecf8}.cesium-baseLayerPicker-selectedItem .cesium-baseLayerPicker-itemIcon{border:double 4px rgb(189,236,248)}.cesium-widget{font-family:sans-serif;font-size:16px;overflow:hidden;display:block;position:relative;top:0;left:0;width:100%;height:100%}.cesium-widget,.cesium-widget canvas{width:100%;height:100%;touch-action:none}.cesium-widget-credits{display:block;position:absolute;bottom:0;left:0;color:#fff;font-size:10px;text-shadow:0px 0px 2px #000000;padding-right:5px}.cesium-widget-errorPanel{position:absolute;top:0;right:0;bottom:0;left:0;text-align:center;background:rgba(0,0,0,.7);z-index:99999}.cesium-widget-errorPanel:before{display:inline-block;vertical-align:middle;height:100%;content:""}.cesium-widget-errorPanel-content{width:75%;max-width:500px;display:inline-block;text-align:left;vertical-align:middle;border:1px solid #510c00;border-radius:7px;background-color:#f0d9d5;font-size:14px;color:#510c00}.cesium-widget-errorPanel-content.expanded{max-width:75%}.cesium-widget-errorPanel-header{font-size:18px;font-family:Open Sans,Verdana,Geneva,sans-serif;background:#d69d93;border-bottom:2px solid #510c00;border-radius:3px 3px 0 0;padding:15px}.cesium-widget-errorPanel-scroll{overflow:auto;font-family:Open Sans,Verdana,Geneva,sans-serif;white-space:pre-wrap;padding:0 15px;margin:10px 0 20px}.cesium-widget-errorPanel-buttonPanel{padding:0 15px;margin:10px 0 20px;text-align:right}.cesium-widget-errorPanel-buttonPanel button{border-color:#510c00;background:#d69d93;color:#202020;margin:0}.cesium-widget-errorPanel-buttonPanel button:focus{border-color:#510c00;background:#f0d9d5;color:#510c00}.cesium-widget-errorPanel-buttonPanel button:hover{border-color:#510c00;background:#f0d9d5;color:#510c00}.cesium-widget-errorPanel-buttonPanel button:active{border-color:#510c00;background:#b17b72;color:#510c00}.cesium-widget-errorPanel-more-details{text-decoration:underline;cursor:pointer}.cesium-widget-errorPanel-more-details:hover{color:#2b0700}.cesium-cesiumInspector{border-radius:5px;transition:width ease-in-out .25s;background:rgba(48,51,54,.8);border:1px solid #444;color:#edffff;display:inline-block;position:relative;padding:4px 12px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden}.cesium-cesiumInspector-button{text-align:center;font-size:11pt}.cesium-cesiumInspector-visible .cesium-cesiumInspector-button{border-bottom:1px solid #aaa;padding-bottom:3px}.cesium-cesiumInspector input:enabled,.cesium-cesiumInspector-button{cursor:pointer}.cesium-cesiumInspector-visible{width:185px;height:auto}.cesium-cesiumInspector-hidden{width:122px;height:17px}.cesium-cesiumInspector-sectionContent{max-height:600px}.cesium-cesiumInspector-section-collapsed .cesium-cesiumInspector-sectionContent{max-height:0;padding:0!important;overflow:hidden}.cesium-cesiumInspector-dropDown{margin:5px 0;font-family:sans-serif;font-size:10pt;width:185px}.cesium-cesiumInspector-frustumStatistics{padding:5px;background-color:#505050bf}.cesium-cesiumInspector-pickButton{background-color:#0000004d;border:1px solid #444;color:#edffff;border-radius:5px;padding:3px 7px;cursor:pointer;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;margin:0 auto}.cesium-cesiumInspector-pickButton:focus{outline:none}.cesium-cesiumInspector-pickButton:active,.cesium-cesiumInspector-pickButtonHighlight{color:#000;background:#adf;border-color:#fff;box-shadow:0 0 8px #fff}.cesium-cesiumInspector-center{text-align:center}.cesium-cesiumInspector-sectionHeader{font-weight:700;font-size:10pt;margin:0;cursor:pointer}.cesium-cesiumInspector-pickSection{border:1px solid #aaa;border-radius:5px;padding:3px;margin-bottom:5px}.cesium-cesiumInspector-sectionContent{margin-bottom:10px;transition:max-height .25s}.cesium-cesiumInspector-tileText{padding-bottom:10px;border-bottom:1px solid #aaa}.cesium-cesiumInspector-relativeText{padding-top:10px}.cesium-cesiumInspector-sectionHeader:before{margin-right:5px;content:"-";width:1ch;display:inline-block}.cesium-cesiumInspector-section-collapsed .cesium-cesiumInspector-sectionHeader:before{content:"+"}ul.cesium-cesiumInspector-statistics{margin:0;padding-top:3px;padding-bottom:3px}ul.cesium-cesiumInspector-statistics+ul.cesium-cesiumInspector-statistics{border-top:1px solid #aaa}.cesium-cesiumInspector-slider{margin-top:5px}.cesium-cesiumInspector-slider input[type=number]{text-align:left;background-color:#222;outline:none;border:1px solid #444;color:#edffff;width:100px;border-radius:3px;padding:1px;margin-left:10px;cursor:auto}.cesium-cesiumInspector-slider input[type=number]::-webkit-outer-spin-button,.cesium-cesiumInspector-slider input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cesium-cesiumInspector-slider input[type=range]{margin-left:5px;vertical-align:middle}.cesium-cesiumInspector-hide .cesium-cesiumInspector-styleEditor{display:none}.cesium-cesiumInspector-styleEditor{padding:10px;border-radius:5px;background:rgba(48,51,54,.8);border:1px solid #444}.cesium-cesiumInspector-styleEditor textarea{width:100%;height:300px;background:transparent;color:#edffff;border:none;padding:0;white-space:pre;overflow-wrap:normal;overflow-x:auto}.cesium-3DTilesInspector{width:300px;pointer-events:all}.cesium-3DTilesInspector-statistics{font-size:11px}.cesium-3DTilesInspector-disabledElementsInfo{margin:5px 0 0;padding:0 0 0 20px;color:#eed202}.cesium-3DTilesInspector div,.cesium-3DTilesInspector input[type=range]{width:100%;box-sizing:border-box}.cesium-cesiumInspector-error{color:#ff9e9e;overflow:auto}.cesium-3DTilesInspector .cesium-cesiumInspector-section{margin-top:3px}.cesium-3DTilesInspector .cesium-cesiumInspector-sectionHeader+.cesium-cesiumInspector-show{border-top:1px solid white}input.cesium-cesiumInspector-url{overflow:hidden;white-space:nowrap;overflow-x:scroll;background-color:transparent;color:#fff;outline:none;border:none;height:1em;width:100%}.cesium-cesiumInspector .field-group{display:table}.cesium-cesiumInspector .field-group>label{display:table-cell;font-weight:700}.cesium-cesiumInspector .field-group>.field{display:table-cell;width:100%}.cesium-VoxelInspector{width:300px;pointer-events:all}.cesium-VoxelInspector div,.cesium-VoxelInspector input[type=range]{width:100%;box-sizing:border-box}.cesium-VoxelInspector .cesium-cesiumInspector-section{margin-top:3px}.cesium-VoxelInspector .cesium-cesiumInspector-sectionHeader+.cesium-cesiumInspector-show{border-top:1px solid white}.cesium-button.cesium-fullscreenButton,.cesium-button.cesium-vrButton{display:block;width:100%;height:100%;margin:0;border-radius:0}.cesium-viewer-geocoderContainer .cesium-geocoder-input{border:solid 1px #444;background-color:#282828b3;color:#fff;display:inline-block;vertical-align:middle;width:0;height:32px;margin:0;padding:0 32px 0 0;border-radius:0;box-sizing:border-box;transition:width ease-in-out .25s,background-color .2s ease-in-out;-webkit-appearance:none}.cesium-viewer-geocoderContainer:hover .cesium-geocoder-input{border-color:#aef;box-shadow:0 0 8px #fff}.cesium-viewer-geocoderContainer .cesium-geocoder-input:focus{border-color:#ea4;background-color:#0f0f0fe6;box-shadow:none;outline:none}.cesium-viewer-geocoderContainer:hover .cesium-geocoder-input,.cesium-viewer-geocoderContainer .cesium-geocoder-input:focus,.cesium-viewer-geocoderContainer .cesium-geocoder-input-wide{padding-left:4px;width:250px}.cesium-viewer-geocoderContainer .search-results{position:absolute;background-color:#000;color:#eee;overflow-y:auto;opacity:.8;width:100%}.cesium-viewer-geocoderContainer .search-results ul{list-style-type:none;margin:0;padding:0}.cesium-viewer-geocoderContainer .search-results ul li{font-size:14px;padding:3px 10px}.cesium-viewer-geocoderContainer .search-results ul li:hover{cursor:pointer}.cesium-viewer-geocoderContainer .search-results ul li.active{background:#48b}.cesium-geocoder-searchButton{background-color:#303336;display:inline-block;position:absolute;cursor:pointer;width:32px;top:1px;right:1px;height:30px;vertical-align:middle;fill:#edffff}.cesium-geocoder-searchButton:hover{background-color:#48b}.cesium-infoBox{display:block;position:absolute;top:50px;right:0;width:40%;max-width:480px;background:rgba(38,38,38,.95);color:#edffff;border:1px solid #444;border-right:none;border-top-left-radius:7px;border-bottom-left-radius:7px;box-shadow:0 0 10px 1px #000;transform:translate(100%);visibility:hidden;opacity:0;transition:visibility 0s .2s,opacity .2s ease-in,transform .2s ease-in}.cesium-infoBox-visible{transform:translate(0);visibility:visible;opacity:1;transition:opacity .2s ease-out,transform .2s ease-out}.cesium-infoBox-title{display:block;height:20px;padding:5px 30px 5px 25px;background:rgba(84,84,84,1);border-top-left-radius:7px;text-align:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;box-sizing:content-box}.cesium-infoBox-bodyless .cesium-infoBox-title{border-bottom-left-radius:7px}button.cesium-infoBox-camera{display:block;position:absolute;top:4px;left:4px;width:22px;height:22px;background:transparent;border-color:transparent;border-radius:3px;padding:0 5px;margin:0}button.cesium-infoBox-close{display:block;position:absolute;top:5px;right:5px;height:20px;background:transparent;border:none;border-radius:2px;font-weight:700;font-size:16px;padding:0 5px;margin:0;color:#edffff}button.cesium-infoBox-close:focus{background:rgba(238,136,0,.44);outline:none}button.cesium-infoBox-close:hover{background:#888;color:#000}button.cesium-infoBox-close:active{background:#a00;color:#000}.cesium-infoBox-bodyless .cesium-infoBox-iframe{display:none}.cesium-infoBox-iframe{border:none;width:100%;width:calc(100% - 2px)}span.cesium-sceneModePicker-wrapper{display:inline-block;position:relative;margin:0 3px}.cesium-sceneModePicker-visible{visibility:visible;opacity:1;transition:opacity .25s linear}.cesium-sceneModePicker-hidden{visibility:hidden;opacity:0;transition:visibility 0s .25s,opacity .25s linear}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-none{display:none}.cesium-sceneModePicker-slide-svg{transition:left 2s;top:0;left:0}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-dropDown-icon{box-sizing:border-box;padding:0;margin:3px 0}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-button3D,.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-buttonColumbusView,.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-button2D{margin:0 0 3px}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-button3D .cesium-sceneModePicker-icon2D{left:100%}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-button3D .cesium-sceneModePicker-iconColumbusView{left:200%}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-buttonColumbusView .cesium-sceneModePicker-icon3D{left:-200%}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-buttonColumbusView .cesium-sceneModePicker-icon2D,.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-button2D .cesium-sceneModePicker-icon3D{left:-100%}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-button2D .cesium-sceneModePicker-iconColumbusView{left:100%}.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-selected{border-color:#2e2;box-shadow:0 0 8px #fff,0 0 8px #fff}span.cesium-projectionPicker-wrapper{display:inline-block;position:relative;margin:0 3px}.cesium-projectionPicker-visible{visibility:visible;opacity:1;transition:opacity .25s linear}.cesium-projectionPicker-hidden{visibility:hidden;opacity:0;transition:visibility 0s .25s,opacity .25s linear}.cesium-projectionPicker-wrapper .cesium-projectionPicker-none{display:none}.cesium-projectionPicker-wrapper .cesium-projectionPicker-dropDown-icon{box-sizing:border-box;padding:0;margin:3px 0}.cesium-projectionPicker-wrapper .cesium-projectionPicker-buttonPerspective,.cesium-projectionPicker-wrapper .cesium-projectionPicker-buttonOrthographic{margin:0 0 3px}.cesium-projectionPicker-wrapper .cesium-projectionPicker-buttonPerspective .cesium-projectionPicker-iconOrthographic{left:100%}.cesium-projectionPicker-wrapper .cesium-projectionPicker-buttonOrthographic .cesium-projectionPicker-iconPerspective{left:-100%}.cesium-projectionPicker-wrapper .cesium-projectionPicker-selected{border-color:#2e2;box-shadow:0 0 8px #fff,0 0 8px #fff}.cesium-performance-watchdog-message-area{position:relative;background-color:#ff0;color:#000;padding:10px}.cesium-performance-watchdog-message{margin-right:30px}.cesium-performance-watchdog-message-dismiss{position:absolute;right:0;margin:0 10px 0 0}.cesium-navigationHelpButton-wrapper{position:relative;display:inline-block}.cesium-navigation-help{visibility:hidden;position:absolute;top:38px;right:2px;width:250px;border-radius:10px;transform:scale(.01);transform-origin:234px -10px;transition:visibility 0s .25s,transform .25s ease-in}.cesium-navigation-help-visible{visibility:visible;transform:scale(1);transition:transform .25s ease-out}.cesium-navigation-help-instructions{border:1px solid #444;background-color:#262626bf;padding-bottom:5px;border-radius:0 0 10px 10px}.cesium-click-navigation-help{display:none}.cesium-touch-navigation-help{display:none;padding-top:5px}.cesium-click-navigation-help-visible,.cesium-touch-navigation-help-visible{display:block}.cesium-navigation-help-pan{color:#6cf;font-weight:700}.cesium-navigation-help-zoom{color:#65fd00;font-weight:700}.cesium-navigation-help-rotate{color:#ffd800;font-weight:700}.cesium-navigation-help-tilt{color:#d800d8;font-weight:700}.cesium-navigation-help-details{color:#fff}.cesium-navigation-button{color:#fff;background-color:transparent;border-bottom:none;border-top:1px solid #444;border-right:1px solid #444;margin:0;width:50%;cursor:pointer}.cesium-navigation-button-icon{vertical-align:middle;padding:5px 1px}.cesium-navigation-button:focus{outline:none}.cesium-navigation-button-left{border-radius:10px 0 0;border-left:1px solid #444}.cesium-navigation-button-right{border-radius:0 10px 0 0;border-left:none}.cesium-navigation-button-selected{background-color:#262626bf}.cesium-navigation-button-unselected{background-color:#000000bf}.cesium-navigation-button-unselected:hover{background-color:#4c4c4cbf}.cesium-selection-wrapper{position:absolute;width:160px;height:160px;pointer-events:none;visibility:hidden;opacity:0;transition:visibility 0s .2s,opacity .2s ease-in}.cesium-selection-wrapper-visible{visibility:visible;opacity:1;transition:opacity .2s ease-out}.cesium-selection-wrapper svg{fill:#2e2;stroke:#000;stroke-width:1.1px}.cesium-timeline-main{position:relative;left:0;bottom:0;overflow:hidden;border:solid 1px #888;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.cesium-timeline-trackContainer{width:100%;overflow:auto;border-top:solid 1px #888;position:relative;top:0;left:0}.cesium-timeline-tracks{position:absolute;top:0;left:0;width:100%}.cesium-timeline-needle{position:absolute;left:0;top:1.7em;bottom:0;width:1px;background:#f00}.cesium-timeline-bar{position:relative;left:0;top:0;overflow:hidden;cursor:pointer;width:100%;height:1.7em;background:linear-gradient(to bottom,rgba(116,117,119,.8) 0%,rgba(58,68,82,.8) 11%,rgba(46,50,56,.8) 46%,rgba(53,53,53,.8) 81%,rgba(53,53,53,.8) 100%)}.cesium-timeline-ruler{visibility:hidden;white-space:nowrap;font-size:80%;z-index:-200}.cesium-timeline-highlight{position:absolute;bottom:0;left:0;background:#08f}.cesium-timeline-ticLabel{position:absolute;top:0;left:0;white-space:nowrap;font-size:80%;color:#eee}.cesium-timeline-ticMain{position:absolute;bottom:0;left:0;width:1px;height:50%;background:#eee}.cesium-timeline-ticSub{position:absolute;bottom:0;left:0;width:1px;height:33%;background:#aaa}.cesium-timeline-ticTiny{position:absolute;bottom:0;left:0;width:1px;height:25%;background:#888}.cesium-timeline-icon16{display:block;position:absolute;width:16px;height:16px;background-image:url(data:text/plain;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAYAAAB3AH1ZAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sIDBITKIVzLEMAAAKNSURBVEjHxdXNSxRhHAfw7zzrqhuoWJnSkrippUVSEKsHI9BTUYdAJA/RoYMREV26rAdn6tAfUARi16hQqkOBQRgUEYFWEC3OwczMjdZd92VmdWfmeelgTjO7q7gb0VzmmZnn85vvPPPMM8B/3qTcE2PPpuTZKB1eWuUQACgXYACYwVFbCTTVeZXB/i55o4LFelcAZfStYD4vpAoPGAGo4GBcQEgSOAUMQyAezwK6iQfDPXnhS/FkHZ+/8VLMWxxqWkfH3gbMRNOYi2roavbja0zHQmoFPYf8ED4Ko4aivm9MOG/u9I8mwrafeK7a/tVrNc/bARYN5noadeq7q0342vXw9CIMU6BmW8rVP9cPBPe52uu+v3O/y9sB4gkTWs6Qsk0mj5ExXMelejvA8WafYmkmGPHanTijdtvif8rx5RiCjdWKs2Cp3jWRDl96KhrbqlBeJqBOLyLQXg0IgbkZDS0dO8EZxZfPSTA9jvDDK3mT0OmP1FXh3XwEEAKdTX5MRWLgjCK4pwH3xt/YnjgLHAv4lHTCAKMMu/wV+KZGob6PoKyMQ0+sgBpZVJZn0NterxQaVqef/DRn+/EXYds/mZx2eVeAW9d65dhCEsaKCb7K8HH0gqTevyh9GDkn0VULRiaLzJKGBu9swfdaiie5RVo9ESURN8E8BE0n7ggACJy8KzghSCzp6DmwWxkaCm24EBXr8wI8Hrkq06QBiRC0t24HALS11IBTCyJl4vb1AXmzpbVYTwoVOXN0h7L8Mwtm8bXPybIQ/5FCX3dA2cr6XowvGCA02CvztAnz9+JiZk1AMxG6fEreSoBiPNmoyNnuWiWVzAIAtISO08E6pZi/3N96AIDn4E3h3P8L/wshP+txtEs4JAAAAABJRU5ErkJggg==);background-repeat:no-repeat}.cesium-viewer{font-family:sans-serif;font-size:16px;overflow:hidden;display:block;position:relative;top:0;left:0;width:100%;height:100%}.cesium-viewer-cesiumWidgetContainer{width:100%;height:100%}.cesium-viewer-bottom{display:block;position:absolute;bottom:0;left:0;padding-right:5px}.cesium-viewer .cesium-widget-credits{display:inline;position:static;bottom:auto;left:auto;padding-right:0;color:#fff;font-size:10px;text-shadow:0 0 2px #000000}.cesium-viewer-timelineContainer{position:absolute;bottom:0;left:169px;right:29px;height:27px;padding:0;margin:0;overflow:hidden;font-size:14px}.cesium-viewer-animationContainer{position:absolute;bottom:0;left:0;padding:0;width:169px;height:112px}.cesium-viewer-fullscreenContainer,.cesium-viewer-vrContainer{position:absolute;bottom:0;right:0;padding:0;width:29px;height:29px;overflow:hidden}.cesium-viewer-toolbar{display:block;position:absolute;top:5px;right:5px}.cesium-viewer-cesiumInspectorContainer{display:block;position:absolute;top:50px;right:10px}.cesium-viewer-geocoderContainer{position:relative;display:inline-block;margin:0 3px}.cesium-viewer-cesium3DTilesInspectorContainer,.cesium-viewer-voxelInspectorContainer{display:block;position:absolute;top:50px;right:10px;max-height:calc(100% - 120px);box-sizing:border-box;overflow-y:auto;overflow-x:hidden}.cesium-viewer-i3s-explorer ul{list-style-type:none}.cesium-viewer-i3s-explorer .layersList{padding:0}.cesium-viewer-i3s-explorer input{margin:0 3px 0 0}.cesium-viewer-i3s-explorer .expandItem{cursor:pointer;-webkit-user-select:none;user-select:none;width:20px}.cesium-viewer-i3s-explorer .nested,.cesium-viewer-i3s-explorer #bsl-wrapper{display:none}.cesium-viewer-i3s-explorer .active{display:block}.cesium-viewer-i3s-explorer .li-wrapper{display:flex;flex-direction:row;align-content:center}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.data-container{padding:20px;height:calc(100% - 60px)}.data-container .data-select{margin-left:20px;width:150px}.data-container .data-table{width:100%;height:100%}.data-container .monitor-data-container{padding:16px;font-family:Roboto,Arial,sans-serif;line-height:1.8}.data-container .monitor-data-container .text{display:inline-block;width:70px;text-align:right;margin-right:8px;color:inherit;font-weight:700}.data-container .download{margin:0 16px}.data-table .device-type-bubble{--bubble-color: #1685d9;--bubble-bg: rgba(22, 133, 217, .1);--bubble-border: rgba(22, 133, 217, .2);display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:112px;height:34px;padding:0 12px 0 8px;border:1px solid var(--bubble-border);border-radius:999px;background:var(--bubble-bg);color:var(--bubble-color);font-weight:600;line-height:1;white-space:nowrap;box-shadow:inset 0 0 0 1px #ffffffa6}.data-table .device-type-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff;color:var(--bubble-color);box-shadow:0 6px 14px #0e52821f}.data-table .device-type-label{display:inline-block;max-width:82px;overflow:hidden;text-overflow:ellipsis}.data-table .device-type-bubble-mist{--bubble-color: #1685d9;--bubble-bg: rgba(22, 133, 217, .11);--bubble-border: rgba(22, 133, 217, .22)}.data-table .device-type-bubble-micro{--bubble-color: #0f9f6e;--bubble-bg: rgba(15, 159, 110, .11);--bubble-border: rgba(15, 159, 110, .22)}.data-table .device-type-bubble-noise{--bubble-color: #b25c00;--bubble-bg: rgba(245, 158, 11, .14);--bubble-border: rgba(245, 158, 11, .28)}.data-table .device-type-bubble-station{--bubble-color: #5b5bd6;--bubble-bg: rgba(91, 91, 214, .11);--bubble-border: rgba(91, 91, 214, .22)}.data-table .device-type-bubble-unknown{--bubble-color: #64748b;--bubble-bg: rgba(100, 116, 139, .1);--bubble-border: rgba(100, 116, 139, .2)}:root{--table-head-start: #1e6fbf;--table-head-end: #1266b3;--table-row-even: rgba(30,111,191,.06);--table-row-odd: rgba(18,102,179,.03);--table-row-hover: rgba(18,102,179,.12);--table-text-dark: #06293f;--table-text-light: #ffffff}.data-table .ant-table{border-radius:10px;overflow:hidden;background:transparent;box-shadow:0 8px 24px #0e52820f}.data-table .ant-table-thead>tr>th{background:linear-gradient(180deg,var(--table-head-start),var(--table-head-end))!important;color:var(--table-text-light)!important;font-weight:600;letter-spacing:.2px;border-bottom:1px solid rgba(255,255,255,.12)!important;padding:12px}.data-table .ant-table-thead>tr>th .ant-table-column-title{color:inherit}.data-table .ant-table-tbody>tr>td{background:transparent;padding:12px;color:var(--table-text-dark);border-bottom:1px solid rgba(18,102,179,.06)}.data-table .ant-table-tbody>tr:nth-child(odd)>td{background:linear-gradient(180deg,rgba(255,255,255,0),var(--table-row-odd))}.data-table .ant-table-tbody>tr:nth-child(2n)>td{background:linear-gradient(180deg,rgba(255,255,255,0),var(--table-row-even))}.data-table .ant-table-tbody>tr:hover>td{background:linear-gradient(90deg,rgba(255,255,255,.02),var(--table-row-hover))!important;transition:background .12s ease}.data-table .ant-table-tbody>tr.ant-table-row-selected>td{background:linear-gradient(180deg,rgba(18,102,179,.08),rgba(18,102,179,.06))!important}.data-table.ant-table-bordered .ant-table-container{border:1px solid rgba(18,102,179,.12);border-radius:10px}.data-table .ant-pagination,.data-table .ant-table-summary{color:var(--table-text-dark)}@media (max-width: 768px){.data-table .ant-table-thead>tr>th,.data-table .ant-table-tbody>tr>td{padding:8px}}.data-table .ant-table-thead .anticon,.data-table .ant-table-thead .ant-table-column-sorter{color:#ffffffe6}.min-h-screen{padding:20px;height:calc(100% - 60px);overflow:auto!important}.min-h-screen .main-content{overflow:auto}.bg-gradient-to-br{background:linear-gradient(135deg,#f9fafb 0%,#f3f4f6 100%)}.md\:p-6{padding:1.5rem}@media (min-width: 768px){.md\:p-6{padding:1.5rem}}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-col{flex-direction:column}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.flex-1{flex:1 1 0%}.flex-wrap{flex-wrap:wrap}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.mt-1{margin-top:.25rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-3{margin-left:.75rem}.ml-auto{margin-left:auto}.mr-3{margin-right:.75rem}.mb-4{margin-bottom:1rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.bg-white{background-color:#fff}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.bg-blue-50{background-color:#eff6ff}.bg-blue-100{background-color:#dbeafe}.bg-green-50{background-color:#f0fdf4}.bg-green-100{background-color:#dcfce7}.bg-red-50{background-color:#fef2f2}.bg-red-100{background-color:#fee2e2}.bg-yellow-50{background-color:#fefce8}.bg-purple-500{background-color:#8b5cf6}.bg-orange-500{background-color:#f97316}.bg-black\/50{background-color:#00000080}.text-white{color:#fff}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-gray-800{color:#1f2937}.text-gray-900{color:#111827}.text-blue-500{color:#3b82f6}.text-blue-600{color:#2563eb}.text-green-500{color:#10b981}.text-green-600{color:#059669}.text-green-700{color:#047857}.text-green-800{color:#065f46}.text-red-500{color:#ef4444}.text-red-600{color:#dc2626}.text-red-700{color:#b91c1c}.text-red-800{color:#991b1b}.text-yellow-500{color:#f59e0b}.text-yellow-600{color:#d97706}.text-purple-500{color:#8b5cf6}.text-orange-500{color:#f97316}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.block-size{width:400px;height:150px}.rounded-full{border-radius:9999px}.border{border-width:1px;border-style:solid}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.border-blue-200{border-color:#bfdbfe}.border-t{border-top-width:1px;border-top-style:solid}.border-t-gray-200{border-top-color:#e5e7eb}.border-b{border-bottom-width:1px;border-bottom-style:solid}.border-b-gray-200{border-bottom-color:#e5e7eb}.border-4{border-width:4px}.border-blue-500{border-color:#3b82f6}.border-t-transparent{border-top-color:transparent}.shadow-sm{box-shadow:0 1px 2px #0000000d}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-full{width:100%}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pr-2{padding-right:.5rem}.fixed{position:fixed}.inset-0{top:0;right:0;bottom:0;left:0}.z-50{z-index:50}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:bg-gray-100:hover{background-color:#f3f4f6}.hover\:bg-gray-200:hover{background-color:#e5e7eb}.hover\:bg-blue-100:hover{background-color:#dbeafe}.hover\:bg-green-100:hover{background-color:#dcfce7}.hover\:bg-green-50:hover{background-color:#f0fdf4}.hover\:bg-red-50:hover{background-color:#fef2f2}.hover\:text-green-700:hover{color:#047857}.hover\:text-red-700:hover{color:#b91c1c}.hidden{display:none}.block{display:block}.input-field{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#374151;outline:none;transition:all .2s}.input-field:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.select-field{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#374151;background-color:#fff;cursor:pointer;outline:none;transition:all .2s}.select-field:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin,.spinning{animation:spin 1s linear infinite}@media (min-width: 768px){.md\:mb-0{margin-bottom:0}.md\:mb-8{margin-bottom:2rem}.md\:mt-1{margin-top:.25rem}.md\:w-6{width:1.5rem}.md\:h-6{height:1.5rem}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:text-2xl{font-size:1.5rem}.md\:w-12{width:3rem}.md\:h-12{height:3rem}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}}.opacity-50{opacity:.5}.inline-flex{display:inline-flex}.max-h-80{max-height:20rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:all .2s}.btn-primary{background-color:#3b82f6;color:#fff}.btn-secondary{background-color:#e5e7eb;color:#374151}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:white;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;overflow:hidden}.chart-container{position:relative;width:100%;height:100%}.status-indicator{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-indicator.online{background-color:#d1fae5;color:#065f46}.status-indicator.offline{background-color:#fee2e2;color:#991b1b}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.loading-content{background:white;border-radius:.75rem;padding:2rem;display:flex;flex-direction:column;align-items:center}.loading-spinner{width:4rem;height:4rem;border:4px solid #3b82f6;border-top-color:transparent;border-radius:9999px;animation:spin 1s linear infinite;margin-bottom:1rem}.icon-container{display:flex;align-items:center;justify-content:center;border-radius:.5rem}.icon-container.primary{background:linear-gradient(135deg,#3b82f6 0%,#06b6d4 100%)}.custom-scrollbar::-webkit-scrollbar{width:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.form-group{margin-bottom:1rem}.form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.25rem}.form-control{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#374151;outline:none;transition:all .2s}.form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.text-center{text-align:center}@media (min-width: 768px){.md\:text-left{text-align:left}}@media (max-width: 767px){.mobile-hidden{display:none}}@media (min-width: 768px){.desktop-hidden{display:none}}.gradient-primary{background:linear-gradient(135deg,#3b82f6 0%,#06b6d4 100%)}.gradient-gray{background:linear-gradient(135deg,#f9fafb 0%,#f3f4f6 100%)}.divider{height:1px;background-color:#e5e7eb;margin:1rem 0}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-error{background-color:#fee2e2;color:#991b1b}.badge-info{background-color:#dbeafe;color:#1e40af}.data-report-container{background:#f0f8ff;padding:20px;height:calc(100vh - 50px)!important;overflow:auto!important}.data-report-container .export-btn{margin-right:10px}.data-report-card{border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:16px 0}.tips{margin-left:16px;color:#1890ff}.lidar-export-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;align-items:end}.lidar-export-field{display:flex;flex-direction:column;gap:8px}.lidar-export-label{color:#1f4e79;font-size:13px;font-weight:600}.lidar-export-field .ant-picker,.lidar-export-field .ant-select{width:100%}.lidar-export-button{min-width:180px}.camera-preview-page{min-height:100%;padding:18px;background:linear-gradient(180deg,rgba(240,247,255,.96),rgba(246,250,253,.98))}.camera-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:16px 18px;border:1px solid rgba(20,88,148,.12);border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 14px 32px #0f386012}.camera-preview-kicker{color:#1685d9;font-size:11px;font-weight:800;letter-spacing:0}.camera-preview-toolbar h2{margin:4px 0 0;color:#102a43;font-size:24px;line-height:1.2}.camera-preview-toolbar p{margin:6px 0 0;color:#5f7892;font-size:13px}.camera-preview-note{flex:0 0 auto;padding:8px 12px;color:#2b6f9f;font-size:13px;font-weight:700;background:rgba(22,133,217,.08);border:1px solid rgba(22,133,217,.16);border-radius:8px}.camera-preview-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.camera-preview-summary>div{display:flex;align-items:baseline;gap:8px;padding:12px 14px;border:1px solid rgba(20,88,148,.1);border-radius:8px;background:#fff}.camera-preview-summary strong{color:#1685d9;font-size:24px;line-height:1}.camera-preview-summary span{color:#60758b;font-size:13px;font-weight:700}.camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.camera-card{overflow:hidden;border:1px solid rgba(20,88,148,.14);border-radius:8px;background:#ffffff;box-shadow:0 18px 36px #0f386014}.camera-card-head,.camera-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}.camera-card-head{border-bottom:1px solid rgba(15,56,96,.08)}.camera-card-actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.camera-card-actions .ant-tag{margin-inline-end:0}.camera-card-title{color:#102a43;font-size:16px;font-weight:800}.camera-card-id{margin-top:3px;color:#6d8195;font-size:12px}.camera-video-wrap{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:linear-gradient(135deg,#07111f,#0e2238)}.camera-video-wrap video{display:block;width:100%;height:100%;object-fit:contain;background:#07111f}.camera-video-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;gap:10px;place-content:center;justify-items:center;color:#ebf6ffeb;font-size:13px;background:radial-gradient(circle at 50% 40%,rgba(24,144,255,.22),transparent 34%),rgba(7,17,31,.72)}.camera-video-mask .anticon{color:#59c6ff;font-size:34px}.camera-card-foot{color:#6d8195;font-size:12px;border-top:1px solid rgba(15,56,96,.08)}.camera-status{font-weight:800}.camera-status-idle,.camera-status-loading,.camera-status-waiting{color:#1677ff}.camera-status-playing{color:#0f9f6e}.camera-status-error{color:#d4380d}.camera-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 14px 14px;color:#6d8195;font-size:12px}.camera-meta-grid span{overflow:hidden;padding:7px 9px;border-radius:6px;background:#f5f8fb;text-overflow:ellipsis;white-space:nowrap}.camera-error-banner{margin-bottom:14px;padding:10px 12px;color:#ad2102;background:#fff1f0;border:1px solid #ffccc7;border-radius:8px;font-size:13px}.camera-empty{display:grid;min-height:320px;place-items:center;border:1px dashed rgba(20,88,148,.18);border-radius:8px;background:rgba(255,255,255,.72)}@media (max-width: 1100px){.camera-grid,.camera-meta-grid,.camera-preview-summary{grid-template-columns:1fr}}@media (max-width: 720px){.camera-preview-page{padding:12px}.camera-preview-toolbar{align-items:stretch;flex-direction:column}}.data-index{height:100%;min-height:0;background:#f5f8fb}.data-sider{border-right:1px solid rgba(15,56,96,.08);box-shadow:10px 0 26px #0f38600a;z-index:2}.data-sider-header{height:82px;display:flex;flex-direction:column;justify-content:center;padding:0 18px;border-bottom:1px solid rgba(127,153,179,.14)}.data-sider-kicker{color:#1685d9;font-size:11px;font-weight:700;letter-spacing:0}.data-sider-title{margin-top:6px;color:#102a43;font-size:18px;font-weight:700}.data-menu{padding:14px 10px;border-inline-end:none!important}.data-menu .ant-menu-item{height:44px;line-height:44px;margin:4px 0;padding-inline:18px!important;border-radius:8px;color:#1f2937;font-size:15px;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.data-menu .ant-menu-item:after{display:none!important}.data-menu .ant-menu-item .anticon{font-size:19px}.data-menu .ant-menu-item:hover{color:#1685d9!important;background:rgba(24,144,255,.06)!important}.data-menu .ant-menu-item-selected{color:#1685d9!important;background:rgba(24,144,255,.11)!important;box-shadow:inset 3px 0 #1685d9}.data-menu .ant-menu-item-selected .anticon,.data-menu .ant-menu-item-selected .ant-menu-title-content{color:#1685d9!important}.data-main{min-width:0;min-height:0;height:100%;background:linear-gradient(180deg,#f7fbff 0%,#eef4f9 100%)}.data-page-header{flex-shrink:0;min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:10px 24px;border-bottom:1px solid rgba(15,56,96,.08);background:rgba(255,255,255,.84)}.data-page-header>div{min-width:0}.data-page-header .ant-breadcrumb{font-size:12px;line-height:1.2}.data-page-header h1{display:inline-block;margin:4px 14px 0 0;color:#102a43;font-size:20px;line-height:1.2;font-weight:700;letter-spacing:0;vertical-align:middle}.data-page-header p{display:inline-block;margin:4px 0 0;color:#5f7892;font-size:13px;line-height:1.4;vertical-align:middle}.data-content{flex:1;min-height:0;padding:10px 14px 14px;overflow:hidden}.data-content-container{width:100%;height:100%;min-height:0;overflow:auto;border:1px solid rgba(15,56,96,.08);border-radius:8px;background:#ffffff;box-shadow:0 18px 45px #0f386012}.data-content-container .map-container{height:100%}@media (max-width: 900px){.data-page-header{min-height:56px;padding:8px 16px}.data-page-header h1{font-size:18px}.data-page-header p{display:none}}.dashboard-screen{--tech-blue: #4cc9ff;--tech-blue-bright: #87f7ff;--tech-cyan: #2de8ff;--tech-violet: #7f5cff;--tech-magenta: #b44cff;--tech-deep: #07154b;--tech-panel: rgba(28, 37, 117, .7);--tech-panel-soft: rgba(79, 70, 229, .28);position:relative;width:100vw;height:100vh;min-width:0;min-height:640px;display:flex;flex-direction:column;overflow:hidden;color:#f1fdff;background:radial-gradient(circle at 50% 38%,rgba(92,74,255,.42),transparent 33%),radial-gradient(circle at 12% 8%,rgba(179,47,196,.42),transparent 28%),radial-gradient(circle at 84% 12%,rgba(64,183,255,.36),transparent 30%),radial-gradient(circle at 50% 100%,rgba(31,124,255,.26),transparent 36%),linear-gradient(135deg,#27115e 0%,#07145a 42%,#06184d 100%);font-family:Microsoft YaHei,PingFang SC,sans-serif}.dashboard-screen:before,.dashboard-screen:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none}.dashboard-screen:before{background-image:linear-gradient(rgba(135,247,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(135,247,255,.12) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);animation:dashboardGridDrift 18s linear infinite}.dashboard-screen:after{background:linear-gradient(180deg,rgba(164,244,255,.1),transparent 10%,transparent 88%,rgba(126,87,255,.16)),radial-gradient(circle at 50% 1%,rgba(135,247,255,.2),transparent 30%),linear-gradient(90deg,rgba(179,76,255,.18),transparent 18%,transparent 82%,rgba(45,232,255,.16))}.dashboard-bg-orbit{position:absolute;border:1px solid rgba(120,242,255,.32);border-radius:50%;box-shadow:0 0 38px #35d7ff29;pointer-events:none}.dashboard-bg-orbit:before,.dashboard-bg-orbit:after{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:1px dashed rgba(135,247,255,.16);border-radius:inherit;content:""}.dashboard-bg-orbit:after{top:34%;right:34%;bottom:34%;left:34%;border-color:#b44cff29}.dashboard-bg-orbit-one{right:-180px;top:-240px;width:620px;height:620px;animation:dashboardSpin 36s linear infinite}.dashboard-bg-orbit-two{left:-220px;bottom:-260px;width:700px;height:700px;animation:dashboardSpin 48s linear infinite reverse}.dashboard-header{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;height:86px;padding:12px 28px 8px}.dashboard-header:before{position:absolute;left:50%;top:-10px;width:min(980px,78vw);height:98px;background:url(/dashboard-title-frame.svg) center top / 100% 100% no-repeat;box-shadow:0 0 28px #4cc9ff52,0 0 54px #7e57ff38;content:"";pointer-events:none;transform:translate(-50%)}.dashboard-header:after{position:absolute;left:7%;right:7%;top:58px;height:1px;background:linear-gradient(90deg,transparent,rgba(180,76,255,.34),rgba(135,247,255,.62),rgba(180,76,255,.34),transparent);box-shadow:0 0 12px #87f7ff61;content:"";pointer-events:none}.dashboard-title{position:relative;z-index:1;display:grid;justify-items:center;gap:6px;transform:translateY(0)}.dashboard-title strong{color:#fff;font-size:clamp(28px,2vw,38px);line-height:1;letter-spacing:0;text-shadow:0 0 10px rgba(120,242,255,.95),0 0 34px rgba(76,201,255,.85),0 0 56px rgba(180,76,255,.42)}.dashboard-title span,.dashboard-header-left,.dashboard-header-right span,.dashboard-footer{color:#d6f0ffb8;font-size:13px}.dashboard-title span{color:#beefffad;font-size:11px;letter-spacing:1.5px;line-height:1.25;padding:2px 18px;border-radius:999px;background:rgba(7,17,67,.42);box-shadow:0 0 12px #0f246c8a;text-transform:uppercase;transform:translateY(6px)}.dashboard-header-left{position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px;min-width:0;font-size:clamp(13px,1vw,20px)}.dashboard-header-left span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-system-dot{width:10px;height:10px;border-radius:50%;background:#31e29a;box-shadow:0 0 20px #31e29a;animation:dashboardPulse 1.8s ease-in-out infinite}.dashboard-header-right{position:relative;z-index:1;display:grid;justify-items:end;gap:3px}.dashboard-header-right strong{color:#fff;font-size:clamp(18px,1.45vw,28px);letter-spacing:0}.dashboard-layout{position:relative;z-index:1;display:grid;grid-template-columns:24.5% minmax(0,1fr) 24.5%;gap:16px;flex:1 1 auto;height:auto;min-height:0;padding:0 22px 12px}.dashboard-column,.dashboard-center{display:grid;gap:14px;min-height:0}.dashboard-left{grid-template-rows:1.95fr .6fr .65fr}.dashboard-right{grid-template-rows:minmax(220px,1.08fr) minmax(260px,1.22fr) minmax(220px,1fr)}.dashboard-center{grid-template-rows:minmax(0,1fr) 96px}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip,.dashboard-footer{position:relative;overflow:hidden;border:1px solid rgba(121,175,255,.38);border-radius:20px;background:radial-gradient(circle at 8% 8%,rgba(180,76,255,.18),transparent 38%),radial-gradient(circle at 96% 0%,rgba(76,201,255,.16),transparent 34%),linear-gradient(135deg,rgba(53,38,129,.78),rgba(8,24,91,.72)),rgba(10,18,74,.68);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 1px #dbf7ff2e,inset 0 0 34px #7e57ff24,inset 0 -12px 30px #4cc9ff0f,0 0 0 1px #87f7ff14,0 0 28px #4cc9ff2e,0 20px 58px #03072a61}.dashboard-panel:before,.dashboard-map-panel:before{position:absolute;left:0;right:0;top:0;height:1px;content:"";background:linear-gradient(90deg,transparent,rgba(135,247,255,.92),rgba(180,76,255,.64),transparent)}.dashboard-panel:after,.dashboard-map-panel:after{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(135,247,255,.08);border-radius:16px;content:"";pointer-events:none}.dashboard-panel:hover:before,.dashboard-map-panel:hover:before{animation:dashboardPanelSweep 1.8s ease-out}.dashboard-panel{padding:12px}.dashboard-panel-title{display:flex;align-items:center;gap:8px;margin-bottom:4px;color:#f4fbff;font-size:15px;font-weight:800;line-height:1.2;min-width:0;white-space:normal}.dashboard-panel-title:before{width:4px;height:16px;border-radius:8px;background:linear-gradient(180deg,var(--tech-blue-bright),var(--tech-violet));box-shadow:0 0 16px #87f7fff2;content:""}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-kpi-grid>div,.dashboard-bottom-strip>div{display:grid;gap:4px;padding:12px;border:1px solid rgba(135,247,255,.18);border-radius:14px;background:radial-gradient(circle at 85% 0%,rgba(180,76,255,.16),transparent 34%),linear-gradient(135deg,rgba(65,89,224,.22),rgba(16,29,98,.68)),rgba(20,32,104,.68)}.dashboard-kpi-grid strong,.dashboard-bottom-strip strong{color:#fff;font-size:clamp(24px,2vw,34px);line-height:1;text-shadow:0 0 20px rgba(135,247,255,.72)}.dashboard-kpi-grid span,.dashboard-bottom-strip span{color:#d2ecffad;font-size:12px}.dashboard-weather{display:grid;grid-template-rows:auto auto auto minmax(0,auto) auto;gap:6px;min-height:0}.dashboard-weather-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:8px}.dashboard-weather-temp,.dashboard-weather-aqi{position:relative;overflow:hidden;min-height:30px;padding:3px 5px;border:1px solid rgba(135,247,255,.22);border-radius:16px;display:flex;justify-content:space-between;background:radial-gradient(circle at 80% 12%,rgba(135,247,255,.2),transparent 36%),radial-gradient(circle at 10% 100%,rgba(180,76,255,.18),transparent 42%),linear-gradient(135deg,rgba(65,89,224,.3),rgba(13,25,88,.74))}.dashboard-weather-temp:after,.dashboard-weather-aqi:after{position:absolute;right:-18px;bottom:-22px;width:64px;height:64px;border:1px solid rgba(135,247,255,.28);border-radius:50%;content:"";animation:dashboardPulse 2.8s ease-in-out infinite}.dashboard-weather-temp strong,.dashboard-weather-aqi strong{display:block;color:#fff;font-size:clamp(20px,1.1vw,24px);line-height:1;text-shadow:0 0 24px rgba(135,247,255,.78)}.dashboard-weather-temp span,.dashboard-weather-aqi span,.dashboard-weather-aqi em{color:#e0f9ffc7;font-style:normal;font-size:12px}.dashboard-weather-aqi em{display:inline-flex;margin-top:4px;padding:2px 7px;border-radius:999px;color:#001d31;background:linear-gradient(90deg,#87f7ff,#a78bfa);font-weight:800}.dashboard-weather-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.dashboard-weather-meta span{overflow:hidden;padding:3px 7px;border:1px solid rgba(135,247,255,.13);border-radius:10px;color:#e0f6ffc7;background:rgba(25,34,110,.46);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.dashboard-pollutant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dashboard-pollutant-grid>div{display:grid;gap:1px;padding:6px 7px;border:1px solid rgba(135,247,255,.15);border-radius:10px;background:linear-gradient(135deg,rgba(135,247,255,.11),rgba(126,87,255,.11),rgba(12,25,88,.56))}.dashboard-pollutant-grid span,.dashboard-pollutant-grid em{color:#d2ecffad;font-size:9.5px;font-style:normal}.dashboard-pollutant-grid strong{color:#fff;font-size:16px;line-height:1}.dashboard-weather-device-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.dashboard-weather-device-strip span,.dashboard-weather-error{padding:4px 8px;border:1px solid rgba(135,247,255,.14);border-radius:10px;color:#e0f6ffbd;background:rgba(255,255,255,.045);font-size:10px}.dashboard-weather-device-strip b{margin-left:6px;color:#fff;font-size:14px}.dashboard-weather-error{display:grid;gap:6px}.dashboard-weather-error strong{color:#ffd166}.dashboard-ring-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;align-items:center}.dashboard-gauge{display:grid;width:136px;height:136px;place-items:center;border-radius:50%;box-shadow:0 0 28px #31e29a2e}.dashboard-gauge>div{display:grid;width:96px;height:96px;place-items:center;border-radius:50%;background:#061827}.dashboard-gauge strong{color:#fff;font-size:25px}.dashboard-gauge span{margin-top:-18px;color:#d2ecffad;font-size:12px}.dashboard-type-list{display:grid;gap:8px}.dashboard-type-list>div,.dashboard-rank-item,.dashboard-alarm-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(135,247,255,.08);border-radius:12px;background:rgba(255,255,255,.055)}.dashboard-type-list span,.dashboard-map-legend span{display:inline-flex;align-items:center;gap:7px;color:#ddf4ffd1}.dashboard-type-list i,.dashboard-map-legend i{width:9px;height:9px;border-radius:50%;box-shadow:0 0 12px currentColor}.dashboard-map-legend i.is-online{color:#31e29a;background:#31e29a}.dashboard-map-legend i.is-offline{color:#ff3b30;background:#ff3b30}.dashboard-alarm-list{display:grid;gap:8px}.dashboard-alarm-item{grid-template-columns:26px minmax(0,1fr) auto}.dashboard-alarm-item b,.dashboard-rank-item b{color:#ffd166}.dashboard-alarm-item span,.dashboard-rank-item span{overflow:hidden;color:#f2fbff;text-overflow:ellipsis;white-space:nowrap}.dashboard-alarm-item em{color:#ff6b7a;font-style:normal;font-size:12px}.dashboard-map-panel{display:grid;grid-template-rows:42px minmax(0,1fr) 42px;padding:12px;border-radius:26px}.dashboard-map-toolbar,.dashboard-map-legend{display:flex;align-items:center;justify-content:space-between;color:#def6ffc7;font-size:13px}.dashboard-amap{position:relative;overflow:hidden;border:1px solid rgba(135,247,255,.34);border-radius:22px;background:radial-gradient(circle at 50% 48%,rgba(126,87,255,.3),transparent 36%),radial-gradient(circle at 50% 78%,rgba(76,201,255,.18),transparent 42%),#07144a;box-shadow:inset 0 0 58px #7e57ff33,inset 0 0 46px #1ca4ff2e,0 0 36px #4cc9ff29}.dashboard-amap-real{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;background:#07144a}.dashboard-amap-real .amap-marker{z-index:20!important}.dashboard-amap-real .amap-logo,.dashboard-amap-real .amap-copyright{opacity:.5}.dashboard-amap-device-marker{position:relative;z-index:20;width:18px;height:18px;color:#31e29a;border-radius:50%;cursor:pointer;transform:translateZ(0)}.dashboard-amap-device-marker.is-offline{color:#ff3b30;filter:drop-shadow(0 0 8px rgba(255,59,48,.72))}.dashboard-amap-device-marker.is-offline .dashboard-amap-device-core{box-shadow:0 0 10px #ff3b30,0 0 22px #ff3b30eb,0 0 34px #ff5c7a8a}.dashboard-amap-device-marker.is-offline:before,.dashboard-amap-device-marker.is-offline:after{background:#ff3b30;border-color:#ff3b30;opacity:.38}.dashboard-amap-device-core{position:absolute;top:5px;right:5px;bottom:5px;left:5px;z-index:2;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor,0 0 18px currentColor}.dashboard-amap-device-marker:before,.dashboard-amap-device-marker:after{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;content:"";background:currentColor;opacity:.2;transform:scale(.72);animation:dashboardAmapDevicePulse 2.4s ease-out infinite;will-change:opacity,transform}.dashboard-amap-device-marker:after{top:-7px;right:-7px;bottom:-7px;left:-7px;border:1px solid currentColor;background:transparent;opacity:.3;animation-duration:2.9s}.dashboard-amap-device-tooltip{position:absolute;left:50%;bottom:22px;z-index:5;display:grid;min-width:128px;gap:2px;padding:7px 9px;border:1px solid color-mix(in srgb,currentColor,#ffffff 26%);border-radius:7px;color:#fff;background:linear-gradient(135deg,rgba(8,50,96,.96),rgba(4,20,46,.9));box-shadow:0 0 20px color-mix(in srgb,currentColor,transparent 62%);opacity:0;pointer-events:none;transform:translate(-50%,8px) scale(.96);transition:opacity .16s ease,transform .16s ease}.dashboard-amap-device-marker:hover .dashboard-amap-device-tooltip{opacity:1;transform:translate(-50%) scale(1)}.dashboard-amap-device-tooltip b,.dashboard-amap-device-tooltip small{overflow:hidden;max-width:190px;text-overflow:ellipsis;white-space:nowrap}.dashboard-amap-device-tooltip b{font-size:12px}.dashboard-amap-device-tooltip small{color:#def6ffb8;font-size:10px}.dashboard-amap-error{position:absolute;left:50%;top:50%;z-index:8;padding:10px 14px;border:1px solid rgba(255,92,122,.42);border-radius:10px;color:#ffd9df;background:rgba(47,7,34,.72);font-size:13px;transform:translate(-50%,-50%)}.dashboard-amap-loading{position:absolute;left:50%;top:50%;z-index:8;padding:10px 14px;border:1px solid rgba(135,247,255,.36);border-radius:10px;color:#def6ffe0;background:rgba(8,24,91,.64);font-size:13px;transform:translate(-50%,-50%)}@keyframes dashboardAmapDevicePulse{0%{opacity:.38;transform:scale(.42)}78%,to{opacity:0;transform:scale(2.45)}}.dashboard-amap:before,.dashboard-amap:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none}.dashboard-amap:before{z-index:2;opacity:.26;background:linear-gradient(120deg,transparent 0 34%,rgba(135,247,255,.12) 43%,transparent 53%),radial-gradient(circle at 50% 50%,rgba(126,87,255,.24),transparent 36%);mix-blend-mode:screen}.dashboard-amap:after{z-index:3;opacity:.72;background:radial-gradient(circle at 50% 44%,transparent 0 18%,rgba(75,56,173,.1) 42%,rgba(3,9,43,.3) 100%),linear-gradient(180deg,rgba(76,201,255,.12),rgba(14,18,81,.18))}.dashboard-amap-tile{position:absolute;z-index:1;width:20.2%;height:20.2%;object-fit:cover;opacity:.9;filter:saturate(1.55) contrast(1.16) brightness(.72) hue-rotate(170deg);transform:translate(-50%,-50%)}.dashboard-map-grid,.dashboard-map-scan,.dashboard-map-radar{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.dashboard-hangzhou-region{position:absolute;top:4%;right:3%;bottom:5%;left:3%;z-index:4;pointer-events:none;filter:drop-shadow(0 0 10px rgba(120,242,255,.38)) drop-shadow(0 0 28px rgba(53,215,255,.18))}.dashboard-hangzhou-region-fill{fill:url(#dashboard-region-fill);stroke:#78f2ff2e;stroke-width:.4}.dashboard-hangzhou-region-line{fill:none;stroke:#a0f8ffe6;stroke-width:.8;stroke-dasharray:3 2;animation:dashboardRegionDash 8s linear infinite}.dashboard-hangzhou-river{fill:none;stroke:#48c5ffb8;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:5 5;animation:dashboardRegionDash 5.5s linear infinite reverse}.dashboard-region-label{position:absolute;z-index:7;padding:2px 7px;border:1px solid rgba(120,242,255,.26);border-radius:999px;color:#e7fcffc7;background:rgba(5,31,67,.48);font-size:11px;line-height:1.5;pointer-events:none;transform:translate(-50%,-50%);text-shadow:0 0 8px rgba(120,242,255,.65)}.dashboard-map-grid{z-index:2;opacity:.18;background:linear-gradient(rgba(135,247,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(135,247,255,.15) 1px,transparent 1px);background-size:54px 54px;mix-blend-mode:screen}.dashboard-map-scan{display:none;z-index:3;opacity:.42;background:linear-gradient(180deg,transparent 0%,rgba(135,247,255,.26) 48%,rgba(180,76,255,.16) 52%,transparent 58%);animation:dashboardScan 4.8s linear infinite}.dashboard-map-radar{z-index:5;left:50%;top:50%;width:min(56vw,560px);height:min(56vw,560px);margin:calc(min(56vw,560px)/-2) 0 0 calc(min(56vw,560px)/-2);border:1px solid rgba(135,247,255,.22);border-radius:50%;background:conic-gradient(from 0deg,rgba(135,247,255,.34),rgba(180,76,255,.2) 12%,transparent 22%,transparent 100%),repeating-radial-gradient(circle,transparent 0 64px,rgba(135,247,255,.13) 65px 66px);filter:blur(.2px);mix-blend-mode:screen;opacity:.62;animation:dashboardRadarSpin 6.5s linear infinite}.dashboard-map-hub{position:absolute;left:50%;top:50%;z-index:7;width:58px;height:58px;border:1px solid rgba(135,247,255,.78);border-radius:50%;box-shadow:0 0 24px #87f7ffa3,0 0 52px #7e57ff57,inset 0 0 24px #7e57ff5c;transform:translate(-50%,-50%);animation:dashboardHubBreath 2.4s ease-in-out infinite}.dashboard-map-hub span{position:absolute;top:17px;right:17px;bottom:17px;left:17px;border-radius:50%;background:#dffcff;box-shadow:0 0 22px #78f2fff2}.dashboard-map-flow-line{position:absolute;z-index:6;height:1px;border-radius:999px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--flow-color),#ffffff 34%),transparent);box-shadow:0 0 12px var(--flow-color);opacity:.48;pointer-events:none;transform-origin:left center}.dashboard-map-flow-line:after{position:absolute;top:-2px;left:0;width:36%;height:5px;border-radius:999px;background:linear-gradient(90deg,transparent,#ffffff,var(--flow-color),transparent);content:"";filter:blur(.5px);animation:dashboardFlowMove 2.7s linear infinite}.dashboard-map-point{position:absolute;z-index:8;width:13px;height:13px;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:var(--point-color);box-shadow:0 0 10px var(--point-color),0 0 26px var(--point-color);transform:translate(-50%,-50%);animation:dashboardPointTwinkle 1.7s ease-in-out infinite}.dashboard-map-point-tip{position:absolute;left:50%;bottom:18px;display:grid;min-width:110px;gap:2px;padding:7px 9px;border:1px solid color-mix(in srgb,var(--point-color),#ffffff 26%);border-radius:7px;color:#fff;background:linear-gradient(135deg,rgba(8,50,96,.94),rgba(4,20,46,.86));box-shadow:0 0 20px color-mix(in srgb,var(--point-color),transparent 62%);opacity:0;pointer-events:none;transform:translate(-50%,8px) scale(.96);transition:opacity .16s ease,transform .16s ease}.dashboard-map-point-tip b,.dashboard-map-point-tip small{overflow:hidden;max-width:170px;text-overflow:ellipsis;white-space:nowrap}.dashboard-map-point-tip b{font-size:12px}.dashboard-map-point-tip small{color:#def6ffb8;font-size:10px}.dashboard-map-point:hover{z-index:12}.dashboard-map-point:hover .dashboard-map-point-tip{opacity:1;transform:translate(-50%) scale(1)}.dashboard-map-point:after{position:absolute;top:-11px;right:-11px;bottom:-11px;left:-11px;border:1px solid var(--point-color);border-radius:50%;content:"";animation:dashboardPointPulse 1.45s ease-out infinite}.dashboard-map-camera{position:absolute;z-index:9;width:18px;height:14px;border:2px solid #071827;border-radius:4px;background:#42f5ff;box-shadow:0 0 20px #42f5ffcc}.dashboard-map-camera:after{position:absolute;right:-8px;top:3px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:8px solid currentColor;color:inherit;content:""}.dashboard-map-camera.is-offline{background:#ff5c7a;box-shadow:0 0 20px #ff5c7abf}.dashboard-map-legend{justify-content:center;gap:16px;flex-wrap:wrap}.dashboard-bottom-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px}.dashboard-aqi-card{display:grid;grid-template-columns:82px 60px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:8px 0 10px}.dashboard-aqi-card strong{display:block;font-size:42px;line-height:1}.dashboard-aqi-card span{color:#ddf4ffb8;font-size:12px}.dashboard-aqi-card em{font-size:22px;font-weight:800;font-style:normal}.dashboard-mini-line{width:100%;height:48px;overflow:visible}.dashboard-station-panel,.dashboard-visual-panel,.dashboard-device-structure{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.dashboard-station-rank{display:grid;align-content:start;gap:clamp(7px,.72vh,10px);min-height:0;overflow:hidden}.dashboard-station-rank-item{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) minmax(48px,auto);align-items:center;gap:8px;min-height:clamp(34px,4.4vh,48px);padding:7px 10px 9px;overflow:hidden;border:1px solid rgba(135,247,255,.12);border-radius:11px;background:linear-gradient(90deg,rgba(49,226,154,.11),transparent 58%),rgba(255,255,255,.052)}.dashboard-station-rank-item:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(100deg,transparent 0 38%,rgba(135,247,255,.16),transparent 62% 100%);opacity:0;transform:translate(-70%);animation:dashboardDataSweep 5.4s ease-in-out infinite}.dashboard-station-rank-item b{position:relative;z-index:1;color:#ffd166;font-size:clamp(13px,.8vw,16px)}.dashboard-station-rank-item div{position:relative;z-index:1;display:grid;gap:2px;min-width:0}.dashboard-station-rank-item span,.dashboard-station-rank-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-station-rank-item span{color:#f2fbff;font-size:clamp(12px,.76vw,15px)}.dashboard-station-rank-item small{color:#ddf4ff8f;font-size:clamp(10px,.58vw,12px)}.dashboard-station-rank-item em{position:relative;z-index:1;color:#31e29a;font-style:normal;font-size:clamp(13px,.82vw,16px);font-weight:800;text-align:right}.dashboard-station-rank-item>i{position:absolute;left:0;bottom:0;height:2px;border-radius:999px;background:linear-gradient(90deg,#31e29a,#26d7ff);box-shadow:0 0 12px #31e29ab8}.dashboard-energy-list{display:grid;gap:clamp(7px,.72vh,10px);min-height:0}.dashboard-energy-row{display:grid;grid-template-columns:minmax(72px,.7fr) minmax(90px,1fr) minmax(86px,1fr);align-items:center;gap:9px;min-width:0;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07)}.dashboard-energy-row:last-child{border-bottom:0}.dashboard-energy-row>div:first-child{display:grid;min-width:0}.dashboard-energy-row span{color:#ddf4ffad;font-size:clamp(10px,.62vw,12px)}.dashboard-energy-row strong{overflow:hidden;color:#fff;font-size:clamp(14px,.9vw,18px);line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.dashboard-energy-track{position:relative;height:8px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.08)}.dashboard-energy-track:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.24),transparent);transform:translate(-100%);animation:dashboardDataSweep 3.2s ease-in-out infinite}.dashboard-energy-track i{position:absolute;inset:0 auto 0 0;border-radius:inherit;box-shadow:0 0 14px currentColor}.dashboard-device-structure{gap:10px}.dashboard-structure-orb{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr);align-items:center;gap:12px;min-width:0}.dashboard-structure-orb .dashboard-gauge{width:clamp(86px,7vw,118px);height:clamp(86px,7vw,118px)}.dashboard-structure-orb .dashboard-gauge>div{width:68%;height:68%}.dashboard-structure-orb .dashboard-gauge strong{font-size:clamp(16px,1vw,20px)}.dashboard-structure-orb .dashboard-gauge span{margin-top:-10px;font-size:clamp(10px,.58vw,12px)}.dashboard-structure-orb>div:last-child{display:grid;gap:4px}.dashboard-structure-orb>div:last-child strong{color:#fff;font-size:clamp(28px,2vw,42px);line-height:1;text-shadow:0 0 24px rgba(38,215,255,.68)}.dashboard-structure-orb>div:last-child span{color:#ddf4ffa8;font-size:clamp(11px,.68vw,13px)}.dashboard-type-bars{display:grid;gap:8px}.dashboard-type-bars>div{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 10px 10px;overflow:hidden;border:1px solid rgba(135,247,255,.1);border-radius:10px;background:rgba(255,255,255,.052)}.dashboard-type-bars span{display:inline-flex;align-items:center;min-width:0;gap:7px;overflow:hidden;color:#ddf4ffd1;font-size:clamp(11px,.68vw,13px);text-overflow:ellipsis;white-space:nowrap}.dashboard-type-bars span i{flex:0 0 auto;width:8px;height:8px;border-radius:50%;box-shadow:0 0 12px currentColor}.dashboard-type-bars b{color:#fff;font-size:clamp(12px,.76vw,15px)}.dashboard-type-bars em{position:absolute;left:0;bottom:0;height:2px;border-radius:999px;box-shadow:0 0 12px #87f7ff75}.dashboard-metric-row{display:grid;grid-template-columns:58px 78px minmax(0,1fr);gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07)}.dashboard-metric-row:last-child{border-bottom:0}.dashboard-metric-row span{color:#ddf4ffbf}.dashboard-metric-row strong{color:#fff;font-size:18px}.dashboard-rank-item{grid-template-columns:28px minmax(0,1fr) 58px;margin-bottom:8px}.dashboard-rank-item em{color:#31e29a;font-style:normal;text-align:right}.dashboard-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-video-cell{display:grid;gap:6px}.dashboard-video-placeholder{position:relative;display:grid;min-height:86px;place-items:center;overflow:hidden;border:1px solid rgba(120,242,255,.32);border-radius:8px;background:radial-gradient(circle at 50% 50%,rgba(120,242,255,.28),transparent 34%),linear-gradient(135deg,#08284f,#0b4671)}.dashboard-video-placeholder span{width:42px;height:28px;border:2px solid var(--tech-blue-bright);border-radius:6px;box-shadow:0 0 18px #78f2ffc7}.dashboard-video-placeholder b{position:absolute;right:8px;top:7px;color:#31e29a;font-size:12px}.dashboard-video-cell small{overflow:hidden;color:#ddf4ffb3;text-overflow:ellipsis;white-space:nowrap}.dashboard-empty-line{padding:14px 10px;color:#ddf4ff9e;text-align:center}.dashboard-footer{position:relative;left:auto;right:auto;bottom:auto;z-index:4;display:flex;flex:0 0 auto;align-items:center;gap:12px;height:30px;margin:0 22px 8px;padding:0 14px}.dashboard-footer span{width:8px;height:8px;border-radius:50%}.dashboard-footer span.is-ok{background:#31e29a;box-shadow:0 0 12px #31e29a}.dashboard-footer span.is-warning{background:#ffd166;box-shadow:0 0 12px #ffd166}.dashboard-footer b{color:#eaffff}.dashboard-footer em{font-style:normal}@keyframes dashboardPulse{0%,to{opacity:.65;transform:scale(.86)}50%{opacity:1;transform:scale(1.1)}}@keyframes dashboardPointPulse{0%{opacity:.9;transform:scale(.45)}to{opacity:0;transform:scale(2.55)}}@keyframes dashboardScan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes dashboardSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dashboardGridDrift{0%{background-position:0 0,0 0}to{background-position:42px 42px,42px 42px}}@keyframes dashboardMapGrid{0%{background-position:0 0,0 0;opacity:.62}50%{opacity:1}to{background-position:54px 54px,54px 54px;opacity:.62}}@keyframes dashboardMapGlow{0%,to{opacity:.42;transform:translate(-2%)}50%{opacity:.9;transform:translate(2%)}}@keyframes dashboardRadarSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dashboardHubBreath{0%,to{opacity:.76;transform:translate(-50%,-50%) scale(.92)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}@keyframes dashboardFlowMove{0%{transform:translate(-16%);opacity:0}14%{opacity:1}86%{opacity:1}to{transform:translate(260%);opacity:0}}@keyframes dashboardPanelSweep{0%{transform:translate(-36%);opacity:.5}to{transform:translate(36%);opacity:1}}@keyframes dashboardDataSweep{0%,58%{opacity:0;transform:translate(-100%)}72%{opacity:1}to{opacity:0;transform:translate(130%)}}@keyframes dashboardRankScroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}@keyframes dashboardRankSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes dashboardRadarSweepSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes dashboardRadarNodePulse{0%,to{transform:translate(-50%,-50%) scale(.92);filter:brightness(.9)}50%{transform:translate(-50%,-50%) scale(1.08);filter:brightness(1.35)}}@keyframes dashboardRiskCorePulse{0%,to{box-shadow:0 0 24px #26d7ff3d,inset 0 0 24px #7e57ff38}50%{box-shadow:0 0 42px #31e29a57,inset 0 0 32px #26d7ff47}}@keyframes dashboardAlarmSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dashboardTechSweepLine{0%{transform:translateY(-120%);opacity:0}12%,70%{opacity:1}to{transform:translateY(120%);opacity:0}}@keyframes dashboardPanelGlowBreath{0%,to{box-shadow:inset 0 1px #dbf7ff2e,inset 0 0 34px #7e57ff24,0 0 28px #4cc9ff2e}50%{box-shadow:inset 0 1px #dbf7ff3d,inset 0 0 42px #26d7ff2e,0 0 34px #87f7ff38}}@keyframes dashboardCornerTrace{0%,to{opacity:.35;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.55)}}@keyframes dashboardPointTwinkle{0%,to{filter:brightness(.92)}50%{filter:brightness(1.45)}}@keyframes dashboardRegionDash{0%{stroke-dashoffset:0}to{stroke-dashoffset:-40}}.dashboard-header{height:92px}.dashboard-layout{height:calc(100vh - 132px)}.dashboard-screen,.dashboard-screen *{box-sizing:border-box}.dashboard-layout,.dashboard-column,.dashboard-center,.dashboard-panel,.dashboard-map-panel{min-width:0}.dashboard-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(520px,1.8fr) minmax(280px,.9fr);gap:clamp(10px,1vw,18px);padding-inline:clamp(10px,1.1vw,20px);padding-bottom:clamp(8px,1vh,14px);overflow:hidden}.dashboard-column{display:grid;align-content:start;gap:clamp(10px,1vh,16px);min-height:0}.dashboard-center{min-height:0}.dashboard-panel,.dashboard-map-panel{padding:clamp(12px,1.1vw,18px);overflow:hidden}.dashboard-panel-title{min-height:24px;font-size:clamp(15px,.95vw,18px);line-height:1.25}.dashboard-weather{display:grid;grid-template-rows:auto minmax(0,auto) auto auto auto;gap:clamp(8px,.75vw,12px)}.dashboard-weather-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,.75vw,12px)}.dashboard-weather-temp,.dashboard-weather-aqi{min-width:0;min-height:clamp(86px,8.6vh,132px);padding:clamp(10px,1vw,16px)}.dashboard-weather-temp strong,.dashboard-weather-aqi strong{font-size:clamp(20px,1.1vw,28px);line-height:.95}.dashboard-weather-temp span,.dashboard-weather-aqi span,.dashboard-weather-aqi em{font-size:clamp(12px,.8vw,15px);line-height:1.3}.dashboard-weather-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,.55vw,9px)}.dashboard-weather-meta span{min-width:0;min-height:clamp(26px,2.7vh,34px);padding:0 clamp(8px,.8vw,12px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(12px,.72vw,14px)}.dashboard-pollutant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,.6vw,10px)}.dashboard-pollutant-grid>div{min-width:0;min-height:clamp(50px,5.1vh,70px);padding:clamp(8px,.7vw,12px)}.dashboard-pollutant-grid span,.dashboard-pollutant-grid em{font-size:clamp(11px,.68vw,13px);line-height:1.2}.dashboard-pollutant-grid strong{font-size:clamp(17px,1.25vw,24px);line-height:1.1}.dashboard-weather-device-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,.6vw,10px)}.dashboard-weather-device-strip span,.dashboard-weather-error{min-width:0;font-size:clamp(12px,.72vw,14px)}@media (max-width: 1440px){.dashboard-layout{grid-template-columns:minmax(250px,.82fr) minmax(460px,1.7fr) minmax(250px,.82fr);gap:10px;padding-inline:10px}.dashboard-panel,.dashboard-map-panel{padding:12px}.dashboard-weather-main,.dashboard-weather-meta,.dashboard-weather-device-strip{gap:8px}.dashboard-pollutant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1180px){.dashboard-header{height:82px}.dashboard-layout{height:calc(100vh - 118px);grid-template-columns:minmax(260px,.9fr) minmax(420px,1.45fr);overflow-y:auto}.dashboard-right{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;align-items:stretch}.dashboard-weather-main,.dashboard-weather-meta,.dashboard-weather-device-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.dashboard-header{height:76px}.dashboard-layout{height:auto;min-height:calc(100vh - 104px);grid-template-columns:1fr;overflow-y:auto}.dashboard-column,.dashboard-right{grid-template-columns:1fr;grid-template-rows:none}.dashboard-weather-main,.dashboard-weather-meta,.dashboard-pollutant-grid,.dashboard-weather-device-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.dashboard-layout{padding-inline:8px;gap:8px}.dashboard-panel,.dashboard-map-panel{padding:10px}.dashboard-weather-main,.dashboard-weather-meta,.dashboard-pollutant-grid,.dashboard-weather-device-strip{grid-template-columns:1fr}.dashboard-weather-temp,.dashboard-weather-aqi{min-height:78px}.dashboard-aqi-card,.dashboard-energy-row,.dashboard-structure-orb{grid-template-columns:1fr}.dashboard-footer{flex-wrap:wrap;align-content:center;height:auto;min-height:34px;row-gap:3px}}@media (max-height: 820px) and (min-width: 1181px){.dashboard-layout{gap:8px;padding-bottom:8px}.dashboard-column{gap:8px}.dashboard-panel,.dashboard-map-panel{padding-block:10px}.dashboard-weather-temp,.dashboard-weather-aqi{min-height:78px}.dashboard-pollutant-grid>div{min-height:44px}}.dashboard-weather{gap:clamp(6px,.55vw,9px)}.dashboard-weather-main{gap:clamp(6px,.58vw,10px)}.dashboard-weather-temp,.dashboard-weather-aqi{display:grid;align-content:center;min-height:clamp(66px,6.2vh,92px);padding:clamp(4px,.45vw,11px) clamp(5px,.5vw,14px)}.dashboard-weather-temp strong,.dashboard-weather-aqi strong{font-size:clamp(24px,1.45vw,28px);line-height:.92}.dashboard-weather-temp span,.dashboard-weather-aqi span,.dashboard-weather-aqi em{font-size:clamp(11px,.68vw,13px);line-height:1.15}.dashboard-weather-aqi em{width:fit-content;margin-top:2px;padding:1px 6px}.dashboard-weather-meta{gap:clamp(4px,.42vw,7px)}.dashboard-weather-meta span{min-height:clamp(22px,2.15vh,28px);padding-inline:clamp(7px,.62vw,10px);font-size:clamp(11px,.64vw,13px)}.dashboard-pollutant-grid{gap:clamp(5px,.46vw,8px)}.dashboard-pollutant-grid>div{display:grid;align-content:center;min-height:clamp(40px,4vh,54px);padding:clamp(6px,.48vw,9px) clamp(8px,.58vw,10px)}.dashboard-pollutant-grid>div p{display:flex;align-items:baseline;min-width:0;margin:1px 0 0;gap:3px;white-space:nowrap}.dashboard-pollutant-grid span{font-size:clamp(10px,.58vw,12px);line-height:1.1}.dashboard-pollutant-grid strong{font-size:clamp(17px,1.15vw,22px);line-height:1}.dashboard-pollutant-grid em{font-size:clamp(9px,.5vw,11px);line-height:1}@media (max-width: 1440px){.dashboard-weather-temp,.dashboard-weather-aqi{min-height:64px}.dashboard-weather-temp strong,.dashboard-weather-aqi strong{font-size:clamp(20px,1.1vw,30px)}.dashboard-pollutant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 560px){.dashboard-weather-main{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-weather-temp,.dashboard-weather-aqi{min-height:60px}.dashboard-weather-temp strong,.dashboard-weather-aqi strong{font-size:clamp(18px,5vw,26px)}.dashboard-pollutant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-left{grid-template-rows:minmax(390px,1.35fr) minmax(210px,.78fr) minmax(150px,.52fr)}.dashboard-weather{min-height:clamp(390px,41vh,500px)}.dashboard-alarm{min-height:0}.dashboard-alarm-list{gap:6px;max-height:clamp(128px,16vh,178px);overflow:hidden auto;padding-right:2px}.dashboard-alarm-item{min-height:34px;padding:6px 8px;border-radius:10px}.dashboard-alarm-item b,.dashboard-alarm-item span,.dashboard-alarm-item em{font-size:11px}.dashboard-alarm-item em{padding-left:4px;white-space:nowrap}@media (max-width: 1440px){.dashboard-left{grid-template-rows:minmax(380px,1.38fr) minmax(190px,.72fr) minmax(140px,.5fr)}.dashboard-weather{min-height:clamp(380px,43vh,470px)}.dashboard-alarm-list{max-height:clamp(112px,15vh,150px)}}@media (max-height: 820px) and (min-width: 901px){.dashboard-left{grid-template-rows:minmax(360px,1.42fr) minmax(170px,.68fr) minmax(124px,.48fr)}.dashboard-weather{min-height:clamp(360px,45vh,430px)}.dashboard-alarm-list{max-height:clamp(96px,14vh,126px)}.dashboard-alarm-item{min-height:30px;padding-block:5px}}@media (max-width: 900px){.dashboard-left{grid-template-rows:none}.dashboard-weather{min-height:auto}.dashboard-alarm-list{max-height:none;overflow:visible}}.dashboard-left{grid-template-rows:minmax(330px,1.12fr) minmax(210px,.82fr) minmax(150px,.56fr)}.dashboard-weather{min-height:clamp(330px,36vh,410px);gap:clamp(4px,.4vw,7px)}.dashboard-weather-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dashboard-weather-temp,.dashboard-weather-aqi{display:grid;grid-template-columns:minmax(0,auto) minmax(54px,1fr);align-items:center;align-content:center;min-height:clamp(42px,4.6vh,58px);padding:5px 8px;gap:7px}.dashboard-weather-temp strong,.dashboard-weather-aqi strong{font-size:clamp(18px,1.05vw,22px);line-height:1;white-space:nowrap}.dashboard-weather-temp span,.dashboard-weather-aqi em{justify-self:end;max-width:100%;margin-top:0;font-size:clamp(10px,.58vw,12px);line-height:1.15;text-align:right;white-space:normal}.dashboard-weather-aqi em{padding:1px 6px}.dashboard-weather-meta{gap:4px}.dashboard-weather-meta span{min-height:20px;padding-block:2px;font-size:clamp(10px,.56vw,12px)}.dashboard-pollutant-grid{gap:5px}.dashboard-pollutant-grid>div{min-height:clamp(34px,3.5vh,46px);padding:5px 7px}.dashboard-pollutant-grid strong{font-size:clamp(15px,.95vw,18px)}@media (max-width: 1440px){.dashboard-left{grid-template-rows:minmax(318px,1.14fr) minmax(190px,.76fr) minmax(140px,.54fr)}.dashboard-weather{min-height:clamp(318px,38vh,390px)}.dashboard-weather-temp,.dashboard-weather-aqi{min-height:42px}}.dashboard-title span{transform:translateY(12px)}.dashboard-amap.is-moving:before,.dashboard-amap.is-moving:after,.dashboard-amap.is-moving .dashboard-map-grid{opacity:.08;transition:opacity .14s ease}.dashboard-amap.is-moving .dashboard-amap-device-marker:before,.dashboard-amap.is-moving .dashboard-amap-device-marker:after{animation-play-state:paused;opacity:.12}.dashboard-screen{display:flex;flex-direction:column}.dashboard-layout{flex:1 1 auto;min-height:0;overflow:hidden}.dashboard-footer{position:relative;left:auto;right:auto;bottom:auto;flex:0 0 auto;min-width:0;margin:0 clamp(10px,1.1vw,22px) clamp(6px,.7vh,8px)}.dashboard-footer b,.dashboard-footer em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 1281px){.dashboard-screen{height:100vh;overflow:hidden}.dashboard-layout{grid-template-columns:minmax(270px,.82fr) minmax(560px,1.9fr) minmax(300px,.9fr);height:auto}}@media (max-width: 1280px){.dashboard-screen{height:auto;min-height:100vh;overflow:auto}.dashboard-header{grid-template-columns:minmax(0,1fr) minmax(220px,1.25fr) minmax(0,1fr);height:auto;min-height:78px;padding-inline:14px}.dashboard-title strong{font-size:clamp(22px,3vw,32px)}.dashboard-layout{grid-template-columns:minmax(280px,.9fr) minmax(430px,1.35fr);height:auto;min-height:0;overflow:visible;padding-bottom:12px}.dashboard-center{grid-template-rows:minmax(420px,58vh) auto}.dashboard-right{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;align-items:stretch}.dashboard-station-panel,.dashboard-visual-panel,.dashboard-device-structure{min-height:260px}.dashboard-footer{flex-wrap:wrap;height:auto;min-height:34px;padding-block:6px}}@media (max-width: 900px){.dashboard-screen{min-height:100vh}.dashboard-header{grid-template-columns:1fr;justify-items:center;gap:6px}.dashboard-header-left,.dashboard-header-right{justify-items:center;text-align:center}.dashboard-layout{grid-template-columns:1fr;gap:10px;padding-inline:10px}.dashboard-left,.dashboard-right,.dashboard-center{grid-template-columns:1fr;grid-template-rows:none}.dashboard-center{grid-template-rows:minmax(360px,58vh) auto}.dashboard-right{grid-column:auto}.dashboard-bottom-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-aqi-card,.dashboard-energy-row,.dashboard-structure-orb{grid-template-columns:1fr}.dashboard-energy-row .dashboard-mini-line{height:34px}}@media (max-width: 560px){.dashboard-center{grid-template-rows:minmax(320px,54vh) auto}.dashboard-map-panel{grid-template-rows:auto minmax(0,1fr) auto}.dashboard-map-toolbar,.dashboard-map-legend,.dashboard-footer{justify-content:center;text-align:center}.dashboard-bottom-strip{grid-template-columns:1fr}.dashboard-station-rank-item{grid-template-columns:24px minmax(0,1fr) minmax(42px,auto);padding-inline:8px}}.dashboard-station-panel{position:relative;grid-template-rows:auto minmax(0,1fr);min-height:0}.dashboard-station-rank{position:relative;min-height:0;overflow:hidden;padding-block:2px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%)}.dashboard-station-rank:before,.dashboard-station-rank:after{position:absolute;left:0;right:0;z-index:2;height:24px;content:"";pointer-events:none}.dashboard-station-rank:before{top:0;background:linear-gradient(180deg,rgba(13,25,88,.92),transparent)}.dashboard-station-rank:after{bottom:0;background:linear-gradient(0deg,rgba(13,25,88,.92),transparent)}.dashboard-station-rank-track{display:grid;gap:clamp(6px,.62vh,9px)}.dashboard-station-rank.is-scrollable .dashboard-station-rank-track{animation:dashboardRankScroll 18s linear infinite}.dashboard-station-rank.is-scrollable:hover .dashboard-station-rank-track{animation-play-state:paused}.dashboard-station-rank-item{min-height:clamp(32px,4.1vh,44px);border-color:#87f7ff2e;background:linear-gradient(90deg,rgba(38,215,255,.13),rgba(49,226,154,.06) 42%,rgba(126,87,255,.08)),rgba(5,18,70,.68);box-shadow:inset 0 1px #dbf7ff14,0 0 18px #26d7ff14}.dashboard-station-rank-item b{display:grid;width:22px;height:22px;place-items:center;border:1px solid rgba(255,209,102,.38);border-radius:50%;background:rgba(255,209,102,.08);box-shadow:0 0 12px #ffd16629}.dashboard-station-rank-item span{letter-spacing:0}.dashboard-station-rank-item em:after{margin-left:3px;color:#ddf4ff80;font-size:10px;content:"PM2.5"}@media (min-width: 1281px){.dashboard-layout{grid-template-columns:minmax(270px,.84fr) minmax(560px,1.92fr) minmax(300px,.92fr);align-items:stretch}.dashboard-left{grid-template-rows:minmax(300px,1fr) minmax(176px,.58fr) minmax(120px,.38fr);min-height:0}.dashboard-right{grid-template-rows:minmax(214px,.98fr) minmax(238px,1.08fr) minmax(178px,.78fr);min-height:0}.dashboard-alarm,.dashboard-device-structure{min-height:0}.dashboard-alarm-list{max-height:none;min-height:0;overflow:hidden}.dashboard-device-structure{overflow:hidden}.dashboard-type-bars{gap:6px;min-height:0;overflow:hidden}.dashboard-type-bars>div{padding-block:6px 8px}}@media (max-height: 820px) and (min-width: 1281px){.dashboard-layout{gap:8px;padding-bottom:8px}.dashboard-left{grid-template-rows:minmax(280px,1fr) minmax(150px,.5fr) minmax(104px,.34fr)}.dashboard-right{grid-template-rows:minmax(190px,.92fr) minmax(216px,1fr) minmax(148px,.66fr)}.dashboard-station-rank-track,.dashboard-energy-list,.dashboard-type-bars{gap:5px}.dashboard-station-rank-item{min-height:30px;padding-block:5px 7px}.dashboard-structure-orb{grid-template-columns:minmax(74px,auto) minmax(0,1fr);gap:8px}.dashboard-structure-orb .dashboard-gauge{width:78px;height:78px}}@media (max-width: 1280px){.dashboard-station-rank{max-height:260px}.dashboard-left,.dashboard-right{gap:10px}}@media (max-width: 900px){.dashboard-station-rank{max-height:300px}.dashboard-alarm-list{max-height:220px;overflow:hidden auto}.dashboard-device-structure{min-height:auto}}.dashboard-online{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.dashboard-device-pie-panel{display:grid;grid-template-rows:minmax(150px,1fr) auto;min-height:0;gap:8px}.dashboard-device-pie-chart{width:100%;min-width:0;height:clamp(150px,20vh,230px);min-height:0}.dashboard-device-pie-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.dashboard-device-pie-summary>div{position:relative;display:grid;gap:2px;min-width:0;padding:7px 8px;overflow:hidden;border:1px solid rgba(135,247,255,.14);border-radius:10px;background:linear-gradient(135deg,rgba(38,215,255,.12),rgba(126,87,255,.08)),rgba(255,255,255,.046)}.dashboard-device-pie-summary>div:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(105deg,transparent 0 38%,rgba(135,247,255,.18),transparent 64%);transform:translate(-100%);animation:dashboardDataSweep 4.2s ease-in-out infinite}.dashboard-device-pie-summary span{color:#ddf4ffa8;font-size:clamp(10px,.62vw,12px)}.dashboard-device-pie-summary strong{color:#fff;font-size:clamp(15px,.95vw,19px);line-height:1.1;text-shadow:0 0 14px rgba(135,247,255,.56)}.dashboard-station-rank.is-carousel .dashboard-station-rank-track{animation:dashboardRankSlideIn .52s ease-out}.dashboard-station-rank.is-scrollable .dashboard-station-rank-track{animation:none}.dashboard-station-rank-item.is-active{border-color:#31e29a6b;background:linear-gradient(90deg,rgba(49,226,154,.22),rgba(38,215,255,.11),rgba(126,87,255,.12)),rgba(5,18,70,.82);box-shadow:inset 0 1px #dbf7ff1f,0 0 20px #31e29a2e}.dashboard-station-rank-item.is-active b{color:#061827;background:linear-gradient(135deg,#ffd166,#31e29a);border-color:transparent}.dashboard-station-carousel-dots{position:absolute;left:50%;bottom:2px;z-index:3;display:flex;max-width:78%;gap:5px;transform:translate(-50%)}.dashboard-station-carousel-dots i{width:10px;height:2px;border-radius:999px;background:rgba(135,247,255,.24);box-shadow:0 0 8px #87f7ff1f}.dashboard-station-carousel-dots i.is-active{width:18px;background:#31e29a;box-shadow:0 0 10px #31e29ac7}@media (max-height: 820px) and (min-width: 1281px){.dashboard-device-pie-panel{grid-template-rows:minmax(128px,1fr) auto}.dashboard-device-pie-chart{height:clamp(128px,17vh,180px)}.dashboard-device-pie-summary>div{padding-block:5px}}@media (max-width: 900px){.dashboard-device-pie-chart{height:240px}}@media (max-width: 560px){.dashboard-device-pie-summary{grid-template-columns:1fr}}.dashboard-visual-panel,.dashboard-risk-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.dashboard-metric-radar{position:relative;min-height:clamp(138px,18vh,220px);overflow:hidden;border:1px solid rgba(135,247,255,.14);border-radius:14px;background:radial-gradient(circle at 50% 48%,rgba(38,215,255,.18),transparent 42%),linear-gradient(135deg,rgba(8,42,88,.7),rgba(19,22,90,.52))}.dashboard-metric-radar svg{position:absolute;top:5%;right:5%;bottom:5%;left:5%;width:90%;height:90%;filter:drop-shadow(0 0 16px rgba(38,215,255,.18))}.dashboard-metric-radar-sweep{position:absolute;left:50%;top:50%;width:52%;height:52%;border-radius:50%;background:conic-gradient(from 0deg,rgba(49,226,154,.42),rgba(38,215,255,.16) 18%,transparent 38%,transparent 100%);mix-blend-mode:screen;transform-origin:center;animation:dashboardRadarSweepSpin 4.8s linear infinite}.dashboard-metric-radar-node{position:absolute;z-index:2;display:grid;min-width:68px;justify-items:center;gap:1px;color:#26d7ff;transform:translate(-50%,-50%);animation:dashboardRadarNodePulse 2.8s ease-in-out infinite}.dashboard-metric-radar-node i{width:12px;height:12px;border:2px solid currentColor;border-radius:50%;background:radial-gradient(circle,#fff 0 18%,currentColor 22% 52%,transparent 58%);box-shadow:0 0 12px currentColor,0 0 28px color-mix(in srgb,currentColor,transparent 48%)}.dashboard-metric-radar-node:after{width:var(--metric-ratio);height:2px;border-radius:999px;background:currentColor;box-shadow:0 0 10px currentColor;content:""}.dashboard-metric-radar-node b{color:#eaffffe6;font-size:clamp(10px,.58vw,12px)}.dashboard-metric-radar-node strong{color:#fff;font-size:clamp(11px,.68vw,14px);line-height:1;text-shadow:0 0 12px currentColor}.dashboard-risk-matrix{display:grid;grid-template-columns:minmax(96px,.78fr) minmax(0,1fr);align-items:center;gap:clamp(8px,.8vw,14px);min-height:0}.dashboard-risk-core{position:relative;display:grid;width:clamp(88px,7vw,126px);aspect-ratio:1;place-items:center;justify-self:center;overflow:hidden;border:1px solid rgba(135,247,255,.28);border-radius:50%;background:radial-gradient(circle at 50% 46%,rgba(49,226,154,.28),transparent 32%),conic-gradient(from 0deg,rgba(38,215,255,.08),rgba(49,226,154,.22),rgba(126,87,255,.18),rgba(38,215,255,.08));animation:dashboardRiskCorePulse 2.8s ease-in-out infinite}.dashboard-risk-core span{position:absolute;top:12%;right:12%;bottom:12%;left:12%;border:1px dashed rgba(135,247,255,.28);border-radius:inherit;animation:dashboardSpin 8s linear infinite}.dashboard-risk-core strong{z-index:1;color:#fff;font-size:clamp(22px,1.8vw,34px);line-height:1;text-shadow:0 0 18px rgba(135,247,255,.8)}.dashboard-risk-core em{z-index:1;margin-top:-20px;color:#ddf4ffb3;font-size:clamp(10px,.58vw,12px);font-style:normal}.dashboard-risk-list{display:grid;gap:clamp(6px,.62vh,9px);min-width:0}.dashboard-risk-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:7px 9px 10px;overflow:hidden;border:1px solid rgba(135,247,255,.12);border-radius:10px;background:linear-gradient(90deg,color-mix(in srgb,currentColor,transparent 88%),transparent 62%),rgba(255,255,255,.05)}.dashboard-risk-item:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(100deg,transparent 0 36%,rgba(255,255,255,.14),transparent 64%);animation:dashboardDataSweep 4s ease-in-out infinite}.dashboard-risk-item span,.dashboard-risk-item strong,.dashboard-risk-item em{position:relative;z-index:1}.dashboard-risk-item span{overflow:hidden;color:#ddf4ffc7;font-size:clamp(10px,.62vw,12px);text-overflow:ellipsis;white-space:nowrap}.dashboard-risk-item strong{color:#fff;font-size:clamp(13px,.8vw,16px);text-align:right;text-shadow:0 0 12px currentColor}.dashboard-risk-item em{color:#ddf4ff94;font-size:10px;font-style:normal}.dashboard-risk-item i{position:absolute;left:0;bottom:0;height:2px;border-radius:999px;background:currentColor;box-shadow:0 0 12px currentColor}@media (max-height: 820px) and (min-width: 1281px){.dashboard-metric-radar{min-height:122px}.dashboard-risk-core{width:82px}.dashboard-risk-item{padding-block:5px 7px}}@media (max-width: 900px){.dashboard-risk-matrix{grid-template-columns:1fr}.dashboard-risk-core{width:132px}}.dashboard-alarm{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.dashboard-alarm-ticker{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;gap:8px}.dashboard-alarm-summary{display:flex;align-items:center;justify-content:space-between;min-height:34px;padding:6px 10px;border:1px solid rgba(255,92,122,.2);border-radius:11px;background:linear-gradient(90deg,rgba(255,92,122,.16),rgba(38,215,255,.07)),rgba(255,255,255,.045);box-shadow:inset 0 1px #ffffff14}.dashboard-alarm-summary span{color:#ddf4ffb8;font-size:clamp(11px,.68vw,13px)}.dashboard-alarm-summary strong{color:#ff5c7a;font-size:clamp(18px,1.15vw,24px);line-height:1;text-shadow:0 0 16px rgba(255,92,122,.72)}.dashboard-alarm-viewport{position:relative;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%)}.dashboard-alarm-viewport:before,.dashboard-alarm-viewport:after{position:absolute;left:0;right:0;z-index:2;height:18px;content:"";pointer-events:none}.dashboard-alarm-viewport:before{top:0;background:linear-gradient(180deg,rgba(13,25,88,.92),transparent)}.dashboard-alarm-viewport:after{bottom:0;background:linear-gradient(0deg,rgba(13,25,88,.92),transparent)}.dashboard-alarm-track{display:grid;gap:6px;animation:dashboardAlarmSlideIn .48s ease-out}.dashboard-alarm-item{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr) minmax(68px,auto);grid-template-areas:"rank name status" "rank type status";align-items:center;gap:1px 8px;min-height:38px;padding:6px 8px;overflow:hidden;border:1px solid rgba(255,92,122,.14);border-radius:10px;background:linear-gradient(90deg,rgba(255,92,122,.13),rgba(255,209,102,.05),transparent),rgba(255,255,255,.05)}.dashboard-alarm-item:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(100deg,transparent 0 36%,rgba(255,92,122,.14),transparent 62%);transform:translate(-100%);animation:dashboardDataSweep 4.4s ease-in-out infinite}.dashboard-alarm-item.is-active{border-color:#ff5c7a61;box-shadow:0 0 18px #ff5c7a29}.dashboard-alarm-item b,.dashboard-alarm-item span,.dashboard-alarm-item small,.dashboard-alarm-item em{position:relative;z-index:1}.dashboard-alarm-item b{grid-area:rank;display:grid;width:22px;height:22px;place-items:center;border:1px solid rgba(255,92,122,.42);border-radius:50%;color:#ffccd3;background:rgba(255,92,122,.1);font-size:11px}.dashboard-alarm-item span{grid-area:name;overflow:hidden;color:#f2fbff;font-size:clamp(11px,.68vw,13px);text-overflow:ellipsis;white-space:nowrap}.dashboard-alarm-item small{grid-area:type;overflow:hidden;color:#ddf4ff8f;font-size:clamp(9px,.54vw,11px);text-overflow:ellipsis;white-space:nowrap}.dashboard-alarm-item em{grid-area:status;color:#ff5c7a;font-size:clamp(10px,.58vw,12px);font-style:normal;text-align:right;white-space:nowrap}@media (max-height: 820px) and (min-width: 1281px){.dashboard-alarm-summary{min-height:28px;padding-block:4px}.dashboard-alarm-item{min-height:32px;padding-block:4px}}.dashboard-panel-title{justify-content:space-between}.dashboard-panel-title>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-alarm-total{margin-left:auto;padding:2px 8px;border:1px solid rgba(255,92,122,.32);border-radius:999px;color:#ffd9df;background:rgba(255,92,122,.12);box-shadow:0 0 14px #ff5c7a29;font-size:clamp(10px,.58vw,12px);font-style:normal;font-weight:700;white-space:nowrap}.dashboard-alarm-ticker{grid-template-rows:minmax(0,1fr);gap:0}.dashboard-alarm-viewport{min-height:100%}.dashboard-panel-subtitle{overflow:hidden;margin:-2px 0 6px;color:#ddf4ff94;font-size:clamp(9px,.54vw,11px);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.dashboard-metric-radar{min-height:clamp(126px,15vh,178px);background:radial-gradient(circle at 50% 48%,rgba(38,215,255,.1),transparent 36%),linear-gradient(135deg,rgba(8,42,88,.5),rgba(19,22,90,.38))}.dashboard-metric-radar svg{opacity:.48}.dashboard-metric-radar-sweep{opacity:.86}.dashboard-risk-matrix.is-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:clamp(7px,.72vh,10px);min-height:0}.dashboard-risk-matrix.is-compact .dashboard-risk-item{grid-template-columns:minmax(0,1fr);align-content:center;min-height:0;padding:clamp(8px,.72vw,12px)}.dashboard-risk-matrix.is-compact .dashboard-risk-item span{font-size:clamp(10px,.6vw,12px)}.dashboard-risk-matrix.is-compact .dashboard-risk-item strong{font-size:clamp(16px,1.1vw,22px);text-align:left}.dashboard-risk-matrix.is-compact .dashboard-risk-item em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-height: 820px) and (min-width: 1281px){.dashboard-panel-subtitle{margin-bottom:4px}.dashboard-metric-radar{min-height:108px}.dashboard-risk-matrix.is-compact{gap:6px}.dashboard-risk-matrix.is-compact .dashboard-risk-item{padding-block:6px}}.dashboard-visual-panel{overflow:hidden;padding-bottom:clamp(12px,1.1vh,18px)}.dashboard-visual-panel .dashboard-metric-radar{box-sizing:border-box;padding-bottom:clamp(10px,1.4vh,18px);overflow:visible}.dashboard-metric-radar-node{width:clamp(70px,4.8vw,92px);min-width:0;max-width:92px;padding:3px 5px}.dashboard-metric-radar-node b,.dashboard-metric-radar-node strong,.dashboard-metric-radar-node small{max-width:100%}.dashboard-metric-radar-node small{font-size:8px}@media (max-height: 820px) and (min-width: 1281px){.dashboard-visual-panel{padding-bottom:10px}.dashboard-visual-panel .dashboard-metric-radar{min-height:172px;padding-bottom:12px}.dashboard-metric-radar-node{width:68px;max-width:68px;padding:2px 4px}.dashboard-metric-radar-node i{width:10px;height:10px}.dashboard-metric-radar-node b{font-size:9px}.dashboard-metric-radar-node strong{font-size:10px}.dashboard-metric-radar-node small{font-size:7.5px}}@media (max-height: 920px) and (min-width: 1281px){.dashboard-header{flex:0 0 92px;min-height:92px;padding-top:8px;padding-bottom:8px}.dashboard-header:before{top:-6px;height:74px;width:min(900px,68vw)}.dashboard-header:after{top:72px;left:18%;right:18%}.dashboard-title{gap:2px;transform:translateY(-5px)}.dashboard-title strong{font-size:clamp(26px,1.75vw,34px)}.dashboard-title span{margin-top:4px;padding-block:1px;transform:none}.dashboard-layout{gap:12px;padding-top:0;padding-bottom:8px}.dashboard-center{gap:10px;grid-template-rows:minmax(0,1fr) minmax(86px,.18fr)}.dashboard-bottom-strip{min-height:86px;padding:10px 12px}}@media (max-height: 820px) and (min-width: 1281px){.dashboard-header{flex-basis:82px;min-height:82px;padding-top:6px;padding-bottom:6px}.dashboard-header:before{height:66px;width:min(820px,64vw)}.dashboard-header:after{top:64px;left:20%;right:20%}.dashboard-title strong{font-size:clamp(24px,1.6vw,30px)}.dashboard-title span{margin-top:2px;font-size:10px}.dashboard-layout{gap:10px;padding-inline:18px;padding-bottom:6px}.dashboard-column{gap:10px}.dashboard-center{gap:8px;grid-template-rows:minmax(0,1fr) minmax(76px,.16fr)}.dashboard-bottom-strip{min-height:76px;padding:8px 10px}}@media (max-width: 900px){.dashboard-screen{height:auto;min-height:100vh;overflow:auto}.dashboard-header{min-height:96px;padding-top:8px;padding-bottom:10px;gap:4px}.dashboard-header:before{top:-5px;height:70px;width:min(620px,90vw)}.dashboard-header:after{top:72px;left:12%;right:12%}.dashboard-title{gap:2px;transform:translateY(-4px)}.dashboard-title strong{font-size:clamp(22px,5.4vw,30px);line-height:.98}.dashboard-title span{margin-top:4px;padding-block:1px;font-size:10px;line-height:1.1}.dashboard-layout{gap:10px;padding-top:4px;padding-bottom:8px;overflow:visible}.dashboard-footer{position:relative;margin-bottom:max(8px,env(safe-area-inset-bottom))}}@media (max-width: 560px){.dashboard-header{min-height:86px;padding-top:6px;padding-bottom:8px}.dashboard-header:before{height:62px;width:92vw}.dashboard-header:after{display:none}.dashboard-title{transform:translateY(-2px)}.dashboard-title strong{font-size:clamp(20px,7vw,28px)}.dashboard-title span{max-width:88vw;margin-top:2px;padding-inline:12px;font-size:9px}.dashboard-layout{gap:8px;padding-inline:8px;padding-top:2px}.dashboard-footer{margin-inline:8px;padding-block:5px}}@keyframes dashboardEdgeHaloPulse{0%,to{box-shadow:0 0 0 1px #87f7ff33,0 0 18px #26d7ff2e,0 0 42px #31e29a14,inset 0 0 24px #87f7ff0f}50%{box-shadow:0 0 0 1px #87f7ff6b,0 0 28px #26d7ff57,0 0 64px #b44cff29,inset 0 0 34px #87f7ff1f}}@keyframes dashboardEdgeGlowSweep{0%{opacity:.48;transform:translate(-45%) skew(-18deg)}48%,to{opacity:0;transform:translate(145%) skew(-18deg)}}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{border-color:#87f7ff52;background:linear-gradient(145deg,rgba(9,28,76,.94),rgba(4,16,46,.88) 54%,rgba(9,34,62,.9)),radial-gradient(circle at 8% 0%,rgba(135,247,255,.16),transparent 32%),radial-gradient(circle at 100% 100%,rgba(180,76,255,.12),transparent 34%);animation:dashboardPanelGlowBreath 4.8s ease-in-out infinite,dashboardEdgeHaloPulse 5.6s ease-in-out infinite}.dashboard-panel:before,.dashboard-map-panel:before{box-shadow:0 0 18px #87f7ff6b,0 0 28px #b44cff2e}.dashboard-panel:after,.dashboard-map-panel:after{border-color:#87f7ff38;background:linear-gradient(115deg,transparent 0 34%,rgba(135,247,255,.14) 44%,transparent 55%),linear-gradient(180deg,rgba(255,255,255,.035),transparent 42%);background-size:220% 100%,100% 100%;animation:dashboardEdgeGlowSweep 4.8s ease-in-out infinite}.dashboard-map-panel{box-shadow:0 0 0 1px #87f7ff47,0 0 34px #26d7ff47,0 0 84px #31e29a1a,inset 0 0 36px #87f7ff14}.dashboard-column>.dashboard-panel:nth-child(2n),.dashboard-right>.dashboard-panel:nth-child(2n){animation-delay:-1.4s,-2.2s}.dashboard-column>.dashboard-panel:nth-child(3n),.dashboard-right>.dashboard-panel:nth-child(3n){animation-delay:-2.6s,-3.4s}@media (min-width: 1800px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{box-shadow:0 0 0 1px #87f7ff61,0 0 34px #26d7ff52,0 0 92px #b44cff1f,inset 0 0 38px #87f7ff1a}}@media (max-width: 1280px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{animation-duration:5.8s,6.4s}}@media (max-width: 900px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{border-color:#87f7ff42;box-shadow:0 0 0 1px #87f7ff2e,0 0 18px #26d7ff2e,inset 0 0 22px #87f7ff0f}.dashboard-panel:after,.dashboard-map-panel:after{top:8px;right:8px;bottom:8px;left:8px}}@media (max-width: 560px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{animation-duration:7s,7.6s;box-shadow:0 0 0 1px #87f7ff29,0 0 14px #26d7ff24,inset 0 0 18px #87f7ff0d}.dashboard-panel:before,.dashboard-map-panel:before{opacity:.62}}@media (max-height: 760px) and (min-width: 901px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{box-shadow:0 0 0 1px #87f7ff2e,0 0 18px #26d7ff29,inset 0 0 20px #87f7ff0f}}@keyframes dashboardModuleDeepGlow{0%,to{filter:saturate(1.06) brightness(1);box-shadow:0 0 0 1px #87f7ff57,0 0 18px #87f7ff5c,0 0 42px #26d7ff38,0 18px 48px #0000005c,inset 0 1px #ffffff29,inset 0 0 34px #87f7ff1a,inset 0 -18px 32px #0d28703d}50%{filter:saturate(1.22) brightness(1.08);box-shadow:0 0 0 1px #87f7ff99,0 0 30px #87f7ff94,0 0 72px #26d7ff5c,0 0 112px #b44cff33,0 22px 58px #0006,inset 0 1px #ffffff3d,inset 0 0 46px #87f7ff2e,inset 0 -22px 42px #31e29a1f}}@keyframes dashboardCornerRaySpin{0%{opacity:.42;background-position:0 0,0 0,0 0,0 0}50%{opacity:.98}to{opacity:.42;background-position:120px 0,-120px 0,0 120px,0 -120px}}@keyframes dashboardCornerBeacon{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{border:1px solid rgba(135,247,255,.46);outline:1px solid rgba(180,76,255,.16);outline-offset:-5px;background:linear-gradient(145deg,rgba(15,42,104,.96),rgba(4,15,43,.9) 48%,rgba(8,38,70,.94)),radial-gradient(circle at 10% 8%,rgba(135,247,255,.26),transparent 34%),radial-gradient(circle at 88% 90%,rgba(49,226,154,.14),transparent 36%),radial-gradient(circle at 100% 0%,rgba(180,76,255,.18),transparent 28%);transform:translateZ(0);animation:dashboardModuleDeepGlow 4.2s ease-in-out infinite,dashboardPanelGlowBreath 4.8s ease-in-out infinite}.dashboard-panel:before,.dashboard-map-panel:before{border-radius:inherit;background:linear-gradient(90deg,transparent,rgba(179,246,255,1),rgba(49,226,154,.92),transparent) top left / 34% 2px no-repeat,linear-gradient(270deg,transparent,rgba(180,76,255,.96),rgba(135,247,255,.92),transparent) bottom right / 34% 2px no-repeat,linear-gradient(180deg,transparent,rgba(135,247,255,.92),rgba(180,76,255,.54),transparent) left top / 2px 42% no-repeat,linear-gradient(0deg,transparent,rgba(49,226,154,.9),rgba(135,247,255,.64),transparent) right bottom / 2px 42% no-repeat,linear-gradient(135deg,rgba(135,247,255,.92) 0 10px,transparent 11px 100%) top left / 46px 46px no-repeat,linear-gradient(225deg,rgba(135,247,255,.88) 0 10px,transparent 11px 100%) top right / 46px 46px no-repeat,linear-gradient(45deg,rgba(180,76,255,.82) 0 10px,transparent 11px 100%) bottom left / 46px 46px no-repeat,linear-gradient(315deg,rgba(49,226,154,.84) 0 10px,transparent 11px 100%) bottom right / 46px 46px no-repeat;box-shadow:0 0 22px #87f7ff94,0 0 42px #26d7ff52,inset 0 0 20px #87f7ff1f;opacity:.96;animation:dashboardLaserBorderFlow 2.4s linear infinite,dashboardCornerRaySpin 3.6s linear infinite}.dashboard-panel:after,.dashboard-map-panel:after{top:7px;right:7px;bottom:7px;left:7px;border:1px solid rgba(135,247,255,.24);border-radius:12px;background:linear-gradient(115deg,transparent 0 28%,rgba(135,247,255,.2) 42%,transparent 55%),radial-gradient(circle at 0 0,rgba(135,247,255,.34) 0 2px,transparent 3px),radial-gradient(circle at 100% 0,rgba(135,247,255,.32) 0 2px,transparent 3px),radial-gradient(circle at 0 100%,rgba(180,76,255,.32) 0 2px,transparent 3px),radial-gradient(circle at 100% 100%,rgba(49,226,154,.32) 0 2px,transparent 3px);background-size:220% 100%,34px 34px,34px 34px,34px 34px,34px 34px;background-repeat:no-repeat;box-shadow:inset 0 0 22px #87f7ff24,inset 0 0 44px #b44cff14;animation:dashboardEdgeGlowSweep 3.2s ease-in-out infinite,dashboardCornerBeacon 2.6s ease-in-out infinite}.dashboard-map-panel{border-color:#87f7ff94;box-shadow:0 0 0 1px #87f7ff7a,0 0 42px #26d7ff85,0 0 110px #31e29a2e,0 24px 64px #0000006b,inset 0 0 46px #87f7ff24}.dashboard-kpi,.dashboard-risk-item,.dashboard-station-carousel-item,.dashboard-alarm-row{box-shadow:0 0 0 1px #87f7ff1f,inset 0 0 16px #87f7ff0f}.dashboard-panel-title:before{box-shadow:0 0 12px #87f7ff,0 0 26px #26d7ff9e,0 0 42px #b44cff47}.dashboard-panel-title:after{height:2px;background:linear-gradient(90deg,rgba(135,247,255,.96),rgba(49,226,154,.72),rgba(180,76,255,.5),transparent),repeating-linear-gradient(90deg,transparent 0 14px,rgba(255,255,255,.34) 15px 16px);box-shadow:0 0 12px #87f7ffad,0 0 24px #26d7ff52}@media (min-width: 1800px){.dashboard-panel:before,.dashboard-map-panel:before{background-size:38% 2px,38% 2px,2px 46%,2px 46%,56px 56px,56px 56px,56px 56px,56px 56px}}@media (max-width: 1280px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{outline-offset:-4px}.dashboard-panel:before,.dashboard-map-panel:before{background-size:30% 2px,30% 2px,2px 34%,2px 34%,38px 38px,38px 38px,38px 38px,38px 38px}}@media (max-width: 900px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{outline-offset:-3px;animation-duration:5.8s,6.2s}.dashboard-panel:before,.dashboard-map-panel:before{opacity:.78;animation-duration:3.8s,5s}}@media (max-width: 560px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{outline:none;box-shadow:0 0 0 1px #87f7ff3d,0 0 18px #26d7ff33,inset 0 0 18px #87f7ff12}.dashboard-panel:before,.dashboard-map-panel:before{background-size:26% 1px,26% 1px,1px 28%,1px 28%,30px 30px,30px 30px,30px 30px,30px 30px}}@keyframes dashboardBrightShellPulse{0%,to{box-shadow:0 0 0 1px #a0faff94,0 0 24px #3ddcff7a,0 0 58px #3ddcff4d,0 0 104px #50ffc424,0 20px 46px #00081a5c,inset 0 1px #ffffff4d,inset 0 0 26px #87f7ff2e,inset 0 -18px 38px #31e29a1f}50%{box-shadow:0 0 0 1px #caffffd1,0 0 34px #54eaffb3,0 0 82px #26d7ff7a,0 0 138px #b44cff42,0 24px 54px #00081a66,inset 0 1px #ffffff6b,inset 0 0 40px #87f7ff47,inset 0 -20px 44px #31e29a2e}}@keyframes dashboardEdgeAurora{0%{background-position:-180px 0,calc(100% + 180px) 100%,0 -180px,100% calc(100% + 180px),0 0}to{background-position:calc(100% + 180px) 0,-180px 100%,0 calc(100% + 180px),100% -180px,120px 120px}}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{border-color:#a5fcffb8;outline-color:#57f6ff42;background:linear-gradient(145deg,rgba(20,58,126,.98),rgba(8,28,72,.94) 44%,rgba(10,54,90,.96)),radial-gradient(circle at 12% 4%,rgba(162,252,255,.34),transparent 34%),radial-gradient(circle at 88% 8%,rgba(104,175,255,.2),transparent 32%),radial-gradient(circle at 96% 92%,rgba(72,255,193,.18),transparent 36%);animation:dashboardBrightShellPulse 4.4s ease-in-out infinite,dashboardPanelGlowBreath 4.8s ease-in-out infinite}.dashboard-map-panel{border-color:#b9ffffdb;box-shadow:0 0 0 1px #b9ffffbd,0 0 42px #54eaffb8,0 0 96px #26d7ff6b,0 0 150px #31e29a2e,0 24px 62px #00081a6b,inset 0 1px #ffffff5c,inset 0 0 46px #87f7ff38}.dashboard-panel:before,.dashboard-map-panel:before{background:linear-gradient(90deg,transparent,rgba(215,255,255,1),rgba(49,226,154,1),transparent) top left / 42% 2px no-repeat,linear-gradient(270deg,transparent,rgba(210,116,255,.98),rgba(160,250,255,1),transparent) bottom right / 42% 2px no-repeat,linear-gradient(180deg,transparent,rgba(185,255,255,.98),rgba(84,234,255,.72),transparent) left top / 2px 48% no-repeat,linear-gradient(0deg,transparent,rgba(72,255,193,.98),rgba(185,255,255,.76),transparent) right bottom / 2px 48% no-repeat,radial-gradient(circle at 0 0,rgba(215,255,255,.95) 0 2px,transparent 3px) top left / 52px 52px no-repeat;box-shadow:0 0 26px #a0faffc7,0 0 54px #26d7ff7a,0 0 92px #b44cff2e,inset 0 0 26px #b9ffff33;animation:dashboardLaserBorderFlow 2.2s linear infinite,dashboardEdgeAurora 4.2s linear infinite}.dashboard-panel:after,.dashboard-map-panel:after{border-color:#b9ffff5c;background:linear-gradient(115deg,transparent 0 26%,rgba(203,255,255,.24) 41%,transparent 56%),linear-gradient(180deg,rgba(255,255,255,.08),transparent 46%),radial-gradient(circle at 0 0,rgba(185,255,255,.52) 0 2px,transparent 3px),radial-gradient(circle at 100% 0,rgba(185,255,255,.46) 0 2px,transparent 3px),radial-gradient(circle at 0 100%,rgba(210,116,255,.44) 0 2px,transparent 3px),radial-gradient(circle at 100% 100%,rgba(72,255,193,.46) 0 2px,transparent 3px);box-shadow:inset 0 0 26px #b9ffff33,inset 0 0 54px #54eaff1f}.dashboard-panel-title{color:#fff;text-shadow:0 0 10px rgba(135,247,255,.72),0 0 24px rgba(38,215,255,.34)}.dashboard-kpi,.dashboard-risk-item,.dashboard-station-carousel-item,.dashboard-alarm-row,.dashboard-metric-radar-node{background-color:#092252b8;box-shadow:0 0 0 1px #87f7ff33,0 0 18px #26d7ff2e,inset 0 0 18px #87f7ff1a}@media (max-width: 900px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{animation-duration:5.8s,5.8s;box-shadow:0 0 0 1px #a0faff66,0 0 22px #3ddcff57,0 0 54px #26d7ff33,inset 0 0 24px #87f7ff1f}}@media (max-width: 560px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{border-color:#a5fcff7a;box-shadow:0 0 0 1px #a0faff47,0 0 18px #3ddcff3d,inset 0 0 20px #87f7ff1a}}.dashboard-header{min-height:96px;padding-bottom:18px}.dashboard-header:before{top:-8px;height:86px;max-height:calc(100% - 6px)}.dashboard-header:after{top:64px}.dashboard-title{transform:translateY(-2px)}.dashboard-title span{transform:translateY(2px)}.dashboard-layout{padding-top:8px}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{box-shadow:0 0 0 1px #beffffc2,0 0 18px #b6ffff9e,0 0 44px #34e0ff85,0 0 92px #2ab8ff57,0 0 152px #58ffcf29,0 26px 58px #00082061,inset 0 1px #ffffff6b,inset 0 0 34px #a0faff3d,inset 0 -22px 44px #31e29a24}.dashboard-map-panel{box-shadow:0 0 0 1px #d2ffffe6,0 0 24px #beffffc2,0 0 58px #54eaffa8,0 0 118px #26d7ff75,0 0 178px #48ffc133,0 28px 66px #00082070,inset 0 1px #ffffff75,inset 0 0 54px #a0faff47}.dashboard-panel:before,.dashboard-map-panel:before{box-shadow:0 0 30px #beffffe6,0 0 68px #26d7ff94,0 0 118px #b44cff3d,inset 0 0 30px #b9ffff42}.dashboard-panel:after,.dashboard-map-panel:after{box-shadow:inset 0 0 30px #b9ffff40,inset 0 0 62px #54eaff29,0 0 24px #87f7ff33}@media (min-width: 1281px){.dashboard-header{flex:0 0 96px}}@media (max-width: 1280px){.dashboard-header{min-height:92px;padding-bottom:14px}.dashboard-layout{padding-top:6px}}@media (max-width: 900px){.dashboard-header{min-height:116px;padding-bottom:12px}.dashboard-header:before{width:min(680px,92vw);height:82px}.dashboard-layout{padding-top:4px}}@media (max-width: 560px){.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{box-shadow:0 0 0 1px #b4ffff70,0 0 20px #54eaff52,0 0 46px #26d7ff2e,inset 0 0 22px #a0faff1f}}.dashboard-header{min-height:108px;padding-bottom:24px}.dashboard-header:before{top:-6px;height:84px}.dashboard-header:after{left:20%;right:20%;top:78px;height:2px;background:linear-gradient(90deg,transparent,rgba(112,232,255,.86) 18%,transparent 43%,transparent 57%,rgba(112,232,255,.86) 82%,transparent),linear-gradient(90deg,transparent,rgba(180,76,255,.34),rgba(135,247,255,.52),rgba(180,76,255,.34),transparent);box-shadow:0 0 14px #87f7ffd1,0 0 30px #26d7ff7a,0 0 56px #b44cff3d}.dashboard-title{gap:4px;transform:translateY(-6px)}.dashboard-title span{position:relative;z-index:2;margin-top:8px;transform:none;background:rgba(7,17,67,.72);box-shadow:0 0 0 1px #87f7ff2e,0 0 16px #0f246cad}.dashboard-layout{padding-top:10px}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{box-shadow:0 0 0 1px #d2ffffdb,0 0 22px #d2ffffc2,0 0 56px #54eaffa8,0 0 116px #26d7ff7a,0 0 190px #48ffc138,0 0 240px #b44cff29,0 28px 64px #0008206b,inset 0 1px #ffffff80,inset 0 0 42px #a0faff4d,inset 0 -24px 48px #31e29a29}.dashboard-map-panel{box-shadow:0 0 0 1px #e1fffff5,0 0 28px #d2ffffe6,0 0 72px #54eaffc7,0 0 138px #26d7ff8f,0 0 220px #48ffc142,0 0 280px #b44cff2e,0 30px 70px #00082075,inset 0 1px #ffffff8a,inset 0 0 62px #a0faff57}.dashboard-panel:before,.dashboard-map-panel:before{opacity:1;filter:brightness(1.25) saturate(1.22);box-shadow:0 0 36px #dcffff,0 0 82px #54eaffc2,0 0 146px #26d7ff70,0 0 208px #b44cff3d,inset 0 0 34px #b9ffff52}.dashboard-panel:after,.dashboard-map-panel:after{box-shadow:inset 0 0 36px #dcffff52,inset 0 0 72px #54eaff33,0 0 30px #87f7ff4d,0 0 72px #26d7ff33}@media (min-width: 1281px){.dashboard-header{flex-basis:108px}}@media (max-width: 1280px){.dashboard-header{min-height:104px;padding-bottom:18px}.dashboard-header:after{top:76px}}@media (max-width: 900px){.dashboard-header{min-height:126px}.dashboard-header:after{left:10%;right:10%;top:84px}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{box-shadow:0 0 0 1px #beffff94,0 0 24px #54eaff75,0 0 62px #26d7ff47,0 0 108px #48ffc11f,inset 0 0 28px #a0faff29}}@media (max-width: 560px){.dashboard-header:after{display:none}.dashboard-title span{margin-top:4px}}.dashboard-header{min-height:116px;padding-bottom:30px}.dashboard-header:after{left:14%;right:14%;top:92px;height:2px;background:linear-gradient(90deg,transparent,rgba(112,232,255,.92) 12%,rgba(135,247,255,.98) 34%,transparent 46%,transparent 54%,rgba(135,247,255,.98) 66%,rgba(112,232,255,.92) 88%,transparent),linear-gradient(90deg,transparent,rgba(180,76,255,.42),rgba(135,247,255,.62),rgba(180,76,255,.42),transparent);box-shadow:0 0 18px #87f7ffeb,0 0 38px #26d7ff94,0 0 76px #b44cff47}.dashboard-title{transform:translateY(-8px)}.dashboard-title span{margin-top:10px}.dashboard-layout{padding-top:12px}.dashboard-map-panel{border-color:#e1ffff;transform:translateZ(0);box-shadow:0 0 0 1px #ebffff,0 0 30px #dcfffff5,0 0 82px #54eaffdb,0 0 156px #26d7ffa8,0 0 260px #48ffc152,0 0 340px #b44cff3d,0 34px 80px #0008208f,0 16px 30px #00000061,inset 0 1px #ffffff9e,inset 0 0 72px #a0faff66,inset 0 -30px 62px #31e29a2e}.dashboard-map-panel:before{filter:brightness(1.45) saturate(1.35);box-shadow:0 0 42px #ebffff,0 0 96px #54eaffe6,0 0 176px #26d7ff94,0 0 260px #b44cff4d,inset 0 0 42px #b9ffff61}.dashboard-map-panel:after{top:6px;right:6px;bottom:6px;left:6px;border-color:#d2ffff7a;box-shadow:inset 0 0 42px #dcffff61,inset 0 0 88px #54eaff40,0 0 44px #87f7ff57,0 0 96px #26d7ff3d}@media (min-width: 1281px){.dashboard-header{flex-basis:116px}}@media (max-width: 1280px){.dashboard-header{min-height:108px;padding-bottom:22px}.dashboard-header:after{left:10%;right:10%;top:86px}}@media (max-width: 900px){.dashboard-header{min-height:132px}.dashboard-header:after{left:8%;right:8%;top:92px}.dashboard-map-panel{box-shadow:0 0 0 1px #d2ffffb8,0 0 34px #54eaff8a,0 0 82px #26d7ff57,0 0 130px #48ffc129,inset 0 0 42px #a0faff38}}@keyframes dashboardLaserBorderFlow{0%{background-position:-220px 0,calc(100% + 220px) 100%,0 calc(100% + 220px),100% -220px}to{background-position:calc(100% + 220px) 0,-220px 100%,0 -220px,100% calc(100% + 220px)}}@keyframes dashboardPanelCornerPulse{0%,to{opacity:.38;filter:drop-shadow(0 0 5px rgba(38,215,255,.28))}50%{opacity:.96;filter:drop-shadow(0 0 14px rgba(135,247,255,.72))}}@keyframes dashboardParticleDrift{0%{background-position:0 0,40px 30px,0 0}to{background-position:160px -120px,-120px 110px,180px 180px}}.dashboard-screen:after{background:radial-gradient(circle at 18% 20%,rgba(135,247,255,.16),transparent 18%),radial-gradient(circle at 82% 18%,rgba(180,76,255,.14),transparent 18%),linear-gradient(120deg,transparent 0 30%,rgba(49,226,154,.08) 48%,transparent 68%);animation:dashboardAmbientOrbit 14s ease-in-out infinite alternate,dashboardParticleDrift 18s linear infinite}.dashboard-layout:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;content:"";pointer-events:none;background:radial-gradient(circle,rgba(135,247,255,.55) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(49,226,154,.34) 0 1px,transparent 1.5px),repeating-linear-gradient(0deg,transparent 0 54px,rgba(135,247,255,.04) 55px 56px);background-size:104px 76px,148px 112px,100% 100%;mix-blend-mode:screen;opacity:.28;animation:dashboardParticleDrift 22s linear infinite}.dashboard-panel:before,.dashboard-map-panel:before{height:100%;border-radius:inherit;background:linear-gradient(90deg,transparent,rgba(135,247,255,.96),rgba(180,76,255,.86),transparent) top left / 220px 2px no-repeat,linear-gradient(270deg,transparent,rgba(49,226,154,.92),rgba(38,215,255,.78),transparent) bottom right / 220px 2px no-repeat,linear-gradient(180deg,transparent,rgba(135,247,255,.84),transparent) left bottom / 2px 180px no-repeat,linear-gradient(0deg,transparent,rgba(180,76,255,.78),transparent) right top / 2px 180px no-repeat;opacity:.86;animation:dashboardLaserBorderFlow 3.8s linear infinite}.dashboard-panel:after,.dashboard-map-panel:after{border-color:#87f7ff29;box-shadow:inset 0 0 18px #26d7ff14,inset 0 0 34px #b44cff0f}.dashboard-panel-title:after{flex:1;min-width:28px;height:1px;margin-left:10px;content:"";background:linear-gradient(90deg,rgba(135,247,255,.78),rgba(180,76,255,.38),transparent);box-shadow:0 0 12px #87f7ff61;animation:dashboardPanelCornerPulse 2.4s ease-in-out infinite}.dashboard-alarm .dashboard-panel-title:after{display:none}.dashboard-metric-radar{filter:drop-shadow(0 0 14px rgba(38,215,255,.18))}.dashboard-metric-radar-node{width:clamp(72px,5.2vw,96px);min-width:0;max-width:96px;gap:0;padding:4px 5px;box-shadow:0 0 14px color-mix(in srgb,currentColor,transparent 74%),inset 0 0 12px #ffffff0d}.dashboard-metric-radar-node b,.dashboard-metric-radar-node strong,.dashboard-metric-radar-node small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.dashboard-metric-radar-node b{font-size:clamp(9px,.54vw,11px)}.dashboard-metric-radar-node strong{font-size:clamp(10px,.6vw,13px)}.dashboard-metric-radar-node small{max-width:100%;font-size:8.5px}.dashboard-panel:after,.dashboard-map-panel:after{border-color:#87f7ff24;background:linear-gradient(90deg,rgba(135,247,255,.72) 0 34px,transparent 34px calc(100% - 34px),rgba(135,247,255,.72) calc(100% - 34px) 100%) top / 100% 1px no-repeat,linear-gradient(90deg,rgba(135,247,255,.46) 0 18px,transparent 18px calc(100% - 18px),rgba(135,247,255,.46) calc(100% - 18px) 100%) bottom / 100% 1px no-repeat,linear-gradient(180deg,rgba(135,247,255,.56) 0 28px,transparent 28px calc(100% - 28px),rgba(135,247,255,.56) calc(100% - 28px) 100%) left / 1px 100% no-repeat,linear-gradient(180deg,rgba(135,247,255,.56) 0 28px,transparent 28px calc(100% - 28px),rgba(135,247,255,.56) calc(100% - 28px) 100%) right / 1px 100% no-repeat;animation:dashboardCornerTrace 3.6s ease-in-out infinite}.dashboard-visual-panel{grid-template-rows:auto auto minmax(0,1fr)}.dashboard-visual-panel .dashboard-metric-radar{height:100%;min-height:clamp(190px,28vh,330px)}.dashboard-metric-radar-node{min-width:82px;padding:4px 6px;border:1px solid color-mix(in srgb,currentColor,transparent 68%);border-radius:10px;background:rgba(3,18,56,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dashboard-metric-radar-node small{overflow:hidden;max-width:92px;color:#ddf4ff9e;font-size:9px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.dashboard-station-rank{padding-bottom:12px}.dashboard-station-carousel-dots{bottom:0;gap:3px;max-width:92%}.dashboard-station-carousel-dots i{width:6px}.dashboard-station-carousel-dots i.is-active{width:14px}.dashboard-risk-panel{grid-template-rows:auto minmax(0,1fr)}.dashboard-risk-matrix.is-compact{grid-template-columns:1fr;grid-auto-rows:minmax(0,1fr)}.dashboard-risk-matrix.is-compact .dashboard-risk-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value" "status value";align-items:center;gap:2px 8px;padding:clamp(7px,.65vw,10px)}.dashboard-risk-matrix.is-compact .dashboard-risk-item span{grid-area:label}.dashboard-risk-matrix.is-compact .dashboard-risk-item strong{grid-area:value;text-align:right}.dashboard-risk-matrix.is-compact .dashboard-risk-item em{grid-area:status}@media (max-height: 820px) and (min-width: 1281px){.dashboard-visual-panel .dashboard-metric-radar{min-height:160px}.dashboard-metric-radar-node{min-width:72px;padding:3px 5px}}@media (max-width: 900px){.dashboard-visual-panel .dashboard-metric-radar{min-height:280px}}.dashboard-panel,.dashboard-map-panel,.dashboard-bottom-strip{animation:dashboardPanelGlowBreath 4.8s ease-in-out infinite}.dashboard-layout:before{position:absolute;left:0;right:0;top:0;z-index:0;height:38%;content:"";pointer-events:none;background:linear-gradient(180deg,transparent,rgba(135,247,255,.08),transparent),repeating-linear-gradient(90deg,transparent 0 88px,rgba(135,247,255,.08) 89px 90px);mix-blend-mode:screen;opacity:.65;animation:dashboardTechSweepLine 7.2s linear infinite}.dashboard-column,.dashboard-center,.dashboard-footer{position:relative;z-index:1}.dashboard-panel-title{justify-content:flex-start}.dashboard-alarm .dashboard-panel-title{justify-content:space-between}.dashboard-risk-panel{overflow:hidden}.dashboard-risk-matrix.is-compact{height:100%;min-height:0;overflow:hidden;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr)}.dashboard-risk-matrix.is-compact .dashboard-risk-item{display:flex;min-width:0;min-height:0;flex-direction:column;justify-content:center;gap:2px;padding:clamp(6px,.55vw,10px);line-height:1.1}.dashboard-risk-matrix.is-compact .dashboard-risk-item span,.dashboard-risk-matrix.is-compact .dashboard-risk-item em{min-width:0;overflow:hidden;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.dashboard-risk-matrix.is-compact .dashboard-risk-item strong{line-height:1;font-size:clamp(14px,.95vw,19px)}@media (max-height: 820px) and (min-width: 1281px){.dashboard-risk-matrix.is-compact{gap:5px}.dashboard-risk-matrix.is-compact .dashboard-risk-item{padding:5px 7px}.dashboard-risk-matrix.is-compact .dashboard-risk-item strong{font-size:clamp(13px,.82vw,17px)}}@media (max-width: 560px){.dashboard-risk-matrix.is-compact{grid-template-columns:1fr}}:root{font-family:IBM Plex Sans,system-ui,sans-serif;line-height:1.5;font-weight:400;width:100%;height:100%;overflow:hidden;color-scheme:light dark;color:#ffcacade;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;height:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:block;width:100%;height:100%}h1{font-size:32px;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
