@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--sans: "Space Grotesk", "Segoe UI", system-ui, sans-serif;--mono: "IBM Plex Mono", Consolas, "Fira Mono", monospace;font-family:var(--sans);line-height:1.4;font-weight:400;font-size:15px;color:#d4d4d8;--text: #d4d4d8;--bg-0: #0d0d10;--bg-1: #111114;--bg-2: #1a1a1e;--panel: #141418;--border: rgba(255, 255, 255, .07);--muted: rgba(212, 212, 216, .55);--accent: #4cc9f0;--accent-2: #9c6bff;--danger: #ff6b6b;--device-body: #131316;--device-border: #2a2a30;--device-button: #5b5b63}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg-0);color:var(--text);overflow:hidden}#app{height:100vh;display:flex}.dashboard{display:flex;flex-direction:column;width:100%;height:100vh;overflow:hidden}.dashboard-body{display:flex;flex:1;min-height:0;overflow:hidden}.workspace{flex:1;min-width:420px;min-height:0;overflow:hidden;background:var(--bg-1)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}::selection{background:#4cc9f04d}button{font-family:inherit;cursor:pointer}:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.tool-surface{display:flex;flex-direction:column;height:100%;gap:16px;padding:16px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.tool-hero{position:relative;display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--bg-2);margin-bottom:10px}.tool-hero-close{position:absolute;top:8px;right:10px;background:none;border:1px solid var(--border);color:var(--muted);cursor:pointer;padding:0;width:22px;height:22px;border-radius:4px;font-size:.75rem;line-height:1;opacity:.6;display:flex;align-items:center;justify-content:center}.tool-hero-close:hover{opacity:1;color:var(--text);border-color:var(--accent)}.tool-hero-title{font-size:.88rem;font-weight:600;color:var(--text)}.tool-hero-title-row{display:flex;align-items:center;gap:8px}.tool-hero-desc,.tool-list-detail,.tool-empty{font-size:.76rem;line-height:1.5;color:var(--muted)}.tool-tag-row{display:flex;flex-wrap:wrap;gap:6px}.tool-tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;background:#ffffff0d;border:1px solid var(--border);color:var(--text);font-size:.68rem;font-family:var(--mono)}.tool-section{display:flex;flex-direction:column;gap:8px}.tool-section-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.tool-section-title-row{display:flex;align-items:center;gap:8px}.tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.tool-card{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:6px;border:1px solid var(--border);background:#ffffff05}.tool-card-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.tool-card-value{font-size:.84rem;font-family:var(--mono);color:var(--text);word-break:break-word}.tool-value-live{color:#6bdd8b}.tool-value-idle{color:var(--muted)}.tool-value-warn{color:#f7c266}.tool-value-error,.tool-value-blocked{color:#ff8b8b}.tool-list{display:flex;flex-direction:column;gap:8px}.tool-list-item{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:#ffffff05}.tool-list-main{display:flex;flex-direction:column;gap:4px;min-width:0}.tool-list-title{font-size:.78rem;font-weight:600;color:var(--text)}.status-pill{display:inline-flex;align-items:center;align-self:flex-start;flex-shrink:0;height:fit-content;padding:2px 7px;border-radius:999px;border:1px solid transparent;font-size:.67rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.status-live{color:#6bdd8b;background:#6bdd8b1a;border-color:#6bdd8b2e}.status-partial{color:#86b8ff;background:#86b8ff1a;border-color:#86b8ff2e}.status-planned{color:#c8b5ff;background:#9c6bff1a;border-color:#9c6bff2e}.status-blocked{color:#ff8b8b;background:#ff6b6b1a;border-color:#ff6b6b2e}.status-warn{color:#f0b84b;background:#f0b84b1a;border-color:#f0b84b38}.status-error{color:#ff8b8b;background:#ff6b6b14;border-color:#ff6b6b33}.status-idle{color:var(--muted);background:#ffffff0a;border-color:var(--border)}.tool-console{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:#0f1014;min-height:120px;max-height:220px;overflow-y:auto;font-family:var(--mono)}.tool-console-row{display:grid;grid-template-columns:78px 36px minmax(0,1fr);gap:8px;align-items:start;font-size:.72rem}.tool-console-time{color:var(--muted)}.tool-console-level{text-transform:uppercase;color:var(--muted)}.tool-console-text{word-break:break-word;color:var(--text)}.top-bar.svelte-1h259us{display:flex;align-items:center;justify-content:space-between;height:50px;padding:0 16px;background:var(--panel);border-bottom:1px solid var(--border);font-size:.88rem;gap:14px;flex-shrink:0;z-index:10}.top-bar-left.svelte-1h259us{display:flex;align-items:center;gap:12px;min-width:0}.top-bar-logo.svelte-1h259us img:where(.svelte-1h259us){height:24px;display:block}.top-bar-title.svelte-1h259us{font-weight:600;font-size:.96rem;letter-spacing:.03em;white-space:nowrap}.top-bar-divider.svelte-1h259us{color:var(--muted);font-size:.82rem;opacity:.4}.top-bar-status.svelte-1h259us{display:flex;align-items:center;gap:7px}.status-dot.svelte-1h259us{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-live.svelte-1h259us{background:#3dd68c;box-shadow:0 0 6px #3dd68c80}.dot-error.svelte-1h259us{background:#ff6b6b;box-shadow:0 0 6px #ff6b6b80}.dot-loading.svelte-1h259us{background:#f7c266;box-shadow:0 0 6px #f7c26666;animation:svelte-1h259us-pulse 1.5s ease-in-out infinite}@keyframes svelte-1h259us-pulse{0%,to{opacity:1}50%{opacity:.4}}.status-label.svelte-1h259us{color:var(--muted);font-size:.84rem;white-space:nowrap}.top-bar-alerts.svelte-1h259us{display:flex;gap:6px}.top-bar-remote.svelte-1h259us{display:flex;align-items:center;gap:7px;min-width:0}.remote-dot.svelte-1h259us{width:8px;height:8px;border-radius:999px;background:var(--muted);opacity:.65;flex-shrink:0;transition:background .2s,opacity .2s,box-shadow .2s}.dot-remote-error.svelte-1h259us{background:#ff6b6b;opacity:1;box-shadow:0 0 6px #ff6b6b80}.dot-remote-ready.svelte-1h259us{background:#3dd68c;opacity:1;box-shadow:0 0 6px #3dd68c73}.dot-remote-live.svelte-1h259us{background:var(--accent);opacity:1;box-shadow:0 0 6px #4cc9f080}.remote-label.svelte-1h259us{color:var(--muted);font-size:.84rem;white-space:nowrap;transition:color .2s}.alert-badge.svelte-1h259us{font-size:.76rem;padding:2px 8px;border-radius:4px;font-weight:500}.alert-error.svelte-1h259us{background:#ff6b6b26;color:#ff8b8b;border:1px solid rgba(255,107,107,.25)}.alert-warn.svelte-1h259us{background:#f7c2661f;color:#f7c266;border:1px solid rgba(247,194,102,.2)}.top-bar-right.svelte-1h259us{display:flex;align-items:center}.top-bar-build-id.svelte-1h259us{color:var(--muted);font-size:.78rem;font-family:var(--mono);white-space:nowrap;letter-spacing:.02em}.left-nav.svelte-1aiibme{display:flex;flex-direction:column;justify-content:space-between;width:60px;background:var(--panel);border-right:1px solid var(--border);padding:8px 0;flex-shrink:0;overflow:hidden;transition:width .22s cubic-bezier(.2,.8,.2,1);z-index:5}.left-nav.expanded.svelte-1aiibme{width:168px}.nav-group.svelte-1aiibme{display:flex;flex-direction:column;gap:2px}.nav-item.svelte-1aiibme{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:46px;padding:10px 0 10px 18px;border:none;background:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.82rem;font-weight:500;white-space:nowrap;transition:color .12s,background .12s;border-left:2px solid transparent;overflow:hidden}.nav-item.svelte-1aiibme:hover{color:var(--text);background:#ffffff08}.nav-active.svelte-1aiibme{color:var(--accent);border-left-color:var(--accent);background:#4cc9f00f}.nav-label.svelte-1aiibme{display:inline-block;overflow:hidden;opacity:0;max-width:0;transform:translate(-6px);white-space:nowrap;transition:opacity .14s ease,max-width .24s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1);transition-delay:0s,0s,0s}.left-nav.expanded.svelte-1aiibme .nav-label:where(.svelte-1aiibme){opacity:1;max-width:128px;transform:translate(0);transition-delay:.05s,.05s,.05s}.device-panel.svelte-1uzgjq0{display:flex;flex-direction:column;height:100%;gap:12px;padding:16px;overflow:auto}.device-grid-area.svelte-1uzgjq0{flex:1;display:flex;align-items:center;justify-content:center;min-height:0}.device-vis.svelte-1uzgjq0{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:520px}.vis-inactive.svelte-1uzgjq0 .mystrix:where(.svelte-1uzgjq0){filter:blur(4px) saturate(.8)}.vis-overlay.svelte-1uzgjq0{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5}.vis-status.svelte-1uzgjq0{padding:6px 14px;border-radius:6px;background:#0e0e12d9;border:1px solid var(--border);color:var(--text);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.vis-link.svelte-1uzgjq0{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:10px;background:#1b323b;border:1px solid #4cc9f0;color:#dff6ff;font-size:.86rem;font-weight:700;letter-spacing:.03em;text-decoration:none;text-transform:uppercase;box-shadow:0 10px 24px #00000038,inset 0 1px #ffffff1f;transition:background .12s,border-color .12s,color .12s,transform .12s}.vis-link.svelte-1uzgjq0:hover{color:#f3fbff;border-color:#74d8f5;background:#24424d;transform:translateY(-1px)}.vis-error.svelte-1uzgjq0{border-color:#ff6b6b80;color:#ffd2d2;background:#241012e6}.mystrix.svelte-1uzgjq0{position:relative;width:min(100%,480px);aspect-ratio:1 / 1;z-index:1}.mystrix-border.svelte-1uzgjq0{background-color:var(--device-body, #151518);border:2px solid var(--device-border, #2f2f36);border-radius:3%;box-shadow:0 8px 24px #0006;position:absolute;width:100%;aspect-ratio:1 / 1;z-index:2}.mystrix-underglow.svelte-1uzgjq0{position:absolute;top:-3%;left:-3%;height:106%;width:106%;filter:blur(20px) saturate(200%) brightness(200%);z-index:1;pointer-events:none}.mystrix-underglow-row.svelte-1uzgjq0{height:6%;display:flex;padding-left:6%;padding-right:6%;gap:1.5%}.mystrix-underglow-middle.svelte-1uzgjq0{display:flex;height:88%;justify-content:space-between}.mystrix-underglow-column.svelte-1uzgjq0{height:100%;width:6%;display:flex;flex-direction:column;gap:1.5%;padding:.5% 0}.mystrix-underglow-row.svelte-1uzgjq0 .mystrix-underglow-led-parent:where(.svelte-1uzgjq0),.mystrix-underglow-column.svelte-1uzgjq0 .mystrix-underglow-led-parent:where(.svelte-1uzgjq0){width:100%;display:flex;justify-content:center;align-items:center}.mystrix-underglow-column.svelte-1uzgjq0 .mystrix-underglow-led-parent:where(.svelte-1uzgjq0){height:20%}.mystrix-underglow-led.svelte-1uzgjq0{height:100%;width:100%;background-color:#fff0}.mystrix-controls.svelte-1uzgjq0{position:relative;height:100%;width:100%;display:flex;gap:1.5%;flex-direction:column;padding:3%;z-index:10;touch-action:none}.mystrix-controls-row.svelte-1uzgjq0{height:100%;display:flex;gap:1.5%}.mystrix-btn-parent.svelte-1uzgjq0{height:100%;width:100%;display:flex;justify-content:center;align-items:center;filter:var(--key-glow-filter, none)}.mystrix-btn.svelte-1uzgjq0{padding:0;border:none;height:100%;width:100%;border-radius:10%;background-color:var(--key-color, var(--device-button, #5b5b63));background-image:var(--key-glow, none);pointer-events:none;background-repeat:no-repeat;background-position:center;background-size:100% 100%}.mystrix-touch-key.svelte-1uzgjq0{position:absolute;inset:0;width:100%;height:100%;z-index:15;pointer-events:none}.mystrix-touch-key-column.svelte-1uzgjq0{position:absolute;top:3%;height:94%;width:3%;display:flex;flex-direction:column;gap:1.5%;pointer-events:none}.mystrix-touch-key-left.svelte-1uzgjq0{left:0}.mystrix-touch-key-right.svelte-1uzgjq0{right:0}.mystrix-touchkey-btn.svelte-1uzgjq0{flex:1;width:100%;display:flex;align-items:center;justify-content:center;pointer-events:none}.mystrix-touchkey-btn-child.svelte-1uzgjq0{width:70%;height:100%;border-radius:5px;background-color:transparent;transition:background-color .15s ease,opacity .2s ease;pointer-events:auto;cursor:pointer;touch-action:none;opacity:0}.mystrix-hover-left.svelte-1uzgjq0 .mystrix-touch-key-left:where(.svelte-1uzgjq0) .mystrix-touchkey-btn-child:where(.svelte-1uzgjq0){opacity:1;background-color:#ffffff26}.mystrix-hover-right.svelte-1uzgjq0 .mystrix-touch-key-right:where(.svelte-1uzgjq0) .mystrix-touchkey-btn-child:where(.svelte-1uzgjq0){opacity:1;background-color:#ffffff26}.mystrix-touchkey-btn-child.svelte-1uzgjq0:hover{background-color:#ffffff47!important}.mystrix-touchkey-btn-child.mystrix-tb-active.svelte-1uzgjq0{background-color:#ffffff8c!important;opacity:1}.mystrix-center-key.svelte-1uzgjq0{position:absolute;height:3.2%;width:3.2%;z-index:3;background-color:#ffffff24;top:50%;left:50%;transform:translate(-50%,-50%) rotate(45deg);border-radius:20%;box-shadow:0 0 6px #00000073,0 0 14px #ffffff38;pointer-events:auto;touch-action:none;cursor:pointer}.mystrix-center-key.svelte-1uzgjq0:hover{background-color:#ffffff47;box-shadow:0 0 8px #ffffff73}.connection-page.svelte-17a0rvd{display:flex;flex-direction:column;gap:12px}.connection-grid.svelte-17a0rvd{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(420px,1.25fr);gap:12px}.ws-server-card.svelte-17a0rvd{padding:2px 0}.ws-server-strip.svelte-17a0rvd{display:grid;grid-template-columns:auto 1fr;align-items:center;border-radius:6px;overflow:hidden;border:1px solid var(--border);background:#ffffff05;transition:background .2s,border-color .2s;width:100%;text-align:left;font-family:inherit;cursor:pointer;padding:0}.ws-server-strip.svelte-17a0rvd:hover .ws-copy-btn:where(.svelte-17a0rvd){opacity:1;color:var(--accent)}.ws-strip-right.svelte-17a0rvd{padding:9px 12px;min-width:0;display:flex;align-items:center;gap:8px}.ws-copy-btn.svelte-17a0rvd{flex-shrink:0;margin-left:auto;display:inline-flex;align-items:center;color:var(--muted);padding:2px;opacity:.45;transition:opacity .12s,color .12s}.ws-strip-url.svelte-17a0rvd{font-size:.82rem;color:var(--muted);word-break:break-all;flex:1;min-width:0}.ws-strip-left.svelte-17a0rvd{display:flex;align-items:center;gap:10px;padding:9px 12px;border-right:1px solid var(--border);flex-shrink:0;transition:border-color .2s}.ws-strip-icon.svelte-17a0rvd{display:flex;align-items:center;flex-shrink:0;color:var(--muted);transition:color .2s}.ws-strip-labels.svelte-17a0rvd{display:flex;flex-direction:column;gap:1px}.ws-strip-title.svelte-17a0rvd{font-size:.78rem;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.ws-strip-state.svelte-17a0rvd{font-size:.68rem;color:var(--muted);font-family:var(--mono);white-space:nowrap;transition:color .2s}.ws-server-strip.is-connected.svelte-17a0rvd{border-color:#4cc9f040;background:#4cc9f012}.ws-server-strip.is-connected.svelte-17a0rvd .ws-strip-left:where(.svelte-17a0rvd){border-right-color:#4cc9f02e}.ws-server-strip.is-connected.svelte-17a0rvd .ws-strip-icon:where(.svelte-17a0rvd),.ws-server-strip.is-connected.svelte-17a0rvd .ws-strip-state:where(.svelte-17a0rvd){color:var(--accent)}.ws-server-strip.is-available.svelte-17a0rvd{border-color:#3dd68c40;background:#3dd68c12}.ws-server-strip.is-available.svelte-17a0rvd .ws-strip-left:where(.svelte-17a0rvd){border-right-color:#3dd68c2e}.ws-server-strip.is-available.svelte-17a0rvd .ws-strip-icon:where(.svelte-17a0rvd),.ws-server-strip.is-available.svelte-17a0rvd .ws-strip-state:where(.svelte-17a0rvd){color:#3dd68c}.ws-server-strip.is-unavailable.svelte-17a0rvd{border-color:#ff6b6b33;background:#ff6b6b0d}.ws-server-strip.is-unavailable.svelte-17a0rvd .ws-strip-left:where(.svelte-17a0rvd){border-right-color:#ff6b6b26}.ws-server-strip.is-unavailable.svelte-17a0rvd .ws-strip-icon:where(.svelte-17a0rvd),.ws-server-strip.is-unavailable.svelte-17a0rvd .ws-strip-state:where(.svelte-17a0rvd){color:#ff8b8b}@media(max-width:640px){.ws-server-strip.svelte-17a0rvd{grid-template-columns:1fr}.ws-strip-left.svelte-17a0rvd{border-right:none;border-bottom:1px solid var(--border)}}.connection-column.svelte-17a0rvd{min-width:0;display:flex;flex-direction:column;gap:12px}.docs-column.svelte-17a0rvd .tool-section:where(.svelte-17a0rvd){height:100%}.connection-mono.svelte-17a0rvd,.rpc-doc-code.svelte-17a0rvd{font-family:var(--mono)}.connection-empty.svelte-17a0rvd{padding:12px;border:1px dashed var(--border);border-radius:6px;color:var(--muted);font-size:.82rem}.rpc-panel.svelte-17a0rvd{display:flex;flex-direction:column;gap:10px}.rpc-field.svelte-17a0rvd{display:flex;flex-direction:column;gap:5px}.rpc-field.svelte-17a0rvd span:where(.svelte-17a0rvd),.rpc-doc-label.svelte-17a0rvd{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.rpc-field.svelte-17a0rvd input:where(.svelte-17a0rvd),.rpc-field.svelte-17a0rvd textarea:where(.svelte-17a0rvd){width:100%;border:1px solid var(--border);background:#ffffff05;color:var(--text);border-radius:6px;padding:8px 10px;font-family:var(--mono);font-size:.72rem;resize:vertical}.rpc-run-btn.svelte-17a0rvd{align-self:flex-start;border:1px solid var(--accent);background:transparent;color:var(--accent);border-radius:6px;padding:8px 12px;font:inherit;cursor:pointer}.rpc-run-btn.svelte-17a0rvd:disabled{opacity:.6;cursor:default}.rpc-output.svelte-17a0rvd{min-height:120px}.rpc-output-error.svelte-17a0rvd{color:#ff9a9a}.rpc-docs.svelte-17a0rvd{display:flex;flex-direction:column;gap:10px;margin-top:10px}.rpc-namespace.svelte-17a0rvd,.rpc-handle.svelte-17a0rvd{border:1px solid var(--border);border-radius:8px;background:#ffffff05;overflow:hidden}.rpc-namespace-summary.svelte-17a0rvd,.rpc-handle-summary.svelte-17a0rvd{list-style:none;cursor:pointer}.rpc-namespace-summary.svelte-17a0rvd::-webkit-details-marker,.rpc-handle-summary.svelte-17a0rvd::-webkit-details-marker{display:none}.rpc-namespace-summary.svelte-17a0rvd{display:flex;flex-direction:column;gap:4px;padding:12px 14px}.rpc-namespace-name.svelte-17a0rvd{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text)}.rpc-namespace-desc.svelte-17a0rvd{color:var(--muted);font-size:.8rem;line-height:1.45}.rpc-handle-list.svelte-17a0rvd{display:flex;flex-direction:column;gap:8px;padding:0 10px 10px}.rpc-handle-summary.svelte-17a0rvd{padding:10px 12px;background:#ffffff05}.rpc-handle-name.svelte-17a0rvd{font-family:var(--mono);color:var(--accent);font-size:.72rem}.rpc-handle-body.svelte-17a0rvd{display:flex;flex-direction:column;gap:10px;padding:0 12px 12px}.rpc-doc-row.svelte-17a0rvd{display:flex;flex-direction:column;gap:4px}.rpc-doc-text.svelte-17a0rvd{color:var(--text);font-size:.82rem;line-height:1.45}.rpc-doc-code.svelte-17a0rvd{color:var(--text);font-size:.7rem;white-space:pre-wrap;word-break:break-word;background:#ffffff05;border:1px solid var(--border);border-radius:6px;padding:8px 10px}@media(max-width:1080px){.connection-grid.svelte-17a0rvd{grid-template-columns:1fr}}.firmware-page.svelte-11a4fra{display:flex;flex-direction:column;gap:24px;padding:24px 28px;height:100%;overflow-y:auto}.fw-top-link.svelte-11a4fra,.fw-release-link.svelte-11a4fra{color:#b9ebff;text-decoration:none}.fw-release-link.svelte-11a4fra{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fw-top-link.svelte-11a4fra:hover,.fw-release-link.svelte-11a4fra:hover{color:#dff6ff}.fw-action-btn.svelte-11a4fra,.fw-refresh-btn.svelte-11a4fra,.fw-row-load-btn.svelte-11a4fra,.fw-source-option.svelte-11a4fra{border:1px solid rgba(76,201,240,.45);color:#b9ebff;background:#4cc9f01f;border-radius:6px;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:10px 12px;cursor:pointer;transition:background .12s,border-color .12s,opacity .12s}.fw-refresh-btn.svelte-11a4fra,.fw-row-load-btn.svelte-11a4fra{font-size:.68rem;padding:6px 10px;border-radius:4px}.fw-action-btn.svelte-11a4fra:hover,.fw-refresh-btn.svelte-11a4fra:hover,.fw-row-load-btn.svelte-11a4fra:hover,.fw-source-option.svelte-11a4fra:hover{background:#4cc9f02e;border-color:#4cc9f0b8}.fw-action-btn.svelte-11a4fra:disabled,.fw-refresh-btn.svelte-11a4fra:disabled,.fw-row-load-btn.svelte-11a4fra:disabled,.fw-source-option.svelte-11a4fra:disabled{cursor:not-allowed;opacity:.6}.build-type-release.svelte-11a4fra{color:#5bea8c}.build-type-rc.svelte-11a4fra{color:#8db5ff}.build-type-beta.svelte-11a4fra{color:#63d8ff}.build-type-nightly.svelte-11a4fra{color:#ffd27e}.build-type-indev.svelte-11a4fra{color:#ff8f8f}.build-type-neutral.svelte-11a4fra{color:#5bea8c}.build-type-muted.svelte-11a4fra{color:var(--muted)}.fw-toolbar.svelte-11a4fra,.fw-actions.svelte-11a4fra,.fw-name-cell.svelte-11a4fra,.fw-source-actions.svelte-11a4fra{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fw-section-head.svelte-11a4fra{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.fw-current-layout.svelte-11a4fra{display:flex;align-items:stretch;gap:12px}.fw-current-grid.svelte-11a4fra{flex:1;grid-template-columns:repeat(5,minmax(0,1fr))}.fw-current-actions-panel.svelte-11a4fra{width:260px;display:flex;flex-direction:column;justify-content:center;gap:12px}.fw-current-action-row.svelte-11a4fra{display:flex;align-items:stretch;gap:12px}.fw-current-action-btn.svelte-11a4fra{flex:1;min-height:68px;border:1px solid rgba(76,201,240,.45);color:#b9ebff;background:#4cc9f01f;border-radius:10px;font-size:.92rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:14px 16px;cursor:pointer;transition:background .12s,border-color .12s,opacity .12s}.fw-current-action-btn.svelte-11a4fra:hover{background:#4cc9f02e;border-color:#4cc9f0b8}.fw-current-action-btn-reload.svelte-11a4fra{border-color:#f7c26673;color:#f7c266;background:#f7c2661f}.fw-current-action-btn-reload.svelte-11a4fra:hover{background:#f7c2662e;border-color:#f7c266b8}.fw-current-action-btn-muted.svelte-11a4fra,.fw-current-action-btn-muted.svelte-11a4fra:hover,.fw-current-action-btn-muted.svelte-11a4fra:disabled{border-color:#ffffff1f;color:var(--muted);background:#ffffff0a}.fw-current-action-btn.svelte-11a4fra:disabled{cursor:not-allowed;opacity:.6}.fw-auto-toggle.svelte-11a4fra{cursor:pointer;font-family:inherit;font-size:.66rem;font-weight:600;line-height:1.2;justify-content:center;padding:5px 10px;text-transform:none;letter-spacing:0}.fw-auto-toggle-on.svelte-11a4fra{border-color:#6bdd8b4d;color:#8ee8b6;background:#6bdd8b1f}.fw-auto-toggle-on.svelte-11a4fra:hover{background:#6bdd8b2e;border-color:#6bdd8b85}.fw-auto-toggle-off.svelte-11a4fra{border-color:#ffffff1f;color:var(--muted);background:#ffffff0a}.fw-auto-toggle-off.svelte-11a4fra:hover{background:#ffffff14;border-color:#fff3}.fw-auto-toggle.svelte-11a4fra:focus-visible{outline:2px solid rgba(107,221,139,.35);outline-offset:2px}.fw-file-input.svelte-11a4fra{display:none}.fw-note.svelte-11a4fra{border-radius:8px;padding:12px 14px;font-size:.78rem;line-height:1.45}.fw-note-success.svelte-11a4fra{border:1px solid rgba(61,214,140,.24);background:#3dd68c14;color:#8ee8b6}.fw-note-error.svelte-11a4fra{border:1px solid rgba(255,111,111,.22);background:#ff6f6f14;color:#ffb7b7}.fw-source-missing.svelte-11a4fra{color:#ff8f8f}.fw-tag-filter.svelte-11a4fra{display:flex;flex:0 1 auto;gap:4px;flex-wrap:wrap}.fw-tag-btn.svelte-11a4fra{background:none;border:1px solid var(--border);color:var(--muted);font:inherit;font-size:.75rem;font-weight:500;height:26px;box-sizing:border-box;padding:0 10px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.fw-tag-btn.svelte-11a4fra:hover{color:var(--text);border-color:#fff3}.fw-tag-active.svelte-11a4fra{border-color:var(--accent);color:var(--accent);background:#4cc9f012}.fw-search.svelte-11a4fra{flex:1;min-width:200px;max-width:320px;height:26px;box-sizing:border-box;padding:0 10px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--text);font:inherit;font-size:.68rem;line-height:1}.fw-search.svelte-11a4fra:focus{outline:none;border-color:var(--accent)}.fw-toolbar-refresh.svelte-11a4fra{width:auto;flex:0 0 auto;height:26px;box-sizing:border-box;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;text-align:center}.fw-table-wrap.svelte-11a4fra{overflow-x:auto}.fw-table.svelte-11a4fra{display:flex;flex-direction:column;gap:1px;min-width:1200px;border:1px solid var(--border);border-radius:6px;overflow:hidden}.fw-header-row.svelte-11a4fra,.fw-row.svelte-11a4fra{display:flex;align-items:center;gap:8px;padding:9px 12px}.fw-header-row.svelte-11a4fra{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--panel);border-bottom:1px solid var(--border)}.fw-row.svelte-11a4fra{font-size:.78rem;background:#ffffff04;transition:background .1s}.fw-row.svelte-11a4fra:hover{background:#ffffff0a}.fw-col-name.svelte-11a4fra{width:280px;min-width:0;flex-shrink:0}.fw-col-ver.svelte-11a4fra{flex:1;min-width:340px}.fw-col-channel.svelte-11a4fra{width:150px;flex-shrink:0}.fw-col-hash.svelte-11a4fra{width:110px;flex-shrink:0}.fw-col-date.svelte-11a4fra{width:170px;flex-shrink:0}.fw-col-action.svelte-11a4fra{width:96px;flex-shrink:0}.fw-header-row.svelte-11a4fra .fw-col-action:where(.svelte-11a4fra){text-align:left}.fw-actions.svelte-11a4fra{justify-content:flex-start}.fw-row-load-btn.svelte-11a4fra{width:100%;height:26px;box-sizing:border-box;padding:0 10px;display:inline-flex;align-items:center;justify-content:center}.fw-name-cell.svelte-11a4fra{justify-content:flex-start}.fw-mono.svelte-11a4fra{font-family:var(--mono);font-size:.72rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fw-channel.svelte-11a4fra{display:inline-block;font-size:.66rem;font-weight:600;padding:2px 6px;border-radius:3px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.04em}.fw-channel-nightly.svelte-11a4fra{background:#f7c2661a;color:#f7c266;border-color:#f7c26638}.fw-channel-release.svelte-11a4fra{background:#3dd68c1f;color:#3dd68c;border-color:#3dd68c33}.fw-channel-release-candidate.svelte-11a4fra{background:#8caaff24;color:#9db9ff;border-color:#8caaff38}.fw-channel-beta.svelte-11a4fra{background:#4cc9f01a;color:#4cc9f0;border-color:#4cc9f033}.fw-channel-indev.svelte-11a4fra{background:#ff6f6f1a;color:#ff8f8f;border-color:#ff6f6f33}.fw-empty.svelte-11a4fra{padding:24px;text-align:center;color:var(--muted);font-size:.78rem;opacity:.8}@media(max-width:1100px){.fw-current-layout.svelte-11a4fra{flex-direction:column}.fw-current-grid.svelte-11a4fra{grid-template-columns:repeat(2,minmax(0,1fr))}.fw-current-actions-panel.svelte-11a4fra{width:100%}.fw-auto-toggle.svelte-11a4fra{align-self:flex-start}.fw-current-action-btn.svelte-11a4fra{min-height:58px}}@media(max-width:960px){.firmware-page.svelte-11a4fra{padding:18px}.fw-search.svelte-11a4fra{min-width:100%;max-width:none}.fw-current-grid.svelte-11a4fra{grid-template-columns:1fr}.fw-current-actions-panel.svelte-11a4fra{flex-direction:column}}.tool-tray.svelte-1sd4hua{display:flex;flex-direction:column;width:60px;background:var(--panel);border-left:1px solid var(--border);padding:6px 0;gap:1px;flex-shrink:0;overflow:hidden;overflow-y:hidden;transition:width .22s cubic-bezier(.2,.8,.2,1);z-index:5;scrollbar-width:none}.tool-tray.svelte-1sd4hua::-webkit-scrollbar{display:none}.tool-tray.expanded.svelte-1sd4hua{width:144px}.tray-btn.svelte-1sd4hua{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:46px;padding:10px 0 10px 18px;border:none;background:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.82rem;font-weight:500;white-space:nowrap;transition:color .12s,background .12s;border-right:2px solid transparent;flex-shrink:0;overflow:hidden}.tray-btn.svelte-1sd4hua:hover{color:var(--text);background:#ffffff08}.tray-btn.svelte-1sd4hua:disabled{cursor:not-allowed;color:#c9cfdb6b;background:#ffffff05;border-right-color:transparent}.tray-btn.svelte-1sd4hua:disabled:hover{color:#c9cfdb6b;background:#ffffff05}.tray-active.svelte-1sd4hua{color:var(--accent);border-right-color:var(--accent);background:#4cc9f00f}.tray-footer.svelte-1sd4hua{margin-top:auto;padding-top:8px;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:1px;flex-shrink:0}.tray-reset.svelte-1sd4hua{color:#ffb48a}.tray-reset.svelte-1sd4hua:hover{color:#ffd4bc;background:#ff945914}.tray-reset.svelte-1sd4hua:disabled,.tray-reset.svelte-1sd4hua:disabled:hover{color:#c9cfdb6b;background:#ffffff05}.tray-label.svelte-1sd4hua{display:inline-block;overflow:hidden;opacity:0;max-width:0;transform:translate(-6px);white-space:nowrap;transition:opacity .14s ease,max-width .24s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1);transition-delay:0s,0s,0s}.tool-tray.expanded.svelte-1sd4hua .tray-label:where(.svelte-1sd4hua){opacity:1;max-width:120px;transform:translate(0);transition-delay:.05s,.05s,.05s}.input-panel.svelte-1b7s7jy{display:flex;flex-direction:column;height:100%;gap:0;padding:10px 14px;overflow:hidden}.filter-bar.svelte-1b7s7jy{display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--border);flex-shrink:0}.filter-search.svelte-1b7s7jy{display:flex;align-items:center;gap:5px;flex:1;min-width:0;padding:3px 7px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--muted)}.filter-search.svelte-1b7s7jy:focus-within,.filter-active.svelte-1b7s7jy{border-color:#4cc9f059}.filter-input.svelte-1b7s7jy{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.72rem;min-width:0}.filter-input.svelte-1b7s7jy::placeholder{color:var(--muted)}.toolbar-toggle.svelte-1b7s7jy{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 6px;font-size:.66rem;display:inline-flex;align-items:center}.toolbar-toggle.svelte-1b7s7jy:hover{color:var(--text);border-color:var(--accent)}.toolbar-toggle-active.svelte-1b7s7jy{color:var(--accent);border-color:#4cc9f066}.clear-btn.svelte-1b7s7jy{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 5px;display:inline-flex;align-items:center}.clear-btn.svelte-1b7s7jy:hover{color:var(--danger);border-color:var(--danger)}.filter-help.svelte-1b7s7jy{display:flex;flex-wrap:wrap;gap:6px 16px;padding:6px 8px;border-radius:4px;background:#ffffff05;border:1px solid var(--border);font-size:.68rem;color:var(--muted);font-family:var(--mono);flex-shrink:0;margin-bottom:4px}.filter-help.svelte-1b7s7jy code:where(.svelte-1b7s7jy){color:var(--accent);background:#4cc9f014;padding:0 3px;border-radius:2px}.event-section.svelte-1b7s7jy{flex:1;display:flex;flex-direction:column;min-height:0;padding-top:6px}.event-col-header.svelte-1b7s7jy{display:flex;gap:6px;padding:2px 6px 4px;font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);opacity:.65;border-bottom:1px solid var(--border);flex-shrink:0}.col-time.svelte-1b7s7jy{min-width:85px;flex-shrink:0}.col-type.svelte-1b7s7jy{min-width:100px;flex-shrink:0}.col-event.svelte-1b7s7jy{flex:1;min-width:0}.event-body.svelte-1b7s7jy{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1px;font-family:var(--mono);font-size:.75rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.event-row.svelte-1b7s7jy{display:flex;gap:8px;padding:3px 6px;border-radius:3px;background:#ffffff04;align-items:baseline}.event-press.svelte-1b7s7jy{background:#4cc9f00a}.event-release.svelte-1b7s7jy{background:#ffffff04}.event-time.svelte-1b7s7jy{color:var(--muted)}.event-type.svelte-1b7s7jy{color:var(--accent)}.event-state.svelte-1b7s7jy{color:var(--muted)}.event-press.svelte-1b7s7jy .event-state:where(.svelte-1b7s7jy){color:#6bdd8b}.event-release.svelte-1b7s7jy .event-state:where(.svelte-1b7s7jy){color:#9ea1ad}.event-vel.svelte-1b7s7jy{color:#6bdd8b;font-size:.7rem;opacity:.9}.empty-msg.svelte-1b7s7jy{color:var(--muted);font-size:.82rem;text-align:center;padding:24px;font-family:var(--sans)}.logs-panel.svelte-7ebsbn{display:flex;flex-direction:column;height:100%;padding:10px 10px 8px;gap:6px;overflow:hidden;position:relative}.logs-toolbar.svelte-7ebsbn{display:flex;align-items:center;gap:6px;flex-shrink:0}.logs-search.svelte-7ebsbn{display:flex;align-items:center;gap:5px;flex:1;min-width:0;padding:3px 7px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--muted)}.logs-search-input.svelte-7ebsbn{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.74rem;min-width:0}.logs-search-input.svelte-7ebsbn::placeholder{color:var(--muted)}.logs-level-select.svelte-7ebsbn{font-family:inherit;font-size:.72rem;padding:3px 7px;border:1px solid var(--border);border-radius:5px;background:var(--bg-2);color:var(--text);cursor:pointer;outline:none}.logs-toggle.svelte-7ebsbn{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:3px 6px;display:inline-flex;align-items:center}.logs-toggle.svelte-7ebsbn:hover,.logs-toggle-active.svelte-7ebsbn{color:var(--text);border-color:var(--accent)}.logs-toggle-active.svelte-7ebsbn{color:var(--accent)}.logs-clear.svelte-7ebsbn{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 5px;display:inline-flex;align-items:center}.logs-clear.svelte-7ebsbn:hover{color:var(--danger);border-color:var(--danger)}.event-col-header.svelte-7ebsbn{display:flex;gap:6px;padding:2px 4px 4px;font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);opacity:.65;border-bottom:1px solid var(--border);flex-shrink:0}.logs-body.svelte-7ebsbn{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0;font-family:var(--mono);font-size:.72rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.log-row.svelte-7ebsbn{display:flex;gap:6px;padding:1px 4px;border-radius:0;background:#ffffff04;align-items:start;line-height:1.25;border-bottom:1px solid rgba(255,255,255,.025)}.col-time.svelte-7ebsbn{min-width:82px;flex-shrink:0;font-size:.66rem}.col-level.svelte-7ebsbn{min-width:44px;flex-shrink:0;font-size:.64rem;font-weight:600;text-transform:uppercase}.col-source.svelte-7ebsbn{width:72px;flex-shrink:0;font-size:.68rem;word-break:break-word;white-space:normal}.col-msg.svelte-7ebsbn{flex:1;min-width:0}.log-time.svelte-7ebsbn{color:var(--muted)}.log-source.svelte-7ebsbn{color:var(--text);opacity:.7}.log-text.svelte-7ebsbn{word-break:break-word;color:var(--text)}.level-error.svelte-7ebsbn{background:#ff6b6b0a}.level-warn.svelte-7ebsbn{background:#f7c26608}.logs-empty.svelte-7ebsbn{color:var(--muted);font-size:.82rem;text-align:center;padding:40px;font-family:var(--sans)}.scroll-btn.svelte-7ebsbn{position:absolute;right:20px;bottom:20px;width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;font-size:.8rem;display:flex;align-items:center;justify-content:center}.scroll-btn.svelte-7ebsbn:hover{border-color:var(--accent)}.midi-panel.svelte-1ymw8ld{display:flex;flex-direction:column;height:100%;gap:0;padding:10px 14px;overflow:hidden}.filter-bar.svelte-1ymw8ld{display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--border);flex-shrink:0}.filter-search.svelte-1ymw8ld{display:flex;align-items:center;gap:5px;flex:1;min-width:0;padding:3px 7px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--muted)}.filter-search.svelte-1ymw8ld:focus-within,.filter-active.svelte-1ymw8ld{border-color:#4cc9f059}.filter-input.svelte-1ymw8ld{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.72rem;min-width:0}.filter-input.svelte-1ymw8ld::placeholder{color:var(--muted)}.toolbar-toggle.svelte-1ymw8ld{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 6px;font-size:.66rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.03em;display:inline-flex;align-items:center}.toolbar-toggle.svelte-1ymw8ld:hover{color:var(--text);border-color:var(--accent)}.toolbar-toggle-active.svelte-1ymw8ld{color:var(--accent);border-color:#4cc9f066}.clear-btn.svelte-1ymw8ld{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 5px;display:inline-flex;align-items:center}.clear-btn.svelte-1ymw8ld:hover{color:var(--danger);border-color:var(--danger)}.filter-help.svelte-1ymw8ld{display:flex;flex-wrap:wrap;gap:6px 16px;padding:6px 8px;border-radius:4px;background:#ffffff05;border:1px solid var(--border);font-size:.68rem;color:var(--muted);font-family:var(--mono);flex-shrink:0;margin-bottom:4px}.filter-help.svelte-1ymw8ld code:where(.svelte-1ymw8ld){color:var(--accent);background:#4cc9f014;padding:0 3px;border-radius:2px}.event-section.svelte-1ymw8ld{flex:1;display:flex;flex-direction:column;min-height:0;padding-top:6px}.event-col-header.svelte-1ymw8ld{display:flex;gap:6px;padding:2px 6px 4px;font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);opacity:.65;border-bottom:1px solid var(--border);flex-shrink:0}.event-body.svelte-1ymw8ld{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1px;font-family:var(--mono);font-size:.72rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.event-row.svelte-1ymw8ld{display:flex;gap:6px;padding:2px 6px;border-radius:3px;align-items:baseline;white-space:nowrap}.row-tx.svelte-1ymw8ld{background:#4cc9f00a}.row-rx.svelte-1ymw8ld{background:#ffffff04}.col-time.svelte-1ymw8ld{min-width:80px;flex-shrink:0}.col-ports.svelte-1ymw8ld{min-width:160px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis}.col-ch.svelte-1ymw8ld{min-width:20px;flex-shrink:0}.col-type.svelte-1ymw8ld{min-width:70px;flex-shrink:0}.col-summary.svelte-1ymw8ld{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.col-raw.svelte-1ymw8ld{flex-shrink:0}.event-time.svelte-1ymw8ld{color:var(--muted)}.event-ports.svelte-1ymw8ld{color:var(--text)}.event-ch.svelte-1ymw8ld{color:var(--muted)}.event-type.svelte-1ymw8ld{color:var(--accent)}.event-summary.svelte-1ymw8ld{color:var(--text)}.event-raw.svelte-1ymw8ld{color:var(--muted);opacity:.5}.no-time.svelte-1ymw8ld .col-time:where(.svelte-1ymw8ld){display:none}.empty-msg.svelte-1ymw8ld{color:var(--muted);font-size:.82rem;text-align:center;padding:24px;font-family:var(--sans)}.sender-section.svelte-1ymw8ld{flex-shrink:0;border-top:1px solid var(--border);padding-top:8px;margin-top:4px}.sender-route-row.svelte-1ymw8ld{display:flex;gap:8px;align-items:center;margin-bottom:6px}.route-arrow.svelte-1ymw8ld{color:var(--muted);font-size:.9rem;flex-shrink:0}.sender-msg-row.svelte-1ymw8ld{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.sender-select.svelte-1ymw8ld{font-family:var(--mono);font-size:.72rem;background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 6px;cursor:pointer}.sender-select.svelte-1ymw8ld:focus{border-color:var(--accent);outline:none}.sender-field.svelte-1ymw8ld{display:flex;align-items:center;gap:3px;font-size:.7rem;font-family:var(--mono);color:var(--muted)}.sender-field.svelte-1ymw8ld input:where(.svelte-1ymw8ld){width:42px;font-family:var(--mono);font-size:.72rem;background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 4px;text-align:center}.sender-field.svelte-1ymw8ld select:where(.svelte-1ymw8ld){font-family:var(--mono);font-size:.72rem;background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 6px;cursor:pointer}.sender-field.svelte-1ymw8ld input:where(.svelte-1ymw8ld):focus,.sender-field.svelte-1ymw8ld select:where(.svelte-1ymw8ld):focus{border-color:var(--accent);outline:none}.sender-btn.svelte-1ymw8ld{font-family:var(--mono);font-size:.72rem;background:transparent;color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:4px 10px;cursor:pointer;font-weight:600;margin-left:auto}.sender-btn.svelte-1ymw8ld:hover{background:#4cc9f01f}.custom-port-input.svelte-1ymw8ld{width:72px;font-family:var(--mono);font-size:.72rem;background:var(--bg-2);color:var(--text);border:1px solid var(--accent);border-radius:4px;padding:3px 4px}.custom-port-input.svelte-1ymw8ld:focus{outline:none;border-color:var(--accent)}input[type=number].svelte-1ymw8ld{-moz-appearance:textfield;appearance:textfield}input[type=number].svelte-1ymw8ld::-webkit-inner-spin-button,input[type=number].svelte-1ymw8ld::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.hid-panel.svelte-1ehk1z3{display:flex;flex-direction:column;height:100%;gap:0;padding:10px 14px;overflow:hidden}.filter-bar.svelte-1ehk1z3{display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--border);flex-shrink:0}.filter-search.svelte-1ehk1z3{display:flex;align-items:center;gap:5px;flex:1;min-width:0;padding:3px 7px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--muted)}.filter-search.svelte-1ehk1z3:focus-within,.filter-active.svelte-1ehk1z3{border-color:#4cc9f059}.filter-input.svelte-1ehk1z3{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.72rem;min-width:0}.filter-input.svelte-1ehk1z3::placeholder{color:var(--muted)}.filter-count.svelte-1ehk1z3{font-size:.68rem;color:var(--muted);font-family:var(--mono);white-space:nowrap}.toolbar-toggle.svelte-1ehk1z3{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 6px;font-size:.66rem;display:inline-flex;align-items:center}.toolbar-toggle.svelte-1ehk1z3:hover{color:var(--text);border-color:var(--accent)}.toolbar-toggle-active.svelte-1ehk1z3{color:var(--accent);border-color:#4cc9f066}.clear-btn.svelte-1ehk1z3{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 5px;display:inline-flex;align-items:center}.clear-btn.svelte-1ehk1z3:hover{color:var(--danger);border-color:var(--danger)}.filter-help.svelte-1ehk1z3{display:flex;flex-wrap:wrap;gap:6px 16px;padding:6px 8px;border-radius:4px;background:#ffffff05;border:1px solid var(--border);font-size:.68rem;color:var(--muted);font-family:var(--mono);flex-shrink:0;margin-bottom:4px}.filter-help.svelte-1ehk1z3 code:where(.svelte-1ehk1z3){color:var(--accent);background:#4cc9f014;padding:0 3px;border-radius:2px}.event-section.svelte-1ehk1z3{flex:1;display:flex;flex-direction:column;min-height:0;padding-top:6px}.event-body.svelte-1ehk1z3{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1px;font-family:var(--mono);font-size:.72rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.event-row.svelte-1ehk1z3{display:flex;gap:6px;padding:2px 6px;border-radius:3px;align-items:baseline;white-space:nowrap;background:#ffffff04}.event-time.svelte-1ehk1z3{color:var(--muted)}.event-cat.svelte-1ehk1z3{min-width:56px;flex-shrink:0;font-weight:600}.cat-kb.svelte-1ehk1z3{color:var(--accent)}.cat-gp.svelte-1ehk1z3{color:#c49bff}.cat-raw.svelte-1ehk1z3{color:#f0a04b}.event-summary.svelte-1ehk1z3{color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.event-raw.svelte-1ehk1z3{color:var(--muted);opacity:.5;flex-shrink:0}.empty-msg.svelte-1ehk1z3{color:var(--muted);font-size:.82rem;text-align:center;padding:24px;font-family:var(--sans)}.sender-section.svelte-1ehk1z3{flex-shrink:0;border-top:1px solid var(--border);padding-top:8px;margin-top:4px}.sender-row.svelte-1ehk1z3{display:flex;gap:6px;align-items:center}.hex-input.svelte-1ehk1z3{flex:1;font-family:var(--mono);font-size:.72rem;background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 8px;letter-spacing:.05em}.hex-input.svelte-1ehk1z3::placeholder{color:var(--muted);opacity:.5}.hex-input.svelte-1ehk1z3:focus{border-color:var(--accent);outline:none}.sender-btn.svelte-1ehk1z3{font-family:var(--mono);font-size:.72rem;background:transparent;color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:4px 10px;cursor:pointer;font-weight:600;flex-shrink:0}.sender-btn.svelte-1ehk1z3:hover{background:#4cc9f01f}.sender-hint.svelte-1ehk1z3{display:block;font-size:.65rem;color:var(--muted);opacity:.6;margin-top:3px;font-family:var(--mono)}.event-col-header.svelte-1ehk1z3{display:flex;gap:6px;padding:2px 6px 4px;font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);opacity:.65;border-bottom:1px solid var(--border);flex-shrink:0}.col-time.svelte-1ehk1z3{min-width:80px;flex-shrink:0}.col-cat.svelte-1ehk1z3{min-width:56px;flex-shrink:0}.col-sum.svelte-1ehk1z3{flex:1;min-width:0}.no-time.svelte-1ehk1z3 .col-time:where(.svelte-1ehk1z3){display:none}.serial-panel.svelte-tpuyc6{display:flex;flex-direction:column;height:100%;gap:0;padding:10px 14px;overflow:hidden}.filter-bar.svelte-tpuyc6{display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--border);flex-shrink:0}.filter-search.svelte-tpuyc6{display:flex;align-items:center;gap:5px;flex:1;min-width:0;padding:3px 7px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--muted)}.filter-search.svelte-tpuyc6:focus-within,.filter-active.svelte-tpuyc6{border-color:#4cc9f059}.filter-input.svelte-tpuyc6{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.72rem;min-width:0}.filter-input.svelte-tpuyc6::placeholder{color:var(--muted)}.toolbar-toggle.svelte-tpuyc6{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 6px;font-size:.66rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.03em}.toolbar-toggle.svelte-tpuyc6:hover{color:var(--text);border-color:var(--accent)}.toolbar-toggle-active.svelte-tpuyc6{color:var(--accent);border-color:#4cc9f066}.clear-btn.svelte-tpuyc6{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 5px;display:inline-flex;align-items:center}.clear-btn.svelte-tpuyc6:hover{color:var(--danger);border-color:var(--danger)}.event-section.svelte-tpuyc6{flex:1;display:flex;flex-direction:column;min-height:0;padding-top:6px}.event-body.svelte-tpuyc6{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1px;font-family:var(--mono);font-size:.73rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.event-row.svelte-tpuyc6{display:flex;gap:8px;padding:3px 6px;border-radius:3px;background:#ffffff04;align-items:baseline}.row-tx.svelte-tpuyc6{background:#4cc9f00a}.event-time.svelte-tpuyc6{color:var(--muted)}.event-dir.svelte-tpuyc6{min-width:24px;font-weight:600;flex-shrink:0}.dir-tx.svelte-tpuyc6{color:var(--accent)}.dir-rx.svelte-tpuyc6{color:#6bdd8b}.event-data.svelte-tpuyc6{word-break:break-all;color:var(--text)}.empty-msg.svelte-tpuyc6{color:var(--muted);font-size:.82rem;text-align:center;padding:24px;font-family:var(--sans)}.sender.svelte-tpuyc6{flex-shrink:0;display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--border);padding-top:10px;margin-top:4px}.sender-controls.svelte-tpuyc6{display:flex;align-items:center;gap:6px}.mode-btn.svelte-tpuyc6{background:#ffffff0a;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 8px;font-size:.7rem;font-weight:600}.mode-btn.svelte-tpuyc6:hover{color:var(--text)}.mode-btn.active.svelte-tpuyc6{color:var(--accent);border-color:#4cc9f04d;background:#4cc9f014}.newline-opt.svelte-tpuyc6{display:flex;align-items:center;gap:4px;font-size:.68rem;color:var(--muted);font-family:var(--mono);margin-left:4px;cursor:pointer}.newline-opt.svelte-tpuyc6 input:where(.svelte-tpuyc6){width:12px;height:12px;margin:0;cursor:pointer}.sender-row.svelte-tpuyc6{display:flex;gap:6px}.sender-input.svelte-tpuyc6{flex:1;background:var(--bg-2);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:var(--mono);font-size:.76rem;padding:5px 8px;outline:none}.sender-input.svelte-tpuyc6::placeholder{color:var(--muted);opacity:.6}.sender-input.svelte-tpuyc6:focus{border-color:var(--accent)}.send-btn.svelte-tpuyc6{background:transparent;border:1px solid var(--accent);border-radius:4px;color:var(--accent);font-size:.74rem;font-weight:600;padding:5px 14px;cursor:pointer}.send-btn.svelte-tpuyc6:hover{background:#4cc9f01f}.send-btn.svelte-tpuyc6:disabled{opacity:.4;cursor:default}.hex-error.svelte-tpuyc6{font-size:.68rem;color:var(--danger);font-family:var(--mono)}.event-col-header.svelte-tpuyc6{display:flex;gap:8px;padding:2px 6px 4px;font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);opacity:.65;border-bottom:1px solid var(--border);flex-shrink:0}.col-time.svelte-tpuyc6{min-width:85px;flex-shrink:0}.col-dir.svelte-tpuyc6{min-width:24px;flex-shrink:0}.col-data.svelte-tpuyc6{flex:1;min-width:0}.filter-help.svelte-tpuyc6{display:flex;flex-wrap:wrap;gap:6px 16px;padding:6px 8px;border-radius:4px;background:#ffffff05;border:1px solid var(--border);font-size:.68rem;color:var(--muted);font-family:var(--mono);flex-shrink:0;margin-bottom:4px}.filter-help.svelte-tpuyc6 code:where(.svelte-tpuyc6){color:var(--accent);background:#4cc9f014;padding:0 3px;border-radius:2px}.storage-panel.svelte-17zqhtf{display:flex;flex-direction:column;height:100%;gap:0;padding:14px;overflow:hidden}.section-header.svelte-17zqhtf{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-shrink:0}.section-title.svelte-17zqhtf{font-weight:600;font-size:.82rem;letter-spacing:.03em;text-transform:uppercase;color:var(--text)}.section-subtitle.svelte-17zqhtf{font-size:.68rem;font-family:var(--mono);color:var(--muted);opacity:.7}.section-count.svelte-17zqhtf{font-size:.72rem;color:var(--muted);font-family:var(--mono)}.header-actions.svelte-17zqhtf{margin-left:auto;display:flex;gap:4px}.action-btn.svelte-17zqhtf{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:2px 5px;display:inline-flex;align-items:center;font-size:.78rem}.action-btn.svelte-17zqhtf:hover{color:var(--text);border-color:var(--accent)}.action-danger.svelte-17zqhtf:hover{color:var(--danger);border-color:var(--danger)}.hidden-input.svelte-17zqhtf{display:none}.nvs-toolbar.svelte-17zqhtf{display:flex;gap:6px;align-items:center;margin-bottom:6px;flex-shrink:0;flex-wrap:wrap}.key-lookup.svelte-17zqhtf{display:flex;align-items:center;gap:5px;flex:1;min-width:180px}.key-input.svelte-17zqhtf{flex:1;font-family:var(--mono);font-size:.72rem;background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 7px;outline:none}.key-input.svelte-17zqhtf::placeholder{color:var(--muted);opacity:.5}.key-input.svelte-17zqhtf:focus{border-color:var(--accent)}.search-box.svelte-17zqhtf{display:flex;align-items:center;gap:5px;flex:1;min-width:120px;padding:3px 7px;border:1px solid var(--border);border-radius:4px;background:var(--bg-2);color:var(--muted)}.search-box.svelte-17zqhtf:focus-within{border-color:var(--accent)}.search-input.svelte-17zqhtf{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.72rem;min-width:0}.search-input.svelte-17zqhtf::placeholder{color:var(--muted)}.nvs-section.svelte-17zqhtf{flex:1;display:flex;flex-direction:column;min-height:0}.nvs-body.svelte-17zqhtf{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.nvs-table.svelte-17zqhtf{display:flex;flex-direction:column;gap:1px}.nvs-header-row.svelte-17zqhtf,.nvs-row.svelte-17zqhtf{display:flex;gap:8px;padding:4px 6px;align-items:center;border-radius:3px}.nvs-header-row.svelte-17zqhtf{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--panel);z-index:1}.nvs-row.svelte-17zqhtf{font-size:.73rem;background:#ffffff04}.nvs-row.svelte-17zqhtf:hover{background:#ffffff0a}.nvs-row-highlight.svelte-17zqhtf{background:#4cc9f00f!important;border-radius:3px}.mono.svelte-17zqhtf{font-family:var(--mono)}.nvs-col-hash.svelte-17zqhtf{width:72px;flex-shrink:0}.nvs-col-size.svelte-17zqhtf{width:50px;flex-shrink:0;text-align:right}.nvs-col-value.svelte-17zqhtf{flex:1;min-width:0;display:flex;align-items:center;gap:4px}.nvs-hex-val.svelte-17zqhtf{min-width:0;color:var(--text)}.nvs-hex-truncated.svelte-17zqhtf{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nvs-hex-val.svelte-17zqhtf:not(.nvs-hex-truncated){white-space:pre-wrap;word-break:break-all}.nvs-expand-btn.svelte-17zqhtf{flex-shrink:0;background:none;border:none;color:var(--muted);cursor:pointer;font-size:.55rem;padding:0 2px;opacity:.6}.nvs-expand-btn.svelte-17zqhtf:hover{opacity:1}.nvs-col-actions.svelte-17zqhtf{width:52px;flex-shrink:0;display:flex;justify-content:flex-end;gap:2px}.row-action.svelte-17zqhtf{background:none;border:none;color:var(--muted);cursor:pointer;padding:1px 3px;display:inline-flex;align-items:center;border-radius:3px;opacity:.5}.nvs-row.svelte-17zqhtf:hover .row-action:where(.svelte-17zqhtf){opacity:1}.row-action.svelte-17zqhtf:hover{color:var(--accent)}.nvs-note.svelte-17zqhtf{margin-top:4px;font-size:.66rem;color:var(--muted);opacity:.55;font-style:italic;flex-shrink:0}.empty-msg.svelte-17zqhtf{color:var(--muted);font-size:.82rem;text-align:center;padding:24px;font-family:var(--sans)}.fs-section.svelte-17zqhtf{flex-shrink:0;border-top:1px solid var(--border);padding-top:10px;margin-top:10px}.fs-info.svelte-17zqhtf{display:flex;gap:8px;align-items:center;font-size:.76rem}.fs-label.svelte-17zqhtf{color:var(--muted);font-size:.72rem}.fs-path.svelte-17zqhtf{color:var(--text);font-family:var(--mono)}.fs-placeholder.svelte-17zqhtf{color:var(--muted);font-size:.76rem;font-style:italic;padding:4px 0}.device-hw-panel.svelte-1kynwck{display:flex;flex-direction:column;padding:10px;gap:4px}.tool-section-title.svelte-1kynwck{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 2px 4px}.hw-section-title-row.svelte-1kynwck{display:flex;align-items:center;gap:6px;padding:10px 2px 6px}.hw-section-title.svelte-1kynwck{padding:0}.hw-section-title-row.svelte-1kynwck .status-pill{align-self:center}.hw-strip.svelte-1kynwck{display:grid;grid-template-columns:1fr auto;align-items:center;border-radius:6px;border:1px solid var(--border);background:#ffffff05;overflow:hidden;transition:background .2s,border-color .2s;width:100%;text-align:left;font-family:inherit;cursor:pointer;padding:0}.hw-strip.svelte-1kynwck:disabled{cursor:default;opacity:.55}.hw-strip.hw-on.svelte-1kynwck{border-color:#6bdd8b47;background:#6bdd8b12}.hw-strip-left.svelte-1kynwck{display:flex;align-items:center;gap:10px;padding:9px 12px}.hw-strip-action.svelte-1kynwck{align-self:stretch;min-width:90px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.7rem;font-weight:600;white-space:nowrap;padding:0 14px;transition:color .15s}.hw-strip.svelte-1kynwck:not(:disabled):hover .hw-strip-action:where(.svelte-1kynwck){color:var(--accent)}.hw-icon.svelte-1kynwck{display:flex;align-items:center;flex-shrink:0;color:var(--muted);transition:color .15s}.hw-icon-on.svelte-1kynwck{color:#6bdd8b}.hw-icon-wip.svelte-1kynwck{opacity:.5}.hw-label-stack.svelte-1kynwck{display:flex;flex-direction:column;gap:1px}.hw-title.svelte-1kynwck{font-size:.78rem;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.04em}.hw-state.svelte-1kynwck{font-size:.68rem;color:var(--muted);font-family:var(--mono);transition:color .15s}.hw-strip.hw-on.svelte-1kynwck .hw-state:where(.svelte-1kynwck){color:#6bdd8b}.hw-level-strip.svelte-1kynwck{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:6px;background:#ffffff05;overflow:hidden}.hw-level-header.svelte-1kynwck{display:grid;grid-template-columns:1fr auto;align-items:center}.hw-level-pct.svelte-1kynwck{font-size:.76rem;font-family:var(--mono);color:var(--muted);padding:0 14px;white-space:nowrap}.hw-level-slider-row.svelte-1kynwck{padding:8px 12px 10px;border-top:1px solid var(--border)}.hw-slider.svelte-1kynwck{width:100%;cursor:pointer;display:block;-webkit-appearance:none;appearance:none;height:2px;border-radius:1px;background:var(--border);outline:none}.hw-slider.svelte-1kynwck::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;border-radius:50%;background:var(--muted);cursor:pointer;transition:background .15s}.hw-slider.svelte-1kynwck:hover::-webkit-slider-thumb{background:var(--accent)}.hw-slider.svelte-1kynwck::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--muted);border:none;cursor:pointer}.hw-slider.svelte-1kynwck:hover::-moz-range-thumb{background:var(--accent)}.hw-wip-row.svelte-1kynwck{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:#ffffff03;opacity:.6}.hw-wip-label.svelte-1kynwck{font-size:.72rem;color:var(--muted);font-style:italic}.panel-stack.svelte-113detg{display:flex;position:relative;flex-shrink:0;border-left:1px solid var(--border);background:var(--bg-1);overflow:hidden}.panel-stack-resizing.svelte-113detg{-webkit-user-select:none;user-select:none}.panel-resize-handle.svelte-113detg{position:absolute;left:0;top:0;bottom:0;width:6px;padding:0;border:none;background:transparent;cursor:col-resize;z-index:3}.panel-resize-handle.svelte-113detg:after{content:"";position:absolute;left:2px;top:0;bottom:0;width:1px;background:#ffffff0f}.panel-resize-handle.svelte-113detg:hover:after,.panel-stack-resizing.svelte-113detg .panel-resize-handle:where(.svelte-113detg):after{background:var(--accent)}.panel-grid.svelte-113detg{display:grid;width:100%;min-width:0}.panel-slot.svelte-113detg{min-width:0;display:flex;flex-direction:column;min-height:0;overflow:hidden;border-right:1px solid var(--border)}.panel-slot.svelte-113detg:last-child{border-right:none}.panel-header.svelte-113detg{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0}.panel-header-actions.svelte-113detg{display:flex;align-items:center;gap:2px}.panel-help-btn.svelte-113detg{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center}.panel-help-btn.svelte-113detg:hover{color:var(--text);border-color:var(--accent)}.panel-help-active.svelte-113detg{color:var(--accent);border-color:#4cc9f066}.panel-help-active.svelte-113detg:hover{color:var(--accent)}.panel-title.svelte-113detg{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.panel-close.svelte-113detg{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;padding:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center}.panel-close.svelte-113detg:hover{color:var(--text);border-color:var(--accent)}.panel-body.svelte-113detg{flex:1;min-height:0;overflow:hidden}
