@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#10120f;--panel:#171a16;--surface:#20251e;--border:#30362c;--muted:#8b9584;--text:#e8ece2;--acid:#c3f66d;--source:#c3f66d;--filter:#e6c684;--delay:#bcabef;--reverb:#99cbd2;--distortion:#e79e81;--pan:#b5c9ef;--output:#ccd4c3;font-family:'DM Sans','Yu Gothic',sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);overflow:hidden}button,input,select{font:inherit}button{border:1px solid var(--border);color:var(--text);background:transparent;cursor:pointer;padding:9px 13px;border-radius:5px;transition:background .18s,border-color .18s}button:hover{background:#2e3627;border-color:#6c785c}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--acid);outline-offset:3px}button:disabled{opacity:.4;cursor:wait}button.active{color:var(--acid)}input,select{color:var(--text);background:#11150e;border:1px solid var(--border);border-radius:4px;padding:7px;min-width:0}input[type=range]{padding:0;accent-color:var(--acid);height:18px;cursor:pointer;background:transparent}input[type=checkbox]{accent-color:var(--acid)}.topbar{height:80px;padding:0 27px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--border);background:#141712}.wordmark{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--text);font-family:'Space Grotesk',sans-serif;font-size:25px;letter-spacing:-1.5px;font-weight:600;min-width:215px}.wordmark small{display:block;letter-spacing:1.9px;font-size:10px;color:var(--muted);margin-top:3px}.brand-icon{background:var(--acid);width:34px;height:35px;display:grid;place-items:center;color:#17200f;font-size:34px;font-weight:700;position:relative;overflow:hidden;line-height:1}.brand-icon span{font-size:29px;position:absolute;right:-4px;bottom:-8px}.project-name{padding-left:30px;border-left:1px solid var(--border);display:flex;flex-direction:column;gap:5px;flex:1}.project-name input{background:none;border:none;padding:0;font-size:15px;font-weight:500;max-width:350px}.project-name>span{font-size:12px;color:var(--muted)}.top-actions{display:flex;gap:10px;align-items:center}.top-actions>button{height:36px}.primary{background:var(--acid);border-color:var(--acid);color:#17230e;font-weight:600}.primary:hover{background:#d5ff92;border-color:#d5ff92}.icon-btn{width:34px;padding:6px;display:inline-grid;place-items:center}.transport{height:79px;display:flex;gap:26px;align-items:center;padding:0 28px;border-bottom:1px solid var(--border)}.transport-left{display:flex;align-items:center;gap:13px}.play-btn{background:var(--acid);color:#17220e;border-color:var(--acid);width:40px;height:40px;font-size:16px}.play-btn.playing{background:#a2c76b}.transport-left>.icon-btn{border:0;color:var(--muted)}.time-display{min-width:182px;padding-left:10px}.time-display strong{font-family:'Space Grotesk',monospace;font-size:25px;font-weight:400;letter-spacing:1px}.time-display b{color:#5f6957;font-weight:400}.time-display small{display:block;font-size:10px;letter-spacing:1.7px;color:var(--muted);margin-top:3px}.tempo{border-left:1px solid var(--border);padding-left:26px;display:flex;align-items:center;gap:7px}.tempo label{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.tempo input{width:54px;background:none;border:0;font-family:'Space Grotesk';font-size:21px;appearance:textfield;-moz-appearance:textfield;padding:4px}.tempo input::-webkit-inner-spin-button{appearance:none}.tempo>span{font-size:11px;color:var(--muted)}.loop-badge{color:var(--acid);font-size:19px;display:flex;gap:10px;align-items:center}.loop-badge span{font-size:10px;letter-spacing:1.3px}.master-control{margin-left:auto;display:flex;gap:12px;align-items:center}.master-control label{font-size:10px;letter-spacing:1.7px;color:var(--muted)}.master-control input{width:95px}.master-control output{font-size:12px;font-family:monospace;color:var(--muted);width:47px}.mini-meter{width:40px;display:flex;flex-direction:column;gap:4px;background:repeating-linear-gradient(90deg,#353d2e 0 3px,transparent 3px 5px);height:13px}.mini-meter i{display:block;background:var(--acid);height:4px;width:0;max-width:100%}.studio{display:grid;grid-template-columns:226px minmax(0,1fr) 267px;height:calc(100dvh - 191px);min-height:450px}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:22px 18px 20px}.panel-heading h2,.arrangement h2{font-size:10px;letter-spacing:1.9px;font-weight:500;margin:0}.panel-heading>span{color:var(--muted);font-family:monospace;font-size:11px}.library{border-right:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;overflow:auto}.record-button{margin:0 15px 8px;text-align:left;height:42px;display:flex;gap:9px;align-items:center;background:#25271f;border-color:#424936;font-size:13px}.record-dot{width:9px;height:9px;border-radius:50%;background:#ee9a89;display:inline-block}.recording .record-dot{animation:pulse 1s infinite}.recording{border-color:#ee9a89;color:#ee9a89}.import-button{margin:0 15px 23px;text-align:left;height:52px;border-style:dashed;font-size:13px;color:#c6cebd}.import-button small{font-size:10px;display:block;color:var(--muted);padding-left:18px;letter-spacing:1px;margin-top:3px}.library-label{font-size:10px;letter-spacing:1.5px;color:var(--muted);padding:0 19px 14px;display:flex;justify-content:space-between}.sound-card{margin:0 10px 4px;padding:12px 10px;cursor:pointer;border:1px solid transparent;border-radius:5px;display:grid;grid-template-columns:30px 1fr 15px;align-items:center;gap:9px;min-height:63px}.sound-card:hover{background:#20261c}.sound-card.selected{background:#272f21;border-color:#414e34}.sound-card .sound-icon{font-size:23px;color:var(--source);font-family:monospace}.sound-card strong{display:block;font-size:13px;font-weight:500}.sound-card small{display:block;font-size:10px;color:var(--muted);margin-top:5px;letter-spacing:.3px}.sound-card .sound-add{background:none;border:0;padding:0;color:var(--muted)}.library-bottom{margin-top:auto;padding:24px 16px 18px}.tiny-label{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.preset-card{display:flex;align-items:center;gap:9px;text-align:left;margin-top:12px;padding:10px 0;border:0;width:100%;font-size:12px}.preset-art{width:35px;height:38px;display:grid;place-items:center;background:linear-gradient(135deg,#3f4230,#353326,#4b5138);font-size:35px;color:#c9d4ad;border-radius:3px}.preset-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.preset-card>span:last-child{margin-left:auto;color:var(--muted)}.text-button{padding:10px 0;margin-top:10px;border:none;font-size:12px;color:#cbd4be}.storage-note{font-size:11px;color:#77836d;line-height:1.7;margin:6px 0 0}.workspace{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#11150f}.workspace-toolbar{height:56px;flex-shrink:0;border-bottom:1px solid var(--border);display:flex;gap:10px;align-items:center;padding:0 20px}.view-tabs{display:flex;height:100%;gap:23px}.view-tabs button{border:none;border-bottom:2px solid transparent;border-radius:0;padding:0 2px;color:var(--muted);font-size:13px}.view-tabs button.active{border-bottom-color:var(--acid);color:var(--text)}.patch-hint{font-size:11px;color:#75816b;margin-left:14px}.small-button{font-size:12px;padding:7px 10px;margin-left:auto}.workspace-toolbar>.icon-btn{font-size:21px;border:0;color:var(--muted)}.patch-view{flex:1;min-height:260px;position:relative;background-image:radial-gradient(#36402e 0.7px,transparent .7px);background-size:19px 19px;overflow:hidden}.canvas-annotation{position:absolute;z-index:2;left:23px;top:22px;display:flex;flex-direction:column;gap:7px;pointer-events:none}.canvas-annotation>span:last-child{font-size:10px;color:#59644f}.graph-viewport{position:absolute;inset:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#343c2e transparent}.graph{position:relative;min-width:960px;min-height:460px;width:100%;height:100%;transform-origin:0 0}.graph svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.wire{fill:none;stroke-width:1.5;opacity:.55;cursor:pointer;transition:opacity .2s}.wire:hover{stroke-width:4;opacity:1}.wire-hit{fill:none;stroke:transparent;stroke-width:16;cursor:pointer}.node{position:absolute;width:183px;background:#20251e;border:1px solid #414b36;border-radius:6px;box-shadow:0 8px 24px #0003;color:var(--node-color);user-select:none}.node.selected{border-color:var(--node-color);box-shadow:0 0 0 1px color-mix(in srgb,var(--node-color) 15%,transparent),0 8px 25px #0005}.node.bypassed{opacity:.45}.node-header{height:34px;display:flex;align-items:center;padding:0 11px;gap:8px;border-bottom:1px solid #ffffff0d;cursor:grab;touch-action:none}.node-header:active{cursor:grabbing}.node-type-icon{font-size:17px;line-height:1}.node-title{font-size:11px;font-weight:500;letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:125px}.node-index{font-size:9px;color:#849077;margin-left:auto}.node-body{padding:10px 11px 9px}.node canvas{width:100%;height:44px;display:block;opacity:.9}.node-values{display:flex;justify-content:space-between;font-family:'Space Grotesk',monospace;font-size:10px;color:#aab59e;margin-top:9px}.node-body>strong{display:block;font-family:'Space Grotesk',monospace;font-weight:400;font-size:27px;letter-spacing:-1px;margin:2px 0;color:var(--node-color)}.node-body>strong small{font-size:11px;letter-spacing:0;margin-left:5px;color:#aab59e}.node-caption{font-size:10px;color:#929e85;letter-spacing:.3px}.node-footer{border-top:1px solid #ffffff08;padding:6px 11px;font-size:9px;color:#76816c;display:flex;justify-content:space-between;letter-spacing:.5px}.node-footer i{width:4px;height:4px;border-radius:50%;background:currentColor;margin:auto 0}.port{position:absolute;top:56%;width:12px;height:12px;border:2px solid var(--node-color);border-radius:50%;padding:0;background:#161b11;z-index:2}.port.in{left:-7px}.port.out{right:-7px;background:var(--node-color)}.port:hover,.port.pending{box-shadow:0 0 0 5px #c3f66d24}.canvas-footer{position:absolute;bottom:13px;left:23px;right:23px;display:flex;justify-content:space-between;pointer-events:none;color:#718065;font-size:9px;letter-spacing:1px}.canvas-footer b{margin:0 7px;color:#4b5642}.arrangement{height:182px;flex-shrink:0;border-top:1px solid var(--border);background:#171b14}.arrangement-heading{height:44px;display:flex;align-items:center;padding:0 20px;gap:14px;border-bottom:1px solid #2a3124}.arrangement-heading>span{font-size:10px;color:#728065}.arrangement-heading button{font-size:9px;margin-left:auto;border:none;letter-spacing:1px;padding:6px}.timeline{padding:0 20px;position:relative;overflow:auto;max-height:135px}.timeline-ruler,.timeline-row{display:grid;grid-template-columns:114px 1fr;align-items:center}.timeline-ruler{height:24px}.timeline-ruler>span{font-size:9px;color:var(--muted);letter-spacing:1px}.bar-numbers{display:flex;justify-content:space-between;font-family:monospace;font-size:9px;color:#758268}.bar-numbers span{width:12.5%}.timeline-row{height:31px;gap:0}.track-label{font-size:10px;color:#c2ceb7;display:flex;align-items:center;gap:7px;overflow:hidden;white-space:nowrap}.track-label>i{width:4px;height:4px;background:var(--track-color);border-radius:50%}.track-label button{border:0;padding:0 2px;margin-left:auto;margin-right:10px;font-size:10px;color:var(--track-color)}.track-lane{height:25px;position:relative;background:repeating-linear-gradient(90deg,#35422b40 0 1px,transparent 1px 12.5%);border-bottom:1px solid #343d291f}.clip{position:absolute;height:23px;background:color-mix(in srgb,var(--track-color) 12%,#171b14);border:1px solid color-mix(in srgb,var(--track-color) 45%,#171b14);border-radius:3px;cursor:grab;overflow:hidden;touch-action:none}.clip canvas{width:100%;height:100%;opacity:.45}.clip span{position:absolute;left:6px;top:5px;font-size:9px;color:var(--track-color);white-space:nowrap}.playhead{position:absolute;top:0;bottom:0;width:1px;background:var(--acid);z-index:1;pointer-events:none;opacity:.8}.inspector{border-left:1px solid var(--border);background:var(--panel);overflow:auto;display:flex;flex-direction:column}.inspector .panel-heading{border-bottom:1px solid #252d20}.inspector-title{padding:20px 18px 16px;border-bottom:1px solid #2b3324}.inspector-title .node-type{font-size:10px;letter-spacing:1.8px;color:var(--node-color);display:flex;gap:9px;align-items:center}.inspector-title h3{font-size:19px;font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-.5px;margin:10px 0 8px}.inspector-title p{font-size:11px;line-height:1.65;color:var(--muted);margin:0}.inspector-title .badge{display:inline-block;font-size:9px;padding:4px 6px;border:1px solid #3b4731;color:#a7b996;margin-top:10px;border-radius:3px;letter-spacing:1px}.inspector-section{padding:17px 18px;border-bottom:1px solid #2b3324}.section-label{font-size:10px;letter-spacing:1.7px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.control{display:block;margin-bottom:17px}.control:last-child{margin-bottom:0}.control-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;color:#c5cebd;gap:8px}.control output{font-family:'Space Grotesk';font-size:12px;color:var(--node-color,var(--acid))}.control input[type=range]{width:100%;display:block;height:14px;accent-color:var(--node-color,var(--acid))}.control select{width:100%;font-size:12px}.range-labels{display:flex;justify-content:space-between;font-size:9px;color:#69765e;margin-top:5px}.toggle-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#c5cebd;margin-bottom:12px}.toggle-row:last-child{margin-bottom:0}.toggle-row button{font-size:10px;padding:4px 9px}.toggle-row button.active{border-color:#627a47;background:#303f23}.muted-info{font-size:11px;color:var(--muted);line-height:1.7}.danger-link{color:#dba38f;font-size:11px;border:0;padding:0}.spectrum-panel{padding:21px 18px 18px;margin-top:auto;min-height:127px}.spectrum-panel .tiny-label{display:flex;justify-content:space-between}.spectrum-panel canvas{width:100%;height:62px;display:block;margin-top:12px}.spectrum-scale{display:flex;justify-content:space-between;font-size:9px;color:#5e6c53}.statusbar{height:32px;background:#191d16;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 20px;color:#7f8d72;font-size:9px;letter-spacing:1.1px}.statusbar>span{display:flex;align-items:center;gap:7px}.statusbar>span:nth-child(2){letter-spacing:.5px}.statusbar b{margin:0 4px;font-weight:400;color:#4d5b43}.status-led{width:4px;height:4px;background:#7d9269;border-radius:50%}.perform-view{flex:1;min-height:260px;padding:24px 40px;background:#12180e;position:relative}.perform-head{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.xy-pad{height:calc(100% - 55px);min-height:205px;position:relative;touch-action:none;cursor:crosshair;overflow:hidden;background:linear-gradient(#c3f66d06 1px,transparent 1px),linear-gradient(90deg,#c3f66d06 1px,transparent 1px);background-size:10% 10%;border:1px solid #35422a;margin-top:12px}.xy-pad canvas{position:absolute;width:100%;height:100%;opacity:.3;pointer-events:none}.xy-label{position:absolute;color:#82966f;font-size:9px;letter-spacing:2px}.xy-label.top{top:13px;left:43%}.xy-label.bottom{bottom:13px;left:47%}.xy-label.left{left:10px;top:49%;writing-mode:vertical-rl}.xy-label.right{right:10px;top:47%;writing-mode:vertical-rl}#xyDot{position:absolute;width:21px;height:21px;border:1px solid var(--acid);border-radius:50%;left:65%;top:60%;transform:translate(-50%,-50%);background:#c3f66d33;box-shadow:0 0 60px 35px #c3f66d10;pointer-events:none}#xyDot:after{content:'';position:absolute;width:3px;height:3px;left:8px;top:8px;background:var(--acid);border-radius:50%}.perform-readout{display:flex;gap:28px;justify-content:center;font-size:9px;color:var(--muted);margin-top:13px;letter-spacing:1px}.perform-readout b{color:var(--acid);font-weight:400;margin-left:8px}.mobile-tabs{display:none}dialog{background:#1c2218;color:var(--text);border:1px solid #526144;border-radius:10px;width:min(560px,calc(100% - 32px));max-height:85dvh;padding:30px;box-shadow:0 30px 160px #000b}dialog::backdrop{background:#050904b3;backdrop-filter:blur(7px)}.modal-close{position:absolute;top:10px;right:10px;border:0;font-size:23px;color:var(--muted);padding:0 8px}dialog h2{font-family:'Space Grotesk';font-weight:500;margin:0 0 9px;font-size:26px;letter-spacing:-.5px}dialog h3{font-size:14px;font-weight:500;margin:24px 0 10px}dialog p,dialog li{font-size:13px;color:#a4b597;line-height:1.8}dialog p{margin:9px 0 20px}dialog ol{padding-left:20px}dialog a{color:var(--acid)}dialog .dialog-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}dialog .dialog-actions button{flex:1;font-size:13px;min-width:160px}dialog .form-row{display:flex;gap:12px;margin:18px 0}dialog label{font-size:12px;color:#a4b597;display:block;flex:1}dialog select,dialog input{display:block;width:100%;margin-top:7px}dialog .node-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}dialog .node-choice{text-align:left;padding:15px;color:var(--node-color)}dialog .node-choice small{display:block;color:var(--muted);font-size:10px;margin-top:7px}dialog .fineprint{font-size:11px;border-top:1px solid #3a452f;margin-top:20px;padding-top:15px}#toast{position:fixed;bottom:51px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;background:#d2f7a1;color:#1b2712;border:1px solid #d4f7ac;padding:12px 20px;border-radius:5px;box-shadow:0 8px 40px #0008;z-index:20;font-size:13px;max-width:min(90vw,600px);text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@keyframes pulse{50%{opacity:.25}}@media(min-width:1550px){.graph{min-width:1040px}.studio{grid-template-columns:244px minmax(0,1fr) 290px}.node{width:200px}}@media(max-width:1250px){.studio{grid-template-columns:200px minmax(0,1fr) 235px}.topbar{padding:0 20px}.wordmark{min-width:175px}.patch-hint{display:none}.tempo{padding-left:16px}.transport{gap:17px}.master-control label{display:none}.time-display{min-width:165px}.inspector-section{padding:16px}.node{width:174px}.graph{min-width:900px}.timeline-row,.timeline-ruler{grid-template-columns:94px 1fr}.arrangement-heading>span{display:none}.sound-card strong{font-size:12px}.canvas-footer>span:last-child{display:none}}@media(max-width:1000px) and (min-width:761px){.studio{grid-template-columns:174px minmax(0,1fr) 220px}.transport{gap:12px}.master-control input{width:70px}.loop-badge{display:none}.topbar{gap:16px}.project-name{padding-left:16px}.wordmark{min-width:172px}.library-bottom{padding:14px 12px}.record-button,.import-button{margin-left:10px;margin-right:10px;font-size:12px}}@media(max-width:760px){body{overflow:auto}.topbar{height:67px;padding:0 15px;gap:12px}.wordmark{font-size:21px;min-width:unset;gap:8px}.brand-icon{width:28px;height:30px;font-size:29px}.wordmark small{font-size:8px;letter-spacing:1px}.project-name{display:none}.top-actions{margin-left:auto;gap:7px}.top-actions>button{font-size:12px;padding:8px 10px}.top-actions>#helpBtn{display:none}.top-actions>#exportBtn span{font-size:0}.top-actions>#exportBtn span:after{content:'Export';font-size:12px}.transport{height:73px;padding:0 15px;gap:9px}.transport-left{gap:6px}.transport-left>.icon-btn{width:28px}.time-display{min-width:115px;padding-left:2px}.time-display strong{font-size:19px}.time-display small{font-size:8px;letter-spacing:1px}.play-btn{width:35px;height:36px;padding:7px}.tempo{padding-left:12px;gap:3px;margin-left:auto}.tempo label{display:none}.tempo input{font-size:19px;width:42px}.tempo>span{font-size:9px}.loop-badge,.master-control{display:none}.mobile-tabs{display:flex;height:43px;border-bottom:1px solid var(--border);background:#181d14;padding:0 15px;gap:28px}.mobile-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:0 10px;color:var(--muted);font-size:13px}.mobile-tabs button.active{color:var(--acid);border-bottom-color:var(--acid)}.studio{display:block;height:calc(100dvh - 215px);min-height:490px}.studio .library,.studio .inspector{display:none;height:100%;border:0}.studio[data-mobile=library] .library{display:flex}.studio[data-mobile=library] .workspace,.studio[data-mobile=inspector] .workspace{display:none}.studio[data-mobile=inspector] .inspector{display:flex}.workspace{height:100%}.workspace-toolbar{height:49px;padding:0 17px}.patch-view{min-height:280px}.graph{min-width:880px;min-height:430px}.canvas-annotation{top:18px;left:18px}.arrangement{height:170px}.arrangement-heading{padding:0 15px}.timeline{padding:0 15px}.statusbar{padding:0 15px;font-size:8px}.statusbar>span:last-child{display:none}.statusbar>span:nth-child(2){max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library .record-button,.library .import-button{font-size:14px;height:50px}.sound-card strong{font-size:14px}.sound-card small{font-size:12px}.sound-card{padding:13px}.library-bottom{margin-top:15px}.inspector-title h3{font-size:24px}.inspector-title p,.control-head,.toggle-row{font-size:14px}.control input[type=range]{height:24px}.inspector-section{padding:20px}.perform-view{padding:18px}.perform-head>span:last-child{font-size:9px}.perform-head{gap:12px}.perform-readout{gap:18px}.canvas-footer{left:18px}.node{width:174px}.spectrum-panel{min-height:140px}dialog{padding:26px 22px}.topbar .icon-btn{width:28px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.ui-icon{display:inline-block;vertical-align:middle;flex:none;pointer-events:none}.play-btn .ui-icon{width:20px;height:20px}.icon-btn .ui-icon{width:17px;height:17px}

