/* Original U4 etched face with a retro workstation chassis. */
.recursion-workstation {
 --text:#ece6ed; --muted:#b8afc0; --acid:#d7b8f1; --violet:#ec83ce;
 --raised:inset 1px 1px #b4a6c080,inset -1px -1px #07060a,0 1px 0 #0009;
 --recessed:inset 1px 1px #050408,inset -1px -1px #b4a6c044;
 --serif:Georgia,'Times New Roman',serif;
 background:repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 4px),#18161e;
}
.recursion-workstation:before { inset:5px; border-radius:0; border-color:#8b7e985e; box-shadow:inset 1px 1px #c1aec126,inset -1px -1px #08070a; }
.recursion-workstation header {
 min-height:79px; padding:13px 25px; gap:20px; border:1px solid #a58fb34d;
 background:linear-gradient(90deg,#57346d,#302338 68%,#26212d); box-shadow:var(--raised);
}
.recursion-workstation .identity { font:bold 23px 'Courier New',monospace; letter-spacing:3px; color:#f0daff; text-shadow:2px 2px #21102e; }
.recursion-workstation .identity small { font:10px 'Courier New',monospace; letter-spacing:1.4px; color:#c6b3d0; text-shadow:none; }
.recursion-workstation .wordmark { border-right-color:#e0c3ee3c; }
.recursion-workstation main { padding-top:17px; }
.recursion-workstation .stage { position:sticky; padding-left:70px; }
.recursion-workstation .monitor { border:2px solid #9b74aa; border-radius:1px; margin:4px 4px 0; box-shadow:0 0 0 3px #25172e,0 0 0 5px #4c365d,0 0 0 7px #95829f66,0 6px 0 #09070f,0 12px 23px #0007; }
.recursion-workstation .monitor:after { inset:5px; border-radius:0; border-color:#c9acd527; }
.recursion-workstation .screen-top span,.recursion-workstation .screen-bottom span { color:#cfa9e3; background:#09060ee6; border:1px solid #554061; border-radius:0; font-family:'Courier New',monospace; font-weight:bold; }
.recursion-workstation aside { border:1px solid #918298; border-radius:2px; background:repeating-linear-gradient(90deg,#ffffff02 0 1px,transparent 1px 5px),#24212a; box-shadow:var(--raised),0 9px 20px #0005; }
.recursion-workstation aside:before { display:none; }
.recursion-workstation .rack-heading { background:linear-gradient(90deg,#4c315c,#302737); border-bottom:2px solid #09070c; box-shadow:inset 0 1px #b49bbe44; }
.recursion-workstation .rack-heading strong { font:bold 14px 'Courier New',monospace; letter-spacing:2px; color:#e8cefa; }
.recursion-workstation .rack-heading span { color:#b99dc6; }
.recursion-workstation .rack-tabs { padding:8px; gap:3px; border-bottom:1px solid #08060c; background:#17141c; }
.recursion-workstation button,.recursion-workstation select,.recursion-workstation .family-control select {
 border:1px solid #75697e; border-radius:1px; color:#dfd5e4; background:linear-gradient(#403949,#302a37);
 box-shadow:var(--raised); text-shadow:1px 1px #17101d;
}
.recursion-workstation button { font-family:'Courier New',monospace; font-weight:bold; }
.recursion-workstation button:hover:not(:disabled) { border-color:#b799cc; background:linear-gradient(#51405e,#3b3046); color:#fff0ff; }
.recursion-workstation button:active:not(:disabled) { box-shadow:var(--recessed); }
.recursion-workstation button.active,.recursion-workstation button.strong,.recursion-workstation .rack-tabs button[aria-selected=true],.recursion-workstation .preset-strip button.active {
 border-radius:1px; outline:none; border-color:#b494cf; color:#f1d8ff; background:linear-gradient(#59316f,#392443); box-shadow:var(--recessed),inset 0 -2px #d284bc88; text-shadow:1px 1px #16091f;
}
.recursion-workstation button:focus-visible,.recursion-workstation a:focus-visible,.recursion-workstation select:focus-visible { outline:2px solid #e5b3f2; outline-offset:3px; }
.recursion-workstation .rack-tabs button { font: bold 11px 'Courier New',monospace; text-transform:uppercase; letter-spacing:0; }
.recursion-workstation .section-title h2,.recursion-workstation .seed-heading h2 { font:bold 13px 'Courier New',monospace; letter-spacing:1px; text-transform:uppercase; color:#cfb0df; }
.recursion-workstation .block,.recursion-workstation .family-control { border-color:#7762804d; }
.recursion-workstation .rotary-control label { font-family:'Courier New',monospace; font-weight:bold; letter-spacing:0; color:#dcd0e4; }
.recursion-workstation .rotary-control output { border-radius:1px; color:#dfb1ef; background:#100c15; border:1px solid #6b547d; box-shadow:var(--recessed); }
.recursion-workstation .knob:before { background:radial-gradient(circle at 28% 17%,#69616f99,transparent 55%),linear-gradient(150deg,#3f3848,#1b1722 57%,#342a3b); box-shadow:inset 1px 1px #bfb2c64d,inset -1px -2px #09070c,0 4px 5px #0009; }
.recursion-workstation .knob-sigil { stroke:#d4b5e8; }
.recursion-workstation .knob-pointer { stroke:#efabde; }
.recursion-workstation .knob-pointer circle { fill:#eeb4da; }
.recursion-workstation .image-picker,.recursion-workstation .audio-pick { border-radius:0; border:1px solid #796582; background:#16111d; box-shadow:var(--recessed); }
.recursion-workstation .image-picker:hover { border-color:#ca9ede; }
.recursion-workstation .preset-strip { border:1px solid #726379; background:#211b28; padding:10px; box-shadow:var(--recessed); }
.recursion-workstation .preset-strip>span { font:bold 10px 'Courier New',monospace; text-transform:uppercase; letter-spacing:1px; }
.recursion-workstation .preset-strip button { padding:7px; font:bold 11px 'Courier New',monospace; }
.recursion-workstation .under button { background:none; border:0; box-shadow:none; color:#d7a0ea; }
.recursion-workstation .seed-shelf { margin-top:8px; padding:13px; border:1px solid #82718d; background:repeating-linear-gradient(0deg,#cab0d503 0 1px,transparent 1px 6px),#211c28; box-shadow:var(--raised); }
.recursion-workstation .seed-heading a { color:#cab1d8; }
.recursion-workstation .seed-grid button { border-radius:1px; border-color:#6f5b7d; background:#15101d; box-shadow:var(--recessed); }
.recursion-workstation .seed-grid button.active { border-color:#d69dec; background:#352140; }
.recursion-workstation .seed-grid span { font:10px 'Courier New',monospace; color:#bba2cc; }
.recursion-workstation .audio-meters i { height:6px; border-radius:0; background:repeating-linear-gradient(90deg,transparent 0 5px,#15101d 5px 6px),linear-gradient(90deg,#8255ba,#ce9eff 70%,#ef88c5); }
.recursion-workstation .download-plugin { border-radius:1px; border-color:#a891b9; background:linear-gradient(#5e486d,#33253d); color:#ecceff; box-shadow:var(--raised); font:bold 13px 'Courier New',monospace; }
.recursion-workstation #quickTour { border-radius:1px; border:2px solid #9275a5; background:#24192d; box-shadow:var(--raised),6px 6px #0007; }
.recursion-workstation #toast { border-radius:1px; border-color:#ae85bf; color:#edd7f6; background:#32203e; box-shadow:var(--raised),4px 4px #0006; }
.recursion-workstation .tour-top~h2 { font-family:'Courier New',monospace; font-weight:bold; }
.recursion-workstation .tour-target { outline-color:#e0a8ef; }
.recursion-workstation .capture-grid img,.recursion-workstation .capture-grid video { border:2px inset #70557e; }
.recursion-workstation .command-rail { position:absolute; left:0; top:3px; width:55px; display:flex; flex-direction:column; gap:10px; padding:6px 4px; border:1px solid #6e5b7d; background:#24202bd9; box-shadow:var(--raised); }
.recursion-workstation .command-key { display:flex; flex-direction:column; align-items:center; gap:5px; width:100%; min-height:52px; padding:5px 1px; font:9px 'Courier New',monospace; text-transform:uppercase; }
.recursion-workstation .command-symbol { display:block; color:#d7b1f0; font:24px/1 'Courier New',monospace; text-shadow:2px 2px #08030e; }
.recursion-workstation .command-key:nth-child(2) .command-symbol { color:#ec9bd0; }
.recursion-workstation .command-key:nth-child(3) .command-symbol { color:#b5ace8; }
.recursion-workstation .command-key:nth-child(4) .command-symbol { color:#d8c8a8; }
.recursion-workstation .command-key:last-child .command-symbol { color:#e6c9ef; }
.recursion-workstation .plugin-performance { background:repeating-linear-gradient(90deg,#ffffff02 0 1px,transparent 1px 5px),#2b2432; border:1px solid #8b739c; border-radius:1px; box-shadow:var(--raised); }
.recursion-workstation .plugin-signal { border-color:#9d7fa44d; }
.recursion-workstation .plugin-signal strong { font:bold 13px 'Courier New',monospace; color:#d6b4ec; }
.recursion-workstation .plugin-spectrum,.recursion-workstation .view-controls { border-radius:0; color:#c89fdf; }
.recursion-workstation .plugin-seeds { background:#231a2dfb; border:2px solid #9274a6; border-radius:1px; box-shadow:var(--raised),5px 5px #0008; }
.recursion-workstation .monitor:fullscreen { margin:0; border:0; box-shadow:none; }

.instrument-panel.recursion-workstation header { height:58px; min-height:58px; padding:8px 18px; gap:13px; }
.instrument-panel.recursion-workstation .identity { font-size:19px; letter-spacing:2px; }
.instrument-panel.recursion-workstation .identity small { font-size:8px; letter-spacing:1px; }
.instrument-panel.recursion-workstation main { height:calc(100vh - 242px); padding:12px 14px 0; gap:14px; }
.instrument-panel.recursion-workstation .stage { position:relative; padding:0 0 0 64px; }
.instrument-panel.recursion-workstation .monitor { min-height:0; margin:0 3px; }
.instrument-panel.recursion-workstation .command-rail { width:50px; top:0; gap:7px; }
.instrument-panel.recursion-workstation .command-key { min-height:51px; font-size:8px; }
.instrument-panel.recursion-workstation .rack-heading { padding:11px 14px; }
.instrument-panel.recursion-workstation .rack-heading strong { font-size:12px; }
.instrument-panel.recursion-workstation .rack-tabs button { font-size:10px; }
.instrument-panel.recursion-workstation .rotary-control label { font-size:10px; }
.instrument-panel.recursion-workstation #musicControls .rotary-control label { font-size:11px; }
.instrument-panel.recursion-workstation .transport button { font-size:9px; }
.instrument-panel.recursion-workstation .plugin-seeds { left:63px; }
.instrument-panel.recursion-workstation .view-controls { left:82px; }
.instrument-panel.recursion-workstation .plugin-preset { color:#ddc4ef; background:#17111f; border-radius:1px; }
.instrument-panel.recursion-workstation .follow-detail { margin:0; }

@media(max-width:950px) {
 .instrument-panel.recursion-workstation .identity { font-size:16px; }
 .instrument-panel.recursion-workstation .identity small { letter-spacing:0; font-size:7px; }
 .instrument-panel.recursion-workstation #musicControls .rotary-control label { font-size:9px; }
}
@media(max-width:760px) {
 .recursion-workstation header { min-height:78px; padding:14px 20px; gap:13px; }
 .recursion-workstation .identity { font-size:18px; letter-spacing:1px; }
 .recursion-workstation .identity small { font-size:8px; letter-spacing:0; }
 .recursion-workstation .stage { position:relative; padding-left:0; }
 .recursion-workstation .command-rail { position:static; width:100%; flex-direction:row; gap:6px; margin-bottom:16px; }
 .recursion-workstation .command-key { min-height:42px; flex:1; flex-direction:row; justify-content:center; gap:4px; font-size:9px; }
 .recursion-workstation .command-symbol { font-size:19px; }
 .recursion-workstation .seed-shelf { margin-bottom:20px; }
 .instrument-panel.recursion-workstation .command-rail { position:absolute; width:50px; flex-direction:column; margin:0; }
 .instrument-panel.recursion-workstation .command-key { flex-direction:column; gap:5px; min-height:51px; font-size:8px; }
 .instrument-panel.recursion-workstation .command-symbol { font-size:24px; }
}
@media(forced-colors:active) {
 .recursion-workstation button,.recursion-workstation aside,.recursion-workstation .command-rail { border:1px solid ButtonText; box-shadow:none; }
}

/* Decorations must never become a hit-test layer when a theme changes. */
.recursion-workstation::before,
.recursion-workstation aside::before,
.recursion-workstation .monitor::after,
.recursion-workstation .knob::before,
.recursion-workstation .knob::after,
.recursion-workstation .leadr-stomp button::before,
.recursion-workstation .leadr-stomp button::after { pointer-events:none; }
.recursion-workstation :is(button,a,select,label,.knob) { isolation:isolate; }
