/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.terminal-wrapper[data-v-c4a0d668]{display:flex;flex-direction:column;height:100%;background:#0d1117}.terminal-toolbar[data-v-c4a0d668]{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;background:#161b22;border-bottom:1px solid #30363d;flex-shrink:0}.term-status[data-v-c4a0d668]{display:flex;align-items:center;gap:6px;font-size:12px;font-family:var(--font-mono);color:var(--text-dim)}.term-dot[data-v-c4a0d668]{width:7px;height:7px;border-radius:50%}.term-status.connecting .term-dot[data-v-c4a0d668]{background:var(--yellow);animation:pulse-c4a0d668 1.2s infinite}.term-status.connected .term-dot[data-v-c4a0d668]{background:var(--green)}.term-status.error .term-dot[data-v-c4a0d668]{background:var(--red)}.term-status.closed .term-dot[data-v-c4a0d668]{background:var(--text-muted)}@keyframes pulse-c4a0d668{0%,to{opacity:1}50%{opacity:.3}}.btn-reconnect[data-v-c4a0d668]{padding:3px 12px;background:var(--accent);border:none;border-radius:4px;color:#fff;font-size:12px;cursor:pointer}.btn-reconnect[data-v-c4a0d668]:hover{background:var(--accent-hover)}.terminal-container[data-v-c4a0d668]{flex:1;padding:8px;overflow:hidden}[data-v-c4a0d668] .xterm{padding:8px 12px;height:100%}[data-v-c4a0d668] .xterm-viewport{overflow-y:auto!important}@media (max-width: 768px){.terminal-toolbar[data-v-c4a0d668]{padding:6px 10px}.term-status[data-v-c4a0d668]{font-size:11px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-reconnect[data-v-c4a0d668]{flex-shrink:0}.terminal-container[data-v-c4a0d668]{padding:4px}[data-v-c4a0d668] .xterm{padding:6px 8px}}.bt-view[data-v-525064ee]{height:100%;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.bt-nav[data-v-525064ee]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bt-nav-btn[data-v-525064ee]{padding:7px 18px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-dim);font-size:13px;cursor:pointer;transition:all .15s}.bt-nav-btn[data-v-525064ee]:hover{color:var(--text)}.bt-nav-btn.active[data-v-525064ee]{background:var(--accent);border-color:var(--accent);color:#fff}.bt-session-hint[data-v-525064ee]{margin-left:auto;font-size:12px;font-family:var(--font-mono);color:var(--text-muted)}.bt-session-hint.warn[data-v-525064ee]{color:var(--red)}.bt-section[data-v-525064ee]{display:flex;flex-direction:column;gap:16px;max-width:720px}.bt-card[data-v-525064ee]{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px 24px}.bt-card h3[data-v-525064ee]{font-size:16px;margin-bottom:6px}.bt-desc[data-v-525064ee]{font-size:13px;color:var(--text-muted);margin-bottom:18px;line-height:1.6}.form-grid[data-v-525064ee]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.form-row[data-v-525064ee]{display:flex;flex-direction:column;gap:4px}.form-row-wide[data-v-525064ee]{grid-column:1 / -1}.form-row label[data-v-525064ee]{font-size:12px;color:var(--text-dim);font-weight:500}.form-row input[data-v-525064ee]{padding:8px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:13px;font-family:var(--font-mono);outline:none}.form-row input[data-v-525064ee]:focus{border-color:var(--accent)}.btn-run[data-v-525064ee]{margin-top:8px;padding:10px 24px;background:var(--accent);border:none;border-radius:var(--radius);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-run[data-v-525064ee]:hover:not(:disabled){background:var(--accent-hover)}.btn-run[data-v-525064ee]:disabled{opacity:.6;cursor:not-allowed}.bt-error[data-v-525064ee]{margin-top:14px;padding:10px 14px;background:#ef44441a;border:1px solid var(--red);border-radius:var(--radius);color:var(--red);font-size:13px}.modal-mask[data-v-525064ee]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.modal-box[data-v-525064ee]{width:400px;max-width:calc(100vw - 48px);background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:22px 24px;box-shadow:0 12px 40px #00000040}.modal-box h3[data-v-525064ee]{font-size:16px;margin-bottom:10px}.modal-desc[data-v-525064ee]{font-size:13px;color:var(--text-muted);line-height:1.7;margin-bottom:18px}.modal-desc strong[data-v-525064ee]{color:var(--text);font-family:var(--font-mono)}.modal-warn[data-v-525064ee]{color:var(--yellow);font-weight:600}.modal-actions[data-v-525064ee]{display:flex;justify-content:flex-end;gap:10px}.modal-actions .btn-run[data-v-525064ee]{margin-top:0}.btn-cancel[data-v-525064ee]{padding:10px 20px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-dim);font-size:14px;cursor:pointer;transition:all .15s}.btn-cancel[data-v-525064ee]:hover{color:var(--text);border-color:var(--accent)}.log-card[data-v-525064ee]{padding:0;overflow:hidden}.log-header[data-v-525064ee]{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#161b22;border-bottom:1px solid #30363d}.log-status[data-v-525064ee]{display:flex;align-items:center;gap:6px;font-size:12px;font-family:var(--font-mono);color:var(--text-dim)}.log-dot[data-v-525064ee]{width:7px;height:7px;border-radius:50%}.log-status.run .log-dot[data-v-525064ee]{background:var(--yellow);animation:pulse-525064ee 1.2s infinite}.log-status.ok .log-dot[data-v-525064ee]{background:var(--green)}.log-status.fail .log-dot[data-v-525064ee]{background:var(--red)}.log-label[data-v-525064ee]{font-size:12px;color:var(--text-muted);font-family:var(--font-mono)}.log-box[data-v-525064ee]{margin:0;padding:14px 16px;height:320px;overflow-y:auto;background:#0d1117;color:#c9d1d9;font-family:var(--font-mono);font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-all}.op-result[data-v-525064ee]{margin-top:16px;padding:12px 14px;border-radius:var(--radius);font-size:13px}.op-result.ok[data-v-525064ee]{background:#22c55e14;border:1px solid var(--green);color:var(--green)}.op-result.fail[data-v-525064ee]{background:#ef44441a;border:1px solid var(--red);color:var(--red)}.op-output[data-v-525064ee]{margin:8px 0 0;white-space:pre-wrap;word-break:break-all;font-size:12px;font-family:var(--font-mono);line-height:1.5}.op-result-head[data-v-525064ee]{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.op-toggle[data-v-525064ee]{font-size:12px;opacity:.75}.op-result.collapsed .op-output[data-v-525064ee]{display:none}.op-result.collapsed[data-v-525064ee]{padding:10px 14px}.panel-card h3[data-v-525064ee]{display:flex;align-items:center;gap:10px}.panel-head[data-v-525064ee]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.panel-cached[data-v-525064ee]{font-size:11px;font-weight:400;color:var(--green);padding:1px 8px;border:1px solid var(--green);border-radius:3px}.btn-copy[data-v-525064ee]{flex-shrink:0;margin-left:auto;padding:3px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-size:12px;cursor:pointer;transition:all .15s}.btn-copy[data-v-525064ee]:hover{border-color:var(--accent);color:var(--accent)}.btn-copy.copied[data-v-525064ee]{border-color:var(--green);color:var(--green)}.panel-head .btn-copy[data-v-525064ee]{margin-left:0;padding:5px 14px;font-size:13px}.panel-row[data-v-525064ee]{display:flex;align-items:center;gap:12px;padding:6px 0;font-size:13px}.panel-label[data-v-525064ee]{width:64px;flex-shrink:0;color:var(--text-muted);font-size:12px}.panel-row a[data-v-525064ee]{color:var(--accent);word-break:break-all}.panel-row code[data-v-525064ee]{font-family:var(--font-mono);color:var(--text);word-break:break-all}.pwd-missing[data-v-525064ee]{color:var(--yellow);font-size:13px}.btn-reset-pwd[data-v-525064ee]{flex-shrink:0;margin-left:auto;padding:3px 12px;background:var(--accent);border:none;border-radius:4px;color:#fff;font-size:12px;cursor:pointer;transition:opacity .15s}.btn-reset-pwd[data-v-525064ee]:hover{opacity:.85}@keyframes pulse-525064ee{0%,to{opacity:1}50%{opacity:.3}}@media (max-width: 768px){.bt-view[data-v-525064ee]{padding:14px 12px;gap:12px}.bt-nav[data-v-525064ee]{gap:6px}.bt-nav-btn[data-v-525064ee]{padding:6px 12px;font-size:12px}.bt-session-hint[data-v-525064ee]{display:none}.bt-card[data-v-525064ee]{padding:16px 14px}.form-grid[data-v-525064ee]{grid-template-columns:1fr;gap:12px}.form-row input[data-v-525064ee]{font-size:16px;padding:10px 12px}.btn-run[data-v-525064ee]{width:100%;padding:12px;font-size:15px}.modal-box[data-v-525064ee]{width:100%;max-width:calc(100vw - 24px);padding:18px 16px}.modal-actions[data-v-525064ee]{flex-direction:column-reverse}.modal-actions .btn-run[data-v-525064ee],.btn-cancel[data-v-525064ee]{width:100%}.log-box[data-v-525064ee]{height:240px;font-size:11px;padding:10px 12px}.panel-row[data-v-525064ee]{flex-wrap:wrap;gap:6px 12px}.panel-head[data-v-525064ee]{flex-wrap:wrap;gap:8px}}.port-view[data-v-f496d03b]{height:100%;overflow-y:auto;padding:24px 32px;background:var(--bg)}.port-section h3[data-v-f496d03b]{font-size:18px;margin-bottom:16px;color:var(--text)}.port-form[data-v-f496d03b]{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:20px}.form-item[data-v-f496d03b]{display:flex;flex-direction:column;gap:4px}.form-item label[data-v-f496d03b]{font-size:12px;color:var(--text-dim)}.form-item input[type=text][data-v-f496d03b],.form-item input[type=number][data-v-f496d03b]{padding:8px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:13px;font-family:var(--font-mono);outline:none;min-width:120px}.form-item input[data-v-f496d03b]:focus{border-color:var(--accent)}.btn-check[data-v-f496d03b]{padding:8px 24px;background:var(--accent);border:none;border-radius:var(--radius);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-check[data-v-f496d03b]:hover:not(:disabled){background:var(--accent-hover)}.btn-check[data-v-f496d03b]:disabled{opacity:.5;cursor:not-allowed}.port-result[data-v-f496d03b]{display:flex;gap:16px;padding:16px 20px;border-radius:var(--radius);border:1px solid var(--border)}.port-result.open[data-v-f496d03b]{background:#22c55e14;border-color:var(--green)}.port-result.closed[data-v-f496d03b]{background:#ef444414;border-color:var(--red)}.result-icon[data-v-f496d03b]{font-size:28px}.result-info[data-v-f496d03b]{display:flex;flex-direction:column;gap:4px}.result-line[data-v-f496d03b]{font-size:13px;font-family:var(--font-mono)}.result-label[data-v-f496d03b]{color:var(--text-muted);margin-right:6px}.text-green[data-v-f496d03b]{color:var(--green);font-weight:700}.text-red[data-v-f496d03b]{color:var(--red);font-weight:700}.port-hint[data-v-f496d03b]{font-size:12.5px;color:var(--text-muted);margin:-8px 0 16px;line-height:1.6}.port-error[data-v-f496d03b]{margin-top:20px;padding:12px 16px;background:#ef44441a;border:1px solid var(--red);border-radius:var(--radius);color:var(--red);font-size:13px}@media (max-width: 768px){.port-view[data-v-f496d03b]{padding:16px 14px}.port-section h3[data-v-f496d03b]{font-size:16px}.form-item input[type=text][data-v-f496d03b],.form-item input[type=number][data-v-f496d03b]{font-size:16px;padding:10px 12px;min-width:0;width:100%}.form-item[data-v-f496d03b]{flex:1 1 140px}.btn-check[data-v-f496d03b]{flex:1 1 100%;padding:12px;font-size:16px}.port-result[data-v-f496d03b]{padding:14px 16px;gap:12px}.result-icon[data-v-f496d03b]{font-size:22px}}.home[data-v-c7a5bf96]{height:100%;overflow-y:auto;overflow-x:hidden;background:radial-gradient(1200px 600px at 80% -10%,rgba(99,102,241,.12),transparent 60%),radial-gradient(900px 500px at -10% 30%,rgba(34,197,94,.06),transparent 60%),var(--bg);scroll-behavior:smooth}.hero[data-v-c7a5bf96]{position:relative;min-height:460px;display:flex;align-items:center;justify-content:center;padding:60px 24px 80px;overflow:hidden}.hero-glow[data-v-c7a5bf96]{position:absolute;top:-120px;left:50%;transform:translate(-50%);width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.25) 0%,transparent 60%);filter:blur(20px);animation:breathe-c7a5bf96 6s ease-in-out infinite;pointer-events:none;z-index:0}.hero-content[data-v-c7a5bf96]{position:relative;z-index:2;max-width:820px;text-align:center}.hero-badge[data-v-c7a5bf96]{display:inline-block;padding:5px 14px;background:#6366f11f;border:1px solid rgba(99,102,241,.35);border-radius:999px;color:var(--accent-hover);font-size:12px;letter-spacing:.5px;margin-bottom:18px}.hero-title[data-v-c7a5bf96]{font-size:56px;font-weight:800;letter-spacing:2px;line-height:1.1;margin-bottom:18px}.brand[data-v-c7a5bf96]{color:var(--text)}.brand-accent[data-v-c7a5bf96]{color:var(--accent)}.brand-sub[data-v-c7a5bf96]{display:block;font-size:18px;font-weight:500;letter-spacing:8px;color:var(--text-dim);margin-top:6px}.hero-desc[data-v-c7a5bf96]{font-size:15px;line-height:1.9;color:var(--text-dim);margin-bottom:28px}.hero-actions[data-v-c7a5bf96]{display:inline-flex;flex-direction:column;align-items:center;gap:10px}.btn-start[data-v-c7a5bf96]{display:inline-flex;align-items:center;gap:10px;padding:13px 32px;background:var(--accent);border:none;border-radius:999px;color:#fff;font-size:16px;font-weight:600;letter-spacing:1px;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s;box-shadow:0 8px 24px #6366f159}.btn-start[data-v-c7a5bf96]:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 12px 32px #6366f180}.btn-start[data-v-c7a5bf96]:active{transform:translateY(0)}.btn-arrow[data-v-c7a5bf96]{font-weight:700;transition:transform .18s}.btn-start:hover .btn-arrow[data-v-c7a5bf96]{transform:translate(4px)}.hero-hint[data-v-c7a5bf96]{font-size:12px;color:var(--text-muted)}.hero-floats[data-v-c7a5bf96]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.float-chip[data-v-c7a5bf96]{position:absolute;padding:5px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;font-family:var(--font-mono);font-size:12px;color:var(--text-dim);box-shadow:0 4px 14px #00000040;animation:floaty-c7a5bf96 6s ease-in-out infinite;opacity:.85}.float-chip-1[data-v-c7a5bf96]{top:18%;left:10%;animation-delay:0s}.float-chip-2[data-v-c7a5bf96]{top:22%;right:12%;animation-delay:1.2s}.float-chip-3[data-v-c7a5bf96]{bottom:22%;left:14%;animation-delay:2.4s}.float-chip-4[data-v-c7a5bf96]{bottom:18%;right:10%;animation-delay:3.6s}@keyframes breathe-c7a5bf96{0%,to{transform:translate(-50%) scale(1);opacity:.85}50%{transform:translate(-50%) scale(1.08);opacity:1}}@keyframes floaty-c7a5bf96{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.section-title[data-v-c7a5bf96]{text-align:center;font-size:28px;font-weight:700;color:var(--text);margin-bottom:8px}.section-subtitle[data-v-c7a5bf96]{text-align:center;font-size:13px;color:var(--text-muted);margin-bottom:36px}.features[data-v-c7a5bf96]{padding:70px 24px 40px;max-width:1080px;margin:0 auto}.features-grid[data-v-c7a5bf96]{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature-card[data-v-c7a5bf96]{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:22px 18px;transition:transform .2s,border-color .2s,box-shadow .2s}.feature-card[data-v-c7a5bf96]:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 12px 30px #6366f126}.feature-icon[data-v-c7a5bf96]{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#6366f11f;border-radius:12px;color:var(--accent-hover);font-size:22px;margin-bottom:14px;transition:background .2s}.feature-card:hover .feature-icon[data-v-c7a5bf96]{background:#6366f138}.feature-title[data-v-c7a5bf96]{font-size:15px;font-weight:600;color:var(--text);margin-bottom:8px}.feature-desc[data-v-c7a5bf96]{font-size:12.5px;line-height:1.7;color:var(--text-dim)}.screenshots[data-v-c7a5bf96]{padding:60px 24px 50px;max-width:1200px;margin:0 auto}.screenshots-grid[data-v-c7a5bf96]{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.screenshot-card[data-v-c7a5bf96]{display:flex;flex-direction:column;gap:14px}.screenshot-frame[data-v-c7a5bf96]{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 14px 40px #00000059;transition:transform .25s,box-shadow .25s}.screenshot-frame[data-v-c7a5bf96]:hover{transform:translateY(-4px);box-shadow:0 18px 48px #00000080}.screenshot-header[data-v-c7a5bf96]{display:flex;gap:6px;padding:8px 12px;background:#00000040;border-bottom:1px solid var(--border)}.frame-dot[data-v-c7a5bf96]{width:10px;height:10px;border-radius:50%}.dot-red[data-v-c7a5bf96]{background:#ff5f56}.dot-yellow[data-v-c7a5bf96]{background:#ffbd2e}.dot-green[data-v-c7a5bf96]{background:#27c93f}.screenshot-frame img[data-v-c7a5bf96]{display:block;width:100%;height:100%;aspect-ratio:16 / 9;object-fit:cover;object-position:top center}.screenshot-info[data-v-c7a5bf96]{padding:0 4px}.screenshot-badge[data-v-c7a5bf96]{display:inline-block;padding:2px 10px;background:#22c55e1f;border:1px solid rgba(34,197,94,.3);border-radius:4px;color:var(--green);font-size:11px;margin-bottom:8px}.screenshot-title[data-v-c7a5bf96]{font-size:17px;font-weight:600;color:var(--text);margin-bottom:6px}.screenshot-desc[data-v-c7a5bf96]{font-size:13px;line-height:1.7;color:var(--text-dim)}.cta[data-v-c7a5bf96]{position:relative;padding:56px 24px;border-radius:18px;background:linear-gradient(135deg,#6366f12e,#22c55e14);border:1px solid var(--border);text-align:center;overflow:hidden;max-width:980px;margin:30px auto 60px}.cta-glow[data-v-c7a5bf96]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.25),transparent 65%);filter:blur(10px);animation:breathe-c7a5bf96 6s ease-in-out infinite;pointer-events:none;z-index:0}.cta-title[data-v-c7a5bf96],.cta-desc[data-v-c7a5bf96],.cta-foot[data-v-c7a5bf96],.btn-cta[data-v-c7a5bf96]{position:relative;z-index:1}.cta-title[data-v-c7a5bf96]{font-size:26px;font-weight:700;color:var(--text);margin-bottom:10px}.cta-desc[data-v-c7a5bf96]{font-size:14px;color:var(--green);margin-bottom:22px}.btn-cta[data-v-c7a5bf96]{margin:0 auto}.cta-foot[data-v-c7a5bf96]{margin-top:16px;font-size:12px;color:var(--text-muted)}@media (max-width: 900px){.features-grid[data-v-c7a5bf96]{grid-template-columns:repeat(2,1fr)}.screenshots-grid[data-v-c7a5bf96]{grid-template-columns:1fr}}@media (max-width: 768px){.hero[data-v-c7a5bf96]{min-height:auto;padding:40px 16px 60px}.hero-title[data-v-c7a5bf96]{font-size:38px}.brand-sub[data-v-c7a5bf96]{font-size:14px;letter-spacing:6px}.hero-desc[data-v-c7a5bf96]{font-size:14px}.features[data-v-c7a5bf96],.screenshots[data-v-c7a5bf96]{padding:40px 16px 30px}.section-title[data-v-c7a5bf96]{font-size:22px}.float-chip[data-v-c7a5bf96]{display:none}.cta[data-v-c7a5bf96]{margin:20px 16px 40px;padding:40px 16px}.cta-title[data-v-c7a5bf96]{font-size:20px}}@media (max-width: 480px){.features-grid[data-v-c7a5bf96]{grid-template-columns:1fr}.hero-title[data-v-c7a5bf96]{font-size:32px}}.topbar[data-v-8081bb7b]{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:50px;background:var(--bg-card);border-bottom:1px solid var(--border);flex-shrink:0}.topbar-left .logo[data-v-8081bb7b]{font-size:18px;font-weight:700;letter-spacing:1px;color:var(--text)}.logo-accent[data-v-8081bb7b]{color:var(--accent)}.topbar-center[data-v-8081bb7b]{display:flex;gap:4px}.tab-btn[data-v-8081bb7b]{display:flex;align-items:center;gap:6px;padding:6px 16px;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--text-dim);font-size:13px;cursor:pointer;transition:all .15s}.tab-btn[data-v-8081bb7b]:hover{background:var(--bg-input);color:var(--text)}.tab-btn.active[data-v-8081bb7b]{background:var(--accent);color:#fff;border-color:var(--accent)}.tab-icon[data-v-8081bb7b]{font-family:var(--font-mono);font-weight:700;opacity:.6}.topbar-right .status[data-v-8081bb7b]{display:flex;align-items:center;gap:8px;font-size:13px;font-family:var(--font-mono)}.status-dot[data-v-8081bb7b]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status.connected .status-dot[data-v-8081bb7b]{background:var(--green);box-shadow:0 0 6px var(--green)}.status.disconnected .status-dot[data-v-8081bb7b]{background:var(--red)}.btn-disconnect[data-v-8081bb7b]{margin-left:8px;padding:3px 10px;background:var(--red);border:none;border-radius:4px;color:#fff;font-size:12px;cursor:pointer;transition:opacity .15s}.btn-disconnect[data-v-8081bb7b]:hover{opacity:.85}.btn-about[data-v-8081bb7b]{display:flex;align-items:center;gap:6px;padding:6px 16px;background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-dim);font-size:13px;cursor:pointer;transition:all .15s;margin-left:8px;white-space:nowrap}.btn-about[data-v-8081bb7b]:hover{border-color:var(--accent);color:var(--accent)}.status-host[data-v-8081bb7b]{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.idle-countdown[data-v-8081bb7b]{position:relative;display:inline-flex;align-items:center;gap:5px;padding:2px 8px;background:var(--bg-input);border-radius:4px;font-size:12px;color:var(--text-dim);cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap}.idle-countdown.warning[data-v-8081bb7b]{color:var(--yellow);background:#d299221f;animation:pulse-8081bb7b 1.2s infinite}.idle-countdown.task-running[data-v-8081bb7b]{color:var(--blue);background:#3b82f61f}.idle-help[data-v-8081bb7b]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--text-muted);color:var(--text-muted);font-size:10px;font-weight:700;line-height:1;cursor:help;flex-shrink:0}.idle-help[data-v-8081bb7b]:hover{border-color:var(--accent);color:var(--accent)}.idle-help-tip[data-v-8081bb7b]{position:absolute;top:calc(100% + 8px);right:-8px;padding:7px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-family:var(--font-sans);white-space:nowrap;box-shadow:0 6px 20px #00000073;opacity:0;visibility:hidden;transform:translateY(-4px);transition:all .15s;z-index:60;pointer-events:none}.idle-help:hover .idle-help-tip[data-v-8081bb7b]{opacity:1;visibility:visible;transform:translateY(0)}@keyframes pulse-8081bb7b{0%,to{opacity:1}50%{opacity:.5}}.conn-overlay[data-v-8081bb7b]{position:relative;flex:1;display:flex;align-items:flex-start;justify-content:center;padding-top:60px;background:var(--bg);z-index:10}.conn-card[data-v-8081bb7b]{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:28px 32px;width:560px;max-width:90vw}.conn-card h2[data-v-8081bb7b]{font-size:20px;margin-bottom:16px}.conn-saved[data-v-8081bb7b]{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}.saved-label[data-v-8081bb7b]{font-size:12px;color:var(--text-muted)}.saved-chip[data-v-8081bb7b]{padding:3px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-size:12px;font-family:var(--font-mono);cursor:pointer;transition:all .15s}.saved-chip[data-v-8081bb7b]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.form-grid[data-v-8081bb7b]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row[data-v-8081bb7b]{display:flex;flex-direction:column;gap:4px}.form-row-wide[data-v-8081bb7b]{grid-column:1 / -1}.form-row label[data-v-8081bb7b]{font-size:12px;color:var(--text-dim);font-weight:500}.form-row input[data-v-8081bb7b],.form-row select[data-v-8081bb7b],.form-row textarea[data-v-8081bb7b]{padding:8px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:13px;font-family:var(--font-mono);outline:none;transition:border-color .15s}.form-row input[data-v-8081bb7b]:focus,.form-row select[data-v-8081bb7b]:focus,.form-row textarea[data-v-8081bb7b]:focus{border-color:var(--accent)}.form-row textarea[data-v-8081bb7b]{resize:vertical;font-size:12px}.form-remember[data-v-8081bb7b]{flex-direction:row;align-items:center}.remember-label[data-v-8081bb7b]{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none}.remember-label input[type=checkbox][data-v-8081bb7b]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.conn-error[data-v-8081bb7b]{margin-top:14px;padding:10px 14px;background:#ef44441a;border:1px solid var(--red);border-radius:var(--radius);color:var(--red);font-size:13px}.btn-connect[data-v-8081bb7b]{margin-top:20px;width:100%;padding:12px;background:var(--accent);border:none;border-radius:var(--radius);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s}.btn-connect[data-v-8081bb7b]:hover:not(:disabled){background:var(--accent-hover)}.btn-connect[data-v-8081bb7b]:disabled{opacity:.6;cursor:not-allowed}.main-content[data-v-8081bb7b]{flex:1;overflow:hidden;position:relative}.disclaimer-link[data-v-8081bb7b]{color:var(--accent);cursor:pointer;text-decoration:underline}.disclaimer-link[data-v-8081bb7b]:hover{opacity:.8}.about-overlay[data-v-8081bb7b]{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#0000008c;z-index:100}.about-card[data-v-8081bb7b]{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:26px 30px;width:520px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 12px 40px #0006}.about-card h2[data-v-8081bb7b]{font-size:19px;margin-bottom:18px}.about-body[data-v-8081bb7b]{display:flex;flex-direction:column;gap:10px}.about-row[data-v-8081bb7b]{display:flex;align-items:baseline;gap:12px;font-size:13px;color:var(--text)}.about-label[data-v-8081bb7b]{flex-shrink:0;width:64px;font-size:12px;color:var(--text-muted)}.about-row a[data-v-8081bb7b]{color:var(--accent);text-decoration:none;font-family:var(--font-mono)}.about-row a[data-v-8081bb7b]:hover{text-decoration:underline}.about-code[data-v-8081bb7b]{padding:1px 6px;background:var(--bg-input);border-radius:4px;font-family:var(--font-mono);font-size:12px}.about-section[data-v-8081bb7b]{margin-top:6px;padding-top:14px;border-top:1px solid var(--border)}.about-section h3[data-v-8081bb7b]{font-size:14px;margin-bottom:8px;color:var(--text)}.about-disclaimer[data-v-8081bb7b]{font-size:12.5px;line-height:1.7;color:var(--text-dim);text-align:justify}.about-disclaimer.about-warning[data-v-8081bb7b]{color:var(--yellow)}.about-disclaimer.about-promise[data-v-8081bb7b]{color:var(--green);font-size:13.5px;font-weight:600}.btn-about-close[data-v-8081bb7b]{margin-top:20px;width:100%;padding:10px;background:var(--accent);border:none;border-radius:var(--radius);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-about-close[data-v-8081bb7b]:hover{background:var(--accent-hover)}.disconnect-confirm-card[data-v-8081bb7b]{width:420px}.disconnect-confirm-card h2[data-v-8081bb7b]{margin-bottom:12px}.disconnect-confirm-actions[data-v-8081bb7b]{margin-top:22px;display:flex;gap:12px}.btn-cancel-disconnect[data-v-8081bb7b],.btn-confirm-disconnect[data-v-8081bb7b]{flex:1;padding:11px;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-cancel-disconnect[data-v-8081bb7b]{background:var(--bg-input);border:1px solid var(--border);color:var(--text-dim)}.btn-cancel-disconnect[data-v-8081bb7b]:hover{color:var(--text);border-color:var(--accent)}.btn-confirm-disconnect[data-v-8081bb7b]{background:var(--red);color:#fff}.btn-confirm-disconnect[data-v-8081bb7b]:hover{opacity:.85}@media (max-width: 768px){.topbar[data-v-8081bb7b]{height:auto;flex-wrap:wrap;padding:6px 10px;gap:4px 8px}.topbar-left .logo[data-v-8081bb7b]{font-size:15px}.topbar-center[data-v-8081bb7b]{order:3;flex:1 1 100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 0}.topbar-center[data-v-8081bb7b]::-webkit-scrollbar{display:none}.topbar-right[data-v-8081bb7b]{margin-left:auto;min-width:0}.tab-btn[data-v-8081bb7b]{padding:5px 10px;font-size:12px;white-space:nowrap}.btn-about[data-v-8081bb7b]{padding:5px 10px;font-size:12px;margin-left:4px;white-space:nowrap}.status-host[data-v-8081bb7b]{display:none}.idle-help-tip[data-v-8081bb7b]{right:-40px}.conn-overlay[data-v-8081bb7b]{align-items:flex-start;padding:20px 12px 40px;overflow-y:auto;-webkit-overflow-scrolling:touch}.conn-card[data-v-8081bb7b]{width:100%;padding:20px 16px;margin:0 auto}.conn-card h2[data-v-8081bb7b]{font-size:18px}.form-grid[data-v-8081bb7b]{grid-template-columns:1fr;gap:12px}.form-row input[data-v-8081bb7b],.form-row select[data-v-8081bb7b],.form-row textarea[data-v-8081bb7b]{font-size:16px;padding:10px 12px}.btn-connect[data-v-8081bb7b]{padding:14px;font-size:16px}.about-overlay[data-v-8081bb7b]{padding:16px;align-items:center}.about-card[data-v-8081bb7b]{width:100%;padding:20px 16px}.about-row[data-v-8081bb7b]{flex-wrap:wrap;gap:6px 12px}.about-disclaimer[data-v-8081bb7b]{text-align:left}}@media (max-width: 400px){.status.disconnected[data-v-8081bb7b],.idle-countdown[data-v-8081bb7b]{font-size:11px}.btn-disconnect[data-v-8081bb7b]{padding:3px 8px;font-size:11px}}:root{--bg: #0f172a;--bg-card: #1e293b;--bg-input: #334155;--bg-hover: #475569;--border: #334155;--text: #e2e8f0;--text-dim: #94a3b8;--text-muted: #64748b;--accent: #6366f1;--accent-hover: #818cf8;--green: #22c55e;--red: #ef4444;--yellow: #eab308;--blue: #3b82f6;--radius: 8px;--font-mono: "Cascadia Code", "Fira Code", "JetBrains Mono", "Consolas", "Courier New", monospace;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}#app{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}
