:root{--patch-height:190px;--control-rack-height:154px;--background:#000;--foreground:#fff;--panel:#101010;--panel-raised:#191919;--panel-line:#383838;--panel-soft-line:#292929;--muted:#a1a1aa;--primary:#fff;--menu-background:#09090bb8;--menu-border:#ffffff1f;--menu-hover:#ffffff14;--menu-selected:#ffffff0f;--cable-1:#fff;--cable-2:#fff;--cable-3:#fff;background:var(--background);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Unbounded,sans-serif}:root[data-theme=light]{--background:#fff;--foreground:#000;--panel:#e8e8e8;--panel-raised:#f5f5f5;--panel-line:#a3a3a3;--panel-soft-line:#c8c8c8;--muted:#52525b;--primary:#000;--menu-background:#ffffffd1;--menu-border:#0000001f;--menu-hover:#0000000f;--menu-selected:#0000000a;--cable-1:#000;--cable-2:#000;--cable-3:#000;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body,#app{min-height:100%}body{overflow:hidden}.visual-canvas{z-index:0;width:100%;height:100%;display:block;position:fixed;inset:0}body{background:var(--background);margin:0;overflow:visible}button{color:inherit}.patch-bay{z-index:10;height:var(--patch-height);border-bottom:2px solid var(--panel-line);color:var(--foreground);background:linear-gradient(180deg, var(--panel-raised), var(--panel));-webkit-user-select:none;user-select:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;position:fixed;top:0;left:0;right:0;overflow:hidden;box-shadow:inset 0 1px #ffffff14,inset 0 -8px 18px #00000047,0 1px #000000b8}.panel-nameplate{z-index:4;letter-spacing:.08em;align-items:baseline;gap:9px;display:flex;position:absolute;top:14px;left:24px}.panel-nameplate span{font-size:11px;font-weight:700}.panel-nameplate small,.module-label,.route-channel__number,.route-view__status{color:var(--muted);letter-spacing:.12em;font-size:8px}.panel-screw{z-index:6;border:1px solid var(--panel-line);background:var(--panel-raised);width:8px;height:8px;box-shadow:inset 0 0 0 2px var(--panel);border-radius:50%;position:absolute}.panel-screw:after{background:var(--muted);content:"";width:6px;height:1px;position:absolute;top:3px;left:1px;transform:rotate(-35deg)}.panel-screw--top-left{top:8px;left:8px}.panel-screw--top-right{top:8px;right:8px}.panel-screw--bottom-left{bottom:8px;left:8px}.panel-screw--bottom-right{bottom:8px;right:8px}.route-bank{z-index:4;border:1px solid var(--panel-line);background:#0000001f;padding:7px 10px 9px;position:absolute;top:44px;left:24px;box-shadow:inset 0 0 0 1px #ffffff08}.route-bank>.module-label{margin-bottom:6px;display:block}.route-bank__channels{gap:5px;display:flex}.route-channel{border-left:1px solid var(--panel-soft-line);background:var(--panel-raised);grid-template-rows:auto auto;grid-template-columns:1fr 22px;align-items:center;width:76px;padding:6px;display:grid;position:relative}.route-channel:first-child{border-left:0}.route-channel__number{grid-area:1/1}.route-channel__label{letter-spacing:.04em;text-transform:uppercase;grid-area:2/1;font-size:11px;font-weight:700}.router-telemetry{z-index:4;border:1px solid var(--panel-line);box-sizing:border-box;background:linear-gradient(#ffffff08,#0000 35%),#00000024;height:76px;padding:7px 9px 6px;position:absolute;top:44px;left:470px;right:112px;box-shadow:inset 0 0 0 1px #ffffff08}.router-telemetry__heading,.router-telemetry__footer{color:var(--muted);letter-spacing:.11em;justify-content:space-between;align-items:center;font-size:7px;display:flex}.router-telemetry__heading small{font:inherit}.router-telemetry__body{grid-template-columns:74px minmax(82px,1fr) 66px;align-items:center;gap:9px;height:38px;margin:5px 0 3px;display:grid}.router-status-lights{gap:3px;display:grid}.router-status-lights span{color:var(--muted);letter-spacing:.08em;align-items:center;gap:5px;font-size:7px;display:flex}.router-status-lights i{border:1px solid var(--panel-line);background:var(--panel);border-radius:50%;width:5px;height:5px;box-shadow:inset 0 0 0 1px #00000059}.router-status-lights i.is-on{background:var(--foreground);box-shadow:0 0 5px #ffffff73}:root[data-theme=light] .router-status-lights i.is-on{box-shadow:0 0 5px #00000047}.router-scope-frame{border:1px solid var(--panel-soft-line);background:var(--panel);box-sizing:border-box;height:25px;position:relative;overflow:hidden;box-shadow:inset 0 0 8px #000000a6,0 0 4px #ffffff0a}.router-scope-frame:after{content:"";pointer-events:none;background:repeating-linear-gradient(#0000 0 2px,#ffffff05 2px 3px);position:absolute;inset:0}.router-scope{width:100%;height:100%;display:block}.router-readout{border:1px solid var(--panel-soft-line);background:var(--panel);grid-template-columns:1fr auto;padding:3px 5px;display:grid}.router-readout span,.router-readout small{color:var(--muted);letter-spacing:.08em;font-size:6px}.router-readout strong{letter-spacing:.04em;grid-column:1;font-size:11px;font-weight:500}.router-readout small{align-self:end}.router-service-strip{z-index:4;border-top:1px solid var(--panel-soft-line);border-bottom:1px solid var(--panel-soft-line);box-sizing:border-box;align-items:center;gap:11px;height:42px;padding:5px 8px;display:flex;position:absolute;bottom:12px;left:470px;right:112px}.router-service-details{z-index:4;align-items:center;gap:10px;height:28px;display:flex;position:absolute;top:8px;left:470px}.router-service-details .router-vents{width:120px}.router-switch{justify-items:center;gap:2px;display:grid}.router-switch>span{border:1px solid var(--panel-line);background:var(--panel);width:13px;height:19px;display:block;position:relative}.router-switch i{border:1px solid var(--muted);background:var(--panel-raised);width:5px;height:9px;position:absolute;top:3px;left:3px;transform:skewY(-12deg)}.router-switch--active i{top:6px;transform:skewY(12deg)}.router-switch small,.router-revision{color:var(--muted);letter-spacing:.09em;font-size:6px}.router-vents{background:repeating-linear-gradient(90deg, var(--panel) 0 3px, var(--panel-line) 3px 4px, transparent 4px 8px);width:min(120px,22%);height:20px;margin-left:4px;box-shadow:inset 0 1px 3px #0000004d}.geometry-selector{flex:260px;align-self:stretch;align-items:center;gap:2px;min-width:0;max-width:260px;display:grid}.geometry-selector>span{color:var(--muted);letter-spacing:.12em;font-size:5px;line-height:1}.geometry-selector__buttons{gap:4px;display:flex}.geometry-selector button{border:1px solid var(--panel-line);width:auto;min-width:0;height:21px;color:var(--muted);background:var(--panel);cursor:pointer;letter-spacing:.07em;text-transform:uppercase;border-radius:1px;flex:1 1 0;padding:0 4px;font-family:inherit;font-size:6px;transition:color .12s,background .12s,box-shadow .12s;box-shadow:inset 0 1px #ffffff0d,0 1px 2px #00000073}.geometry-selector button:hover{border-color:var(--muted);color:var(--foreground)}.geometry-selector button[aria-pressed=true]{color:#000;background:#ffffffd1;border-color:#ffffffdb;box-shadow:0 0 4px #ffffff9e,0 0 12px #ffffff3d,inset 0 0 5px #ffffffc7}.router-revision{writing-mode:vertical-rl;margin-left:auto}.jack{border:1px solid var(--muted);background:var(--panel);width:22px;height:22px;box-shadow:inset 0 0 0 3px var(--panel-raised), 0 1px 0 #ffffff1f;border-radius:50%;place-items:center;display:grid;position:relative}.jack>span{background:#050505;border-radius:50%;width:7px;height:7px;box-shadow:inset 0 0 0 1px #525252}.jack--output{cursor:crosshair;grid-area:1/2/3;padding:0;transition:border-color .12s,box-shadow .12s,transform .12s}.unfurl-switch{z-index:4;border:1px solid var(--panel-line);width:74px;height:58px;color:var(--foreground);background:var(--panel-raised);cursor:pointer;grid-template-rows:auto 1fr auto;align-items:center;gap:3px;padding:6px 7px 5px;font-family:inherit;display:grid;position:absolute;top:101px;right:24px;box-shadow:inset 0 1px #ffffff12,inset 0 -4px 8px #0000003d,0 3px 8px #00000038}.unfurl-switch__label{color:var(--muted);letter-spacing:.11em;font-size:7px}.unfurl-switch__track{border:1px solid var(--panel-line);background:var(--panel);justify-self:center;width:42px;height:15px;display:block;position:relative;box-shadow:inset 0 2px 4px #00000061}.unfurl-switch__track i{border:1px solid var(--muted);background:linear-gradient(180deg, #ffffff1a, transparent), var(--panel-raised);width:17px;height:9px;transition:left .18s cubic-bezier(.2,.85,.3,1.15),background-color .12s;position:absolute;top:2px;left:2px;box-shadow:1px 2px 3px #00000059}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i{background:var(--foreground);left:20px}.unfurl-switch__states{color:var(--muted);justify-content:space-between;display:flex}.unfurl-switch__states small{letter-spacing:.08em;font-size:6px}.unfurl-switch[aria-pressed=true] .unfurl-switch__states small:last-child,.unfurl-switch[aria-pressed=false] .unfurl-switch__states small:first-child{color:var(--foreground)}.unfurl-switch:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.unfurl-switch[aria-pressed=false] .unfurl-switch__track i{animation:2.6s ease-in-out infinite power-standby-pulse}@keyframes power-standby-pulse{0%,to{filter:brightness(.68);opacity:.48}50%{filter:brightness(1.3);opacity:.92}}@media (prefers-reduced-motion:reduce){.unfurl-switch[aria-pressed=false] .unfurl-switch__track i{animation:none}}.jack--output.is-cable-target{border-color:var(--foreground);box-shadow:inset 0 0 0 3px var(--panel-raised), 0 0 0 4px #ffffff2e;transform:scale(1.1)}.rack-jack.is-cable-target{border-color:var(--foreground);box-shadow:inset 0 0 0 4px var(--panel-raised), 0 0 0 4px #ffffff2e;transform:scale(1.1)}:root[data-theme=light] .jack--output.is-cable-target{box-shadow:inset 0 0 0 3px var(--panel-raised), 0 0 0 4px #00000024}:root[data-theme=light] .rack-jack.is-cable-target{box-shadow:inset 0 0 0 4px var(--panel-raised), 0 0 0 4px #00000024}.patch-cables{z-index:2;contain:none;pointer-events:none;width:100%;height:100vh;position:fixed;inset:0;overflow:visible}.patch-cable{fill:none;stroke:var(--cable-1);stroke-linecap:round;stroke-width:3px}.patch-cable--shadow{stroke:#000;stroke-opacity:.55;stroke-width:6px;transform:translate(1px,2px)}.cable-node-layer{z-index:5;pointer-events:none;position:fixed;inset:0}.cable-node{border:3px solid var(--panel);background:var(--foreground);width:16px;height:16px;box-shadow:0 0 0 1px var(--muted), 0 2px 5px #00000061;box-sizing:border-box;cursor:grab;pointer-events:auto;border-radius:50%;padding:0;transition:box-shadow .1s,transform .1s;position:absolute;transform:translate(-50%,-50%)}.cable-node:hover,.cable-node.is-active{box-shadow:0 0 0 1px var(--foreground), 0 0 0 5px #ffffff2e;transform:translate(-50%,-50%)scale(1.18)}.control-rack{z-index:8;top:var(--patch-height);height:var(--control-rack-height);border-bottom:1px solid var(--panel-line);color:var(--foreground);background:linear-gradient(180deg, var(--panel), var(--panel-raised));box-sizing:border-box;-webkit-user-select:none;user-select:none;grid-template-columns:minmax(310px,1.25fr) minmax(260px,.8fr);gap:8px;padding:34px 24px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;display:grid;position:fixed;left:0;right:0;box-shadow:inset 0 1px #ffffff14,inset 0 -8px 18px #0000003d,0 1px #000000b8}.control-rack__nameplate{letter-spacing:.08em;align-items:baseline;gap:9px;font-size:10px;font-weight:700;display:flex;position:absolute;top:11px;left:24px}.control-rack__nameplate small,.rack-module__heading,.rack-input>span,.rack-input small,.knob-control>span{color:var(--muted);letter-spacing:.1em;font-size:8px}.control-rack__nameplate small{font-weight:400}.rack-module{border:1px solid var(--panel-line);background:#0000001a;min-width:0;padding:8px 10px 9px;box-shadow:inset 0 0 0 1px #ffffff08}.rack-module--inputs{grid-template-rows:auto minmax(0,1fr);gap:6px;display:grid}.rack-module__heading{justify-content:space-between;margin-bottom:8px;display:flex}.rack-module__heading small{font:inherit}.rack-inputs{grid-template-columns:repeat(8,1fr);align-items:stretch;gap:5px;height:100%;display:grid}.rack-module--inputs .rack-input{height:auto;min-height:0}.rack-input{border-left:1px solid var(--panel-soft-line);background:var(--panel-raised);box-sizing:border-box;grid-template-rows:1fr 1fr;grid-template-columns:1fr 28px;align-items:center;min-width:0;height:57px;padding:4px 5px;display:grid}.rack-input:first-child{border-left:0}.rack-input>span:first-child{align-self:end}.rack-input small{align-self:start}.rack-jack{border:1px solid var(--muted);background:var(--panel);width:26px;height:26px;box-shadow:inset 0 0 0 4px var(--panel-raised), 0 1px 0 #ffffff1a;cursor:crosshair;border-radius:50%;grid-area:1/2/3;place-items:center;padding:0;transition:border-color .12s,box-shadow .12s,transform .12s;display:grid;position:relative}.rack-jack:before,.rack-jack:after{background:var(--muted);content:"";border-radius:50%;width:2px;height:2px;position:absolute}.rack-jack:before{top:-5px}.rack-jack:after{bottom:-5px}.rack-jack i{background:#050505;border-radius:50%;width:8px;height:8px;box-shadow:inset 0 0 0 1px #525252}.rack-knobs{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.knob-control{justify-items:center;gap:5px;display:grid}.knob-control>span{order:2}.knob-control>.knob{order:1}.knob{width:56px;height:56px;color:var(--foreground);cursor:ns-resize;touch-action:none;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.knob:before{z-index:1;background:var(--panel);content:"";border-radius:50%;position:absolute;inset:7px}.knob__ticks{z-index:0;pointer-events:none;border-radius:50%;position:absolute;inset:0}.knob__ticks>i{background:var(--muted);width:1px;height:4px;transform:rotate(var(--tick-angle));transform-origin:50% 28px;position:absolute;top:0;left:calc(50% - .5px)}.knob__ticks>i:nth-child(3n+1){background:var(--foreground);height:6px}.knob__cap{z-index:2;border:1px solid var(--muted);background:radial-gradient(circle at 35% 28%, #ffffff1a, transparent 34%), var(--panel-raised);width:36px;height:36px;transform:rotate(var(--angle));border-radius:50%;position:relative;box-shadow:inset 0 -5px 8px #00000059,0 3px 5px #00000059}.knob__cap i{background:var(--foreground);width:2px;height:11px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.knob.is-turning .knob__cap{box-shadow:inset 0 -4px 7px #0000004d,0 1px 2px #0000004d}.knob:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.cable-node.is-active{pointer-events:none}:root[data-theme=light] .cable-node:hover,:root[data-theme=light] .cable-node.is-active{box-shadow:0 0 0 1px var(--foreground), 0 0 0 5px #00000024}.route-channel__label{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;font-size:8px;font-weight:500;transition:color .14s,text-shadow .14s}.route-channel.is-connected .route-channel__label{color:var(--foreground);text-shadow:0 0 4px color-mix(in srgb, var(--foreground) 65%, transparent), 0 0 10px color-mix(in srgb, var(--foreground) 28%, transparent)}.rack-input small{transition:color .14s,text-shadow .14s}.rack-input.is-connected small{color:var(--foreground);text-shadow:0 0 4px color-mix(in srgb, var(--foreground) 65%, transparent), 0 0 10px color-mix(in srgb, var(--foreground) 28%, transparent)}.patch-bay{z-index:10;overflow:visible}.patch-cables{z-index:40}.cable-node-layer{z-index:41}.cable-discard[hidden]{display:none}.cable-discard{z-index:9;top:calc(var(--patch-height) + var(--control-rack-height) + 16px);border:1px solid var(--panel-line);width:116px;height:38px;color:var(--muted);cursor:pointer;font-family:var(--mono);text-align:left;background:#0b0b0b;border-radius:0;grid-template-columns:24px 1fr;align-items:center;gap:8px;padding:6px 9px;transition:border-color .12s,color .12s,box-shadow .12s;display:grid;position:fixed;right:24px;box-shadow:inset 0 1px #ffffff0d,0 3px 10px #0000006b}.cable-discard>span{box-sizing:border-box;width:22px;height:22px;color:var(--foreground);border:1px solid #4a4a4a;place-items:center;font-size:15px;font-weight:300;line-height:1;display:grid}.cable-discard>small{letter-spacing:.12em;font-size:6px;line-height:1.3}.cable-discard.is-cable-target,.cable-discard:hover{border-color:var(--foreground);color:var(--foreground);box-shadow:inset 0 0 0 1px #ffffff14,0 0 12px #ffffff1f}.theme-menu{z-index:20;display:block;position:absolute;top:44px;right:22px}.theme-menu__trigger{width:128px;height:46px;color:var(--muted);background:color-mix(in srgb, var(--surface) 94%, var(--ink));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--ink) 7%, transparent), inset 0 -1px 3px #0000004d;cursor:pointer;font-family:var(--mono);border:0;border-radius:0;grid-template-columns:31px 50px 31px;justify-content:center;align-items:center;gap:2px;padding:0 5px;display:grid}.theme-menu__trigger:hover{color:var(--primary)}.theme-toggle__state{color:var(--foreground);letter-spacing:.1em;opacity:.34;font-size:7px;line-height:1;transition:color .14s,opacity .14s,text-shadow .14s}.theme-toggle__state--dark{text-align:left}.theme-toggle__state--light{text-align:right}:root[data-theme=dark] .theme-toggle__state--dark,:root[data-theme=light] .theme-toggle__state--light{color:var(--foreground);opacity:1;text-shadow:0 0 5px color-mix(in srgb, var(--ink) 22%, transparent)}.theme-toggle__track{box-sizing:border-box;width:50px;height:2px;box-shadow:none;background:0 0;border:0;display:block;position:relative}.theme-toggle__groove{pointer-events:none;width:100%;height:1px;display:block;position:absolute;left:0}.theme-toggle__groove--upper{background:#292929;top:0}.theme-toggle__groove--lower{background:#202020;top:1px}:root[data-theme=light] .theme-toggle__groove--upper{background:#d7d7d7}:root[data-theme=light] .theme-toggle__groove--lower{background:#e2e2e2}.theme-toggle__track i{box-sizing:border-box;background:#292929;border:1px solid #686868;border-radius:2px;width:16px;height:24px;transition:left .155s cubic-bezier(.2,.9,.28,1.3);position:absolute;top:50%;left:3px;transform:translateY(-50%);box-shadow:inset 1px 1px #4a4a4a,inset -1px -1px #101010,0 2px 3px #000000ad}.theme-toggle__track i:before{content:"";background:#111;width:1px;position:absolute;top:4px;bottom:4px;left:50%;transform:translate(-50%);box-shadow:-3px 0 #1b1b1b,3px 0 #484848}:root[data-theme=light] .theme-toggle__track i{left:31px}.theme-menu__trigger:focus-visible,.theme-menu__option:focus-visible,.patch-plug:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.theme-menu__icon{width:18px;height:18px}[data-theme-icon][hidden]{display:none}.theme-menu__label,.theme-menu__option{letter-spacing:.08em;text-transform:uppercase;font-size:10px}.theme-menu__chevron{width:12px;height:12px;transition:transform .15s}.theme-menu__trigger[aria-expanded=true] .theme-menu__chevron{transform:rotate(180deg)}.theme-menu__panel{z-index:2;border:1px solid var(--menu-border);width:112px;color:var(--foreground);background:var(--menu-background);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);padding:4px;position:absolute;top:42px;right:0;overflow:hidden}.theme-menu__option{width:100%;min-height:40px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-family:inherit;transition:color .15s,background-color .15s;display:flex}.theme-menu__option:hover{color:var(--foreground);background:var(--menu-hover)}.theme-menu__option[aria-checked=true]{color:var(--primary);background:var(--menu-selected)}.theme-menu__marker{background:currentColor;flex:none;width:6px;height:6px;display:none}.theme-menu__option[aria-checked=true] .theme-menu__marker{display:block}.route-view{z-index:3;min-height:100vh;color:var(--foreground);pointer-events:none;background:0 0;place-items:end center;display:grid;position:fixed;inset:0;overflow:hidden}.route-view h1{width:100%;color:var(--foreground);opacity:1;letter-spacing:-.07em;text-align:center;white-space:nowrap;margin:0;font-size:14.8vw;font-weight:900;line-height:1;transition:opacity .48s}.patch-bay:has(.unfurl-switch[aria-pressed=true])~.route-view h1{opacity:.15}@media (width>=701px){.panel-nameplate{top:12px;left:24px}.theme-menu{display:block;top:44px;right:24px}.route-bank{box-sizing:border-box;flex-direction:column;width:520px;padding:9px 10px 10px;display:flex;top:44px;bottom:16px;left:24px}.route-bank>.module-label{margin-bottom:9px}.route-bank__channels{flex:1;grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.route-channel{flex:1;width:auto;padding:8px}.router-telemetry{height:76px;top:44px;left:560px;right:168px}.router-service-strip{height:42px;bottom:16px;left:560px;right:168px}.router-service-details{left:560px}.unfurl-switch{align-content:space-between;width:128px;height:74px;padding:8px 12px 7px;top:100px;right:24px}.unfurl-switch__label{align-self:start}.unfurl-switch__track{box-sizing:border-box;width:52px;height:30px;box-shadow:none;perspective:none;background:0 0;border:0;border-radius:0;padding:0;position:relative}.unfurl-switch__track:before{content:"";border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);border-bottom-color:color-mix(in srgb, var(--ink) 8%, transparent);background:color-mix(in srgb, var(--surface) 95%, black);border-radius:50% 50% 5px 5px;width:34px;height:23px;position:absolute;top:2px;left:8px;box-shadow:inset 0 2px 5px #00000075}.unfurl-switch__track:after{content:"";border:1px solid color-mix(in srgb, var(--ink) 26%, transparent);background:color-mix(in srgb, var(--surface) 76%, black);border-radius:50%;width:14px;height:6px;position:absolute;bottom:2px;left:18px;box-shadow:inset 0 1px 2px #000}.unfurl-switch__track i{z-index:1;background:color-mix(in srgb, var(--ink) 78%, var(--surface));width:3px;height:22px;box-shadow:1px 0 0 color-mix(in srgb, var(--ink) 20%, transparent), 0 2px 3px #000000b8;transform-origin:50% calc(100% - 2px);border:0;border-radius:2px;transition:transform .145s cubic-bezier(.18,.89,.32,1.45);position:absolute;inset:auto auto 5px 24px;transform:rotate(-34deg)}.unfurl-switch__track i:before,.unfurl-switch__track i:after{content:"";border-radius:50%;position:absolute;left:50%;transform:translate(-50%)}.unfurl-switch__track i:before{border:1px solid color-mix(in srgb, var(--ink) 54%, transparent);background:color-mix(in srgb, var(--surface) 72%, var(--ink));width:11px;height:11px;box-shadow:inset 0 1px 1px color-mix(in srgb, var(--ink) 30%, transparent), 0 2px 3px #000000b8;top:-5px}.unfurl-switch__track i:after{border:1px solid color-mix(in srgb, var(--ink) 34%, transparent);background:color-mix(in srgb, var(--surface) 62%, black);width:9px;height:9px;bottom:-4px}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i{left:24px;transform:rotate(34deg)}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i:before{background:var(--ink);box-shadow:0 0 7px color-mix(in srgb, var(--ink) 42%, transparent), 0 2px 3px #000000b8}.unfurl-switch__states small:first-child,.unfurl-switch__states small:last-child{transition:opacity .12s,color .12s}.unfurl-switch:not([aria-pressed=true]) .unfurl-switch__states small:first-child,.unfurl-switch[aria-pressed=true] .unfurl-switch__states small:last-child{color:var(--ink);opacity:1}.unfurl-switch:not([aria-pressed=true]) .unfurl-switch__states small:last-child,.unfurl-switch[aria-pressed=true] .unfurl-switch__states small:first-child{opacity:.35}.unfurl-switch__track{border:1px solid color-mix(in srgb, var(--foreground) 32%, transparent);background:color-mix(in srgb, var(--surface) 88%, black);width:64px;height:36px;box-shadow:inset 0 3px 7px #0000009e, 0 1px 0 color-mix(in srgb, var(--foreground) 10%, transparent);border-radius:2px;place-items:center;display:grid}.unfurl-switch__track:before,.unfurl-switch__track:after{display:none}.unfurl-switch__track i,.unfurl-switch[aria-pressed=true] .unfurl-switch__track i{border:1px solid color-mix(in srgb, var(--foreground) 48%, transparent);width:54px;height:26px;color:var(--foreground);background:linear-gradient(to bottom, color-mix(in srgb, var(--foreground) 11%, var(--surface)), var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--foreground) 18%, transparent), 0 3px 4px #00000094;border-radius:1px;transition:color .12s,background .12s,box-shadow .12s,transform 90ms;position:relative;inset:auto;transform:none}.unfurl-switch__track i:before{content:"⏻";width:auto;height:auto;color:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;font-family:system-ui,sans-serif;font-size:15px;font-style:normal;line-height:1;top:50%;left:50%;transform:translate(-50%,-50%)}.unfurl-switch__track i:after{display:none}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i{color:#000;background:linear-gradient(#fffffff0,#ffffffb8);border-color:#ffffffe0;transform:none;box-shadow:0 0 4px #ffffffc7,0 0 14px #ffffff7a,0 0 26px #ffffff2e,inset 0 0 8px #ffffffeb,inset 0 -3px 5px #ffffff3d}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i:before{z-index:1;text-shadow:0 1px #ffffff47}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i:after{width:auto;height:8px;box-shadow:none;content:"";background:linear-gradient(#ffffffb3,#0000);border:0;border-radius:1px;display:block;position:absolute;inset:2px 3px auto;transform:none}}@media (width>=701px) and (width<=1000px){.route-bank{width:298px}.route-bank__channels{grid-template-columns:repeat(3,1fr)}.route-channel{padding:5px 7px}.router-telemetry,.router-service-strip,.router-service-details{left:338px}}@media (width<=700px){:root{--patch-height:270px;--control-rack-height:284px}html,body{overflow-x:hidden}.patch-bay{height:var(--patch-height)}.panel-nameplate{left:20px}.panel-nameplate small{display:none}.theme-menu{border:0;justify-content:flex-end;align-items:center;height:30px;display:flex;top:3px;left:auto;right:16px}.route-bank{box-sizing:border-box;width:auto;height:78px;padding:5px 8px;inset:42px 16px auto}.route-bank>.module-label{margin-bottom:3px}.route-channel{padding:2px 7px}.router-telemetry{border-top:0;height:76px;top:128px;left:16px;right:98px}.router-telemetry__body{grid-template-columns:48px minmax(60px,1fr)}.router-readout{display:none}.router-service-strip{height:42px;padding:5px 6px;display:flex;inset:212px 16px auto}.router-service-details,.router-service-strip>.router-revision{display:none}.geometry-selector{flex:1 1 0;width:auto;max-width:none}.geometry-selector__buttons{grid-template-columns:repeat(4,1fr);display:grid}.geometry-selector button{width:auto}.route-bank__channels{grid-template-columns:repeat(3,1fr);display:grid}.route-channel{width:auto}.unfurl-switch{height:76px;top:128px;right:16px}.unfurl-switch__track{border:1px solid color-mix(in srgb, var(--foreground) 32%, transparent);background:color-mix(in srgb, var(--surface) 88%, black);width:48px;height:32px;box-shadow:inset 0 3px 7px #0000009e, 0 1px 0 color-mix(in srgb, var(--foreground) 10%, transparent);perspective:none;border-radius:2px;place-items:center;padding:0;display:grid;position:relative}.unfurl-switch__track:before,.unfurl-switch__track:after{display:none}.unfurl-switch__track i,.unfurl-switch[aria-pressed=true] .unfurl-switch__track i{border:1px solid color-mix(in srgb, var(--foreground) 48%, transparent);width:40px;height:24px;color:var(--foreground);background:color-mix(in srgb, var(--foreground) 11%, var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--foreground) 18%, transparent), 0 3px 4px #00000094;border-radius:1px;transition:color .12s,background .12s,box-shadow .12s;position:relative;inset:auto;transform:none}.unfurl-switch__track i:before{content:"⏻";width:auto;height:auto;color:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;font-family:system-ui,sans-serif;font-size:13px;font-style:normal;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.unfurl-switch__track i:after{display:none}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i{color:#000;background:#ffffffd1;border-color:#ffffffe0;transform:none;box-shadow:0 0 4px #ffffffc7,0 0 12px #ffffff6b,0 0 22px #ffffff29,inset 0 0 7px #ffffffe0}.unfurl-switch[aria-pressed=true] .unfurl-switch__track i:before{z-index:1;text-shadow:0 1px #ffffff47;background:0 0}.theme-menu__trigger{grid-template-columns:27px 50px 27px;width:120px;height:26px;padding:0 4px}.theme-menu__label,.theme-menu__chevron{display:none}.control-rack{grid-template-rows:126px minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:6px;padding:34px 16px 12px}.rack-module{padding-inline:6px}.rack-inputs{grid-template-columns:repeat(4,1fr);gap:3px}.rack-input{height:auto}.rack-input:nth-child(n+4){display:grid}.rack-knobs{grid-template-columns:repeat(5,1fr);gap:4px}.knob{width:44px;height:44px}.knob__ticks>i{transform-origin:50% 22px}.knob__cap{width:30px;height:30px}[data-patch-source]:after,[data-patch-input]:after,.cable-node:after{content:"";border-radius:50%;position:absolute;inset:-8px}}
