/*! tailwindcss v4.2.1 | 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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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,ui-sans-serif, system-ui, 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{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{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)!important}.rounded{border-radius:.25rem}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.invert{--tw-invert:invert(100%);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,)}.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,)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--panel:#121719;--line:#e0d7c229;--muted:#929590;--text:#f0eee7;--gold:#d7b56d;--cyan:#76e6e1;--ebony:#090b0b;--ebony-raised:#171918;--brass-line:#d3b16761;--brass-inlay:#e5ca8f1c;--ivory-line:#f4efe021}*{box-sizing:border-box}html,body{min-height:100%;color:var(--text);background:#080a0b;margin:0}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}button,input{font:inherit}button{color:inherit}.piano-app{background:radial-gradient(circle at 66% 8%, var(--patch-accent), transparent 29%), linear-gradient(135deg, #101516 0%, #080a0b 62%);min-height:100vh;padding-bottom:214px}@supports (color:color-mix(in lab, red, red)){.piano-app{background:radial-gradient(circle at 66% 8%, color-mix(in srgb, var(--patch-accent) 9%, transparent), transparent 29%), linear-gradient(135deg, #101516 0%, #080a0b 62%)}}.topbar{background:radial-gradient(at 22% -90%,#ffffff1f,#0000 56%),linear-gradient(#1c1e1dfa,#080a0afa);border-bottom:1px solid #d3b16742;justify-content:space-between;align-items:center;height:76px;padding:0 28px;display:flex;box-shadow:0 8px 24px #00000061,inset 0 -1px #000000b3}.brand-lockup{align-items:center;min-width:0;display:flex}.brand-first{letter-spacing:-.035em;color:#0000;filter:drop-shadow(0 2px 1px #000);background:linear-gradient(#fff,#9aa0a0 48%,#f8f8f8 54%,#747a7a);-webkit-background-clip:text;font:900 clamp(22px,3vw,38px)/1 Arial Narrow,Impact,sans-serif;transform:skew(-8deg)}.brand-piano{color:#f2f1eb;letter-spacing:-.06em;text-shadow:0 2px 4px #000;margin-left:7px;font:italic 800 clamp(20px,2.7vw,34px)/1 Georgia,serif}.brand-by{color:#aeb9b8;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;border-left:1px solid #76e6e152;margin-left:14px;padding-left:14px;font:800 9px/1 ui-monospace,monospace}.topbar-actions{align-items:center;gap:10px;display:flex}.status-button,.account-button{cursor:pointer;background:linear-gradient(155deg,#171a19,#080a0a 72%);border:1px solid #dac9a338;border-radius:9px;min-height:42px;box-shadow:inset 0 1px #ffffff12,inset 0 0 0 3px #00000038,0 7px 16px #00000038}.status-button{text-align:left;align-items:center;gap:10px;min-width:190px;padding:7px 13px;display:flex}.status-button span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.status-button small{color:var(--muted);letter-spacing:.15em;margin-bottom:4px;font:800 8px/1 ui-monospace,monospace;display:block}.status-light{background:#5d6666;border-radius:50%;flex:none;width:10px;height:10px;box-shadow:inset 0 1px 2px #000}.status-button.is-connected .status-light{background:#6fffb7;box-shadow:0 0 12px #38e58c}.account-button{text-transform:uppercase;letter-spacing:.08em;padding:0 17px;font-size:12px;font-weight:800}.instrument-shell{grid-template-columns:minmax(250px,310px) minmax(0,1fr);max-width:1500px;min-height:calc(100vh - 290px);margin:0 auto;display:grid}.patch-browser{border-right:1px solid var(--line);background:#080b0ce0;min-height:560px}.browser-heading{border-bottom:1px solid var(--line);flex-direction:column;justify-content:center;height:70px;padding:18px 21px;display:flex}.browser-heading span{letter-spacing:.18em;text-transform:uppercase;color:#dce4e3;font:900 13px/1 ui-monospace,monospace}.browser-heading small{color:var(--muted);margin-top:7px;font-size:11px}.patch-list{padding:8px}.patch-row{border:1px solid #0000;border-bottom-color:#ffffff0e;grid-template-columns:1fr 38px;min-height:53px;transition:all .16s;display:grid}.patch-row:hover{background:#ffffff09}.patch-row.is-selected{border-color:var(--patch-accent)}@supports (color:color-mix(in lab, red, red)){.patch-row.is-selected{border-color:color-mix(in srgb, var(--patch-accent) 55%, transparent)}}.patch-row.is-selected{background:radial-gradient(ellipse at 15% 0%, #ffffff0e, transparent 54%), linear-gradient(90deg, var(--patch-accent), #070909e6);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.patch-row.is-selected{background:radial-gradient(ellipse at 15% 0%, #ffffff0e, transparent 54%), linear-gradient(90deg, color-mix(in srgb, var(--patch-accent) 14%, #111311), #070909e6)}}.patch-row.is-selected{box-shadow:inset 3px 0 var(--patch-accent), inset 0 0 0 3px #00000038, 0 8px 18px #0000002e}.patch-select{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;min-width:0;padding:8px 7px;display:flex}.patch-number{color:#6d7877;font:700 9px ui-monospace,monospace}.patch-select span:last-child{min-width:0}.patch-select strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.patch-select small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.favorite-button{color:#596261;cursor:pointer;background:0 0;border:0;font-size:17px}.favorite-button.is-favorite{color:var(--gold);text-shadow:0 0 10px #d7b56d99}.performance-deck{background:linear-gradient(105deg,#04070829,#04070875 42%,#04070838),linear-gradient(#0204050a,#02040557),url(/instruments/grand-piano-player-pov-v2.webp) 50% 62%/cover no-repeat;flex-direction:column;justify-content:center;gap:22px;min-width:0;padding:clamp(18px,3vw,42px);display:flex;box-shadow:inset 0 0 66px #0000003d}.piano-identity{border:1px solid var(--brass-line);background:radial-gradient(at 16% -38%,#ffffff21,#0000 46%),linear-gradient(118deg,#1b1d1cf9,#070909fb 68%,#13100cf7);border-radius:17px 17px 12px 12px;grid-template-columns:160px minmax(0,1fr) 100px;align-items:center;gap:25px;padding:20px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 46px #0000006b,inset 0 1px #ffffff1f,inset 0 0 0 4px #00000042,inset 0 -1px #d3b16714}.piano-identity:after,.macro-panel:after,.advanced-panel:after,.account-modal:after{content:"";border:1px solid var(--brass-inlay);border-radius:inherit;pointer-events:none;position:absolute;inset:4px}.piano-art{border-right:1px solid var(--line);background:radial-gradient(circle, var(--patch-accent), transparent 70%), url(/instruments/grand-piano.webp) center / 142px 108px no-repeat;height:125px}@supports (color:color-mix(in lab, red, red)){.piano-art{background:radial-gradient(circle, color-mix(in srgb, var(--patch-accent) 14%, transparent), transparent 70%), url(/instruments/grand-piano.webp) center / 142px 108px no-repeat}}.piano-art{filter:drop-shadow(0 12px 10px #00000080)}.current-patch{text-shadow:0 2px 12px #000000eb}.eyebrow{color:var(--patch-accent);text-transform:uppercase;letter-spacing:.2em;margin-bottom:10px;font:900 9px/1 ui-monospace,monospace;display:block}.current-patch h1{letter-spacing:-.035em;margin:0;font:500 clamp(30px,4vw,54px)/1.02 Georgia,serif}.current-patch p{color:#aab4b3;max-width:640px;margin:11px 0 15px;font-size:13px;line-height:1.5}.engine-state{color:#c9d1d0;align-items:center;gap:8px;font-size:10px;display:flex}.engine-state small{color:var(--muted);margin-left:4px}.engine-dot{background:#6b7373;border-radius:50%;width:8px;height:8px}.engine-dot.is-ready{background:#79f1ae;box-shadow:0 0 10px #51e697}.sustain-indicator{aspect-ratio:1;cursor:pointer;background:radial-gradient(circle at 35% 30%,#303738,#101415 72%);border:1px solid #485150;border-radius:50%;width:88px;box-shadow:inset 0 0 0 5px #080a0b,0 8px 18px #000}.sustain-indicator small{color:#899493;text-transform:uppercase;letter-spacing:.12em;font:800 8px ui-monospace,monospace;display:block}.sustain-indicator strong{color:#bac3c2;margin-top:5px;font:900 10px ui-monospace,monospace;display:block}.sustain-indicator.is-on{border-color:var(--patch-accent);box-shadow:inset 0 0 0 5px #080a0b, 0 0 22px var(--patch-accent)}@supports (color:color-mix(in lab, red, red)){.sustain-indicator.is-on{box-shadow:inset 0 0 0 5px #080a0b, 0 0 22px color-mix(in srgb, var(--patch-accent) 58%, transparent)}}.sustain-indicator.is-on strong{color:var(--patch-accent)}.macro-panel{border:1px solid var(--brass-line);background:radial-gradient(at 20% -70%,#ffffff1c,#0000 52%),linear-gradient(160deg,#171918f2,#070909f5 72%);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:relative;overflow:hidden;box-shadow:0 17px 34px #00000052,inset 0 1px #ffffff14,inset 0 0 0 4px #0003}.macro-control{z-index:1;background:linear-gradient(110deg,#ffffff05,#0000 62%);border-right:1px solid #d3b16733;min-width:0;padding:18px 20px 21px;position:relative}.macro-control:last-child{border-right:0}.macro-control>span{color:#dce3e2;text-transform:uppercase;letter-spacing:.15em;font:900 11px ui-monospace,monospace;display:block}.macro-readout{justify-content:space-between;align-items:baseline;margin:16px 0 12px;display:flex}.macro-readout small{color:#778281;text-transform:uppercase;font-size:9px}.macro-readout strong{color:var(--patch-accent);font:500 25px Georgia,serif}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(#050707,#303637);border:1px solid #394140;border-radius:6px;height:6px;box-shadow:inset 0 1px 3px #000}input[type=range]::-webkit-slider-thumb{appearance:none;background:linear-gradient(90deg, #353b3b 0 14%, #8d9695 15% 22%, #343a3a 23% 42%, var(--patch-accent) 43% 56%, #343a3a 57% 77%, #8d9695 78% 85%, #353b3b 86%);border:1px solid #737d7c;border-radius:4px;width:24px;height:24px;margin-top:-10px;box-shadow:0 3px 6px #000,inset 0 1px #ffffff59}input[type=range]::-moz-range-track{background:linear-gradient(#050707,#303637);border:1px solid #394140;border-radius:6px;height:6px}input[type=range]::-moz-range-thumb{background:#4c5554;border:1px solid #737d7c;border-radius:4px;width:24px;height:24px;box-shadow:0 3px 6px #000}.macro-control.is-disabled{opacity:.32}.performance-footer{justify-content:space-between;align-items:center;gap:18px;display:flex}.master-control{border:1px solid var(--brass-line);background:radial-gradient(at 20% -70%,#ffffff29,#0000 54%),linear-gradient(145deg,#282b29,#0b0d0d 76%);border-radius:11px;flex:1;grid-template-columns:auto minmax(130px,1fr) 55px;align-items:center;gap:16px;max-width:520px;padding:14px 18px;display:grid;box-shadow:0 12px 25px #0000004d,inset 0 1px #ffffff1f,inset 0 0 0 4px #00000038,inset 0 0 0 5px #e5ca8f0e}.master-control span{color:#e7e1d1;text-transform:uppercase;letter-spacing:.13em;font:900 10px ui-monospace,monospace}.master-control output{font:900 10px ui-monospace,monospace}.action-cluster{gap:8px;display:flex}.primary-action,.secondary-action,.icon-action{cursor:pointer;text-transform:uppercase;letter-spacing:.09em;border-radius:9px;min-height:44px;font-size:10px;font-weight:900}.primary-action{border:1px solid var(--patch-accent);padding:0 25px}@supports (color:color-mix(in lab, red, red)){.primary-action{border:1px solid color-mix(in srgb, var(--patch-accent) 80%, white)}}.primary-action{background:linear-gradient(180deg, var(--patch-accent), #102526)}@supports (color:color-mix(in lab, red, red)){.primary-action{background:linear-gradient(180deg, color-mix(in srgb, var(--patch-accent) 42%, #193032), #102526)}}.primary-action{color:#fff;box-shadow:0 0 18px var(--patch-accent)}@supports (color:color-mix(in lab, red, red)){.primary-action{box-shadow:0 0 18px color-mix(in srgb, var(--patch-accent) 18%, transparent)}}.secondary-action,.icon-action{background:radial-gradient(at 25% -80%,#ffffff1f,#0000 58%),linear-gradient(150deg,#171a19,#080a0a 74%);border:1px solid #dac9a340;padding:0 17px;box-shadow:0 9px 20px #00000047,inset 0 1px #ffffff12,inset 0 0 0 3px #0000003d}.icon-action{width:44px;padding:0;font-size:16px}.design-action{color:var(--patch-accent);border-color:var(--patch-accent)}@supports (color:color-mix(in lab, red, red)){.design-action{border-color:color-mix(in srgb, var(--patch-accent) 55%, #394240)}}.design-action{white-space:nowrap}.loading-line{color:#899493;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:16px;min-height:20px;font-size:10px;display:grid}.load-track{background:#1c2222;height:3px;overflow:hidden}.load-track i{background:var(--patch-accent);height:100%;box-shadow:0 0 8px var(--patch-accent);transition:width .4s;display:block}.advanced-panel{border:1px solid var(--brass-line);background:radial-gradient(at 14% -25%,#ffffff14,#0000 44%),linear-gradient(145deg,#151716fa,#070909fb 68%);border-radius:13px;gap:14px;padding:18px 21px;font-size:11px;display:grid;position:relative;box-shadow:0 20px 40px #0000005c,inset 0 1px #ffffff14,inset 0 0 0 4px #00000038}.advanced-header{flex-wrap:wrap;align-items:center;gap:12px 22px;display:flex}.advanced-header div,.advanced-header label{align-items:center;gap:8px;display:flex}.advanced-panel button{cursor:pointer;background:#181e1f;border:1px solid #3d4645;min-height:30px;padding:0 10px}.advanced-panel small{color:#778180}.velocity-badge{color:#899493;letter-spacing:.08em;text-transform:uppercase;border:1px solid #35403f;border-radius:999px;margin-left:auto;padding:7px 10px;font:800 8px ui-monospace,monospace}.velocity-badge.is-ready{color:#79f1ae;background:#79f1ae0f;border-color:#79f1ae75}.effects-title{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;padding-top:13px;display:flex}.effects-title span{color:var(--patch-accent);letter-spacing:.15em;text-transform:uppercase;font:900 10px ui-monospace,monospace}.instrument-builder{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.builder-card{background:radial-gradient(at 18% -60%,#ffffff12,#0000 52%),linear-gradient(145deg,#171918f5,#080a0af7);border:1px solid #d5c39c33;border-radius:9px;min-width:0;padding:14px;box-shadow:inset 0 1px #ffffff0d,0 8px 20px #0003}.builder-card-title{color:#dce5e4;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font:900 10px ui-monospace,monospace;display:flex}.builder-card-title>b{color:#7e8988;font-size:8px}.builder-card p{color:#7f8a89;margin:8px 0 11px;font-size:10px;line-height:1.45}.builder-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.engine-switch{align-items:center;gap:7px;display:inline-flex;border-color:var(--patch-accent)!important;min-height:31px!important}@supports (color:color-mix(in lab, red, red)){.engine-switch{border-color:color-mix(in srgb, var(--patch-accent) 52%, #3d4645)!important}}.engine-switch{color:var(--patch-accent);letter-spacing:.09em;text-transform:uppercase;font:900 8px ui-monospace,monospace}.engine-switch i{background:#596160;border-radius:50%;width:9px;height:9px;box-shadow:inset 0 1px 2px #000}.engine-switch.is-on i{background:#79f1ae;box-shadow:0 0 9px #51e697}.sound-select{color:#aeb9b8;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-bottom:8px;font:800 8px ui-monospace,monospace;display:grid}.sound-select select{color:#e4ebea;background:#0a0e0f;border:1px solid #3a4645;border-radius:3px;min-width:0;height:34px;padding:0 9px}.sound-select.is-disabled,.effect-control.is-disabled{opacity:.42}.effects-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;display:grid}.effect-control{background:linear-gradient(145deg,#161817f0,#080a0af0);border:1px solid #d5c39c29;border-radius:7px;grid-template-columns:1fr auto;align-items:center;gap:2px 9px;padding:9px 10px;display:grid;box-shadow:inset 0 1px #ffffff09}.effect-control span{color:#bdc8c7;letter-spacing:.09em;text-transform:uppercase;font:800 8px ui-monospace,monospace}.effect-control output{color:var(--patch-accent);font:800 9px ui-monospace,monospace}.effect-control input{grid-column:1/-1;height:20px}.velocity-editor{gap:11px;display:grid}.velocity-map{background:#070a0b;border:1px solid #35403f;border-radius:4px;min-height:48px;display:flex;overflow:hidden}.velocity-map span{text-align:center;background:var(--patch-accent);border-right:1px solid #ffffff24;place-content:center;min-width:42px;display:grid}@supports (color:color-mix(in lab, red, red)){.velocity-map span{background:color-mix(in srgb, var(--patch-accent) calc(5% + var(--velocity-depth,0%)), #111718)}}.velocity-map span:last-child{border-right:0}.velocity-map span:first-child{opacity:.48}.velocity-map span:nth-child(2){opacity:.58}.velocity-map span:nth-child(3){opacity:.68}.velocity-map span:nth-child(4){opacity:.78}.velocity-map span:nth-child(5){opacity:.88}.velocity-map strong{color:#ecf4f3;font:700 17px Georgia,serif}.velocity-map small{color:#aeb9b8;margin-top:3px;font:800 7px ui-monospace,monospace}.velocity-presets{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.velocity-presets>span{color:#879291;letter-spacing:.1em;text-transform:uppercase;margin-right:4px;font:800 8px ui-monospace,monospace}.velocity-presets button{color:#b9c5c4;text-transform:uppercase;letter-spacing:.08em;font:900 8px ui-monospace,monospace}.split-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.split-control{background:linear-gradient(145deg,#161817f0,#080a0af0);border:1px solid #d5c39c29;border-radius:7px;grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:9px;display:grid;box-shadow:inset 0 1px #ffffff09}.split-control span{color:#bdc8c7;letter-spacing:.05em;text-transform:uppercase;font:800 8px ui-monospace,monospace}.split-control output{color:var(--patch-accent);font:900 9px ui-monospace,monospace}.split-control input{grid-column:1/-1;height:20px}.onscreen-keyboard{z-index:20;background:radial-gradient(at 18% -90%,#ffffff21,#0000 55%),linear-gradient(#1d1f1e,#070909);border-top:1px solid #d3b16761;height:198px;padding:8px 18px 16px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 34px #0000009e,inset 0 1px #ffffff12}.keyboard-meta{color:#85908f;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;height:28px;font:800 8px ui-monospace,monospace;display:flex}.keyboard-meta strong{color:var(--patch-accent)}.keys{touch-action:none;perspective:900px;background:#050606;border:7px solid #050606;border-bottom-width:9px;border-radius:8px;max-width:1600px;height:146px;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 24px #000000b8,0 0 0 1px #d3b16733,inset 0 2px 3px #000}.white-key{cursor:pointer;background:linear-gradient(90deg,#b7b8b2 0%,#ecece7 7%,#fffefa 26%,#f9f8f1 67%,#dddcd4 91%,#a5a7a2 100%);border:0;border-left:1px solid #fff9;border-right:1px solid #777a76;flex:1;position:relative;box-shadow:inset 0 -11px 9px #28261e38,inset 0 3px 2px #ffffffeb,0 3px 3px #0000007a}.white-key:after{content:"";pointer-events:none;opacity:.5;background:linear-gradient(105deg,#0000 0 36%,#ffffff80 43%,#0000 51%),repeating-linear-gradient(92deg,#504c3d05 0 1px,#0000 1px 5px);position:absolute;inset:0 0 7px}.white-key span{color:#58605f;font-size:8px;position:absolute;bottom:8px;left:6px}.white-key.is-down{background:linear-gradient(#d5f5f1,#b8ded9 78%,#8fb8b4);transform:translateY(2px)rotateX(-1deg);box-shadow:inset 0 -5px 7px #174a4647}.black-key{z-index:2;cursor:pointer;background:linear-gradient(92deg,#020303 0%,#17191a 13%,#343839 42%,#090a0a 58%,#202324 82%,#040505 100%);border:1px solid #020303;border-top:0;border-radius:0 0 4px 4px;width:1.48%;height:64%;position:absolute;top:0;box-shadow:inset 2px 0 2px #ffffff1a,inset -2px 0 2px #000,inset 0 -7px 7px #000,0 7px 6px #000000c7,0 10px 12px #0000007a}.black-key:after{content:"";pointer-events:none;background:linear-gradient(105deg,#ffffff24,#ffffff04 45%,#ffffff14);border-radius:1px 1px 40% 40%;height:42%;position:absolute;top:4px;left:13%;right:13%}.black-key.is-down{box-shadow:0 3px 4px #000, 0 0 10px var(--patch-accent);background:linear-gradient(#143f3d,#07100f);transform:translateY(3px)}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#000000c2;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.account-modal{border:1px solid var(--brass-line);background:radial-gradient(at 18% -35%,#ffffff1a,#0000 48%),linear-gradient(145deg,#202220,#080a0a 76%);border-radius:14px;width:min(570px,100%);max-height:84vh;padding:32px;position:relative;overflow:auto;box-shadow:0 28px 80px #000,inset 0 1px #ffffff17,inset 0 0 0 4px #00000038}.account-modal h2{margin:0 0 12px;font:500 30px Georgia,serif}.account-modal p{color:#9fa9a8;font-size:13px;line-height:1.55}.modal-close{color:#9aa4a3;cursor:pointer;background:0 0;border:0;font-size:28px;position:absolute;top:12px;right:14px}.save-row{grid-template-columns:1fr auto;gap:8px;margin:22px 0 10px;display:grid}.save-row input{color:#fff;background:#090c0d;border:1px solid #3d4746;min-height:43px;padding:0 12px}.save-row button,.cloud-list button{cursor:pointer;background:#162020;border:1px solid #50605e}.save-row button{padding:0 17px;font-weight:800}.cloud-message{color:#8ee5df!important}.cloud-list{gap:7px;margin-top:18px;display:grid}.cloud-list button{text-align:left;justify-content:space-between;align-items:center;min-height:54px;padding:8px 12px;display:flex}.cloud-list strong,.cloud-list small{display:block}.cloud-list small{color:#7f8a89;margin-top:4px}.cloud-list b{color:var(--cyan);text-transform:uppercase;letter-spacing:.1em;font-size:9px}.sign-in{align-items:center;margin-top:8px;text-decoration:none;display:inline-flex}.sign-link{color:#93a09f;margin-top:20px;font-size:11px;display:inline-block}@media (width<=980px){.piano-app{padding-bottom:180px}.instrument-shell{grid-template-columns:225px minmax(0,1fr)}.performance-deck{padding:18px}.piano-identity{grid-template-columns:110px minmax(0,1fr) 76px;gap:14px}.piano-art{height:105px}.piano-art img{width:100px}.sustain-indicator{width:72px}.macro-control{padding:14px 11px 17px}.performance-footer{flex-direction:column;align-items:stretch}.master-control{max-width:none}.instrument-builder{grid-template-columns:1fr}.split-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.effects-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.onscreen-keyboard{height:166px}.keys{height:116px}}@media (width<=720px){.piano-app{padding-bottom:160px}.topbar{height:66px;padding:0 13px}.brand-by{display:none}.status-button{justify-content:center;width:44px;min-width:44px;padding:0}.status-button span:nth-child(2){display:none}.account-button{padding:0 11px;font-size:9px}.instrument-shell{min-height:auto;display:block}.patch-browser{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.browser-heading{flex-direction:row;justify-content:space-between;align-items:center;height:48px;padding:9px 14px}.patch-list{scroll-snap-type:x mandatory;padding:7px;display:flex;overflow-x:auto}.patch-row{scroll-snap-align:start;flex:0 0 178px;grid-template-columns:1fr 32px;min-height:53px}.performance-deck{gap:12px;padding:12px}.piano-identity{grid-template-columns:82px minmax(0,1fr);padding:13px}.piano-art{height:82px}.current-patch h1{font-size:30px}.current-patch p{margin:7px 0 9px;font-size:11px}.sustain-indicator{width:60px;position:absolute;top:204px;right:20px}.engine-state small{display:none}.macro-panel{grid-template-columns:1fr 1fr}.macro-control:nth-child(2){border-right:0}.macro-control:nth-child(-n+2){border-bottom:1px solid var(--line)}.macro-readout{margin:10px 0 7px}.action-cluster{grid-template-columns:1fr 1fr 1.2fr;display:grid}.action-cluster button{padding-left:9px;padding-right:9px}.velocity-badge{margin-left:0}.loading-line{grid-template-columns:1fr;gap:7px}.master-control{grid-template-columns:1fr 52px;gap:6px 12px}.master-control input{grid-area:2/1/auto/-1}.onscreen-keyboard{height:150px;padding:7px 5px 9px}.keys{height:108px}.keyboard-meta{padding:0 5px}.white-key span{display:none}.account-modal{padding:28px 20px}.builder-grid,.split-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@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-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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}
