.lv-host{--lv-bench-bg:#0b0e14;--lv-bench-fg:#d7dde8;--lv-bench-wire:#8b95a7;--lv-bench-grid:#232a36;width:100%;height:100%;position:relative}.lv-host[data-lv=on][data-bench=light]{--lv-bench-bg:#f6f5f1;--lv-bench-fg:#1b1b1b;--lv-bench-wire:#4a4f58;--lv-bench-grid:#d9d6cc}.lv-host[data-lv=on] .schematic-canvas{--grid-dot:var(--lv-bench-grid);--edge-black:var(--lv-bench-fg);--edge-wire:var(--lv-bench-wire);--edge-gray:var(--lv-bench-wire);--text:var(--lv-bench-fg);--text-muted:var(--lv-bench-wire);color:var(--lv-bench-fg);background:var(--lv-bench-bg)!important}.lv-host[data-lv=on] .schematic-canvas text{fill:var(--lv-bench-fg)}.lv-host [data-testid=lv-overlay]{z-index:2}.lv-banner{z-index:5;font:12px var(--font-ui,system-ui, sans-serif);color:#e8ecf4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);white-space:nowrap;background:#141a26d1;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}.lv-banner-dot{background:#6ee7a8;border-radius:50%;width:7px;height:7px;box-shadow:0 0 6px #6ee7a8}.lv-banner-btn{font:inherit;color:#9cc8ff;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.lv-edit-locked{z-index:6;font:13px var(--font-ui,system-ui, sans-serif);color:#fff4d6;background:#3c2808eb;border:1px solid #c58a1a;border-radius:8px;padding:6px 12px;position:absolute;top:44px;left:50%;transform:translate(-50%)}.lv-pulse-dot{background:#6ee7a8;border-radius:50%;width:6px;height:6px;margin-left:6px;animation:1.2s ease-in-out infinite lv-pulse;display:inline-block}@keyframes lv-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.lv-pulse-dot{animation:none}}.app-tab.menubar-tab{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0;border-bottom:2px solid #0000;padding:4px 12px}.app-tab.menubar-tab[aria-selected=true]{border-bottom-color:var(--accent,#1e90ff)}:root{--lv-input:#56b4e9;--lv-gain:#d55e00;--lv-clipping:#cc79a7;--lv-tone:#009e73;--lv-output:#0072b2;--lv-power:#f0e442;--lv-modulation:#e69f00;--lv-other:#ddd;--lv-ground:#5c6370}.tb{border-left:1px solid var(--panel-border);align-items:center;gap:2px;margin-left:12px;padding-left:12px;display:inline-flex}.tb-sep{background:var(--panel-border);width:1px;height:18px;margin:0 4px}.tb-wrap{display:inline-flex;position:relative}.tb-btn{width:28px;height:26px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tb-btn:hover:not(:disabled){background:var(--bg);border-color:var(--panel-border)}.tb-btn[aria-pressed=true],.tb-btn[aria-pressed=true]:hover:not(:disabled){background:var(--accent);color:#fff}.tb-btn:disabled{opacity:.35;cursor:default}.tb-btn svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.tb-tip{z-index:50;white-space:nowrap;pointer-events:none;background:var(--text);color:var(--bg);border-radius:4px;padding:3px 8px;font-size:12px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.tb-tip kbd{font-family:var(--font-mono);opacity:.85;margin-left:6px}.sc-backdrop{z-index:100;background:#0006;justify-content:center;align-items:flex-start;padding-top:8vh;display:flex;position:fixed;inset:0}.sc-dialog{background:var(--panel-bg);color:var(--text);border:1px solid var(--panel-border);border-radius:8px;flex-direction:column;width:min(560px,92vw);max-height:80vh;padding:12px 16px;display:flex;box-shadow:0 10px 30px #00000059}.sc-head{justify-content:space-between;align-items:center;display:flex}.sc-head h2{margin:0;font-size:16px}.sc-search{font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--panel-border);border-radius:4px;margin:10px 0;padding:6px 8px}.sc-body{overflow:auto}.sc-body h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:12px 0 4px;font-size:12px}.sc-body ul{margin:0;padding:0;list-style:none}.sc-body li{border-bottom:1px solid var(--panel-border);justify-content:space-between;gap:12px;padding:4px 0;display:flex}.sc-label small{color:var(--text-muted);font-size:11px;display:block}.sc-keys{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:6px;display:inline-flex}.sc-keys kbd{font-family:var(--font-mono);border:1px solid var(--panel-border);background:var(--bg);white-space:nowrap;border-bottom-width:2px;border-radius:4px;padding:1px 6px;font-size:12px}.sc-empty{color:var(--text-muted)}.help-menu-popup{z-index:10;background:var(--panel-bg);border:1px solid var(--panel-border);min-width:200px;position:absolute;top:100%;left:0}.lv-hover-layer{pointer-events:none;z-index:6;position:absolute;inset:0;overflow:hidden}.lv-tooltip{color:#e8ecf3;pointer-events:none;background:#10141cf5;border:1px solid #3a4352;border-radius:6px;max-width:300px;padding:8px 10px;font-size:12px;line-height:1.35;position:absolute;top:0;left:0;box-shadow:0 4px 14px #00000073}.lv-host[data-bench=light] .lv-tooltip{color:#1b1b1b;background:#fcfbf7f7;border-color:#b9b6aa}.lv-tooltip[data-pinned]{pointer-events:auto;border-color:var(--lv-input,#56b4e9)}.lv-tooltip-title{margin-bottom:2px;font-weight:600}.lv-tooltip-stage{border:1px solid;border-radius:10px;align-items:center;gap:4px;margin:2px 0;padding:1px 6px;font-size:11px;display:inline-flex}.lv-tooltip-role{opacity:.8;margin-bottom:2px}.lv-tooltip-explain{margin:4px 0}.lv-tooltip-pin{font-variant-numeric:tabular-nums;margin-top:2px}.lv-tooltip-pin b{font-weight:600}.lv-tooltip-sub{opacity:.85;padding-left:8px}.lv-tooltip-gain{font-variant-numeric:tabular-nums;margin-top:4px}.lv-tooltip-gain[data-held]{opacity:.55}.lv-tooltip-inverted{border:1px solid;border-radius:10px;margin-left:6px;padding:0 6px;font-size:11px;display:inline-block}.lv-tooltip-why{opacity:.85;margin-top:4px;font-size:11px}.lv-tooltip-why ul{margin:2px 0 0 14px;padding:0}.lv-tooltip-close{font:inherit;cursor:pointer;margin:6px 0 0 6px}.lv-tooltip-add-scope{font:inherit;cursor:pointer;margin-top:6px}.lv-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lv-slowmo-dock{z-index:6;max-height:55%;font:12px/1.35 var(--font-ui,system-ui, sans-serif);color:#e8ecf4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10151feb;border:1px solid #ffffff29;border-radius:8px;flex-direction:column;gap:6px;padding:8px 10px;display:flex;position:absolute;bottom:8px;left:8px;right:8px;overflow:auto}.lv-slowmo-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lv-slowmo-dock button,.lv-slowmo-dock select{font:inherit;color:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff38;border-radius:5px;padding:2px 8px}.lv-slowmo-dock button:disabled{opacity:.45;cursor:default}.lv-slowmo-dock button:focus-visible,.lv-slowmo-dock select:focus-visible,.lv-slowmo-dock input:focus-visible{outline-offset:1px;outline:2px solid #9cc8ff}.lv-slowmo-scrub{flex:140px;min-width:100px}.lv-slowmo-time{font-variant-numeric:tabular-nums;min-width:15ch}.lv-slowmo-seg{display:inline-flex}.lv-slowmo-seg button{border-radius:0;margin-left:-1px}.lv-slowmo-seg button:first-child{border-radius:5px 0 0 5px;margin-left:0}.lv-slowmo-seg button:last-child{border-radius:0 5px 5px 0}.lv-slowmo-seg button[aria-checked=true]{background:#2b6cb0;border-color:#9cc8ff}.lv-slowmo-caption,.lv-slowmo-aligned{color:#aab4c6}.lv-slowmo-warn{color:#f6c453}.lv-slowmo-exit{margin-left:auto}.lv-slowmo-body{align-items:flex-start;gap:10px;display:flex}.lv-slowmo-phase{font-variant-numeric:tabular-nums;flex-direction:column;flex:none;align-items:center;gap:2px;min-width:84px;display:flex}.lv-slowmo-nophase{color:#aab4c6;text-align:center;font-size:11px}.lv-slowmo-strips{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.lv-slowmo-strip{grid-template-columns:minmax(110px,190px) 1fr;align-items:center;gap:6px;min-height:22px;display:grid}.lv-slowmo-dock .lv-slowmo-strip-label{text-align:left;white-space:nowrap;background:0 0;border-width:0 0 0 3px;border-left-style:solid;border-radius:0;justify-content:flex-start;align-items:baseline;gap:6px;padding:0 6px;display:flex;overflow:hidden}.lv-slowmo-strip[data-highlighted] .lv-slowmo-strip-label{background:#ffffff1f}.lv-slowmo-strip-title{text-overflow:ellipsis;overflow:hidden}.lv-slowmo-strip-gain{color:#aab4c6;font-variant-numeric:tabular-nums}.lv-slowmo-chip{color:#0b0e14;background:#f6c453;border-radius:999px;padding:0 5px;font-size:10px}.lv-slowmo-trace{touch-action:none;cursor:ew-resize;background:#ffffff0d;border-radius:3px;display:block}.lv-slowmo-playhead{stroke:#fff4d6;stroke-width:1px}.lv-slowmo-notes{color:#d7dde8}@media (width<=700px){.lv-slowmo-body{flex-direction:column}}.lv-tour-card,.lv-coach{z-index:70;background:var(--panel-bg,#1c1f26);color:var(--text,#e8e8e8);border:1px solid var(--panel-border,#444);border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4;position:absolute;box-shadow:0 4px 16px #0006}.lv-tour-card{width:min(360px,100% - 24px);bottom:12px;left:12px}.lv-tour-card h3{margin:0 0 4px;font-size:14px}.lv-tour-card .lv-tour-step{color:var(--text-muted,#999);font-size:11px}.lv-tour-card p{margin:4px 0}.lv-tour-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.lv-tour-say{color:var(--text-muted,#999);font-style:italic}.lv-coach{width:240px;top:44px;right:12px}.lv-coach p{margin:0 0 6px}.lv-coach-actions{justify-content:flex-end;align-items:center;gap:6px;font-size:11px;display:flex}.lv-coach-actions span{color:var(--text-muted,#999);margin-right:auto}.lv-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lv-tour-card[data-mode=slowmo]{bottom:150px}:root,.lv-host[data-bench=dark]{--lv-bench-bg:#0b0e14;--lv-grid:#1a1f2b;--lv-ground:#5c6370;--lv-dot:#fff4d6;--lv-input:#56b4e9;--lv-gain:#d55e00;--lv-clipping:#cc79a7;--lv-tone:#009e73;--lv-output:#0072b2;--lv-power:#f0e442;--lv-modulation:#e69f00;--lv-other:#ddd}.lv-host[data-bench=light]{--lv-bench-bg:#f6f5f1;--lv-grid:#e2e0d8;--lv-ground:#2e3238;--lv-casing:#3a3a3a;--lv-dot:#1b1b1b;--lv-input:#56b4e9;--lv-gain:#d55e00;--lv-clipping:#cc79a7;--lv-tone:#009e73;--lv-output:#0072b2;--lv-power:#f0e442;--lv-modulation:#e69f00;--lv-other:#6e6e6e}.lv-host{background:var(--lv-bench-bg)}.lv-panel{font:13px/1.4 var(--font-ui,system-ui, sans-serif);color:var(--text,#1a1a1a);flex-direction:column;gap:14px;padding:12px;display:flex}.lv-panel h2{margin:0;font-size:15px}.lv-panel h3{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#6b6b73);margin:0 0 6px;font-size:11px}.lv-panel-head{flex-direction:column;gap:6px;display:flex}.lv-source-badge{border:1px solid var(--panel-border,#d4d4d8);background:#1e90ff1f;border-radius:999px;align-self:flex-start;padding:1px 8px;font-size:11px}.lv-play-hint{font:inherit;border:1px solid var(--accent,#1e90ff);color:var(--accent,#1e90ff);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;padding:4px 10px}.lv-legend{flex-direction:column;gap:6px;display:flex}.lv-legend-item{border-radius:6px;grid-template-columns:14px 1fr;align-items:start;gap:2px 8px;padding:4px 6px;display:grid}.lv-legend-item:hover{background:#80808024}.lv-swatch{border-radius:3px;width:12px;height:12px;margin-top:3px}.lv-legend-item small{color:var(--text-muted,#6b6b73);grid-column:2}.lv-badge-text{font:600 10px var(--font-mono,monospace);border:1px solid;border-radius:3px;margin-right:6px;padding:0 4px;display:inline-block}.lv-encoding ul{color:var(--text-muted,#6b6b73);margin:0;padding-left:16px}.lv-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lv-controls button,.lv-controls select{font:inherit;padding:3px 8px}.lv-controls button[aria-pressed=true]{background:var(--accent,#1e90ff);color:#fff}.lv-panel section{min-width:0}.lv-legend-icon{vertical-align:-2px;margin-right:4px;display:inline-flex}.lv-voltage{margin-top:6px;position:relative}.lv-voltage button{font:inherit;border:1px dashed var(--text-muted,#6b6b73);color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:2px 8px}.lv-popover{border:1px solid var(--panel-border,#d4d4d8);background:var(--panel-bg,#8080801f);border-radius:6px;margin-top:6px;padding:8px 10px}.lv-stage-strip{flex-wrap:wrap;align-items:center;gap:4px 2px;display:flex}.lv-strip-item{align-items:center;gap:2px;display:inline-flex}.lv-stage-chip{font:12px var(--font-mono,monospace);border:1px solid var(--panel-border,#d4d4d8);color:inherit;cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.lv-stage-chip[data-active]{outline:2px solid var(--accent,#1e90ff)}.lv-stage-chip[data-held]{opacity:.55}.lv-chip-dot{border-radius:50%;width:8px;height:8px}.lv-ladder{flex-direction:column;gap:4px;display:flex}.lv-ladder-row{font:11px var(--font-mono,monospace);grid-template-columns:38px 1fr auto;align-items:center;gap:6px;display:grid}.lv-ladder-row[data-held]{opacity:.55}.lv-ladder-track,.lv-meter-track{background:#80808033;border-radius:4px;height:8px;display:block;overflow:hidden}.lv-ladder-fill,.lv-meter-fill{border-radius:4px;height:100%;display:block}.lv-cards{flex-direction:column;gap:8px;display:flex}.lv-stage-card{border:1px solid var(--panel-border,#d4d4d8);cursor:pointer;border-radius:8px;padding:8px}.lv-stage-card[data-active]{outline:2px solid var(--accent,#1e90ff)}.lv-stage-card p{margin:4px 0 0}.lv-card-head{align-items:center;gap:6px;display:flex}.lv-card-head strong{flex:1}.lv-card-num{font:600 11px var(--font-mono,monospace);opacity:.7}.lv-card-gain{font:11px var(--font-mono,monospace)}.lv-card-meter{grid-template-columns:1fr auto;align-items:center;gap:6px;margin-top:6px;display:grid}.lv-layers{grid-template-columns:1fr 1fr;gap:4px 10px;display:grid}.lv-controls{flex-direction:column;align-items:flex-start}.lv-controls h3{width:100%}.lv-controls label{align-items:center;gap:6px;display:flex}.lv-concepts{flex-direction:column;gap:6px;width:100%;display:flex}.lv-concept p{color:var(--text-muted,#6b6b73);margin:2px 0 0}:root{--edge-wire:#00008b;--edge-black:#000;--edge-gray:gray;--edge-red:red;--edge-green:#0f0;--edge-blue:#00f;--edge-yellow:#ff0;--edge-cyan:#0ff;--edge-magenta:#f0f;--edge-orange:orange;--selection:#1e90ff;--highlight:gray;--terminal-unconnected:red;--junction:var(--edge-wire);--grid-dot:#d0d0d0;--scope-bg:#111318;--scope-grid:#2c313a;--bg:#fff;--panel-bg:#f4f4f6;--panel-border:#d4d4d8;--text:#1a1a1a;--text-muted:#6b6b73;--accent:#1e90ff;--error:#c62828;--warning:#b26a00;--info:#1565c0;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-schematic:"Segoe UI", system-ui, sans-serif;--menubar-h:36px;--left-w:240px;--right-w:280px;--bottom-h:240px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);color:var(--text);background:var(--bg)}.app-shell{grid-template-columns:var(--left-w) 1fr var(--right-w);grid-template-rows:var(--menubar-h) 1fr var(--bottom-h);grid-template-areas:"menubar menubar menubar""left center right""bottom bottom bottom";height:100vh;display:grid}.app-shell.has-banner{grid-template-rows:var(--menubar-h) auto 1fr var(--bottom-h);grid-template-areas:"menubar menubar menubar""banner banner banner""left center right""bottom bottom bottom"}.app-banner{color:var(--warning);border-bottom:1px solid var(--warning);background:#fff4e5;grid-area:banner;padding:6px 12px;font-weight:600}.app-menubar{border-bottom:1px solid var(--panel-border);background:var(--panel-bg);grid-area:menubar;align-items:center;gap:8px;padding:0 8px;display:flex}.app-title{margin:0 12px 0 0;font-size:15px}.app-doc-title{color:var(--text-muted);margin-left:auto}.app-coi{color:var(--text-muted);font-size:11px}.app-left,.app-right{background:var(--panel-bg);overflow:auto}.app-left{border-right:1px solid var(--panel-border);grid-area:left}.app-right{border-left:1px solid var(--panel-border);grid-area:right}.app-center{grid-area:center;min-width:0;min-height:0;position:relative;overflow:hidden}.app-bottom{border-top:1px solid var(--panel-border);flex-direction:column;grid-area:bottom;min-height:0;display:flex}.app-tabs{background:var(--panel-bg);border-bottom:1px solid var(--panel-border);display:flex}.app-tab{font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:6px 14px}.app-tab.active{border-bottom-color:var(--accent)}.app-tabpanel{flex:1;min-height:0;overflow:auto}.menu-button{font:inherit;padding:4px 10px}.slot-stub{color:var(--text-muted);padding:8px;font-size:12px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--scope-bg:#05070a;--scope-grid:#1f2530}}:root[data-theme=dark]{--scope-bg:#05070a;--scope-grid:#1f2530}:root[data-theme=light]{--scope-bg:#111318;--scope-grid:#2c313a}.splitter{z-index:30;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;justify-content:center;align-items:center;display:flex;position:relative}.splitter-left,.splitter-right{cursor:col-resize;width:8px}.splitter-left{grid-area:left;justify-self:end;margin-right:-4px}.splitter-right{grid-area:right;justify-self:start;margin-left:-4px}.splitter-bottom{cursor:row-resize;grid-area:bottom;align-self:start;height:8px;margin-top:-4px}.splitter:hover,.splitter:focus-visible,.splitter:active{background:color-mix(in srgb, var(--accent) 35%, transparent)}.splitter:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.splitter-grip{background:var(--panel-border);border:1px solid var(--text-muted);border-radius:4px;display:none}.splitter[data-collapsed=true]{background:var(--panel-bg);border:1px solid var(--panel-border);cursor:pointer;margin:0}.splitter-left[data-collapsed=true],.splitter-right[data-collapsed=true]{align-self:center;width:16px;height:64px}.splitter-left[data-collapsed=true]{justify-self:start}.splitter-right[data-collapsed=true]{justify-self:end}.splitter-bottom[data-collapsed=true]{place-self:end center;width:64px;height:16px}.splitter[data-collapsed=true] .splitter-grip{display:block}.splitter-left .splitter-grip,.splitter-right .splitter-grip{width:6px;height:48px}.splitter-bottom .splitter-grip{width:48px;height:6px}.app-left[data-collapsed=true],.app-right[data-collapsed=true],.app-bottom[data-collapsed=true]{visibility:hidden;border:0;overflow:hidden}
