@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{--color-primary: #0e0f0c;--color-background: #ffffff;--color-accent: #9fe870;--color-accent-dark: #163300;--color-mint: #e2f6d5;--color-secondary: #868685;--color-border: rgba(14, 15, 12, .12);--color-danger: #d03238;--color-warning: #ffd11a;--color-positive: #054d28;--font-family: "Inter", system-ui, -apple-system, sans-serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-display: 900;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 40px;--radius-pill: 9999px;--shadow-card: 0px 0px 0px 1px rgba(14, 15, 12, .12);--shadow-elevated: 0px 4px 12px rgba(14, 15, 12, .08), 0px 0px 0px 1px rgba(14, 15, 12, .12);--color-surface: #f8f9f7;--color-surface-light: #f0f2ed;--color-surface-muted: #e8ebe6;--color-text-warm: #454745;--color-sky: #4a9eff;--color-ground: #8B6914;--color-sidebar: #0e0f0c;--color-sidebar-hover: rgba(255, 255, 255, .08);--color-sidebar-text: rgba(255, 255, 255, .55);--color-subtle: rgba(14, 15, 12, .06);--color-danger-subtle: rgba(208, 50, 56, .1);--color-info-subtle: rgba(56, 200, 255, .1);--color-on-accent: #163300;--color-on-mint: #163300;--radius-card: 24px;--radius-input: 16px;--radius-nav: 12px;--sidebar-width: 72px;--topbar-height: 56px;--footer-height: 28px}[data-theme=dark]{--color-primary: #e8e8e6;--color-background: #141414;--color-accent: #9fe870;--color-accent-dark: #163300;--color-mint: rgba(159, 232, 112, .12);--color-secondary: #7a7a78;--color-border: rgba(255, 255, 255, .1);--color-danger: #f05656;--color-warning: #ffd11a;--color-positive: #4ade80;--shadow-card: 0px 0px 0px 1px rgba(255, 255, 255, .08);--shadow-elevated: 0px 4px 12px rgba(0, 0, 0, .3), 0px 0px 0px 1px rgba(255, 255, 255, .08);--color-surface: #1a1a1a;--color-surface-light: #1f1f1f;--color-surface-muted: #2a2a2a;--color-text-warm: #b0b0ae;--color-sky: #3a7fd4;--color-ground: #6b530f;--color-sidebar: #111111;--color-sidebar-hover: rgba(255, 255, 255, .06);--color-sidebar-text: rgba(255, 255, 255, .45);--color-subtle: rgba(255, 255, 255, .06);--color-danger-subtle: rgba(240, 86, 86, .12);--color-info-subtle: rgba(56, 200, 255, .12);--color-on-accent: #163300;--color-on-mint: #9fe870}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:var(--font-family),system-ui;font-weight:var(--font-weight-semibold);font-feature-settings:"calt";color:var(--color-primary);background:var(--color-background);line-height:1.5;min-height:100vh}img,svg{display:block;max-width:100%}button{font-family:inherit;font-feature-settings:"calt";cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-feature-settings:"calt"}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-feature-settings:"calt";line-height:1.2;font-weight:var(--font-weight-bold);color:var(--color-primary)}.display{font-weight:var(--font-weight-display);line-height:.85}h1{font-size:32px}h2{font-size:24px}h3{font-size:20px}h4{font-size:16px}p{font-weight:var(--font-weight-regular);line-height:1.5}.text-secondary{color:var(--color-secondary)}.text-small{font-size:13px}.text-mono{font-family:ui-monospace,SF Mono,Consolas,monospace;font-feature-settings:"calt"}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);font-weight:var(--font-weight-semibold);font-size:14px;transition:transform .15s ease,box-shadow .15s ease;user-select:none}.btn:hover{transform:scale(1.05)}.btn:active{transform:scale(.95)}.btn-primary{background:var(--color-accent);color:var(--color-accent-dark)}.btn-secondary{background:var(--color-mint);color:var(--color-accent-dark)}.btn-outline{background:transparent;color:var(--color-primary);box-shadow:var(--shadow-card)}.btn-danger{background:var(--color-danger);color:#fff}.card{background:var(--color-background);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--space-6)}.card-elevated{box-shadow:var(--shadow-elevated)}.flex{display:flex}.flex-col{flex-direction:column}.flex-center{align-items:center;justify-content:center}.flex-between{align-items:center;justify-content:space-between}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-7{padding:var(--space-7)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.w-full{width:100%}.rounded-pill{border-radius:var(--radius-pill)}.rounded-md{border-radius:var(--radius-md)}.shadow-card{box-shadow:var(--shadow-card)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}html[data-theme],html:not([data-theme]){transition:background-color .3s ease,color .3s ease}.page-enter-active,.page-leave-active{transition:opacity .25s ease}.page-enter-from,.page-leave-to{opacity:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.sidebar[data-v-df4db608]{width:var(--sidebar-width);height:100vh;position:fixed;top:0;left:0;z-index:100;background:var(--color-background);border-right:1px solid var(--color-border);transition:background-color .3s ease,border-color .3s ease;display:flex;flex-direction:column;align-items:center;padding:var(--space-4) 0 var(--space-4);box-sizing:border-box;overflow:hidden}.nav-items[data-v-df4db608]{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);width:100%;padding:0 var(--space-2);overflow-y:auto;overflow-x:hidden}.nav-items[data-v-df4db608]::-webkit-scrollbar{width:0}.nav-bottom[data-v-df4db608]{width:100%;padding:0 var(--space-2);margin-top:var(--space-2);flex-shrink:0}.nav-item[data-v-df4db608]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;height:56px;padding:var(--space-2) 0 var(--space-1);border-radius:var(--radius-nav);border:none;cursor:pointer;background:transparent;color:var(--color-secondary);transition:background-color .2s,color .2s;font-family:var(--font-family)}.nav-item[data-v-df4db608]:hover:not(.active){background:var(--color-surface);color:var(--color-primary)}.nav-item.active[data-v-df4db608]{background:var(--color-mint);color:var(--color-on-mint)}.nav-icon[data-v-df4db608]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0}.nav-icon[data-v-df4db608] svg{width:20px;height:20px}.nav-label[data-v-df4db608]{font-size:10px;font-weight:var(--font-weight-semibold);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px;text-align:center}.base-btn[data-v-e3c7d998]{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:var(--radius-pill);font-family:var(--font-family);font-weight:600;cursor:pointer;transition:transform .15s ease,opacity .15s ease;white-space:nowrap}.base-btn[data-v-e3c7d998]:hover:not(.disabled){transform:scale(1.05)}.base-btn[data-v-e3c7d998]:active:not(.disabled){transform:scale(.95)}.base-btn.disabled[data-v-e3c7d998]{opacity:.4;cursor:not-allowed}.base-btn.sm[data-v-e3c7d998]{padding:4px 12px;font-size:12px}.base-btn.md[data-v-e3c7d998]{padding:8px 18px;font-size:13px}.base-btn.primary[data-v-e3c7d998]{background:var(--color-accent);color:var(--color-on-accent)}.base-btn.secondary[data-v-e3c7d998]{background:var(--color-subtle);color:var(--color-primary)}.base-btn.outline[data-v-e3c7d998]{background:transparent;color:var(--color-primary);border:1px solid var(--color-border)}.base-btn.danger[data-v-e3c7d998]{background:var(--color-danger);color:var(--color-background)}.base-btn.danger-text[data-v-e3c7d998]{background:transparent;color:var(--color-danger)}.base-btn.ghost[data-v-e3c7d998]{background:transparent;color:var(--color-primary)}.modal-overlay[data-v-555eac1f]{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;background:#0e0f0c66;backdrop-filter:blur(4px)}.modal-dialog[data-v-555eac1f]{width:100%;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);overflow:visible;transition:background-color .3s ease,border-color .3s ease}.modal-header[data-v-555eac1f]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--color-background)}.modal-title[data-v-555eac1f]{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-primary)}.modal-close[data-v-555eac1f]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--color-secondary);cursor:pointer;transition:background-color .15s,color .15s}.modal-close[data-v-555eac1f]:hover{background:var(--color-subtle);color:var(--color-primary)}.modal-body[data-v-555eac1f]{padding:var(--space-6);overflow:visible}.modal-footer[data-v-555eac1f]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--color-background)}.modal-enter-active[data-v-555eac1f]{transition:opacity .2s ease}.modal-enter-active .modal-dialog[data-v-555eac1f]{transition:transform .2s ease,opacity .2s ease}.modal-leave-active[data-v-555eac1f]{transition:opacity .15s ease}.modal-leave-active .modal-dialog[data-v-555eac1f]{transition:transform .15s ease,opacity .15s ease}.modal-enter-from[data-v-555eac1f]{opacity:0}.modal-enter-from .modal-dialog[data-v-555eac1f]{opacity:0;transform:scale(.95) translateY(-8px)}.modal-leave-to[data-v-555eac1f]{opacity:0}.modal-leave-to .modal-dialog[data-v-555eac1f]{opacity:0;transform:scale(.95) translateY(-8px)}.base-input-wrapper[data-v-f91968b4]{position:relative;display:flex;align-items:center}.input-icon[data-v-f91968b4]{position:absolute;left:14px;color:var(--color-secondary);pointer-events:none}.base-input[data-v-f91968b4]{width:100%;height:44px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 14px;font-size:14px;font-family:var(--font-family);color:var(--color-primary);background:var(--color-background);outline:none;transition:border-color .2s ease,background-color .3s ease,color .3s ease}.has-icon .base-input[data-v-f91968b4]{padding-left:40px}.base-input[data-v-f91968b4]::placeholder{color:var(--color-secondary)}.base-input[data-v-f91968b4]:focus{border-color:var(--color-accent)}.base-dropdown[data-v-aa19686e]{position:relative}.dropdown-trigger[data-v-aa19686e]{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-family:var(--font-family),system-ui;background:transparent;border:1px solid var(--color-border);cursor:pointer;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);transition:color .2s,border-color .2s,background-color .2s}.dropdown-trigger[data-v-aa19686e]:hover{color:var(--color-primary);border-color:var(--color-accent);background:var(--color-subtle)}.dropdown-placeholder[data-v-aa19686e]{color:var(--color-tertiary, var(--color-secondary));font-weight:var(--font-weight-medium)}.is-block[data-v-aa19686e]{width:100%}.is-block .dropdown-trigger[data-v-aa19686e]{width:100%;height:36px;padding:5px 10px;border-radius:var(--radius-sm);background:var(--color-background);justify-content:space-between}.is-block .dropdown-trigger span[data-v-aa19686e]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.is-block .dropdown-trigger[data-v-aa19686e]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #9fe8701f}.is-block .dropdown-menu[data-v-aa19686e]{left:0;right:auto;width:100%;min-width:unset}.dropdown-chevron[data-v-aa19686e]{transition:transform .2s ease;flex-shrink:0}.dropdown-chevron.open[data-v-aa19686e]{transform:rotate(180deg)}.dropdown-menu[data-v-aa19686e]{position:absolute;top:calc(100% + 6px);right:0;min-width:160px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-elevated);padding:var(--space-1);z-index:100;transform-origin:top right}.dropdown-item[data-v-aa19686e]{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:13px;font-weight:var(--font-weight-medium);color:var(--color-primary);font-family:var(--font-family),system-ui;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.dropdown-item[data-v-aa19686e]:hover{background:var(--color-subtle)}.dropdown-item.active[data-v-aa19686e]{color:var(--color-on-mint);background:var(--color-mint)}.check-icon[data-v-aa19686e]{margin-left:auto;flex-shrink:0}.dropdown-enter-active[data-v-aa19686e]{transition:opacity .15s ease,transform .15s ease}.dropdown-leave-active[data-v-aa19686e]{transition:opacity .1s ease,transform .1s ease}.dropdown-enter-from[data-v-aa19686e],.dropdown-leave-to[data-v-aa19686e]{opacity:0;transform:scale(.95) translateY(-4px)}.transport-picker[data-v-fcb70ca2]{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:var(--space-2);margin-bottom:var(--space-5)}.transport-card[data-v-fcb70ca2]{position:relative;display:flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-secondary);font-family:var(--font-family),system-ui;cursor:pointer;overflow:hidden;transition:border-color .2s,color .2s,background-color .2s}.transport-card[data-v-fcb70ca2]:hover:not(.unsupported){border-color:var(--color-accent);color:var(--color-primary)}.transport-card.active[data-v-fcb70ca2]{border-color:var(--color-accent);background:var(--color-mint);color:var(--color-on-mint)}.transport-card.unsupported[data-v-fcb70ca2]{opacity:.45;cursor:pointer}.transport-icon[data-v-fcb70ca2]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-subtle);transition:background .2s}.transport-card.active .transport-icon[data-v-fcb70ca2]{background:#9fe87040}.transport-text[data-v-fcb70ca2]{display:flex;flex-direction:column;gap:1px;min-width:0;text-align:left}.transport-name[data-v-fcb70ca2]{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-primary);transition:color .2s;line-height:1.25;text-align:left;word-break:break-word}.transport-card.active .transport-name[data-v-fcb70ca2]{color:var(--color-on-mint)}.transport-card.unsupported .transport-name[data-v-fcb70ca2]{color:var(--color-secondary)}.transport-desc[data-v-fcb70ca2]{font-size:11px;font-weight:var(--font-weight-regular);color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transport-card.active .transport-desc[data-v-fcb70ca2]{color:var(--color-on-mint);opacity:.7}.transport-sim[data-v-fcb70ca2]{border-style:dashed;border-color:var(--color-accent)}.transport-sim .transport-icon[data-v-fcb70ca2]{color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.transport-sim[data-v-fcb70ca2]:hover{background:var(--color-mint);border-style:solid}.transport-na[data-v-fcb70ca2]{position:absolute;top:4px;right:6px;font-size:9px;font-weight:var(--font-weight-bold);color:var(--color-secondary);background:var(--color-subtle);padding:1px 5px;border-radius:var(--radius-pill);letter-spacing:.02em}.config-box[data-v-fcb70ca2]{background:var(--color-surface);border-radius:var(--radius-sm);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);min-height:60px}.config-label[data-v-fcb70ca2]{font-size:12px;font-weight:var(--font-weight-semibold);color:var(--color-secondary);text-transform:uppercase;letter-spacing:.04em}.config-row[data-v-fcb70ca2]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.config-grid[data-v-fcb70ca2]{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-3)}.config-field[data-v-fcb70ca2]{display:flex;flex-direction:column;gap:var(--space-2)}.baud-value[data-v-fcb70ca2]{font-variant-numeric:tabular-nums}.config-info[data-v-fcb70ca2]{display:flex;gap:var(--space-2);align-items:flex-start}.config-info-icon[data-v-fcb70ca2]{flex-shrink:0;color:var(--color-secondary);margin-top:1px}.config-info p[data-v-fcb70ca2]{font-size:12px;font-weight:var(--font-weight-regular);color:var(--color-secondary);line-height:1.5;margin:0}.config-hint[data-v-fcb70ca2]{font-size:12px;font-weight:var(--font-weight-regular);color:var(--color-secondary);line-height:1.5}.conn-error[data-v-fcb70ca2]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin-top:var(--space-4);background:var(--color-danger-subtle);color:var(--color-danger);font-size:13px;font-weight:var(--font-weight-medium);border-radius:var(--radius-sm)}.conn-error-icon[data-v-fcb70ca2]{flex-shrink:0}.conn-error-text[data-v-fcb70ca2]{flex:1}.conn-error-close[data-v-fcb70ca2]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--color-danger);cursor:pointer;transition:background .15s}.conn-error-close[data-v-fcb70ca2]:hover{background:#d0323826}.cancel-link[data-v-fcb70ca2]{font-size:13px;font-weight:var(--font-weight-semibold);color:var(--color-secondary);cursor:pointer;padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-family),system-ui;transition:color .15s,background .15s}.cancel-link[data-v-fcb70ca2]:hover{color:var(--color-primary);background:var(--color-subtle)}.port-picker[data-v-fcb70ca2]{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.port-select[data-v-fcb70ca2]{flex:1 1 160px;min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-primary);font-size:13px;font-family:var(--font-family),system-ui;cursor:pointer}.port-select[data-v-fcb70ca2]:focus{outline:none;border-color:var(--color-accent)}.refresh-btn[data-v-fcb70ca2]{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-secondary);font-size:12px;font-family:var(--font-family),system-ui;cursor:pointer;white-space:nowrap;transition:border-color .2s,color .2s}.refresh-btn[data-v-fcb70ca2]:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-primary)}.refresh-btn[data-v-fcb70ca2]:disabled{opacity:.5;cursor:not-allowed}.spinning[data-v-fcb70ca2],.spin[data-v-fcb70ca2]{animation:spin-fcb70ca2 1s linear infinite}@keyframes spin-fcb70ca2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.device-selector[data-v-dbc2c2ad]{display:flex;align-items:center;gap:var(--space-1);padding:2px;background:var(--color-bg-secondary);border-radius:var(--radius-pill)}.device-btn[data-v-dbc2c2ad]{display:flex;align-items:center;gap:4px;padding:3px 10px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.device-btn[data-v-dbc2c2ad]:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.device-btn.active[data-v-dbc2c2ad]{background:var(--color-accent);color:var(--color-on-accent)}.device-label[data-v-dbc2c2ad]{font-variant-numeric:tabular-nums}.topbar[data-v-ebc4d673]{position:relative;z-index:1000;height:var(--topbar-height);min-height:var(--topbar-height);background:var(--color-background);border-bottom:1px solid var(--color-border);padding:0 var(--space-6);display:flex;align-items:center;gap:var(--space-5);box-sizing:border-box;font-family:var(--font-family),system-ui;transition:background-color .3s ease,border-color .3s ease}.topbar-left[data-v-ebc4d673]{display:flex;align-items:baseline;flex-shrink:0}.app-name[data-v-ebc4d673]{font-size:18px;font-weight:var(--font-weight-bold);color:var(--color-primary);letter-spacing:-.01em}.app-subtitle[data-v-ebc4d673]{font-size:13px;font-weight:var(--font-weight-regular);color:var(--color-secondary);margin-left:var(--space-3)}.topbar-center[data-v-ebc4d673]{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.tele-divider[data-v-ebc4d673]{width:1px;height:24px;background:var(--color-border);flex-shrink:0}.tele-cell[data-v-ebc4d673]{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;transition:color .2s}.tele-cell .tele-icon[data-v-ebc4d673]{color:var(--color-secondary);flex-shrink:0;transition:color .2s}.tele-cell.ok .tele-icon[data-v-ebc4d673]{color:var(--color-accent)}.tele-cell.warn .tele-icon[data-v-ebc4d673],.tele-cell.warn[data-v-ebc4d673]{color:var(--color-danger)}.tele-data[data-v-ebc4d673]{display:flex;flex-direction:column;line-height:1}.tele-value[data-v-ebc4d673]{font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-primary);font-variant-numeric:tabular-nums}.tele-value small[data-v-ebc4d673]{font-size:10px;font-weight:var(--font-weight-medium);color:var(--color-secondary);margin-left:1px}.tele-val-sep[data-v-ebc4d673]{font-size:10px;font-weight:var(--font-weight-regular);color:var(--color-secondary);margin:0 2px}.tele-sub[data-v-ebc4d673]{font-size:10px;font-weight:var(--font-weight-medium);color:var(--color-secondary);margin-top:1px;letter-spacing:.01em}.batt-icon[data-v-ebc4d673]{display:inline-flex;align-items:center;gap:0;flex-shrink:0}.batt-shell[data-v-ebc4d673]{width:22px;height:12px;border:1.5px solid var(--color-secondary);border-radius:2px;overflow:hidden;position:relative}.batt-fill[data-v-ebc4d673]{position:absolute;left:0;top:0;bottom:0;border-radius:1px;transition:width .5s ease,background .5s ease}.batt-tip[data-v-ebc4d673]{width:3px;height:6px;background:var(--color-secondary);border-radius:0 1px 1px 0;margin-left:-.5px}.clickable[data-v-ebc4d673]{cursor:pointer;border:none;background:none;padding:3px 8px;border-radius:var(--radius-sm);font-family:var(--font-family),system-ui;transition:background-color .15s}.clickable[data-v-ebc4d673]:hover{background:var(--color-subtle)}.tele-popover-wrap[data-v-ebc4d673]{position:relative}.tele-popover[data-v-ebc4d673]{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:200px;padding:var(--space-3);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-elevated);z-index:100}.pop-title[data-v-ebc4d673]{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.pop-row[data-v-ebc4d673]{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:3px 0}.pop-row span[data-v-ebc4d673]:first-child{color:var(--color-secondary);font-weight:var(--font-weight-medium)}.pop-row span[data-v-ebc4d673]:last-child{color:var(--color-primary);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.pop-divider[data-v-ebc4d673]{border-top:1px solid var(--color-border);margin:4px 0}.rtk-badge[data-v-ebc4d673]{display:inline-block;margin-left:4px;padding:0 4px;font-size:9px;font-weight:700;letter-spacing:.03em;border-radius:3px;line-height:15px;vertical-align:middle}.rtk-badge.fixed[data-v-ebc4d673]{background:var(--color-accent);color:var(--color-on-accent)}.rtk-badge.float[data-v-ebc4d673]{background:var(--color-warning, #d69e2e);color:#fff}.rtk-badge-pop[data-v-ebc4d673]{font-weight:600;font-size:12px}.rtk-badge-pop.fixed[data-v-ebc4d673]{color:var(--color-accent)}.rtk-badge-pop.float[data-v-ebc4d673]{color:var(--color-warning, #d69e2e)}.rtk-badge-pop.none[data-v-ebc4d673]{color:var(--color-secondary)}.precheck-popover[data-v-ebc4d673]{min-width:240px}.precheck-row[data-v-ebc4d673]{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.precheck-dot[data-v-ebc4d673]{width:7px;height:7px;border-radius:50%;flex-shrink:0}.precheck-ok[data-v-ebc4d673]{background:var(--color-accent)}.precheck-warning[data-v-ebc4d673]{background:var(--color-warning)}.precheck-error[data-v-ebc4d673]{background:var(--color-danger)}.precheck-unknown[data-v-ebc4d673]{background:var(--color-secondary);opacity:.4}.precheck-label[data-v-ebc4d673]{font-weight:var(--font-weight-medium);color:var(--color-primary);min-width:60px}.precheck-detail[data-v-ebc4d673]{margin-left:auto;font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-variant-numeric:tabular-nums;font-size:12px}.precheck-row:has(.precheck-error) .precheck-label[data-v-ebc4d673],.precheck-row:has(.precheck-error) .precheck-detail[data-v-ebc4d673]{color:var(--color-danger)}.precheck-row:has(.precheck-warning) .precheck-detail[data-v-ebc4d673]{color:var(--color-warning)}.arm-modal-body[data-v-ebc4d673]{display:flex;flex-direction:column;gap:16px}.arm-modal-status[data-v-ebc4d673]{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--color-surface);border-radius:var(--radius-sm)}.arm-status-dot[data-v-ebc4d673]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-armed[data-v-ebc4d673]{background:var(--color-danger);box-shadow:0 0 6px var(--color-danger)}.dot-disarmed[data-v-ebc4d673]{background:var(--color-secondary)}.arm-status-text[data-v-ebc4d673]{font-size:14px;font-weight:var(--font-weight-bold);color:var(--color-primary)}.arm-modal-actions[data-v-ebc4d673]{display:flex;flex-direction:column;gap:6px}.arm-btn[data-v-ebc4d673]{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-primary);font-family:var(--font-family);text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.arm-btn svg[data-v-ebc4d673]{flex-shrink:0}.arm-btn-text[data-v-ebc4d673]{display:flex;flex-direction:column;gap:2px}.arm-btn-title[data-v-ebc4d673]{font-size:14px;font-weight:var(--font-weight-semibold)}.arm-btn-desc[data-v-ebc4d673]{font-size:12px;color:var(--color-secondary);font-weight:var(--font-weight-regular);line-height:1.3}.arm-btn[data-v-ebc4d673]:hover{background:var(--color-subtle)}.arm-btn-arm svg[data-v-ebc4d673]{color:var(--color-accent)}.arm-btn-arm[data-v-ebc4d673]:hover{border-color:var(--color-accent)}.arm-btn-disarm svg[data-v-ebc4d673]{color:var(--color-warning)}.arm-btn-disarm[data-v-ebc4d673]:hover{border-color:var(--color-warning)}.arm-btn-force[data-v-ebc4d673]{color:var(--color-danger)}.arm-btn-force svg[data-v-ebc4d673]{color:var(--color-danger)}.arm-btn-force[data-v-ebc4d673]:hover{background:var(--color-danger-subtle);border-color:var(--color-danger)}.mode-modal-current[data-v-ebc4d673]{font-size:13px;color:var(--color-secondary);margin-bottom:12px}.mode-modal-current strong[data-v-ebc4d673]{color:var(--color-primary)}.mode-modal-grid[data-v-ebc4d673]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:420px;overflow-y:auto}.mode-modal-card[data-v-ebc4d673]{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;text-align:left;font-family:var(--font-family);transition:border-color .15s,background .15s,transform .1s}.mode-modal-card[data-v-ebc4d673]:hover{border-color:var(--color-accent);background:var(--color-background);transform:scale(1.02)}.mode-modal-card.active[data-v-ebc4d673]{border-color:var(--color-accent);background:var(--color-mint)}.mode-modal-name[data-v-ebc4d673]{font-size:13px;font-weight:var(--font-weight-bold);color:var(--color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-modal-card.active .mode-modal-name[data-v-ebc4d673]{color:var(--color-on-mint)}.mode-modal-desc[data-v-ebc4d673]{font-size:11px;color:var(--color-secondary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mode-modal-card.active .mode-modal-desc[data-v-ebc4d673]{color:var(--color-on-mint);opacity:.8}.pop-enter-active[data-v-ebc4d673]{transition:opacity .15s ease,transform .15s ease}.pop-leave-active[data-v-ebc4d673]{transition:opacity .1s ease,transform .1s ease}.pop-enter-from[data-v-ebc4d673],.pop-leave-to[data-v-ebc4d673]{opacity:0;transform:translate(-50%) translateY(-4px) scale(.95)}.topbar-right[data-v-ebc4d673]{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0;margin-left:auto}.rec-dot[data-v-ebc4d673]{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--color-secondary);transition:background .3s}.rec-dot.active[data-v-ebc4d673]{background:var(--color-danger);animation:rec-pulse-ebc4d673 1.5s ease-in-out infinite}@keyframes rec-pulse-ebc4d673{0%,to{opacity:1}50%{opacity:.4}}.tlog-actions[data-v-ebc4d673]{display:flex;flex-direction:column;gap:4px;margin-top:var(--space-2)}.pop-action[data-v-ebc4d673]{width:100%;padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-secondary);font-size:12px;font-weight:var(--font-weight-semibold);font-family:var(--font-family);cursor:pointer;text-align:center;transition:background .15s,border-color .15s}.pop-action[data-v-ebc4d673]:hover{background:var(--color-subtle);color:var(--color-primary)}.pop-action-accent[data-v-ebc4d673]{color:var(--color-danger)}.pop-action-accent[data-v-ebc4d673]:hover{border-color:var(--color-danger);background:var(--color-danger-subtle)}.topbar-btn[data-v-ebc4d673]{display:inline-flex;align-items:center;gap:6px;font-weight:var(--font-weight-semibold);font-size:13px;padding:6px 16px;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);cursor:pointer;white-space:nowrap;font-family:var(--font-family),system-ui;transition:transform .15s,background-color .2s,border-color .2s}.topbar-btn[data-v-ebc4d673]:hover{transform:scale(1.03);background:var(--color-subtle)}.topbar-btn-icon[data-v-ebc4d673]{flex-shrink:0}.topbar-btn-primary[data-v-ebc4d673]{background:var(--color-accent);color:var(--color-on-accent);border-color:transparent}.topbar-btn-primary[data-v-ebc4d673]:hover{transform:scale(1.03);background:var(--color-accent)}.topbar-btn-primary.is-connected[data-v-ebc4d673]{background:var(--color-mint);color:var(--color-on-mint)}.topbar-btn-primary.is-connecting[data-v-ebc4d673]{background:var(--color-subtle);color:var(--color-secondary);border-color:var(--color-border);pointer-events:none}.topbar-btn-reboot[data-v-ebc4d673]{background:var(--color-danger-subtle);color:var(--color-danger);border-color:var(--color-danger)}.topbar-btn-reboot[data-v-ebc4d673]:hover{background:var(--color-danger);color:#fff;transform:scale(1.03)}.rebooting-body[data-v-ebc4d673]{display:flex;flex-direction:column;align-items:center;padding:var(--space-4) 0}.rebooting-spinner[data-v-ebc4d673]{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin-ebc4d673 .8s linear infinite;margin-bottom:var(--space-4)}.rebooting-text[data-v-ebc4d673]{font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-primary);margin:0;text-align:center}.rebooting-timeout[data-v-ebc4d673]{font-size:13px;color:var(--color-danger);margin:var(--space-3) 0 0;text-align:center;font-weight:var(--font-weight-semibold)}@keyframes spin-ebc4d673{to{transform:rotate(360deg)}}.spin[data-v-ebc4d673]{animation:spin-ebc4d673 1s linear infinite}@media (max-width: 1400px){.topbar-center[data-v-ebc4d673]{gap:var(--space-2)}.tele-p5[data-v-ebc4d673],.topbar-reboot-responsive[data-v-ebc4d673]{display:none}}@media (max-width: 1300px){.tele-p4[data-v-ebc4d673],.app-subtitle[data-v-ebc4d673]{display:none}}@media (max-width: 1200px){.tele-p3[data-v-ebc4d673]{display:none}}@media (max-width: 1100px){.tele-p2[data-v-ebc4d673]{display:none}}@media (max-width: 1000px){.tele-p1[data-v-ebc4d673]{display:none}}.footer[data-v-ce41f465]{position:relative;z-index:1001;flex-shrink:0}.footer-bar[data-v-ce41f465]{height:var(--footer-height);display:flex;align-items:center;padding:0 var(--space-4);background:var(--color-background);border-top:1px solid var(--color-border);font-size:11px;font-family:var(--font-family),system-ui;gap:var(--space-3);transition:background-color .3s,border-color .3s}.footer-left[data-v-ce41f465]{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;overflow:hidden}.fi[data-v-ce41f465]{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.fi-l[data-v-ce41f465]{font-weight:var(--font-weight-medium);color:var(--color-secondary)}.fi-v[data-v-ce41f465]{font-weight:var(--font-weight-semibold);color:var(--color-primary);font-variant-numeric:tabular-nums}.fi-pct[data-v-ce41f465]{display:inline-block;min-width:36px;text-align:right}.c-warn[data-v-ce41f465]{color:var(--color-warning)}.c-err[data-v-ce41f465]{color:var(--color-danger)}.fi-btn[data-v-ce41f465]{border:none;background:none;cursor:pointer;font-family:inherit;font-size:inherit;border-radius:var(--radius-sm);padding:1px 4px;margin:-1px -4px;transition:background-color .15s}.fi-btn[data-v-ce41f465]:hover{background:var(--color-subtle)}.fi-chevron[data-v-ce41f465]{color:var(--color-secondary);flex-shrink:0;transition:transform .2s;margin-left:1px}.fi-chevron.open[data-v-ce41f465]{transform:rotate(180deg)}.fi-sep[data-v-ce41f465]{width:1px;height:12px;background:var(--color-border);flex-shrink:0}.footer-status[data-v-ce41f465]{display:flex;align-items:center;gap:6px;max-width:360px;min-width:120px;padding:0 var(--space-3);height:100%;border:none;background:none;cursor:pointer;font-family:var(--font-family),system-ui;flex-shrink:0}.status-dot[data-v-ce41f465]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sev-error[data-v-ce41f465]{background:var(--color-danger)}.sev-warn[data-v-ce41f465]{background:var(--color-warning)}.sev-info[data-v-ce41f465]{background:var(--color-secondary)}.status-text[data-v-ce41f465]{font-size:11px;font-weight:var(--font-weight-medium);color:var(--color-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SF Mono,Consolas,monospace}.status-chevron[data-v-ce41f465]{color:var(--color-secondary);flex-shrink:0;transition:transform .2s}.status-chevron.open[data-v-ce41f465]{transform:rotate(180deg)}.msg-panel[data-v-ce41f465],.stats-panel[data-v-ce41f465]{position:absolute;bottom:var(--footer-height);left:0;background:var(--color-background);border-top:1px solid var(--color-border);box-shadow:0 -4px 12px #00000014;display:flex;flex-direction:column;z-index:50}.msg-panel[data-v-ce41f465]{right:0;max-height:320px}.stats-panel[data-v-ce41f465]{width:300px}.msg-header[data-v-ce41f465]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border)}.msg-title[data-v-ce41f465]{font-size:11px;font-weight:var(--font-weight-bold);color:var(--color-secondary);text-transform:uppercase;letter-spacing:.05em}.msg-count[data-v-ce41f465]{font-size:10px;font-weight:var(--font-weight-bold);color:var(--color-secondary);background:var(--color-subtle);padding:1px 8px;border-radius:var(--radius-pill)}.msg-list[data-v-ce41f465]{flex:1;overflow-y:auto;padding:var(--space-1) 0}.msg-empty[data-v-ce41f465]{text-align:center;padding:var(--space-4);font-size:11px;color:var(--color-secondary)}.msg-item[data-v-ce41f465]{display:flex;align-items:center;gap:var(--space-2);padding:3px var(--space-4);font-size:11px}.msg-item[data-v-ce41f465]:hover{background:var(--color-subtle)}.msg-dot[data-v-ce41f465]{width:5px;height:5px;border-radius:50%;flex-shrink:0}.msg-time[data-v-ce41f465]{font-family:ui-monospace,SF Mono,Consolas,monospace;font-weight:var(--font-weight-medium);color:var(--color-secondary);flex-shrink:0;font-variant-numeric:tabular-nums}.msg-text[data-v-ce41f465]{font-family:ui-monospace,SF Mono,Consolas,monospace;font-weight:var(--font-weight-medium);color:var(--color-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-grid[data-v-ce41f465]{display:grid;grid-template-columns:1fr auto;gap:0;padding:var(--space-2) 0}.stat-l[data-v-ce41f465],.stat-v[data-v-ce41f465]{padding:3px var(--space-4);font-size:11px}.stat-l[data-v-ce41f465]{font-weight:var(--font-weight-medium);color:var(--color-secondary)}.stat-v[data-v-ce41f465]{font-weight:var(--font-weight-semibold);color:var(--color-primary);font-variant-numeric:tabular-nums;text-align:right;font-family:ui-monospace,SF Mono,Consolas,monospace}.stats-reset[data-v-ce41f465]{border:none;background:var(--color-subtle);cursor:pointer;font-size:10px;font-weight:var(--font-weight-bold);color:var(--color-secondary);padding:1px 8px;border-radius:var(--radius-pill);font-family:inherit;transition:background-color .15s,color .15s}.stats-reset[data-v-ce41f465]:hover{background:var(--color-border);color:var(--color-primary)}.panel-enter-active[data-v-ce41f465]{transition:opacity .2s,transform .2s}.panel-leave-active[data-v-ce41f465]{transition:opacity .15s,transform .15s}.panel-enter-from[data-v-ce41f465],.panel-leave-to[data-v-ce41f465]{opacity:0;transform:translateY(8px)}.dlg-overlay[data-v-f3a039c0]{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000059;backdrop-filter:blur(2px)}.dlg-box[data-v-f3a039c0]{width:420px;max-width:calc(100vw - 32px);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 40px #0000002e,0 2px 8px #00000014;outline:none;overflow:hidden}.dlg-title[data-v-f3a039c0]{padding:16px 20px 0;font-size:15px;font-weight:700;color:var(--color-primary)}.dlg-body[data-v-f3a039c0]{padding:16px 20px}.dlg-icon-row[data-v-f3a039c0]{display:flex;align-items:flex-start;gap:12px}.dlg-icon[data-v-f3a039c0]{flex-shrink:0;margin-top:1px}.dlg-icon-info[data-v-f3a039c0]{color:var(--color-accent)}.dlg-icon-warning[data-v-f3a039c0]{color:var(--color-warning)}.dlg-icon-danger[data-v-f3a039c0]{color:var(--color-danger)}.dlg-message[data-v-f3a039c0]{margin:0;font-size:14px;line-height:1.5;color:var(--color-primary);word-break:break-word}.dlg-input[data-v-f3a039c0]{display:block;width:100%;margin-top:12px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);font-family:var(--font-family);font-size:14px;outline:none;transition:border-color .2s}.dlg-input[data-v-f3a039c0]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #9fe8701f}.dlg-footer[data-v-f3a039c0]{display:flex;justify-content:flex-end;gap:8px;padding:0 20px 16px}.dlg-btn[data-v-f3a039c0]{padding:7px 20px;border:none;border-radius:var(--radius-pill);font-family:var(--font-family);font-size:13px;font-weight:600;cursor:pointer;transition:transform .1s,box-shadow .15s,background .15s}.dlg-btn[data-v-f3a039c0]:hover{transform:scale(1.03)}.dlg-btn-cancel[data-v-f3a039c0]{background:var(--color-surface);color:var(--color-secondary);border:1px solid var(--color-border)}.dlg-btn-cancel[data-v-f3a039c0]:hover{border-color:var(--color-primary);color:var(--color-primary)}.dlg-btn-confirm[data-v-f3a039c0]{background:var(--color-accent);color:var(--color-on-accent)}.dlg-btn-confirm[data-v-f3a039c0]:hover{box-shadow:0 2px 12px #9fe87059}.dlg-btn-danger[data-v-f3a039c0]{background:var(--color-danger);color:#fff}.dlg-btn-danger[data-v-f3a039c0]:hover{box-shadow:0 2px 12px #d0323859}.dlg-fade-enter-active[data-v-f3a039c0]{transition:opacity .2s ease}.dlg-fade-enter-active .dlg-box[data-v-f3a039c0]{transition:transform .2s ease,opacity .2s ease}.dlg-fade-leave-active[data-v-f3a039c0]{transition:opacity .15s ease}.dlg-fade-leave-active .dlg-box[data-v-f3a039c0]{transition:transform .15s ease,opacity .15s ease}.dlg-fade-enter-from[data-v-f3a039c0]{opacity:0}.dlg-fade-enter-from .dlg-box[data-v-f3a039c0]{transform:scale(.95);opacity:0}.dlg-fade-leave-to[data-v-f3a039c0]{opacity:0}.dlg-fade-leave-to .dlg-box[data-v-f3a039c0]{transform:scale(.95);opacity:0}.conn-toast[data-v-f67e7c8f]{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:99998;pointer-events:auto}.toast-inner[data-v-f67e7c8f]{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 14px;background:var(--color-danger);color:#fff;border-radius:var(--radius-pill);box-shadow:0 6px 20px -4px #d0323859;font-size:13px;font-weight:var(--font-weight-semibold);white-space:nowrap}.toast-icon-wrap[data-v-f67e7c8f]{position:relative;width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-icon[data-v-f67e7c8f]{position:relative;z-index:1}.toast-pulse[data-v-f67e7c8f]{position:absolute;inset:-3px;border-radius:50%;background:#ffffff38;animation:toast-pulse-f67e7c8f 1.8s ease-out infinite}@keyframes toast-pulse-f67e7c8f{0%{opacity:.55;transform:scale(.85)}to{opacity:0;transform:scale(1.5)}}.toast-msg[data-v-f67e7c8f]{flex:1}.toast-reconnect[data-v-f67e7c8f]{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-pill);background:#ffffff26;color:#fff;font-size:12px;font-weight:var(--font-weight-semibold);font-family:var(--font-family);cursor:pointer;transition:background .15s}.toast-reconnect[data-v-f67e7c8f]:hover{background:#ffffff42}.toast-close[data-v-f67e7c8f]{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:#fffc;cursor:pointer;padding:0;flex-shrink:0;transition:background .15s,color .15s}.toast-close[data-v-f67e7c8f]:hover{background:#ffffff2e;color:#fff}@keyframes spin-f67e7c8f{to{transform:rotate(360deg)}}.spin[data-v-f67e7c8f]{animation:spin-f67e7c8f .9s linear infinite}.toast-slide-enter-active[data-v-f67e7c8f]{transition:opacity .22s ease-out,transform .22s cubic-bezier(.22,1,.36,1)}.toast-slide-leave-active[data-v-f67e7c8f]{transition:opacity .18s ease,transform .18s ease}.toast-slide-enter-from[data-v-f67e7c8f]{opacity:0;transform:translate(-50%) translateY(-12px)}.toast-slide-leave-to[data-v-f67e7c8f]{opacity:0;transform:translate(-50%) translateY(-8px)}.close-confirm-msg[data-v-f67e7c8f]{margin:0;font-size:14px;line-height:1.6;color:var(--color-primary);white-space:pre-line}.update-toast[data-v-381c88cb]{position:fixed;left:20px;bottom:20px;z-index:99997;display:flex;align-items:center;gap:12px;min-width:260px;max-width:340px;padding:10px 14px;background:var(--color-surface-elevated, var(--color-surface));color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--radius-md, 12px);box-shadow:0 8px 24px -8px #0003;font-size:13px}.update-toast-body[data-v-381c88cb]{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.update-toast-msg[data-v-381c88cb]{font-weight:var(--font-weight-semibold);color:var(--color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.update-toast-pct[data-v-381c88cb]{font-size:12px;font-variant-numeric:tabular-nums;color:var(--color-secondary);flex-shrink:0}.update-progress-track[data-v-381c88cb]{height:4px;width:100%;background:var(--color-border);border-radius:2px;overflow:hidden}.update-progress-fill[data-v-381c88cb]{height:100%;background:var(--color-accent);transition:width .2s ease;border-radius:2px}.update-progress-fill.indeterminate[data-v-381c88cb]{width:40%!important;animation:update-indet-381c88cb 1.2s ease-in-out infinite}@keyframes update-indet-381c88cb{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes spin-381c88cb{to{transform:rotate(360deg)}}.spin[data-v-381c88cb]{animation:spin-381c88cb .9s linear infinite;color:var(--color-accent);flex-shrink:0}.update-slide-enter-active[data-v-381c88cb]{transition:opacity .22s ease-out,transform .22s cubic-bezier(.22,1,.36,1)}.update-slide-leave-active[data-v-381c88cb]{transition:opacity .18s ease,transform .18s ease}.update-slide-enter-from[data-v-381c88cb]{opacity:0;transform:translateY(12px)}.update-slide-leave-to[data-v-381c88cb]{opacity:0;transform:translateY(8px)}.update-modal-msg[data-v-381c88cb]{margin:0;font-size:14px;line-height:1.6;color:var(--color-primary);white-space:pre-line}.update-url-box[data-v-381c88cb]{margin-top:12px;padding:8px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm, 8px);font-size:12px;color:var(--color-secondary);word-break:break-all}.update-url-box code[data-v-381c88cb]{font-family:var(--font-family-mono, ui-monospace, monospace)}.rpb[data-v-db9dc937]{position:fixed;top:0;left:0;right:0;height:3px;z-index:100000;pointer-events:none;overflow:hidden;background:transparent}.rpb-bar[data-v-db9dc937]{position:absolute;top:0;left:0;height:100%;width:40%;border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:linear-gradient(90deg,transparent 0%,var(--color-accent) 50%,var(--color-accent-dark, var(--color-accent)) 100%);box-shadow:0 0 8px var(--color-accent);animation:rpb-slide-db9dc937 1.1s ease-in-out infinite}@keyframes rpb-slide-db9dc937{0%{left:-40%;width:40%}50%{width:55%}to{left:100%;width:40%}}.rpb-fade-enter-active[data-v-db9dc937]{transition:opacity .15s ease-out}.rpb-fade-leave-active[data-v-db9dc937]{transition:opacity .25s ease-out}.rpb-fade-enter-from[data-v-db9dc937],.rpb-fade-leave-to[data-v-db9dc937]{opacity:0}.ble-picker[data-v-2e4a7f5b]{min-height:100px}.ble-scanning[data-v-2e4a7f5b]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-secondary);font-size:13px;padding:var(--space-4) 0}.ble-hint[data-v-2e4a7f5b]{font-size:13px;color:var(--color-secondary);margin-bottom:var(--space-3)}.spin-icon[data-v-2e4a7f5b]{animation:spin-2e4a7f5b 1s linear infinite}@keyframes spin-2e4a7f5b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ble-device-list[data-v-2e4a7f5b]{display:flex;flex-direction:column;gap:var(--space-1);max-height:300px;overflow-y:auto}.ble-device-item[data-v-2e4a7f5b]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-primary);font-size:13px;font-family:var(--font-family),system-ui;cursor:pointer;transition:border-color .2s,background-color .2s}.ble-device-item[data-v-2e4a7f5b]:hover{border-color:var(--color-accent);background:var(--color-mint);color:var(--color-on-mint)}.ble-device-name[data-v-2e4a7f5b]{font-weight:var(--font-weight-semibold)}.ble-device-id[data-v-2e4a7f5b]{font-size:11px;color:var(--color-secondary);font-family:monospace}.ble-device-item:hover .ble-device-id[data-v-2e4a7f5b]{color:var(--color-on-mint);opacity:.7}.wz-overlay[data-v-68dffdbe]{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;background:#0e0f0c73;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:24px}[data-theme=dark] .wz-overlay[data-v-68dffdbe]{background:#0000008c}.wz-card[data-v-68dffdbe]{width:100%;max-width:460px;background:var(--color-background);border-radius:var(--radius-lg);box-shadow:0 16px 64px #0000001f,0 0 0 1px var(--color-border);display:flex;flex-direction:column;overflow:hidden}.wz-dots[data-v-68dffdbe]{display:flex;justify-content:center;gap:6px;padding:20px 0 0}.wz-dot[data-v-68dffdbe]{width:6px;height:6px;border-radius:50%;background:var(--color-border);border:none;padding:0;cursor:pointer;transition:all .25s ease}.wz-dot.current[data-v-68dffdbe]{background:var(--color-primary);width:18px;border-radius:3px}.wz-dot.past[data-v-68dffdbe]{background:var(--color-secondary);opacity:.4}.wz-body[data-v-68dffdbe]{position:relative;padding:24px 32px 16px;min-height:340px;overflow:hidden}.wz-step[data-v-68dffdbe]{display:flex;flex-direction:column}.wz-step h2[data-v-68dffdbe]{font-size:20px;font-weight:700;margin:0 0 6px;color:var(--color-primary)}.wz-step h3[data-v-68dffdbe]{font-size:15px;font-weight:600;margin:0 0 10px;color:var(--color-primary)}.wz-sub[data-v-68dffdbe]{font-size:13px;font-weight:400;color:var(--color-secondary);line-height:1.55;margin:0 0 20px}.wz-label[data-v-68dffdbe]{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--color-accent);margin:0 0 10px}.wz-divider[data-v-68dffdbe]{height:1px;background:var(--color-border);margin:18px 0}.wz-welcome[data-v-68dffdbe]{padding-top:32px;padding-bottom:16px}.wz-welcome h2[data-v-68dffdbe]{font-size:24px;margin-bottom:10px}.wz-welcome .wz-sub[data-v-68dffdbe]{max-width:380px}.wz-lang[data-v-68dffdbe]{display:flex;gap:10px;margin-bottom:4px}.wz-lang button[data-v-68dffdbe]{flex:1;padding:12px;border-radius:var(--radius-sm);background:var(--color-surface);border:1.5px solid transparent;font-size:14px;font-weight:600;color:var(--color-primary);cursor:pointer;transition:border-color .15s,background .15s}.wz-lang button[data-v-68dffdbe]:hover{background:var(--color-surface-light)}.wz-lang button.on[data-v-68dffdbe]{border-color:var(--color-accent);background:var(--color-mint)}.wz-themes[data-v-68dffdbe]{display:flex;gap:10px}.wz-theme[data-v-68dffdbe]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 8px 12px;border-radius:var(--radius-sm);background:var(--color-surface);border:1.5px solid transparent;font-size:12px;font-weight:600;color:var(--color-secondary);cursor:pointer;transition:border-color .15s,background .15s}.wz-theme[data-v-68dffdbe]:hover{background:var(--color-surface-light)}.wz-theme.on[data-v-68dffdbe]{border-color:var(--color-accent);background:var(--color-mint);color:var(--color-primary)}.wz-theme-swatch[data-v-68dffdbe]{width:40px;height:28px;border-radius:6px;display:block}.sw-light[data-v-68dffdbe]{background:#f4f5f2;box-shadow:inset 0 0 0 1px #0e0f0c1a}.sw-dark[data-v-68dffdbe]{background:#222;box-shadow:inset 0 0 0 1px #ffffff14}.sw-system[data-v-68dffdbe]{background:linear-gradient(135deg,#f4f5f2 50%,#222 50%);box-shadow:inset 0 0 0 1px #0e0f0c1a}.wz-conn-list[data-v-68dffdbe]{display:flex;flex-direction:column;gap:1px;background:var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.wz-conn[data-v-68dffdbe]{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;background:var(--color-surface)}.wz-conn-tag[data-v-68dffdbe]{flex-shrink:0;width:38px;padding:3px 0;text-align:center;font-size:10px;font-weight:700;letter-spacing:.5px;border-radius:4px;background:var(--color-subtle);color:var(--color-secondary);margin-top:2px}.wz-conn strong[data-v-68dffdbe]{font-size:13px;font-weight:600;color:var(--color-primary);display:block;margin-bottom:1px}.wz-conn p[data-v-68dffdbe]{font-size:12px;color:var(--color-secondary);line-height:1.4;margin:0}.wz-feat-list[data-v-68dffdbe]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}.wz-feat-list li[data-v-68dffdbe]{font-size:13px;font-weight:400;color:var(--color-secondary);line-height:1.5;padding:9px 0;border-bottom:1px solid var(--color-border)}.wz-feat-list li[data-v-68dffdbe]:last-child{border-bottom:none}.wz-feat-list b[data-v-68dffdbe]{font-weight:600;color:var(--color-primary)}.wz-footer[data-v-68dffdbe]{display:flex;justify-content:space-between;align-items:center;padding:12px 32px 24px}.wz-btn[data-v-68dffdbe]{display:inline-flex;align-items:center;padding:9px 22px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;cursor:pointer;border:none;transition:background .15s,color .15s}.wz-btn.primary[data-v-68dffdbe]{background:var(--color-accent);color:var(--color-on-accent)}.wz-btn.primary[data-v-68dffdbe]:hover{filter:brightness(1.05)}.wz-btn.ghost[data-v-68dffdbe]{background:transparent;color:var(--color-secondary)}.wz-btn.ghost[data-v-68dffdbe]:hover{color:var(--color-primary);background:var(--color-subtle)}.wz-overlay-enter-active[data-v-68dffdbe]{transition:opacity .25s ease}.wz-overlay-leave-active[data-v-68dffdbe]{transition:opacity .35s ease}.wz-overlay-enter-from[data-v-68dffdbe],.wz-overlay-leave-to[data-v-68dffdbe]{opacity:0}.wz-card-enter-active[data-v-68dffdbe]{transition:all .35s cubic-bezier(.16,1,.3,1)}.wz-card-leave-active[data-v-68dffdbe]{transition:all .25s ease}.wz-card-enter-from[data-v-68dffdbe]{opacity:0;transform:scale(.95) translateY(12px)}.wz-card-leave-to[data-v-68dffdbe]{opacity:0;transform:scale(.97) translateY(6px)}.sl-enter-active[data-v-68dffdbe],.sl-leave-active[data-v-68dffdbe],.sr-enter-active[data-v-68dffdbe],.sr-leave-active[data-v-68dffdbe]{transition:all .25s ease;position:absolute;width:calc(100% - 64px)}.sl-enter-from[data-v-68dffdbe]{opacity:0;transform:translate(30px)}.sl-leave-to[data-v-68dffdbe],.sr-enter-from[data-v-68dffdbe]{opacity:0;transform:translate(-30px)}.sr-leave-to[data-v-68dffdbe]{opacity:0;transform:translate(30px)}.prompt-body[data-v-5439dc7d]{display:flex;flex-direction:column;align-items:center;padding:8px 4px 4px;text-align:center}.prompt-icon[data-v-5439dc7d]{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--color-mint);color:var(--color-on-mint);margin-bottom:var(--space-3)}.prompt-title[data-v-5439dc7d]{margin:0 0 8px;font-size:18px;font-weight:var(--font-weight-bold);color:var(--color-primary);letter-spacing:-.01em}.prompt-message[data-v-5439dc7d]{margin:0;font-size:14px;color:var(--color-secondary);line-height:1.55;max-width:360px}.footer-spacer[data-v-5439dc7d]{flex:1 1 auto}.never-btn[data-v-5439dc7d]{background:transparent;border:none;padding:6px 4px;font-family:var(--font-family);font-size:12px;font-weight:var(--font-weight-medium);color:var(--color-secondary);cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px;transition:color .15s}.never-btn[data-v-5439dc7d]:hover{color:var(--color-primary)}.upgrade-overlay[data-v-254f0f53]{position:fixed;inset:0;z-index:999999;background:var(--color-background);display:flex;align-items:center;justify-content:center;padding:24px}.upgrade-card[data-v-254f0f53]{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:400px;text-align:center}.upgrade-card h3[data-v-254f0f53]{margin:0;font-size:20px;font-weight:700;color:var(--color-primary)}.upgrade-card p[data-v-254f0f53]{margin:0;font-size:14px;color:var(--color-secondary);line-height:1.6}.upgrade-btn[data-v-254f0f53]{display:inline-block;margin-top:8px;padding:12px 36px;border:none;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-size:15px;font-weight:600;font-family:var(--font-family);text-decoration:none;cursor:pointer;transition:transform .15s,filter .15s}.upgrade-btn[data-v-254f0f53]:hover{transform:scale(1.04);filter:brightness(1.05)}.mobile-overlay[data-v-254f0f53]{position:fixed;inset:0;z-index:99999;background:var(--color-background);display:flex;align-items:center;justify-content:center;padding:24px}.mobile-card[data-v-254f0f53]{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:360px;text-align:center}.mobile-card h3[data-v-254f0f53]{margin:0;font-size:18px;font-weight:700;color:var(--color-primary)}.mobile-card p[data-v-254f0f53]{margin:0;font-size:14px;color:var(--color-secondary);line-height:1.5}.mobile-dismiss[data-v-254f0f53]{margin-top:8px;padding:10px 28px;border:none;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-size:14px;font-weight:600;cursor:pointer;transition:transform .15s,filter .15s}.mobile-dismiss[data-v-254f0f53]:hover{transform:scale(1.04);filter:brightness(1.05)}.app-shell[data-v-254f0f53]{min-height:100vh;min-width:900px;background:var(--color-background)}.app-main[data-v-254f0f53]{margin-left:var(--sidebar-width);display:flex;flex-direction:column;height:100vh}.app-content[data-v-254f0f53]{flex:1;overflow-y:auto;background:var(--color-surface);transition:background-color .3s ease}
