#lfo-popup[hidden]{display:none}#lfo-popup{position:fixed;z-index:1000;top:100px;right:32px;width:340px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;background:#1c222c;color:#e6e8ed;border:1px solid #505d70;border-radius:12px;box-shadow:0 18px 65px #0009;font-size:13px;color-scheme:dark}
.lfo-popup-heading{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid #394251;cursor:move;touch-action:none;user-select:none}.lfo-popup-heading h3{font-size:15px;font-weight:600;margin:0;flex:1}.lfo-grip{color:#8390a3;letter-spacing:-2px;font-size:18px}.lfo-close{border:0;background:none;color:#b8c3d3;font:22px/1 system-ui;cursor:pointer;padding:2px 5px}
.lfo-popup-body{padding:16px}.lfo-popup-body label{display:block;color:#b5c0d1;font-size:12px;margin-bottom:7px}.lfo-popup-body select,.lfo-popup-body input[type=number]{width:100%;padding:9px 10px;border:1px solid #455165;border-radius:6px;background:#121720;color:#e6e8ed;font:13px system-ui;min-width:0}.lfo-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.lfo-fields>div{min-width:0}.lfo-field{margin-bottom:17px}
.lfo-wave{display:block;width:100%;height:62px;background:#131a24;border:1px solid #303d50;border-radius:7px;margin-bottom:15px}.lfo-wave path{fill:none;stroke:#839fea;stroke-width:1.7}.lfo-wave line{stroke:#303c50;stroke-dasharray:3 4}.lfo-wave circle{fill:#d1dfff;stroke:#839fea;stroke-width:2}
.lfo-range-track{position:relative;height:32px;touch-action:none;cursor:pointer}.lfo-rail{position:absolute;top:14px;left:9px;right:9px;height:4px;border-radius:4px;background:#414957;pointer-events:none}#lfo-range-fill{position:absolute;top:0;height:100%;background:#7598e6;border-radius:4px}.lfo-range-track input[type=range]{position:absolute;inset:0;width:100%;height:32px;margin:0;padding:0;appearance:none;-webkit-appearance:none;background:transparent;pointer-events:none}.lfo-range-track input::-webkit-slider-runnable-track{height:4px;background:transparent}.lfo-range-track input::-webkit-slider-thumb{appearance:none;width:18px;height:18px;margin-top:-7px;border:2px solid #7598e6;border-radius:50%;background:#e6e8ed;box-shadow:0 2px 5px #0006;pointer-events:auto;cursor:grab}.lfo-range-track input::-moz-range-track{height:4px;background:transparent}.lfo-range-track input::-moz-range-thumb{width:14px;height:14px;border:2px solid #7598e6;border-radius:50%;background:#e6e8ed;pointer-events:auto;cursor:grab}.lfo-scale{display:flex;justify-content:space-between;color:#8592a5;font-size:11px;margin:1px 0 12px}.lfo-endpoints{margin-bottom:0}.lfo-range-track input:disabled{opacity:.4}.lfo-rate-heading{display:flex;align-items:center;justify-content:space-between;margin:18px 0 10px}.lfo-rate-heading label{margin:0}.lfo-rate-heading select{width:auto;padding:5px 8px}#lfo-rate{margin:10px 0;width:100%;accent-color:#91acec}.lfo-rate-line{display:flex;align-items:center;gap:10px}.lfo-rate-line input{flex:1}#lfo-rate-unit{color:#aebbd0;font-size:12px;min-width:26px}.lfo-period{color:#94a1b6;font-size:11px;margin:0}.lfo-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #394251;padding:13px 16px}.lfo-enable{display:flex;gap:8px;align-items:center;color:#c7d1df}.lfo-enable input{accent-color:#91acec}.lfo-remove{border:0;border-radius:7px;background:#343842;color:#e6e8ed;font:12px Arial,Helvetica,sans-serif;line-height:18px;cursor:pointer;height:32px;padding:7px 9px}.lfo-remove:hover{background:#394051}.lfo-remove:active{background:#292c34}.lfo-caption{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px;color:#9facc0;font-size:11px}#lfo-live-value{color:#c9d9ff;font-variant-numeric:tabular-nums}
@media(max-width:800px){.lfo-chain{grid-template-columns:1fr}.lfo-pedal-window{height:310px}.lfo-lab-heading{align-items:flex-start;flex-direction:column}#lfo-popup{right:12px;top:24px}}

/* Compact power toggle beside the LFO title. */
.lfo-switch{position:relative;display:inline-flex;align-items:center;width:32px;height:20px;flex-shrink:0;cursor:pointer;touch-action:manipulation}.lfo-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.lfo-switch span{width:32px;height:18px;background:#414b5b;border:1px solid #657187;border-radius:12px;pointer-events:none}.lfo-switch span:after{content:'';display:block;width:12px;height:12px;margin:2px;border-radius:50%;background:#c7cfdb;transition:transform .15s}.lfo-switch input:checked+span{background:#688acf;border-color:#91acec}.lfo-switch input:checked+span:after{transform:translateX(12px);background:#f0f5ff}.lfo-switch input:focus-visible+span{outline:2px solid #94b6ff;outline-offset:3px}.lfo-switch input:disabled+span{opacity:.4}.lfo-footer{justify-content:flex-end}
.lfo-knob-menu[hidden]{display:none}.lfo-knob-menu{position:fixed;z-index:1100;min-width:190px;max-width:calc(100vw - 16px);padding:5px;background:#202734;color:#e6e8ed;border:1px solid #505d70;border-radius:8px;box-shadow:0 10px 35px #0009;font-size:13px}.lfo-menu-label{padding:7px 9px;color:#aab7ca;font-size:11px}.lfo-knob-menu button{display:block;width:100%;border:0;border-radius:4px;background:none;color:inherit;font:inherit;text-align:left;padding:9px;cursor:pointer}.lfo-knob-menu button:hover,.lfo-knob-menu button:focus-visible{background:#354563;outline:none}.lfo-knob-menu button:disabled{opacity:.4;cursor:default;background:none}.lfo-knob-menu p{font-size:11px;margin:3px 9px 7px;max-width:185px;color:#aab7ca}
@media(prefers-reduced-motion:reduce){.lfo-switch span:after{transition:none}}

#lfo-popup,#lfo-knob-menu{margin:0;inset:auto;padding:0;text-align:left;box-sizing:border-box}#lfo-popup{top:100px;right:32px;bottom:auto;left:auto}#lfo-popup *{box-sizing:border-box}#lfo-popup h3{color:#e6e8ed;letter-spacing:normal;text-transform:none}#lfo-popup .lfo-popup-heading{margin:0}#lfo-popup .lfo-popup-body{padding:16px}#lfo-popup .lfo-fields select{width:100%;margin:0}#lfo-popup .lfo-switch{margin:0}#lfo-popup .lfo-switch input{margin:0;padding:0}#lfo-popup .lfo-footer{padding:13px 16px}#lfo-popup button{min-height:0}#lfo-popup .lfo-close{padding:2px 5px;background:none;border:0}#lfo-popup .lfo-status{font-size:11px;color:#aab6c6;margin:0 0 14px;line-height:1.5}#lfo-popup .lfo-rate-heading select{width:auto}#lfo-popup .lfo-caption{line-height:1.5}#lfo-popup input[type=range]{box-shadow:none}#lfo-knob-menu{padding:5px}#lfo-knob-menu p[hidden]{display:none}
#lfo-open{display:inline-flex;align-items:center;gap:8px}#lfo-indicator{display:none;width:7px;height:7px;flex:none;border-radius:50%;background:#76d991;box-shadow:0 0 6px #76d99180}#lfo-open[data-running=true] #lfo-indicator{display:inline-block;animation:lfo-button-blink 1s ease-in-out infinite}@keyframes lfo-button-blink{0%,100%{opacity:1}50%{opacity:.2}}.lfo-connected{outline:2px solid #76d991;outline-offset:3px}.chain-preset-utilities{flex-wrap:wrap}
@media(prefers-reduced-motion:reduce){#lfo-open[data-running=true] #lfo-indicator{animation:none}}
