.map-container{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-content{flex:1;position:relative}.map-footer{position:absolute;bottom:20px;right:20px;z-index:1000}.map-tools{padding:20px}.tool-item{margin-bottom:20px}.search-input{width:100%}.location-details{margin-bottom:20px}.map-type-buttons{position:absolute;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.map-type-icon{width:32px;height:32px;background-color:rgba(28,47,123,.85);border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .3s}.map-type-icon.active,.map-type-icon:hover{background-color:#3a5eea;color:#fff}.map-type-icon i{font-size:16px}.map-controls-wrapper[data-v-113f1f64]{position:absolute;bottom:25px;left:15px;z-index:1000}.coordinate-panel[data-v-113f1f64]{background-color:#fff;border-radius:4px;padding:6px 10px;box-shadow:0 2px 4px rgba(0,0,0,.08);min-width:120px;margin-bottom:5px;border:1px solid #e0e0e0}.coordinate-line[data-v-113f1f64]{color:#222;font-size:12px;font-family:Consolas,monospace;text-align:left;margin:2px 0;white-space:nowrap}.ship-layer-container[data-v-96b77376]{z-index:499;overflow:visible}.ship-d3-layer[data-v-96b77376],.ship-layer-container[data-v-96b77376]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.ship-layer-container[data-v-96b77376] .ship{pointer-events:all;cursor:pointer}.ship-layer-container[data-v-96b77376] .ship path{fill-opacity:.9;stroke-opacity:.9;transform-origin:center center;will-change:transform}.ship-layer-container[data-v-96b77376] svg{will-change:transform;transform-origin:0 0}.map-container[data-v-04633f57]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-content[data-v-04633f57]{flex:1;position:relative}.map-content[data-v-04633f57] .leaflet-map-pane{z-index:200;pointer-events:auto}.map-content[data-v-04633f57] .leaflet-control-container{z-index:600;pointer-events:auto}.ship-layer[data-v-04633f57]{z-index:400;pointer-events:none}.map-footer[data-v-04633f57]{position:absolute;bottom:20px;right:20px;z-index:1000}.map-controls-wrapper[data-v-04633f57]{position:absolute;bottom:25px;left:15px;z-index:1000}.coordinate-panel[data-v-04633f57]{background-color:#fff;border-radius:4px;padding:6px 10px;box-shadow:0 2px 4px rgba(0,0,0,.08);min-width:120px;margin-bottom:5px;border:1px solid #e0e0e0}.coordinate-line[data-v-04633f57]{color:#222;font-size:12px;font-family:Consolas,monospace;text-align:left;margin:2px 0;white-space:nowrap}.map-type-buttons[data-v-04633f57]{position:absolute;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.map-type-icon[data-v-04633f57]{width:32px;height:32px;background-color:rgba(28,47,123,.85);border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .3s}.map-type-icon.active[data-v-04633f57],.map-type-icon[data-v-04633f57]:hover{background-color:#3a5eea;color:#fff}.map-type-icon i[data-v-04633f57]{font-size:16px}.ship-popup[data-v-04633f57]{min-width:200px}.ship-list[data-v-04633f57]{padding:10px}.ship-icon[data-v-04633f57]{background:transparent}.map-container[data-v-868fc3c6]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-content[data-v-868fc3c6]{flex:1;position:relative}.map-content[data-v-868fc3c6] .leaflet-map-pane{z-index:200;pointer-events:auto}.map-content[data-v-868fc3c6] .leaflet-control-container{z-index:600;pointer-events:auto}.map-footer[data-v-868fc3c6]{position:absolute;bottom:20px;right:20px;z-index:1000}.map-controls-wrapper[data-v-868fc3c6]{position:absolute;bottom:25px;left:15px;z-index:1000}.coordinate-panel[data-v-868fc3c6]{background-color:#fff;border-radius:4px;padding:6px 10px;box-shadow:0 2px 4px rgba(0,0,0,.08);min-width:120px;margin-bottom:5px;border:1px solid #e0e0e0}.coordinate-line[data-v-868fc3c6]{color:#222;font-size:12px;font-family:Consolas,monospace;text-align:left;margin:2px 0;white-space:nowrap}.map-type-buttons[data-v-868fc3c6]{position:absolute;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.map-type-icon[data-v-868fc3c6]{width:32px;height:32px;background-color:rgba(28,47,123,.85);border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .3s}.map-type-icon.active[data-v-868fc3c6],.map-type-icon[data-v-868fc3c6]:hover{background-color:#3a5eea;color:#fff}.map-type-icon i[data-v-868fc3c6]{font-size:16px}.ship-popup[data-v-868fc3c6]{min-width:200px}.ship-list[data-v-868fc3c6]{padding:10px}.ship-icon[data-v-868fc3c6]{background:transparent!important}.map-container[data-v-6e0a56c3]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-content[data-v-6e0a56c3]{flex:1;position:relative}.map-content[data-v-6e0a56c3] .leaflet-map-pane{z-index:200;pointer-events:auto}.map-content[data-v-6e0a56c3] .leaflet-control-container{z-index:600;pointer-events:auto}.ship-layer[data-v-6e0a56c3]{z-index:400;pointer-events:none}.map-footer[data-v-6e0a56c3]{position:absolute;bottom:20px;right:20px;z-index:1000}.map-controls-wrapper[data-v-6e0a56c3]{position:absolute;bottom:25px;left:15px;z-index:1000}.coordinate-panel[data-v-6e0a56c3]{background-color:#fff;border-radius:4px;padding:6px 10px;box-shadow:0 2px 4px rgba(0,0,0,.08);min-width:120px;margin-bottom:5px;border:1px solid #e0e0e0}.coordinate-line[data-v-6e0a56c3]{color:#222;font-size:12px;font-family:Consolas,monospace;text-align:left;margin:2px 0;white-space:nowrap}.map-type-buttons[data-v-6e0a56c3]{position:absolute;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.map-type-icon[data-v-6e0a56c3]{width:32px;height:32px;background-color:rgba(28,47,123,.85);border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .3s}.map-type-icon.active[data-v-6e0a56c3],.map-type-icon[data-v-6e0a56c3]:hover{background-color:#3a5eea;color:#fff}.map-type-icon i[data-v-6e0a56c3]{font-size:16px}.ship-popup[data-v-6e0a56c3]{min-width:200px}.ship-list[data-v-6e0a56c3]{padding:10px}.ship-icon[data-v-6e0a56c3]{background:transparent}.ship-layer-container[data-v-1031e7f3]{position:absolute;top:0;left:0;z-index:399}.ship-g6-layer[data-v-1031e7f3],.ship-layer-container[data-v-1031e7f3]{width:100%;height:100%;pointer-events:none}.g6-node{pointer-events:auto!important;cursor:pointer!important}.g6-background,.g6-edge{pointer-events:none!important}.map-container[data-v-3edc021e]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-content[data-v-3edc021e]{flex:1;position:relative}.map-content[data-v-3edc021e] .leaflet-map-pane{z-index:200;pointer-events:auto}.map-content[data-v-3edc021e] .leaflet-control-container{z-index:600;pointer-events:auto}.ship-layer[data-v-3edc021e]{z-index:400;pointer-events:none}.map-footer[data-v-3edc021e]{position:absolute;bottom:20px;right:20px;z-index:1000}.map-controls-wrapper[data-v-3edc021e]{position:absolute;bottom:25px;left:15px;z-index:1000}.coordinate-panel[data-v-3edc021e]{background-color:#fff;border-radius:4px;padding:6px 10px;box-shadow:0 2px 4px rgba(0,0,0,.08);min-width:120px;margin-bottom:5px;border:1px solid #e0e0e0}.coordinate-line[data-v-3edc021e]{color:#222;font-size:12px;font-family:Consolas,monospace;text-align:left;margin:2px 0;white-space:nowrap}.map-type-buttons[data-v-3edc021e]{position:absolute;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.map-type-icon[data-v-3edc021e]{width:32px;height:32px;background-color:rgba(28,47,123,.85);border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .3s}.map-type-icon.active[data-v-3edc021e],.map-type-icon[data-v-3edc021e]:hover{background-color:#3a5eea;color:#fff}.map-type-icon i[data-v-3edc021e]{font-size:16px}.ship-popup[data-v-3edc021e]{min-width:200px}.ship-list[data-v-3edc021e]{padding:10px}.ship-icon[data-v-3edc021e]{background:transparent}.leaflet-container{z-index:100!important}.leaflet-container,.leaflet-tile-container{pointer-events:auto!important}.leaflet-pane{z-index:300!important}.leaflet-tile-pane{z-index:200!important}.leaflet-overlay-pane{z-index:400!important}.leaflet-control{z-index:800!important}.leaflet-bottom,.leaflet-top{z-index:1000!important}.dashboard-container[data-v-e9c1737e]{padding:15px;background-color:#f5f7fa;min-height:calc(100vh - 100px)}.dashboard-section[data-v-e9c1737e]{background-color:#fff;border-radius:8px;padding:16px 20px;margin-bottom:20px;box-shadow:0 2px 12px 0 rgba(0,0,0,.05)}.section-header[data-v-e9c1737e]{display:flex;align-items:center;margin-bottom:20px;border-bottom:1px solid #ebeef5;padding-bottom:10px}.section-icon[data-v-e9c1737e]{font-size:22px;margin-right:10px;color:#409eff}.section-title[data-v-e9c1737e]{margin:0;font-size:18px;font-weight:500;color:#303133}.button-group[data-v-e9c1737e]{display:flex;flex-wrap:wrap;gap:15px}.dashboard-btn[data-v-e9c1737e]{height:46px;padding:0 20px;border-radius:4px;transition:all .3s;display:flex;align-items:center;width:auto}.dashboard-btn i[data-v-e9c1737e]{font-size:20px;margin-right:8px;transition:all .3s}.dashboard-btn span[data-v-e9c1737e]{font-size:14px;font-weight:500}.dashboard-btn[data-v-e9c1737e]:hover{transform:translateY(-2px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.dashboard-btn:hover i[data-v-e9c1737e]{animation:pulse-e9c1737e .5s}@keyframes pulse-e9c1737e{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.coming-soon[data-v-404dc1c9]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:40px}.el-icon-loading[data-v-404dc1c9]{font-size:48px;color:#409eff;margin-bottom:20px}h2[data-v-404dc1c9]{margin-bottom:30px;color:#606266}.register-container[data-v-3e297afe]{display:flex;justify-content:center;align-items:center;height:100vh;background:linear-gradient(to right bottom,#2c3e50,#4ca1af)}.register-card[data-v-3e297afe]{width:400px;padding:40px;background-color:#fff;border-radius:8px;box-shadow:0 10px 20px rgba(0,0,0,.1)}.register-header[data-v-3e297afe]{text-align:center;margin-bottom:30px}.register-logo[data-v-3e297afe]{width:80px;height:80px;margin-bottom:15px}.register-title[data-v-3e297afe]{color:#303133;font-weight:500;margin:0;font-size:24px}.register-form[data-v-3e297afe]{margin-top:30px}.register-button[data-v-3e297afe]{width:100%;padding:12px 0}.register-options[data-v-3e297afe]{text-align:center;margin-top:15px}.login-link[data-v-3e297afe]{color:#409eff;font-size:14px;cursor:pointer}.change-password-container[data-v-83e09546]{padding:30px}.change-password-card[data-v-83e09546]{max-width:600px;margin:0 auto;background-color:#fff;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.1);padding:30px}.change-password-header[data-v-83e09546]{text-align:center;margin-bottom:30px}.change-password-title[data-v-83e09546]{color:#303133;font-weight:500;margin:0;font-size:22px}.password-form[data-v-83e09546]{margin-top:20px}.video-monitor-container[data-v-2932e7c4]{padding:20px;height:calc(100vh - 120px);display:flex;flex-direction:column}.monitor-header[data-v-2932e7c4]{margin-bottom:20px}.monitor-header .el-card__header[data-v-2932e7c4]{display:flex;justify-content:space-between;align-items:center}.control-panel[data-v-2932e7c4]{display:flex;gap:10px}.video-grid[data-v-2932e7c4]{display:grid;grid-gap:10px;flex:1;min-height:0}.grid-layout-2[data-v-2932e7c4]{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.grid-layout-3[data-v-2932e7c4]{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.grid-layout-6[data-v-2932e7c4]{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr 1fr}.grid-layout-6 .camera-container[data-v-2932e7c4]:first-child{grid-column:1;grid-row:1/span 3}.grid-layout-0[data-v-2932e7c4]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-rows:1fr}.camera-container[data-v-2932e7c4]{height:100%;position:relative;transition:all .3s}.active-camera[data-v-2932e7c4]{box-shadow:0 0 10px rgba(0,123,255,.7);transform:scale(1.01);z-index:2}.camera-card[data-v-2932e7c4]{height:100%;display:flex;flex-direction:column}.camera-card .el-card__body[data-v-2932e7c4]{flex:1;padding:0;position:relative;min-height:0;display:flex;flex-direction:column}.camera-header[data-v-2932e7c4]{display:flex;justify-content:space-between;align-items:center;padding:10px 15px}.camera-controls[data-v-2932e7c4]{display:flex;gap:10px}.camera-controls i[data-v-2932e7c4]{cursor:pointer;font-size:16px;color:#606266}.camera-controls i[data-v-2932e7c4]:hover{color:#409eff}.camera-player[data-v-2932e7c4]{background-color:#000;flex:1;overflow:hidden}.camera-error[data-v-2932e7c4],.camera-player[data-v-2932e7c4]{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.camera-error[data-v-2932e7c4]{position:absolute;top:0;left:0;background-color:rgba(0,0,0,.7);color:#fff;flex-direction:column}.camera-error i[data-v-2932e7c4]{font-size:40px;color:#f56c6c;margin-bottom:10px}.ptz-container[data-v-2932e7c4]{padding:20px}.ptz-title[data-v-2932e7c4]{font-size:16px;font-weight:700;margin-bottom:20px;text-align:center}.ptz-panel[data-v-2932e7c4]{margin-bottom:20px}.ptz-grid[data-v-2932e7c4]{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);grid-gap:5px;max-width:200px;margin:0 auto}.ptz-btn[data-v-2932e7c4]{padding:10px;height:auto}.ptz-focus[data-v-2932e7c4],.ptz-zoom[data-v-2932e7c4]{margin-top:20px;display:flex;align-items:center;justify-content:space-between}.ptz-preset[data-v-2932e7c4]{margin-top:30px}.ptz-preset p[data-v-2932e7c4]{margin-bottom:10px;font-weight:700}.preset-grid[data-v-2932e7c4]{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px}.base-map-container[data-v-3efc9672]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-footer[data-v-3efc9672]{position:absolute;bottom:20px;right:20px;z-index:1000}.map-controls-wrapper[data-v-3efc9672]{position:absolute;bottom:25px;left:15px;z-index:1000}.coordinate-panel[data-v-3efc9672]{background-color:#fff;border-radius:4px;padding:6px 10px;box-shadow:0 2px 4px rgba(0,0,0,.08);min-width:120px;margin-bottom:5px;border:1px solid #e0e0e0}.coordinate-line[data-v-3efc9672]{color:#222;font-size:12px;font-family:Consolas,monospace;text-align:left;margin:2px 0;white-space:nowrap}.map-control-buttons[data-v-3efc9672]{position:absolute;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.map-control-icon[data-v-3efc9672]{width:32px;height:32px;background-color:rgba(28,47,123,.85);border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all .3s}.map-control-icon[data-v-3efc9672]:hover{background-color:#3a5eea;color:#fff}.map-control-icon i[data-v-3efc9672]{font-size:16px}.zoom-controls[data-v-3efc9672]{display:flex;flex-direction:column;background-color:rgba(28,47,123,.85);border-radius:4px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.2)}.zoom-control-btn[data-v-3efc9672]{width:32px;height:32px;display:flex;justify-content:center;align-items:center;cursor:pointer;color:#e3eafc;transition:all .3s}.zoom-control-btn[data-v-3efc9672]:hover{background-color:#3a5eea;color:#fff}.zoom-control-btn[data-v-3efc9672]:first-child,.zoom-control-btn[data-v-3efc9672]:nth-child(2){border-bottom:1px solid hsla(0,0%,100%,.15)}.tool-separator[data-v-3efc9672]{height:1px;background-color:hsla(0,0%,100%,.15);margin:4px 0}.active-tool[data-v-3efc9672]{background-color:#3a5eea!important;color:#fff!important}.location-input-container[data-v-3efc9672]{padding:10px 0}.decimal-input-group[data-v-3efc9672]{display:flex;gap:8px;align-items:center}.decimal-input-group .el-input[data-v-3efc9672]{flex:1}.decimal-input-group .el-select[data-v-3efc9672]{flex-shrink:0}.dms-input-group[data-v-3efc9672]{display:flex;gap:8px;align-items:center}.dms-input-group .el-input[data-v-3efc9672]{flex:1}.dms-input-group .el-select[data-v-3efc9672]{flex-shrink:0}.dms-input-group-optimized[data-v-3efc9672]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dms-field[data-v-3efc9672]{display:flex;flex-direction:column;align-items:center;gap:4px}.dms-label[data-v-3efc9672]{font-size:12px;color:#666;font-weight:500;margin:0}.dms-input[data-v-3efc9672]{width:70px}.dms-symbol[data-v-3efc9672]{font-size:14px;font-weight:700;color:#409eff;margin-left:-8px;align-self:flex-end;margin-bottom:8px}.current-map-center[data-v-3efc9672]{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:12px;margin-bottom:10px}.current-map-center h4[data-v-3efc9672]{margin:0 0 8px 0;font-size:14px;color:#409eff;font-weight:600}.center-coords p[data-v-3efc9672]{margin:4px 0;font-size:13px;color:#333}.center-coords strong[data-v-3efc9672]{color:#666;font-weight:500}.dms-compact-row[data-v-3efc9672]{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.dms-compact-input[data-v-3efc9672]{width:50px;flex-shrink:0}.dms-compact-symbol[data-v-3efc9672]{font-size:14px;font-weight:700;color:#409eff;margin:0 2px;flex-shrink:0}.dms-compact-row .el-switch[data-v-3efc9672]{margin-left:8px;flex-shrink:0}.decimal-switch-row[data-v-3efc9672]{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.decimal-switch-input[data-v-3efc9672]{flex:1;min-width:120px}.decimal-symbol[data-v-3efc9672]{font-size:14px;font-weight:700;color:#409eff;margin:0 4px;flex-shrink:0}.decimal-switch-row .el-switch[data-v-3efc9672]{flex-shrink:0}.leaflet-control-scale-line{border-color:#e0e0e0!important;background-color:#fff!important;color:#222!important;margin-left:10px!important;margin-bottom:5px!important;box-shadow:0 2px 4px rgba(0,0,0,.08)}.leaflet-bottom.leaflet-right{display:none}.map-search[data-v-afa3ba98]{position:absolute;top:20px;left:20px;z-index:1000;display:flex;background-color:#fff;border-radius:4px;box-shadow:0 2px 6px rgba(0,0,0,.15);overflow:hidden;width:250px;height:36px;align-items:center}.map-search input[data-v-afa3ba98]{flex:1;border:none;padding:8px 10px;font-size:14px;height:100%;outline:none}.map-search i[data-v-afa3ba98]{padding:0 8px;cursor:pointer;color:#909399;font-size:16px}.map-search i[data-v-afa3ba98]:hover{color:#409eff}.map-search-bar[data-v-afa3ba98]{background-color:#409eff;height:100%;width:36px;display:flex;justify-content:center;align-items:center}.map-search-bar i[data-v-afa3ba98]{color:#fff;font-size:18px}.notice-container[data-v-a5cf367a]{position:absolute;top:20px;right:60px;z-index:999;width:320px;background-color:#fff;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.15);overflow:hidden}.notice-head[data-v-a5cf367a]{padding:10px 15px;background-color:#1e3a8a;color:#fff;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.notice-title[data-v-a5cf367a]{display:flex;align-items:center;gap:5px;font-weight:500;position:relative}.badge[data-v-a5cf367a]{background-color:#ff4d4f;color:#fff;font-size:12px;padding:0 5px;border-radius:10px;min-width:16px;height:16px;line-height:16px;text-align:center;margin-left:5px;display:inline-block}.notice-icons[data-v-a5cf367a]{display:flex;gap:8px}.notice-icon[data-v-a5cf367a]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;transition:all .3s}.notice-icon[data-v-a5cf367a]:hover{background-color:hsla(0,0%,100%,.2)}.notice-content[data-v-a5cf367a]{max-height:400px;overflow:hidden}.notice-tabs[data-v-a5cf367a]{display:flex;background-color:#f0f2f5;border-bottom:1px solid #e0e0e0}.notice-tab[data-v-a5cf367a]{flex:1;padding:10px;text-align:center;cursor:pointer;position:relative;font-size:13px;color:#606266;transition:all .3s}.notice-tab.active[data-v-a5cf367a]{color:#1e3a8a;font-weight:500;background-color:#fff}.notice-tab.active[data-v-a5cf367a]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:#1e3a8a}.refresh-btn[data-v-a5cf367a]{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#909399;transition:all .3s;border-radius:3px}.refresh-btn[data-v-a5cf367a]:hover{color:#409eff;background-color:rgba(64,158,255,.1)}.refresh-btn .is-loading[data-v-a5cf367a]{animation:rotate-a5cf367a 1s linear infinite}@keyframes rotate-a5cf367a{0%{transform:translateY(-50%) rotate(0deg)}to{transform:translateY(-50%) rotate(1turn)}}.notice-filter[data-v-a5cf367a]{padding:8px 10px;border-bottom:1px solid #f0f0f0;display:flex;flex-wrap:wrap;gap:5px}.notice-list[data-v-a5cf367a]{max-height:300px;overflow-y:auto}.notice-item[data-v-a5cf367a]{padding:10px;border-bottom:1px solid #f0f0f0;font-size:13px;position:relative;background-color:#fff;transition:all .3s}.notice-item[data-v-a5cf367a]:hover{background-color:#f9f9f9}.notice-item-content[data-v-a5cf367a]{margin-bottom:5px;color:#303133;line-height:1.5}.notice-item-actions[data-v-a5cf367a]{display:flex;justify-content:flex-end;padding-top:5px;gap:8px}.notice-action[data-v-a5cf367a]{padding:2px 5px;border:1px solid #dcdfe6;border-radius:3px;cursor:pointer;color:#606266;transition:all .3s}.notice-action[data-v-a5cf367a]:hover{color:#409eff;border-color:#c6e2ff;background-color:#ecf5ff}.notice-action.disabled[data-v-a5cf367a]{color:#c0c4cc;border-color:#e4e7ed;cursor:not-allowed;opacity:.6}.notice-action.disabled[data-v-a5cf367a]:hover{color:#c0c4cc;border-color:#e4e7ed;background-color:transparent}.record-time[data-v-a5cf367a]{font-size:12px;color:#909399;margin-bottom:3px;font-weight:500}.record-main[data-v-a5cf367a]{font-size:14px;font-weight:500;color:#303133;margin-bottom:5px;line-height:1.4}.vessel-name[data-v-a5cf367a]{color:#1e3a8a;font-weight:600}.vessel-mmsi[data-v-a5cf367a]{color:#606266;font-size:12px;margin-left:5px;font-weight:400}.event-type[data-v-a5cf367a]{color:#409eff;font-size:12px;margin-left:8px;background-color:rgba(64,158,255,.1);padding:2px 6px;border-radius:3px;font-weight:500}.bridge-name[data-v-a5cf367a]{color:#606266;font-size:12px;margin-left:8px;font-weight:400}.record-details[data-v-a5cf367a]{font-size:12px;color:#909399;margin-top:5px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.direction[data-v-a5cf367a]{margin-right:0;padding:2px 6px;border-radius:3px;font-weight:500;font-size:11px}.direction-up[data-v-a5cf367a]{color:#67c23a;background-color:rgba(103,194,58,.1)}.direction-down[data-v-a5cf367a]{color:#f56c6c;background-color:hsla(0,87%,69%,.1)}.heading[data-v-a5cf367a],.speed[data-v-a5cf367a]{margin-left:0;padding:2px 6px;background-color:#f5f7fa;border-radius:3px;font-size:11px}.no-data[data-v-a5cf367a]{text-align:center;padding:30px 0;color:#909399;font-size:14px}.no-data i[data-v-a5cf367a]{font-size:32px;margin-bottom:10px;display:block;opacity:.6}.map-layer-manager[data-v-1f76bb22]{position:absolute;z-index:1200;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.15);width:380px;max-height:calc(100vh - 100px);overflow:hidden;display:flex;flex-direction:column;top:60px;right:10px}.map-layer-manager-title[data-v-1f76bb22]{padding:10px 15px;background-color:#f0f2f5;border-bottom:1px solid #dcdfe6;display:flex;align-items:center;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.map-layer-manager-title i[data-v-1f76bb22]{margin-right:8px;font-size:16px;color:#606266}.map-layer-manager-content[data-v-1f76bb22]{flex:1;overflow-y:auto;padding:10px 0;max-height:calc(100vh - 150px)}.map-layer-group[data-v-1f76bb22]{margin-bottom:10px}.map-layer-group-title[data-v-1f76bb22]{padding:0 15px;margin:5px 0;font-size:14px;font-weight:500;color:#303133}.map-layer-list[data-v-1f76bb22]{display:flex;flex-wrap:wrap;padding:5px 10px}.map-layer-item[data-v-1f76bb22]{margin:3px 5px;padding:4px 8px;background-color:#f4f4f5;color:#909399;border-radius:3px;font-size:12px;cursor:pointer;transition:all .3s}.map-layer-item[data-v-1f76bb22]:hover{background-color:#e9e9eb}.map-layer-item.active[data-v-1f76bb22]{background-color:#409eff;color:#fff}.trajectory-data-table[data-v-480beb5c]{width:100%;height:100%}.pagination-container[data-v-480beb5c]{margin-top:10px;display:flex;justify-content:center;padding:5px 0}.empty-data[data-v-480beb5c]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:150px;color:#909399}.empty-data i[data-v-480beb5c]{font-size:36px;margin-bottom:10px;color:#dcdfe6}.navigation-info[data-v-480beb5c]{display:flex;justify-content:space-around;align-items:center}.info-item[data-v-480beb5c]{display:inline-flex;align-items:center;font-size:12px;margin:0 3px;white-space:nowrap}.info-item i[data-v-480beb5c]{margin-right:3px;font-size:14px}.info-value[data-v-480beb5c]{display:inline-flex;align-items:center;justify-content:center;font-size:12px;white-space:nowrap}.info-value i[data-v-480beb5c]{margin-right:3px;font-size:14px;color:#409eff}[data-v-480beb5c] .el-table__row{font-size:12px}[data-v-480beb5c] .el-table--mini td{padding:3px 0}.ship-track-viewer[data-v-407c2a5e]{position:absolute;top:10px;right:10px;width:700px;background-color:#fff;border-radius:4px;box-shadow:0 4px 16px 0 rgba(0,0,0,.15);z-index:1000;transition:all .3s ease}.ship-track-viewer.has-open-panels[data-v-407c2a5e]{top:10px;left:10px;right:auto}.track-viewer-header[data-v-407c2a5e]{display:flex;flex-direction:column;padding:8px 15px;border-bottom:1px solid #ebeef5}.track-viewer-header .title[data-v-407c2a5e]{font-weight:700;font-size:16px;margin-bottom:8px}.track-viewer-header .time-range[data-v-407c2a5e]{margin-bottom:8px}.track-viewer-header .actions[data-v-407c2a5e]{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px}.track-viewer-content[data-v-407c2a5e]{padding:15px;max-height:500px;overflow-y:auto;overflow-x:hidden}.empty-data[data-v-407c2a5e],.loading[data-v-407c2a5e]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100px;color:#909399}.empty-data i[data-v-407c2a5e],.loading i[data-v-407c2a5e]{font-size:32px;margin-bottom:10px}.track-summary[data-v-407c2a5e]{display:flex;justify-content:space-between;flex-wrap:wrap}.summary-item[data-v-407c2a5e]{margin-right:15px;margin-bottom:8px}.summary-item .label[data-v-407c2a5e]{font-weight:500;color:#606266;margin-right:5px}.summary-item .value[data-v-407c2a5e]{font-weight:700;color:#303133}.data-table-container[data-v-407c2a5e]{margin-top:15px;border-top:1px solid #ebeef5;padding-top:15px;width:100%;overflow-x:hidden}.vessel-track-line{animation:dash 5s linear infinite}@keyframes dash{to{stroke-dashoffset:-20}}.track-point-label{background-color:rgba(0,0,0,.6);color:#fff;padding:2px 6px;border-radius:3px;font-size:12px;white-space:nowrap;pointer-events:none}.start-point{background-color:rgba(40,167,69,.8)}.end-point{background-color:rgba(220,53,69,.8)}.track-label{background:transparent;border:none}.vessel-edit-drawer[data-v-1ace442f]{height:100%;display:flex;flex-direction:column;padding:0 20px}.drawer-header[data-v-1ace442f]{padding:20px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e6e6e6}.drawer-header h3[data-v-1ace442f]{margin:0;font-size:18px;font-weight:500}.drawer-header i[data-v-1ace442f]{font-size:20px;cursor:pointer;color:#909399}.drawer-header i[data-v-1ace442f]:hover{color:#409eff}.drawer-body[data-v-1ace442f]{flex:1;overflow-y:auto;padding:20px 0}.drawer-footer[data-v-1ace442f]{padding:15px 0;text-align:right;border-top:1px solid #e6e6e6}.ship-info-panel[data-v-11022387]{position:absolute;top:60px;left:20px;width:420px;z-index:1000;max-height:calc(100vh - 120px);overflow-y:auto}.ship-card[data-v-11022387]{border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);background-color:hsla(0,0%,100%,.95)}.ship-card-header[data-v-11022387]{display:flex;justify-content:space-between;align-items:center}.ship-card-actions[data-v-11022387]{display:flex;align-items:center}.ship-card-actions i[data-v-11022387]{margin-left:10px;font-size:16px;cursor:pointer;color:#606266}.ship-card-actions i[data-v-11022387]:hover{color:#409eff}.ship-info-content[data-v-11022387]{max-height:60vh;overflow-y:auto;padding:0 5px}.ship-details-grid[data-v-11022387]{display:flex;flex-wrap:wrap;margin:0 -5px}.ship-details-col[data-v-11022387]{flex:1;min-width:160px;padding:0 5px}.ship-detail-item[data-v-11022387]{padding:5px 0;border-bottom:1px dashed #ebeef5;font-size:13px;display:flex;justify-content:space-between}.detail-label[data-v-11022387]{color:#606266;margin-right:10px;min-width:60px}.detail-value[data-v-11022387]{color:#303133;font-weight:500}.ship-detail-remark[data-v-11022387]{margin-top:10px;border-top:1px solid #ebeef5;padding-top:8px}.full-width[data-v-11022387]{grid-column:span 2}.panel-footer[data-v-11022387]{margin-top:15px;display:flex;justify-content:center;gap:10px}.slide-fade-enter-active[data-v-11022387],.slide-fade-leave-active[data-v-11022387]{transition:all .3s ease}.slide-fade-enter[data-v-11022387],.slide-fade-leave-to[data-v-11022387]{transform:translateX(-20px);opacity:0}.warning-dialog-content[data-v-11022387]>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.warning-dialog-content>*+[data-v-11022387]{margin-top:1.5rem}.section-title[data-v-11022387]{line-height:1.5rem;--tw-text-opacity:1;color:rgba(55,65,81,var(--tw-text-opacity));display:flex;align-items:center;font-size:1rem;font-weight:600;color:#374151;margin-bottom:.75rem;margin:0 0 12px 0}.template-section[data-v-11022387]{--tw-bg-opacity:1;background-color:rgba(249,250,251,var(--tw-bg-opacity));background-color:#f9fafb;padding:1rem;border-radius:.5rem}.template-buttons[data-v-11022387]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.template-btn[data-v-11022387]{padding-left:.75rem;padding-right:.75rem;padding-top:.5rem;padding-bottom:.5rem;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;display:flex;align-items:center;justify-content:center;transition-property:all;transition-duration:.2s;min-height:36px;border-radius:6px}.template-btn[data-v-11022387]:hover{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-scale-x:1.05;--tw-scale-y:1.05;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateX(0) translateY(0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);transform:scale(1.05)}.template-btn.selected[data-v-11022387]{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgba(147,197,253,var(--tw-ring-opacity));box-shadow:0 10px 15px -3px rgba(0,0,0,.1);box-shadow:0 0 0 2px rgba(59,130,246,.5);--tw-ring-color:#93c5fd}.yaw-template.selected[data-v-11022387]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity));background-color:#f97316;color:#fff;border-color:#f97316}.speed-template.selected[data-v-11022387]{border-color:rgba(239,68,68,var(--tw-border-opacity));background-color:rgba(239,68,68,var(--tw-bg-opacity));background-color:#ef4444;border-color:#ef4444}.height-template.selected[data-v-11022387],.speed-template.selected[data-v-11022387]{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity));color:#fff}.height-template.selected[data-v-11022387]{border-color:rgba(139,92,246,var(--tw-border-opacity));background-color:rgba(139,92,246,var(--tw-bg-opacity));background-color:#a855f7;border-color:#a855f7}.stay-template.selected[data-v-11022387]{border-color:rgba(245,158,11,var(--tw-border-opacity));background-color:rgba(245,158,11,var(--tw-bg-opacity));background-color:#eab308;border-color:#eab308}.entry-template.selected[data-v-11022387],.stay-template.selected[data-v-11022387]{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity));color:#fff}.entry-template.selected[data-v-11022387]{border-color:rgba(16,185,129,var(--tw-border-opacity));background-color:rgba(16,185,129,var(--tw-bg-opacity));background-color:#22c55e;border-color:#22c55e}.exit-template.selected[data-v-11022387]{border-color:rgba(59,130,246,var(--tw-border-opacity));background-color:rgba(59,130,246,var(--tw-bg-opacity));background-color:#3b82f6;border-color:#3b82f6}.blacklist-template.selected[data-v-11022387],.exit-template.selected[data-v-11022387]{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity));color:#fff}.blacklist-template.selected[data-v-11022387]{border-color:rgba(31,41,55,var(--tw-border-opacity));background-color:rgba(31,41,55,var(--tw-bg-opacity));background-color:#1f2937;border-color:#1f2937}.content-section[data-v-11022387]{--tw-bg-opacity:1;background-color:rgba(239,246,255,var(--tw-bg-opacity));background-color:#eff6ff;padding:1rem;border-radius:.5rem}.content-textarea[data-v-11022387]{width:100%}.preview-section[data-v-11022387]{--tw-border-opacity:1;border-color:rgba(167,243,208,var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(236,253,245,var(--tw-bg-opacity));background-color:#f0fdf4;padding:1rem;border-radius:.5rem;border-width:1px;border-color:#bbf7d0}.preview-card[data-v-11022387]>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.preview-card[data-v-11022387]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);padding:.75rem;border-radius:.375rem}.preview-card>*+[data-v-11022387]{margin-top:.5rem}.preview-card[data-v-11022387]{box-shadow:0 1px 2px 0 rgba(0,0,0,.05);background-color:#fff}.preview-item[data-v-11022387]{line-height:1.25rem;display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.preview-label[data-v-11022387]{--tw-text-opacity:1;color:rgba(75,85,99,var(--tw-text-opacity));font-weight:500;color:#4b5563}.preview-value[data-v-11022387]{--tw-text-opacity:1;color:rgba(31,41,55,var(--tw-text-opacity));font-weight:600;color:#1f2937}.dialog-footer[data-v-11022387]>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.dialog-footer[data-v-11022387]{--tw-border-opacity:1;border-color:rgba(229,231,235,var(--tw-border-opacity));display:flex;justify-content:flex-end;border-top-width:1px;border-color:#e5e7eb;padding-top:1rem}.mr-1[data-v-11022387]{margin-right:.25rem}.mr-2[data-v-11022387]{margin-right:.5rem}.text-orange-500[data-v-11022387]{color:#f97316}.text-blue-500[data-v-11022387]{color:#3b82f6}.text-green-500[data-v-11022387]{color:#10b981}.bg-gray-50[data-v-11022387]{background-color:#f9fafb}.bg-blue-50[data-v-11022387]{background-color:#eff6ff}.bg-green-50[data-v-11022387]{background-color:#f0fdf4}.p-4[data-v-11022387]{padding:1rem}.p-3[data-v-11022387]{padding:.75rem}.rounded-lg[data-v-11022387]{border-radius:.5rem}.rounded-md[data-v-11022387]{border-radius:.375rem}.space-y-6>*+[data-v-11022387]{margin-top:1.5rem}.space-y-3>*+[data-v-11022387]{margin-top:.75rem}.space-y-2>*+[data-v-11022387]{margin-top:.5rem}.grid[data-v-11022387]{display:grid}.grid-cols-2[data-v-11022387]{grid-template-columns:repeat(2,minmax(0,1fr))}.gap-2[data-v-11022387]{gap:.5rem}.flex[data-v-11022387]{display:flex}.items-center[data-v-11022387]{align-items:center}.justify-center[data-v-11022387]{justify-content:center}.justify-between[data-v-11022387]{justify-content:space-between}.justify-end[data-v-11022387]{justify-content:flex-end}.text-base[data-v-11022387]{font-size:1rem}.text-sm[data-v-11022387]{font-size:.875rem}.font-semibold[data-v-11022387]{font-weight:600}.font-medium[data-v-11022387]{font-weight:500}.text-gray-700[data-v-11022387]{color:#374151}.text-gray-600[data-v-11022387]{color:#4b5563}.text-gray-800[data-v-11022387]{color:#1f2937}.shadow-sm[data-v-11022387]{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.shadow-md[data-v-11022387]{box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.shadow-lg[data-v-11022387]{box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}.transition-all[data-v-11022387]{transition-property:all}.duration-200[data-v-11022387]{transition-duration:.2s}.transform[data-v-11022387]{transform:translateX(0) translateY(0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1)}.scale-105[data-v-11022387]{transform:scale(1.05)}.ring-2[data-v-11022387]{box-shadow:0 0 0 2px rgba(59,130,246,.5)}.ring-blue-300[data-v-11022387]{--tw-ring-color:#93c5fd}.border[data-v-11022387]{border-width:1px}.border-t[data-v-11022387]{border-top-width:1px}.border-gray-200[data-v-11022387]{border-color:#e5e7eb}.border-green-200[data-v-11022387]{border-color:#bbf7d0}.w-full[data-v-11022387]{width:100%}.pt-4[data-v-11022387]{padding-top:1rem}.mb-3[data-v-11022387]{margin-bottom:.75rem}.bg-orange-500[data-v-11022387]{background-color:#f97316}.bg-red-500[data-v-11022387]{background-color:#ef4444}.bg-purple-500[data-v-11022387]{background-color:#a855f7}.bg-yellow-500[data-v-11022387]{background-color:#eab308}.bg-green-500[data-v-11022387]{background-color:#22c55e}.bg-blue-500[data-v-11022387]{background-color:#3b82f6}.bg-gray-800[data-v-11022387]{background-color:#1f2937}.bg-white[data-v-11022387]{background-color:#fff}.text-white[data-v-11022387]{color:#fff}.border-orange-500[data-v-11022387]{border-color:#f97316}.border-red-500[data-v-11022387]{border-color:#ef4444}.border-purple-500[data-v-11022387]{border-color:#a855f7}.border-yellow-500[data-v-11022387]{border-color:#eab308}.border-green-500[data-v-11022387]{border-color:#22c55e}.border-blue-500[data-v-11022387]{border-color:#3b82f6}.border-gray-800[data-v-11022387]{border-color:#1f2937}[class*=custom-point-marker]{background:transparent!important;border:none!important;box-shadow:none!important}.marker-icon-container{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:18px;text-shadow:1px 1px 2px rgba(0,0,0,.5);position:relative;left:0;top:0}[class*=point-marker-label]{background-color:rgba(0,0,0,.7)!important;border:none!important;box-shadow:none!important;color:#fff!important;font-weight:700!important;padding:4px 8px!important;border-radius:4px!important;font-size:12px!important;white-space:nowrap!important;text-align:center!important;pointer-events:none!important;z-index:1000!important}.draggable-panel-container[data-v-46d24e56]{position:absolute;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.15);display:flex;flex-direction:column;overflow:hidden}.draggable-panel-head[data-v-46d24e56]{background-color:#1e3a8a;color:#fff;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.draggable-panel-head[data-v-46d24e56]:hover{background-color:#1e40af}.draggable-panel-head[data-v-46d24e56]:active{cursor:grabbing}.draggable-panel-title[data-v-46d24e56]{display:flex;align-items:center;gap:8px;font-weight:500;font-size:16px;pointer-events:none}.draggable-panel-nav[data-v-46d24e56]{display:flex;align-items:center;gap:15px}.nav-item[data-v-46d24e56]{padding:0 10px;cursor:pointer;position:relative;white-space:nowrap;font-size:14px;opacity:.8;transition:opacity .3s;display:flex;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.nav-item[data-v-46d24e56]:hover{opacity:1}.nav-item.active[data-v-46d24e56]{opacity:1;font-weight:500}.nav-item.active[data-v-46d24e56]:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background-color:#fff}.badge[data-v-46d24e56]{background-color:#ff4d4f;color:#fff;font-size:12px;padding:0 5px;border-radius:10px;min-width:16px;height:16px;line-height:16px;text-align:center;margin-left:5px;display:inline-block}.draggable-panel-icon[data-v-46d24e56]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;transition:background-color .3s;margin-left:10px}.draggable-panel-icon[data-v-46d24e56]:hover{background-color:hsla(0,0%,100%,.2)}.draggable-panel-content[data-v-46d24e56]{flex:1;overflow:hidden;position:relative;-webkit-user-select:text;-moz-user-select:text;user-select:text}.draggable-panel-container.dragging [data-v-46d24e56]{pointer-events:none}@media (max-width:1200px){.draggable-panel-container[data-v-46d24e56]{max-width:95vw}}.panel-content[data-v-6c90f460]{padding:0;max-height:70vh;overflow-y:auto}.alert-info-card[data-v-6c90f460]{background-color:#f8f9fa;border-radius:4px;padding:15px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.alert-info-row[data-v-6c90f460]{display:flex;flex-wrap:wrap;margin-bottom:12px;gap:15px}.alert-info-item[data-v-6c90f460]{display:flex;align-items:center}.label[data-v-6c90f460]{color:#606266;font-size:13px;margin-right:5px;white-space:nowrap}.value[data-v-6c90f460]{color:#303133;font-size:13px;font-weight:500}.alert-message[data-v-6c90f460]{padding:10px 15px;background-color:#fff;border-radius:4px;font-size:14px;line-height:1.5;color:#303133;margin-bottom:12px;border-left:3px solid #409eff}.alert-handle-area[data-v-6c90f460]{margin-top:10px}.handle-row[data-v-6c90f460]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.handle-options[data-v-6c90f460]{display:flex;gap:15px;margin-right:10px}.handle-input[data-v-6c90f460]{flex:1;margin:0 10px}.handle-info-row[data-v-6c90f460]{display:flex;flex-wrap:wrap;background-color:#fff;padding:10px;border-radius:4px;gap:20px}.info-item[data-v-6c90f460]{display:flex;align-items:center}.info-label[data-v-6c90f460]{color:#606266;font-size:13px;margin-right:5px}.additional-info[data-v-6c90f460]{margin-top:10px;font-size:12px;color:#909399;display:flex;justify-content:flex-end}.source-tag[data-v-6c90f460]{background-color:#f0f2f5;padding:2px 6px;border-radius:2px;margin-right:5px}.source-id[data-v-6c90f460]{color:#c0c4cc}.alert-records-container[data-v-6c90f460],.alert-unhandled-container[data-v-6c90f460]{padding:5px}.toolbar[data-v-6c90f460]{margin-bottom:15px;display:flex;justify-content:space-between}.search-form[data-v-6c90f460]{margin-bottom:15px;border-bottom:1px solid #eaeaea;padding-bottom:10px}.pagination-container[data-v-6c90f460]{margin-top:15px;text-align:right}.el-divider[data-v-6c90f460]{margin:10px 0}.compact-form .el-form-item[data-v-6c90f460]{margin-bottom:5px;margin-right:5px}.search-buttons[data-v-6c90f460]{display:flex;gap:5px}.search-buttons-item[data-v-6c90f460]{margin-right:0}.expanded-row[data-v-6c90f460]{padding:8px 15px;background-color:#fafafa}.alert-message-expanded[data-v-6c90f460]{color:#606266;line-height:1.5;font-size:13px}.alert-message-cell[data-v-6c90f460]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.el-dropdown[data-v-6c90f460]{width:100%}.el-dropdown .el-button[data-v-6c90f460]{width:100%;text-align:center}.el-dropdown-menu__item[data-v-6c90f460]{display:flex;align-items:center;gap:8px}.el-dropdown-menu__item i[data-v-6c90f460]{margin-right:0}.panel-content[data-v-745d6a67]{padding:0;max-height:68vh}.search-form[data-v-745d6a67]{margin:12px 16px;padding:12px 16px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.inline-search-form[data-v-745d6a67]{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.inline-search-form .el-form-item[data-v-745d6a67]{margin-bottom:0;margin-right:0;display:flex;align-items:center;white-space:nowrap}.inline-search-form .el-form-item__label[data-v-745d6a67]{margin-right:8px;padding-right:0;color:#606266;font-weight:500;font-size:13px;line-height:1}.inline-search-form .el-form-item__content[data-v-745d6a67]{margin-left:0!important;line-height:1}.form-item-mmsi[data-v-745d6a67],.form-item-time[data-v-745d6a67]{min-width:auto}.form-item-buttons[data-v-745d6a67]{margin-left:auto}.form-item-buttons .el-button[data-v-745d6a67]{margin-left:8px}.form-item-buttons .el-button[data-v-745d6a67]:first-child{margin-left:0}@media (max-width:1200px){.inline-search-form[data-v-745d6a67]{flex-wrap:wrap;gap:12px}.form-item-buttons[data-v-745d6a67]{margin-left:0;width:100%;margin-top:8px}.form-item-time .el-date-editor[data-v-745d6a67]{width:300px!important}}.table-section[data-v-745d6a67]{padding:5px}.el-table[data-v-745d6a67]{border-radius:6px;overflow:hidden}.el-table th[data-v-745d6a67]{color:#606266;font-weight:600}.el-table tbody tr:hover>td[data-v-745d6a67],.el-table th[data-v-745d6a67]{background-color:#f5f7fa!important}.pagination-section[data-v-745d6a67]{margin-top:15px;text-align:right}.record-detail[data-v-745d6a67]{padding:16px 0}.detail-item[data-v-745d6a67]{display:flex;align-items:center;margin-bottom:16px;padding:8px 0}.detail-label[data-v-745d6a67]{color:#606266;font-weight:500;min-width:100px;margin-right:12px}.detail-value[data-v-745d6a67]{color:#303133;flex:1;word-break:break-all}.el-button--text[data-v-745d6a67]{padding:4px 8px}.el-tag[data-v-745d6a67]{border-radius:4px}.el-divider[data-v-745d6a67]{margin:10px 0}.panel-content[data-v-ded57e10]{padding:0;max-height:75vh;overflow-y:auto}.search-form[data-v-ded57e10]{margin:12px 16px;padding:12px 16px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.inline-search-form[data-v-ded57e10]{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.inline-search-form .el-form-item[data-v-ded57e10]{margin-bottom:0;margin-right:0;display:flex;align-items:center;white-space:nowrap}.inline-search-form .el-form-item__label[data-v-ded57e10]{margin-right:8px;padding-right:0;color:#606266;font-weight:500;font-size:13px;line-height:1}.inline-search-form .el-form-item__content[data-v-ded57e10]{margin-left:0!important;line-height:1}.form-item-bridge[data-v-ded57e10],.form-item-vessel-type[data-v-ded57e10]{min-width:auto}.form-item-bridge[data-v-ded57e10]{position:relative}.permission-info-icon[data-v-ded57e10]{margin-left:8px;color:#909399;cursor:help;font-size:14px}.form-item-time[data-v-ded57e10]{min-width:auto}.form-item-buttons[data-v-ded57e10]{margin-left:auto}.form-item-buttons .el-button[data-v-ded57e10]{margin-left:8px}.form-item-buttons .el-button[data-v-ded57e10]:first-child{margin-left:0}.statistics-overview[data-v-ded57e10]{display:flex;gap:16px;margin:16px;margin-bottom:20px}.overview-card[data-v-ded57e10]{flex:1;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.card-header[data-v-ded57e10]{display:flex;align-items:center;margin-bottom:12px}.card-icon[data-v-ded57e10]{font-size:18px;margin-right:8px}.card-title[data-v-ded57e10]{font-size:14px;opacity:.9}.card-value[data-v-ded57e10]{font-size:28px;font-weight:700;line-height:1}.card-value-small[data-v-ded57e10]{font-size:16px;font-weight:500;line-height:1.2}.charts-section[data-v-ded57e10]{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:16px}.chart-container[data-v-ded57e10]{background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);overflow:hidden}.chart-header[data-v-ded57e10]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fafafa;border-bottom:1px solid #e8e8e8}.chart-header h3[data-v-ded57e10]{margin:0;font-size:16px;font-weight:600;color:#303133}.chart-header .el-icon-info[data-v-ded57e10]{color:#909399;cursor:help}.chart-content[data-v-ded57e10]{padding:16px}.chart-echarts[data-v-ded57e10]{width:100%;height:300px;min-height:300px}@media (max-width:1400px){.charts-section[data-v-ded57e10]{grid-template-columns:1fr}.chart-echarts[data-v-ded57e10]{height:280px}}@media (max-width:1200px){.inline-search-form[data-v-ded57e10]{flex-wrap:wrap;gap:12px}.form-item-buttons[data-v-ded57e10]{margin-left:0;width:100%;margin-top:8px}.form-item-time .el-date-editor[data-v-ded57e10]{width:300px!important}.statistics-overview[data-v-ded57e10]{flex-direction:column}}.panel-content[data-v-3b4c2c88]{padding:0;max-height:70vh}.statistics-container[data-v-3b4c2c88]{background-color:#f8f9fa;border-radius:4px;padding:15px;margin:15px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.statistics-row[data-v-3b4c2c88]{display:flex;justify-content:space-around;align-items:center}.stat-item[data-v-3b4c2c88]{text-align:center;flex:1}.stat-number[data-v-3b4c2c88]{font-size:24px;font-weight:700;color:#409eff;margin-bottom:5px}.stat-label[data-v-3b4c2c88]{font-size:12px;color:#606266}.search-form[data-v-3b4c2c88]{margin:15px 0 15px 15px;border-bottom:1px solid #eaeaea;padding-bottom:10px}.compact-form .el-form-item[data-v-3b4c2c88]{margin-bottom:5px;margin-right:5px}.search-buttons[data-v-3b4c2c88]{display:flex;gap:5px}.search-buttons-item[data-v-3b4c2c88]{margin-right:0}.records-container[data-v-3b4c2c88]{padding:5px;overflow-x:hidden}.el-table[data-v-3b4c2c88]{width:100%!important}.el-table__body-wrapper[data-v-3b4c2c88]{overflow-x:hidden}.el-dropdown[data-v-3b4c2c88]{width:100%}.el-dropdown .el-button[data-v-3b4c2c88]{width:100%;text-align:center}.el-dropdown-menu__item[data-v-3b4c2c88]{display:flex;align-items:center;gap:8px}.el-dropdown-menu__item i[data-v-3b4c2c88]{margin-right:0}.pagination-container[data-v-3b4c2c88]{margin-top:15px;text-align:right}.record-info-card[data-v-3b4c2c88]{background-color:#f8f9fa;border-radius:4px;padding:15px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.record-info-row[data-v-3b4c2c88]{display:flex;flex-wrap:wrap;margin-bottom:12px;gap:15px}.record-info-item[data-v-3b4c2c88]{display:flex;align-items:center}.label[data-v-3b4c2c88]{color:#606266;font-size:13px;margin-right:5px;white-space:nowrap}.value[data-v-3b4c2c88]{color:#303133;font-size:13px;font-weight:500}.record-message[data-v-3b4c2c88]{padding:10px 15px;background-color:#fff;border-radius:4px;font-size:14px;line-height:1.5;color:#303133;margin-bottom:12px;border-left:3px solid #409eff}.record-handle-area[data-v-3b4c2c88]{margin-top:10px}.handle-row[data-v-3b4c2c88]{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.handle-options[data-v-3b4c2c88]{display:flex;gap:15px;margin-right:10px}.handle-input[data-v-3b4c2c88]{flex:1;margin:0 10px}.record-handled-info[data-v-3b4c2c88]{margin-top:10px}.handle-info-row[data-v-3b4c2c88]{display:flex;flex-wrap:wrap;background-color:#fff;padding:10px;border-radius:4px;gap:20px}.info-item[data-v-3b4c2c88]{display:flex;align-items:center}.info-label[data-v-3b4c2c88]{color:#606266;font-size:13px;margin-right:5px}.alert-message-cell[data-v-3b4c2c88]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.el-divider[data-v-3b4c2c88]{margin:10px 0}.panel-content[data-v-3c36a353]{padding:0;max-height:70vh;overflow-y:auto}.alert-rules-container[data-v-3c36a353]{padding:5px}.alert-rules-table[data-v-3c36a353]{margin-bottom:20px}.category-cell[data-v-3c36a353],.level-cell[data-v-3c36a353]{display:inline-block;padding:4px 8px;border-radius:4px;min-width:60px;text-align:center}.rule-content[data-v-3c36a353]{padding:8px;line-height:1.4;text-align:left}.detection-method[data-v-3c36a353]{padding:8px;line-height:1.4}.disposal-header[data-v-3c36a353]{text-align:center}.disposal-title[data-v-3c36a353]{font-size:16px;font-weight:800;margin-bottom:5px}.disposal-subtitle[data-v-3c36a353]{display:flex;justify-content:space-around;font-size:14px;font-weight:600}.subtitle-item[data-v-3c36a353]{flex:1;text-align:center}.disposal-content[data-v-3c36a353]{padding:10px;text-align:left}.action-title[data-v-3c36a353]{font-weight:700;margin-bottom:8px;color:#409eff}.action-items[data-v-3c36a353]{margin-bottom:15px}.action-item[data-v-3c36a353]{margin-bottom:5px}.action-content-text[data-v-3c36a353],.action-item[data-v-3c36a353]{line-height:1.4;padding-left:10px}.rules-description[data-v-3c36a353]{margin-top:20px}.description-content p[data-v-3c36a353]{margin:5px 0;line-height:1.6}.rules-config-container[data-v-3c36a353]{padding:5px}.config-info-card[data-v-3c36a353]{background-color:#f8f9fa;border-radius:4px;padding:15px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.config-info-row[data-v-3c36a353]{display:flex;flex-wrap:wrap;margin-bottom:12px;gap:15px}.config-info-item[data-v-3c36a353]{display:flex;align-items:center}.label[data-v-3c36a353]{color:#606266;font-size:13px;margin-right:5px;white-space:nowrap}.value[data-v-3c36a353]{color:#303133;font-size:13px;font-weight:500}.config-message[data-v-3c36a353]{padding:10px 15px;background-color:#fff;border-radius:4px;font-size:14px;line-height:1.5;color:#303133;margin-bottom:12px;border-left:3px solid #409eff}.config-actions[data-v-3c36a353]{display:flex;gap:10px;margin-top:15px}[data-v-3c36a353] .el-table th{background-color:#c9d1ee!important;color:#333!important;font-weight:800!important;text-align:center!important;padding:12px 8px!important}[data-v-3c36a353] .el-table td{padding:12px 8px!important;vertical-align:top!important}[data-v-3c36a353] .el-table--border{border:2px solid #c9d1ee}[data-v-3c36a353] .el-table--border td,[data-v-3c36a353] .el-table--border th{border-right:1px solid #c9d1ee;border-bottom:1px solid #c9d1ee}.el-divider[data-v-3c36a353]{margin:10px 0}.map-container[data-v-d04f2d14]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.map-content[data-v-d04f2d14]{flex:1;position:relative}.radar-popup[data-v-d04f2d14]{min-width:200px}.alert-carousel-container[data-v-d04f2d14]{position:absolute;top:10px;left:45%;transform:translateX(-50%);z-index:1000;width:60%;max-width:720px;background-color:rgba(0,0,0,.7);border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.3);overflow:hidden;border:1px solid rgba(255,77,79,.5)}.alert-carousel[data-v-d04f2d14]{width:100%}.alert-message[data-v-d04f2d14]{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 15px;color:#ff4d4f;font-weight:700;position:relative;overflow:hidden}.alert-message i.el-icon-warning-outline[data-v-d04f2d14]{margin-right:10px;font-size:18px;color:#ff4d4f;flex-shrink:0}.alert-message span[data-v-d04f2d14]{white-space:nowrap;display:inline-block;animation:marquee-d04f2d14 15s linear infinite;padding-right:50px}.alert-info[data-v-d04f2d14]{display:flex;align-items:center;position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:10;gap:8px}.alert-close[data-v-d04f2d14]{margin-left:0;cursor:pointer;color:#fff;opacity:.8;padding:4px;border-radius:50%;transition:all .2s ease}.alert-close[data-v-d04f2d14]:hover{opacity:1;color:#ff4d4f;background-color:rgba(255,77,79,.2)}@keyframes marquee-d04f2d14{0%{transform:translateX(100%)}to{transform:translateX(-120%)}}.alert-fade-enter-active[data-v-d04f2d14],.alert-fade-leave-active[data-v-d04f2d14]{transition:opacity .5s,transform .5s}.alert-fade-enter[data-v-d04f2d14],.alert-fade-leave-to[data-v-d04f2d14]{opacity:0;transform:translateX(-50%) translateY(-20px)}.ship-monitor-container[data-v-ebed01c8]{width:100%;height:100%;position:relative}.ship-trajectory-container[data-v-62065fec]{height:100%;padding:15px;background-color:#f5f7fa;display:flex;flex-direction:column;overflow:hidden}.filter-section[data-v-62065fec]{background-color:#fff;border-radius:4px;padding:15px 15px 0 15px;margin-bottom:15px;box-shadow:0 1px 4px rgba(0,0,0,.1)}.search-form[data-v-62065fec]{display:flex;flex-wrap:wrap;align-items:center}.main-content[data-v-62065fec]{flex:1;min-height:calc(100vh - 240px);overflow:hidden}.trajectory-info[data-v-62065fec]{width:100%;height:100%;display:flex;flex-direction:column}.trajectory-info[data-v-62065fec] .el-card__body{flex:1;overflow:auto;padding-bottom:10px}.card-header[data-v-62065fec]{display:flex;justify-content:space-between;align-items:center}.trajectory-summary[data-v-62065fec]{margin-bottom:15px}.summary-title[data-v-62065fec]{font-size:16px;font-weight:500;margin-bottom:10px;color:#303133}.pagination-container[data-v-62065fec]{margin-top:15px;display:flex;justify-content:flex-end}.empty-data[data-v-62065fec]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:#909399}.empty-data i[data-v-62065fec]{font-size:64px;margin-bottom:15px;color:#dcdfe6}.vessel-list-container[data-v-1556e5e8]{padding:20px}.page-header[data-v-1556e5e8]{margin-bottom:20px}.page-header h2[data-v-1556e5e8]{font-size:20px;font-weight:500;margin:0}.search-box[data-v-1556e5e8]{margin-bottom:20px}.search-form[data-v-1556e5e8]{display:flex;flex-wrap:wrap;align-items:center}.add-vessel-btn[data-v-1556e5e8]{margin-left:auto}.pagination-container[data-v-1556e5e8]{margin-top:20px;text-align:right}.vessel-management-container[data-v-ed63a31c]{padding:20px}.form-container[data-v-ed63a31c]{max-width:1200px}.bridge-list-container[data-v-9780e2b6]{padding:20px}.page-header[data-v-9780e2b6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.search-box[data-v-9780e2b6]{margin-bottom:20px}.search-form[data-v-9780e2b6]{display:flex;flex-wrap:wrap;align-items:center}.pagination-container[data-v-9780e2b6]{margin-top:20px;display:flex;justify-content:flex-end}.el-table[data-v-9780e2b6]{margin-top:15px}.drawing-toolbar[data-v-32445fda]{position:absolute;top:80px;right:15px;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);padding:8px;z-index:1000;display:flex;flex-direction:column;gap:10px;min-width:120px}.toolbar-title[data-v-32445fda]{font-size:13px;font-weight:700;color:#606266;border-bottom:1px solid #ebeef5;padding-bottom:8px;display:flex;align-items:center;gap:5px}.toolbar-buttons[data-v-32445fda]{display:flex;flex-direction:column;gap:8px;align-items:center}.points-info[data-v-32445fda]{font-size:12px;color:#909399;text-align:center;margin-top:5px}.bridge-map{width:100%;height:100%;position:relative}.drawing-hint{position:absolute;top:70px;left:50%;transform:translateX(-50%);background-color:rgba(255,153,0,.8);color:#fff;padding:8px 16px;border-radius:4px;display:flex;align-items:center;gap:8px;z-index:1000}.editing-hint{background-color:rgba(64,158,255,.8)}.context-menu{position:fixed;z-index:2000;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.15);width:160px;overflow:hidden}.context-menu ul{list-style:none;margin:0;padding:0}.context-menu li{padding:8px 16px;cursor:pointer;transition:all .3s;font-size:14px;display:flex;align-items:center}.context-menu li:hover{background-color:#f0f2f5;color:#409eff}.context-menu li i{margin-right:8px}.context-menu li.disabled{cursor:not-allowed}.context-menu li.disabled,.context-menu li.disabled:hover{color:#c0c4cc;background-color:#f7f7f7}.drawing-point{cursor:default;transition:transform .2s}.drawing-point:hover{transform:scale(1.2)}.drawing-point-marker{position:absolute;width:12px;height:12px;border-radius:50%;margin-top:-6px;margin-left:-6px;z-index:1000;box-shadow:0 0 2px rgba(0,0,0,.5);transition:transform .2s,opacity .2s;pointer-events:auto;touch-action:none}.drawing-point-marker.point-marker-style{opacity:0;background-color:transparent;border:2px solid transparent}.drawing-point-marker.polygon-marker-style{opacity:1;background-color:rgba(64,158,255,.6);border:2px solid #409eff}.drawing-point-marker.point-marker-style:hover{transform:scale(1.5);z-index:1001;opacity:.5;background-color:rgba(64,158,255,.2);border:2px dashed rgba(64,158,255,.6)}.drawing-point-marker.polygon-marker-style:hover{transform:scale(1.5);z-index:1001;opacity:.8;background-color:rgba(64,158,255,.8);border:2px solid #409eff}.drawing-point-marker.point-marker-style.dragging{background-color:rgba(255,102,0,.7)!important;border:2px dashed #f60!important;box-shadow:0 0 12px rgba(255,102,0,.6)!important;opacity:1!important}.drawing-point-marker.polygon-marker-style.dragging{transform:scale(1.8);box-shadow:0 0 8px rgba(0,0,0,.8);z-index:1002;background-color:rgba(255,204,0,.8)!important;border-color:#f60!important;opacity:1!important}.drawing-point-marker.polygon-marker-style:hover{cursor:pointer}.rectangle-dragging-nw{cursor:nw-resize!important}.rectangle-dragging-ne{cursor:ne-resize!important}.rectangle-dragging-sw{cursor:sw-resize!important}.rectangle-dragging-se{cursor:se-resize!important}.drawing-point-marker.point-marker.dragging{opacity:1;background-color:rgba(255,0,0,.2);border:2px solid red;transform:scale(1.3)}.drawing-point-marker.dragging{opacity:1;background-color:rgba(255,0,0,.3);border:3px solid red;transform:scale(1.4);box-shadow:0 0 8px rgba(255,0,0,.6)}.area-label{background-color:rgba(0,0,0,.6)!important;border:none!important;box-shadow:none!important;color:#fff!important;font-weight:700!important;padding:3px 8px!important;border-radius:4px!important;font-size:12px!important;white-space:nowrap!important;text-align:center!important}.area-label-drawing{background-color:rgba(255,153,0,.8)!important;border:1px dashed #fff!important}.map-layer-manager{position:absolute;z-index:1200;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.15);width:250px;max-height:calc(100vh - 100px);overflow:hidden;display:flex;flex-direction:column;top:60px;right:10px}.map-layer-manager-title{padding:10px 15px;background-color:#f0f2f5;border-bottom:1px solid #dcdfe6;display:flex;align-items:center;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.map-layer-manager-title i{margin-right:8px;font-size:16px;color:#606266}.map-layer-manager-content{flex:1;overflow-y:auto;padding:10px 0;max-height:calc(100vh - 150px)}.map-layer-group{margin-bottom:10px}.map-layer-group-title{padding:0 15px;margin:5px 0;font-size:14px;font-weight:500;color:#303133}.map-layer-list{display:flex;flex-wrap:wrap;padding:5px 10px}.map-layer-item{margin:3px 5px;padding:4px 8px;background-color:#f4f4f5;color:#909399;border-radius:3px;font-size:12px;cursor:pointer;transition:all .3s}.map-layer-item:hover{background-color:#e9e9eb}.map-layer-item.active{background-color:#409eff;color:#fff}.custom-point-marker{border:none!important;position:relative!important}.point-marker-label{background-color:rgba(0,0,0,.6)!important;border:none!important;box-shadow:none!important;color:#fff!important;padding:3px 8px!important;border-radius:4px!important;text-align:center!important}.point-marker{width:40px!important;height:40px!important;border-radius:0!important;border:2px dashed #f60!important;background-color:transparent!important;box-sizing:border-box!important;margin-left:-20px!important;margin-top:-20px!important;z-index:999!important;position:absolute!important;pointer-events:auto!important}.point-marker:hover{border-color:#f90!important;border-width:2px!important}.point-marker.dragging{border-color:#fc0!important;border-width:3px!important;border-style:dashed!important}.drawing-point-marker.dragging{transform:scale(1.2);background-color:transparent!important;border:2px dashed #f60!important;box-shadow:none!important;z-index:1002}.drag-preview-marker{position:absolute;width:10px;height:10px;border-radius:50%;background-color:rgba(255,102,0,.7);border:2px solid #fff;box-shadow:0 0 5px rgba(0,0,0,.5);margin-left:-5px;margin-top:-5px;z-index:1003;pointer-events:none}.custom-point-marker{z-index:1500!important;background:none!important}.saved-point-marker .marker-icon-container{border:2px solid #409eff;box-shadow:0 0 12px rgba(64,158,255,.4)}.saved-point-marker .marker-icon-container:hover{transform:scale(1.1);box-shadow:0 0 16px rgba(64,158,255,.6)}.marker-icon-container{display:flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;background-color:#fff!important;border-radius:50%!important;box-shadow:0 2px 5px rgba(0,0,0,.3)!important;z-index:1500!important}.marker-icon-container i{font-size:18px!important}.point-marker-label{background-color:hsla(0,0%,100%,.9)!important;border:1px solid #ddd!important;border-radius:3px!important;padding:3px 6px!important;font-size:12px!important;font-weight:700!important;box-shadow:0 1px 3px rgba(0,0,0,.2)!important;white-space:nowrap!important;color:#409eff!important}.marker-icon-container{transition:transform .2s ease,box-shadow .2s ease!important}.marker-icon-container:hover{transform:scale(1.1)!important;box-shadow:0 3px 8px rgba(0,0,0,.4)!important}.drawing-point-marker{transition:all .2s ease!important}.leaflet-marker-icon.leaflet-div-icon{background:transparent!important;border:none!important;pointer-events:auto!important}.custom-point-marker-icon{background-color:#fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.25);transition:all .2s ease;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:2px solid transparent}.custom-point-marker-icon:hover{transform:scale(1.1);box-shadow:0 4px 12px rgba(0,0,0,.35);border-color:rgba(64,158,255,.3)}.custom-point-marker-icon i{font-size:inherit;line-height:1}.point-marker-label-custom{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;background-color:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.1);border-radius:4px;padding:2px 6px;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 1px 4px rgba(0,0,0,.15);z-index:1;pointer-events:none}.custom-point-marker-icon.dragging{transform:scale(1.2);border-color:#f60;border-style:dashed;box-shadow:0 4px 16px rgba(255,102,0,.4);z-index:1001}.custom-point-marker-icon.editing{border-color:rgba(255,153,0,.5)}.custom-point-marker-icon.editing:hover{border-color:#f90}[class^=custom-measure-icon]{border:none!important;background:transparent!important}.measure-label{background-color:hsla(0,0%,100%,.95);border:1px solid #f44;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:700;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.2);transform-origin:center center;white-space:nowrap}.measure-distance{color:#f44;font-weight:700;margin-bottom:2px}.measure-bearing{color:#666;font-size:10px}.measure-start-point{border:none!important;background:transparent!important}.measure-start-marker{width:12px;height:12px;background-color:#f44;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.3)}.measure-preview-tooltip-container{border:none!important;background:transparent!important}.measure-preview-tooltip{background-color:rgba(0,0,0,.7);color:#fff;border-radius:4px;padding:6px 10px;font-size:12px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.3);white-space:nowrap;opacity:.8}.measure-preview-distance{font-weight:700;margin-bottom:2px}.measure-preview-bearing{font-size:10px;opacity:.9}[class^=measure-delete-container]{border:none!important;background:transparent!important}.measure-delete-marker{width:24px;height:24px;background-color:#f44;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:all .2s ease;z-index:1000;position:relative}.measure-delete-marker:hover{background-color:#f66;transform:scale(1.1)}.measure-delete-marker i{color:#fff;font-size:14px;font-weight:700}.active-location-btn[data-v-22fe56e9]{background-color:#409eff;color:#fff;border-color:#409eff}.coord-hint[data-v-22fe56e9]{font-size:12px;color:#909399;margin-top:5px}.bridge-header[data-v-a06da556]{display:flex;align-items:center;justify-content:space-between;padding:0 10px;height:60px;background-color:#f5f7fa;box-shadow:0 1px 4px rgba(0,0,0,.08);width:100%}.header-left[data-v-a06da556]{display:flex;align-items:center;width:30%}.back-btn[data-v-a06da556]{margin-right:10px;border-radius:4px;font-size:12px;padding:7px 15px;height:32px;line-height:1;transition:all .3s ease}.back-btn[data-v-a06da556]:hover{transform:translateX(-2px);opacity:.9}.bridge-title[data-v-a06da556]{margin:0;font-size:16px;font-weight:600;color:#303133;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.header-center[data-v-a06da556]{flex:1;display:flex;justify-content:center}.header-right-spacer[data-v-a06da556]{width:30%}.tab-radio-group[data-v-a06da556]{display:flex}.fixed-width-tab[data-v-a06da556]{min-width:100px;flex:1;text-align:center;display:flex;justify-content:center}.tab-radio-group .el-radio-button__inner[data-v-a06da556]{width:100%;display:flex;justify-content:center}.active-tab[data-v-a06da556]{color:#409eff!important;background-color:#ecf5ff!important;border-color:#d9ecff!important;font-weight:700}@media (max-width:768px){.header-center[data-v-a06da556]{display:none}.bridge-title[data-v-a06da556]{max-width:150px}}.info-panel[data-v-284d458e]{position:absolute;top:10px;left:10px;width:360px;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);transition:all .3s ease;z-index:10;max-height:calc(100vh - 140px);display:flex;flex-direction:column}.info-panel-collapsed[data-v-284d458e]{width:auto;background-color:hsla(0,0%,100%,.9)}.panel-control[data-v-284d458e]{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;border-bottom:1px solid #ebeef5;background-color:#f5f7fa;border-radius:4px 4px 0 0}.panel-title[data-v-284d458e]{margin:0;font-size:14px;display:flex;align-items:center;gap:5px}.panel-actions[data-v-284d458e]{display:flex;align-items:center;gap:10px}.save-btn[data-v-284d458e]{padding:5px 10px;height:28px;line-height:1}.collapse-icon[data-v-284d458e]{cursor:pointer;font-size:16px;color:#606266;padding:5px}.collapse-icon[data-v-284d458e]:hover{color:#409eff}.panel-content[data-v-284d458e]{padding:15px;overflow-y:auto;flex-grow:1}.panel-loading[data-v-284d458e]{padding:20px 0}@media (max-width:768px){.info-panel[data-v-284d458e]{width:300px;left:0;top:0;height:100%;max-height:none;border-radius:0}.info-panel-collapsed[data-v-284d458e]{transform:translateX(-100%)}}.rule-drawer[data-v-a63320da]{overflow:hidden}.rule-drawer-content[data-v-a63320da]{padding:20px;height:100%;display:flex;flex-direction:column}.rule-form[data-v-a63320da]{flex:1;overflow-y:auto}.drawer-footer[data-v-a63320da]{padding:10px 20px;border-top:1px solid #e6e6e6;display:flex;justify-content:flex-end;gap:10px;margin:0 -20px;background-color:#fff}.form-help[data-v-a63320da]{margin-top:8px;font-size:12px;color:#909399}.variable-tag[data-v-a63320da]{margin-right:5px;margin-bottom:5px;cursor:pointer}.variable-tag[data-v-a63320da]:hover{opacity:.8}[data-v-a63320da] .el-drawer__container{position:absolute!important}[data-v-a63320da] .el-drawer__mask{background-color:transparent!important}.area-panel[data-v-4430e823]{position:absolute;top:10px;left:10px;width:340px;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);transition:all .3s ease;z-index:10;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.area-panel-collapsed[data-v-4430e823]{width:auto;background-color:hsla(0,0%,100%,.9)}.panel-control[data-v-4430e823]{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;border-bottom:1px solid #ebeef5;background-color:#f5f7fa;border-radius:4px 4px 0 0;flex-shrink:0}.panel-title[data-v-4430e823]{margin:0;font-size:14px;display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.panel-actions[data-v-4430e823]{display:flex;align-items:center;gap:10px;flex-shrink:0}.collapse-icon[data-v-4430e823]{cursor:pointer;font-size:16px;color:#606266;padding:5px}.collapse-icon[data-v-4430e823]:hover{color:#409eff}.panel-content[data-v-4430e823]{padding:12px;overflow-y:auto;flex-grow:1;height:calc(90vh - 50px)}.panel-loading[data-v-4430e823]{padding:15px 0}.area-toolbar[data-v-4430e823]{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap}.is-active[data-v-4430e823]{background-color:#409eff;color:#fff}.area-list-container[data-v-4430e823]{margin-bottom:15px}.list-title[data-v-4430e823]{font-size:14px;font-weight:600;margin:0 0 8px 0;color:#303133;display:flex;align-items:center}.area-count[data-v-4430e823]{font-size:12px;color:#909399;margin-left:5px}.area-list[data-v-4430e823]{max-height:calc(90vh - 180px);overflow-y:auto;border:1px solid #ebeef5;border-radius:4px}.area-item[data-v-4430e823]{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid #ebeef5;cursor:pointer;transition:background-color .2s}.area-item[data-v-4430e823]:last-child{border-bottom:none}.area-item[data-v-4430e823]:hover{background-color:#f5f7fa}.area-item-selected[data-v-4430e823]{background-color:#ecf5ff}.area-info[data-v-4430e823]{display:flex;flex-direction:column;overflow:hidden;flex:1}.area-name[data-v-4430e823]{font-size:13px;color:#303133}.area-id[data-v-4430e823],.area-name[data-v-4430e823]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.area-id[data-v-4430e823]{font-size:11px;color:#909399}.area-actions[data-v-4430e823]{display:flex;gap:5px;flex-shrink:0}.is-area-hidden[data-v-4430e823]{filter:grayscale(100%);opacity:.5}.no-areas[data-v-4430e823]{padding:15px;text-align:center;color:#909399;font-size:13px}.area-form[data-v-4430e823]{background-color:#f5f7fa;border-radius:4px;padding:15px;border:1px solid #ebeef5}.form-item[data-v-4430e823]{margin-bottom:12px}.label[data-v-4430e823]{font-size:13px;color:#606266;display:block;margin-bottom:5px}.area-alert-rules[data-v-4430e823]{margin-top:20px;border-top:1px dashed #dcdfe6;padding-top:15px}.alert-rules-header[data-v-4430e823]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.alert-rules-header h5[data-v-4430e823]{margin:0;font-size:14px;color:#303133}.alert-rules-list[data-v-4430e823]{max-height:200px;overflow-y:auto}.rules-loading[data-v-4430e823]{padding:10px;background-color:#f9f9f9;border-radius:4px}.alert-rule-item[data-v-4430e823]{border:1px solid #ebeef5;border-radius:4px;margin-bottom:8px;padding:8px 10px;cursor:pointer;transition:all .3s;display:flex;justify-content:space-between;align-items:center;background-color:#fff}.alert-rule-item[data-v-4430e823]:hover{background-color:#f5f7fa;border-color:#dcdfe6}.rule-info[data-v-4430e823]{display:flex;flex-direction:column;gap:5px;flex:1;overflow:hidden}.rule-type[data-v-4430e823]{font-size:12px;display:flex;flex-wrap:wrap;gap:5px;margin-bottom:5px}.rule-name[data-v-4430e823]{font-size:13px;color:#303133;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rule-actions[data-v-4430e823]{display:flex;gap:5px}.no-rules[data-v-4430e823]{padding:15px;text-align:center;color:#909399;font-size:13px;background-color:#f9f9f9;border-radius:4px}.rule-drawer[data-v-4430e823]{overflow:hidden}.rule-drawer-content[data-v-4430e823]{padding:20px;height:100%;display:flex;flex-direction:column}.rule-form[data-v-4430e823]{flex:1;overflow-y:auto}.drawer-footer[data-v-4430e823]{padding:10px 20px;border-top:1px solid #e6e6e6;display:flex;justify-content:flex-end;gap:10px;margin:0 -20px;background-color:#fff}.form-help[data-v-4430e823]{margin-top:8px;font-size:12px;color:#909399}.variable-tag[data-v-4430e823]{margin-right:5px;margin-bottom:5px;cursor:pointer}.variable-tag[data-v-4430e823]:hover{opacity:.8}.icon-selector[data-v-4430e823]{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.icon-item[data-v-4430e823]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #dcdfe6;border-radius:4px;cursor:pointer;transition:all .3s;background-color:#fff}.icon-item[data-v-4430e823]:hover{border-color:#409eff;background-color:#ecf5ff}.icon-item i[data-v-4430e823]{font-size:18px;color:#606266}.icon-item.icon-selected[data-v-4430e823]{border-color:#409eff;background-color:#ecf5ff}.icon-item.icon-selected i[data-v-4430e823]{color:#409eff}.point-coordinates[data-v-4430e823]{background-color:#f5f7fa;border:1px solid #e6e6e6;border-radius:4px;padding:10px;margin-top:5px}.coordinate-item[data-v-4430e823]{display:flex;margin-bottom:5px}.coordinate-item[data-v-4430e823]:last-child{margin-bottom:0}.coordinate-label[data-v-4430e823]{font-weight:700;color:#606266;width:50px}.coordinate-value[data-v-4430e823]{color:#303133;font-family:monospace}@media (max-width:768px){.area-panel[data-v-4430e823]{width:300px;left:0;top:0;height:100%;max-height:none;border-radius:0}.area-panel-collapsed[data-v-4430e823]{transform:translateX(-290px)}.area-list[data-v-4430e823]{max-height:calc(100vh - 150px)}}.el-drawer__container[data-v-4430e823]{position:absolute!important}[data-v-4430e823] .el-drawer__mask{background-color:transparent!important}.map-toolbar[data-v-6791588f]{position:absolute;background-color:rgba(28,47,123,.85);border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.2);z-index:1001;padding:0;display:flex;gap:0;overflow:hidden}.toolbar-vertical[data-v-6791588f]{top:120px;right:70px;flex-direction:column}.map-toolbar[data-v-6791588f]:not(.toolbar-vertical){bottom:20px;left:50%;transform:translateX(-50%);flex-direction:row}.toolbar-group[data-v-6791588f]{display:flex;flex-direction:inherit}.toolbar-group[data-v-6791588f]:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.15)}.toolbar-button[data-v-6791588f]{width:32px;height:32px;border:none;background-color:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;outline:none;color:#e3eafc;transition:all .3s}.toolbar-vertical .toolbar-button[data-v-6791588f]{margin:2px 0}.map-toolbar:not(.toolbar-vertical) .toolbar-button[data-v-6791588f]{margin:0 2px}.active-tool[data-v-6791588f],.toolbar-button[data-v-6791588f]:hover{background-color:#3a5eea;color:#fff}.active-tool[data-v-6791588f]:hover{background-color:#5a73ea;color:#fff}.layer-control-panel[data-v-6791588f]{position:absolute;top:0;right:45px;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);padding:10px;width:150px}.panel-title[data-v-6791588f]{font-size:13px;font-weight:600;margin:0 0 10px 0;padding-bottom:5px;border-bottom:1px solid #ebeef5;color:#303133}.layer-list[data-v-6791588f]{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.layer-item[data-v-6791588f]{font-size:12px}.no-layers[data-v-6791588f]{color:#909399;font-size:12px;text-align:center;padding:5px 0}.location-input-container[data-v-6791588f]{padding:10px 0}.coordinate-format-tip[data-v-6791588f]{font-size:12px;color:#909399;font-style:italic}.dms-input-group[data-v-6791588f]{display:flex;gap:8px;align-items:center}.dms-input-group .el-input[data-v-6791588f]{flex:1}.dms-input-group .el-select[data-v-6791588f]{flex-shrink:0}@media (max-width:768px){.map-toolbar[data-v-6791588f]{padding:3px}.toolbar-button[data-v-6791588f]{width:28px;height:28px}.layer-control-panel[data-v-6791588f]{width:120px;right:40px}}.vessel-blacklist-panel[data-v-619a2770]{width:800px;background-color:#fff;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);margin-bottom:10px}.panel-header[data-v-619a2770]{display:flex;align-items:center;justify-content:space-between;padding:10px 15px;border-bottom:1px solid #ebeef5;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.panel-title[data-v-619a2770]{margin:0;font-size:16px;font-weight:500}.panel-controls[data-v-619a2770],.panel-title[data-v-619a2770]{display:flex;align-items:center}.panel-body[data-v-619a2770]{padding:15px;max-height:600px;overflow-y:auto}.panel-toolbar[data-v-619a2770]{display:flex;align-items:center;margin-bottom:15px}.flex-spacer[data-v-619a2770]{flex-grow:1}.search-input[data-v-619a2770]{width:200px;margin-right:10px}.panel-pagination[data-v-619a2770]{margin-top:15px;display:flex;justify-content:flex-end}.mr-2[data-v-619a2770]{margin-right:8px}.panel-collapsed[data-v-619a2770]{border-bottom:1px solid #ebeef5}.drawer-content[data-v-619a2770]{padding:20px;height:100%;display:flex;flex-direction:column}.drawer-form[data-v-619a2770]{flex:1;overflow-y:auto}.drawer-footer[data-v-619a2770]{margin-top:20px;text-align:right;padding-top:10px;border-top:1px solid #ebeef5}.readonly-field input[data-v-619a2770]{background-color:#f5f7fa;color:#606266}.vessel-cn-name[data-v-619a2770]{font-size:12px;color:#909399;margin-top:3px}.el-button.el-button--success[data-v-619a2770]{margin-left:10px}.map-container[data-v-6d17e13d]{overflow:hidden}.map-container[data-v-6d17e13d],.map-content[data-v-6d17e13d]{position:relative;width:100%;height:100%}.bridge-map[data-v-6d17e13d]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.bridge-header[data-v-6d17e13d]{position:absolute;top:0;left:0;right:0;height:60px;z-index:1000}.area-panel[data-v-6d17e13d],.blacklist-panel[data-v-6d17e13d],.bridge-info-panel[data-v-6d17e13d]{position:absolute;top:70px;left:10px;z-index:900}.map-toolbar[data-v-6d17e13d]{position:absolute;top:80px;right:20px;z-index:800}.map-content[data-v-6d17e13d]:fullscreen{width:100%;height:100%}.map-container[data-v-7257a7bf]{position:relative;width:100%;height:60vh;border-radius:4px;overflow:hidden;box-shadow:0 2px 12px 0 rgba(0,0,0,.05)}.coordinate-display[data-v-7257a7bf]{margin-top:16px;padding:12px 16px;background-color:#f5f7fa;border-radius:4px;font-family:Courier New,monospace;font-size:14px;border:1px solid #e6e6e6}.ml-4[data-v-7257a7bf]{margin-left:1rem}.map-dialog[data-v-7257a7bf]{display:flex;flex-direction:column}.map-dialog[data-v-7257a7bf] .el-dialog{margin-top:5vh!important;margin-bottom:5vh;display:flex;flex-direction:column;max-height:90vh}.map-dialog[data-v-7257a7bf] .el-dialog__body{padding:15px 20px;flex:1;overflow:hidden;max-height:calc(90vh - 108px)}.device-form[data-v-1bbe3d62]{max-width:100%}.w-full[data-v-1bbe3d62]{width:100%}.flex[data-v-1bbe3d62]{display:flex}.flex-1[data-v-1bbe3d62]{flex:1}.space-x-4>*+[data-v-1bbe3d62]{margin-left:1rem}.form-row[data-v-1bbe3d62]{display:flex;margin:0 -10px}.form-col[data-v-1bbe3d62]{width:50%;padding:0 10px;box-sizing:border-box}.coord-inputs[data-v-1bbe3d62],.device-status-control[data-v-2f7a1b16]{display:flex;align-items:center}.device-management[data-v-7169c15e]{padding:20px;display:flex;flex-direction:column;overflow:hidden}.page-header[data-v-7169c15e]{justify-content:space-between;margin-bottom:1rem}.align-title[data-v-7169c15e],.page-header[data-v-7169c15e]{display:flex;align-items:center}.align-title .bridge-selector[data-v-7169c15e],.align-title h2[data-v-7169c15e],.align-title span[data-v-7169c15e]{margin-top:auto;margin-bottom:auto}.device-stats[data-v-7169c15e]{display:flex;gap:1rem;margin-bottom:1.5rem}.stat-card[data-v-7169c15e]{flex:1}.stat-icon[data-v-7169c15e]{font-size:2rem;margin-right:1rem;display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;background:#f5f7fa}.text-blue-500[data-v-7169c15e]{color:#409eff}.text-green-500[data-v-7169c15e]{color:#67c23a}.text-red-500[data-v-7169c15e]{color:#f56c6c}.text-yellow-500[data-v-7169c15e]{color:#e6a23c}.text-gray-500[data-v-7169c15e]{color:#909399}.text-xl[data-v-7169c15e]{font-size:1.25rem}.text-2xl[data-v-7169c15e]{font-size:1.5rem}.font-bold[data-v-7169c15e]{font-weight:700}.mb-4[data-v-7169c15e]{margin-bottom:1rem}.mb-6[data-v-7169c15e]{margin-bottom:1.5rem}.mr-1[data-v-7169c15e]{margin-right:.25rem}.mr-2[data-v-7169c15e]{margin-right:.5rem}.mr-3[data-v-7169c15e]{margin-right:.75rem}.mr-4[data-v-7169c15e]{margin-right:1rem}.ml-4[data-v-7169c15e]{margin-left:1rem}.w-40[data-v-7169c15e]{width:10rem}.w-80[data-v-7169c15e]{width:20rem}.flex[data-v-7169c15e]{display:flex}.items-center[data-v-7169c15e]{align-items:center}.justify-between[data-v-7169c15e]{justify-content:space-between}.device-icon[data-v-7169c15e],.device-name-cell[data-v-7169c15e]{display:flex;align-items:center}.device-icon[data-v-7169c15e]{width:1.75rem;height:1.75rem;border-radius:50%;background-color:#f5f7fa;justify-content:center}.device-table[data-v-7169c15e]{flex:1;overflow:auto}.bridge-selection-container[data-v-45c195ce]{padding:10px 0;overflow:visible}.bridge-transfer[data-v-45c195ce]{width:100%;display:flex;justify-content:space-between}.bridge-transfer[data-v-45c195ce] .el-transfer-panel{width:45%;min-width:300px}.bridge-transfer[data-v-45c195ce] .el-transfer-panel__body{height:300px}.bridge-transfer[data-v-45c195ce] .el-transfer-panel__list{height:260px}.bridge-transfer[data-v-45c195ce] .el-transfer__buttons{padding:0 10px}.transfer-tip[data-v-45c195ce]{color:#606266;font-size:12px;margin-bottom:10px}.transfer-info[data-v-45c195ce]{color:#606266;font-size:12px}.missing-bridges-info[data-v-45c195ce]{color:#f56c6c;font-size:12px;margin-top:5px}.user-list-container[data-v-a040057c]{padding:20px}.page-header[data-v-a040057c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-title[data-v-a040057c]{font-size:20px;color:#303133;margin:0}.search-container[data-v-a040057c]{background-color:#f5f7fa;border-radius:4px;margin-bottom:20px}.search-container .el-form[data-v-a040057c]{display:flex;flex-wrap:wrap;align-items:center}.pagination-container[data-v-a040057c]{margin-top:20px;text-align:right}.mr-1[data-v-a040057c]{margin-right:5px}.role-selection[data-v-a040057c]{max-height:200px;overflow-y:auto}.role-checkbox[data-v-a040057c]{display:block;margin-bottom:5px}.user-management-container[data-v-69138254]{padding:1.25rem}.page-header[data-v-69138254]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.page-title[data-v-69138254]{font-size:1.25rem;color:#333;font-weight:600;margin:0;display:flex;align-items:center}.mr-2[data-v-69138254]{margin-right:.5rem}.form-card[data-v-69138254]{margin-bottom:1.25rem;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;overflow:hidden}.card-header[data-v-69138254]{display:flex;align-items:center;justify-content:space-between;background-color:#f5f7fa;padding:.5rem}.text-muted[data-v-69138254]{color:#909399;font-size:.875rem;margin-left:.5rem}.bridge-role-type[data-v-69138254]{margin-bottom:10px}.form-tip[data-v-69138254]{font-size:.75rem;color:#909399;margin-top:.25rem}.text-success[data-v-69138254]{color:#67c23a}.text-danger[data-v-69138254]{color:#f56c6c}.role-selection[data-v-69138254]{display:flex;flex-wrap:wrap;padding:.5rem;background-color:#f5f7fa;border-radius:4px}.role-checkbox[data-v-69138254]{background-color:#fff;padding:.25rem .75rem;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.05);margin:.25rem}.form-actions[data-v-69138254]{display:flex;justify-content:center;margin-top:1rem}[data-v-69138254] .el-form-item__label{font-weight:500}[data-v-69138254] .el-checkbox{margin-right:.25rem;margin-bottom:.25rem}[data-v-69138254] .el-radio{margin-right:1.5rem}[data-v-69138254] .el-divider__text{color:#606266;font-weight:500}[data-v-69138254] .el-card__header{padding:.5rem 1rem;background-color:#f5f7fa;border-bottom:1px solid #e4e7ed}[data-v-69138254] .el-button--primary{background-color:#409eff;border-color:#409eff}[data-v-69138254] .el-button--primary:hover{background-color:#66b1ff;border-color:#66b1ff}[data-v-69138254] .el-input__inner:focus{border-color:#409eff}[data-v-69138254] .el-checkbox__input.is-checked .el-checkbox__inner,[data-v-69138254] .el-radio__input.is-checked .el-radio__inner{border-color:#409eff;background-color:#409eff}.user-bridge-association-container[data-v-136bc988]{padding:20px}.page-header[data-v-136bc988]{margin-bottom:20px}.page-title[data-v-136bc988]{font-size:20px;color:#303133;margin:0}.main-card[data-v-136bc988]{margin-bottom:20px}.filter-section[data-v-136bc988]{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #eee}.pagination-container[data-v-136bc988]{margin-top:20px;text-align:right}.permission-content[data-v-7305429c]{display:flex;min-height:500px}.left-panel[data-v-7305429c]{width:350px;padding-right:15px;border-right:1px solid #e6e6e6}.middle-panel[data-v-7305429c]{width:700px;padding:0 15px}.panel-title[data-v-7305429c]{font-size:16px;color:#303133;margin-top:0;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center}.current-selected[data-v-7305429c]{font-size:14px;font-weight:400}.search-box[data-v-7305429c]{margin-bottom:10px}.empty-notice[data-v-7305429c]{display:flex;flex-direction:column;justify-content:center;align-items:center;height:200px;color:#909399}.empty-notice i[data-v-7305429c]{font-size:48px;margin-bottom:10px}.role-assignment-area[data-v-7305429c]{margin-top:20px}.role-selection[data-v-7305429c]{display:flex;flex-wrap:wrap;padding:10px;background-color:#f5f7fa;border-radius:4px;max-height:350px;overflow-y:auto}.role-checkbox[data-v-7305429c]{width:calc(50% - 10px);margin:5px;background-color:#fff;padding:8px 12px;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:all .3s}.role-checkbox[data-v-7305429c]:hover{box-shadow:0 2px 6px rgba(0,0,0,.15);transform:translateY(-2px)}.role-info[data-v-7305429c]{padding-left:6px}.role-name[data-v-7305429c]{font-weight:700;color:#303133}.role-desc[data-v-7305429c]{font-size:12px;color:#909399;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-buttons[data-v-7305429c]{margin-top:20px;text-align:center}.selection-indicator[data-v-7305429c]{font-size:16px;color:#409eff}[data-v-7305429c] .el-checkbox__label{padding-left:6px}[data-v-7305429c] .el-divider__text{background-color:transparent;color:#606266;font-weight:500}[data-v-7305429c] .el-checkbox__input.is-checked+.el-checkbox__label{color:#409eff}[data-v-7305429c] .el-checkbox__input.is-checked .el-checkbox__inner{background-color:#409eff;border-color:#409eff}.role-management-container[data-v-1646d721]{padding:20px}.page-header[data-v-1646d721]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-title[data-v-1646d721]{font-size:20px;color:#303133;margin:0}.permission-header[data-v-1646d721]{margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e6e6e6}.role-name[data-v-1646d721]{font-size:16px;font-weight:700}.custom-tree-node[data-v-1646d721]{flex:1;display:flex;align-items:center;font-size:14px}.permission-desc[data-v-1646d721]{font-size:12px;color:#909399;margin-left:8px}.system-params-container[data-v-514f0eaa]{padding:20px}.page-title[data-v-514f0eaa]{font-size:24px;font-weight:500;color:#303133}.box-card[data-v-514f0eaa]{margin-bottom:20px}.pagination-container[data-v-514f0eaa]{margin-top:20px;text-align:center}.json-value-badge[data-v-514f0eaa]{background-color:#409eff;color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;margin-right:8px}.json-preview[data-v-514f0eaa]{cursor:pointer;color:#409eff}.json-preview-content[data-v-514f0eaa]{background-color:#f5f7fa;padding:15px;border-radius:4px;overflow:auto;max-height:500px;white-space:pre-wrap;word-break:break-all}.form-tip[data-v-514f0eaa]{font-size:13px;color:#e6a23c;margin-top:5px;padding:8px;background-color:#fdf6ec;border-radius:4px;border-left:3px solid #e6a23c}.form-tip i[data-v-514f0eaa]{margin-right:5px}.type-input-group[data-v-514f0eaa]{display:flex;align-items:center}.add-type-button[data-v-514f0eaa]{margin-left:5px}.my-params-checkbox[data-v-514f0eaa]{margin-right:10px}.no-operation-tip[data-v-514f0eaa]{text-align:center;color:#909399;font-size:12px}.el-switch[data-v-514f0eaa]{margin-left:8px}.el-tooltip__popper[data-v-514f0eaa]{font-size:12px}.alert-settings-container[data-v-a6b368fe]{padding:20px}.header-section[data-v-a6b368fe]{display:flex;justify-content:space-between;align-items:center}.header-section h2[data-v-a6b368fe]{margin:0;font-size:20px;font-weight:500}.header-actions[data-v-a6b368fe]{display:flex;align-items:center}.toolbar[data-v-a6b368fe]{margin-bottom:20px}.empty-tip[data-v-a6b368fe]{text-align:center;color:#909399;padding:50px 0;font-size:16px;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-tip i[data-v-a6b368fe]{font-size:40px;margin-bottom:15px;color:#e6a23c}.pagination[data-v-a6b368fe]{margin-top:20px;display:flex;justify-content:flex-end}.form-help[data-v-a6b368fe]{margin-top:8px;font-size:12px;color:#909399}.variable-tag[data-v-a6b368fe]{margin-right:5px;margin-bottom:5px;cursor:pointer}.variable-tag[data-v-a6b368fe]:hover{opacity:.8}.alert-methods[data-v-a6b368fe]{display:flex;flex-wrap:wrap;gap:4px}.alert-method-tag[data-v-a6b368fe]{margin-right:3px;margin-bottom:3px}.data-visualization[data-v-f5fda3a0]{width:100vw;height:100vh;background:linear-gradient(135deg,#0f1419,#1a2332 50%,#0f1419);overflow:hidden;font-family:Microsoft YaHei,Arial,sans-serif}.screen-container[data-v-f5fda3a0]{width:100%;height:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box}.screen-header[data-v-f5fda3a0]{height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;position:relative}.fullscreen-control[data-v-f5fda3a0]{position:absolute;right:2px;top:2px}.fullscreen-btn[data-v-f5fda3a0]{background:linear-gradient(135deg,#667eea,#764ba2);border:none;font-weight:500;letter-spacing:.5px;transition:all .3s ease;box-shadow:0 2px 8px rgba(102,126,234,.3)}.fullscreen-btn[data-v-f5fda3a0]:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.4);background:linear-gradient(135deg,#764ba2,#667eea)}.fullscreen-btn[data-v-f5fda3a0]:active{transform:translateY(0)}.decoration-1[data-v-f5fda3a0]{width:200px;height:60px}.decoration-1.reverse[data-v-f5fda3a0]{transform:rotateY(180deg)}.title-container[data-v-f5fda3a0]{flex:1;display:flex;align-items:center;justify-content:center;margin:0 20px}.title-decoration[data-v-f5fda3a0]{width:150px;height:40px}.title-decoration.reverse[data-v-f5fda3a0]{transform:rotateY(180deg)}.title-text[data-v-f5fda3a0]{font-size:36px;font-weight:700;color:#4fc3f7;text-shadow:0 0 20px rgba(79,195,247,.8);margin:0 30px;letter-spacing:4px}.screen-body[data-v-f5fda3a0]{flex:1;display:flex;gap:20px;margin-bottom:20px}.left-panel[data-v-f5fda3a0],.right-panel[data-v-f5fda3a0]{width:350px;display:flex;flex-direction:column;gap:20px}.center-panel[data-v-f5fda3a0]{flex:1}.panel-item[data-v-f5fda3a0]{flex:1;min-height:300px}.border-box[data-v-f5fda3a0]{width:100%;height:100%;padding:20px;box-sizing:border-box}.panel-header[data-v-f5fda3a0]{display:flex;align-items:center;justify-content:center;margin-bottom:15px}.decoration-5[data-v-f5fda3a0]{width:20px;height:20px;margin-right:10px}.panel-title[data-v-f5fda3a0]{font-size:18px;font-weight:700;color:#4fc3f7;text-shadow:0 0 10px rgba(79,195,247,.6)}.chart-container[data-v-f5fda3a0]{width:100%;height:calc(100% - 50px);min-height:200px}.center-panel[data-v-f5fda3a0]{display:flex;flex-direction:column;gap:20px}.alert-stats-section[data-v-f5fda3a0]{height:200px}.stats-border[data-v-f5fda3a0]{width:100%;height:100%;padding:20px;box-sizing:border-box}.stats-header[data-v-f5fda3a0]{display:flex;align-items:center;justify-content:center;margin-bottom:15px}.stats-decoration[data-v-f5fda3a0]{width:100px;height:30px}.stats-decoration.reverse[data-v-f5fda3a0]{transform:rotateY(180deg)}.stats-title[data-v-f5fda3a0]{font-size:24px;font-weight:700;color:#4fc3f7;text-shadow:0 0 15px rgba(79,195,247,.8);margin:0 20px;letter-spacing:2px}.stats-content[data-v-f5fda3a0]{display:flex;flex-direction:column;height:calc(100% - 60px)}.main-stats[data-v-f5fda3a0]{display:flex;justify-content:space-around;margin-bottom:20px}.stat-item[data-v-f5fda3a0]{display:flex;flex-direction:column;align-items:center;text-align:center}.main-stat[data-v-f5fda3a0]{flex:1}.stat-number[data-v-f5fda3a0]{font-size:36px;font-weight:700;color:#4fc3f7;text-shadow:0 0 15px rgba(79,195,247,.8);margin-bottom:8px}.stat-label[data-v-f5fda3a0]{font-size:14px;color:#4fc3f7;margin-top:8px;font-weight:700}.alert-categories[data-v-f5fda3a0]{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:15px;height:80px}.category-item[data-v-f5fda3a0]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:rgba(79,195,247,.1);border-radius:8px;padding:10px}.category-label[data-v-f5fda3a0]{font-size:12px;color:#4fc3f7;margin-top:5px;font-weight:700}.hydrometeorological-section[data-v-f5fda3a0]{height:150px}.hydro-border[data-v-f5fda3a0]{width:100%;height:100%;padding:20px;box-sizing:border-box}.hydro-header[data-v-f5fda3a0]{display:flex;align-items:center;justify-content:center;margin-bottom:15px}.hydro-decoration[data-v-f5fda3a0]{width:80px;height:25px}.hydro-decoration.reverse[data-v-f5fda3a0]{transform:rotateY(180deg)}.hydro-title[data-v-f5fda3a0]{font-size:20px;font-weight:700;color:#4fc3f7;text-shadow:0 0 12px rgba(79,195,247,.8);margin:0 15px;letter-spacing:1px}.hydro-content[data-v-f5fda3a0]{display:flex;justify-content:space-around;align-items:center;height:calc(100% - 50px)}.hydro-item[data-v-f5fda3a0]{display:flex;flex-direction:column;align-items:center;text-align:center}.hydro-icon[data-v-f5fda3a0]{font-size:24px;color:#4fc3f7;margin-bottom:8px}.hydro-value[data-v-f5fda3a0]{font-size:18px;font-weight:700;color:#4fc3f7;margin-bottom:4px}.hydro-label[data-v-f5fda3a0]{font-size:12px;color:#4fc3f7;opacity:.8}.realtime-alerts-section[data-v-f5fda3a0]{height:200px}.alerts-border[data-v-f5fda3a0]{width:100%;height:100%;padding:20px;box-sizing:border-box}.alerts-header[data-v-f5fda3a0]{display:flex;align-items:center;justify-content:center;margin-bottom:15px}.alerts-decoration[data-v-f5fda3a0]{width:80px;height:25px}.alerts-decoration.reverse[data-v-f5fda3a0]{transform:rotateY(180deg)}.alerts-title[data-v-f5fda3a0]{font-size:20px;font-weight:700;color:#4fc3f7;text-shadow:0 0 12px rgba(79,195,247,.8);margin:0 15px;letter-spacing:1px}.alerts-content[data-v-f5fda3a0]{height:calc(100% - 50px);overflow-y:auto}.alert-list[data-v-f5fda3a0]{display:flex;flex-direction:column;gap:8px}.alert-item[data-v-f5fda3a0]{display:flex;align-items:center;padding:8px 12px;background:rgba(79,195,247,.1);border-radius:6px;border-left:4px solid #4fc3f7}.alert-time[data-v-f5fda3a0]{font-size:12px;color:#4fc3f7;width:80px;flex-shrink:0}.alert-type[data-v-f5fda3a0]{font-size:12px;font-weight:700;padding:2px 8px;border-radius:4px;margin:0 12px;flex-shrink:0}.alert-type.yaw[data-v-f5fda3a0]{background:rgba(255,87,34,.2);color:#ff5722;border:1px solid #ff5722}.alert-type.overspeed[data-v-f5fda3a0]{background:rgba(255,193,7,.2);color:#ffc107;border:1px solid #ffc107}.alert-type.superelevation[data-v-f5fda3a0]{background:rgba(255,152,0,.2);color:#ff9800;border:1px solid #ff9800}.alert-type.retention[data-v-f5fda3a0],.alert-type.stay[data-v-f5fda3a0]{background:rgba(76,175,80,.2);color:#4caf50;border:1px solid #4caf50}.alert-type.deviation[data-v-f5fda3a0]{background:rgba(255,87,34,.2);color:#ff5722;border:1px solid #ff5722}.alert-type.speed[data-v-f5fda3a0]{background:rgba(255,193,7,.2);color:#ffc107;border:1px solid #ffc107}.alert-type.height[data-v-f5fda3a0],.alert-type.overheight[data-v-f5fda3a0]{background:rgba(255,152,0,.2);color:#ff9800;border:1px solid #ff9800}.alert-type.blacklist[data-v-f5fda3a0]{background:rgba(244,67,54,.2);color:#f44336;border:1px solid #f44336}.alert-type.other[data-v-f5fda3a0]{background:rgba(156,39,176,.2);color:#9c27b0;border:1px solid #9c27b0}.alert-message[data-v-f5fda3a0]{font-size:12px;color:#fff;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-footer[data-v-f5fda3a0]{height:120px}.data-panel[data-v-f5fda3a0]{display:flex;gap:20px;height:100%}.data-box[data-v-f5fda3a0]{flex:1;height:100%;padding:15px;box-sizing:border-box}.data-item[data-v-f5fda3a0]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.digital-flop[data-v-f5fda3a0]{margin-bottom:10px}.data-label[data-v-f5fda3a0]{font-size:14px;color:#4fc3f7;text-shadow:0 0 8px rgba(79,195,247,.6);font-weight:700}.data-value[data-v-f5fda3a0]{font-size:40px;font-weight:700;color:#4fc3f7;text-shadow:0 0 15px rgba(79,195,247,.8);margin-bottom:10px}.data-visualization.fullscreen[data-v-f5fda3a0]{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;background:linear-gradient(135deg,#0f1419,#1a2332 50%,#0f1419)}.data-visualization.fullscreen .screen-container[data-v-f5fda3a0]{padding:30px}.data-visualization.fullscreen .title-text[data-v-f5fda3a0]{font-size:48px}.data-visualization.fullscreen .stats-title[data-v-f5fda3a0]{font-size:32px}.data-visualization.fullscreen .alerts-title[data-v-f5fda3a0],.data-visualization.fullscreen .hydro-title[data-v-f5fda3a0]{font-size:28px}@media (max-width:1200px){.left-panel[data-v-f5fda3a0],.right-panel[data-v-f5fda3a0]{width:280px}.title-text[data-v-f5fda3a0]{font-size:28px}.stats-title[data-v-f5fda3a0]{font-size:20px}.alerts-title[data-v-f5fda3a0],.hydro-title[data-v-f5fda3a0]{font-size:18px}}.submenu-fixed[data-v-70073709]{position:fixed!important;z-index:9999!important;width:280px!important;max-height:80vh;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;pointer-events:auto!important;backface-visibility:hidden;will-change:transform,opacity}.submenu-fade-enter-active[data-v-70073709],.submenu-fade-leave-active[data-v-70073709]{transition:opacity .2s ease,transform .2s ease}.submenu-fade-enter-from[data-v-70073709],.submenu-fade-leave-to[data-v-70073709]{opacity:0;transform:translateX(-10px)}.triangle-indicator[data-v-70073709]{position:absolute;left:-10px;top:20px;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:10px solid #ff7a45;filter:drop-shadow(-2px 0 2px rgba(0,0,0,.1))}.submenu-title-indicator[data-v-70073709]{width:6px;min-width:6px;height:20px;background-color:#ff7a45;margin-right:12px;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.submenu-fixed[data-v-70073709]::-webkit-scrollbar{width:4px}.submenu-fixed[data-v-70073709]::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}.submenu-fixed[data-v-70073709]::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.3);border-radius:2px}.submenu-fixed[data-v-70073709]::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.5)}.menu-item[data-v-17373860]{position:relative}.menu-item.active>div[data-v-17373860]{background-color:#3182ce;color:#fff}[data-v-17373860]::-webkit-scrollbar{width:4px}[data-v-17373860]::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}[data-v-17373860]::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.3);border-radius:2px}[data-v-17373860]::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.5)}.clickable-menu .text-xs[data-v-17373860]{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;-webkit-text-decoration-style:solid;text-decoration-style:solid}.nav-buttons-container[data-v-16250868]{display:flex;align-items:center;gap:10px}.function-title[data-v-16250868]{font-size:14px;letter-spacing:.5px;font-weight:500}.nav-action-button[data-v-16250868]{background-color:#1976d2;border:none;border-radius:4px;padding:6px 14px;color:#fff;font-weight:500;box-shadow:0 2px 4px rgba(0,0,0,.15);transition:all .2s ease;height:30px;min-width:100px;display:flex;align-items:center;justify-content:center}.nav-action-button[data-v-16250868]:hover{background-color:#2196f3;box-shadow:0 3px 6px rgba(0,0,0,.2)}.button-text[data-v-16250868]{margin-left:6px;font-size:13px;white-space:nowrap}@media (max-width:768px){.nav-action-button[data-v-16250868]{padding:5px 10px;min-width:auto}.button-text[data-v-16250868]{font-size:12px}}@media (max-width:576px){.nav-action-button[data-v-16250868]{padding:4px 8px}.button-text[data-v-16250868],.function-title[data-v-16250868]{display:none}}.hydrometeorological-indicator[data-v-5f7ffe30]{display:inline-block;margin-left:16px}.indicator-label[data-v-5f7ffe30]{display:flex;align-items:center;cursor:pointer;padding:6px 12px;border-radius:6px;transition:all .2s ease;color:hsla(0,0%,100%,.9);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2)}.indicator-label[data-v-5f7ffe30]:hover{background:hsla(0,0%,100%,.15);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.indicator-icon[data-v-5f7ffe30]{margin-right:6px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.indicator-text[data-v-5f7ffe30]{font-size:13px;font-weight:500;white-space:nowrap;letter-spacing:.5px}.hydrometeorological-floating-panel{min-width:320px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);border:1px solid rgba(226,232,240,.8);overflow:hidden;backdrop-filter:blur(8px);opacity:0;transform:translateY(-8px);transition:all .2s ease}.hydrometeorological-floating-panel.panel-visible{opacity:1;transform:translateY(0)}.hydrometeorological-floating-panel .panel-header{display:flex;align-items:center;padding:16px 18px 12px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;border-bottom:1px solid hsla(0,0%,100%,.1)}.hydrometeorological-floating-panel .header-icon{margin-right:8px;opacity:.9}.hydrometeorological-floating-panel .panel-title{font-size:14px;font-weight:600;letter-spacing:.3px}.hydrometeorological-floating-panel .panel-content{padding:8px}.hydrometeorological-floating-panel .data-item{display:flex;align-items:center;padding:12px 10px;border-radius:8px;margin-bottom:6px;transition:all .2s ease;background:rgba(248,250,252,.6);border:1px solid rgba(226,232,240,.5)}.hydrometeorological-floating-panel .data-item:hover{background:rgba(241,245,249,.8);transform:translateX(2px);box-shadow:0 2px 8px rgba(0,0,0,.06)}.hydrometeorological-floating-panel .data-item:last-child{margin-bottom:0}.hydrometeorological-floating-panel .item-icon{flex-shrink:0;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-right:12px}.hydrometeorological-floating-panel .water-icon{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff}.hydrometeorological-floating-panel .visibility-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.hydrometeorological-floating-panel .wind-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.hydrometeorological-floating-panel .item-content{flex:1;min-width:0}.hydrometeorological-floating-panel .item-label{font-size:12px;color:#64748b;margin-bottom:4px;font-weight:500}.hydrometeorological-floating-panel .item-values{display:flex;flex-direction:column;gap:2px}.hydrometeorological-floating-panel .value-primary{font-size:13px;font-weight:600;color:#1e293b}.hydrometeorological-floating-panel .value-secondary{font-size:12px;color:#64748b;font-weight:500}.hydrometeorological-floating-panel .item-status{flex-shrink:0;margin-left:8px}.hydrometeorological-floating-panel .status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 2px hsla(0,0%,100%,.8)}.hydrometeorological-floating-panel .status-normal .status-dot{background:#10b981;box-shadow:0 0 0 2px rgba(16,185,129,.2)}.hydrometeorological-floating-panel .status-error .status-dot{background:#ef4444;box-shadow:0 0 0 2px rgba(239,68,68,.2)}.hydrometeorological-floating-panel .status-disabled .status-dot{background:#9ca3af;box-shadow:0 0 0 2px rgba(156,163,175,.2)}.hydrometeorological-floating-panel .panel-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:rgba(248,250,252,.8);border-top:1px solid rgba(226,232,240,.5)}.hydrometeorological-floating-panel .update-time{font-size:11px;color:#64748b;font-weight:500}.hydrometeorological-floating-panel .refresh-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:rgba(59,130,246,.1);color:#3b82f6;cursor:pointer;transition:all .2s ease}.hydrometeorological-floating-panel .refresh-btn:hover:not(:disabled){background:rgba(59,130,246,.2);transform:scale(1.05)}.hydrometeorological-floating-panel .refresh-btn:disabled{opacity:.5;cursor:not-allowed}.hydrometeorological-floating-panel .animate-spin{animation:spin 1s linear infinite}.bridge-select[data-v-3f246cd0]{position:relative;width:200px}.bridge-selector[data-v-3f246cd0]{width:100%}.nav-center-container[data-v-3f246cd0]{position:absolute;left:50%;transform:translateX(-50%);width:auto;max-width:800px;z-index:10}.nav-buttons-list[data-v-3f246cd0]{display:flex;align-items:center;gap:8px}.function-title[data-v-3f246cd0]{font-size:14px;letter-spacing:.5px;font-weight:500}body[data-v-3f246cd0],html[data-v-3f246cd0]{overflow-x:hidden!important;margin:0;padding:0;height:100%}.h-screen[data-v-3f246cd0]{height:100vh;min-height:100vh}.bridge-selector .el-input__inner[data-v-3f246cd0]{background-color:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.2);color:#fff;height:30px;line-height:30px}.bridge-selector .el-select__caret[data-v-3f246cd0]{color:hsla(0,0%,100%,.7);line-height:30px}.bridge-selector .el-input.is-focus .el-input__inner[data-v-3f246cd0]{border-color:#409eff}.bridge-selector .el-input__inner[data-v-3f246cd0]::-moz-placeholder{color:hsla(0,0%,100%,.6)}.bridge-selector .el-input__inner[data-v-3f246cd0]::placeholder{color:hsla(0,0%,100%,.6)}.visualization-entrance[data-v-3f246cd0]{margin-left:12px}.visualization-btn[data-v-3f246cd0]{background:linear-gradient(135deg,#667eea,#764ba2);border:none;font-weight:500;letter-spacing:.5px;transition:all .3s ease;box-shadow:0 2px 8px rgba(102,126,234,.3)}.visualization-btn[data-v-3f246cd0]:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.4);background:linear-gradient(135deg,#764ba2,#667eea)}.visualization-btn[data-v-3f246cd0]:active{transform:translateY(0)}

/*! tailwindcss v2.2.19 | MIT License | https://tailwindcss.com */

/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */html{-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.15;-webkit-text-size-adjust:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:transparent;background-image:none}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{font-family:inherit;line-height:inherit}*,:after,:before{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:after,:before{--tw-border-opacity:1;border-color:rgba(229,231,235,var(--tw-border-opacity))}body{margin:0;padding:0}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.z-10{z-index:10}.z-50{z-index:50}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mt-3{margin-top:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-4{margin-left:1rem}.block{display:block}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-full{height:100%}.h-screen{height:100vh}.w-16{width:4rem}.w-20{width:5rem}.w-28{width:7rem}.w-40{width:10rem}.w-80{width:20rem}.w-96{width:24rem}.w-1\/3{width:33.333333%}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-grow{flex-grow:1}.transform{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}@keyframes spin{to{transform:rotate(1turn)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.border-l-0{border-left-width:0}.border-white{--tw-border-opacity:1;border-color:rgba(255,255,255,var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229,231,235,var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity:1;border-color:rgba(31,41,55,var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239,68,68,var(--tw-border-opacity))}.border-yellow-500{--tw-border-opacity:1;border-color:rgba(245,158,11,var(--tw-border-opacity))}.border-green-200{--tw-border-opacity:1;border-color:rgba(167,243,208,var(--tw-border-opacity))}.border-green-500{--tw-border-opacity:1;border-color:rgba(16,185,129,var(--tw-border-opacity))}.border-blue-300{--tw-border-opacity:1;border-color:rgba(147,197,253,var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity:1;border-color:rgba(59,130,246,var(--tw-border-opacity))}.border-blue-700{--tw-border-opacity:1;border-color:rgba(29,78,216,var(--tw-border-opacity))}.border-purple-500{--tw-border-opacity:1;border-color:rgba(139,92,246,var(--tw-border-opacity))}.border-opacity-10{--tw-border-opacity:0.1}.border-opacity-20{--tw-border-opacity:0.2}.bg-white{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249,250,251,var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243,244,246,var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgba(31,41,55,var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgba(239,68,68,var(--tw-bg-opacity))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgba(245,158,11,var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236,253,245,var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity:1;background-color:rgba(16,185,129,var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgba(239,246,255,var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgba(59,130,246,var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgba(37,99,235,var(--tw-bg-opacity))}.bg-blue-800{--tw-bg-opacity:1;background-color:rgba(30,64,175,var(--tw-bg-opacity))}.bg-blue-900{--tw-bg-opacity:1;background-color:rgba(30,58,138,var(--tw-bg-opacity))}.bg-purple-500{--tw-bg-opacity:1;background-color:rgba(139,92,246,var(--tw-bg-opacity))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgba(37,99,235,var(--tw-bg-opacity))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgba(29,78,216,var(--tw-bg-opacity))}.bg-opacity-5{--tw-bg-opacity:0.05}.bg-opacity-90{--tw-bg-opacity:0.9}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-blue-900{--tw-gradient-from:#1e3a8a;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgba(30,58,138,0))}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-10{padding:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-sans{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-white{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107,114,128,var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgba(75,85,99,var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55,65,81,var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgba(31,41,55,var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239,68,68,var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245,158,11,var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16,185,129,var(--tw-text-opacity))}.text-blue-100{--tw-text-opacity:1;color:rgba(219,234,254,var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity:1;color:rgba(59,130,246,var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:after,:before{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.shadow,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.hover\:shadow-md:hover,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}*,:after,:before{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-blue-300{--tw-ring-opacity:1;--tw-ring-color:rgba(147,197,253,var(--tw-ring-opacity))}.filter{--tw-blur:var(--tw-empty,/*!*/ /*!*/);--tw-brightness:var(--tw-empty,/*!*/ /*!*/);--tw-contrast:var(--tw-empty,/*!*/ /*!*/);--tw-grayscale:var(--tw-empty,/*!*/ /*!*/);--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/);--tw-invert:var(--tw-empty,/*!*/ /*!*/);--tw-saturate:var(--tw-empty,/*!*/ /*!*/);--tw-sepia:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur{--tw-blur:blur(8px)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.grayscale{--tw-grayscale:grayscale(100%)}.backdrop-filter{--tw-backdrop-blur:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-brightness:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-contrast:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-grayscale:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-hue-rotate:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-invert:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-opacity:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-saturate:var(--tw-empty,/*!*/ /*!*/);--tw-backdrop-sepia:var(--tw-empty,/*!*/ /*!*/);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.dashboard-container{padding:20px}.dashboard-card{transition:all .3s;height:100%}.dashboard-card:hover{box-shadow:0 0 10px rgba(0,153,255,.3);transform:translateY(-5px)}.card-header{display:flex;justify-content:space-between;align-items:center}.card-content{text-align:center;padding:20px 0}.dashboard-icon{font-size:60px;color:#1989fa}.coming-soon{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:50px;text-align:center}.coming-soon i{font-size:60px;color:#1989fa;margin-bottom:20px}.coming-soon h2{color:#5e6d82;margin-bottom:30px}.area-label{background:transparent;border:none}.area-name{padding:3px 6px;background:rgba(0,0,0,.6);color:#fff;border-radius:4px;font-weight:700;font-size:12px;text-align:center;white-space:nowrap;box-shadow:0 1px 3px rgba(0,0,0,.3);pointer-events:none;max-width:150px;overflow:hidden;text-overflow:ellipsis}.radar-icon,.ship-icon{transition:transform .3s ease}.radar-icon:hover,.ship-icon:hover{transform:scale(1.2)}.leaflet-canvas-layer{z-index:300!important}