/* Direct performance effects remain playable on touch and keyboard. */
.performance-field{position:relative;min-height:172px;aspect-ratio:1.3;overflow:hidden;border:1px solid #706987;border-radius:7px;background:radial-gradient(ellipse at 50% 55%,#c1b8ff12,transparent 70%),linear-gradient(#c1b8ff10 1px,transparent 1px),linear-gradient(90deg,#c1b8ff10 1px,transparent 1px);background-size:auto,20% 20%,20% 20%;touch-action:none;cursor:crosshair;color:#d9d2ff;isolation:isolate;user-select:none}.performance-field.compact{min-height:100px;aspect-ratio:1.45}.performance-fx-dot{position:absolute;width:19px;height:19px;transform:translate(-50%,-50%);border:1px solid currentColor;border-radius:50%;background:#c1b8ff66;box-shadow:0 0 22px #c1b8ff55;pointer-events:none}.performance-fx-name{position:absolute;top:10px;left:10px;font-size:11px;pointer-events:none}.performance-fx-x{position:absolute;bottom:7px;left:9px;font-size:9px;pointer-events:none}.performance-fx-y{position:absolute;right:7px;top:50%;font-size:9px;writing-mode:vertical-rl;transform:translateY(-30%);pointer-events:none}.performance-field.compact .performance-fx-name{font-size:10px}.performance-field.compact .performance-fx-x,.performance-field.compact .performance-fx-y{font-size:8px}.node:has(.performance-field){width:210px}.node-choice[data-add="performance"]{grid-column:1/-1;border-color:#706987;background:#c1b8ff0a}.node-choice[data-add="performance"] small{line-height:1.5}
@media(max-width:760px){.performance-field:not(.compact){min-height:220px}.node:has(.performance-field){width:220px}.node-choice{min-height:60px}}
.touch-fx-choices .node-choice[data-fx-mode]{grid-column:auto;border-color:color-mix(in srgb,var(--node-color) 45%,transparent);min-width:0;min-height:76px}.touch-fx-choices .node-choice:active{background:#c1b8ff24}.touch-fx-choices+.node-choices{margin-top:10px}


/* Studio is the dark workbench; Jam supplies the moving material. */
#studioShell{--bg:#030405;--panel:#080a09;--surface:#0d100e;--border:#242923;--muted:#7c8578;--text:#edf0e8;background:#030405;color:var(--text);color-scheme:dark}
#studioShell .topbar,#studioShell .transport,#studioShell .mobile-tabs,#studioShell .workspace-toolbar,#studioShell .statusbar{background:#050706}
#studioShell .studio,#studioShell .workspace,#studioShell .library,#studioShell .inspector,#studioShell .patch-view,#studioShell .graph-viewport,#studioShell .graph{background:#030405}
#studioShell .node{background:#0a0d0b;border-color:#2b3029;box-shadow:none}
#studioShell .node.selected{background:#0d110e}
#studioShell input,#studioShell select{background:#050706}
#studioShell .arrangement{background:#060806}
