/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-font-weight: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:ui-monospace, "SF Mono", "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, "Liberation Mono", monospace;--spacing:.25rem;--container-6xl:72rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-dim:#a58490}}@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 components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.max-w-6xl{max-width:var(--container-6xl)}.flex-1{flex:1}.grid-cols-16{grid-template-columns:repeat(16,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-1{row-gap:var(--spacing)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}.p-3{padding:calc(var(--spacing) * 3)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-\[13px\]{font-size:13px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-dim{color:var(--color-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,)}@media (width>=40rem){.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:px-5{padding-inline:calc(var(--spacing) * 5)}}@media (width>=64rem){.lg\:block{display:block}.lg\:grid-cols-\[132px_minmax\(0\,1fr\)_232px\]{grid-template-columns:132px minmax(0,1fr) 232px}.lg\:flex-col{flex-direction:column}}}:root{--velvet:#120a10;--panel:#1e0d16;--line:#3a2030;--cream:#f2e5da;--dim:#a58490;--rose:#ff4d6d;--amber:#ffb648;--mint:#6fe3bd;--wine:#a5637e;--mono:ui-monospace, "SF Mono", "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, "Liberation Mono", monospace}html{background:var(--velvet)}body{font-family:var(--mono);color:var(--cream);background:var(--velvet);background-image:radial-gradient(90% 55% at 18% -5%,#ff4d6d17,#0000 60%),radial-gradient(70% 50% at 95% 110%,#6fe3bd0f,#0000 60%);min-height:100vh;margin:0;overflow-x:hidden}body:before{content:"";z-index:60;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2px,#00000047 2px 3px);position:fixed;inset:0}body:after{content:"";z-index:61;pointer-events:none;background:radial-gradient(at 50% 42%,#0000 58%,#0000008c 100%);position:fixed;inset:0}::selection{background:var(--rose);color:var(--velvet)}.num{font-variant-numeric:tabular-nums}.wordmark{letter-spacing:.04em;color:var(--cream);text-shadow:0 0 14px #ff4d6d73;white-space:nowrap;font-size:26px;font-weight:700}.wordmark .cursor-block{vertical-align:text-bottom;background:var(--amber);width:12px;height:1.05em;animation:1.2s steps(2,jump-none) infinite blink;display:inline-block;box-shadow:0 0 10px #ffb648cc}@keyframes blink{50%{opacity:0}}@keyframes poweron{0%{opacity:0}18%{opacity:.7}30%{opacity:.15}46%{opacity:1}60%{opacity:.5}to{opacity:1}}.poweron{animation:.42s steps(6,end) poweron}.label{text-transform:uppercase;letter-spacing:.12em;color:var(--dim);font-size:11px}.readout{color:var(--amber);text-shadow:0 0 12px #ffb64880;font-variant-numeric:tabular-nums}.readout.tick{animation:.18s steps(2,end) tickflash}@keyframes tickflash{0%{filter:brightness(2)}to{filter:none}}.terminal-panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;position:relative;box-shadow:0 0 0 1px #0009,0 8px 32px #00000080}.terminal-panel:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ff4d6d59,#0000);height:1px;position:absolute;top:0;left:10px;right:10px}.tbtn{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cream);border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;background:#240f1b;border-radius:4px;padding:9px 16px;font-size:13px;font-weight:700;transition:transform 90ms steps(2,end),box-shadow .12s,border-color .12s,background .12s}.tbtn:hover{border-color:var(--rose);box-shadow:0 0 12px #ff4d6d59}.tbtn:active{transform:translateY(1px)}.tbtn:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.tbtn.playing{background:var(--amber);border-color:var(--amber);color:var(--velvet);box-shadow:0 0 16px #ffb6488c}.tbtn.danger:hover{border-color:var(--amber);box-shadow:0 0 12px #ffb64859}.random-btn{border:1px dashed var(--rose);color:var(--rose);text-shadow:0 0 10px #ff4d6d99;background:#ff4d6d12;padding:12px 16px;font-size:15px}.random-btn:hover{background:var(--rose);color:var(--velvet);text-shadow:none;box-shadow:0 0 22px #ff4d6d99}.voice-pad{width:100%;font-family:var(--mono);border:1px solid var(--line);color:var(--cream);cursor:pointer;text-align:left;background:#1a0c13;border-radius:4px;align-items:center;gap:8px;padding:10px;transition:border-color .1s,box-shadow .12s,transform 80ms steps(2,end);display:flex}.voice-pad:hover{transform:translate(2px)}.voice-pad:active{transform:translate(0)scale(.98)}.voice-pad:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.voice-pad .chip{border-radius:2px;flex:none;align-self:stretch;width:8px}.voice-pad .vname{letter-spacing:.1em;font-size:13px;font-weight:700}.voice-pad .vkey{color:var(--dim);border:1px solid var(--line);border-bottom-width:2px;border-radius:3px;margin-left:auto;padding:1px 5px;font-size:10px}.voice-pad.hit{animation:.13s steps(2,end) padhit}@keyframes padhit{0%{filter:brightness(1.9)}to{filter:none}}.stepnum{color:var(--dim);text-align:center;font-variant-numeric:tabular-nums;padding-bottom:2px;font-size:10px;transition:color 80ms,text-shadow 80ms}.stepnum.now{color:var(--amber);text-shadow:0 0 8px #ffb648cc}.stepnum.downbeat{color:var(--wine)}.stepnum.now.downbeat{color:var(--amber)}.cell{appearance:none;aspect-ratio:1;border:1px solid var(--line);cursor:pointer;background:#1a0c13;border-radius:3px;min-width:0;padding:0;transition:background 90ms,box-shadow .11s,filter 90ms,transform 70ms steps(2,end)}.cell.beat{border-color:var(--wine);background:#241019}.cell:focus-visible{outline:2px solid var(--mint);outline-offset:1px;z-index:2}.cell.on{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 1px #f2e5da40, 0 0 10px var(--glow);animation:.12s steps(3,end) ignite}@keyframes ignite{0%{filter:brightness(1.8)}to{filter:none}}.cell.now{border-color:var(--amber);box-shadow:0 0 0 1px #ffb6488c}.cell.on.now{filter:brightness(1.35);transform:scale(1.07)}.grid-scrambling .cell{animation:.24s steps(4,end) scramble}.grid-scrambling .vrow-0 .cell,.grid-scrambling .vrow-3 .cell,.grid-scrambling .vrow-0 .cell{animation-delay:0s}.grid-scrambling .vrow-1 .cell{animation-delay:40ms}.grid-scrambling .vrow-2 .cell{animation-delay:80ms}.grid-scrambling .vrow-3 .cell{animation-delay:.12s}@keyframes scramble{0%,to{filter:none}50%{filter:brightness(2.2)}}input[type=range].fader{appearance:none;background:linear-gradient(90deg, var(--amber) var(--p,50%), var(--line) var(--p,50%));cursor:pointer;border-radius:2px;width:120px;height:4px}input[type=range].fader::-webkit-slider-thumb{-webkit-appearance:none;background:var(--amber);cursor:pointer;border:none;border-radius:2px;width:12px;height:12px;transform:rotate(45deg);box-shadow:0 0 8px #ffb648b3}input[type=range].fader::-moz-range-thumb{background:var(--amber);cursor:pointer;border:none;border-radius:2px;width:12px;height:12px;transform:rotate(45deg);box-shadow:0 0 8px #ffb648b3}input[type=range].fader:focus-visible{outline:2px solid var(--mint);outline-offset:4px}.knob-wrap{flex-direction:column;align-items:center;gap:6px;display:flex}input[type=range].knob{--p:50%;appearance:none;cursor:ns-resize;border:1px solid var(--line);background:radial-gradient(circle at 35% 30%, #2c1521 0%, var(--panel) 62%), var(--panel);border-radius:50%;width:76px;height:76px;margin:0;padding:0;position:relative;box-shadow:0 4px 14px #0009,inset 0 0 0 5px #00000040}input[type=range].knob:before{content:"";pointer-events:none;background:conic-gradient(from -135deg, var(--kcolor,var(--rose)) var(--sweep,50%), #3a2030e6 var(--sweep,50%));border-radius:50%;position:absolute;inset:7px;-webkit-mask:radial-gradient(circle,#0000 58%,#000 59%);mask:radial-gradient(circle,#0000 58%,#000 59%)}input[type=range].knob::-webkit-slider-thumb{-webkit-appearance:none;background:var(--kcolor,var(--rose));width:6px;height:26px;box-shadow:0 0 8px var(--kcolor,var(--rose));transform:rotate(var(--rot,0deg)) translateY(-24px);transform-origin:3px 37px;cursor:ns-resize;border-radius:3px}input[type=range].knob::-moz-range-thumb{background:var(--kcolor,var(--rose));width:6px;height:26px;box-shadow:0 0 8px var(--kcolor,var(--rose));transform:rotate(var(--rot,0deg)) translateY(-24px);transform-origin:3px 37px;cursor:ns-resize;border:none;border-radius:3px}input[type=range].knob::-moz-range-track{background:0 0}input[type=range].knob:focus-visible{outline:2px solid var(--mint);outline-offset:3px}.log-line{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.log-line .prompt{color:var(--amber)}.log-ok{color:var(--mint)}.kbd{color:var(--dim);border:1px solid var(--line);white-space:nowrap;border-bottom-width:2px;border-radius:3px;padding:1px 5px;font-size:10px}@media (prefers-reduced-motion:reduce){.wordmark .cursor-block,.poweron,.cell.on,.grid-scrambling .cell,.voice-pad.hit{animation:none}*{transition-duration:.01ms!important}}@property --tw-font-weight{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}
