@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--spacing:.25rem;--tracking-wider:.05em;--tracking-widest:.1em;--leading-relaxed:1.625;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#8a8579;--color-panel-border:#2a2a2c;--color-text:#e2d5b8;--color-text-dim:#a89572;--color-text-dimmer:#6b6252;--color-accent:#e2637a;--color-accent2:#c9536a;--color-track:#33261a}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.block{display:block}.flex{display:flex}.hidden{display:none}.h-\[1\.5px\]{height:1.5px}.h-\[17px\]{height:17px}.h-\[20px\]{height:20px}.h-\[22px\]{height:22px}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-\[17px\]{width:17px}.w-\[176px\]{width:176px}.w-\[996px\]{width:996px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[14px\]{gap:14px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-panel-border{border-color:var(--color-panel-border)}.bg-bg{background-color:var(--color-bg)}.bg-panel-border{background-color:var(--color-panel-border)}.p-8{padding:calc(var(--spacing) * 8)}.pt-3\.5{padding-top:calc(var(--spacing) * 3.5)}.text-center{text-align:center}.text-\[7px\]{font-size:7px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.select-none{-webkit-user-select:none;user-select:none}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-mono);margin:0;overflow-x:hidden}*{box-sizing:border-box}.app-shell{padding:16px}.portrait-hint{display:none}@media (pointer:coarse) and (orientation:landscape){.app-shell{padding:0}}@media (orientation:portrait) and (pointer:coarse){.app-shell{display:none}.portrait-hint{z-index:10;display:flex;position:fixed;inset:0}}.rack-outer{background-blend-mode:overlay, normal;background-color:#1c1c1e;background-image:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 2px),linear-gradient(#232325,#171718);border-radius:6px;display:flex;box-shadow:0 30px 50px -15px #0006,0 10px 20px -8px #0000004d,inset 0 1px #ffffff0d}.rack-rail{background:#1c1c1e;border-radius:3px;flex-direction:column;flex-shrink:0;justify-content:space-evenly;align-items:center;width:30px;display:flex}.rack-rail-hole{background:var(--color-bg);border-radius:4px;width:17px;height:10px;box-shadow:inset 0 1px 3px #00000059,inset 0 -1px 1px #ffffff80,0 1px #ffffff14}@media (pointer:coarse) and (orientation:landscape){.rack-rail-hole{background:radial-gradient(circle at 50% 38%,#050505 0%,#000 70%);box-shadow:inset 0 1px 2px #000000e6,inset 0 -1px 1px #ffffff0a,0 1px #ffffff14}}.rack-content{flex-direction:column;flex:1;gap:14px;padding:16px 18px;display:flex;position:relative}.screw{background:radial-gradient(circle at 35% 30%,#6a6a6d,#232325 75%);border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:inset 0 0 1px #0009,0 1px 1px #ffffff26}.screw:after{content:"";background:#111;width:5px;height:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(35deg)}.screw.tl{top:8px;left:8px}.screw.tr{top:8px;right:8px}.screw.bl{bottom:8px;left:8px}.screw.br{bottom:8px;right:8px}.rack-header{background-blend-mode:overlay, normal;background-color:#1c1c1e;background-image:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 2px),linear-gradient(#232325,#171718);border-radius:4px;justify-content:space-between;align-items:center;padding:12px 18px;display:flex;box-shadow:inset 0 1px #ffffff0f,inset 0 -2px 4px #00000080}.rack-title{letter-spacing:.2em;color:var(--color-text);font-size:15px;font-weight:600}.transport-row{align-items:center;gap:22px;font-size:11px;display:flex}.playbtn{width:26px;height:26px;color:var(--color-accent);cursor:pointer;background:#171310;border:1px solid #3a332a;border-radius:3px;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 1px 2px #0009,0 0 6px #e2637a59}.bpm-readout{color:var(--color-accent);text-shadow:0 0 5px #e2637a99;background:#171310;border:1px solid #3a332a;border-radius:3px;align-items:baseline;gap:4px;padding:3px 8px;font-size:13px;display:flex}.bpm-readout input{width:40px;color:inherit;text-align:right;font:inherit;text-shadow:inherit;background:0 0;border:0;outline:none}.bpm-unit{color:var(--color-text-dim);text-shadow:none;font-size:9px}.transport-status{letter-spacing:.1em;color:var(--color-text-dim);align-items:center;gap:6px;font-size:9px;display:flex}.transport-status-dot{background:var(--color-track);border-radius:50%;width:6px;height:6px}.transport-status-dot.playing{background:var(--color-accent);box-shadow:0 0 6px 1px #e2637ab3}.vu-meter{flex-direction:column;align-items:center;gap:4px;display:flex}.vu-bezel{background:#171310;border-radius:4px;padding:3px;box-shadow:inset 0 1px 3px #000000b3,0 1px #ffffff14}.vu-svg{width:74px;height:46px;display:block}.vu-label{letter-spacing:.08em;color:var(--color-text-dim);font-size:8px}.module{border:1px solid #221d19;border-radius:4px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 5px #00000040}.module-head{background-blend-mode:overlay, normal;color:var(--color-text-dim);letter-spacing:.2em;background-color:#1c1c1e;background-image:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 2px),linear-gradient(#232325,#171718);border-bottom:1px solid #0006;justify-content:space-between;align-items:center;padding:5px 10px;font-size:9px;display:flex}.module-head .led{background:var(--color-accent);border-radius:50%;width:5px;height:5px;box-shadow:0 0 4px 1px #e2637ab3}.module-body{background-blend-mode:overlay, normal;background-color:#1c1c1e;background-image:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 2px),linear-gradient(160deg,#232325,#171718);padding:14px}.module-body.seq{padding:6px 14px}.knob-label{letter-spacing:.08em;color:var(--color-text-dim);font-size:8px}.knob-value{color:var(--color-text-dimmer);font-size:8px}.knob-outer{position:relative}.knob-tick-ring{background:repeating-conic-gradient(var(--color-text-dimmer) 0deg 1.5deg, transparent 1.5deg 30deg);opacity:.9;z-index:0;pointer-events:none;border-radius:50%;width:calc(100% + 14px);height:calc(100% + 14px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.knob-skirt{z-index:1;cursor:ns-resize;touch-action:none;background-image:repeating-conic-gradient(#ffffff1f 0deg 5deg,#0000 5deg 10deg),radial-gradient(circle at 32% 26%,#423e3a,#0e0c0a 78%);border-radius:50%;width:100%;height:100%;padding:9%;position:relative;box-shadow:0 2px 3px #00000080,0 1px #ffffff40,inset 0 1px 1px #ffffff26}.knob-skirt.accent2{background-image:repeating-conic-gradient(#ffffff1f 0deg 5deg,#0000 5deg 10deg),radial-gradient(circle at 32% 26%,#4a3a28,#150e07 78%)}.knob-cap{background-blend-mode:overlay, screen, normal;background-color:#9fa0a3;background-image:repeating-conic-gradient(#ffffff73 0deg 45deg,#00000029 45deg 90deg),radial-gradient(circle at 32% 26%,#fffffff2,#fff0 48%),radial-gradient(circle at 50% 55%,#cfd0d2 0%,#97989b 70%,#77787b 100%);border-radius:50%;width:100%;height:100%;position:relative;box-shadow:inset 0 1px 2px #fff9,inset 0 -2px 3px #0000004d}.knob-pointer{transform-origin:bottom;z-index:2;background:#0c0a08;border-radius:1.5px;width:3px;height:36%;position:absolute;top:14%;left:50%;box-shadow:0 0 0 1px #ffffffd9}.knob-pointer.dragging{background:var(--color-accent);box-shadow:0 0 4px 1px #e2637ad9,0 0 0 1px #0006}.knob-outer[data-accent=accent2] .knob-pointer{background:#3a2410}.knob-outer[data-accent=accent2] .knob-pointer.dragging{background:var(--color-accent2);box-shadow:0 0 4px 1px #c9536ad9,0 0 0 1px #0006}.pushbtn{color:#8a8478;cursor:pointer;background:linear-gradient(#fdf9ee 0%,#ecdfc4 100%);border:1px solid #bcb6a2;border-radius:3px;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 2px #32323659,inset 0 1px #ffffffe6}.pushbtn.active{color:var(--color-accent);background:linear-gradient(#e7d9ba 0%,#f9f2e0 100%);border-color:#a68f65;transform:translateY(1px);box-shadow:inset 0 2px 3px #5a442466,inset 0 -1px #fff9}.pushbtn.tiny.active{color:#4a4438}.scope-bezel{background:#0a0a0a;border-radius:4px;padding:4px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #000c,0 1px #ffffff0f}.scope-bezel:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000004d 0 1px,#0000 1px 2px);position:absolute;inset:4px}.step-unit{flex-direction:column;align-items:center;gap:6px;display:flex}.step-led{background:linear-gradient(#3a3a3d,#2a2a2d);border:1px solid #8a8680;border-radius:3px;width:22px;height:18px;box-shadow:inset 0 1px 2px #00000080}.step-unit.on .step-led{background:linear-gradient(180deg, var(--color-accent), #8a3a4a);border-color:#8a4a56;box-shadow:0 0 5px 1px #e2637ab3,inset 0 1px 1px #ffffff4d}.step-unit.current .knob-skirt{box-shadow:0 0 0 2px #c9536ad9,0 2px 3px #00000080}.step-note{letter-spacing:.02em;color:var(--color-text-dimmer);font-size:6px}.step-unit.on .step-note{color:var(--color-text-dim)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
