.control-panel[data-v-07c54fa3]{position:absolute;top:20px;left:20px;width:280px;padding:20px;background:hsla(0,0%,100%,.55);border:1px solid hsla(0,0%,100%,.6);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:100}.control-panel h3[data-v-07c54fa3]{margin:0 0 15px 0;padding-bottom:12px;color:#2c3e50;font-size:16px;font-weight:600;text-align:center;border-bottom:2px solid #f0f2f5}.control-panel .panel-close-btn[data-v-07c54fa3]{display:none;position:absolute;top:12px;right:12px;width:28px;height:28px;color:#909399;font-size:18px;line-height:28px;background:none;border:none;border-radius:6px;cursor:pointer}.control-panel .panel-close-btn[data-v-07c54fa3]:hover{color:#2c3e50;background:#f0f2f5}.control-panel .section[data-v-07c54fa3]{margin-bottom:20px}.control-panel .section[data-v-07c54fa3]:last-child{margin-bottom:0}.control-panel .section-title[data-v-07c54fa3]{margin-bottom:10px;color:#606266;font-size:13px;font-weight:600}.control-panel .preset-colors[data-v-07c54fa3]{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:16px;padding:10px;overflow-x:auto;background:rgba(240,242,245,.4);border-radius:8px}.control-panel .preset-colors .preset-color[data-v-07c54fa3]{width:22px;height:22px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.1);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;flex-shrink:0}.control-panel .preset-colors .preset-color[data-v-07c54fa3]:hover{transform:scale(1.15);box-shadow:0 4px 8px rgba(0,0,0,.2)}.control-panel .preset-colors .preset-color.active[data-v-07c54fa3]{box-shadow:0 0 0 2px #409eff,0 2px 4px rgba(0,0,0,.1)}.control-panel .switch-row[data-v-07c54fa3]{display:flex;align-items:center;justify-content:space-between;padding:10px;background:rgba(240,242,245,.6);border-radius:8px}.control-panel .switch-row .switch-label[data-v-07c54fa3]{color:#606266;font-size:12px}.control-panel .switch-row .toggle-switch[data-v-07c54fa3]{position:relative;width:44px;height:24px;padding:0;background-color:#c0c4cc;border:none;border-radius:12px;cursor:pointer;transition:background-color .2s ease}.control-panel .switch-row .toggle-switch .toggle-thumb[data-v-07c54fa3]{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:left .2s ease}.control-panel .switch-row .toggle-switch.on[data-v-07c54fa3]{background-color:#409eff}.control-panel .switch-row .toggle-switch.on .toggle-thumb[data-v-07c54fa3]{left:22px}.control-panel .switch-row .toggle-switch[data-v-07c54fa3]:disabled{cursor:not-allowed;opacity:.5}.control-panel .slider-row[data-v-07c54fa3]{margin-top:8px;padding:6px 10px;background:rgba(240,242,245,.6);border-radius:8px}.control-panel .slider-row .slider-header[data-v-07c54fa3]{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.control-panel .slider-row .slider-label[data-v-07c54fa3]{color:#606266;font-size:12px}.control-panel .slider-row .slider-value[data-v-07c54fa3]{color:#409eff;font-size:12px;font-family:monospace}.control-panel .slider-row input[type=range][data-v-07c54fa3]{width:100%;height:4px;margin:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:2px;outline:none;cursor:pointer}.control-panel .slider-row input[type=range][data-v-07c54fa3]::-webkit-slider-thumb{width:14px;height:14px;appearance:none;-webkit-appearance:none;background:#409eff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);cursor:pointer}.control-panel .slider-row input[type=range][data-v-07c54fa3]:disabled{cursor:not-allowed;opacity:.5}.control-panel .btn-group[data-v-07c54fa3]{display:flex;gap:10px}.control-panel .primary-btn[data-v-07c54fa3]{display:flex;align-items:center;justify-content:center;flex:1;padding:8px 12px;color:#fff;font-size:13px;background-color:#409eff;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.control-panel .primary-btn[data-v-07c54fa3]:hover{filter:brightness(1.1)}.control-panel .primary-btn[data-v-07c54fa3]:active{filter:brightness(.95)}.control-panel .primary-btn[data-v-07c54fa3]:disabled{background-color:#c0c4cc;cursor:not-allowed;filter:none}.control-panel .primary-btn.warning-btn[data-v-07c54fa3]{background-color:#e6a23c}.control-panel .import-input[data-v-07c54fa3]{display:none}.control-panel .import-error[data-v-07c54fa3]{margin-top:8px;color:#f56c6c;font-size:12px;line-height:1.5}.panel-toggle-btn[data-v-07c54fa3]{display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:absolute;top:12px;left:12px;width:40px;height:40px;padding:0;background:hsla(0,0%,100%,.95);border:none;border-radius:10px;box-shadow:0 4px 16px rgba(0,0,0,.15);cursor:pointer;z-index:90}.panel-toggle-btn .toggle-bar[data-v-07c54fa3]{width:18px;height:2px;background:#2c3e50;border-radius:1px}.panel-mask[data-v-07c54fa3]{display:none}@media screen and (max-width:768px){.panel-toggle-btn[data-v-07c54fa3]{display:flex}.panel-mask[data-v-07c54fa3]{display:block;position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:95;animation:panel-mask-fade-07c54fa3 .25s ease}.control-panel[data-v-07c54fa3]{top:0;left:0;width:80%;max-width:320px;height:100%;padding:16px;border-radius:0 12px 12px 0;overflow-y:auto;transform:translateX(-105%);transition:transform .28s ease;z-index:100}.control-panel.mobile-open[data-v-07c54fa3]{transform:translateX(0)}.control-panel .panel-close-btn[data-v-07c54fa3]{display:block}}@keyframes panel-mask-fade-07c54fa3{0%{opacity:0}to{opacity:1}}.glendale-viewer[data-v-88210358]{width:100%;height:100vh;position:relative;overflow:hidden;background:#f0f2f5}.glendale-viewer .viewer-container[data-v-88210358]{width:100%;height:100%;margin:0;padding:0}.gis-tool-btn[data-v-88210358]{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:8px;padding:9px 18px 9px 12px;color:#2c3e50;font-size:13px;font-weight:600;background:hsla(0,0%,100%,.55);border:1px solid hsla(0,0%,100%,.6);border-radius:22px;box-shadow:0 12px 40px rgba(0,0,0,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);cursor:pointer;transition:all .2s ease;z-index:100}.gis-tool-btn .gis-tool-icon[data-v-88210358]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:#fff;background:linear-gradient(135deg,#409eff,#28bbf0);border-radius:50%;box-shadow:0 2px 8px rgba(64,158,255,.4)}.gis-tool-btn[data-v-88210358]:hover{border-color:rgba(64,158,255,.6);box-shadow:0 12px 40px rgba(64,158,255,.35);transform:translateY(-2px)}.gis-tool-btn[data-v-88210358]:active{transform:translateY(0);filter:brightness(.97)}.gis-tool-btn[data-v-88210358]:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 12px 40px rgba(0,0,0,.18)}.detail-panel[data-v-88210358]{position:absolute;top:20px;right:20px;width:300px;background:hsla(0,0%,100%,.55);border:1px solid hsla(0,0%,100%,.6);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;z-index:100}.detail-panel .detail-head[data-v-88210358]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#0b1d3a,#122b52)}.detail-panel .detail-head .detail-title[data-v-88210358]{color:#28bbf0;font-size:14px;font-weight:600}.detail-panel .detail-head .detail-close[data-v-88210358]{padding:0;background:none;border:none;color:#a0c4e8;font-size:18px;line-height:1;cursor:pointer}.detail-panel .detail-head .detail-close[data-v-88210358]:hover{color:#fff}.detail-panel .detail-body[data-v-88210358]{padding:8px 16px 12px}.detail-panel .detail-item[data-v-88210358]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:8px 0;font-size:12px;border-bottom:1px dashed #ebeef5}.detail-panel .detail-item[data-v-88210358]:last-child{border-bottom:none}.detail-panel .detail-item .item-label[data-v-88210358]{color:#909399;white-space:nowrap}.detail-panel .detail-item .item-value[data-v-88210358]{color:#2c3e50;text-align:right;word-break:break-all}.detail-panel .detail-item .item-value.status-running[data-v-88210358]{color:#52c41a;font-weight:600}.detail-panel .detail-item .item-value.status-standby[data-v-88210358]{color:#e6a23c;font-weight:600}.detail-panel .detail-item .item-value.code-value[data-v-88210358]{color:#409eff;font-family:monospace;font-weight:600}.detail-panel .detail-code-row[data-v-88210358]{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #ebeef5}.detail-panel .detail-code-row .code-input[data-v-88210358]{flex:1;min-width:0;padding:6px 10px;font-size:12px;color:#2c3e50;border:1px solid #dcdfe6;border-radius:4px;outline:none;transition:border-color .2s ease}.detail-panel .detail-code-row .code-input[data-v-88210358]:focus{border-color:#409eff}.detail-panel .detail-code-row .code-input[data-v-88210358]::-moz-placeholder{color:#c0c4cc}.detail-panel .detail-code-row .code-input[data-v-88210358]::placeholder{color:#c0c4cc}.detail-panel .detail-code-row .point-select[data-v-88210358]{flex:1;min-width:0;padding:6px 10px;font-size:12px;color:#2c3e50;background:#fff;border:1px solid #dcdfe6;border-radius:4px;outline:none;transition:border-color .2s ease}.detail-panel .detail-code-row .point-select[data-v-88210358]:focus{border-color:#409eff}.detail-panel .detail-code-row .code-add-btn[data-v-88210358]{padding:6px 14px;color:#fff;font-size:12px;background:#409eff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap;transition:all .2s ease}.detail-panel .detail-code-row .code-add-btn[data-v-88210358]:hover{filter:brightness(1.1)}.coord-panel[data-v-88210358]{width:380px}.coord-panel .item-value[data-v-88210358]{white-space:nowrap;word-break:normal}.quick-nav-bar[data-v-88210358]{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:12px;z-index:90}.quick-nav-bar .quick-nav-btn[data-v-88210358]{padding:8px 20px;color:#fff;font-size:13px;font-weight:600;background:linear-gradient(135deg,#0b1d3a,#122b52);border:1px solid #28bbf0;border-radius:16px;box-shadow:0 2px 10px rgba(40,187,240,.35);cursor:pointer;white-space:nowrap;transition:all .2s ease}.quick-nav-bar .quick-nav-btn[data-v-88210358]:hover:not(:disabled){box-shadow:0 4px 14px rgba(40,187,240,.55);transform:translateY(-2px)}.quick-nav-bar .quick-nav-btn[data-v-88210358]:disabled{opacity:.5;cursor:not-allowed}.hint-mask[data-v-88210358]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.25);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:200;animation:hint-fade-in-88210358 .3s ease}.hint-modal[data-v-88210358]{display:flex;flex-direction:column;align-items:center;width:calc(100vw - 64px);max-width:360px;padding:28px 32px 24px;background:hsla(0,0%,100%,.55);border:1px solid hsla(0,0%,100%,.6);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);text-align:center;animation:hint-pop-88210358 .3s ease}.hint-modal .hint-icon[data-v-88210358]{font-size:34px}.hint-modal .hint-title[data-v-88210358]{margin:10px 0 8px;color:#2c3e50;font-size:16px;font-weight:600}.hint-modal .hint-text[data-v-88210358]{color:#606266;font-size:13px;line-height:1.7}.hint-modal .hint-btn[data-v-88210358]{margin-top:18px;padding:8px 28px;color:#fff;font-size:13px;background:linear-gradient(135deg,#409eff,#28bbf0);border:none;border-radius:18px;cursor:pointer;transition:all .2s ease}.hint-modal .hint-btn[data-v-88210358]:hover{filter:brightness(1.08)}@keyframes hint-fade-in-88210358{0%{opacity:0}to{opacity:1}}@keyframes hint-pop-88210358{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media screen and (max-width:768px){.gis-tool-btn[data-v-88210358]{right:12px;bottom:12px}.detail-panel[data-v-88210358]{top:auto;right:12px;left:12px;bottom:12px;width:auto;max-height:48vh}.detail-panel .detail-body[data-v-88210358]{max-height:calc(48vh - 52px);overflow-y:auto}}*{margin:0;padding:0;box-sizing:border-box}#app,body,html{width:100%;height:100%;overflow:hidden}