:root{--primary-color:#007bff;--danger-color:#dc3545;--warning-color:#ffc107;--bg-color:#f1f3f5;--card-bg:#fff;--text-color:#333;--border-color:#dee2e6;--orange-color:#f60}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0;padding:0;background-color:var(--bg-color);color:var(--text-color);line-height:1.5;-webkit-tap-highlight-color:transparent}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;width:100%;-webkit-transition:-webkit-transform .1s;transition:-webkit-transform .1s;transition:transform .1s;transition:transform .1s,-webkit-transform .1s;outline:none;-webkit-box-shadow:0 4px 6px rgba(0,0,0,.1);box-shadow:0 4px 6px rgba(0,0,0,.1)}.btn:active{-webkit-transform:scale(.98);transform:scale(.98)}.btn-group{display:-webkit-box;display:-ms-flexbox;display:flex;gap:15px}.btn-primary{background:var(--primary-color);color:#fff}.btn-danger{background:var(--danger-color);color:#fff}.btn-warning{background:var(--warning-color);color:#333}.btn-secondary{background:#e9ecef;color:#333}.btn-orange{background:var(--orange-color);color:#fff;border-radius:8px}.stats-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px;font-size:.9rem}.stat-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.stat-value{font-weight:700;font-size:1rem;color:var(--primary-color);line-height:1.1;margin-bottom:2px}.stat-label{font-size:1rem;color:#333}.map-controls-floating{position:absolute;bottom:30px;left:20px;right:20px;background:hsla(0,0%,100%,.98);padding:20px;border-radius:16px;-webkit-box-shadow:0 4px 16px rgba(0,0,0,.1);box-shadow:0 4px 16px rgba(0,0,0,.1);z-index:900;text-align:center}#map{width:100%;height:100vh;position:absolute;top:0;left:0;z-index:1}.page-container[data-v-e65d482a]{height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:var(--bg-color);position:relative;overflow:hidden}.nav-header[data-v-e65d482a]{height:44px;background:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 15px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.05);box-shadow:0 1px 0 rgba(0,0,0,.05);z-index:100}.nav-title[data-v-e65d482a]{font-size:17px;font-weight:600;color:#333}.nav-left[data-v-e65d482a],.nav-right[data-v-e65d482a]{width:40px;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer}.form-map-container[data-v-e65d482a]{width:100%;height:calc(100vh - 44px);position:absolute;top:44px;left:0;z-index:1}.map-right-sidebar[data-v-e65d482a]{position:absolute;right:15px;top:50px;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;z-index:950;pointer-events:none}.map-right-sidebar[data-v-e65d482a],.sidebar-group[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.sidebar-group[data-v-e65d482a]{background:hsla(0,0%,100%,.95);border-radius:8px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1);overflow:hidden;pointer-events:auto}.sidebar-btn[data-v-e65d482a]{width:48px;height:48px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;border-bottom:1px solid #f0f0f0;color:#333;-webkit-transition:background .2s;transition:background .2s}.sidebar-btn[data-v-e65d482a]:last-child{border-bottom:none}.sidebar-btn.active[data-v-e65d482a],.sidebar-btn[data-v-e65d482a]:active{background:#f0f0f0}.sidebar-btn span[data-v-e65d482a]{font-size:10px;margin-top:2px;color:#666}.zoom-controls[data-v-e65d482a]{margin-top:15px;background:hsla(0,0%,100%,.95);border-radius:8px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1);overflow:hidden;pointer-events:auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.zoom-btn[data-v-e65d482a],.zoom-controls[data-v-e65d482a]{width:48px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.zoom-btn[data-v-e65d482a]{height:40px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:20px;font-weight:300;cursor:pointer;color:#333}.zoom-btn[data-v-e65d482a]:active{background:#f0f0f0}.zoom-level[data-v-e65d482a]{font-size:12px;font-weight:600;color:#333;padding:2px 0;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;width:100%;text-align:center}.sidebar-action-btn[data-v-e65d482a]{width:48px;height:48px;background:hsla(0,0%,100%,.95);border-radius:8px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1);margin-top:15px;pointer-events:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.sidebar-action-btn[data-v-e65d482a]:active{background:#f0f0f0}.sidebar-action-btn span[data-v-e65d482a]{font-size:10px;margin-top:2px;color:#666}.active-tool-overlay[data-v-e65d482a]{position:absolute;top:50px;left:15px;right:80px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;z-index:900;pointer-events:none}.tool-status[data-v-e65d482a]{background:rgba(0,0,0,.7);color:#fff;padding:8px 12px;border-radius:4px;font-size:14px;pointer-events:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.tool-value[data-v-e65d482a]{font-size:18px;font-weight:700;color:#f1c40f;margin-top:4px}.btn-exit-tool[data-v-e65d482a]{background:#e74c3c;color:#fff;border:none;padding:8px 15px;border-radius:4px;font-size:14px;cursor:pointer;pointer-events:auto;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.dialog-mask[data-v-e65d482a]{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.4);z-index:1000;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.dialog-box[data-v-e65d482a]{width:80%;background:#fff;border-radius:8px;padding:20px;-webkit-box-shadow:0 4px 12px rgba(0,0,0,.15);box-shadow:0 4px 12px rgba(0,0,0,.15)}.dialog-title[data-v-e65d482a]{font-size:18px;font-weight:600;margin-bottom:15px;text-align:center}.dialog-input[data-v-e65d482a]{width:100%;padding:10px;border:1px solid #eee;border-radius:4px;margin-bottom:20px;font-size:16px;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-actions[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px}.dialog-btn[data-v-e65d482a]{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:10px;border:none;border-radius:4px;font-size:16px;cursor:pointer}.dialog-btn.cancel[data-v-e65d482a]{background:#f5f5f5;color:#666}.dialog-btn.confirm[data-v-e65d482a]{background:#2ecc71;color:#fff}.drawer-mask[data-v-e65d482a]{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.3);z-index:980}.drawer-panel[data-v-e65d482a]{position:absolute;left:0;top:0;height:100vh;width:280px;max-width:80%;background:#fff;-webkit-box-shadow:4px 0 16px rgba(0,0,0,.1);box-shadow:4px 0 16px rgba(0,0,0,.1);z-index:990;-webkit-transform:translateX(-100%);transform:translateX(-100%);-webkit-transition:-webkit-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.drawer-panel.open[data-v-e65d482a]{-webkit-transform:translateX(0);transform:translateX(0)}.drawer-header[data-v-e65d482a]{padding:15px 20px;font-size:18px;font-weight:600;color:#333;border-bottom:1px solid #eee}.toolbox-list[data-v-e65d482a]{overflow-y:auto;padding:10px 0}.tool-item[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:12px 20px;border-bottom:1px solid #f9f9f9;cursor:pointer}.tool-item[data-v-e65d482a]:active{background:#f5f5f5}.tool-icon-wrapper[data-v-e65d482a]{width:40px;height:40px;border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:15px;-ms-flex-negative:0;flex-shrink:0}.tool-content[data-v-e65d482a]{-webkit-box-flex:1;-ms-flex:1;flex:1}.tool-name[data-v-e65d482a]{font-size:16px;font-weight:500;color:#333;margin-bottom:4px}.tool-desc[data-v-e65d482a]{font-size:12px;color:#999}.layer-grid[data-v-e65d482a]{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:20px}.layer-item[data-v-e65d482a]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;cursor:pointer}.layer-item[data-v-e65d482a],.layer-preview[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.layer-preview[data-v-e65d482a]{width:100%;aspect-ratio:1;border-radius:8px;position:relative;overflow:hidden;border:2px solid transparent;-webkit-transition:all .2s;transition:all .2s;background-size:cover;background-position:50%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.layer-viz[data-v-e65d482a]{width:80%;height:80%;border-radius:4px}.layer-item.active .layer-preview[data-v-e65d482a]{border-color:#2ecc71}.layer-check[data-v-e65d482a]{position:absolute;top:5px;right:5px;width:20px;height:20px;background:#2ecc71;border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:2}.layer-name[data-v-e65d482a]{margin-top:8px;font-size:13px;color:#333}.layer-item.active .layer-name[data-v-e65d482a]{color:#2ecc71;font-weight:500}.layer-footer[data-v-e65d482a]{border-top:1px solid #eee;padding:10px 0}.layer-setting-row[data-v-e65d482a]{padding:12px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:15px;color:#333}.dashboard-panel[data-v-e65d482a]{position:absolute;bottom:20px;left:15px;right:15px;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:15px 20px;-webkit-box-shadow:0 4px 20px rgba(0,0,0,.1);box-shadow:0 4px 20px rgba(0,0,0,.1);z-index:900;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.dashboard-header[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px}.pulse-dot[data-v-e65d482a]{width:6px;height:6px;background-color:#ccc;border-radius:50%;margin-right:6px}.pulse-dot.active[data-v-e65d482a]{background-color:#2ecc71;-webkit-box-shadow:0 0 0 rgba(46,204,113,.4);box-shadow:0 0 0 rgba(46,204,113,.4);-webkit-animation:pulse-e65d482a 1.5s infinite;animation:pulse-e65d482a 1.5s infinite}@-webkit-keyframes pulse-e65d482a{0%{-webkit-box-shadow:0 0 0 0 rgba(46,204,113,.7);box-shadow:0 0 0 0 rgba(46,204,113,.7)}70%{-webkit-box-shadow:0 0 0 4px rgba(46,204,113,0);box-shadow:0 0 0 4px rgba(46,204,113,0)}to{-webkit-box-shadow:0 0 0 0 rgba(46,204,113,0);box-shadow:0 0 0 0 rgba(46,204,113,0)}}@keyframes pulse-e65d482a{0%{-webkit-box-shadow:0 0 0 0 rgba(46,204,113,.7);box-shadow:0 0 0 0 rgba(46,204,113,.7)}70%{-webkit-box-shadow:0 0 0 4px rgba(46,204,113,0);box-shadow:0 0 0 4px rgba(46,204,113,0)}to{-webkit-box-shadow:0 0 0 0 rgba(46,204,113,0);box-shadow:0 0 0 0 rgba(46,204,113,0)}}.status-text[data-v-e65d482a]{font-size:13px;color:#666;font-weight:500}.track-stats-grid[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;background:#f8f9fa;border-radius:12px;padding:15px;margin-bottom:15px}.stat-cell[data-v-e65d482a]{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;position:relative}.stat-cell[data-v-e65d482a]:not(:last-child):after{content:"";position:absolute;right:0;top:20%;height:60%;width:1px;background:#e0e0e0}.stat-value[data-v-e65d482a]{font-size:14px;font-weight:800;color:#ff9500;margin-bottom:4px;font-family:DIN Alternate,sans-serif}.stat-label[data-v-e65d482a]{font-size:14px;color:#666}.action-area[data-v-e65d482a]{margin-top:0}.btn-start[data-v-e65d482a]{width:100%;height:44px;background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff;border:none;border-radius:22px;font-size:16px;font-weight:600;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:0 4px 12px rgba(46,204,113,.3);box-shadow:0 4px 12px rgba(46,204,113,.3);-webkit-transition:all .2s;transition:all .2s}.btn-start[data-v-e65d482a]:active{-webkit-transform:scale(.98);transform:scale(.98)}.btn-icon[data-v-e65d482a]{margin-right:6px;font-size:12px}.btn-group-control[data-v-e65d482a]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px}.btn-control[data-v-e65d482a]{-webkit-box-flex:1;-ms-flex:1;flex:1;height:44px;border:none;border-radius:22px;font-size:15px;font-weight:600;-webkit-transition:all .2s;transition:all .2s}.btn-pause[data-v-e65d482a]{background:#f1c40f;color:#fff;-webkit-box-shadow:0 4px 12px rgba(241,196,15,.3);box-shadow:0 4px 12px rgba(241,196,15,.3)}.btn-stop[data-v-e65d482a]{background:#e74c3c;color:#fff;-webkit-box-shadow:0 4px 12px rgba(231,76,60,.3);box-shadow:0 4px 12px rgba(231,76,60,.3)}.btn-control[data-v-e65d482a]:active{-webkit-transform:scale(.98);transform:scale(.98)}.trajectory-baidu-loc,.trajectory-baidu-loc *{pointer-events:none;-webkit-box-shadow:none!important;box-shadow:none!important;filter:none!important;-webkit-filter:none!important}.trajectory-baidu-loc-rot{z-index:1;overflow:visible}.trajectory-baidu-loc-dot{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;background:#1e88e5;border:2px solid #fff;border-radius:50%;z-index:5;-webkit-box-sizing:border-box;box-sizing:border-box}