.dashboard-page[data-v-aee531ea]{color:#27364a;min-width:0}.summary-bar[data-v-aee531ea]{background:#dfe4ea;border:1px solid #dfe4ea;grid-template-columns:1.5fr repeat(4,1fr);gap:1px;margin-bottom:14px;display:grid}.summary-primary[data-v-aee531ea],.summary-item[data-v-aee531ea]{background:#fff;align-items:center;gap:10px;min-width:0;padding:13px 15px;display:flex}.summary-primary small[data-v-aee531ea],.summary-item small[data-v-aee531ea],.detail-grid span[data-v-aee531ea],.metric-box span[data-v-aee531ea],.coordinate-row span[data-v-aee531ea],.statistics-grid span[data-v-aee531ea]{color:#8894a1;font-size:10px;display:block}.summary-primary strong[data-v-aee531ea],.summary-item strong[data-v-aee531ea]{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;display:block;overflow:hidden}.connection-dot[data-v-aee531ea]{background:#c7cfd8;border-radius:50%;flex:0 0 9px;width:9px;height:9px}.connection-dot.online[data-v-aee531ea]{background:#28a852;box-shadow:0 0 0 4px #e0f4e5}.dashboard-grid[data-v-aee531ea]{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;display:grid}.panel[data-v-aee531ea]{background:#fff;border:1px solid #dfe4ea;min-width:0;padding:16px}.overview-panel[data-v-aee531ea]{grid-column:span 8}.attitude-panel[data-v-aee531ea]{grid-column:span 4}.battery-panel[data-v-aee531ea],.gps-panel[data-v-aee531ea],.link-panel[data-v-aee531ea],.alert-panel[data-v-aee531ea]{grid-column:span 6}.panel-header[data-v-aee531ea]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px;display:flex}.panel-header h2[data-v-aee531ea]{margin:0;font-size:15px}.panel-header p[data-v-aee531ea]{color:#9aa5b1;margin:4px 0 0;font-size:10px}.state-badge[data-v-aee531ea]{border-radius:3px;align-items:center;min-height:22px;padding:0 8px;font-size:10px;display:inline-flex}.state-badge.normal[data-v-aee531ea]{color:#218643;background:#e3f5e8}.state-badge.warning[data-v-aee531ea]{color:#956400;background:#fff2ca}.state-badge.danger[data-v-aee531ea]{color:#b42318;background:#ffebe9}.state-badge.info[data-v-aee531ea]{color:#216bd1;background:#eaf2ff}.state-badge.unknown[data-v-aee531ea]{color:#687585;background:#edf0f3}.overview-metrics[data-v-aee531ea]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.metric-box[data-v-aee531ea]{background:#fafbfc;border:1px solid #edf0f3;min-width:0;padding:13px;position:relative}.metric-box.primary[data-v-aee531ea]{background:#f2f7ff;border-color:#cfe0f7}.metric-box strong[data-v-aee531ea]{color:#27364a;margin-top:8px;font-size:23px;display:block}.metric-box small[data-v-aee531ea]{color:#8994a1;font-size:10px;position:absolute;bottom:13px;right:12px}.coordinate-row[data-v-aee531ea]{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.coordinate-row div[data-v-aee531ea]{border-top:1px solid #edf0f3;padding:10px 12px}.coordinate-row strong[data-v-aee531ea]{margin-top:4px;font-size:12px;font-weight:500;display:block}.attitude-layout[data-v-aee531ea]{grid-template-columns:minmax(150px,1fr) 100px;align-items:center;gap:16px;display:grid}.attitude-indicator[data-v-aee531ea]{aspect-ratio:1;background:#83b9df;border:5px solid #26384d;border-radius:50%;width:100%;position:relative;overflow:hidden}.attitude-world[data-v-aee531ea]{transition:transform .15s linear;position:absolute;inset:-30%}.sky[data-v-aee531ea]{background:#79b5df;position:absolute;inset:0 0 50%}.ground[data-v-aee531ea]{background:#a7794f;position:absolute;inset:50% 0 0}.horizon-line[data-v-aee531ea]{background:#fff;height:2px;position:absolute;top:calc(50% - 1px);left:0;right:0}.aircraft-symbol[data-v-aee531ea]{z-index:2;align-items:center;width:76px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.aircraft-symbol i[data-v-aee531ea]{background:#f7ca36;width:26px;height:3px}.aircraft-symbol span[data-v-aee531ea]{border-top:3px solid #f7ca36;width:24px;height:8px}.pitch-mark[data-v-aee531ea]{z-index:2;color:#fff;font-size:9px;position:absolute;left:50%;transform:translate(-50%)}.pitch-up[data-v-aee531ea]{top:26%}.pitch-down[data-v-aee531ea]{bottom:26%}.attitude-values[data-v-aee531ea]{flex-direction:column;gap:14px;display:flex}.attitude-values span[data-v-aee531ea],.detail-grid span[data-v-aee531ea]{color:#8b96a3;font-size:10px}.attitude-values strong[data-v-aee531ea]{margin-top:3px;font-size:17px;display:block}.progress-track[data-v-aee531ea]{background:#edf0f3;border-radius:4px;height:8px;margin:18px 0;overflow:hidden}.progress-value[data-v-aee531ea]{min-width:0;height:100%;transition:width .2s}.progress-value.normal[data-v-aee531ea]{background:#32a852}.progress-value.warning[data-v-aee531ea]{background:#d79514}.progress-value.danger[data-v-aee531ea]{background:#d92d20}.progress-value.unknown[data-v-aee531ea]{background:#aeb8c2}.detail-grid[data-v-aee531ea]{grid-template-columns:repeat(2,1fr);gap:13px 20px;display:grid}.detail-grid strong[data-v-aee531ea]{margin-top:4px;font-size:14px;font-weight:600;display:block}.gps-main[data-v-aee531ea]{align-items:baseline;gap:8px;margin:8px 0 18px;display:flex}.gps-main strong[data-v-aee531ea]{color:#216bd1;font-size:35px}.gps-main span[data-v-aee531ea]{color:#82909f;font-size:11px}.link-score[data-v-aee531ea]{align-items:baseline;gap:8px;margin:8px 0;display:flex}.link-score strong[data-v-aee531ea]{color:#216bd1;font-size:29px}.link-score span[data-v-aee531ea]{color:#83909e;font-size:11px}.text-button[data-v-aee531ea]{color:#216bd1;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.text-button[data-v-aee531ea]:disabled{color:#b5bec8;cursor:default}.alert-list[data-v-aee531ea]{flex-direction:column;gap:8px;max-height:235px;display:flex;overflow:auto}.alert-item[data-v-aee531ea]{background:#f7f9fb;border-left:3px solid #8793a0;align-items:flex-start;gap:8px;padding:9px;display:flex}.alert-item.warning[data-v-aee531ea]{background:#fff9e8;border-left-color:#d28a00}.alert-item.error[data-v-aee531ea]{background:#fff1f0;border-left-color:#d92d20}.alert-mark[data-v-aee531ea]{background:#e1e6eb;border-radius:50%;flex:0 0 18px;place-items:center;width:18px;height:18px;font-size:11px;display:grid}.alert-item div[data-v-aee531ea]{min-width:0}.alert-item strong[data-v-aee531ea]{font-size:11px}.alert-item p[data-v-aee531ea]{overflow-wrap:anywhere;color:#334155;margin:3px 0;font-size:12px}.alert-item small[data-v-aee531ea]{color:#8994a1;font-size:10px}.empty-state[data-v-aee531ea]{color:#83909e;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:100px;display:flex}.empty-state strong[data-v-aee531ea]{color:#259b55;font-size:22px}.empty-state span[data-v-aee531ea]{color:#526071;font-size:12px}.empty-state small[data-v-aee531ea]{font-size:10px}.statistics-panel[data-v-aee531ea]{margin-top:14px}.statistics-grid[data-v-aee531ea]{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.statistics-grid div[data-v-aee531ea]{background:#fafbfc;border:1px solid #edf0f3;min-width:0;padding:12px}.statistics-grid strong[data-v-aee531ea]{text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:13px;display:block;overflow:hidden}.state-normal[data-v-aee531ea]{color:#218643}.state-warning[data-v-aee531ea]{color:#956400}.state-danger[data-v-aee531ea]{color:#b42318}.state-info[data-v-aee531ea]{color:#216bd1}.state-unknown[data-v-aee531ea]{color:#687585}.normal-text[data-v-aee531ea]{color:#218643}.danger-text[data-v-aee531ea]{color:#b42318}@media (width<=1200px){.overview-panel[data-v-aee531ea],.attitude-panel[data-v-aee531ea],.battery-panel[data-v-aee531ea],.gps-panel[data-v-aee531ea],.link-panel[data-v-aee531ea],.alert-panel[data-v-aee531ea]{grid-column:span 6}.statistics-grid[data-v-aee531ea]{grid-template-columns:repeat(3,1fr)}}@media (width<=820px){.overview-panel[data-v-aee531ea],.attitude-panel[data-v-aee531ea],.battery-panel[data-v-aee531ea],.gps-panel[data-v-aee531ea],.link-panel[data-v-aee531ea],.alert-panel[data-v-aee531ea]{grid-column:span 12}.overview-metrics[data-v-aee531ea]{grid-template-columns:repeat(2,1fr)}}@media (width<=460px){.summary-bar[data-v-aee531ea]{grid-template-columns:1fr 1fr}.summary-primary[data-v-aee531ea]{grid-column:span 2}.summary-item[data-v-aee531ea]{padding:10px}.overview-metrics[data-v-aee531ea],.statistics-grid[data-v-aee531ea]{grid-template-columns:repeat(2,1fr)}.attitude-layout[data-v-aee531ea]{grid-template-columns:1fr 85px}}.dialog-mask[data-v-75b6f1e1]{z-index:3000;background:#0b131e94;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.connect-dialog[data-v-75b6f1e1]{color:#263242;background:#fff;border:1px solid #dce3eb;border-radius:8px;width:min(530px,100%);overflow:hidden;box-shadow:0 20px 55px #0a192a47}.dialog-header[data-v-75b6f1e1],.dialog-footer[data-v-75b6f1e1]{justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.dialog-header[data-v-75b6f1e1]{border-bottom:1px solid #e7ebf0}.dialog-header h2[data-v-75b6f1e1]{margin:0;font-size:18px}.dialog-header p[data-v-75b6f1e1]{color:#7b8796;margin:5px 0 0;font-size:12px}.dialog-body[data-v-75b6f1e1]{padding:20px}.icon-button[data-v-75b6f1e1]{color:#637080;cursor:pointer;background:#f2f5f8;border:0;border-radius:4px;width:32px;height:32px;font-size:22px}.connection-summary[data-v-75b6f1e1]{background:#f7f9fb;border:1px solid #e4e9ef;border-radius:6px;grid-template-columns:auto 1fr 1fr;align-items:center;gap:12px;margin-bottom:18px;padding:14px;display:grid}.connection-summary div[data-v-75b6f1e1]{flex-direction:column;gap:4px;display:flex}.connection-summary span[data-v-75b6f1e1],.form-label[data-v-75b6f1e1],.serial-statistics span[data-v-75b6f1e1]{color:#778493;font-size:12px}.connection-summary strong[data-v-75b6f1e1]{font-size:14px}.connection-dot[data-v-75b6f1e1]{background:#a6b0bb;border-radius:50%;width:12px;height:12px}.connection-dot.online[data-v-75b6f1e1]{background:#29b877;box-shadow:0 0 0 4px #29b87724}.connection-dot.loading[data-v-75b6f1e1]{background:#e8a441;animation:1s infinite pulse-75b6f1e1}.healthy[data-v-75b6f1e1]{color:#1b9c61}.timeout[data-v-75b6f1e1]{color:#db694a}.form-label[data-v-75b6f1e1]{margin-bottom:7px;display:block}.form-select[data-v-75b6f1e1]{color:#334154;background:#fff;border:1px solid #cfd7e0;border-radius:5px;width:100%;height:38px;margin-bottom:16px;padding:0 10px}.device-header[data-v-75b6f1e1]{justify-content:space-between;align-items:center;display:flex}.text-button[data-v-75b6f1e1]{color:#2f77dc;cursor:pointer;background:0 0;border:0;margin-bottom:7px;padding:0}.error-notice[data-v-75b6f1e1],.unsupported-notice[data-v-75b6f1e1]{color:#9f493d;background:#fff4f2;border:1px solid #f1d1cb;border-radius:5px;margin-bottom:15px;padding:11px 12px;font-size:12px;line-height:1.6}.unsupported-notice strong[data-v-75b6f1e1]{color:#9f493d;display:block}.unsupported-notice p[data-v-75b6f1e1]{margin:5px 0 0}.serial-statistics[data-v-75b6f1e1]{border:1px solid #e2e7ed;border-radius:6px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.serial-statistics div[data-v-75b6f1e1]{border-right:1px solid #e2e7ed;flex-direction:column;gap:5px;padding:11px;display:flex}.serial-statistics div[data-v-75b6f1e1]:last-child{border-right:0}.serial-statistics strong[data-v-75b6f1e1]{color:#314056;font-family:Consolas,monospace;font-size:13px}.security-notice[data-v-75b6f1e1]{color:#788596;margin:14px 0 0;font-size:12px;line-height:1.65}.dialog-footer[data-v-75b6f1e1]{background:#fafbfd;border-top:1px solid #e7ebf0}.footer-right[data-v-75b6f1e1]{gap:8px;margin-left:auto;display:flex}.primary-button[data-v-75b6f1e1],.secondary-button[data-v-75b6f1e1],.danger-button[data-v-75b6f1e1]{cursor:pointer;border-radius:5px;height:36px;padding:0 13px}.primary-button[data-v-75b6f1e1]{color:#fff;background:#2f77dc;border:1px solid #2f77dc}.secondary-button[data-v-75b6f1e1]{color:#586678;background:#fff;border:1px solid #d1d9e1}.danger-button[data-v-75b6f1e1]{color:#b74b42;background:#fff7f6;border:1px solid #ebc6c1}button[data-v-75b6f1e1]:disabled{cursor:not-allowed;opacity:.55}@keyframes pulse-75b6f1e1{50%{opacity:.35}}@media (width<=560px){.dialog-footer[data-v-75b6f1e1]{flex-direction:column;align-items:stretch}.footer-right[data-v-75b6f1e1]{width:100%;margin-left:0}.footer-right button[data-v-75b6f1e1],.danger-button[data-v-75b6f1e1],.secondary-button[data-v-75b6f1e1]{flex:1}.serial-statistics[data-v-75b6f1e1]{grid-template-columns:repeat(2,1fr)}.serial-statistics div[data-v-75b6f1e1]:nth-child(2){border-right:0}.serial-statistics div[data-v-75b6f1e1]:nth-child(-n+2){border-bottom:1px solid #e2e7ed}}.flight-status-bar[data-v-af4a85f4]{color:#dbe8f7;scrollbar-width:thin;background:#18283c;border:1px solid #30465e;border-radius:8px;grid-template-columns:repeat(10,minmax(112px,1fr));width:100%;min-height:76px;margin-bottom:12px;display:grid;overflow-x:auto;box-shadow:0 5px 18px #0f233a24}.status-block[data-v-af4a85f4]{min-width:112px;min-height:74px;color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-right:1px solid #ffffff17;align-items:center;gap:9px;padding:10px 12px;display:flex;position:relative}button.status-block[data-v-af4a85f4]{cursor:pointer}button.status-block[data-v-af4a85f4]:hover{background:#ffffff0f}.status-block[data-v-af4a85f4]:last-child{border-right:0}.status-icon[data-v-af4a85f4]{color:#b6cce3;background:#ffffff14;border:1px solid #ffffff1f;border-radius:6px;flex:0 0 29px;justify-content:center;align-items:center;width:29px;height:29px;font-size:13px;font-weight:800;display:inline-flex}.status-content[data-v-af4a85f4]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.status-label[data-v-af4a85f4]{color:#91a8c1;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.status-main-value[data-v-af4a85f4]{color:#f7fbff;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.status-description[data-v-af4a85f4]{color:#8fa6be;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.status-description.armed[data-v-af4a85f4]{color:#ffbd5b}.status-main-value small[data-v-af4a85f4]{color:#8fa6be;font-size:10px}.connection-dot[data-v-af4a85f4]{background:#7890a8;border-radius:50%;width:10px;height:10px;display:block}.is-connected .connection-dot[data-v-af4a85f4]{background:#27d07d;box-shadow:0 0 0 4px #27d07d24}.is-connecting .connection-dot[data-v-af4a85f4],.is-waiting-heartbeat .connection-dot[data-v-af4a85f4]{background:#f3ae43;animation:1s infinite pulse-af4a85f4;box-shadow:0 0 0 4px #f3ae4324}.is-disconnected .connection-dot[data-v-af4a85f4]{background:#ef6670}.warning-icon[data-v-af4a85f4]{color:#152238;background:#f0ab43;border-color:#f0ab43;border-radius:50%}.no-warning .warning-icon[data-v-af4a85f4]{color:#fff;background:#22b775;border-color:#22b775}.warning-badge[data-v-af4a85f4]{color:#fff;background:#ed525e;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:grid;position:absolute;top:7px;right:7px}.has-danger .status-main-value[data-v-af4a85f4],.status-danger .status-main-value[data-v-af4a85f4]{color:#ff8992}.has-warning .status-main-value[data-v-af4a85f4],.status-warning .status-main-value[data-v-af4a85f4]{color:#ffc76e}.status-normal .status-main-value[data-v-af4a85f4]{color:#50dc99}.status-muted .status-main-value[data-v-af4a85f4]{color:#a1b1c2}.mode-select[data-v-af4a85f4]{color:#f7fbff;cursor:pointer;background:#243b55;border:1px solid #49627c;border-radius:4px;width:100%;min-width:0;height:25px;padding:0 22px 0 5px;font-size:13px;font-weight:700}.mode-select[data-v-af4a85f4]:disabled{color:#9dafc1;cursor:not-allowed;opacity:.75}.mode-select option[data-v-af4a85f4]{color:#172033;background:#fff}.mode-result[data-v-af4a85f4]{color:#31577f;background:#eef6ff;border-left:3px solid #4285d4;margin:-4px 0 14px;padding:8px 12px;font-size:12px}.mode-result.success[data-v-af4a85f4]{color:#237844;background:#edfaf2;border-color:#2a9b59}.mode-result.warning[data-v-af4a85f4]{color:#805b17;background:#fff8e8;border-color:#d19225}.compass-icon[data-v-af4a85f4]{color:#80c7ff;transition:transform .15s linear}.gps-icon[data-v-af4a85f4]{font-size:18px}.rtk-icon[data-v-af4a85f4]{color:#34d399;font-size:16px;font-weight:700}.altitude-icon[data-v-af4a85f4]{color:#7dd3fc;font-size:18px}.mode-icon[data-v-af4a85f4]{color:#8ac1ff}.ekf-icon[data-v-af4a85f4]{color:#c4b5fd}.signal-bars[data-v-af4a85f4]{flex:0 0 28px;justify-content:center;align-items:flex-end;gap:2px;width:28px;height:28px;display:flex}.signal-bars i[data-v-af4a85f4]{background:#5e748b;border-radius:2px 2px 0 0;width:4px}.signal-bars i[data-v-af4a85f4]:first-child{height:6px}.signal-bars i[data-v-af4a85f4]:nth-child(2){height:11px}.signal-bars i[data-v-af4a85f4]:nth-child(3){height:16px}.signal-bars i[data-v-af4a85f4]:nth-child(4){height:22px}.signal-bars i.active[data-v-af4a85f4]{background:#53d99a}.status-warning .signal-bars i.active[data-v-af4a85f4]{background:#ffc567}.status-danger .signal-bars i.active[data-v-af4a85f4]{background:#ff7b86}.battery-icon[data-v-af4a85f4]{border:2px solid #71879d;border-radius:3px;flex:0 0 29px;width:29px;height:15px;padding:2px;position:relative}.battery-icon[data-v-af4a85f4]:after{content:"";background:#71879d;width:3px;height:6px;position:absolute;top:3px;right:-5px}.battery-icon i[data-v-af4a85f4]{background:#4fd493;height:100%;transition:width .2s;display:block}.status-warning .battery-icon i[data-v-af4a85f4]{background:#ffc45e}.status-danger .battery-icon i[data-v-af4a85f4]{background:#ff6671}.status-dialog-mask[data-v-af4a85f4]{z-index:2000;background:#08111da3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.status-dialog[data-v-af4a85f4]{color:#1f2937;background:#fff;border:1px solid #dce5ef;border-radius:8px;width:min(620px,100%);max-height:calc(100vh - 40px);overflow:hidden;box-shadow:0 24px 80px #05132552}.dialog-header[data-v-af4a85f4]{border-bottom:1px solid #e7edf4;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px 17px;display:flex}.dialog-header h2[data-v-af4a85f4]{margin:0 0 4px;font-size:18px}.dialog-header p[data-v-af4a85f4]{color:#758398;margin:0;font-size:12px}.dialog-close[data-v-af4a85f4]{color:#718096;cursor:pointer;background:#f3f6f9;border:0;border-radius:5px;width:32px;height:32px;font-size:23px}.dialog-body[data-v-af4a85f4]{max-height:calc(100vh - 210px);padding:20px 22px;overflow-y:auto}.dialog-footer[data-v-af4a85f4]{color:#79879a;background:#f8fafc;border-top:1px solid #e7edf4;justify-content:flex-end;align-items:center;gap:10px;min-height:60px;padding:11px 22px;font-size:12px;display:flex}.primary-button[data-v-af4a85f4],.secondary-button[data-v-af4a85f4]{cursor:pointer;border-radius:5px;min-width:82px;height:35px;padding:0 15px}.primary-button[data-v-af4a85f4]{color:#fff;background:#3478f6;border:1px solid #3478f6}.secondary-button[data-v-af4a85f4]{color:#526071;background:#fff;border:1px solid #cbd4dd}.secondary-button[data-v-af4a85f4]:disabled{cursor:not-allowed;opacity:.5}.warning-list[data-v-af4a85f4]{flex-direction:column;gap:9px;display:flex}.warning-item[data-v-af4a85f4]{background:#f8fafc;border-left:4px solid #8193a6;align-items:flex-start;gap:10px;padding:13px;display:flex}.warning-item>b[data-v-af4a85f4]{color:#fff;background:#8193a6;border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;display:grid}.warning-item>div[data-v-af4a85f4]{flex:1;min-width:0}.warning-item header[data-v-af4a85f4]{justify-content:space-between;gap:12px;display:flex}.warning-item small[data-v-af4a85f4]{color:#94a0af}.warning-item p[data-v-af4a85f4]{overflow-wrap:anywhere;color:#66768a;margin:5px 0 0;font-size:12px}.warning-danger[data-v-af4a85f4]{background:#fff7f7;border-color:#ef5360}.warning-warning[data-v-af4a85f4]{background:#fffaf1;border-color:#eda63d}.warning-info[data-v-af4a85f4]{background:#f4f9ff;border-color:#4388e8}.empty-warning[data-v-af4a85f4]{text-align:center;padding:28px 12px}.empty-warning>span[data-v-af4a85f4]{color:#fff;background:#25b978;border-radius:50%;place-items:center;width:50px;height:50px;font-size:25px;display:inline-grid}.empty-warning h3[data-v-af4a85f4]{margin:13px 0 5px}.empty-warning p[data-v-af4a85f4]{color:#7b899b;margin:0;font-size:12px}.gps-summary[data-v-af4a85f4]{background:#f5f8fc;border:1px solid #e1e8f0;align-items:center;gap:14px;margin-bottom:15px;padding:15px;display:flex}.gps-summary>span[data-v-af4a85f4]{color:#fff;background:#8294a7;border-radius:50%;flex:0 0 48px;place-items:center;width:48px;height:48px;font-size:26px;display:grid}.gps-summary>span.status-normal[data-v-af4a85f4]{background:#25b978}.gps-summary>span.status-warning[data-v-af4a85f4]{background:#eea83f}.gps-summary>span.status-danger[data-v-af4a85f4]{background:#e95964}.gps-summary>div[data-v-af4a85f4]{flex-direction:column;gap:3px;display:flex}.gps-summary small[data-v-af4a85f4],.gps-summary p[data-v-af4a85f4]{color:#738296;margin:0;font-size:12px}.gps-summary strong[data-v-af4a85f4]{font-size:19px}.gps-detail-grid[data-v-af4a85f4]{border-top:1px solid #e4eaf1;border-left:1px solid #e4eaf1;grid-template-columns:repeat(4,1fr);display:grid}.gps-detail-grid>div[data-v-af4a85f4]{border-bottom:1px solid #e4eaf1;border-right:1px solid #e4eaf1;flex-direction:column;justify-content:center;gap:5px;min-height:80px;padding:12px;display:flex}.gps-detail-grid span[data-v-af4a85f4]{color:#7b899b;font-size:11px}.gps-detail-grid strong[data-v-af4a85f4]{overflow-wrap:anywhere;font-size:14px}.gps-detail-grid .coordinate[data-v-af4a85f4]{grid-column:span 2}@keyframes pulse-af4a85f4{0%,to{opacity:1}50%{opacity:.4}}@media (width<=1150px){.flight-status-bar[data-v-af4a85f4]{grid-template-columns:repeat(9,minmax(112px,1fr))}}@media (width<=720px){.flight-status-bar[data-v-af4a85f4]{border-radius:6px}.gps-detail-grid[data-v-af4a85f4]{grid-template-columns:repeat(2,1fr)}.gps-detail-grid .coordinate[data-v-af4a85f4]{grid-column:span 2}}@media (width<=500px){.status-dialog-mask[data-v-af4a85f4]{padding:8px}.dialog-header[data-v-af4a85f4],.dialog-body[data-v-af4a85f4],.dialog-footer[data-v-af4a85f4]{padding-left:14px;padding-right:14px}.dialog-footer[data-v-af4a85f4]{flex-direction:column;align-items:stretch}.primary-button[data-v-af4a85f4],.secondary-button[data-v-af4a85f4]{width:100%}}.flight-settings-page[data-v-6b71d83d]{--blue:#2878d4;--border:#dfe4e9;--muted:#7b8590;color:#28323d;width:100%}.page-header[data-v-6b71d83d],.toolbar[data-v-6b71d83d],.setting-section>header[data-v-6b71d83d],.test-controls[data-v-6b71d83d],.maintenance-actions[data-v-6b71d83d]{align-items:center;display:flex}.page-header[data-v-6b71d83d]{justify-content:space-between;gap:18px;margin-bottom:15px}.page-header h1[data-v-6b71d83d]{letter-spacing:0;margin:0;font-size:24px}.page-header p[data-v-6b71d83d],.setting-section header p[data-v-6b71d83d]{color:var(--muted);margin:5px 0 0;font-size:12px}.header-status[data-v-6b71d83d]{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.connection-badge[data-v-6b71d83d],.firmware-badge[data-v-6b71d83d],.armed-badge[data-v-6b71d83d]{border:1px solid var(--border);color:#69737e;background:#fff;border-radius:5px;padding:6px 9px;font-size:11px}.connection-badge i[data-v-6b71d83d]{background:#9aa2aa;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.connection-badge.online i[data-v-6b71d83d]{background:#20a35e}.armed-badge.armed[data-v-6b71d83d]{color:#c83c49;background:#fff5f6;border-color:#e8b6ba}.load-progress[data-v-6b71d83d]{background:#f6faff;border:1px solid #d6e4f4;border-radius:6px;margin-bottom:12px;padding:10px 12px}.load-progress>div[data-v-6b71d83d]:first-child{justify-content:space-between;margin-bottom:7px;font-size:11px;display:flex}.progress-track[data-v-6b71d83d],.channel-track[data-v-6b71d83d]{background:#e5e9ed;border-radius:4px;overflow:hidden}.progress-track[data-v-6b71d83d]{height:5px}.progress-track i[data-v-6b71d83d],.channel-track i[data-v-6b71d83d]{background:var(--blue);height:100%;display:block}.settings-tabs[data-v-6b71d83d]{border:1px solid var(--border);background:#f3f5f7;align-items:center;gap:3px;min-height:46px;padding:4px;display:flex;overflow-x:auto}.settings-tabs button[data-v-6b71d83d]{color:#697480;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;height:36px;padding:0 14px}.settings-tabs button.active[data-v-6b71d83d]{color:#fff;background:var(--blue)}.toolbar[data-v-6b71d83d]{justify-content:space-between;gap:12px;padding:12px 0}.toolbar>div[data-v-6b71d83d]:first-child{flex-direction:column;gap:3px;display:flex}.toolbar span[data-v-6b71d83d]{color:var(--muted);font-size:11px}.toolbar-actions[data-v-6b71d83d]{flex-wrap:wrap;gap:7px;display:flex}.button[data-v-6b71d83d]{cursor:pointer;border:1px solid #0000;border-radius:5px;min-height:34px;padding:0 12px}.button[data-v-6b71d83d]:disabled{cursor:not-allowed;opacity:.5}.button.primary[data-v-6b71d83d]{color:#fff;background:var(--blue)}.button.secondary[data-v-6b71d83d]{color:#56616d;background:#fff;border-color:#d7dde3}.button.danger[data-v-6b71d83d]{color:#fff;background:#d94f5b;border-color:#dc5963}.settings-content[data-v-6b71d83d]{min-height:500px}.setting-section[data-v-6b71d83d]{border:1px solid var(--border);background:#fff;margin-bottom:12px}.setting-section>header[data-v-6b71d83d]{border-bottom:1px solid #e9ecef;justify-content:space-between;gap:12px;min-height:58px;padding:0 15px}.setting-section h2[data-v-6b71d83d]{margin:0;font-size:14px}.field-grid[data-v-6b71d83d]{grid-template-columns:repeat(3,minmax(220px,1fr));display:grid}.field-item[data-v-6b71d83d]{border-bottom:1px solid #edf0f2;border-right:1px solid #edf0f2;min-height:146px;padding:14px;position:relative}.field-item.modified[data-v-6b71d83d]{background:#fffaf0}.field-item.unsupported[data-v-6b71d83d]{background:#fafbfc}.field-heading[data-v-6b71d83d],.field-control[data-v-6b71d83d],.rc-grid article>div[data-v-6b71d83d]:first-child{justify-content:space-between;align-items:center;gap:8px;display:flex}.field-heading strong[data-v-6b71d83d],.field-heading code[data-v-6b71d83d]{display:block}.field-heading strong[data-v-6b71d83d]{margin-bottom:4px;font-size:13px}.field-heading code[data-v-6b71d83d]{color:#83909d;font-size:10px}.field-item>p[data-v-6b71d83d]{min-height:34px;color:var(--muted);margin:9px 0;font-size:11px;line-height:1.5}.reboot-mark[data-v-6b71d83d]{color:#9b6a17;background:#fff0d3;border-radius:4px;flex:none;padding:3px 5px;font-size:10px}.field-control select[data-v-6b71d83d],.field-control input[type=number][data-v-6b71d83d],.motor-row select[data-v-6b71d83d],.test-controls select[data-v-6b71d83d],.test-controls input[type=number][data-v-6b71d83d]{background:#fff;border:1px solid #d7dde3;border-radius:4px;width:100%;height:34px;padding:0 8px}.number-control[data-v-6b71d83d]{flex:1;min-width:0;position:relative}.number-control span[data-v-6b71d83d]{color:var(--muted);font-size:10px;position:absolute;top:9px;right:8px}.revert-button[data-v-6b71d83d]{cursor:pointer;background:#fff;border:1px solid #d7dde3;border-radius:4px;flex:none;width:30px;height:30px}.toggle-control[data-v-6b71d83d]{align-items:center;gap:8px;display:flex}.toggle-control input[data-v-6b71d83d]{opacity:0;position:absolute}.toggle-control>span[data-v-6b71d83d]{background:#cbd2d9;border-radius:10px;width:34px;height:18px;position:relative}.toggle-control>span[data-v-6b71d83d]:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:all .16s;position:absolute;top:3px;left:3px}.toggle-control input:checked+span[data-v-6b71d83d]{background:var(--blue)}.toggle-control input:checked+span[data-v-6b71d83d]:after{transform:translate(16px)}.toggle-control em[data-v-6b71d83d]{color:#65717d;font-size:11px;font-style:normal}.unsupported-text[data-v-6b71d83d]{color:#929aa3;font-size:11px}.field-error[data-v-6b71d83d]{color:#cf414d;margin-top:6px;display:block}.motor-table[data-v-6b71d83d]{overflow-x:auto}.motor-row[data-v-6b71d83d]{border-bottom:1px solid #edf0f2;grid-template-columns:100px 130px minmax(140px,1fr) minmax(210px,1.3fr);align-items:center;gap:12px;min-width:720px;min-height:43px;padding:0 14px;font-size:12px;display:grid}.motor-row.table-head[data-v-6b71d83d]{color:#727d88;background:#f5f7f9}.motor-row code[data-v-6b71d83d]{color:#2674c9}.danger-section[data-v-6b71d83d]{border-color:#e8c8cb}.safety-confirm[data-v-6b71d83d]{color:#9e3d45;background:#fff7f7;border:1px solid #edc9cc;align-items:center;gap:8px;margin:14px;padding:11px;font-size:12px;display:flex}.test-controls[data-v-6b71d83d]{flex-wrap:wrap;align-items:flex-end;gap:12px;padding:0 14px 15px}.test-controls label[data-v-6b71d83d]{color:#66717d;flex-direction:column;flex:1;gap:6px;min-width:150px;font-size:11px;display:flex}.rc-grid[data-v-6b71d83d]{grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;padding:15px;display:grid}.rc-grid article[data-v-6b71d83d]{border:1px solid #e3e7eb;padding:10px}.rc-grid strong[data-v-6b71d83d]{color:#2674c9;font-family:Consolas,monospace}.channel-track[data-v-6b71d83d]{height:6px;margin-top:9px}.maintenance-actions[data-v-6b71d83d]{gap:9px;padding:15px}.empty-state[data-v-6b71d83d]{border:1px solid var(--border);min-height:420px;color:var(--muted);background:#fff;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state strong[data-v-6b71d83d]{color:#4b5661}.empty-state p[data-v-6b71d83d]{margin:8px 0 0;font-size:12px}.notice[data-v-6b71d83d]{z-index:1200;color:#fff;background:#303a46;border-radius:5px;max-width:390px;padding:11px 15px;font-size:12px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1e2a3a38}.notice.success[data-v-6b71d83d]{background:#278557}.notice.warning[data-v-6b71d83d]{background:#ad711b}.notice.error[data-v-6b71d83d]{background:#c74651}.notice-enter-active[data-v-6b71d83d],.notice-leave-active[data-v-6b71d83d]{transition:all .18s}.notice-enter-from[data-v-6b71d83d],.notice-leave-to[data-v-6b71d83d]{opacity:0;transform:translateY(8px)}@media (width<=1100px){.field-grid[data-v-6b71d83d]{grid-template-columns:repeat(2,minmax(220px,1fr))}.rc-grid[data-v-6b71d83d]{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media (width<=720px){.page-header[data-v-6b71d83d],.toolbar[data-v-6b71d83d],.setting-section>header[data-v-6b71d83d]{flex-direction:column;align-items:flex-start}.header-status[data-v-6b71d83d],.toolbar-actions[data-v-6b71d83d]{width:100%}.toolbar-actions .button[data-v-6b71d83d]{flex:1}.field-grid[data-v-6b71d83d],.rc-grid[data-v-6b71d83d]{grid-template-columns:1fr}.test-controls[data-v-6b71d83d]{flex-direction:column;align-items:stretch}.test-controls label[data-v-6b71d83d],.test-controls .button[data-v-6b71d83d]{width:100%}}.sensors-page[data-v-da9a1b76],.sensors-page[data-v-da9a1b76] *{box-sizing:border-box}.sensors-page[data-v-da9a1b76]{color:#263445;background:#f5f7f9;min-height:100%}.page-header[data-v-da9a1b76],.card-header[data-v-da9a1b76],.header-actions[data-v-da9a1b76]{justify-content:space-between;align-items:center;gap:14px;display:flex}.page-header[data-v-da9a1b76]{margin-bottom:14px}.page-header h1[data-v-da9a1b76],.data-card h2[data-v-da9a1b76],.axis-groups h3[data-v-da9a1b76],.parameter-groups h3[data-v-da9a1b76]{letter-spacing:0;margin:0}.page-header h1[data-v-da9a1b76]{font-size:23px}.page-header p[data-v-da9a1b76],.card-header p[data-v-da9a1b76]{color:#7d8996;margin:4px 0 0;font-size:12px}.header-actions[data-v-da9a1b76]{justify-content:flex-end}.connection-state[data-v-da9a1b76]{color:#6c7783;align-items:center;gap:7px;font-size:12px;display:inline-flex}.connection-state i[data-v-da9a1b76]{background:#aab2bb;border-radius:50%;width:8px;height:8px}.connection-state.online[data-v-da9a1b76]{color:#218452}.connection-state.online i[data-v-da9a1b76]{background:#22a05b}.button[data-v-da9a1b76],.text-button[data-v-da9a1b76]{color:#526170;cursor:pointer;background:#fff;border:1px solid #cad3dc;border-radius:5px;min-height:34px;padding:0 12px;font-size:12px}.button[data-v-da9a1b76]:disabled{cursor:not-allowed;opacity:.5}.sensor-tabs[data-v-da9a1b76]{background:#ebeff3;border:1px solid #dde3e8;gap:3px;margin-bottom:14px;padding:4px;display:flex;overflow-x:auto}.sensor-tabs button[data-v-da9a1b76]{color:#65717e;cursor:pointer;white-space:nowrap;background:0 0;border:0;min-width:86px;min-height:34px;padding:0 11px}.sensor-tabs button.active[data-v-da9a1b76]{color:#1769c2;background:#fff;box-shadow:0 1px 4px #182c441f}.sensor-content[data-v-da9a1b76]{gap:14px;display:grid}.overview-grid[data-v-da9a1b76],.metric-grid[data-v-da9a1b76]{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;display:grid}.overview-item[data-v-da9a1b76],.metric-card[data-v-da9a1b76],.data-card[data-v-da9a1b76]{background:#fff;border:1px solid #dfe4e9;border-radius:6px}.overview-item[data-v-da9a1b76]{min-height:112px;padding:14px}.overview-item>div[data-v-da9a1b76]{align-items:center;gap:8px;display:flex}.overview-item p[data-v-da9a1b76]{margin:12px 0 5px;font-weight:600}.overview-item small[data-v-da9a1b76],.metric-card small[data-v-da9a1b76],.card-header>span[data-v-da9a1b76]{color:#87929d;font-size:10px}.status-dot[data-v-da9a1b76]{border-radius:50%;width:8px;height:8px}.status-dot.normal[data-v-da9a1b76]{background:#22985a}.status-dot.warning[data-v-da9a1b76]{background:#d58a20}.status-dot.error[data-v-da9a1b76]{background:#cf4650}.status-dot.unknown[data-v-da9a1b76]{background:#a5adb6}.metric-card[data-v-da9a1b76]{flex-direction:column;justify-content:center;min-height:105px;padding:15px;display:flex}.metric-card span[data-v-da9a1b76]{color:#7c8792;font-size:11px}.metric-card strong[data-v-da9a1b76]{letter-spacing:0;margin:8px 0 5px;font-size:19px}.normal[data-v-da9a1b76],.yes[data-v-da9a1b76]{color:#218452}.warning[data-v-da9a1b76]{color:#b87918}.error[data-v-da9a1b76],.no[data-v-da9a1b76]{color:#c74650}.unknown[data-v-da9a1b76],.muted[data-v-da9a1b76]{color:#87919b}.data-card[data-v-da9a1b76]{padding:16px}.data-card h2[data-v-da9a1b76]{font-size:14px}.value-grid[data-v-da9a1b76]{grid-template-columns:repeat(3,minmax(160px,1fr));gap:9px;margin-top:13px;display:grid}.value-grid>div[data-v-da9a1b76],.axis-groups>div[data-v-da9a1b76]{background:#f8fafb;border:1px solid #e7ebef;padding:12px}.value-grid span[data-v-da9a1b76],.value-grid strong[data-v-da9a1b76]{display:block}.value-grid span[data-v-da9a1b76]{color:#7d8995;margin-bottom:7px;font-size:10px}.value-grid strong[data-v-da9a1b76],.latest-position[data-v-da9a1b76]{font-family:Consolas,monospace;font-size:12px}.health-table[data-v-da9a1b76]{border:1px solid #e4e8ec;margin-top:13px}.health-row[data-v-da9a1b76]{border-bottom:1px solid #edf0f2;grid-template-columns:minmax(180px,1fr) 90px 90px 90px;align-items:center;min-height:38px;padding:0 12px;font-size:11px;display:grid}.health-row[data-v-da9a1b76]:last-child{border-bottom:0}.health-row.table-head[data-v-da9a1b76]{color:#76818d;background:#f4f6f8}.empty-state[data-v-da9a1b76],.latest-position[data-v-da9a1b76]{color:#86919c;text-align:center;background:#f7f9fa;margin-top:13px;padding:22px}.text-button[data-v-da9a1b76]{color:#216fc5;min-height:30px}.axis-groups[data-v-da9a1b76]{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px;display:grid}.axis-groups h3[data-v-da9a1b76]{color:#677380;margin-bottom:10px;font-size:11px}.axis-groups p[data-v-da9a1b76]{color:#7b8793;justify-content:space-between;margin:7px 0;font-size:11px;display:flex}.axis-groups strong[data-v-da9a1b76]{color:#2d3b4c;font-family:Consolas,monospace}.info-box[data-v-da9a1b76]{color:#6e6246;background:#fff9e9;border:1px solid #e6d7ab;padding:13px;font-size:11px;line-height:1.65}.parameter-groups[data-v-da9a1b76]{gap:15px;margin-top:14px;display:grid}.parameter-groups h3[data-v-da9a1b76]{color:#546170;margin-bottom:7px;font-size:12px}.parameter-table[data-v-da9a1b76]{border:1px solid #e2e6ea}.parameter-row[data-v-da9a1b76]{border-bottom:1px solid #edf0f2;grid-template-columns:minmax(220px,1fr) 150px;align-items:center;gap:12px;min-height:58px;padding:8px 12px;display:grid}.parameter-row[data-v-da9a1b76]:last-child{border-bottom:0}.parameter-row strong[data-v-da9a1b76],.parameter-row code[data-v-da9a1b76],.parameter-row small[data-v-da9a1b76]{display:block}.parameter-row strong[data-v-da9a1b76]{font-size:11px}.parameter-row code[data-v-da9a1b76]{color:#1f6ebf;margin-top:3px;font-size:10px}.parameter-row small[data-v-da9a1b76]{color:#89939e;margin-top:3px;font-size:9px}.parameter-row>span[data-v-da9a1b76]{text-align:right;font-family:Consolas,monospace;font-size:11px}.notice[data-v-da9a1b76]{z-index:1200;color:#fff;background:#303a46;border-radius:5px;max-width:390px;padding:11px 15px;font-size:12px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1e2a3a38}.notice-enter-active[data-v-da9a1b76],.notice-leave-active[data-v-da9a1b76]{transition:all .18s}.notice-enter-from[data-v-da9a1b76],.notice-leave-to[data-v-da9a1b76]{opacity:0;transform:translateY(8px)}@media (width<=1050px){.overview-grid[data-v-da9a1b76],.metric-grid[data-v-da9a1b76]{grid-template-columns:repeat(2,minmax(150px,1fr))}.value-grid[data-v-da9a1b76]{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media (width<=720px){.sensors-page[data-v-da9a1b76]{padding:14px}.page-header[data-v-da9a1b76],.header-actions[data-v-da9a1b76],.card-header[data-v-da9a1b76]{flex-direction:column;align-items:flex-start}.header-actions[data-v-da9a1b76],.button[data-v-da9a1b76]{width:100%}.overview-grid[data-v-da9a1b76],.metric-grid[data-v-da9a1b76],.value-grid[data-v-da9a1b76],.axis-groups[data-v-da9a1b76]{grid-template-columns:1fr}.health-table[data-v-da9a1b76]{overflow-x:auto}.health-row[data-v-da9a1b76]{min-width:520px}.parameter-row[data-v-da9a1b76]{grid-template-columns:1fr 100px}}.parameters-page[data-v-71edd3b5],.parameters-page[data-v-71edd3b5] *{box-sizing:border-box}.parameters-page[data-v-71edd3b5]{color:#243042;min-height:650px;position:relative}.page-toolbar[data-v-71edd3b5],.title-area[data-v-71edd3b5],.toolbar-actions[data-v-71edd3b5],.summary-strip[data-v-71edd3b5],.filter-bar[data-v-71edd3b5],.sidebar-heading[data-v-71edd3b5],.group-button[data-v-71edd3b5],.parameter-name[data-v-71edd3b5],.row-actions[data-v-71edd3b5],.load-progress>div[data-v-71edd3b5]:first-child{align-items:center;display:flex}.page-toolbar[data-v-71edd3b5]{justify-content:space-between;gap:18px;margin-bottom:14px}.title-area[data-v-71edd3b5]{gap:16px;min-width:0}.title-area h2[data-v-71edd3b5]{letter-spacing:0;margin:0;font-size:20px}.title-area p[data-v-71edd3b5]{color:#8a96a3;margin:4px 0 0;font-size:11px}.connection-badge[data-v-71edd3b5]{color:#7c8794;flex:none;align-items:center;gap:7px;font-size:12px;display:inline-flex}.connection-badge i[data-v-71edd3b5]{background:#aab3bd;border-radius:50%;width:8px;height:8px}.connection-badge.online[data-v-71edd3b5]{color:#258a48}.connection-badge.online i[data-v-71edd3b5]{background:#24a148}.toolbar-actions[data-v-71edd3b5]{flex-wrap:wrap;justify-content:flex-end;gap:8px}.button[data-v-71edd3b5]{cursor:pointer;border:1px solid #cbd4dd;border-radius:5px;min-height:34px;padding:0 13px;font-size:12px}.button.secondary[data-v-71edd3b5]{color:#526071;background:#fff}.button.primary[data-v-71edd3b5]{color:#fff;background:#1f6feb;border-color:#1f6feb}.button[data-v-71edd3b5]:disabled,.text-button[data-v-71edd3b5]:disabled,.icon-action[data-v-71edd3b5]:disabled,.row-save[data-v-71edd3b5]:disabled{opacity:.45;cursor:not-allowed}.hidden-input[data-v-71edd3b5]{display:none}.load-progress[data-v-71edd3b5]{background:#f4f8fd;border:1px solid #cfe0f5;border-radius:5px;margin-bottom:12px;padding:12px 14px}.load-progress>div[data-v-71edd3b5]:first-child{color:#526071;justify-content:space-between;margin-bottom:8px;font-size:12px}.progress-track[data-v-71edd3b5]{background:#dce5ef;border-radius:3px;height:5px;overflow:hidden}.progress-track span[data-v-71edd3b5]{background:#1f6feb;height:100%;transition:width .15s;display:block}.summary-strip[data-v-71edd3b5]{background:#fff;border:1px solid #dfe4ea;border-radius:5px;grid-template-columns:repeat(5,minmax(110px,1fr));margin-bottom:14px;display:grid}.summary-strip>div[data-v-71edd3b5]{border-right:1px solid #edf0f3;min-width:0;padding:12px 15px}.summary-strip>div[data-v-71edd3b5]:last-child{border-right:0}.summary-strip span[data-v-71edd3b5],.summary-strip strong[data-v-71edd3b5]{display:block}.summary-strip span[data-v-71edd3b5]{color:#85919e;margin-bottom:5px;font-size:10px}.summary-strip strong[data-v-71edd3b5]{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.summary-strip strong.changed[data-v-71edd3b5]{color:#c56d00}.parameter-layout[data-v-71edd3b5]{background:#fff;border:1px solid #dfe4ea;border-radius:5px;grid-template-columns:170px minmax(430px,1fr) 230px;min-height:520px;display:grid;overflow:hidden}.group-sidebar[data-v-71edd3b5]{background:#f8fafc;border-right:1px solid #e3e7ec;overflow-y:auto}.sidebar-heading[data-v-71edd3b5]{border-bottom:1px solid #e3e7ec;justify-content:space-between;min-height:46px;padding:0 13px;font-size:12px}.sidebar-heading span[data-v-71edd3b5]{color:#8a96a3}.group-button[data-v-71edd3b5]{color:#5e6b7a;cursor:pointer;text-align:left;background:0 0;border:0;border-left:3px solid #0000;justify-content:space-between;gap:8px;width:100%;min-height:39px;padding:0 13px}.group-button[data-v-71edd3b5]:hover{background:#f0f4f8}.group-button.active[data-v-71edd3b5]{color:#1f6feb;background:#eaf3ff;border-left-color:#1f6feb;font-weight:600}.group-button small[data-v-71edd3b5]{color:#8a96a3;font-size:10px}.parameter-content[data-v-71edd3b5]{min-width:0;overflow:hidden}.filter-bar[data-v-71edd3b5]{border-bottom:1px solid #e3e7ec;gap:10px;min-height:46px;padding:6px 10px}.search-field[data-v-71edd3b5]{background:#fff;border:1px solid #ccd5df;border-radius:4px;flex:1;align-items:center;gap:8px;min-width:180px;max-width:340px;padding:0 10px;display:flex}.search-field span[data-v-71edd3b5]{color:#8a96a3;font-size:11px}.search-field input[data-v-71edd3b5]{color:#263445;background:0 0;border:0;outline:none;width:100%;min-width:0;height:31px;font-size:12px}.filter-result[data-v-71edd3b5]{color:#8a96a3;white-space:nowrap;margin-left:auto;font-size:11px}.text-button[data-v-71edd3b5]{color:#1f6feb;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:5px 7px;font-size:11px}.text-button.danger[data-v-71edd3b5]{color:#b5473f}.parameter-table[data-v-71edd3b5]{height:473px;overflow:auto}.table-header[data-v-71edd3b5],.parameter-row[data-v-71edd3b5]{grid-template-columns:minmax(170px,1.5fr) minmax(100px,.8fr) minmax(120px,1fr) 78px 116px;align-items:center;gap:10px;padding:0 12px;display:grid}.table-header[data-v-71edd3b5]{z-index:2;color:#7f8b98;background:#f7f9fb;border-bottom:1px solid #e3e7ec;min-height:36px;font-size:10px;position:sticky;top:0}.parameter-row[data-v-71edd3b5]{cursor:pointer;border-bottom:1px solid #edf0f3;min-height:58px;transition:background-color .18s,box-shadow .18s,border-color .18s}.parameter-row[data-v-71edd3b5]:hover{background:#fafcff;box-shadow:inset 0 0 0 1px #eaf1ff}.parameter-row.selected[data-v-71edd3b5]{background:#f1f7ff}.parameter-row.modified[data-v-71edd3b5]{box-shadow:inset 3px 0 #e49a27}.parameter-row.writing[data-v-71edd3b5]{background:#f3f8ff}.parameter-name[data-v-71edd3b5]{gap:8px;min-width:0}.parameter-name>div[data-v-71edd3b5]{min-width:0}.parameter-name strong[data-v-71edd3b5],.parameter-name small[data-v-71edd3b5]{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.parameter-name strong[data-v-71edd3b5]{color:#2c394a;font-family:Consolas,monospace;font-size:12px}.parameter-name small[data-v-71edd3b5]{color:#909aa6;margin-top:4px;font-size:9px}.changed-dot[data-v-71edd3b5]{background:#e49a27;border-radius:50%;flex:0 0 7px;width:7px;height:7px}.parameter-row code[data-v-71edd3b5]{color:#3e5269;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace;font-size:11px;overflow:hidden}.value-editor[data-v-71edd3b5]{min-width:0;position:relative}.value-editor input[data-v-71edd3b5]{color:#263445;background:#fff;border:1px solid #ccd5df;border-radius:4px;width:100%;height:31px;padding:0 25px 0 8px;font-family:Consolas,monospace;font-size:11px}.value-editor input[data-v-71edd3b5]:focus{border-color:#1f6feb;outline:2px solid #dbeafe}.row-error[data-v-71edd3b5]{color:#c43d38;font-weight:700;position:absolute;top:7px;right:8px}.type-badge[data-v-71edd3b5]{color:#58697c;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#eef2f6;border-radius:3px;padding:4px 6px;font-family:Consolas,monospace;font-size:9px;overflow:hidden}.row-actions[data-v-71edd3b5]{justify-content:flex-end;gap:5px}.icon-action[data-v-71edd3b5],.row-save[data-v-71edd3b5]{cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:4px;height:29px}.icon-action[data-v-71edd3b5]{color:#526071;width:29px;font-size:15px}.row-save[data-v-71edd3b5]{color:#1f6feb;min-width:67px;padding:0 8px;font-size:10px}.detail-panel[data-v-71edd3b5]{background:#fbfcfd;border-left:1px solid #e3e7ec;min-width:0;padding:15px}.detail-heading span[data-v-71edd3b5],.detail-heading strong[data-v-71edd3b5]{display:block}.detail-heading span[data-v-71edd3b5]{color:#8a96a3;font-size:10px}.detail-heading strong[data-v-71edd3b5]{overflow-wrap:anywhere;margin-top:7px;font-family:Consolas,monospace;font-size:13px}.detail-panel dl[data-v-71edd3b5]{margin:17px 0}.detail-panel dl>div[data-v-71edd3b5]{border-bottom:1px solid #e7ebef;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.detail-panel dt[data-v-71edd3b5]{color:#82909d;font-size:10px}.detail-panel dd[data-v-71edd3b5]{overflow-wrap:anywhere;text-align:right;margin:0;font-family:Consolas,monospace;font-size:10px}.detail-note[data-v-71edd3b5],.detail-error[data-v-71edd3b5]{border-radius:4px;padding:10px;font-size:10px;line-height:1.6}.detail-note[data-v-71edd3b5]{color:#6f654b;background:#fff9e9;border:1px solid #eedba4}.detail-error[data-v-71edd3b5]{color:#a23b35;background:#fff0ef;border:1px solid #efc7c4;margin-bottom:10px}.detail-empty[data-v-71edd3b5]{color:#919ba7;text-align:center;justify-content:center;align-items:center;min-height:300px;font-size:11px;display:flex}.empty-state[data-v-71edd3b5]{color:#8b96a2;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:250px;display:flex}.empty-state strong[data-v-71edd3b5]{color:#637184;font-size:13px}.empty-state span[data-v-71edd3b5]{font-size:11px}.notice[data-v-71edd3b5]{z-index:100;color:#344154;background:#fff;border:1px solid #cbd4dd;border-radius:5px;max-width:min(420px,100vw - 44px);padding:11px 14px;font-size:12px;position:fixed;bottom:70px;right:22px;box-shadow:0 8px 28px #192a3c24}.notice.success[data-v-71edd3b5]{color:#207a3a;background:#f1fbf3;border-color:#b9dfc2}.notice.warning[data-v-71edd3b5]{color:#895d00;background:#fff9e8;border-color:#ecd18d}.notice.error[data-v-71edd3b5]{color:#a33c35;background:#fff1f0;border-color:#ecc0bd}.notice.info[data-v-71edd3b5]{color:#1f5f9f;background:#f1f7fd;border-color:#bfd7ef}.notice-enter-active[data-v-71edd3b5],.notice-leave-active[data-v-71edd3b5]{transition:opacity .2s,transform .2s}.notice-enter-from[data-v-71edd3b5],.notice-leave-to[data-v-71edd3b5]{opacity:0;transform:translateY(7px)}@media (width<=1180px){.parameter-layout[data-v-71edd3b5]{grid-template-columns:155px minmax(420px,1fr)}.detail-panel[data-v-71edd3b5]{display:none}}@media (width<=850px){.page-toolbar[data-v-71edd3b5]{flex-direction:column;align-items:flex-start}.toolbar-actions[data-v-71edd3b5]{justify-content:flex-start;width:100%}.summary-strip[data-v-71edd3b5]{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-strip>div[data-v-71edd3b5]{border-bottom:1px solid #edf0f3}.parameter-layout[data-v-71edd3b5]{grid-template-columns:135px minmax(500px,1fr);overflow-x:auto}}@media (width<=620px){.title-area[data-v-71edd3b5]{flex-direction:column;align-items:flex-start;gap:8px}.summary-strip[data-v-71edd3b5]{grid-template-columns:repeat(2,minmax(0,1fr))}.parameter-layout[data-v-71edd3b5]{display:block;overflow:visible}.group-sidebar[data-v-71edd3b5]{border-bottom:1px solid #e3e7ec;border-right:0;display:flex;overflow-x:auto}.sidebar-heading[data-v-71edd3b5]{display:none}.group-button[data-v-71edd3b5]{border-bottom:3px solid #0000;border-left:0;flex:none;width:auto;min-width:110px}.group-button.active[data-v-71edd3b5]{border-bottom-color:#1f6feb}.filter-bar[data-v-71edd3b5]{flex-wrap:wrap;align-items:stretch}.search-field[data-v-71edd3b5]{flex-basis:100%;max-width:none}.parameter-table[data-v-71edd3b5]{height:500px;overflow:auto}.table-header[data-v-71edd3b5],.parameter-row[data-v-71edd3b5]{min-width:650px}.notice[data-v-71edd3b5]{max-width:calc(100vw - 24px);bottom:58px;right:12px}}.mavlink-page[data-v-75ebbb5f],.mavlink-page[data-v-75ebbb5f] *{box-sizing:border-box}.mavlink-page[data-v-75ebbb5f]{color:#263548;background:#f5f7fa;min-height:100%}.page-header[data-v-75ebbb5f]{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.title-line[data-v-75ebbb5f]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-header h1[data-v-75ebbb5f]{color:#1d2d42;letter-spacing:0;margin:0;font-size:25px;font-weight:700}.page-header p[data-v-75ebbb5f]{color:#76859a;margin:7px 0 0;font-size:13px}.connection-badge[data-v-75ebbb5f]{color:#57677a;background:#edf2f8;border:1px solid #dfe7f1;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:12px;font-weight:600;display:inline-flex}.connection-badge i[data-v-75ebbb5f]{background:#a2afbf;border-radius:50%;width:7px;height:7px}.connection-badge.connected[data-v-75ebbb5f]{color:#168653;background:#eaf8f2;border-color:#cfeee0}.connection-badge.connected i[data-v-75ebbb5f]{background:#20a464}.connection-badge.waiting[data-v-75ebbb5f]{color:#9a681e;background:#fff8e7;border-color:#f1dfae}.connection-badge.waiting i[data-v-75ebbb5f]{background:#d49a35}.header-actions[data-v-75ebbb5f]{gap:8px;display:flex}.button[data-v-75ebbb5f]{cursor:pointer;border:1px solid #0000;border-radius:7px;align-items:center;gap:7px;min-height:36px;padding:0 13px;font-size:13px;display:inline-flex}.button.secondary[data-v-75ebbb5f]{color:#3c6fa7;background:#fff;border-color:#cad9e9}.button.danger[data-v-75ebbb5f]{color:#b44955;background:#fff;border-color:#ecc9ce}.summary-grid[data-v-75ebbb5f]{grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin-bottom:18px;display:grid}.summary-card[data-v-75ebbb5f]{background:#fff;border:1px solid #e1e7ee;border-radius:8px;min-height:105px;padding:15px}.summary-card span[data-v-75ebbb5f],.summary-card small[data-v-75ebbb5f]{display:block}.summary-card span[data-v-75ebbb5f]{color:#7a8796;font-size:12px}.summary-card strong[data-v-75ebbb5f]{color:#30445c;margin:10px 0 5px;font-family:Consolas,monospace;font-size:22px;font-weight:600;display:block}.summary-card small[data-v-75ebbb5f]{color:#a0aab5;font-size:11px}.success[data-v-75ebbb5f]{color:#168653!important}.danger[data-v-75ebbb5f]{color:#c84956!important}.time-value[data-v-75ebbb5f]{font-size:16px!important}.content-tabs[data-v-75ebbb5f]{background:#e9edf2;border-radius:8px;gap:4px;margin-bottom:14px;padding:4px;display:flex}.content-tabs button[data-v-75ebbb5f]{color:#697789;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;min-height:35px;padding:0 15px;font-size:13px;display:inline-flex}.content-tabs button.active[data-v-75ebbb5f]{color:#256ec4;background:#fff;box-shadow:0 2px 6px #294c6c12}.tab-count[data-v-75ebbb5f]{color:#7f8b99;text-align:center;background:#edf1f5;border-radius:10px;min-width:20px;padding:1px 5px;font-size:11px}.content-layout[data-v-75ebbb5f]{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:15px;display:grid}.message-panel[data-v-75ebbb5f],.side-section[data-v-75ebbb5f],.status-panel[data-v-75ebbb5f],.raw-block[data-v-75ebbb5f]{background:#fff;border:1px solid #e1e7ee;border-radius:8px;min-width:0}.toolbar[data-v-75ebbb5f]{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:12px;padding:13px;display:flex}.search-box[data-v-75ebbb5f]{color:#8a96a4;background:#f6f8fa;border:1px solid #e3e8ed;border-radius:6px;flex:1;align-items:center;gap:8px;max-width:360px;padding:0 10px;display:flex}.search-box input[data-v-75ebbb5f]{color:#34465c;background:0 0;border:0;outline:none;width:100%;height:34px;font-size:13px}.toolbar-result[data-v-75ebbb5f]{color:#8793a1;font-size:12px}.message-list[data-v-75ebbb5f]{overflow:hidden}.message-row[data-v-75ebbb5f]{border-bottom:1px solid #edf0f3}.message-row[data-v-75ebbb5f]:last-child{border-bottom:0}.message-main[data-v-75ebbb5f]{color:#30445c;cursor:pointer;text-align:left;background:#fff;border:0;grid-template-columns:22px 45px minmax(150px,1fr) 65px 70px 78px 78px;align-items:center;gap:8px;width:100%;min-height:62px;padding:8px 13px;display:grid}.message-main[data-v-75ebbb5f]:hover{background:#f8fafc}.message-row.expanded .message-main[data-v-75ebbb5f]{background:#f5f9ff}.expand-icon[data-v-75ebbb5f]{color:#8391a0;justify-content:center;align-items:center;font-size:20px;transition:transform .15s;display:inline-flex}.expand-icon.opened[data-v-75ebbb5f]{transform:rotate(90deg)}.message-id[data-v-75ebbb5f],.message-count strong[data-v-75ebbb5f],.message-rate strong[data-v-75ebbb5f],.message-time[data-v-75ebbb5f]{font-family:Consolas,monospace}.message-id[data-v-75ebbb5f]{color:#6e7d8e;font-size:12px}.message-title[data-v-75ebbb5f]{min-width:0}.message-title strong[data-v-75ebbb5f],.message-title small[data-v-75ebbb5f],.message-count strong[data-v-75ebbb5f],.message-count small[data-v-75ebbb5f],.message-rate strong[data-v-75ebbb5f],.message-rate small[data-v-75ebbb5f]{display:block}.message-title strong[data-v-75ebbb5f]{color:#2e5f96;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace;font-size:13px;overflow:hidden}.message-title small[data-v-75ebbb5f]{color:#98a3ae;margin-top:4px;font-size:10px}.message-count[data-v-75ebbb5f],.message-rate[data-v-75ebbb5f],.message-time[data-v-75ebbb5f]{text-align:right}.message-count strong[data-v-75ebbb5f],.message-rate strong[data-v-75ebbb5f]{color:#3c5066;font-size:13px}.message-count small[data-v-75ebbb5f],.message-rate small[data-v-75ebbb5f]{color:#9aa5b1;margin-top:3px;font-size:10px}.message-time[data-v-75ebbb5f]{color:#8995a2;font-size:11px}.crc-badge[data-v-75ebbb5f],.frame-crc[data-v-75ebbb5f]{white-space:nowrap;border-radius:4px;padding:3px 6px;font-family:Consolas,monospace;font-size:10px}.crc-badge[data-v-75ebbb5f]{justify-self:end}.crc-valid[data-v-75ebbb5f]{color:#15814e;background:#eaf7ef}.crc-invalid[data-v-75ebbb5f]{color:#bd3f4c;background:#fff0f1}.crc-unknown[data-v-75ebbb5f]{color:#8a6a2f;background:#fff8e6}.message-details[data-v-75ebbb5f]{background:#f8fafc;border-top:1px solid #e8edf2;padding:13px 16px 16px 65px}.details-header[data-v-75ebbb5f]{color:#7d8997;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:11px;display:flex}.field-grid[data-v-75ebbb5f]{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.field-item[data-v-75ebbb5f]{background:#fff;border:1px solid #e7ebef;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:8px 10px;display:flex}.field-name[data-v-75ebbb5f],.field-value[data-v-75ebbb5f]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.field-name[data-v-75ebbb5f]{color:#6c7b8b;font-size:12px}.field-value[data-v-75ebbb5f]{color:#2d5f97;text-align:right;font-family:Consolas,monospace;font-size:11px}.no-fields[data-v-75ebbb5f]{color:#8a96a3;background:#fff;padding:12px;font-size:12px}.side-panel[data-v-75ebbb5f]{gap:15px;display:grid}.side-section[data-v-75ebbb5f]{overflow:hidden}.section-header[data-v-75ebbb5f],.raw-header[data-v-75ebbb5f]{border-bottom:1px solid #edf0f3;padding:15px}.section-header h2[data-v-75ebbb5f],.raw-header h2[data-v-75ebbb5f]{color:#35485d;margin:0;font-size:15px;font-weight:600}.section-header p[data-v-75ebbb5f],.raw-header p[data-v-75ebbb5f]{color:#8b96a3;margin:5px 0 0;font-size:11px}.frequency-list[data-v-75ebbb5f]{padding:6px 14px 10px}.frequency-item[data-v-75ebbb5f]{border-bottom:1px solid #f0f2f4;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px 0;display:grid}.frequency-name strong[data-v-75ebbb5f],.frequency-name small[data-v-75ebbb5f]{display:block}.frequency-name strong[data-v-75ebbb5f]{color:#4b5d70;font-size:12px}.frequency-name small[data-v-75ebbb5f]{color:#9ba5b0;margin-top:4px;font-family:Consolas,monospace;font-size:10px}.frequency-control[data-v-75ebbb5f]{align-items:center;gap:5px;display:flex}.frequency-control input[data-v-75ebbb5f]{color:#36516e;text-align:right;background:#f8fafc;border:1px solid #dbe2e9;border-radius:5px;width:52px;height:29px;font-family:Consolas,monospace}.frequency-control span[data-v-75ebbb5f]{color:#8a96a3;font-size:11px}.apply-button[data-v-75ebbb5f]{color:#2876c8;cursor:pointer;background:#edf5ff;border:1px solid #cde1f6;border-radius:5px;width:29px;height:29px;padding:0}.apply-button[data-v-75ebbb5f]:disabled,.frequency-control input[data-v-75ebbb5f]:disabled{cursor:not-allowed;opacity:.55}.frequency-message[data-v-75ebbb5f]{grid-column:1/-1;font-size:10px}.frequency-message.error[data-v-75ebbb5f]{color:#c84b57}.statistics-list[data-v-75ebbb5f]{margin:0;padding:7px 15px 12px}.statistics-list>div[data-v-75ebbb5f]{border-bottom:1px solid #f0f2f4;justify-content:space-between;align-items:center;padding:9px 0;display:flex}.statistics-list dt[data-v-75ebbb5f]{color:#788696;font-size:12px}.statistics-list dd[data-v-75ebbb5f]{color:#354c63;margin:0;font-family:Consolas,monospace;font-size:12px}.empty-state[data-v-75ebbb5f]{color:#8b97a4;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:270px;padding:30px;display:flex}.empty-state.compact[data-v-75ebbb5f]{min-height:220px}.empty-state strong[data-v-75ebbb5f]{color:#667688;font-size:14px}.empty-state span[data-v-75ebbb5f]{font-size:12px}.empty-icon[data-v-75ebbb5f]{color:#7da9d5;background:#edf5fd;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:24px;display:flex}.status-panel[data-v-75ebbb5f]{overflow:hidden}.status-row[data-v-75ebbb5f]{border-bottom:1px solid #edf0f3;grid-template-columns:54px 78px 90px minmax(0,1fr);align-items:center;gap:12px;min-height:52px;padding:8px 15px;display:grid}.status-level[data-v-75ebbb5f]{text-align:center;border-radius:4px;padding:3px 6px;font-size:10px}.status-info .status-level[data-v-75ebbb5f]{color:#3777ad;background:#edf6ff}.status-warning .status-level[data-v-75ebbb5f]{color:#a87524;background:#fff7e5}.status-error .status-level[data-v-75ebbb5f]{color:#bd4451;background:#fff0f1}.status-time[data-v-75ebbb5f],.status-source[data-v-75ebbb5f]{color:#8995a2;font-family:Consolas,monospace;font-size:11px}.status-content[data-v-75ebbb5f]{color:#495c70;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.diagnostic-note[data-v-75ebbb5f]{color:#6f5828;background:#fff9e9;border:1px solid #ecdfb9;border-radius:7px;align-items:flex-start;gap:12px;margin-bottom:14px;padding:12px 14px;font-size:12px;line-height:1.6;display:flex}.diagnostic-note strong[data-v-75ebbb5f]{color:#946d1e;flex:none}.raw-debug-grid[data-v-75ebbb5f]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;display:grid}.raw-block[data-v-75ebbb5f]{overflow:hidden}.raw-list[data-v-75ebbb5f],.frame-list[data-v-75ebbb5f]{max-height:650px;overflow:auto}.raw-item[data-v-75ebbb5f],.frame-item[data-v-75ebbb5f]{border-bottom:1px solid #edf0f3;padding:12px 14px}.raw-meta[data-v-75ebbb5f],.frame-topline[data-v-75ebbb5f]{align-items:center;gap:8px;margin-bottom:8px;display:flex}.raw-tag[data-v-75ebbb5f]{border-radius:4px;padding:3px 6px;font-size:10px}.raw-tag.chunk[data-v-75ebbb5f]{color:#3973a5;background:#edf6ff}.raw-time[data-v-75ebbb5f],.raw-length[data-v-75ebbb5f],.frame-source[data-v-75ebbb5f]{color:#8a96a3;font-family:Consolas,monospace;font-size:10px}.raw-length[data-v-75ebbb5f]{margin-left:auto}.raw-hex[data-v-75ebbb5f],.frame-payload code[data-v-75ebbb5f]{overflow-wrap:anywhere;color:#38536e;white-space:pre-wrap;font-family:Consolas,monospace;font-size:11px;line-height:1.6;display:block}.raw-ascii[data-v-75ebbb5f]{color:#8b96a2;text-overflow:ellipsis;white-space:nowrap;margin-top:7px;font-family:Consolas,monospace;font-size:10px;overflow:hidden}.frame-id[data-v-75ebbb5f]{color:#6e7d8e;min-width:34px;font-family:Consolas,monospace;font-size:12px}.frame-name[data-v-75ebbb5f]{color:#2e5f96;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace;font-size:12px;overflow:hidden}.frame-crc[data-v-75ebbb5f]{margin-left:auto}.frame-source[data-v-75ebbb5f]{margin-bottom:8px}.frame-payload[data-v-75ebbb5f]{border-top:1px dashed #e1e7ee;margin-top:9px;padding-top:8px}.frame-payload>span[data-v-75ebbb5f]{color:#8a96a3;margin-bottom:5px;font-size:10px;display:block}@media (width<=1280px){.summary-grid[data-v-75ebbb5f]{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (width<=1100px){.content-layout[data-v-75ebbb5f],.raw-debug-grid[data-v-75ebbb5f]{grid-template-columns:1fr}.side-panel[data-v-75ebbb5f]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.message-main[data-v-75ebbb5f]{grid-template-columns:22px 40px minmax(120px,1fr) 58px 60px}.message-time[data-v-75ebbb5f],.crc-badge[data-v-75ebbb5f]{display:none}.field-grid[data-v-75ebbb5f]{grid-template-columns:1fr}.message-details[data-v-75ebbb5f]{padding-left:20px}}@media (width<=620px){.mavlink-page[data-v-75ebbb5f]{padding:14px}.page-header[data-v-75ebbb5f]{flex-direction:column}.header-actions[data-v-75ebbb5f]{width:100%}.header-actions .button[data-v-75ebbb5f]{flex:1;justify-content:center}.summary-grid[data-v-75ebbb5f],.side-panel[data-v-75ebbb5f]{grid-template-columns:1fr}.content-tabs[data-v-75ebbb5f]{overflow-x:auto}.content-tabs button[data-v-75ebbb5f]{flex:none}.diagnostic-note[data-v-75ebbb5f]{flex-direction:column}.message-main[data-v-75ebbb5f]{grid-template-columns:20px 35px minmax(100px,1fr) 54px}.message-rate[data-v-75ebbb5f]{display:none}.status-row[data-v-75ebbb5f]{grid-template-columns:50px 70px minmax(0,1fr);gap:7px}.status-source[data-v-75ebbb5f]{display:none}}.logs-page[data-v-a1c12a28],.logs-page[data-v-a1c12a28] *{box-sizing:border-box}.logs-page[data-v-a1c12a28]{--blue:#2878d8;--border:#e1e6ec;--text:#26313e;--muted:#778290;min-height:100%;color:var(--text);background:#f5f7f9}button[data-v-a1c12a28],input[data-v-a1c12a28],select[data-v-a1c12a28]{font:inherit}button[data-v-a1c12a28]{cursor:pointer}button[data-v-a1c12a28]:disabled{cursor:not-allowed;opacity:.48}.page-header[data-v-a1c12a28],.record-toolbar[data-v-a1c12a28],.file-toolbar[data-v-a1c12a28],.analysis-header[data-v-a1c12a28],.analysis-summary[data-v-a1c12a28]{justify-content:space-between;align-items:center;gap:16px;display:flex}.page-header[data-v-a1c12a28]{margin-bottom:16px}.page-header h1[data-v-a1c12a28],.analysis-header h2[data-v-a1c12a28]{margin:0}.page-header h1[data-v-a1c12a28]{font-size:24px}.page-header p[data-v-a1c12a28],.analysis-header p[data-v-a1c12a28]{color:var(--muted);margin:5px 0 0;font-size:13px}.connection-state[data-v-a1c12a28]{color:#188351;background:#eef9f3;border:1px solid #bfe5d0;border-radius:6px;align-items:center;gap:7px;padding:7px 11px;font-size:12px;display:flex}.connection-state.offline[data-v-a1c12a28]{color:#bd4650;background:#fff2f3;border-color:#efc5c8}.connection-state.waiting[data-v-a1c12a28]{color:#9c6a14;background:#fff8e8;border-color:#ead39c}.state-dot[data-v-a1c12a28],.record-dot[data-v-a1c12a28]{background:currentColor;border-radius:50%;width:8px;height:8px}.log-tabs[data-v-a1c12a28]{border-bottom:1px solid var(--border);gap:3px;margin-bottom:14px;display:flex}.log-tabs button[data-v-a1c12a28]{color:#66717e;background:0 0;border:0;border-bottom:2px solid #0000;min-width:100px;padding:10px 15px}.log-tabs button.active[data-v-a1c12a28]{border-bottom-color:var(--blue);color:var(--blue);font-weight:600}.panel[data-v-a1c12a28]{border:1px solid var(--border);background:#fff;border-radius:8px;min-height:570px;overflow:hidden}.record-toolbar[data-v-a1c12a28],.file-toolbar[data-v-a1c12a28],.analysis-header[data-v-a1c12a28]{border-bottom:1px solid var(--border);padding:14px 16px}.record-status[data-v-a1c12a28]{align-items:center;gap:10px;display:flex}.record-dot[data-v-a1c12a28]{color:#9ba3ad}.record-dot.active[data-v-a1c12a28]{color:#d64c55;box-shadow:0 0 0 4px #d64c551f}.record-status strong[data-v-a1c12a28],.record-status small[data-v-a1c12a28]{display:block}.record-status small[data-v-a1c12a28]{color:var(--muted);margin-top:4px;font-size:11px}.toolbar-actions[data-v-a1c12a28],.file-actions[data-v-a1c12a28],.row-actions[data-v-a1c12a28]{align-items:center;gap:8px;display:flex}.primary-button[data-v-a1c12a28],.secondary-button[data-v-a1c12a28],.stop-button[data-v-a1c12a28],.danger-button[data-v-a1c12a28]{border-radius:5px;min-height:36px;padding:0 13px}.primary-button[data-v-a1c12a28]{border:1px solid var(--blue);color:#fff;background:var(--blue)}.secondary-button[data-v-a1c12a28]{color:#566271;background:#fff;border:1px solid #d8dee5}.stop-button[data-v-a1c12a28]{color:#fff;background:#d64c55;border:1px solid #d64c55}.danger-button[data-v-a1c12a28]{color:#c84952;background:#fff;border:1px solid #edc8cb}.hidden-input[data-v-a1c12a28]{display:none}.live-events[data-v-a1c12a28]{border:1px solid var(--border);border-radius:7px;margin:14px 16px;overflow:hidden}.live-events>header[data-v-a1c12a28],.analysis-card>header[data-v-a1c12a28]{border-bottom:1px solid var(--border);background:#fafbfd;justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.live-events header strong[data-v-a1c12a28],.live-events header span[data-v-a1c12a28]{display:block}.live-events header span[data-v-a1c12a28]{color:var(--muted);margin-top:3px;font-size:11px}.live-events header b[data-v-a1c12a28]{color:var(--muted);font-family:Consolas,monospace;font-size:12px}.event-scroll[data-v-a1c12a28]{max-height:170px;overflow-y:auto}.live-event-row[data-v-a1c12a28],.analysis-events>div[data-v-a1c12a28]{border-bottom:1px solid #eef1f4;grid-template-columns:48px 76px minmax(0,1fr);align-items:center;gap:8px;min-height:34px;padding:5px 13px;font-size:12px;display:grid}.empty-events[data-v-a1c12a28],.card-empty[data-v-a1c12a28]{color:var(--muted);padding:17px;font-size:12px}.level[data-v-a1c12a28]{font-size:11px;font-weight:600}.level.info[data-v-a1c12a28]{color:#2777d1}.level.warning[data-v-a1c12a28]{color:#b77717}.level.error[data-v-a1c12a28]{color:#c6444d}time[data-v-a1c12a28]{color:#87919e;font-family:Consolas,monospace}.search-box[data-v-a1c12a28]{border:1px solid var(--border);width:310px;height:36px;color:var(--muted);border-radius:5px;align-items:center;gap:9px;padding:0 11px;display:flex}.search-box input[data-v-a1c12a28]{border:0;outline:0;width:100%;min-width:0}.file-actions>span[data-v-a1c12a28]{color:var(--muted);font-size:12px}.selection-row[data-v-a1c12a28]{border-bottom:1px solid var(--border);min-height:40px;color:var(--muted);background:#fafbfd;justify-content:space-between;align-items:center;padding:0 16px;font-size:12px;display:flex}.selection-row label[data-v-a1c12a28]{align-items:center;gap:7px;display:flex}.selection-row button[data-v-a1c12a28]{color:var(--blue);background:0 0;border:0}.empty-state[data-v-a1c12a28]{min-height:330px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state strong[data-v-a1c12a28]{color:#46515e}.empty-state p[data-v-a1c12a28]{text-align:center;max-width:530px;margin:8px 0 15px;font-size:13px;line-height:1.7}.table-wrapper[data-v-a1c12a28]{overflow-x:auto}.log-table[data-v-a1c12a28]{border-collapse:collapse;width:100%;min-width:1050px}.log-table th[data-v-a1c12a28],.log-table td[data-v-a1c12a28]{border-bottom:1px solid var(--border);text-align:left;padding:12px 13px;font-size:12px}.log-table th[data-v-a1c12a28]{color:#687484;background:#f8fafc}.log-table tr.selected[data-v-a1c12a28],.log-table tbody tr[data-v-a1c12a28]:hover{background:#f3f8fe}.file-name[data-v-a1c12a28]{color:#2b5f9d;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:260px;font-weight:600;overflow:hidden}.format-badge[data-v-a1c12a28]{color:#496987;background:#eaf2fa;border-radius:4px;padding:3px 7px;font-weight:600}.result[data-v-a1c12a28]{font-weight:600}.result.normal[data-v-a1c12a28]{color:#218452}.result.warning[data-v-a1c12a28]{color:#b77717}.result.error[data-v-a1c12a28]{color:#c6444d}.result.unknown[data-v-a1c12a28]{color:#7d8792}.row-actions button[data-v-a1c12a28],.analysis-card header button[data-v-a1c12a28]{color:var(--blue);background:0 0;border:0;padding:3px 5px}.row-actions .delete[data-v-a1c12a28]{color:#c84952}.analysis-header select[data-v-a1c12a28]{border:1px solid var(--border);background:#fff;border-radius:5px;width:300px;height:36px;padding:0 9px}.analysis-empty[data-v-a1c12a28]{min-height:480px}.analysis-summary[data-v-a1c12a28]{background:#f7faff;border:1px solid #d9e6f5;border-radius:7px;margin:16px;padding:15px}.analysis-summary>div[data-v-a1c12a28]{min-width:0}.analysis-summary small[data-v-a1c12a28],.analysis-summary strong[data-v-a1c12a28],.analysis-summary span[data-v-a1c12a28]{display:block}.analysis-summary small[data-v-a1c12a28],.analysis-summary span[data-v-a1c12a28]{color:var(--muted);font-size:11px}.analysis-summary strong[data-v-a1c12a28]{margin:5px 0}.metric-grid[data-v-a1c12a28]{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin:16px;display:grid}.metric-grid article[data-v-a1c12a28]{border:1px solid var(--border);border-radius:7px;min-height:86px;padding:14px}.metric-grid small[data-v-a1c12a28]{color:var(--muted);margin-bottom:9px;display:block}.metric-grid strong[data-v-a1c12a28]{font-size:17px}.analysis-columns[data-v-a1c12a28]{grid-template-columns:.8fr 1.2fr;gap:14px;margin:16px;display:grid}.analysis-card[data-v-a1c12a28]{border:1px solid var(--border);border-radius:7px;overflow:hidden}.analysis-card h3[data-v-a1c12a28],.analysis-card p[data-v-a1c12a28]{margin:0}.analysis-card h3[data-v-a1c12a28]{font-size:14px}.analysis-card header p[data-v-a1c12a28]{color:var(--muted);margin-top:4px;font-size:11px}.message-list[data-v-a1c12a28],.analysis-events[data-v-a1c12a28]{max-height:390px;overflow-y:auto}.message-list>div[data-v-a1c12a28]{border-bottom:1px solid #eef1f4;grid-template-columns:minmax(0,1fr) 70px 70px;align-items:center;gap:8px;min-height:38px;padding:0 13px;font-size:12px;display:grid}.message-list small[data-v-a1c12a28]{color:var(--muted)}.message-list strong[data-v-a1c12a28]{text-align:right;font-family:Consolas,monospace}.analysis-events p[data-v-a1c12a28]{overflow-wrap:anywhere;margin:0}.notification[data-v-a1c12a28]{z-index:1200;color:#fff;background:#303a46;border-radius:6px;max-width:390px;padding:11px 15px;font-size:13px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1e2a3a38}.notice-enter-active[data-v-a1c12a28],.notice-leave-active[data-v-a1c12a28]{transition:all .18s}.notice-enter-from[data-v-a1c12a28],.notice-leave-to[data-v-a1c12a28]{opacity:0;transform:translateY(8px)}@media (width<=1100px){.metric-grid[data-v-a1c12a28]{grid-template-columns:repeat(3,minmax(120px,1fr))}.analysis-columns[data-v-a1c12a28]{grid-template-columns:1fr}}@media (width<=760px){.logs-page[data-v-a1c12a28]{padding:14px}.page-header[data-v-a1c12a28],.record-toolbar[data-v-a1c12a28],.file-toolbar[data-v-a1c12a28],.analysis-header[data-v-a1c12a28],.analysis-summary[data-v-a1c12a28]{flex-direction:column;align-items:stretch}.toolbar-actions[data-v-a1c12a28],.file-actions[data-v-a1c12a28]{flex-wrap:wrap}.search-box[data-v-a1c12a28],.analysis-header select[data-v-a1c12a28]{width:100%}.metric-grid[data-v-a1c12a28]{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media (width<=480px){.metric-grid[data-v-a1c12a28]{grid-template-columns:1fr}.live-event-row[data-v-a1c12a28],.analysis-events>div[data-v-a1c12a28]{grid-template-columns:44px 68px minmax(0,1fr)}}.waveform-page[data-v-b3ca7583]{box-sizing:border-box;color:#252a31;width:100%;min-width:0}.page-header[data-v-b3ca7583]{justify-content:space-between;align-items:flex-start;gap:20px;min-height:54px;margin-bottom:16px;display:flex}.page-header h2[data-v-b3ca7583]{color:#252a31;letter-spacing:0;margin:0;font-size:20px;font-weight:650}.page-header p[data-v-b3ca7583]{color:#8a929c;margin:6px 0 0;font-size:12px}.connection-status[data-v-b3ca7583]{color:#68717c;white-space:nowrap;background:#fff;border:1px solid #dfe3e8;border-radius:5px;align-items:center;gap:7px;min-height:30px;padding:0 10px;font-size:12px;display:inline-flex}.status-dot[data-v-b3ca7583]{background:#a2a9b1;border-radius:50%;width:8px;height:8px}.connection-status.connected[data-v-b3ca7583]{color:#297c48;background:#f3fbf6;border-color:#b8dfc6}.connection-status.connected .status-dot[data-v-b3ca7583]{background:#35a65d}.connection-status.waiting[data-v-b3ca7583]{color:#956619;background:#fffaf0;border-color:#ead4a7}.connection-status.waiting .status-dot[data-v-b3ca7583]{background:#d69a2c}.waveform-layout[data-v-b3ca7583]{grid-template-columns:205px minmax(0,1fr);align-items:start;gap:14px;min-width:0;display:grid}.data-sidebar[data-v-b3ca7583]{background:#fff;border:1px solid #e0e4e9;border-radius:7px;min-width:0;max-height:620px;overflow:auto}.sidebar-header[data-v-b3ca7583]{z-index:2;color:#4e5661;background:#fff;border-bottom:1px solid #e7eaee;justify-content:space-between;align-items:center;height:38px;padding:0 12px;font-size:12px;font-weight:600;display:flex;position:sticky;top:0}.sidebar-header strong[data-v-b3ca7583]{color:#2878d8;text-align:center;background:#edf5ff;border-radius:4px;min-width:22px;padding:2px 5px}.channel-group[data-v-b3ca7583]{border-bottom:1px solid #edf0f3}.channel-group[data-v-b3ca7583]:last-child{border-bottom:0}.group-header[data-v-b3ca7583]{color:#505862;cursor:pointer;text-align:left;background:#fff;border:0;align-items:center;gap:7px;width:100%;height:34px;padding:0 10px;font-size:12px;font-weight:600;display:flex}.group-header[data-v-b3ca7583]:hover{background:#f7f8fa}.group-arrow[data-v-b3ca7583]{color:#77808b;font-size:9px;transition:transform .15s}.group-arrow.expanded[data-v-b3ca7583]{transform:rotate(90deg)}.channel-list[data-v-b3ca7583]{padding:1px 8px 7px 22px}.channel-row[data-v-b3ca7583]{color:#747c86;cursor:pointer;grid-template-columns:15px 10px minmax(0,1fr) auto;align-items:center;gap:6px;height:28px;font-size:12px;display:grid}.channel-row[data-v-b3ca7583]:hover{color:#252a31}.channel-row input[data-v-b3ca7583]{accent-color:#2878d8;width:13px;height:13px;margin:0}.channel-color[data-v-b3ca7583]{border-radius:2px;width:9px;height:9px}.channel-name[data-v-b3ca7583]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.channel-value[data-v-b3ca7583]{text-align:right;white-space:nowrap;min-width:46px;font-family:Consolas,monospace}.waveform-main[data-v-b3ca7583]{flex-direction:column;min-width:0;min-height:0;display:flex}.chart-toolbar[data-v-b3ca7583]{flex-wrap:wrap;align-items:center;gap:8px;min-height:42px;margin-bottom:10px;display:flex}.toolbar-group[data-v-b3ca7583]{display:inline-flex}.segmented-control[data-v-b3ca7583]{background:#fff;border:1px solid #e4e7eb;border-radius:6px;padding:2px}.segmented-control button[data-v-b3ca7583]{color:#737b86;cursor:pointer;background:0 0;border:0;border-radius:4px;height:28px;padding:0 10px;font-size:12px}.segmented-control button[data-v-b3ca7583]:hover{color:#2878d8}.segmented-control button.active[data-v-b3ca7583]{color:#fff;background:#2878d8}.action-button[data-v-b3ca7583]{color:#626b76;cursor:pointer;background:#fff;border:1px solid #dfe3e8;border-radius:5px;height:32px;padding:0 11px;font-size:12px}.action-button[data-v-b3ca7583]:hover{color:#2878d8;border-color:#9dbde2}.action-button.active[data-v-b3ca7583]{color:#956619;background:#fff8e8;border-color:#e1b45c}.toolbar-divider[data-v-b3ca7583]{background:#dfe3e8;width:1px;height:22px;margin:0 3px}.sample-hint[data-v-b3ca7583]{color:#9aa1aa;font-size:11px}.toolbar-summary[data-v-b3ca7583]{color:#555d68;white-space:nowrap;margin-left:auto;font-family:Consolas,monospace;font-size:12px}.chart-container[data-v-b3ca7583]{box-sizing:border-box;contain:size layout paint;background:#fff;border:1px solid #e0e4e9;border-radius:7px;flex:none;width:100%;min-width:0;height:520px;min-height:0;position:relative;overflow:hidden}.chart-container canvas[data-v-b3ca7583]{width:100%;height:100%;display:block;position:absolute;inset:0}.chart-container.paused canvas[data-v-b3ca7583]{opacity:.78}.empty-state[data-v-b3ca7583]{z-index:2;color:#9299a3;pointer-events:none;background:#ffffffc7;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex;position:absolute;inset:0}.empty-state strong[data-v-b3ca7583]{color:#5d6570;font-size:14px}.empty-state span[data-v-b3ca7583]{font-size:12px}.paused-label[data-v-b3ca7583]{z-index:3;color:#9b6513;background:#fff8e8;border:1px solid #e7b75f;border-radius:4px;padding:5px 9px;font-size:12px;position:absolute;top:14px;right:14px}.chart-legend[data-v-b3ca7583]{flex-wrap:wrap;align-items:center;gap:16px;min-height:38px;padding:8px 2px 0;font-size:12px;display:flex}.legend-item[data-v-b3ca7583]{color:#737b85;align-items:center;gap:5px;display:flex}.legend-dot[data-v-b3ca7583]{border-radius:50%;width:8px;height:8px}.legend-item strong[data-v-b3ca7583]{color:#4c545e;font-family:Consolas,monospace;font-weight:600}@media (width<=920px){.waveform-page[data-v-b3ca7583]{padding:14px}.waveform-layout[data-v-b3ca7583]{grid-template-columns:170px minmax(0,1fr);gap:10px}.chart-toolbar[data-v-b3ca7583]{align-items:flex-start}.toolbar-summary[data-v-b3ca7583]{text-align:right;width:100%;margin-left:0}.sample-hint[data-v-b3ca7583]{display:none}}@media (width<=680px){.page-header[data-v-b3ca7583]{align-items:center;min-height:40px}.page-header p[data-v-b3ca7583]{display:none}.waveform-layout[data-v-b3ca7583]{flex-direction:column;display:flex}.data-sidebar[data-v-b3ca7583]{width:100%;max-height:280px}.waveform-main[data-v-b3ca7583]{width:100%}.chart-container[data-v-b3ca7583]{height:380px}.connection-status[data-v-b3ca7583]{text-overflow:ellipsis;max-width:170px;overflow:hidden}}.firmware-page[data-v-af592019],.firmware-page[data-v-af592019] *{box-sizing:border-box}.firmware-page[data-v-af592019]{color:#262c35;background:#f5f6f8;min-height:100%;font-family:Inter,Microsoft YaHei,Arial,sans-serif;position:relative}button[data-v-af592019],select[data-v-af592019]{font:inherit}button[data-v-af592019]{cursor:pointer}button[data-v-af592019]:disabled,select[data-v-af592019]:disabled{cursor:not-allowed;opacity:.55}.page-header[data-v-af592019]{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.page-header h1[data-v-af592019]{color:#1d2d42;letter-spacing:0;margin:0;font-size:25px;font-weight:700}.page-header p[data-v-af592019],.section-copy p[data-v-af592019]{color:#76859a;margin:6px 0 0;font-size:13px}.connection-state[data-v-af592019]{color:#57677a;background:#edf2f8;border:1px solid #dfe7f1;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:12px;font-weight:600;display:inline-flex}.state-dot[data-v-af592019]{background:#a2afbf;border-radius:50%;flex:none;width:8px;height:8px}.connection-state.online .state-dot[data-v-af592019],.dfu-device.detected .state-dot[data-v-af592019]{background:#20a464;box-shadow:0 0 0 3px #20a46426}.upgrade-tabs[data-v-af592019]{background:#edf1f5;border:1px solid #e4e9f0;border-radius:10px;align-items:center;gap:4px;margin-bottom:22px;padding:4px;display:flex}.upgrade-tabs button[data-v-af592019]{color:#68717d;background:0 0;border:0;border-radius:7px;min-width:94px;padding:9px 14px;font-weight:600}.upgrade-tabs button.active[data-v-af592019]{color:#246fce;background:#fff;box-shadow:0 2px 6px #19395a1c}.online-layout[data-v-af592019]{grid-template-columns:minmax(520px,780px) 330px;align-items:start;gap:20px;display:grid}.vehicle-section[data-v-af592019],.version-section[data-v-af592019],.local-section[data-v-af592019],.dfu-section[data-v-af592019],.progress-section[data-v-af592019]{background:#fff;border:1px solid #dfe3e8;border-radius:8px}.vehicle-section[data-v-af592019],.version-section[data-v-af592019]{padding:18px}.vehicle-section h2[data-v-af592019],.version-section h2[data-v-af592019],.local-section h2[data-v-af592019],.dfu-section h2[data-v-af592019]{letter-spacing:0;border-bottom:1px solid #e6e9ed;margin:0 0 14px;padding-bottom:13px;font-size:15px}.vehicle-grid[data-v-af592019]{grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;display:grid}.vehicle-item[data-v-af592019]{color:#29313b;text-align:center;background:#fff;border:1px solid #e1e5ea;border-radius:7px;min-height:150px;padding:16px 10px 13px;position:relative}.vehicle-item[data-v-af592019]:hover{background:#f8fbff;border-color:#9cbbea}.vehicle-item.selected[data-v-af592019]{background:#f5f9ff;border-color:#2f75df;box-shadow:inset 0 0 0 1px #2f75df}.vehicle-icon[data-v-af592019]{color:#137bb5;justify-content:center;align-items:center;height:66px;font-size:52px;line-height:1;display:flex}.vehicle-item strong[data-v-af592019]{margin-top:7px;font-size:14px;display:block}.vehicle-item small[data-v-af592019]{color:#9299a3;margin-top:5px;font-size:11px;display:block}.check-mark[data-v-af592019]{color:#fff;background:#2f75df;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;display:grid;position:absolute;top:8px;right:8px}.info-row[data-v-af592019],.firmware-detail>div[data-v-af592019]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:13px;display:flex}.info-row span[data-v-af592019],.firmware-detail span[data-v-af592019]{color:#79828d}.info-row strong[data-v-af592019]{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.field-label[data-v-af592019]{color:#59626e;margin:16px 0 7px;font-size:12px;font-weight:600;display:block}.channel-control[data-v-af592019]{background:#f3f5f7;border:1px solid #dfe3e8;border-radius:6px;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;display:grid}.channel-control button[data-v-af592019]{color:#6e7680;background:0 0;border:0;border-radius:4px;padding:7px 4px;font-size:12px}.channel-control button.active[data-v-af592019]{color:#235da9;background:#fff;font-weight:600;box-shadow:0 1px 3px #1e2a3c1f}.version-section select[data-v-af592019]{color:#343b44;background:#fff;border:1px solid #d9dee5;border-radius:6px;width:100%;height:38px;padding:0 10px}.firmware-detail[data-v-af592019]{border-top:1px solid #e7eaee;margin-top:15px;padding-top:14px;font-size:12px}.firmware-detail h3[data-v-af592019]{margin:14px 0 7px;font-size:12px}.firmware-detail ul[data-v-af592019]{color:#69727d;margin:0;padding-left:18px;line-height:1.8}.warning-box[data-v-af592019],.dialog-warning[data-v-af592019]{color:#875b12;background:#fff9eb;border:1px solid #efcf8a;border-radius:6px;margin-top:14px;padding:10px 12px;font-size:12px;line-height:1.6}.primary-button[data-v-af592019],.secondary-button[data-v-af592019],.danger-button[data-v-af592019],.file-select-button[data-v-af592019]{border-radius:6px;min-height:38px;padding:0 16px;font-weight:600}.primary-button[data-v-af592019]{color:#fff;background:#2f75df;border:1px solid #2868c7}.primary-button[data-v-af592019]:hover:not(:disabled){background:#2868c7}.secondary-button[data-v-af592019],.file-select-button[data-v-af592019]{color:#4d5661;background:#fff;border:1px solid #d2d8df}.danger-button[data-v-af592019]{color:#fff;background:#d65353;border:1px solid #ca4b4b}.full-button[data-v-af592019]{width:100%;margin-top:18px}.local-section[data-v-af592019],.dfu-section[data-v-af592019]{max-width:920px;padding:20px}.hidden-input[data-v-af592019]{display:none}.file-drop[data-v-af592019]{color:#4f5965;background:#fafbfd;border:1px dashed #aeb9c7;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:9px;width:100%;min-height:190px;margin:20px 0;display:flex}.file-drop[data-v-af592019]:hover:not(:disabled){background:#f5f9ff;border-color:#2f75df}.file-drop span[data-v-af592019]:last-child{color:#89929d;font-size:12px}.upload-symbol[data-v-af592019]{color:#2f75df;background:#eaf2ff;border-radius:50%;place-items:center;width:46px;height:46px;font-size:25px;display:grid}.device-summary[data-v-af592019]{background:#e0e4e9;border:1px solid #e0e4e9;border-radius:7px;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.device-summary div[data-v-af592019]{background:#fff;padding:14px}.device-summary span[data-v-af592019],.device-summary strong[data-v-af592019]{display:block}.device-summary span[data-v-af592019]{color:#858d97;margin-bottom:5px;font-size:11px}.device-summary strong[data-v-af592019]{font-size:13px}.dfu-steps[data-v-af592019]{grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0;display:grid}.step-item[data-v-af592019]{background:#f8fafc;border-left:2px solid #b9c9de;min-height:120px;padding:16px 14px 14px 52px;position:relative}.step-item>span[data-v-af592019]{color:#fff;background:#587aa7;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;display:grid;position:absolute;top:15px;left:14px}.step-item strong[data-v-af592019]{font-size:13px}.step-item p[data-v-af592019]{color:#7a838e;margin:8px 0 0;font-size:12px;line-height:1.6}.dfu-device[data-v-af592019]{border:1px solid #dfe3e8;border-radius:7px;justify-content:space-between;align-items:center;gap:16px;min-height:62px;margin-bottom:14px;padding:12px 14px;display:flex}.dfu-device>div[data-v-af592019]{align-items:center;gap:9px;display:flex}.file-select-button[data-v-af592019]{margin-right:8px}.progress-section[data-v-af592019]{max-width:1130px;margin-top:20px;padding:17px 18px}.progress-header[data-v-af592019]{justify-content:space-between;align-items:center;gap:20px;display:flex}.progress-header strong[data-v-af592019],.progress-header span[data-v-af592019]{display:block}.progress-header span[data-v-af592019]{color:#7c8590;margin-top:5px;font-size:12px}.progress-header b[data-v-af592019]{color:#2f75df;font-family:Consolas,monospace;font-size:17px}.progress-track[data-v-af592019]{background:#e8ebef;border-radius:4px;height:8px;margin:15px 0;overflow:hidden}.progress-track span[data-v-af592019]{border-radius:inherit;background:#2f75df;height:100%;transition:width .12s linear;display:block}.progress-section.success[data-v-af592019]{border-color:#9fd8b5}.progress-section.success .progress-track span[data-v-af592019]{background:#2faf67}.dialog-mask[data-v-af592019]{z-index:1000;background:#171d2573;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog[data-v-af592019]{background:#fff;border:1px solid #d9dee5;border-radius:8px;width:min(460px,100%);padding:22px;box-shadow:0 18px 50px #111b2838}.confirm-dialog h2[data-v-af592019]{margin:0 0 13px;font-size:18px}.confirm-dialog>p[data-v-af592019]{color:#5e6772;font-size:13px;line-height:1.7}.confirm-check[data-v-af592019]{color:#626b76;align-items:flex-start;gap:8px;margin-top:17px;font-size:12px;line-height:1.6;display:flex}.confirm-check input[data-v-af592019]{margin-top:3px}.dialog-actions[data-v-af592019]{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.notification[data-v-af592019]{z-index:1200;color:#fff;background:#313b47;border:1px solid #ccd5df;border-radius:6px;max-width:360px;padding:11px 15px;font-size:13px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1c273633}.notification-enter-active[data-v-af592019],.notification-leave-active[data-v-af592019]{transition:all .18s}.notification-enter-from[data-v-af592019],.notification-leave-to[data-v-af592019]{opacity:0;transform:translateY(8px)}@media (width<=1000px){.online-layout[data-v-af592019]{grid-template-columns:minmax(0,1fr)}.version-section[data-v-af592019]{max-width:none}}@media (width<=720px){.firmware-page[data-v-af592019]{padding:16px}.page-header[data-v-af592019]{flex-direction:column;align-items:flex-start}.vehicle-grid[data-v-af592019]{grid-template-columns:repeat(2,minmax(140px,1fr))}.dfu-steps[data-v-af592019],.device-summary[data-v-af592019]{grid-template-columns:1fr}}@media (width<=460px){.upgrade-tabs[data-v-af592019]{align-items:stretch}.upgrade-tabs button[data-v-af592019]{flex:1;min-width:0;padding-inline:5px}.vehicle-grid[data-v-af592019]{grid-template-columns:1fr}.dialog-actions[data-v-af592019],.dfu-device[data-v-af592019]{flex-direction:column;align-items:stretch}}.rtk-page[data-v-ed279030],.rtk-page[data-v-ed279030] *{box-sizing:border-box}.rtk-page[data-v-ed279030]{color:#252b32;background:#f5f6f8;min-height:100%;font-family:Inter,Microsoft YaHei,Arial,sans-serif}.page-header[data-v-ed279030],.section-title[data-v-ed279030],.connection-preview[data-v-ed279030],.configuration-actions[data-v-ed279030],.connection-badge[data-v-ed279030],.tls-field[data-v-ed279030]{align-items:center;display:flex}.page-header[data-v-ed279030]{justify-content:space-between;margin-bottom:16px}.page-header h1[data-v-ed279030]{letter-spacing:0;margin:0 0 5px;font-size:24px}.page-header p[data-v-ed279030],.section-title span[data-v-ed279030]{color:#737b85;margin:0;font-size:12px}.connection-badge[data-v-ed279030]{color:#6d7580;background:#fff;border:1px solid #dce1e6;border-radius:6px;gap:7px;padding:8px 12px;font-size:12px}.status-dot[data-v-ed279030]{background:#a8afb8;border-radius:50%;width:8px;height:8px}.connection-badge.connected[data-v-ed279030]{color:#208653;background:#f1faf5;border-color:#b8dec9}.connection-badge.connected .status-dot[data-v-ed279030]{background:#2faa6c}.connection-badge.error[data-v-ed279030]{color:#c4434c;background:#fff5f5;border-color:#efc5c8}.connection-badge.error .status-dot[data-v-ed279030]{background:#db515a}.configuration-section[data-v-ed279030],.detail-section[data-v-ed279030]{background:#fff;border:1px solid #e0e4e8;border-radius:7px;padding:16px}.configuration-section[data-v-ed279030]{margin-bottom:14px}.section-title[data-v-ed279030]{justify-content:space-between;min-height:38px;margin-bottom:13px}.section-title h2[data-v-ed279030]{letter-spacing:0;margin:0 0 4px;font-size:15px}.saved-badge[data-v-ed279030]{color:#228653!important}.form-grid[data-v-ed279030]{grid-template-columns:minmax(200px,1.3fr) minmax(110px,.55fr) minmax(170px,1fr);gap:15px;display:grid}.field[data-v-ed279030]{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span[data-v-ed279030]{color:#555e69;font-size:12px;font-weight:600}.field input[data-v-ed279030],.field textarea[data-v-ed279030]{color:#2a3037;width:100%;font:inherit;background:#fff;border:1px solid #d7dce2;border-radius:5px;outline:none}.field input[data-v-ed279030]{height:36px;padding:0 10px}.field textarea[data-v-ed279030]{resize:vertical;min-height:76px;padding:9px 10px;line-height:1.5}.field input[data-v-ed279030]:focus,.field textarea[data-v-ed279030]:focus{border-color:#347cdb;box-shadow:0 0 0 2px #347cdb1a}.field input[data-v-ed279030]:disabled,.field textarea[data-v-ed279030]:disabled{color:#858c95;background:#f5f6f7}.field small[data-v-ed279030]{color:#9299a2;min-height:15px;font-size:10px;line-height:1.4}.whitelist-field[data-v-ed279030]{grid-column:span 2}.tls-field[data-v-ed279030]{color:#5e6771;align-self:start;gap:8px;min-height:36px;margin-top:23px;font-size:12px}.tls-field input[data-v-ed279030]{accent-color:#2879df;width:15px;height:15px;margin:0}.connection-preview[data-v-ed279030]{border-top:1px solid #e8ebee;justify-content:space-between;gap:15px;margin-top:15px;padding-top:14px}.connection-preview>div[data-v-ed279030]:first-child{min-width:0}.connection-preview span[data-v-ed279030]{color:#7b838d;margin-bottom:4px;font-size:10px;display:block}.connection-preview strong[data-v-ed279030]{color:#39424c;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace;font-size:12px;display:block;overflow:hidden}.configuration-actions[data-v-ed279030]{flex:none;gap:8px}.primary-button[data-v-ed279030],.secondary-button[data-v-ed279030]{cursor:pointer;border-radius:5px;height:36px;padding:0 15px;font-size:12px}.primary-button[data-v-ed279030]{color:#fff;background:#2879df;border:1px solid #2879df}.primary-button[data-v-ed279030]:hover{background:#206bc8}.primary-button.disconnect[data-v-ed279030]{background:#d7565f;border-color:#d7565f}.secondary-button[data-v-ed279030]{color:#59636e;background:#fff;border:1px solid #d6dce2}.primary-button[data-v-ed279030]:disabled,.secondary-button[data-v-ed279030]:disabled{cursor:not-allowed;opacity:.55}.overview-grid[data-v-ed279030]{grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px;margin-bottom:14px;display:grid}.metric[data-v-ed279030]{background:#fff;border:1px solid #e0e4e8;border-radius:7px;min-height:96px;padding:13px}.metric span[data-v-ed279030],.metric small[data-v-ed279030]{color:#77808a;font-size:11px;display:block}.metric strong[data-v-ed279030]{color:#262d35;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;min-height:26px;margin:7px 0 3px;font-size:18px;display:block;overflow:hidden}.metric small[data-v-ed279030]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.validity-value.normal[data-v-ed279030]{color:#218754}.validity-value.warning[data-v-ed279030]{color:#bd7618}.validity-value.expired[data-v-ed279030]{color:#d14952}.validity-value.unknown[data-v-ed279030]{color:#707984}.detail-section[data-v-ed279030]{min-height:250px}.text-button[data-v-ed279030]{color:#3078d1;cursor:pointer;background:0 0;border:0;font-size:12px}.status-list[data-v-ed279030]{border:1px solid #e5e8eb;border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.status-list>div[data-v-ed279030]{border-bottom:1px solid #eceff2;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:12px;min-height:45px;padding:0 13px;display:grid}.status-list>div[data-v-ed279030]:nth-child(odd){border-right:1px solid #eceff2}.status-list span[data-v-ed279030]{color:#747d87;font-size:11px}.status-list strong[data-v-ed279030]{color:#333b44;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace;font-size:12px;overflow:hidden}.browser-notice[data-v-ed279030]{color:#53667d;background:#f5f9fe;border:1px solid #d8e5f4;border-radius:6px;grid-template-columns:130px minmax(0,1fr);gap:14px;margin-top:14px;padding:12px 14px;font-size:11px;line-height:1.7;display:grid}.browser-notice strong[data-v-ed279030]{color:#31577f}.gps-section[data-v-ed279030]{background:#fff;border:1px solid #e0e4e8;border-radius:7px;margin-bottom:14px;padding:16px}.gps-badge[data-v-ed279030]{border-radius:10px;padding:4px 10px;font-size:11px;font-weight:600}.gps-badge.gps-rtk[data-v-ed279030]{color:#1a7a42;background:#e8f7ef}.gps-badge.gps-fix[data-v-ed279030]{color:#2563eb;background:#eff6ff}.gps-badge.gps-nofix[data-v-ed279030]{color:#b45309;background:#fffbeb}.gps-badge.gps-none[data-v-ed279030]{color:#6b7280;background:#f3f4f6}.gps-grid[data-v-ed279030]{grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px;display:grid}.gps-card[data-v-ed279030]{background:#fafbfc;border:1px solid #e5e8eb;border-radius:6px;padding:12px}.gps-card span[data-v-ed279030]{color:#77808a;font-size:11px;display:block}.gps-card strong[data-v-ed279030]{color:#262d35;letter-spacing:0;min-height:24px;margin:5px 0 2px;font-size:16px;display:block}.gps-card strong.coord[data-v-ed279030]{font-family:Consolas,monospace;font-size:13px}.gps-card small[data-v-ed279030]{color:#9299a2;font-size:10px;display:block}strong.gps-rtk[data-v-ed279030]{color:#1a7a42}strong.gps-fix[data-v-ed279030]{color:#2563eb}strong.gps-nofix[data-v-ed279030]{color:#b45309}strong.gps-none[data-v-ed279030]{color:#6b7280}.notification[data-v-ed279030]{z-index:1200;color:#fff;background:#303a46;border-radius:6px;max-width:380px;padding:11px 15px;font-size:13px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1e2a3a38}.notice-enter-active[data-v-ed279030],.notice-leave-active[data-v-ed279030]{transition:all .18s}.notice-enter-from[data-v-ed279030],.notice-leave-to[data-v-ed279030]{opacity:0;transform:translateY(8px)}@media (width<=1180px){.overview-grid[data-v-ed279030]{grid-template-columns:repeat(3,minmax(140px,1fr))}}@media (width<=850px){.form-grid[data-v-ed279030]{grid-template-columns:repeat(2,minmax(0,1fr))}.whitelist-field[data-v-ed279030]{grid-column:span 2}.gps-grid[data-v-ed279030]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.rtk-page[data-v-ed279030]{padding:14px}.page-header[data-v-ed279030],.connection-preview[data-v-ed279030]{flex-direction:column;align-items:flex-start}.form-grid[data-v-ed279030],.overview-grid[data-v-ed279030],.status-list[data-v-ed279030],.gps-grid[data-v-ed279030]{grid-template-columns:1fr}.whitelist-field[data-v-ed279030]{grid-column:auto}.tls-field[data-v-ed279030]{margin-top:0}.configuration-actions[data-v-ed279030]{width:100%}.primary-button[data-v-ed279030],.secondary-button[data-v-ed279030]{flex:1}.status-list>div[data-v-ed279030]:nth-child(odd){border-right:0}.browser-notice[data-v-ed279030]{grid-template-columns:1fr;gap:5px}}.chart-layout[data-v-a7791b1e]{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:14px;min-width:0;display:grid}.channel-sidebar[data-v-a7791b1e]{background:#fff;border:1px solid #e0e4e9;min-width:0;max-height:520px;overflow:auto}.sidebar-header[data-v-a7791b1e]{z-index:2;color:#4e5661;background:#fff;border-bottom:1px solid #e7eaee;justify-content:space-between;align-items:center;height:40px;padding:0 12px;font-size:12px;font-weight:600;display:flex;position:sticky;top:0}.header-actions[data-v-a7791b1e]{gap:6px;display:flex}.header-actions button[data-v-a7791b1e]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:3px;padding:2px 8px;font-size:11px}.header-actions button[data-v-a7791b1e]:hover:not(:disabled){color:#216bd1;border-color:#216bd1}.header-actions button[data-v-a7791b1e]:disabled{color:#b5bec8;cursor:default}.channel-group[data-v-a7791b1e]{border-bottom:1px solid #edf0f3}.group-header[data-v-a7791b1e]{color:#687585;background:#f7f9fb;justify-content:space-between;align-items:center;height:32px;padding:0 12px;font-size:11px;font-weight:600;display:flex}.group-header small[data-v-a7791b1e]{color:#9aa5b1}.channel-row[data-v-a7791b1e]{color:#747c86;cursor:pointer;grid-template-columns:15px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:28px;padding:0 12px;font-size:12px;display:grid}.channel-row[data-v-a7791b1e]:hover{color:#252a31;background:#f7f9fb}.channel-row.selected[data-v-a7791b1e]{color:#1d4f8f;background:#eef5ff}.channel-row input[data-v-a7791b1e]{accent-color:#216bd1;width:13px;height:13px;margin:0}.channel-name[data-v-a7791b1e]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.channel-unit[data-v-a7791b1e]{color:#9aa5b1;font-size:10px}.chart-main[data-v-a7791b1e]{min-width:0}.chart-container[data-v-a7791b1e]{background:#fff;border:1px solid #e0e4e9;height:380px;position:relative}.chart-container canvas[data-v-a7791b1e]{cursor:crosshair;touch-action:none;width:100%;height:100%;display:block}.empty-state[data-v-a7791b1e]{color:#83909e;pointer-events:none;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.empty-state strong[data-v-a7791b1e]{color:#526071;font-size:14px}.empty-state span[data-v-a7791b1e]{font-size:11px}.chart-legend[data-v-a7791b1e]{flex-wrap:wrap;gap:10px 18px;margin-top:10px;display:flex}.legend-item[data-v-a7791b1e]{align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.legend-dot[data-v-a7791b1e]{border-radius:2px;flex:0 0 9px;width:9px;height:9px}.legend-name[data-v-a7791b1e]{color:#526071;text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.legend-item strong[data-v-a7791b1e]{color:#27364a;font-family:Consolas,monospace}.legend-item small[data-v-a7791b1e]{color:#9aa5b1}.event-hint[data-v-a7791b1e]{color:#956400;font-size:11px}.cursor-hint[data-v-a7791b1e]{color:#9aa5b1;margin:8px 0 0;font-size:11px}@media (width<=960px){.chart-layout[data-v-a7791b1e]{grid-template-columns:minmax(0,1fr)}.channel-sidebar[data-v-a7791b1e]{max-height:220px}}.table-view[data-v-317e9f19]{min-width:0}.table-toolbar[data-v-317e9f19]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.toolbar-info[data-v-317e9f19]{color:#687585;font-size:11px}.toolbar-actions[data-v-317e9f19]{color:#526071;align-items:center;gap:8px;font-size:11px;display:flex}.toolbar-actions button[data-v-317e9f19]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:3px;padding:3px 10px;font-size:11px}.toolbar-actions button[data-v-317e9f19]:hover:not(:disabled){color:#216bd1;border-color:#216bd1}.toolbar-actions button[data-v-317e9f19]:disabled{color:#b5bec8;cursor:default}.toolbar-actions select[data-v-317e9f19]{color:#526071;background:#fff;border:1px solid #cbd4dd;border-radius:3px;height:22px;font-size:11px}.page-indicator[data-v-317e9f19]{color:#687585;font-family:Consolas,monospace}.table-scroll[data-v-317e9f19]{background:#fff;border:1px solid #e0e4e9;max-height:460px;overflow:auto}table[data-v-317e9f19]{border-collapse:collapse;width:100%;font-family:Consolas,monospace;font-size:11px}thead th[data-v-317e9f19]{z-index:1;color:#45505e;text-align:right;white-space:nowrap;background:#f5f7fa;border-bottom:2px solid #dfe4ea;padding:7px 10px;font-weight:600;position:sticky;top:0}thead th small[data-v-317e9f19]{color:#9aa5b1;margin-left:4px;font-weight:400}tbody td[data-v-317e9f19]{color:#59616c;text-align:right;white-space:nowrap;border-bottom:1px solid #f0f2f5;padding:5px 10px}tbody tr[data-v-317e9f19]{cursor:pointer}tbody tr:hover td[data-v-317e9f19]{background:#f7fafd}tbody tr.active td[data-v-317e9f19]{color:#1d4f8f;background:#e8f1fe}.col-time[data-v-317e9f19]{color:#747c86;background:#fff;position:sticky;left:0;text-align:left!important}thead .col-time[data-v-317e9f19]{z-index:2;background:#f5f7fa}tbody tr:hover .col-time[data-v-317e9f19]{background:#f7fafd}tbody tr.active .col-time[data-v-317e9f19]{background:#e8f1fe}.empty-state[data-v-317e9f19]{color:#83909e;text-align:center;padding:40px}.track-view[data-v-fec1a9fa]{min-width:0}.track-toolbar[data-v-fec1a9fa]{color:#687585;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:11px;display:flex}.track-container[data-v-fec1a9fa]{background:#fff;border:1px solid #e0e4e9;height:440px;position:relative;overflow:hidden}.track-container canvas[data-v-fec1a9fa]{cursor:crosshair;touch-action:none;width:100%;height:100%;display:block}.track-tooltip[data-v-fec1a9fa]{z-index:3;color:#fff;pointer-events:none;white-space:nowrap;background:#216bd1eb;border:1px solid #216bd1;border-radius:3px;padding:6px 9px;font-family:Consolas,monospace;font-size:11px;line-height:1.5;position:absolute}.analysis-page[data-v-e7967e5d]{color:#27364a;min-width:0}.hidden-input[data-v-e7967e5d]{display:none}.upload-zone[data-v-e7967e5d]{background:#fff;border:1px dashed #c3ccd6;margin-bottom:14px;transition:border-color .15s,background .15s;position:relative}.upload-zone.dragging[data-v-e7967e5d]{background:#f2f7ff;border-color:#216bd1}.upload-zone.parsing[data-v-e7967e5d]{border-color:#216bd1}.upload-content[data-v-e7967e5d]{cursor:pointer;align-items:center;gap:14px;min-height:76px;padding:14px 16px;display:flex}.upload-symbol[data-v-e7967e5d]{color:#216bd1;background:#f5f8fc;border:1px solid #d6dde5;border-radius:4px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.upload-text[data-v-e7967e5d]{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.upload-text strong[data-v-e7967e5d]{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.upload-text span[data-v-e7967e5d]{color:#8894a1;font-size:11px}.upload-actions[data-v-e7967e5d]{gap:8px;display:flex}.primary-button[data-v-e7967e5d]{color:#fff;cursor:pointer;background:#216bd1;border:1px solid #216bd1;border-radius:4px;height:32px;padding:0 14px;font-size:12px}.primary-button[data-v-e7967e5d]:hover:not(:disabled){background:#1a5cb5}.primary-button[data-v-e7967e5d]:disabled{cursor:default;background:#9db7dd;border-color:#9db7dd}.secondary-button[data-v-e7967e5d]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:4px;height:32px;padding:0 13px;font-size:12px}.secondary-button[data-v-e7967e5d]:hover:not(:disabled){color:#216bd1;border-color:#216bd1}.secondary-button[data-v-e7967e5d]:disabled{color:#b5bec8;cursor:default}.ghost-button[data-v-e7967e5d]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:3px;padding:3px 10px;font-size:11px}.ghost-button[data-v-e7967e5d]:hover{color:#216bd1;border-color:#216bd1}.summary-bar[data-v-e7967e5d]{grid-template-columns:repeat(8, minmax(0, 1fr),);background:#dfe4ea;border:1px solid #dfe4ea;gap:1px;margin-bottom:14px;display:grid}.summary-item[data-v-e7967e5d]{background:#fff;min-width:0;padding:11px 13px}.summary-item.primary[data-v-e7967e5d]{background:#f2f7ff}.summary-item small[data-v-e7967e5d]{color:#8894a1;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.summary-item strong[data-v-e7967e5d]{color:#27364a;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:14px;display:block;overflow:hidden}.text-warning[data-v-e7967e5d]{color:#956400!important}.text-danger[data-v-e7967e5d]{color:#b42318!important}.text-active[data-v-e7967e5d]{color:#216bd1!important}.view-panel[data-v-e7967e5d]{background:#fff;border:1px solid #dfe4ea;min-width:0;margin-bottom:16px;padding:16px;scroll-margin-top:12px}.view-header[data-v-e7967e5d]{border-bottom:1px solid #edf0f3;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:14px;padding-bottom:10px;display:flex}.view-header h2[data-v-e7967e5d]{color:#27364a;align-items:baseline;gap:8px;margin:0;font-size:15px;display:flex}.view-header h2 small[data-v-e7967e5d]{color:#9aa5b1;font-size:11px;font-weight:400}.view-hint[data-v-e7967e5d]{color:#8894a1;font-size:11px}.view-toolbar[data-v-e7967e5d]{color:#687585;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:11px;display:flex}.legend-note[data-v-e7967e5d]{align-items:center;gap:6px;display:flex}.legend-note .dot[data-v-e7967e5d]{border-radius:50%;width:8px;height:8px;display:inline-block}.legend-note .dot.error[data-v-e7967e5d]{background:#d92d20}.legend-note .dot.warning[data-v-e7967e5d]{background:#d79514}.data-table-wrap[data-v-e7967e5d]{background:#fff;border:1px solid #e0e4e9;max-height:520px;overflow:auto}.data-table[data-v-e7967e5d]{border-collapse:collapse;width:100%;font-size:12px}.data-table thead th[data-v-e7967e5d]{z-index:1;color:#45505e;text-align:left;white-space:nowrap;background:#f5f7fa;border-bottom:2px solid #dfe4ea;padding:8px 12px;font-size:11px;font-weight:600;position:sticky;top:0}.data-table tbody td[data-v-e7967e5d]{color:#59616c;text-align:left;border-bottom:1px solid #f0f2f5;padding:7px 12px}.data-table tbody tr[data-v-e7967e5d]:hover{background:#f7fafd}.data-table tbody tr.active[data-v-e7967e5d]{background:#e8f1fe}.cell-current[data-v-e7967e5d]{color:#1d4f8f;font-family:Consolas,monospace;font-weight:600}.cell-action[data-v-e7967e5d]{width:90px;text-align:right!important}.cell-action button[data-v-e7967e5d]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:3px;padding:2px 8px;font-size:11px}.cell-action button[data-v-e7967e5d]:hover{color:#216bd1;border-color:#216bd1}.col-time[data-v-e7967e5d]{white-space:nowrap;width:120px;font-family:Consolas,monospace}.col-time small[data-v-e7967e5d]{color:#9aa5b1;margin-left:4px}.col-level[data-v-e7967e5d]{width:76px}.col-text[data-v-e7967e5d]{white-space:normal;word-break:break-word}.level-badge[data-v-e7967e5d]{border-radius:3px;align-items:center;min-height:19px;padding:0 7px;font-size:10px;display:inline-flex}.level-badge.info[data-v-e7967e5d]{color:#3a6ea5;background:#e8f1fb}.level-badge.warning[data-v-e7967e5d]{color:#956400;background:#fdf1d6}.level-badge.error[data-v-e7967e5d]{color:#b42318;background:#fde8e6}.messages-view .message-wrap[data-v-e7967e5d]{max-height:420px}.filter-group[data-v-e7967e5d]{flex-wrap:wrap;gap:6px;display:flex}.filter-group button[data-v-e7967e5d]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:3px;padding:4px 11px;font-size:11px}.filter-group button[data-v-e7967e5d]:hover{color:#216bd1;border-color:#216bd1}.filter-group button.active[data-v-e7967e5d]{color:#fff;background:#216bd1;border-color:#216bd1}.info-grid[data-v-e7967e5d]{grid-template-columns:repeat(4, minmax(0, 1fr),);background:#e0e4e9;border:1px solid #e0e4e9;gap:1px;margin-bottom:12px;display:grid}.info-grid>div[data-v-e7967e5d]{background:#fff;min-width:0;padding:9px 12px}.info-grid span[data-v-e7967e5d]{color:#8894a1;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.info-grid strong[data-v-e7967e5d]{color:#27364a;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;display:block;overflow:hidden}.empty-state[data-v-e7967e5d]{color:#83909e;text-align:center;padding:42px 20px;font-size:12px}.empty-page[data-v-e7967e5d]{text-align:center;background:#fff;border:1px dashed #c3ccd6;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:70px 24px;display:flex}.empty-page strong[data-v-e7967e5d]{color:#45505e;font-size:15px}.empty-page span[data-v-e7967e5d]{color:#8894a1;max-width:520px;font-size:11px;line-height:1.7}.empty-page .primary-button[data-v-e7967e5d]{margin-top:6px}@media (width<=1200px){.summary-bar[data-v-e7967e5d]{grid-template-columns:repeat(4, minmax(0, 1fr),)}.info-grid[data-v-e7967e5d]{grid-template-columns:repeat(2, minmax(0, 1fr),)}}@media (width<=640px){.summary-bar[data-v-e7967e5d]{grid-template-columns:repeat(2, minmax(0, 1fr),)}.upload-content[data-v-e7967e5d]{flex-wrap:wrap}.upload-actions[data-v-e7967e5d]{width:100%}}html,body,#app{min-width:320px;min-height:100%;margin:0}body{background:#f3f5f7;font-family:Inter,Microsoft YaHei,Arial,sans-serif}button[data-v-030e9d49],input[data-v-030e9d49],select[data-v-030e9d49],textarea[data-v-030e9d49]{font:inherit}.application[data-v-030e9d49]{color:#18212f;background:#f3f5f7;flex-direction:column;min-height:100vh;display:flex}.topbar[data-v-030e9d49]{z-index:30;background:#fff;border-bottom:1px solid #dce2e8;flex:0 0 64px;justify-content:space-between;align-items:center;gap:20px;height:64px;padding:0 22px;display:flex;position:relative}.brand-area[data-v-030e9d49],.topbar-status[data-v-030e9d49],.top-status[data-v-030e9d49],.connection-button[data-v-030e9d49],.heading-title[data-v-030e9d49],.heading-actions[data-v-030e9d49],.sidebar-device[data-v-030e9d49],.statusbar>span[data-v-030e9d49]{align-items:center;display:flex}.brand-area[data-v-030e9d49]{gap:11px;min-width:230px}.icon-button[data-v-030e9d49]{color:#4e5b6a;cursor:pointer;background:0 0;border:0;border-radius:5px;width:34px;height:34px;font-size:20px}.icon-button[data-v-030e9d49]:hover{background:#eef2f6}.brand-logo[data-v-030e9d49]{color:#fff;background:#216bd1;border-radius:6px;flex:0 0 32px;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.brand-text[data-v-030e9d49]{color:#8894a1;flex-direction:column;gap:2px;min-width:0;display:flex}.brand-text strong[data-v-030e9d49]{color:#263445;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.brand-text small[data-v-030e9d49]{font-size:11px}.topbar-status[data-v-030e9d49]{gap:18px}.top-status[data-v-030e9d49]{color:#7d8996;gap:7px;font-size:12px}.top-status strong[data-v-030e9d49]{color:#263445}.top-status i[data-v-030e9d49],.connection-button i[data-v-030e9d49],.sidebar-device>i[data-v-030e9d49],.data-state i[data-v-030e9d49],.statusbar i[data-v-030e9d49]{background:#aeb8c4;border-radius:50%;flex:0 0 8px;width:8px;height:8px}.top-status i.active[data-v-030e9d49],.sidebar-device>i.active[data-v-030e9d49],.data-state.active i[data-v-030e9d49],.statusbar i.active[data-v-030e9d49]{background:#259b55}.connection-button[data-v-030e9d49]{color:#fff;cursor:pointer;background:#216bd1;border:1px solid #216bd1;border-radius:5px;justify-content:center;gap:8px;min-width:116px;height:36px;padding:0 13px;font-size:12px}.connection-button i[data-v-030e9d49]{background:#fff}.connection-button.connected[data-v-030e9d49]{color:#216bd1;background:#fff}.connection-button.connected i[data-v-030e9d49]{background:#216bd1}.connection-button[data-v-030e9d49]:disabled{cursor:not-allowed;opacity:.6}.main-container[data-v-030e9d49]{flex:1;min-height:0;display:flex}.sidebar[data-v-030e9d49]{background:#fff;border-right:1px solid #dce2e8;flex-direction:column;flex:0 0 220px;justify-content:space-between;width:220px;transition:width .2s,flex-basis .2s;display:flex}.sidebar.collapsed[data-v-030e9d49]{flex-basis:68px;width:68px}.navigation[data-v-030e9d49]{flex-direction:column;gap:4px;padding:15px 10px;display:flex}.nav-item[data-v-030e9d49]{color:#5b6877;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;width:100%;min-height:42px;padding:0 13px;display:flex}.nav-item[data-v-030e9d49]:hover{color:#216bd1;background:#f1f4f7}.nav-item.active[data-v-030e9d49]{color:#216bd1;background:#e9f2ff;font-weight:600}.nav-icon[data-v-030e9d49]{text-align:center;flex:0 0 20px;width:20px;font-size:17px}.nav-label[data-v-030e9d49]{white-space:nowrap;font-size:13px;overflow:hidden}.sidebar-device[data-v-030e9d49]{border-top:1px solid #edf0f3;gap:10px;padding:14px}.sidebar-device>i[data-v-030e9d49]{flex:0 0 8px}.sidebar-device div[data-v-030e9d49]{flex-direction:column;gap:3px;min-width:0;display:flex}.sidebar-device strong[data-v-030e9d49],.sidebar-device small[data-v-030e9d49]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-device strong[data-v-030e9d49]{font-size:12px}.sidebar-device small[data-v-030e9d49]{color:#8894a1;font-size:11px}.page-container[data-v-030e9d49]{flex:1;min-width:0;padding:18px 22px 28px;overflow:auto}.page-heading[data-v-030e9d49]{justify-content:space-between;align-items:center;gap:18px;margin:20px 0 18px;display:flex}.heading-title[data-v-030e9d49]{gap:12px;min-width:0}.heading-icon[data-v-030e9d49]{color:#216bd1;background:#eef5ff;border:1px solid #d7e4f5;border-radius:6px;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid}.page-heading h1[data-v-030e9d49]{margin:0;font-size:21px}.page-heading p[data-v-030e9d49]{color:#8894a1;margin:4px 0 0;font-size:11px}.heading-actions[data-v-030e9d49]{flex:none;gap:12px}.data-state[data-v-030e9d49]{color:#8b96a3;align-items:center;gap:7px;font-size:12px;display:flex}.data-state.active[data-v-030e9d49]{color:#258a48}.secondary-button[data-v-030e9d49]{color:#526071;cursor:pointer;background:#fff;border:1px solid #cbd4dd;border-radius:4px;height:34px;padding:0 13px;font-size:12px}.secondary-button[data-v-030e9d49]:hover{color:#216bd1;border-color:#216bd1}.statusbar[data-v-030e9d49]{color:#7b8794;background:#fff;border-top:1px solid #dfe4ea;flex:0 0 48px;justify-content:space-between;align-items:center;gap:14px;height:48px;padding:0 22px;font-size:11px;display:flex}.statusbar>span[data-v-030e9d49]{gap:7px}.footer-center[data-v-030e9d49]{flex:1;justify-content:center}.toast-message[data-v-030e9d49]{z-index:100;color:#344154;background:#fff;border:1px solid #cbd4dd;border-radius:5px;align-items:center;gap:9px;max-width:min(420px,100vw - 44px);padding:12px 15px;font-size:12px;display:flex;position:fixed;bottom:68px;right:22px;box-shadow:0 8px 28px #192a3c24}.toast-message b[data-v-030e9d49]{color:#216bd1;background:#dcecff;border-radius:50%;flex:0 0 18px;place-items:center;width:18px;height:18px;display:grid}.toast-message.success b[data-v-030e9d49]{color:#20863d;background:#d9f4df}.toast-message.warning b[data-v-030e9d49]{color:#8a5b00;background:#fff0c2}.toast-enter-active[data-v-030e9d49],.toast-leave-active[data-v-030e9d49]{transition:opacity .2s,transform .2s}.toast-enter-from[data-v-030e9d49],.toast-leave-to[data-v-030e9d49]{opacity:0;transform:translateY(8px)}@media (width<=760px){.topbar[data-v-030e9d49]{flex-basis:58px;height:58px;padding:0 12px}.brand-area[data-v-030e9d49]{min-width:0}.brand-text strong[data-v-030e9d49]{font-size:12px}.topbar-status[data-v-030e9d49]{gap:7px}.sidebar[data-v-030e9d49]{z-index:20;width:220px;position:fixed;top:58px;bottom:46px;left:0;box-shadow:5px 0 18px #1e2d3c1a}.sidebar.collapsed[data-v-030e9d49]{border-right:0;flex-basis:0;width:0;overflow:hidden}.page-container[data-v-030e9d49]{padding:14px 12px 20px}.page-heading[data-v-030e9d49]{flex-direction:column;align-items:flex-start}.heading-actions[data-v-030e9d49]{justify-content:space-between;width:100%}.statusbar[data-v-030e9d49]{flex-basis:46px;height:46px;padding:0 12px}.hide-mobile[data-v-030e9d49]{display:none!important}.toast-message[data-v-030e9d49]{max-width:calc(100vw - 24px);bottom:58px;right:12px}}@media (width<=460px){.brand-text small[data-v-030e9d49]{display:none}.connection-button[data-v-030e9d49]{min-width:92px;padding:0 8px}.page-heading h1[data-v-030e9d49]{font-size:18px}}:root{color:#1b2638;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f7fb;font-family:Inter,Microsoft YaHei,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100vh;overflow:hidden}button,input,select{font:inherit}button{border:0}button,select{cursor:pointer}button,.button,.primary-button,.secondary-button,.danger-button,.icon-button,.tool-button{transition:background-color .18s,border-color .18s,box-shadow .18s,transform .12s,opacity .18s}button:not(:disabled):hover,.button:not(:disabled):hover,.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):hover,.danger-button:not(:disabled):hover,.icon-button:not(:disabled):hover,.tool-button:not(:disabled):hover{transform:translateY(-1px)}button:not(:disabled):active,.button:not(:disabled):active,.primary-button:not(:disabled):active,.secondary-button:not(:disabled):active,.danger-button:not(:disabled):active,.icon-button:not(:disabled):active,.tool-button:not(:disabled):active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.65}.page-header,.page-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.page-header>div:first-child,.page-heading>div:first-child{min-width:0}.page-header h1,.page-heading h1{color:#1d2d42;letter-spacing:0;margin:0;font-size:25px;font-weight:700}.page-header p,.page-heading p{color:#76859a;margin:6px 0 0;font-size:13px}.application{--topbar-height:66px;--statusbar-height:34px;--sidebar-width:228px;background:#f4f7fb;width:100%;min-height:100vh}.topbar{z-index:50;height:var(--topbar-height);color:#fff;background:linear-gradient(135deg,#101b2c,#172a43);border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:0 22px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 10px #0f172a24}.brand-area,.topbar-status,.status-item,.connection-button{align-items:center;display:flex}.brand-area{gap:12px;min-width:0}.icon-button{color:#b9c7d9;background:0 0;border-radius:8px;width:36px;height:36px;font-size:20px}.icon-button:hover{color:#fff;background:#ffffff14}.brand-logo{background:linear-gradient(135deg,#3183ff,#5d61f3);border-radius:10px;flex:none;place-items:center;width:37px;height:37px;display:grid;box-shadow:0 5px 14px #2b74f652}.brand-logo span{color:#fff;font-size:19px;font-weight:800}.brand-text{flex-direction:column;min-width:0;display:flex}.brand-text strong{letter-spacing:.2px;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.brand-text small{color:#8ea1b9;margin-top:2px;font-size:11px}.topbar-status{gap:20px}.status-item{color:#91a3ba;gap:7px;font-size:12px}.status-item strong{color:#d6dfeb;font-weight:600}.status-dot,.button-status-dot,.footer-dot{background:#78879a;border-radius:50%;flex:none;width:8px;height:8px}.status-item.online .status-dot,.footer-dot.active{background:#27c980;box-shadow:0 0 0 4px #27c9801f}.connection-button{color:#fff;background:#3478f6;border-radius:8px;justify-content:center;gap:8px;min-width:118px;height:38px;padding:0 15px;font-size:13px;font-weight:600;box-shadow:0 5px 14px #1f69f340}.connection-button:hover{background:#286be1}.connection-button.connected{background:#1eaa6b}.connection-button.connected:hover{background:#16935b}.button-status-dot{background:#ffffffb3}.main-container{min-height:100vh;padding-bottom:var(--statusbar-height)}.sidebar{z-index:40;top:var(--topbar-height);bottom:var(--statusbar-height);width:var(--sidebar-width);background:#fff;border-right:1px solid #e3e9f1;flex-direction:column;justify-content:space-between;transition:width .22s;display:flex;position:fixed;left:0;overflow:hidden;box-shadow:3px 0 14px #0f172a05}.sidebar.collapsed{width:72px}.navigation{flex-direction:column;gap:5px;padding:18px 12px;display:flex}.nav-item{color:#637187;text-align:left;white-space:nowrap;background:0 0;border-radius:9px;align-items:center;gap:13px;width:100%;height:44px;padding:0 13px;display:flex}.nav-item:hover{color:#286ce3;background:#f4f7fc}.nav-item.active{color:#216aec;background:#edf4ff;font-weight:600}.nav-item.disabled{cursor:default;opacity:.55}.nav-item.disabled:hover{color:#637187;background:0 0}.nav-icon{text-align:center;flex:0 0 22px;width:22px;font-size:19px;line-height:1}.nav-label{text-overflow:ellipsis;font-size:14px;overflow:hidden}.nav-divider{background:#edf0f5;height:1px;margin:9px 6px}.sidebar-bottom{border-top:1px solid #edf0f5;padding:12px}.version-box{color:#8793a5;white-space:nowrap;align-items:center;gap:13px;padding:8px 12px;display:flex}.version-box .nav-label{flex-direction:column;gap:3px;display:flex}.version-box small{font-size:10px}.version-box strong{color:#68758a;font-size:11px}.sidebar.collapsed .nav-label{display:none}.page-container{height:calc(100vh - var(--topbar-height) - var(--statusbar-height));margin-left:var(--sidebar-width);padding:26px 28px 40px;transition:margin-left .22s;overflow-y:auto}.sidebar.collapsed+.page-container{margin-left:72px}.page-header{justify-content:space-between;align-items:flex-end;max-width:100%;margin:0 auto 22px;display:flex}.breadcrumb{color:#92a0b2;margin-bottom:8px;font-size:12px}.page-header h1{color:#172235;margin:0;font-size:25px;font-weight:700}.page-header p{color:#77859a;margin:7px 0 0;font-size:13px}.dashboard-page,.settings-page{max-width:100%;margin:0 auto}.connection-notice{background:#fffaf0;border:1px solid #f4ddb1;border-radius:11px;align-items:center;gap:14px;margin-bottom:18px;padding:14px 16px;display:flex}.notice-icon{color:#fff;background:#eaa33b;border-radius:50%;flex:none;place-items:center;width:31px;height:31px;font-weight:700;display:grid}.connection-notice>div:nth-child(2){flex:1;min-width:0}.connection-notice strong{color:#76501d;font-size:13px}.connection-notice p{color:#957143;margin:3px 0 0;font-size:12px}.primary-button,.secondary-button{border-radius:8px;min-height:38px;padding:0 17px;font-size:13px;font-weight:600}.primary-button{color:#fff;background:#3478f6;box-shadow:0 4px 12px #3478f633}.primary-button:hover{background:#286be1}.secondary-button{color:#536176;background:#fff;border:1px solid #d9e0ea}.secondary-button:hover{color:#246ce5;background:#f7faff;border-color:#9bbcf4}.metrics-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:15px;display:grid}.metric-card,.panel{background:#fff;border:1px solid #e4e9f0;box-shadow:0 5px 18px #0f172a08}.metric-card{border-radius:11px;min-height:145px;padding:18px 19px}.metric-heading{color:#7a879a;justify-content:space-between;align-items:center;font-size:12px;display:flex}.metric-icon{border-radius:8px;place-items:center;width:31px;height:31px;font-size:16px;display:grid}.metric-icon.blue{color:#3478f6;background:#eaf2ff}.metric-icon.green{color:#1ba66a;background:#e9f8f1}.metric-icon.purple{color:#7556d9;background:#f1edff}.metric-icon.orange{color:#dc8d29;background:#fff4e5}.metric-value{color:#172235;margin:11px 0 7px;font-size:27px;font-weight:700;display:block}.status-value,.mode-value{font-size:21px}.metric-card small{color:#8995a6;font-size:11px}.green-text{color:#19a365!important}.progress-track{background:#edf1f5;border-radius:20px;height:5px;margin:-2px 0 7px;overflow:hidden}.progress-bar{border-radius:inherit;background:linear-gradient(90deg,#25bd78,#4fd894);height:100%;transition:width .3s}.dashboard-grid{grid-template-columns:minmax(420px,1.5fr) minmax(320px,1fr);gap:15px;margin-top:15px;display:grid}.panel{border-radius:11px}.panel-header{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;min-height:68px;padding:15px 19px;display:flex}.panel-header h2{color:#233047;margin:0;font-size:15px}.panel-header p{color:#929dad;margin:5px 0 0;font-size:11px}.live-badge{color:#8996a6;background:#f2f4f7;border-radius:20px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;display:flex}.live-badge i{background:#9aa5b4;border-radius:50%;width:6px;height:6px}.live-badge.active{color:#168858;background:#eaf8f2}.live-badge.active i{background:#20bd78;box-shadow:0 0 0 3px #20bd7824}.attitude-content{justify-content:center;align-items:center;gap:44px;min-height:300px;padding:25px;display:flex}.attitude-indicator{background:#dce8f5;border:9px solid #24364e;border-radius:50%;flex:none;width:218px;height:218px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #8092a8,0 8px 20px #0f172a29}.attitude-indicator.inactive{filter:grayscale(.7);opacity:.65}.attitude-horizon{transition:transform .12s linear;position:absolute;inset:-25%}.sky,.ground{height:50%;position:absolute;left:0;right:0}.sky{background:linear-gradient(#4d9ee8,#6fb5ed);top:0}.ground{background:linear-gradient(#ae754a,#8c5939);bottom:0}.horizon-line{background:#fff;height:3px;position:absolute;top:50%;left:0;right:0;box-shadow:0 0 2px #0000004d}.aircraft-symbol{z-index:4;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.aircraft-symbol span{background:#fff13f;border:1px solid #575200;width:43px;height:4px}.aircraft-symbol i{border:3px solid #fff13f;border-radius:50%;width:10px;height:10px}.pitch-mark{z-index:3;color:#ffffffe0;font-size:9px;position:absolute;left:50%;transform:translate(-50%)}.pitch-top{top:30%}.pitch-bottom{bottom:29%}.attitude-values{flex-direction:column;gap:17px;min-width:145px;display:flex}.attitude-values>div{border-bottom:1px solid #edf0f4;padding-bottom:12px}.attitude-values>div:last-child{border-bottom:0}.attitude-values span{color:#8a96a7;margin-bottom:5px;font-size:11px;display:block}.attitude-values strong{color:#26344b;font-size:18px}.telemetry-list{padding:7px 19px 12px}.telemetry-row{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;min-height:56px;display:flex}.telemetry-row:last-child{border-bottom:0}.telemetry-row>div{color:#6f7d91;align-items:center;gap:11px;font-size:12px;display:flex}.telemetry-icon{color:#3579ee;background:#edf4ff;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.telemetry-row strong{color:#27354b;font-size:13px}.system-panel{margin-top:15px}.system-information{grid-template-columns:repeat(4,1fr);padding:20px;display:grid}.system-information>div{border-right:1px solid #edf0f4;padding:0 20px}.system-information>div:first-child{padding-left:0}.system-information>div:last-child{border-right:0}.system-information span{color:#8d98a8;margin-bottom:7px;font-size:11px;display:block}.system-information strong{color:#2a374c;font-size:13px}.settings-form{flex-direction:column;gap:15px;display:flex}.settings-section{overflow:hidden}.form-grid{grid-template-columns:repeat(2,minmax(240px,1fr));gap:20px;padding:22px;display:grid}.form-field{flex-direction:column;gap:8px;min-width:0;display:flex}.form-field>span{color:#556276;font-size:12px;font-weight:600}.form-field input,.form-field select{color:#28364b;background:#fff;border:1px solid #dce3ec;border-radius:8px;outline:none;width:100%;height:42px;padding:0 12px;transition:border-color .15s,box-shadow .15s}.form-field input:focus,.form-field select:focus{border-color:#4b87ef;box-shadow:0 0 0 3px #3478f61a}.form-actions{justify-content:flex-end;gap:10px;padding-bottom:30px;display:flex}.statusbar{z-index:60;height:var(--statusbar-height);color:#728095;background:#fff;border-top:1px solid #e1e7ef;justify-content:space-between;align-items:center;padding:0 18px;font-size:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.statusbar>div{align-items:center;gap:7px;display:flex}.footer-center{position:absolute;left:50%;transform:translate(-50%)}.dialog-mask{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a13208c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog-card{background:#fff;border-radius:13px;width:min(470px,100%);animation:.2s dialog-in;overflow:hidden;box-shadow:0 25px 70px #080f1947}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dialog-header{border-bottom:1px solid #e9edf3;justify-content:space-between;align-items:flex-start;padding:20px 22px 16px;display:flex}.dialog-header h2{color:#1d2a3f;margin:0;font-size:18px}.dialog-header p{color:#8995a6;margin:5px 0 0;font-size:11px}.dialog-close{color:#7d899a;background:0 0;border-radius:7px;width:30px;height:30px;font-size:23px;line-height:1}.dialog-close:hover{color:#344156;background:#f2f4f7}.dialog-body{flex-direction:column;gap:17px;padding:20px 22px;display:flex}.device-picture{background:#f6f9fd;border:1px solid #e5ebf3;border-radius:10px;align-items:center;gap:14px;padding:14px;display:flex}.device-board{color:#fff;background:#2e4059;border:5px solid #64758d;border-radius:8px;flex:none;place-items:center;width:58px;height:50px;font-size:9px;font-weight:700;display:grid;position:relative}.device-board i{background:#36d88b;border-radius:50%;width:6px;height:6px;position:absolute;bottom:4px;right:4px;box-shadow:0 0 6px #36d88b}.device-picture strong{color:#2d3a4f;font-size:13px}.device-picture p{color:#8190a4;margin:5px 0 0;font-size:11px;line-height:1.5}.dialog-help{background:#fff8eb;border-left:3px solid #eaaa45;border-radius:5px;padding:11px 13px}.dialog-help strong{color:#7b581d;font-size:11px}.dialog-help p{color:#987640;margin:4px 0 0;font-size:10px;line-height:1.5}.dialog-footer{background:#f8fafc;border-top:1px solid #e9edf3;justify-content:flex-end;gap:10px;padding:15px 22px;display:flex}.loading-icon{vertical-align:-2px;border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:13px;height:13px;margin-right:7px;animation:.8s linear infinite loading-rotate;display:inline-block}@keyframes loading-rotate{to{transform:rotate(360deg)}}.toast-message{z-index:100;color:#344154;background:#fff;border:1px solid #cbd4dd;border-radius:5px;align-items:center;gap:9px;max-width:min(420px,100vw - 44px);padding:12px 15px;font-size:12px;display:flex;position:fixed;bottom:68px;right:22px;box-shadow:0 8px 28px #192a3c24}.toast-message b{color:#216bd1;background:#dcecff;border-radius:50%;flex:0 0 18px;place-items:center;width:18px;height:18px;display:grid}.toast-message.success b{color:#20863d;background:#d9f4df}.toast-message.warning b{color:#8a5b00;background:#fff0c2}.toast-enter-active,.toast-leave-active{transition:opacity .2s,transform .2s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,-10px)}@media (width<=1050px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.system-information{grid-template-columns:repeat(2,1fr);row-gap:24px}.system-information>div:nth-child(2){border-right:0}.system-information>div:nth-child(3){padding-left:0}}@media (width<=760px){.application{--sidebar-width:72px}.topbar{padding:0 12px}.brand-text small{display:none}.hide-mobile{display:none!important}.topbar-status{gap:8px}.sidebar{width:72px}.sidebar .nav-label{display:none}.page-container{margin-left:72px;padding:20px 15px 35px}.page-header{align-items:flex-start}.metrics-grid,.form-grid{grid-template-columns:1fr}.attitude-content{flex-direction:column;gap:25px}.attitude-values{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.system-information{grid-template-columns:1fr}.system-information>div{border-bottom:1px solid #edf0f4;border-right:0;padding:0 0 15px}.system-information>div:last-child{border-bottom:0;padding-bottom:0}.connection-notice{flex-wrap:wrap;align-items:flex-start}.connection-notice .primary-button{width:100%}}@media (width<=520px){.brand-logo{display:none}.brand-text strong{max-width:130px}.connection-button{min-width:auto;padding:0 11px}.page-header{flex-direction:column;gap:14px}.page-actions,.page-actions button{width:100%}.attitude-indicator{width:190px;height:190px}.attitude-values{grid-template-columns:1fr}.dialog-footer button{flex:1}}.settings-page-wrapper{width:100%;min-width:0}.settings-page-wrapper,.settings-page-wrapper *{box-sizing:border-box}.parameters-page-wrapper{width:100%;min-width:0;min-height:100%}.parameters-page-wrapper,.parameters-page-wrapper *{box-sizing:border-box}
