:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--surface-0:#fff;--surface-1:#f8f9fa;--surface-2:#f1f3f5;--text-primary:#1a1a2e;--text-secondary:#4a4a5a;--text-tertiary:#6c6c7a;--text-muted:#686f7d;--chart-card-bg:#ffffffe6;--chart-card-border:#00000014;--chart-title:var(--text-primary);--chart-axis-text:#64748b;--chart-grid:#0000000f;--chart-tooltip-bg:#fffffffa;--chart-tooltip-title:#1e293b;--chart-tooltip-body:#475569;--chart-tooltip-border:#0000001a;--chart-legend-text:#64748b;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 8px 24px #0000001f;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root{--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px;--button-bg:#e3e8f6;--button-bg-hover:#d2dcf0;--button-color:black;--button-bg-dark:#343a40;--button-bg-hover-dark:#4d525e;--button-color-dark:white;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-bubble:18px;--radius-panel:18px;--radius-pill:999px;--z-sticky:100;--z-panel:200;--z-overlay:800;--z-modal:900;--z-toast:950;--z-top:1000;--header-height:56px;--footer-height:42px;--cert-banner-height:0px;--first-run-banner-height:0px;--footer-height-mobile:60px;--sidebar-width:260px;--breakpoint-sm:640px;--breakpoint-md:900px;--breakpoint-lg:1200px;--status-success:#207337;--status-success-soft:#2da44e26;--status-warning:#825f08;--status-warning-soft:#b8860b26;--status-error:#bb202f;--status-error-soft:#dc354526;--status-info:#1165b7;--status-info-soft:#3390ec26;--color-on-status:#fff;--color-destructive:#d8201c;--color-destructive-soft:#e539351f;--terminal-bg:var(--surface-1);--terminal-header-bg:var(--surface-2);--terminal-border:var(--color-border);--terminal-text:var(--text-primary);--terminal-text-muted:var(--text-tertiary);--terminal-step-inactive:#ccc;--terminal-progress-track:#e0e0e0;--chat-sender-color-hover:var(--color-accent-hover);--favorite-color:#9a6307;--icon-muted-color:#677078;--color-focus:var(--chat-sender-color);--color-text-muted:var(--text-muted);--color-panel-bg:#f7f8fa;--color-panel-border:#e1e4e8;--chart-series-1:#1a6df4;--chart-series-2:#398ff9;--chart-series-3:#17853f;--chart-series-4:#1ea44f;--chart-series-5:#c25205;--chart-series-6:#b066f8;--chart-series-7:#0e8376;--chart-series-8:#ee3c3c;--chart-series-9:#6265f1;--map-link-relay:#00008b80;--map-link-outline:#0006;--map-link-direct:#00008bcc;--map-link-route:#3282f6e6;--map-marker-gw-border:#b45309;--map-marker-node-border:#64748b;--map-marker-selected:#3282f6;--map-cluster-bg:#1d63d1;--map-cluster-text:#fff;--status-connecting:#9f5f00;--status-busy:#ac5700;--bt-send-hover:var(--color-accent-hover);--bt-toggle-pending-bg:#3390ec1f;--bt-toggle-active-bg:#4caf501a;--help-accent-info:var(--color-accent);--help-accent-info-soft:var(--color-accent-soft);--help-accent-code:#d3196f;--help-accent-throttle:var(--status-connecting);--help-accent-warning:var(--status-warning);--help-accent-danger-alt:var(--status-connecting);--help-accent-teal:var(--color-accent);--help-tip-bg:#fff3cd;--help-tip-text:#856404;--help-tip-border:#ffeaa7;--chat-bubble-sent:#effdde;--chat-bubble-sent-border:#c5e1a5;--chat-bubble-received:#f7f8fa;--chat-bubble-received-border:#e1e4e8;--color-accent:#0e7490;--color-accent-hover:#155e75;--color-accent-soft:#0891b21f;--color-on-accent:#fff;--chat-sender-color:var(--color-accent);--chat-timestamp:#686f7d;--chat-check-color:#397d38;--chat-check-color-soft:#397d3833;--chat-check-pending:#6e6e6e;--chat-date-separator-bg:#00000014;--chat-date-separator-text:#666b6e;--cat-timestamp-beacon-bg:#e4e6eb;--cat-timestamp-beacon-fg:#4b5563;--cat-wx-beacon-bg:#dbeafe;--cat-wx-beacon-fg:#1e40af;--cat-node-advert-bg:#ede9fe;--cat-node-advert-fg:#5b21b6;--cat-sw-advert-bg:#f3e8ff;--cat-sw-advert-fg:#6b21a8;--cat-greeting-bg:#dcfce7;--cat-greeting-fg:#166534;--cat-qso-bg:#bbf7d0;--cat-qso-fg:#14532d;--cat-alert-bg:#fee2e2;--cat-alert-fg:#991b1b;--cat-directed-bg:#cffafe;--cat-directed-fg:#155e75;--cat-bot-command-bg:#ffedd5;--cat-bot-command-fg:#9a3412;--cat-other-bg:#f3f4f6;--cat-other-fg:#656b78;--score-low:#d62323;--score-mid:#a65b05;--score-high:#117f3a;--mon-chip-active-fg:#155e75;--mon-filtered-stripe:var(--status-warning);--mon-dir-rx-fg:var(--status-success);--mon-dir-tx-fg:var(--status-info);--mon-dst-fg:var(--color-accent);--mon-kind-msg-bg:#dbeafe;--mon-kind-msg-fg:#1e3a8a;--mon-kind-pos-bg:#dcfce7;--mon-kind-pos-fg:#14532d;--mon-kind-tel-bg:#ede9fe;--mon-kind-tel-fg:#4c1d95;--mon-kind-ack-bg:#fef3c7;--mon-kind-ack-fg:#78350f;--mon-kind-sys-bg:#e2e8f0;--mon-kind-sys-fg:#1e293b;--mon-kind-dbg-bg:#fce7f3;--mon-kind-dbg-fg:#831843;--mon-link-udp-bg:#cffafe;--mon-link-udp-fg:#164e63;--mon-link-ble-bg:#e0e7ff;--mon-link-ble-fg:#312e81;--mon-link-app-bg:#ffedd5;--mon-link-app-fg:#7c2d12;--mon-link-console-bg:#e7e5e4;--mon-link-console-fg:#44403c;--mon-origin-lora-bg:#fee2e2;--mon-origin-lora-fg:#7f1d1d;--mon-origin-node-bg:#d1fae5;--mon-origin-node-fg:#065f46;--mon-origin-server-bg:#e0f2fe;--mon-origin-server-fg:#075985;--mon-origin-ble-bg:var(--mon-link-ble-bg);--mon-origin-ble-fg:var(--mon-link-ble-fg);--mon-origin-www-bg:#fae8ff;--mon-origin-www-fg:#701a75;--mon-console-tag-fg:#1e293b;--mon-console-rxtx-fg:#1e3a8a;--mon-console-signal-fg:#78350f;--mon-console-callsign-fg:#4c1d95;--mon-console-msgid-fg:#831843}:root[data-theme=dark]{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2);--button-bg:var(--button-bg-dark);--button-bg-hover:var(--button-bg-hover-dark);--button-color:var(--button-color-dark);--surface-0:#181818;--surface-1:#1e1e1e;--surface-2:#252525;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--text-muted:#8190a5;--chart-card-bg:#1e293b99;--chart-card-border:#ffffff14;--chart-title:#f1f5f9;--chart-axis-text:#94a3b8;--chart-grid:#ffffff0d;--chart-tooltip-bg:#1e293bfa;--chart-tooltip-title:#f8fafc;--chart-tooltip-body:#cbd5e1;--chart-tooltip-border:#ffffff1a;--chart-legend-text:#94a3b8;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 6px #0006;--shadow-lg:0 8px 24px #00000080;--status-success:#54b558;--status-success-soft:#4caf5026;--status-warning:#f0ad4e;--status-warning-soft:#f0ad4e26;--status-error:#f27774;--status-error-soft:#ef535026;--status-info:#64b5f6;--status-info-soft:#64b5f626;--color-destructive:#f27774;--color-destructive-soft:#ef53501f;--terminal-bg:#1a1a2e;--terminal-header-bg:#16162a;--terminal-border:#2a2a4a;--terminal-text:#e0e0e0;--terminal-text-muted:#888;--terminal-step-inactive:#3a3a5a;--terminal-progress-track:#2a2a4a;--chat-sender-color-hover:var(--color-accent-hover);--icon-muted-color:#879097;--color-panel-bg:#1e1e1e;--color-panel-border:#404040;--map-link-relay:#87cefa80;--map-link-outline:#ffffff4d;--map-link-direct:#87cefacc;--map-marker-gw-border:#f59e0b;--map-marker-node-border:#94a3b8;--help-tip-bg:#4a3f00;--help-tip-text:#ffc107;--help-tip-border:#650;--favorite-color:#f5a623;--status-connecting:#ff9800;--status-busy:#f57c00;--help-accent-code:#ed64a3;--color-on-status:#000;--chart-series-1:#4387f6;--chart-series-2:#076be6;--chart-series-3:#1b9f4c;--chart-series-4:#18813e;--chart-series-5:#e76206;--chart-series-6:#9e41f6;--chart-series-7:#119c8d;--chart-series-8:#e33;--chart-series-9:#7a7cf3;--chat-bubble-sent:#212121;--chat-bubble-sent-border:#2e7d32;--chat-bubble-received:#1e1e1e;--chat-bubble-received-border:#404040;--chat-timestamp:#aaa;--color-accent:#22d3ee;--color-accent-hover:#67e8f9;--color-accent-soft:#22d3ee26;--color-on-accent:#06282e;--chat-sender-color:var(--color-accent);--chat-check-color:#4fae4e;--chat-check-color-soft:#4fae4e33;--chat-check-pending:#8e8e8e;--chat-date-separator-bg:#ffffff14;--chat-date-separator-text:#aaa;--cat-timestamp-beacon-bg:#374151;--cat-timestamp-beacon-fg:#d1d5db;--cat-wx-beacon-bg:#1e3a8a;--cat-wx-beacon-fg:#bfdbfe;--cat-node-advert-bg:#4c1d95;--cat-node-advert-fg:#ddd6fe;--cat-sw-advert-bg:#581c87;--cat-sw-advert-fg:#e9d5ff;--cat-greeting-bg:#14532d;--cat-greeting-fg:#86efac;--cat-qso-bg:#065f46;--cat-qso-fg:#6ee7b7;--cat-alert-bg:#7f1d1d;--cat-alert-fg:#fecaca;--cat-directed-bg:#164e63;--cat-directed-fg:#a5f3fc;--cat-bot-command-bg:#7c2d12;--cat-bot-command-fg:#fed7aa;--cat-other-bg:#374151;--cat-other-fg:#d1d5db;--score-low:#f87171;--score-mid:#fbbf24;--score-high:#4ade80;--mon-chip-active-fg:var(--color-accent);--mon-filtered-stripe:var(--status-warning);--mon-dir-rx-fg:var(--status-success);--mon-dir-tx-fg:var(--status-info);--mon-dst-fg:var(--color-accent);--mon-kind-msg-bg:#1e3a8a;--mon-kind-msg-fg:#bfdbfe;--mon-kind-pos-bg:#14532d;--mon-kind-pos-fg:#86efac;--mon-kind-tel-bg:#4c1d95;--mon-kind-tel-fg:#ddd6fe;--mon-kind-ack-bg:#78350f;--mon-kind-ack-fg:#fde68a;--mon-kind-sys-bg:#1e293b;--mon-kind-sys-fg:#cbd5e1;--mon-kind-dbg-bg:#831843;--mon-kind-dbg-fg:#fbcfe8;--mon-link-udp-bg:#164e63;--mon-link-udp-fg:#a5f3fc;--mon-link-ble-bg:#312e81;--mon-link-ble-fg:#c7d2fe;--mon-link-app-bg:#7c2d12;--mon-link-app-fg:#fed7aa;--mon-link-console-bg:#44403c;--mon-link-console-fg:#d6d3d1;--mon-origin-lora-bg:#7f1d1d;--mon-origin-lora-fg:#fecaca;--mon-origin-node-bg:#065f46;--mon-origin-node-fg:#6ee7b7;--mon-origin-server-bg:#075985;--mon-origin-server-fg:#bae6fd;--mon-origin-ble-bg:var(--mon-link-ble-bg);--mon-origin-ble-fg:var(--mon-link-ble-fg);--mon-origin-www-bg:#701a75;--mon-origin-www-fg:#f0abfc;--mon-console-tag-fg:#cbd5e1;--mon-console-rxtx-fg:#bfdbfe;--mon-console-signal-fg:#fde68a;--mon-console-callsign-fg:#ddd6fe;--mon-console-msgid-fg:#fbcfe8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2);--button-bg:var(--button-bg-dark);--button-bg-hover:var(--button-bg-hover-dark);--button-color:var(--button-color-dark);--surface-0:#181818;--surface-1:#1e1e1e;--surface-2:#252525;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--text-muted:#8190a5;--chart-card-bg:#1e293b99;--chart-card-border:#ffffff14;--chart-title:#f1f5f9;--chart-axis-text:#94a3b8;--chart-grid:#ffffff0d;--chart-tooltip-bg:#1e293bfa;--chart-tooltip-title:#f8fafc;--chart-tooltip-body:#cbd5e1;--chart-tooltip-border:#ffffff1a;--chart-legend-text:#94a3b8;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 6px #0006;--shadow-lg:0 8px 24px #00000080;--status-success:#54b558;--status-success-soft:#4caf5026;--status-warning:#f0ad4e;--status-warning-soft:#f0ad4e26;--status-error:#f27774;--status-error-soft:#ef535026;--status-info:#64b5f6;--status-info-soft:#64b5f626;--color-destructive:#f27774;--color-destructive-soft:#ef53501f;--terminal-bg:#1a1a2e;--terminal-header-bg:#16162a;--terminal-border:#2a2a4a;--terminal-text:#e0e0e0;--terminal-text-muted:#888;--terminal-step-inactive:#3a3a5a;--terminal-progress-track:#2a2a4a;--chat-sender-color-hover:var(--color-accent-hover);--icon-muted-color:#879097;--color-panel-bg:#1e1e1e;--color-panel-border:#404040;--map-link-relay:#87cefa80;--map-link-outline:#ffffff4d;--map-link-direct:#87cefacc;--map-marker-gw-border:#f59e0b;--map-marker-node-border:#94a3b8;--help-tip-bg:#4a3f00;--help-tip-text:#ffc107;--help-tip-border:#650;--favorite-color:#f5a623;--status-connecting:#ff9800;--status-busy:#f57c00;--help-accent-code:#ed64a3;--color-on-status:#000;--chart-series-1:#4387f6;--chart-series-2:#076be6;--chart-series-3:#1b9f4c;--chart-series-4:#18813e;--chart-series-5:#e76206;--chart-series-6:#9e41f6;--chart-series-7:#119c8d;--chart-series-8:#e33;--chart-series-9:#7a7cf3;--chat-bubble-sent:#212121;--chat-bubble-sent-border:#2e7d32;--chat-bubble-received:#1e1e1e;--chat-bubble-received-border:#404040;--chat-timestamp:#aaa;--color-accent:#22d3ee;--color-accent-hover:#67e8f9;--color-accent-soft:#22d3ee26;--color-on-accent:#06282e;--chat-sender-color:var(--color-accent);--chat-check-color:#4fae4e;--chat-check-color-soft:#4fae4e33;--chat-check-pending:#8e8e8e;--chat-date-separator-bg:#ffffff14;--chat-date-separator-text:#aaa;--cat-timestamp-beacon-bg:#374151;--cat-timestamp-beacon-fg:#d1d5db;--cat-wx-beacon-bg:#1e3a8a;--cat-wx-beacon-fg:#bfdbfe;--cat-node-advert-bg:#4c1d95;--cat-node-advert-fg:#ddd6fe;--cat-sw-advert-bg:#581c87;--cat-sw-advert-fg:#e9d5ff;--cat-greeting-bg:#14532d;--cat-greeting-fg:#86efac;--cat-qso-bg:#065f46;--cat-qso-fg:#6ee7b7;--cat-alert-bg:#7f1d1d;--cat-alert-fg:#fecaca;--cat-directed-bg:#164e63;--cat-directed-fg:#a5f3fc;--cat-bot-command-bg:#7c2d12;--cat-bot-command-fg:#fed7aa;--cat-other-bg:#374151;--cat-other-fg:#d1d5db;--score-low:#f87171;--score-mid:#fbbf24;--score-high:#4ade80;--mon-chip-active-fg:var(--color-accent);--mon-filtered-stripe:var(--status-warning);--mon-dir-rx-fg:var(--status-success);--mon-dir-tx-fg:var(--status-info);--mon-dst-fg:var(--color-accent);--mon-kind-msg-bg:#1e3a8a;--mon-kind-msg-fg:#bfdbfe;--mon-kind-pos-bg:#14532d;--mon-kind-pos-fg:#86efac;--mon-kind-tel-bg:#4c1d95;--mon-kind-tel-fg:#ddd6fe;--mon-kind-ack-bg:#78350f;--mon-kind-ack-fg:#fde68a;--mon-kind-sys-bg:#1e293b;--mon-kind-sys-fg:#cbd5e1;--mon-kind-dbg-bg:#831843;--mon-kind-dbg-fg:#fbcfe8;--mon-link-udp-bg:#164e63;--mon-link-udp-fg:#a5f3fc;--mon-link-ble-bg:#312e81;--mon-link-ble-fg:#c7d2fe;--mon-link-app-bg:#7c2d12;--mon-link-app-fg:#fed7aa;--mon-link-console-bg:#44403c;--mon-link-console-fg:#d6d3d1;--mon-origin-lora-bg:#7f1d1d;--mon-origin-lora-fg:#fecaca;--mon-origin-node-bg:#065f46;--mon-origin-node-fg:#6ee7b7;--mon-origin-server-bg:#075985;--mon-origin-server-fg:#bae6fd;--mon-origin-ble-bg:var(--mon-link-ble-bg);--mon-origin-ble-fg:var(--mon-link-ble-fg);--mon-origin-www-bg:#701a75;--mon-origin-www-fg:#f0abfc;--mon-console-tag-fg:#cbd5e1;--mon-console-rxtx-fg:#bfdbfe;--mon-console-signal-fg:#fde68a;--mon-console-callsign-fg:#ddd6fe;--mon-console-msgid-fg:#fbcfe8}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}html,body{overscroll-behavior:none;height:100%;overflow:hidden}body{color:var(--color-text);background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Oxygen,Open Sans,sans-serif;font-size:1rem;transition:color .3s,background-color .5s}#app{position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}a,a:visited{color:inherit}.input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft)}.input::placeholder{color:var(--color-text);opacity:.5}.input--small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.label{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text);font-weight:500;display:block}.text-muted{opacity:.7}.text-center{text-align:center}.text-right{text-align:right}.symbol-overlay{font-family:var(--font-mono);pointer-events:none;color:#000;text-shadow:2px 0 #fff,-2px 0 #fff,0 2px #fff,0 -2px #fff,1.5px 1.5px #fff,-1.5px 1.5px #fff,1.5px -1.5px #fff,-1.5px -1.5px #fff;place-items:center;font-size:22px;font-weight:700;line-height:1;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.symbol-overlay-sm{text-shadow:1px 0 #fff,-1px 0 #fff,0 1px #fff,0 -1px #fff,.75px .75px #fff,-.75px .75px #fff,.75px -.75px #fff,-.75px -.75px #fff;font-size:11px}@supports (paint-order:stroke){.symbol-overlay{paint-order:stroke fill;-webkit-text-stroke:4px #fff;text-shadow:none}.symbol-overlay-sm{-webkit-text-stroke-width:2px}}.green{color:#00bd7e;text-decoration:none}.base-icon[data-v-93b3b2f3]{vertical-align:middle;color:inherit;flex-shrink:0;display:inline-block}.base-btn[data-v-7c3d284c]{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-panel);font-size:var(--font-size-sm);cursor:pointer;-webkit-user-select:none;user-select:none;border:none;font-weight:500;transition:all .2s;display:inline-flex}.base-btn[data-v-7c3d284c]:disabled{opacity:.5;cursor:not-allowed}.base-btn--default[data-v-7c3d284c]{background:var(--button-bg);color:var(--button-color)}.base-btn--default[data-v-7c3d284c]:hover:not(:disabled){background:var(--button-bg-hover)}.base-btn--primary[data-v-7c3d284c]{background:var(--chat-sender-color);color:var(--color-on-accent)}.base-btn--primary[data-v-7c3d284c]:hover:not(:disabled){opacity:.9}.base-btn--secondary[data-v-7c3d284c]{background:var(--button-bg);color:var(--color-text)}.base-btn--secondary[data-v-7c3d284c]:hover:not(:disabled){background:var(--button-bg-hover)}.base-btn--danger[data-v-7c3d284c]{background:var(--status-error);color:var(--color-on-status)}.base-btn--danger[data-v-7c3d284c]:hover:not(:disabled){opacity:.9}.base-btn--success[data-v-7c3d284c]{background:var(--status-success);color:var(--color-on-status)}.base-btn--success[data-v-7c3d284c]:hover:not(:disabled){filter:brightness(.9)}.base-btn--warning[data-v-7c3d284c]{background:var(--status-warning);color:var(--color-on-status)}.base-btn--warning[data-v-7c3d284c]:hover:not(:disabled){filter:brightness(.9)}.base-btn--ghost[data-v-7c3d284c]{color:var(--text-primary,var(--color-text));padding:var(--spacing-xs) var(--spacing-sm);background:0 0;border:none}.base-btn--ghost[data-v-7c3d284c]:hover:not(:disabled){background:var(--button-bg)}.base-btn--small[data-v-7c3d284c]{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.base-btn--large[data-v-7c3d284c]{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}.base-btn--full[data-v-7c3d284c]{width:100%}.base-btn--icon[data-v-7c3d284c]{border-radius:var(--radius-md);flex-shrink:0;width:36px;height:36px;padding:0}.base-btn--icon.base-btn--small[data-v-7c3d284c]{width:32px;height:32px}.base-btn--icon.base-btn--large[data-v-7c3d284c]{width:44px;height:44px}.base-btn--round[data-v-7c3d284c]{border-radius:50%}.base-btn--loading[data-v-7c3d284c]{position:relative}.base-btn__spinner[data-v-7c3d284c]{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite base-btn-spin-7c3d284c}@keyframes base-btn-spin-7c3d284c{to{transform:rotate(360deg)}}.base-empty-state[data-v-0b03e276]{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xl,2rem);text-align:center;flex-direction:column;min-height:80px;display:flex}.base-empty-state__title[data-v-0b03e276]{font-size:var(--font-size-base);color:var(--color-text);font-weight:600}.base-empty-state__message[data-v-0b03e276]{font-size:var(--font-size-sm);color:var(--chat-timestamp)}.activity-log[data-v-c4aef035]{margin-top:var(--spacing-sm)}.log-header[data-v-c4aef035]{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-panel-bg);border:1px solid var(--color-panel-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--chat-timestamp);display:flex}.log-header[data-v-c4aef035]:hover{background:var(--button-bg)}.log-title[data-v-c4aef035]{text-align:left;flex:1;font-weight:600}.log-count[data-v-c4aef035]{background:var(--color-border);border-radius:var(--radius-pill);font-size:var(--font-size-sm);padding:1px 6px}.chevron[data-v-c4aef035]{font-size:var(--font-size-sm);transition:transform .2s}.chevron.open[data-v-c4aef035]{transform:rotate(180deg)}.log-body[data-v-c4aef035]{border:1px solid var(--color-panel-border);border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--color-background);border-top:none;max-height:240px;overflow-y:auto}.log-entry[data-v-c4aef035]{gap:2px var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border);grid-template-columns:56px 1fr;display:grid}.log-entry[data-v-c4aef035]:last-child{border-bottom:none}.log-time[data-v-c4aef035]{color:var(--chat-timestamp);white-space:nowrap}.log-action[data-v-c4aef035]{color:var(--color-text);font-weight:500}.log-detail[data-v-c4aef035]{color:var(--chat-timestamp);word-break:break-word;grid-column:2}.level-error .log-action[data-v-c4aef035]{color:var(--color-destructive)}.level-warn .log-action[data-v-c4aef035]{color:var(--status-connecting)}.level-info .log-action[data-v-c4aef035]{color:var(--chat-check-color)}.expand-enter-active[data-v-c4aef035],.expand-leave-active[data-v-c4aef035]{transition:all .2s;overflow:hidden}.expand-enter-from[data-v-c4aef035],.expand-leave-to[data-v-c4aef035]{opacity:0;max-height:0}.expand-enter-to[data-v-c4aef035],.expand-leave-from[data-v-c4aef035]{opacity:1;max-height:240px}.state-connected-body[data-v-7611f820]{padding:var(--spacing-sm) 0}.connected-header[data-v-7611f820]{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.connected-dot[data-v-7611f820]{background:var(--chat-check-color);border-radius:50%;width:10px;height:10px;animation:.3s success-bounce-7611f820}@keyframes success-bounce-7611f820{0%{transform:scale(.5)}60%{transform:scale(1.3)}to{transform:scale(1)}}.connected-name[data-v-7611f820]{font-weight:600;font-size:var(--font-size-base);color:var(--color-text)}.connected-details[data-v-7611f820]{gap:var(--spacing-xs);margin-bottom:var(--spacing-md);flex-direction:column;display:flex}.detail-row[data-v-7611f820]{font-size:var(--font-size-sm);justify-content:space-between;display:flex}.detail-label[data-v-7611f820]{color:var(--chat-timestamp)}.detail-value[data-v-7611f820]{color:var(--color-text);font-weight:500}.action-buttons[data-v-7611f820]{gap:var(--spacing-sm);margin-top:var(--spacing-md);justify-content:space-between;display:flex}.device-item[data-v-31bcb7f2]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;display:flex}.device-item[data-v-31bcb7f2]:hover{border-color:var(--chat-sender-color)}.device-item.selected[data-v-31bcb7f2]{border-color:var(--chat-sender-color);background:#3390ec14}.device-item.busy[data-v-31bcb7f2]{opacity:.6;cursor:not-allowed}.device-item.device-connected[data-v-31bcb7f2]{border-color:var(--chat-check-color)}.device-icon-svg[data-v-31bcb7f2]{width:20px;height:20px;color:var(--chat-timestamp);flex-shrink:0}.device-info[data-v-31bcb7f2]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.device-name[data-v-31bcb7f2]{font-weight:500;font-size:var(--font-size-sm);color:var(--color-text)}.device-badge[data-v-31bcb7f2]{font-size:var(--font-size-sm);color:var(--chat-check-color)}.device-badge.paired[data-v-31bcb7f2]{color:var(--chat-timestamp)}.device-rssi[data-v-31bcb7f2]{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.rssi-bars[data-v-31bcb7f2]{align-items:flex-end;gap:2px;height:16px;display:flex}.rssi-bars .bar[data-v-31bcb7f2]{background:var(--color-border);border-radius:1px;width:4px}.rssi-bars .bar[data-v-31bcb7f2]:first-child{height:4px}.rssi-bars .bar[data-v-31bcb7f2]:nth-child(2){height:7px}.rssi-bars .bar[data-v-31bcb7f2]:nth-child(3){height:10px}.rssi-bars .bar[data-v-31bcb7f2]:nth-child(4){height:14px}.rssi-bars.excellent .bar[data-v-31bcb7f2],.rssi-bars.good .bar[data-v-31bcb7f2]:nth-child(-n+3){background:var(--chat-check-color)}.rssi-bars.fair .bar[data-v-31bcb7f2]:nth-child(-n+2){background:var(--status-busy)}.rssi-bars.weak .bar[data-v-31bcb7f2]:first-child{background:var(--color-destructive)}.rssi-value[data-v-31bcb7f2]{font-size:var(--font-size-sm);color:var(--chat-timestamp);font-family:var(--font-mono)}.unpair-btn[data-v-31bcb7f2]{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--chat-timestamp);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.unpair-btn[data-v-31bcb7f2]:hover{border-color:var(--color-destructive);color:var(--color-destructive)}.unpair-icon[data-v-31bcb7f2]{width:16px;height:16px}@media screen and (max-width:640px){.device-item[data-v-31bcb7f2]{min-height:44px}}.state-error-body[data-v-34d8bf71]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) 0;flex-direction:column;display:flex}.error-icon-wrapper[data-v-34d8bf71]{color:var(--color-destructive)}.error-icon[data-v-34d8bf71]{width:36px;height:36px}.error-message[data-v-34d8bf71]{font-size:var(--font-size-sm);color:var(--color-destructive);text-align:center;margin:0}.error-hint[data-v-34d8bf71]{font-size:var(--font-size-sm);color:var(--chat-timestamp);text-align:center;padding:0 var(--spacing-md);margin:-4px 0 0}.pin-retry[data-v-34d8bf71]{gap:var(--spacing-xs);flex-direction:column;align-items:stretch;width:100%;display:flex}.pin-label[data-v-34d8bf71]{font-size:var(--font-size-sm);color:var(--chat-timestamp);font-weight:500}.pin-input[data-v-34d8bf71]{padding:var(--spacing-sm);font-family:var(--font-mono);font-size:var(--font-size-base);letter-spacing:.15em;text-align:center;background:var(--button-bg);border:1px solid var(--color-panel-border);border-radius:var(--radius-sm);color:var(--color-text);box-sizing:border-box}.pin-input[data-v-34d8bf71]:focus{border-color:var(--chat-sender-color)}.error-actions[data-v-34d8bf71]{gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center;display:flex}.shake[data-v-34d8bf71]{animation:.4s shake-34d8bf71}@keyframes shake-34d8bf71{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.state-reconnect-failed[data-v-97db57ef]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) 0;flex-direction:column;display:flex}.failed-icon-wrapper[data-v-97db57ef]{color:var(--status-connecting)}.failed-icon[data-v-97db57ef]{width:36px;height:36px}.failed-title[data-v-97db57ef]{font-size:var(--font-size-base);color:var(--color-text);text-align:center;margin:0;font-weight:600}.failed-detail[data-v-97db57ef]{font-size:var(--font-size-sm);color:var(--chat-timestamp);margin:-4px 0 0}.action-buttons[data-v-97db57ef]{gap:var(--spacing-sm);width:100%;margin-top:var(--spacing-xs);flex-direction:column;display:flex}.btn-icon[data-v-97db57ef]{width:16px;height:16px}.hints-toggle[data-v-97db57ef]{font-size:var(--font-size-sm);color:var(--chat-sender-color);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);background:0 0;border:none}.hints-toggle[data-v-97db57ef]:hover{background:var(--button-bg)}.hints-panel[data-v-97db57ef]{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md)}.hints-list[data-v-97db57ef]{padding:0 0 0 var(--spacing-md);font-size:var(--font-size-sm);color:var(--chat-timestamp);margin:0;line-height:1.5}.hints-list li[data-v-97db57ef]{margin-bottom:var(--spacing-xs)}.hints-list li[data-v-97db57ef]:last-child{margin-bottom:0}.hints-enter-active[data-v-97db57ef],.hints-leave-active[data-v-97db57ef]{transition:all .2s}.hints-enter-from[data-v-97db57ef],.hints-leave-to[data-v-97db57ef]{opacity:0;max-height:0;overflow:hidden}.hints-enter-to[data-v-97db57ef],.hints-leave-from[data-v-97db57ef]{opacity:1;max-height:200px}.idle-icon-wrapper[data-v-3554d0db]{justify-content:center;align-items:center;display:flex;position:relative}.idle-icon[data-v-3554d0db]{width:48px;height:48px;color:var(--chat-timestamp);opacity:.5}.idle-glow[data-v-3554d0db]{background:radial-gradient(circle, var(--status-info-soft) 0%, transparent 70%);border-radius:50%;width:80px;height:80px;position:absolute}.scan-icon-wrapper[data-v-3554d0db]{justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative}.scan-bt-icon[data-v-3554d0db]{width:28px;height:28px;color:var(--chat-sender-color);z-index:1}.ripple-ring[data-v-3554d0db]{border:2px solid var(--chat-sender-color);border-radius:50%;width:100%;height:100%;animation:2s ease-out infinite ripple-3554d0db;position:absolute}.ring-1[data-v-3554d0db]{animation-delay:0s}.ring-2[data-v-3554d0db]{animation-delay:.6s}.ring-3[data-v-3554d0db]{animation-delay:1.2s}@keyframes ripple-3554d0db{0%{opacity:.6;transform:scale(.8)}to{opacity:0;transform:scale(2.5)}}.base-spinner[data-v-9edf1702]{border:2px solid #0000;border-top-color:var(--chat-sender-color);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite base-spinner-spin-9edf1702}.base-spinner--small[data-v-9edf1702]{width:16px;height:16px}.base-spinner--large[data-v-9edf1702]{border-width:3px;width:48px;height:48px}@keyframes base-spinner-spin-9edf1702{to{transform:rotate(360deg)}}.state-spinner[data-v-011fe07e]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl) 0;flex-direction:column;display:flex}.arc-spinner-wrapper[data-v-011fe07e]{justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.spinner-bt-icon[data-v-011fe07e]{width:24px;height:24px;color:var(--chat-sender-color);z-index:1}.arc-spinner[data-v-011fe07e]{width:100%;height:100%;position:absolute}.state-label[data-v-011fe07e]{font-size:var(--font-size-sm);color:var(--chat-timestamp);margin:0}.state-subtitle[data-v-011fe07e]{font-size:var(--font-size-sm);color:var(--chat-timestamp);opacity:.7;margin:-4px 0 0}.cancel-btn[data-v-011fe07e]{margin-top:var(--spacing-xs)}.modal-backdrop[data-v-6dcc0bc6]{z-index:var(--z-modal);-webkit-backdrop-filter:blur(8px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-panel[data-v-6dcc0bc6]{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-panel);width:90%;max-width:460px;max-height:85vh;padding:var(--spacing-xl);position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-enter-active[data-v-6dcc0bc6]{transition:opacity .25s cubic-bezier(.16,1,.3,1)}.modal-enter-active .modal-panel[data-v-6dcc0bc6]{transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .25s cubic-bezier(.16,1,.3,1)}.modal-leave-active[data-v-6dcc0bc6]{transition:opacity .15s}.modal-leave-active .modal-panel[data-v-6dcc0bc6]{transition:transform .15s,opacity .15s}.modal-enter-from[data-v-6dcc0bc6]{opacity:0}.modal-enter-from .modal-panel[data-v-6dcc0bc6]{opacity:0;transform:scale(.95)translateY(8px)}.modal-leave-to[data-v-6dcc0bc6]{opacity:0}.modal-leave-to .modal-panel[data-v-6dcc0bc6]{opacity:0;transform:scale(.95)translateY(8px)}.close-btn[data-v-6dcc0bc6]{top:var(--spacing-md);right:var(--spacing-md);font-size:var(--font-size-xl);color:var(--chat-timestamp);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;line-height:1;position:absolute}.close-btn[data-v-6dcc0bc6]:hover{background:var(--button-bg);color:var(--color-text)}.modal-header[data-v-6dcc0bc6]{align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex}.header-icon[data-v-6dcc0bc6]{width:28px;height:28px;color:var(--chat-sender-color);flex-shrink:0}.header-title[data-v-6dcc0bc6]{font-size:var(--font-size-lg);color:var(--color-text);margin:0;font-weight:600}.header-status[data-v-6dcc0bc6]{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);margin-top:2px;display:flex}.header-status.connected[data-v-6dcc0bc6]{color:var(--chat-check-color)}.header-status.disconnected[data-v-6dcc0bc6]{color:var(--chat-timestamp)}.status-dot[data-v-6dcc0bc6]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.green[data-v-6dcc0bc6]{background:var(--chat-check-color)}.status-dot.orange[data-v-6dcc0bc6]{background:var(--status-connecting)}.status-dot.red[data-v-6dcc0bc6]{background:var(--status-error)}.header-status.reconnecting[data-v-6dcc0bc6]{color:var(--status-connecting)}.state-card[data-v-6dcc0bc6]{background:var(--color-panel-bg);border:1px solid var(--color-panel-border);border-radius:var(--radius-panel);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);transition:border-color .3s}.state-card.state-connected[data-v-6dcc0bc6]{border-color:#4caf504d}.state-card.state-error[data-v-6dcc0bc6]{border-color:#e539354d}.state-card.state-warning[data-v-6dcc0bc6]{border-color:#ff98004d}.btn-icon[data-v-6dcc0bc6]{width:16px;height:16px}.state-idle-scan[data-v-6dcc0bc6]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) 0;flex-direction:column;display:flex}.state-label[data-v-6dcc0bc6]{font-size:var(--font-size-sm);color:var(--chat-timestamp);margin:0}.device-list[data-v-6dcc0bc6]{gap:var(--spacing-sm);flex-direction:column;width:100%;display:flex}.device-list-enter-active[data-v-6dcc0bc6]{transition:all .3s ease-out;transition-delay:calc(var(--stagger,0) * 50ms)}.device-list-enter-from[data-v-6dcc0bc6]{opacity:0;transform:translateY(12px)}@media screen and (max-width:640px){.modal-backdrop[data-v-6dcc0bc6]{align-items:flex-end}.modal-panel[data-v-6dcc0bc6]{border-bottom-right-radius:0;border-bottom-left-radius:0;width:100%;max-width:100%;max-height:90vh}.modal-enter-from .modal-panel[data-v-6dcc0bc6],.modal-leave-to .modal-panel[data-v-6dcc0bc6]{opacity:1;transform:translateY(100%)}.modal-enter-from[data-v-6dcc0bc6]{opacity:1}}.dbg[data-v-28879ec3]{z-index:2147483647;color:#e6edf3;-webkit-backdrop-filter:blur(6px);width:min(420px,100vw - 16px);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-sm);background:#0c1018d1;border:1px solid #ffffff2e;border-radius:10px;flex-direction:column;line-height:1.45;display:flex;position:fixed;top:8px;bottom:8px;right:8px;overflow:hidden;box-shadow:0 8px 40px #00000080}.dbg__head[data-v-28879ec3]{background:#ffffff0f;border-bottom:1px solid #ffffff1f;align-items:center;gap:8px;padding:8px 10px;display:flex}.dbg__title[data-v-28879ec3]{letter-spacing:.02em;font-weight:700}.dbg__clock[data-v-28879ec3]{opacity:.6;font-size:var(--font-size-sm);margin-left:auto}.dbg__x[data-v-28879ec3]{color:#e6edf3;cursor:pointer;font-size:var(--font-size-sm);background:0 0;border:none;padding:0 2px}.dbg__actions[data-v-28879ec3]{border-bottom:1px solid #ffffff1a;flex-wrap:wrap;gap:4px;padding:6px 8px;display:flex}.dbg__actions button[data-v-28879ec3]{color:#e6edf3;font:inherit;font-size:var(--font-size-sm);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:5px;padding:3px 8px}.dbg__actions button[data-v-28879ec3]:active{background:#ffffff3d}.dbg__body[data-v-28879ec3]{padding:4px 10px 10px;overflow-y:auto}section[data-v-28879ec3]{margin-top:10px}h4[data-v-28879ec3]{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;color:#7ee0ff;border-bottom:1px dashed #ffffff26;margin:0 0 3px;padding-bottom:2px;font-weight:700}.row[data-v-28879ec3]{gap:8px;padding:1px 0;display:flex}.safe-probe[data-v-28879ec3]{height:0;padding-top:env(safe-area-inset-top,0px)}.row>span[data-v-28879ec3]{opacity:.62;flex:0 0 108px}.row>b[data-v-28879ec3]{word-break:break-all;flex:1;font-weight:600}.row.hot>b[data-v-28879ec3]{color:#ffd479}.row.alert[data-v-28879ec3]{background:#ff505029;border-radius:3px}.row.alert>b[data-v-28879ec3]{color:#ff8f8f}.caches[data-v-28879ec3]{white-space:pre-wrap;word-break:break-all;opacity:.85}.log[data-v-28879ec3]{background:#00000047;border-radius:5px;max-height:30vh;padding:4px 6px;overflow-y:auto}.log__line[data-v-28879ec3]{word-break:break-word;padding:1px 0}.log__t[data-v-28879ec3]{color:#8fd3ff;margin-right:6px}.log__empty[data-v-28879ec3]{opacity:.5}.sr-only[data-v-5031fc07]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.status-btn[data-v-5031fc07]{justify-content:center;align-items:center;gap:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;white-space:nowrap;background-color:#0000;font-weight:600;transition:all .2s;display:inline-flex}.status-btn[data-v-5031fc07]:not(.no-click):hover{background-color:var(--button-bg)}.status-btn.no-click[data-v-5031fc07]{cursor:default}.status-btn[data-v-5031fc07]:disabled{opacity:.6;cursor:not-allowed}.status-btn.connected[data-v-5031fc07]{background-color:#4fae4e26}.status-icon[data-v-5031fc07]{width:18px;height:18px;color:var(--icon-muted-color);flex-shrink:0;transition:color .2s}.connected .status-icon[data-v-5031fc07]{color:var(--chat-check-color)}.reconnecting .status-icon[data-v-5031fc07]{color:var(--status-warning);animation:1.2s ease-in-out infinite pulse-dot-5031fc07}.status-btn.reconnecting[data-v-5031fc07]{background-color:#f0ad4e26}@keyframes pulse-dot-5031fc07{0%,to{opacity:1}50%{opacity:.3}}.latency-badge[data-v-5031fc07]{font-size:var(--font-size-sm);color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-left:2px}.stale-warning[data-v-5031fc07]{font-size:var(--font-size-sm);color:var(--status-error);white-space:nowrap;margin-top:2px}.version-icon[data-v-5031fc07]{fill:currentColor;flex-shrink:0;width:14px;height:14px}.version-link[data-v-5031fc07]{font-size:var(--font-size-sm);color:var(--chat-timestamp);white-space:nowrap;opacity:.7;align-items:center;gap:4px;font-weight:500;text-decoration:none;display:inline-flex}.version-link[data-v-5031fc07]:hover{color:var(--chat-sender-color);opacity:1}.version-link.has-update[data-v-5031fc07]{opacity:1;color:var(--chat-sender-color)}.update-dot[data-v-5031fc07]{background-color:var(--status-warning);vertical-align:super;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-left:3px;display:inline-block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .version-icon[data-v-5031fc07]{fill:var(--chat-timestamp)}:root:not([data-theme=light]):not([data-theme=dark]) .status-btn.connected[data-v-5031fc07]{background-color:#4fae4e1a}:root:not([data-theme=light]):not([data-theme=dark]) .status-btn.reconnecting[data-v-5031fc07]{background-color:#f0ad4e26}}:root[data-theme=dark] .version-icon[data-v-5031fc07]{fill:var(--chat-timestamp)}:root[data-theme=dark] .status-btn.connected[data-v-5031fc07]{background-color:#4fae4e1a}:root[data-theme=dark] .status-btn.reconnecting[data-v-5031fc07]{background-color:#f0ad4e26}@media screen and (max-width:1200px){.status-btn[data-v-5031fc07]{padding:var(--spacing-xs) var(--spacing-sm)}}.first-run-banner[data-v-5031fc07]{top:calc(var(--header-height) + var(--cert-banner-height,0px));z-index:var(--z-panel);align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);padding-top:calc(var(--spacing-sm) + env(safe-area-inset-top,0px));background-color:var(--status-warning-soft);border-bottom:1px solid var(--status-warning);font-size:var(--font-size-sm);color:var(--color-text);display:flex;position:fixed;left:0;right:0}.banner-text[data-v-5031fc07]{flex:1;min-width:0}.banner-link[data-v-5031fc07]{color:var(--chat-sender-color);white-space:nowrap;flex-shrink:0;font-weight:600;text-decoration:none}.banner-link[data-v-5031fc07]:hover{text-decoration:underline}.banner-close[data-v-5031fc07]{font-size:var(--font-size-lg);line-height:1}@media screen and (max-width:900px){.first-run-banner[data-v-5031fc07]{top:var(--cert-banner-height,0px)}}@media screen and (max-width:640px){.first-run-banner[data-v-5031fc07]{gap:var(--spacing-sm)}}@media screen and (max-width:900px){.mobile-status-chip[data-v-5031fc07]{color:var(--chat-timestamp);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;font-weight:500}.chip-dot[data-v-5031fc07]{background-color:var(--status-error);border-radius:50%;width:10px;height:10px}.mobile-status-chip.ok .chip-dot[data-v-5031fc07]{background-color:var(--status-success)}.mobile-status-chip.warn .chip-dot[data-v-5031fc07]{background-color:var(--status-warning);animation:1.2s ease-in-out infinite pulse-dot-5031fc07}.mobile-sheet-backdrop[data-v-5031fc07]{z-index:var(--z-overlay);background:#00000073;position:fixed;top:0;bottom:0;left:0;right:0}.mobile-sheet[data-v-5031fc07]{z-index:var(--z-modal);gap:var(--spacing-sm);background-color:var(--color-background);border-top:1px solid var(--color-border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;max-height:80vh;padding:var(--spacing-lg);padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 32px #0000004d}.sheet-header[data-v-5031fc07]{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.sheet-title[data-v-5031fc07]{font-size:var(--font-size-base);color:var(--color-heading);font-weight:600}.sheet-close-btn[data-v-5031fc07]{font-size:var(--font-size-xl);line-height:1}.sheet-row[data-v-5031fc07]{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text);display:flex}.sheet-row-button[data-v-5031fc07]{cursor:pointer;text-align:left;background:0 0;width:100%;font-family:inherit}.sheet-row.connected[data-v-5031fc07]{border-color:#4fae4e66}.sheet-row.reconnecting[data-v-5031fc07]{border-color:#f0ad4e66}.sheet-row-icon[data-v-5031fc07]{width:20px;height:20px;color:var(--icon-muted-color);flex-shrink:0}.sheet-row.connected .sheet-row-icon[data-v-5031fc07]{color:var(--chat-check-color)}.sheet-row.reconnecting .sheet-row-icon[data-v-5031fc07]{color:var(--status-warning)}.sheet-row-label[data-v-5031fc07]{flex:1;font-weight:500}.sheet-row-value[data-v-5031fc07]{color:var(--chat-timestamp);font-size:var(--font-size-sm)}.sheet-stale-warning[data-v-5031fc07]{font-size:var(--font-size-sm);color:var(--status-error)}.sheet-links[data-v-5031fc07]{gap:var(--spacing-xs);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.sheet-link[data-v-5031fc07]{align-items:center;gap:var(--spacing-xs);color:var(--chat-sender-color);font-size:var(--font-size-base);padding:var(--spacing-xs) 0;font-weight:500;text-decoration:none;display:flex}.sheet-link-icon[data-v-5031fc07]{fill:currentColor;width:16px;height:16px}.sheet-link.has-update[data-v-5031fc07]{font-weight:700}.sheet-slide-enter-active[data-v-5031fc07],.sheet-slide-leave-active[data-v-5031fc07]{transition:transform .25s}.sheet-slide-enter-from[data-v-5031fc07],.sheet-slide-leave-to[data-v-5031fc07]{transform:translateY(100%)}}.toast-container[data-v-2663c49c]{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}@media screen and (max-width:900px){.toast-container[data-v-2663c49c]{bottom:76px;left:12px;right:12px}}.toast[data-v-2663c49c]{border-radius:var(--radius-md,8px);color:var(--color-on-status);font-size:var(--font-size-sm);cursor:pointer;pointer-events:auto;box-shadow:var(--shadow-lg);word-break:break-word;align-items:center;gap:8px;max-width:360px;padding:10px 16px;font-weight:500;display:flex}@media screen and (max-width:900px){.toast[data-v-2663c49c]{max-width:100%}}.toast--success[data-v-2663c49c]{background-color:var(--status-success)}.toast--error[data-v-2663c49c]{background-color:var(--status-error)}.toast--warning[data-v-2663c49c]{background-color:var(--status-warning)}.toast--info[data-v-2663c49c]{background-color:var(--status-info)}.toast__icon[data-v-2663c49c]{font-size:var(--font-size-base);flex-shrink:0}.toast__message[data-v-2663c49c]{flex:1}.toast-enter-active[data-v-2663c49c]{transition:all .3s ease-out}.toast-leave-active[data-v-2663c49c]{transition:all .2s ease-in}.toast-enter-from[data-v-2663c49c],.toast-leave-to[data-v-2663c49c]{opacity:0;transform:translate(100%)}.toast-move[data-v-2663c49c]{transition:transform .3s}.offline-banner[data-v-bec95168]{z-index:var(--z-panel);justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-on-status);text-align:center;flex-wrap:wrap;font-weight:500;display:flex;position:fixed;top:0;left:0;right:0}@media screen and (min-width:901px){.offline-banner[data-v-bec95168]{top:var(--header-height)}}.offline-banner--offline[data-v-bec95168],.offline-banner--cert-suspect[data-v-bec95168]{background:var(--status-error)}.offline-banner--proxy-unreachable[data-v-bec95168]{background:var(--status-warning)}.offline-banner__link[data-v-bec95168]{color:var(--color-on-status);white-space:nowrap;font-weight:700;text-decoration:underline}.cert-banner[data-v-5f9a800a]{z-index:var(--z-panel);align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--status-warning-soft);border-bottom:1px solid var(--status-warning);color:var(--color-text);font-size:var(--font-size-sm);line-height:1.4;display:flex;position:fixed;top:0;left:0;right:0}@media screen and (min-width:901px){.cert-banner[data-v-5f9a800a]{top:var(--header-height)}}.cert-banner__icon[data-v-5f9a800a]{color:var(--status-warning);flex-shrink:0;margin-top:2px}.cert-banner__text[data-v-5f9a800a]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cert-banner__link[data-v-5f9a800a]{color:var(--chat-sender-color);white-space:nowrap;font-weight:600;text-decoration:underline}.cert-banner__outbox-warning[data-v-5f9a800a]{color:var(--status-error);font-weight:500}.cert-banner__dismiss[data-v-5f9a800a]{width:24px;height:24px;color:var(--color-text);cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.cert-banner__dismiss[data-v-5f9a800a]:hover{opacity:1;background:var(--color-border)}.update-toast-region[data-v-b9c6aee2]{z-index:var(--z-toast);align-items:center;gap:var(--spacing-xs);pointer-events:none;flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0}.update-banner[data-v-b9c6aee2]{pointer-events:auto;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--status-info);color:var(--color-on-status);font-size:var(--font-size-sm);box-shadow:var(--shadow-md);font-weight:500;display:flex}.update-banner__text[data-v-b9c6aee2]{flex:1}.update-banner__reload[data-v-b9c6aee2]{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-on-status);border-radius:var(--radius-pill);color:var(--color-on-status);font-size:var(--font-size-sm);cursor:pointer;background:0 0;flex-shrink:0;font-weight:600}.update-banner__reload[data-v-b9c6aee2]:hover{background:#0000001a}.update-banner__dismiss[data-v-b9c6aee2]{width:24px;height:24px;color:var(--color-on-status);font-size:var(--font-size-lg);cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;display:flex}.update-banner__dismiss[data-v-b9c6aee2]:hover{opacity:1;background:#0000001a}.offline-ready-toast[data-v-b9c6aee2]{pointer-events:auto;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-pill);background:var(--status-success);color:var(--color-on-status);font-size:var(--font-size-sm);box-shadow:var(--shadow-md);font-weight:500}.offline-ready-fade-enter-active[data-v-b9c6aee2],.offline-ready-fade-leave-active[data-v-b9c6aee2]{transition:opacity .25s}.offline-ready-fade-enter-from[data-v-b9c6aee2],.offline-ready-fade-leave-to[data-v-b9c6aee2]{opacity:0}.icon[data-v-48da247e]{flex-shrink:0;width:20px;height:20px}nav[data-v-48da247e]{text-align:center;align-items:center;width:100%;font-weight:500}.largeScreen[data-v-48da247e]{height:var(--header-height);align-items:center;gap:var(--spacing-md);z-index:var(--z-sticky);padding:var(--spacing-sm) var(--spacing-xl);background-color:var(--color-background-soft);border-bottom:1px solid var(--color-border);flex-direction:row;display:flex;position:fixed;top:0;left:0}.nav-identity[data-v-48da247e]{align-items:center;gap:var(--spacing-xs);flex-shrink:0;display:flex}.nav-mark[data-v-48da247e]{width:20px;height:20px;color:var(--color-accent);flex-shrink:0}.nav-wordmark[data-v-48da247e]{font-size:var(--font-size-base);color:var(--color-heading);letter-spacing:.01em;font-weight:700}.nav-callsign[data-v-48da247e]{font-size:var(--font-size-base);color:var(--text-secondary);font-weight:500}.nav-group[data-v-48da247e]{align-items:center;gap:var(--spacing-xs);display:flex}.nav-utility[data-v-48da247e]{margin-left:auto}.nav-link[data-v-48da247e]{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--color-text);white-space:nowrap;border:none;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s;display:inline-flex}.nav-link[data-v-48da247e]:hover{background-color:var(--button-bg)}.nav-link.router-link-active[data-v-48da247e]{background-color:var(--chat-sender-color);color:var(--color-on-accent)}.nav-link.router-link-active[data-v-48da247e]:hover{background-color:var(--chat-sender-color);opacity:.9}.nav-link.secondary[data-v-48da247e]{color:var(--text-secondary)}.nav-link.secondary[data-v-48da247e]:hover{color:var(--color-text);background-color:var(--button-bg)}.nav-link.secondary.router-link-active[data-v-48da247e]{color:var(--color-on-accent);background-color:var(--chat-sender-color)}.mobileBar[data-v-48da247e]{width:100%;padding:var(--spacing-xs) 0;padding-bottom:calc(var(--spacing-xs) + env(safe-area-inset-bottom,0px));padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);font-weight:500;font-size:var(--font-size-sm);z-index:var(--z-sticky);background-color:var(--color-background-soft);border-top:1px solid var(--color-border);justify-content:space-evenly;align-items:stretch;display:none;position:fixed;bottom:0;left:0}.desktop-footer[data-v-48da247e]{width:100%;height:var(--footer-height);background-color:var(--color-background-soft);border-top:1px solid var(--color-border);z-index:var(--z-sticky);justify-content:center;align-items:center;gap:68px;display:flex;position:fixed;bottom:0;left:0}.routerView[data-v-48da247e]{margin-top:calc(var(--header-height) + var(--cert-banner-height,0px) + var(--first-run-banner-height,0px));height:calc(100% - var(--header-height) - var(--footer-height) - var(--cert-banner-height,0px) - var(--first-run-banner-height,0px));overscroll-behavior:contain;padding:0;overflow-y:auto}.more-backdrop[data-v-48da247e],.more-sheet[data-v-48da247e]{display:none}@media screen and (max-width:1200px){.largeScreen[data-v-48da247e]{padding:var(--spacing-sm) var(--spacing-md)}.nav-link[data-v-48da247e]{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}}@media screen and (max-width:900px){.largeScreen[data-v-48da247e],.desktop-footer[data-v-48da247e]{display:none}.routerView[data-v-48da247e]{margin-top:calc(var(--cert-banner-height,0px) + var(--first-run-banner-height,0px));height:calc(100% - var(--cert-banner-height,0px) - var(--first-run-banner-height,0px));max-width:100%;overflow-x:hidden}.mobileBar[data-v-48da247e]{display:flex}.more-backdrop[data-v-48da247e]{z-index:var(--z-overlay);background:#00000073;display:block;position:fixed;top:0;bottom:0;left:0;right:0}.more-sheet[data-v-48da247e]{z-index:var(--z-modal);gap:var(--spacing-xs);background-color:var(--color-background);border-top:1px solid var(--color-border);border-radius:var(--radius-panel) var(--radius-panel) 0 0;max-height:80vh;padding:var(--spacing-lg);padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 32px #0000004d}.more-sheet-header[data-v-48da247e]{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.more-sheet-title[data-v-48da247e]{font-size:var(--font-size-base);color:var(--color-heading);font-weight:600}.more-sheet-close-btn[data-v-48da247e]{font-size:var(--font-size-xl);color:var(--color-text);cursor:pointer;padding:0 var(--spacing-xs);background:0 0;border:none;line-height:1}.more-row[data-v-48da247e]{align-items:center;gap:var(--spacing-sm);min-height:44px;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text);font-weight:500;text-decoration:none;display:flex}.more-row[data-v-48da247e]:hover{background-color:var(--button-bg)}.more-row.router-link-active[data-v-48da247e]{border-color:var(--chat-sender-color);color:var(--chat-sender-color)}.more-row-icon[data-v-48da247e]{flex-shrink:0;width:20px;height:20px}.more-row-label[data-v-48da247e]{flex:1}.sheet-slide-enter-active[data-v-48da247e],.sheet-slide-leave-active[data-v-48da247e]{transition:transform .25s}.sheet-slide-enter-from[data-v-48da247e],.sheet-slide-leave-to[data-v-48da247e]{transform:translateY(100%)}}.mobileBar>a[data-v-48da247e],.mobileBar>.more-tab[data-v-48da247e],.mobileBar .chip-slot[data-v-48da247e]>.mobile-status-chip{min-width:0;min-height:44px;padding:var(--spacing-xs);color:var(--chat-timestamp);flex-direction:column;flex:0 auto;justify-content:flex-end;align-items:center;gap:2px;text-decoration:none;display:flex}.mobileBar>.more-tab[data-v-48da247e]{font:inherit;font-weight:500;font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none}.mobileBar>a>span[data-v-48da247e],.mobileBar>.more-tab>span[data-v-48da247e]:not(.more-glyph),.mobileBar .chip-slot[data-v-48da247e]>.mobile-status-chip>span:not(.chip-dot){text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1;overflow:hidden}.mobileBar a .icon[data-v-48da247e]{width:26px;height:26px}.more-glyph[data-v-48da247e]{width:26px;height:26px;font-size:var(--font-size-lg);color:var(--chat-timestamp);justify-content:center;align-items:center;line-height:1;display:flex}.mobileBar a.router-link-active[data-v-48da247e],.more-tab.router-link-active[data-v-48da247e],.more-tab.router-link-active .more-glyph[data-v-48da247e]{color:var(--chat-sender-color)}.chip-slot[data-v-48da247e]{display:contents}
