@import"https://fonts.googleapis.com/css2?family=Antonio:wght@500;600;700&family=Barlow+Condensed:wght@400;500;600;700&family=Bebas+Neue&family=JetBrains+Mono:wght@400;500;700&display=swap";.export-btn{background:#ffd2001f;color:#ffd200;border:1px solid rgba(255,210,0,.35);padding:4px 8px;border-radius:4px;font-family:inherit;cursor:pointer;font-size:11px;display:inline-flex;align-items:center;gap:4px;transition:background .15s ease,border-color .15s ease}.export-btn:hover:not(:disabled){background:#ffd20038;border-color:#ffd20099}.export-btn:disabled,.export-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.export-btn[aria-busy=true]{cursor:wait}.export-spinner{display:inline-block;width:10px;height:10px;border:2px solid rgba(255,210,0,.3);border-top-color:#ffd200;border-radius:50%;animation:export-spin .7s linear infinite;flex-shrink:0}@media(prefers-reduced-motion:reduce){.export-spinner{animation:none;border-top-color:#ffd200}}@keyframes export-spin{to{transform:rotate(360deg)}}.export-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.export-dialog{background:#0d1724;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:20px 24px;min-width:280px;max-width:360px;width:90vw;box-shadow:0 8px 32px #0009;color:#e7ecf6;font-family:inherit}.export-dialog h3{margin:0 0 12px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#ffd200}.export-name-field{margin:0 0 14px}.export-name-label{display:block;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#7a8499;margin-bottom:5px}.export-name-input{width:100%;box-sizing:border-box;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);border-radius:4px;padding:6px 9px;font-family:JetBrains Mono,monospace;font-size:12px;color:#e7ecf6;outline:none;transition:border-color .15s ease}.export-name-input::placeholder{color:#4a5268}.export-name-input:focus{border-color:#ffd20080}.export-progress-bar-track{width:100%;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin:8px 0}.export-progress-bar-fill{height:100%;background:#ffd200;border-radius:2px;transition:width .2s ease}.export-phase-label{font-family:JetBrains Mono,monospace;font-size:11px;color:#9aa3b8;margin:0 0 4px}.export-count-label{font-family:JetBrains Mono,monospace;font-size:11px;color:#6e7b94;margin:0 0 12px}.export-error-msg{font-size:12px;color:#ff6b6b;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.25);border-radius:4px;padding:8px 10px;margin:8px 0 12px;word-break:break-word}.export-success-msg{font-size:12px;color:#4ade80;margin:8px 0 12px}.export-dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.export-dialog-btn{background:#ffffff14;color:#cfd6e4;border:1px solid rgba(255,255,255,.15);padding:5px 12px;border-radius:4px;font-family:inherit;font-size:11px;cursor:pointer;transition:background .12s ease}.export-dialog-btn:hover:not(:disabled){background:#ffffff24}.export-dialog-btn:disabled{opacity:.4;cursor:not-allowed}.export-dialog-btn.primary{background:#ffd20026;color:#ffd200;border-color:#ffd20059}.export-dialog-btn.primary:hover:not(:disabled){background:#ffd20040}.export-eject{margin:4px 0 0}.export-eject-done{font-size:12px;color:#4ade80;margin:4px 0 0}.export-overlay--top-right{align-items:flex-start;justify-content:flex-end;padding:16px}.export-overlay--bottom-right{align-items:flex-end;justify-content:flex-end;padding:16px}.kit-editor{position:fixed;left:16px;top:16px;z-index:60;width:340px;max-height:calc(100vh - 32px);overflow-y:auto;background:#0e1626f7;color:#e7ecf6;border:1px solid rgba(255,255,255,.14);border-radius:12px;font-family:Barlow Condensed,sans-serif;box-shadow:0 12px 40px #0009;transform:translate(calc(-100% - 24px));transition:transform .2s ease}.kit-editor.open{transform:translate(0)}@media(prefers-reduced-motion:reduce){.kit-editor{transition:none}}.kit-editor::-webkit-scrollbar{width:4px}.kit-editor::-webkit-scrollbar-track{background:transparent}.kit-editor::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.kit-editor header{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.1);background:#0e1626f7;z-index:1}.kit-editor header h3{margin:0;font-family:Antonio,sans-serif;letter-spacing:.1em;font-size:14px}.kit-editor header button{background:transparent;color:#aab2c4;border:none;font-size:16px;cursor:pointer;padding:2px 6px;border-radius:3px}.kit-editor header button:focus-visible{outline:2px solid #2cc8f7;border-radius:2px}.ke-section{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.ke-section:last-child{border-bottom:none;padding-bottom:14px}.ke-section-label{display:block;font-size:11px;color:#9aa3b8;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-family:Antonio,sans-serif}.ke-kit-list{display:flex;flex-wrap:wrap;gap:4px}.ke-kit-btn{flex:1;min-width:80px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cfd6e4;font-family:Antonio,sans-serif;font-size:11px;letter-spacing:.06em;padding:6px 8px;border-radius:6px;cursor:pointer;text-transform:uppercase;text-align:center;line-height:1.3;transition:background .1s}.ke-kit-btn:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.ke-kit-btn.active{background:var(--red, #e63946);color:#fff;border-color:var(--red, #e63946)}.ke-kit-btn:disabled{opacity:.5;cursor:not-allowed}.ke-kit-btn .ke-pad-count{display:block;font-size:9px;opacity:.7;margin-top:2px}.ke-loading{font-size:11px;color:#9aa3b8;font-family:JetBrains Mono,monospace;padding:4px 0}.ke-input{width:100%;background:#ffffff12;border:1px solid rgba(255,255,255,.14);border-radius:6px;color:#e7ecf6;font-family:Barlow Condensed,sans-serif;font-size:13px;padding:6px 10px;outline:none;box-sizing:border-box}.ke-input:focus{border-color:#2cc8f7;box-shadow:0 0 0 1px #2cc8f7}.ke-bank-row{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}.ke-bank-btn{flex:1;min-width:28px;max-width:40px;padding:5px 4px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cfd6e4;font-family:Antonio,sans-serif;font-size:12px;letter-spacing:.06em;border-radius:5px;cursor:pointer;text-align:center;text-transform:uppercase}.ke-bank-btn:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.ke-bank-btn.active{background:#2cc8f733;border-color:var(--led-blue, #2cc8f7);color:#fff}.ke-pad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.ke-pad-cell{position:relative;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cfd6e4;font-family:Antonio,sans-serif;font-size:9px;letter-spacing:.04em;text-align:center;padding:6px 3px;border-radius:4px;cursor:pointer;line-height:1.3;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;touch-action:none;-webkit-user-select:none;user-select:none}.ke-pad-cell:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.ke-pad-cell.selected{background:#2cc8f72e;border-color:var(--led-blue, #2cc8f7);color:#fff}.ke-pad-cell.drag-over{background:#2cc8f740;border-color:#2cc8f7;border-style:dashed}.ke-pad-cell.empty{opacity:.45}.ke-pad-num{font-size:8px;opacity:.6}.ke-pad-name{font-size:9px;word-break:break-all;max-width:100%}.ke-pad-editor{margin-top:10px;padding:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:8px}.ke-pad-editor-title{font-family:Antonio,sans-serif;font-size:11px;letter-spacing:.08em;color:#9aa3b8;text-transform:uppercase;margin-bottom:8px}.ke-field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.ke-field:last-child{margin-bottom:0}.ke-field label{font-size:10px;color:#9aa3b8;letter-spacing:.07em;text-transform:uppercase;font-family:Antonio,sans-serif}.ke-slider-row{display:flex;gap:8px;align-items:center}.ke-slider-row input[type=range]{flex:1;accent-color:var(--led-blue, #2cc8f7)}.ke-slider-val{width:40px;text-align:right;font-family:JetBrains Mono,monospace;font-size:11px;color:#cfd6e4;flex-shrink:0}.ke-move-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.ke-move-input{width:56px;background:#ffffff12;border:1px solid rgba(255,255,255,.14);border-radius:5px;color:#e7ecf6;font-family:JetBrains Mono,monospace;font-size:12px;padding:4px 7px;outline:none;box-sizing:border-box;text-align:center}.ke-move-input:focus{border-color:#2cc8f7;box-shadow:0 0 0 1px #2cc8f7}.ke-move-btn{flex:1;padding:5px 8px;background:#ffffff12;border:1px solid rgba(255,255,255,.14);border-radius:5px;color:#cfd6e4;font-family:Antonio,sans-serif;font-size:10px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap}.ke-move-btn:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.ke-move-btn:hover{background:#ffffff1f}.ke-move-btn:disabled{opacity:.5;cursor:not-allowed}.ke-drop-hint{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:4px;background:#2cc8f71a;pointer-events:none;display:flex;align-items:center;justify-content:center;font-size:16px;color:#2cc8f7}.ke-error{font-size:11px;color:#ff6b6b;font-family:JetBrains Mono,monospace;line-height:1.4;padding:4px 0}.ke-hint{font-size:10px;color:#9aa3b8;font-family:JetBrains Mono,monospace;line-height:1.5;margin-top:6px}@media(max-width:480px){.kit-editor{left:0;right:0;width:100%;top:auto;bottom:0;max-height:75vh;border-radius:16px 16px 0 0;transform:translateY(calc(100% + 24px))}.kit-editor.open{transform:translateY(0)}.ke-pad-cell{min-height:52px}}.launcher-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:2000}.launcher-dialog{background:#0d1724;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:32px 28px 28px;min-width:340px;max-width:440px;width:90vw;box-shadow:0 12px 40px #000000b3;color:#e7ecf6;font-family:inherit;display:flex;flex-direction:column;gap:20px;outline:none}.launcher-heading{margin:0;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#ffd200;font-weight:700}.launcher-subhead{margin:4px 0 0;font-size:12px;color:#6e7b94;letter-spacing:.03em}.launcher-actions{display:flex;flex-direction:column;gap:10px}.launcher-action-btn{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 16px;border-radius:6px;border:1px solid rgba(255,255,255,.13);background:#ffffff0d;color:#cfd6e4;font-family:inherit;cursor:pointer;text-align:left;transition:background .13s ease,border-color .13s ease}.launcher-action-btn:focus-visible{outline:2px solid #ffd200;outline-offset:2px}.launcher-action-btn.primary{background:#ffd2001a;border-color:#ffd2004d;color:#ffd200}.launcher-btn-label{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.launcher-btn-hint{font-size:11px;color:#6e7b94;font-weight:400;text-transform:none;letter-spacing:0}.launcher-loading{display:flex;align-items:center;gap:10px;font-size:12px;color:#9aa3b8;font-family:JetBrains Mono,monospace;padding:4px 0}.launcher-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,210,0,.25);border-top-color:#ffd200;border-radius:50%;animation:launcher-spin .7s linear infinite;flex-shrink:0}@media(prefers-reduced-motion:reduce){.launcher-spinner{animation:none;border-top-color:#ffd200}}.launcher-error{font-size:12px;color:#ff6b6b;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.25);border-radius:4px;padding:10px 12px;word-break:break-word;line-height:1.5}.knob{display:flex;flex-direction:column;align-items:center;gap:2px;outline:none}.knob:focus-visible .knob-cap{box-shadow:inset 0 -3px 6px #0006,inset 0 3px 4px #ffffffb3,0 4px 8px #00000059,0 0 0 2px #2cc8f7,0 0 8px #2cc8f780}.knob-cap{position:relative;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff,#ddd 30%,#888 75%,#4a4a4a);box-shadow:inset 0 -3px 6px #0006,inset 0 3px 4px #ffffffb3,0 4px 8px #00000059,0 0 0 1px #0003;cursor:grab}.knob-cap:active{cursor:grabbing}.knob-cap.sm{width:40px;height:40px}.knob-cap.md{width:56px;height:56px}.knob-cap.lg{width:68px;height:68px}.knob-cap:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff,#d8d6cf 55%,#a3a094);box-shadow:inset 0 -2px 3px #0000004d}.knob-cap:after{content:"";position:absolute;left:50%;top:5px;width:3px;height:14px;border-radius:2px;background:#222;transform-origin:50% 23px;transform:translate(-50%) rotate(var(--rot, -135deg))}.knob-cap.gold{background:radial-gradient(circle at 35% 28%,#fff7d0,#e8c840 30%,#b89010 75%,#6a5008)}.knob-name{font-family:Antonio,sans-serif;font-weight:700;font-size:10px;color:#5a5848;letter-spacing:.1em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.pitch-fader{width:64px;height:200px;position:relative;background:linear-gradient(180deg,#dad3bf,#c8c1ad);border-radius:8px;box-shadow:inset 0 0 0 1px #0000001f,inset 0 -2px #0000001a,inset 0 2px #ffffff80;padding:8px;cursor:pointer;outline:none}.pitch-fader:focus-visible{box-shadow:inset 0 0 0 1px #0000001f,inset 0 -2px #0000001a,inset 0 2px #ffffff80,0 0 0 2px #2cc8f7}.fader-track{position:relative;width:4px;height:100%;background:#2a2a2e;border-radius:2px;margin:0 auto;box-shadow:inset 0 0 0 1px #000}.fader-track:before{content:"";position:absolute;left:-16px;top:0;height:100%;width:36px;background-image:linear-gradient(to bottom,rgba(0,0,0,.3) 1px,transparent 1px);background-size:100% 10%}.fader-knob{position:absolute;left:50%;width:38px;height:22px;border-radius:4px;background:linear-gradient(180deg,#fafafa,#c9c8c4 60%,#8e8c84);box-shadow:inset 0 1px #fff,inset 0 -1px #0000004d,0 2px 4px #0000004d,0 0 0 1px #00000040;cursor:grab;transform:translate(-50%) translateY(-50%);-webkit-user-select:none;user-select:none}.fader-knob:active{cursor:grabbing}.fader-knob:after{content:"";position:absolute;left:4px;right:4px;top:50%;height:2px;background:#ff5b32;border-radius:1px;box-shadow:0 0 6px #ff5b32;transform:translateY(-50%)}.data-encoder{width:84px;height:84px;position:relative;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff,#e8e7e3 28%,#b7b6b1 70%,#6a6960);box-shadow:inset 0 -4px 8px #00000073,inset 0 4px 6px #ffffffd9,0 6px 12px #0006,0 0 0 1px #00000040;cursor:grab;outline:none}.data-encoder:active{cursor:grabbing}.data-encoder:focus-visible{box-shadow:inset 0 -4px 8px #00000073,inset 0 4px 6px #ffffffd9,0 6px 12px #0006,0 0 0 2px #2cc8f7}.data-encoder:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff,#ddd 55%,#999);box-shadow:inset 0 -2px 3px #0000004d}.data-encoder:after{content:"";position:absolute;left:50%;top:8px;width:4px;height:16px;border-radius:2px;background:#222;transform-origin:50% 34px;transform:translate(-50%) rotate(var(--rot, 0deg))}.btn{position:relative;width:56px;height:32px;border-radius:6px;background:linear-gradient(180deg,#3a3a3e,#1c1c20 60%,#0e0e10);box-shadow:inset 0 1px #555558,inset 0 -1px #000,inset 0 0 0 1px #000,0 2px #2a2a2e,0 3px 6px #00000040;border:none;color:var(--btn-text);font-family:Antonio,sans-serif;font-weight:700;font-size:9px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;display:grid;place-items:center;text-align:center;line-height:1.05;-webkit-user-select:none;user-select:none;transition:transform 60ms}.btn:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.btn:active,.btn.is-on{transform:translateY(1px);box-shadow:inset 0 1px 2px #0009,inset 0 0 0 1px #000}.btn.tall{height:38px}.btn.wide{width:64px}.btn.square{width:38px;height:38px}.btn.cyan{color:#fff;background:linear-gradient(180deg,#4ed7ff,#1ea7d5 60%,#0e7aa0);text-shadow:0 1px 0 #0a5a78}.btn.cyan.is-on{box-shadow:inset 0 0 8px #fff,inset 0 0 0 1px #0a5a78,0 0 12px #4ed7ff}.btn.orange{color:#fff;background:linear-gradient(180deg,#ffb15a,#ee7a1e 55%,#b94f0a);text-shadow:0 1px 0 #6c2d05}.btn.orange.is-on{box-shadow:inset 0 0 8px #fff,inset 0 0 0 1px #6c2d05,0 0 12px #ffb15a}.btn.red{color:#fff;background:linear-gradient(180deg,#ff6a5a,#d62a1a 55%,#8c0a02)}.btn-stack{display:flex;flex-direction:column;gap:4px;align-items:center}.btn-stack .lbl{margin-top:1px}.lbl{font-family:Antonio,sans-serif;font-weight:600;font-size:8.5px;letter-spacing:.12em;color:var(--label-soft);text-transform:uppercase;text-align:center;line-height:1;-webkit-user-select:none;user-select:none}.lbl-bold{color:var(--label)}.lbl-row{display:flex;gap:6px;justify-content:center;align-items:center;color:var(--label);font-family:Antonio,sans-serif;font-weight:700;font-size:8.5px;letter-spacing:.16em}.lbl-row:before,.lbl-row:after{content:"";height:1px;background:var(--label-soft);flex:1;opacity:.5}.mode-block{display:grid;grid-template-columns:60px 60px;gap:5px 6px;justify-content:center}.mode-block .lbl-row{grid-column:1 / -1;margin-bottom:2px}.shift-row{display:flex;gap:6px;margin-top:2px}.pad-play-block{display:grid;grid-template-columns:60px 60px;gap:5px 6px;justify-content:center}.pad-play-block .lbl-row{grid-column:1 / -1}.transport{display:grid;grid-template-columns:1fr 1fr;gap:6px}.transport .btn{height:38px}.play-btn{position:relative}.play-btn:before{content:"";position:absolute;left:14px;top:50%;width:0;height:0;border-left:10px solid #2bdc6a;border-top:7px solid transparent;border-bottom:7px solid transparent;transform:translateY(-50%);filter:drop-shadow(0 0 4px #2bdc6a)}.stop-btn:before{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;background:#d6d4cc;transform:translate(-50%,-50%)}.tweaks{position:fixed;right:16px;top:16px;z-index:60;width:280px;background:#0e1626f0;color:#e7ecf6;border:1px solid rgba(255,255,255,.12);border-radius:12px;font-family:Barlow Condensed,sans-serif;box-shadow:0 12px 30px #00000080;transform:translate(calc(100% + 24px));transition:transform .2s ease}.tweaks.open{transform:translate(0)}@media(prefers-reduced-motion:reduce){.tweaks{transition:none}}.tweaks header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.1)}.tweaks header h3{margin:0;font-family:Antonio,sans-serif;letter-spacing:.1em;font-size:14px}.tweaks header button{background:transparent;color:#aab2c4;border:none;font-size:16px;cursor:pointer}.tweaks header button:focus-visible{outline:2px solid #2cc8f7;border-radius:2px}.tw-section{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.tw-section:last-child{border:none}.tw-section label{display:block;font-size:12px;color:#9aa3b8;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.tw-segs{display:flex;gap:4px;flex-wrap:wrap}.tw-seg{flex:1;min-width:80px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cfd6e4;font-family:Antonio,sans-serif;font-size:11px;letter-spacing:.08em;padding:6px 8px;border-radius:6px;cursor:pointer;text-transform:uppercase}.tw-seg:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.tw-seg.on{background:var(--red);color:#fff;border-color:var(--red)}.tw-row{display:flex;gap:8px;align-items:center;margin-top:6px}.tw-row input[type=range]{flex:1}.tw-pads{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:4px}.tw-pad{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cfd6e4;padding:6px 4px;border-radius:4px;font-size:10px;text-align:center;font-family:Antonio,sans-serif;letter-spacing:.05em;cursor:pointer;line-height:1.2}.tw-pad:focus-visible{outline:2px solid #2cc8f7;outline-offset:2px}.tw-pad.sel{background:#2cc8f733;border-color:var(--led-blue);color:#fff}.erase-row{display:flex;gap:6px;margin-top:8px;align-self:center}.right-mid,.undo-row{display:flex;gap:6px}.rec-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.bank-selector{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.bank-selector-label{text-align:center}.bank-selector-btns{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.bank-btn{flex:1;min-width:28px;max-width:48px;padding:4px 6px;font-size:11px;text-align:center;background:#00000012;border-color:#0003;color:var(--label)}.bank-btn.on{background:var(--label);border-color:var(--label);color:var(--chassis)}.pad.is-loading{opacity:.65}.pad-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:18px;color:var(--led-blue);opacity:.8;pointer-events:none;line-height:1;animation:pad-loading-pulse .9s ease-in-out infinite alternate}@keyframes pad-loading-pulse{0%{opacity:.3}to{opacity:.9}}@media(prefers-reduced-motion:reduce){.pad-loading{animation:none}}.pad.pad--drop-target{background:linear-gradient(180deg,#e8f7ff,#b8e8ff 35%,#7dd0f5);box-shadow:inset 0 2px #fff,inset 0 -3px 4px #003c7833,inset 0 0 0 2px var(--led-blue),0 0 0 2px var(--led-blue),0 0 18px #2cc8f7b3}.pad.pad--drop-target .pad-num,.pad.pad--drop-target .pad-cap{color:#005880}@media(prefers-reduced-motion:no-preference){.pad.pad--drop-target{animation:pad-drop-pulse .6s ease-in-out infinite alternate}}@keyframes pad-drop-pulse{0%{box-shadow:inset 0 2px #fff,inset 0 -3px 4px #003c7833,inset 0 0 0 2px var(--led-blue),0 0 0 2px var(--led-blue),0 0 12px #2cc8f780}to{box-shadow:inset 0 2px #fff,inset 0 -3px 4px #003c7833,inset 0 0 0 2px var(--led-blue),0 0 0 2px var(--led-blue),0 0 24px #2cc8f7e6}}.pad.pad--dragging{opacity:.6;cursor:grabbing;transform:scale(.96);box-shadow:inset 0 2px #fff6,inset 0 -3px 4px #0003,0 0 0 2px var(--led-orange),0 0 12px #ff8a2a80}body.is-pad-dragging,body.is-pad-dragging *{cursor:grabbing!important}.pad.pad--swap-target{background:linear-gradient(180deg,#fff5e8,#ffe0b2 35%,#ffb74d);box-shadow:inset 0 2px #fff,inset 0 -3px 4px #783c0033,inset 0 0 0 2px var(--led-orange),0 0 0 2px var(--led-orange),0 0 18px #ff8a2ab3}.pad.pad--swap-target .pad-num,.pad.pad--swap-target .pad-cap{color:#7a3800}@media(prefers-reduced-motion:no-preference){.pad.pad--swap-target{animation:pad-swap-pulse .6s ease-in-out infinite alternate}}@keyframes pad-swap-pulse{0%{box-shadow:inset 0 2px #fff,inset 0 -3px 4px #783c0033,inset 0 0 0 2px var(--led-orange),0 0 0 2px var(--led-orange),0 0 12px #ff8a2a80}to{box-shadow:inset 0 2px #fff,inset 0 -3px 4px #783c0033,inset 0 0 0 2px var(--led-orange),0 0 0 2px var(--led-orange),0 0 24px #ff8a2ae6}}.pad-drag-ghost{position:fixed;pointer-events:none;z-index:9999;transform:translate(14px,14px);display:flex;align-items:center;gap:5px;background:linear-gradient(135deg,#2a2a2e,#1a1a1e);border:1.5px solid var(--led-orange);border-radius:6px;padding:4px 8px 4px 6px;box-shadow:0 4px 14px #0000008c,0 0 10px #ff8a2a59;white-space:nowrap;-webkit-user-select:none;user-select:none}.pad-drag-ghost-icon{color:var(--led-orange);flex-shrink:0}.pad-drag-ghost-num{font-family:Antonio,sans-serif;font-weight:700;font-size:9px;color:var(--led-orange);letter-spacing:.06em}.pad-drag-ghost-label{font-family:Antonio,sans-serif;font-weight:700;font-size:9px;color:#ccc;letter-spacing:.05em;text-transform:uppercase;max-width:100px;overflow:hidden;text-overflow:ellipsis}.pad-drop-error{position:absolute;bottom:0;left:0;right:0;padding:3px 4px;background:#b4140aeb;color:#fff;font-family:Antonio,sans-serif;font-size:7px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:0 0 5px 5px;pointer-events:none;z-index:2}:root{--chassis: #ece6d6;--chassis-2: #ddd6c2;--chassis-edge: #c8c0a8;--chassis-shadow: #948e7c;--display: #0d0d10;--display-edge: #1a1a1f;--display-screen: #0a1410;--screen-fg: #d6f24a;--screen-mid: #6db8a8;--red: #d72524;--red-deep: #9b1715;--pad-base: #d3d2d2;--pad-base-2: #b9b8b8;--pad-rim: #6c6c70;--pad-glow: #2cc8f7;--pad-active: #ffd200;--pad-active-2: #ffae00;--btn-dark: #2c2c30;--btn-dark-2: #1a1a1d;--btn-stroke: #0a0a0c;--btn-text: #d6d4cc;--led-blue: #2cc8f7;--led-orange: #ff8a2a;--label: #4d4a40;--label-soft: #6e6a5c}.pad-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:8px}.pad{position:relative;aspect-ratio:1;border-radius:6px;background:linear-gradient(180deg,#e2e1df,#cfcecb 35%,#a8a7a4);box-shadow:inset 0 2px #fff,inset 0 -3px 4px #00000040,inset 0 0 0 2px #5e5e62,0 0 0 2px #061222,0 0 0 3px transparent;cursor:grab;-webkit-user-select:none;user-select:none;transition:box-shadow 80ms,background 80ms,transform 60ms}.pad:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:6px;pointer-events:none;background:radial-gradient(120% 70% at 50% 0%,rgba(255,255,255,.55),transparent 60%),radial-gradient(120% 60% at 50% 100%,rgba(0,0,0,.18),transparent 60%)}.pad-num{position:absolute;left:6px;top:4px;font-family:Antonio;font-weight:700;font-size:9px;color:#6e6c69;letter-spacing:.06em}.pad-cap{position:absolute;bottom:4px;left:6px;right:6px;font-family:Antonio;font-weight:700;font-size:8px;color:#6e6c69;text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pad-frame{background:linear-gradient(180deg,#181c22,#1e232b 60%,#141720);border-radius:10px;padding:10px;box-shadow:inset 0 2px 8px #000000b3,0 1px #ffffff0f}.pad.is-armed{box-shadow:inset 0 2px #fff,inset 0 -3px 4px #00000040,inset 0 0 0 2px #5e5e62,0 0 0 2px var(--led-blue),0 0 12px var(--led-blue)}.pad.is-press{background:linear-gradient(180deg,#fff7c8 0%,var(--pad-active) 35%,var(--pad-active-2) 100%);box-shadow:inset 0 2px #fff,inset 0 -3px 4px #78500066,inset 0 0 0 2px #8b6800,0 0 0 2px var(--pad-active),0 0 18px var(--pad-active);transform:translateY(1px)}.pad.is-press .pad-num,.pad.is-press .pad-cap{color:#5a3e00}@media(prefers-reduced-motion:reduce){.pad{transition:none}.pad.is-press{transform:none}}/*! tailwindcss v4.1.12 | 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-border-style:solid;--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}}}@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;--color-blue-500:oklch(62.3% .214 259.815);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--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%;-moz-tab-size:4;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;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.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}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.text-blue-500{color:var(--color-blue-500)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.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)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.mpc-frame{place-items:start center;width:100%;padding:32px 16px 80px;display:grid}.mpc{background:linear-gradient(180deg,#f4eeda 0%,var(--chassis)14%,var(--chassis)86%,var(--chassis-2)100%);transform-origin:top;border-radius:28px;width:920px;padding:18px 22px 0;position:relative;box-shadow:inset 0 1px #fffaee,inset 0 -2px #0000002e,inset 0 0 0 1px #5046282e,0 36px 80px #0000008c,0 8px #b0a88e,0 14px #8b8470,0 22px 30px #00000080}.mpc:before{content:"";pointer-events:none;background:radial-gradient(60% 40% at 50% 0,#ffffff4d,#0000 70%),radial-gradient(80% 50% at 50% 100%,#0000000f,#0000 70%);border-radius:22px;position:absolute;top:6px;right:6px;bottom:6px;left:6px}@media(max-width:952px){.mpc-frame{padding-inline:0}.mpc{transform:scale(min(1,calc((100vw - 16px)/920)));margin-bottom:calc((1 - min(1,calc((100vw - 16px)/920)))*-1280px)}}body.is-electron .mpc-frame{padding:0}body.is-electron .mpc{margin-bottom:0!important;transform:none!important}.wrist{background:linear-gradient(#b8b6b0,#9e9c95 60%,#7a786f);border-radius:16px;height:70px;margin:16px -12px -8px;position:relative;box-shadow:inset 0 2px 4px #fff6,inset 0 -2px 4px #0006,inset 0 0 0 1px #00000026,0 4px #5e5b54}.wrist:before{content:"";background:radial-gradient(80% 60%,#ffffff26,#0000 60%);border-radius:12px;position:absolute;top:6px;right:6px;bottom:6px;left:6px}.pad-bottom-row{letter-spacing:.1em;color:var(--label-soft);justify-content:space-between;margin-top:4px;padding:0 4px;font-family:Antonio;font-size:8.5px;display:flex}.display-panel{background:linear-gradient(#18181c,#0d0d10,#060608);border-radius:16px;grid-template-columns:100px 86px 1fr 150px;align-items:center;gap:14px;height:168px;padding:14px 18px;display:grid;position:relative;box-shadow:inset 0 1px #2a2a30,inset 0 -1px #000,inset 0 0 0 1px #000,0 2px #fff8e6,0 4px 8px #00000040}.display-panel:after{content:"";background:linear-gradient(#1a1a1d,#0a0a0c);border-radius:3px;width:14px;height:8px;position:absolute;top:-9px;left:50%;transform:translate(-50%);box-shadow:0 1px #fff8e6}.logo-area{flex-direction:column;justify-content:space-between;height:100%;padding:4px 0;display:flex}.akai-mark{color:var(--red);letter-spacing:.04em;text-shadow:0 1px #5a0c0c,0 -1px #ff6a55;font-family:Antonio,system-ui,sans-serif;font-size:30px;font-weight:700;line-height:.9}.akai-mark .pro{letter-spacing:.18em;color:#b6b1a4;text-transform:lowercase;text-shadow:none;margin-top:2px;font-family:Barlow Condensed,system-ui,sans-serif;font-size:11px;font-style:italic;font-weight:500;display:block}.mpc-mark{color:var(--red);letter-spacing:.06em;text-shadow:0 1px #5a0c0c;font-family:Antonio,system-ui,sans-serif;font-size:22px;font-weight:700;line-height:1}.top-utils{z-index:2;flex-direction:row;gap:6px;display:flex;position:absolute;top:8px;left:48%}.top-util-btn{cursor:pointer;background:linear-gradient(#2a2a2e,#0c0c0e);border:none;border-radius:4px;width:38px;height:18px;padding:0;box-shadow:inset 0 1px #44444a,inset 0 -1px #000,0 1px #2a2a2e}.top-util-btn:active{transform:translateY(1px);box-shadow:inset 0 1px 2px #0009,inset 0 -1px #000}.top-util-btn:focus-visible{outline-offset:2px;outline:2px solid #4ed7ff}.main-vol-wrap{flex-direction:column;align-items:center;gap:6px;padding-top:4px;display:flex}.main-vol-wrap .knob-name{display:none}.main-vol-label{color:#9a978d;letter-spacing:.12em;text-transform:uppercase;font-family:Antonio,system-ui,sans-serif;font-size:10px;font-weight:600}.screen{background:#06120e;border-radius:6px;height:132px;margin-top:18px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #0e0e10,inset 0 0 0 4px #1c1c20,inset 0 0 24px #d6f24a14,0 0 0 1px #2a2a30}.screen-inner{color:var(--screen-fg);grid-template-rows:18px 18px 1fr 16px;padding:4px 6px;font-family:JetBrains Mono,monospace;font-size:10px;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.scr-row{align-items:center;gap:8px;min-width:0;display:flex}.scr-row.top{color:#7fc7b6;justify-content:space-between;font-size:9px}.scr-bpm{color:#d6f24a;margin-right:2px;font-weight:700}.scr-tag{color:#b6e856;white-space:nowrap;text-overflow:ellipsis;background:#0f2a1f;border:1px solid #1d4534;border-radius:2px;max-width:100px;padding:1px 5px;overflow:hidden}.scr-tag.preset{color:#d6f24a;letter-spacing:.05em;border-color:#2c5b46;font-weight:700}.scr-tag.preset.playing{color:#001821;background:#2cc8f7;border-color:#4ed7ff;box-shadow:0 0 6px #2cc8f799}.scr-sample{color:#d6f24a;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:6px;min-width:0;font-size:11px;font-weight:700;display:flex;overflow:hidden}.scr-sample .badge{color:#9be0a8;background:#1a3a2c;border:1px solid #2c5b46;border-radius:2px;flex-shrink:0;padding:0 4px;font-size:9px}.scr-pads{flex-shrink:0;gap:2px;margin-left:auto;display:flex}.scr-pads>[class^=sp]{color:#9be0a8;background:#0c1f17;border:1px solid #2c5b46;place-items:center;width:11px;height:11px;font-size:8px;font-weight:700;display:grid}.scr-pads>.on{color:#0a1410;background:#d6f24a;border-color:#d6f24a}.scr-foot{color:#7fc7b6;border-top:1px solid #1d4534;gap:0;padding-top:2px;font-size:9px;display:flex}.scr-foot>div{text-align:center;border-right:1px dashed #1d4534;flex:1}.scr-foot>div:last-child{border-right:none}.scr-foot>.active{color:#0a1410;background:#d6f24a}.waveform{background:linear-gradient(#0000 49.5%,#1d4534 49.5%,#1d4534 50.5%,#0000 50.5%);width:100%;height:100%;position:relative}.waveform canvas{width:100%;height:100%;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.speaker{background:radial-gradient(circle at 1px 1px,#444 1px,#0000 1.4px) 0 0/4px 4px,linear-gradient(#0a0a0c,#1a1a1d);border-radius:8px;height:100px;box-shadow:inset 0 0 0 1px #2a2a30,inset 0 1px #3a3a40,inset 0 -1px #000}.mpc-banner,.mpc-banner-left{color:var(--red);text-shadow:0 1px #5a0c0c;background:var(--chassis);pointer-events:none;-webkit-user-select:none;user-select:none;padding:0 6px;font-family:Antonio,system-ui,sans-serif;font-weight:700;position:absolute;top:-16px}.mpc-banner{letter-spacing:.18em;font-size:13px;right:24px}.mpc-banner-left{letter-spacing:.32em;opacity:.85;text-shadow:none;font-size:11px;left:24px}.body-grid{grid-template-columns:140px 1fr 132px;align-items:start;gap:12px;margin-top:14px;padding:8px 6px 18px;display:grid}.col-left{flex-direction:column;align-items:center;gap:10px;display:flex}.col-center{flex-direction:column;gap:10px;min-width:0;display:flex}.col-right{flex-direction:column;align-items:center;gap:10px;display:flex}.knob-row{justify-content:space-around;align-items:flex-end;gap:16px;width:100%;padding:0 8px 8px;display:flex}.start-overlay{-webkit-backdrop-filter:blur(6px);z-index:100;opacity:1;background:#080a0edb;justify-content:center;align-items:center;padding:24px;transition:opacity .22s;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.start-overlay.hide{opacity:0;pointer-events:none}.start-card{background:linear-gradient(180deg,#f4eeda 0%,var(--chassis)14%,var(--chassis)86%,var(--chassis-2)100%);text-align:center;color:#2c2922;border-radius:16px;width:100%;max-width:480px;padding:28px 32px 32px;box-shadow:inset 0 1px #fffaee,inset 0 -2px #0000002e,inset 0 0 0 1px #5046282e,0 36px 80px #0000008c}.start-card h2{letter-spacing:.12em;color:var(--red);margin:0 0 10px;font-family:Antonio,system-ui,sans-serif;font-size:32px;font-weight:700}.start-card p{color:#4d4a40;margin:0 0 20px;font-family:Barlow Condensed,system-ui,sans-serif;font-size:14px;line-height:1.5}.start-card p b{color:#2c2922;background:#0000000f;border-radius:3px;padding:1px 5px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.start-guide{color:#4d4a40;text-align:left;flex-direction:column;gap:6px;margin:0 0 20px;padding:0;font-family:Barlow Condensed,system-ui,sans-serif;font-size:13px;line-height:1.55;list-style:none;display:flex}.start-guide li{padding-left:14px;position:relative}.start-guide li:before{content:"›";color:var(--red);font-weight:700;position:absolute;left:0}.start-guide b{color:#2c2922;font-weight:700}.start-guide code{color:#2c2922;background:#0000000f;border-radius:3px;padding:1px 4px;font-family:JetBrains Mono,monospace;font-size:11px}.start-card button{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;letter-spacing:.18em;color:#fff;background:linear-gradient(180deg,#ff6a5a 0%,var(--red)55%,var(--red-deep)100%);box-shadow:inset 0 1px #fff6,inset 0 -2px #00000040,0 4px 0 var(--red-deep),0 8px 16px #9b171566;text-transform:uppercase;border:none;border-radius:8px;padding:14px 36px;font-family:Antonio,system-ui,sans-serif;font-size:18px;font-weight:700;transition:transform 80ms,box-shadow 80ms}.start-card button:hover:not(:disabled){box-shadow:inset 0 1px #ffffff80,inset 0 -2px #00000040,0 6px 0 var(--red-deep),0 10px 20px #9b171580;transform:translateY(-1px)}.start-card button:active:not(:disabled){box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #00000040,0 2px 0 var(--red-deep),0 4px 8px #9b17154d;transform:translateY(2px)}.start-card button:disabled{cursor:not-allowed;opacity:.7;transform:translateY(1px)}.start-card button:focus-visible{outline-offset:3px;outline:3px solid #4ed7ff}.hud{z-index:50;-webkit-backdrop-filter:blur(8px);color:#cfd6e4;letter-spacing:.04em;background:#0f1623d9;border:1px solid #ffffff14;border-radius:8px;flex-direction:column;gap:4px;max-width:320px;padding:10px 14px;font-family:Barlow Condensed,system-ui,sans-serif;font-size:12px;display:flex;position:fixed;bottom:16px;left:16px;box-shadow:0 8px 24px #0006}.hud b{color:#fff;letter-spacing:.08em;font-weight:700}.hud .midi-state{align-items:center;gap:6px;display:flex}.hud .dot{background:#f54;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 6px #f549}.hud .dot.ok{background:#3cf28a;box-shadow:0 0 6px #3cf28ab3}.mpc-viewport{cursor:default;-webkit-user-select:none;user-select:none;width:100%;height:100%;min-height:100vh;position:relative;overflow:hidden}.mpc-viewport.is-dragging{cursor:grabbing}.mpc-stage{transform-origin:top;will-change:transform;transition:transform .2s}body.is-electron .mpc-viewport{zoom:var(--mpc-scale,1);width:920px;height:auto;min-height:0}.mpc-stage--scaled .mpc{margin-bottom:0!important;transform:scale(1)!important}.mpc-drag-handle{z-index:0;cursor:grab;position:absolute;top:0;right:0;bottom:0;left:0}.mpc-drag-handle:active{cursor:grabbing}.mpc-frame{z-index:1;position:relative}.zoom-controls{-webkit-backdrop-filter:blur(8px);z-index:100;pointer-events:auto;background:#0c0f15d9;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;display:flex;position:fixed;bottom:24px;right:24px}.zoom-btn{color:#e0ddd5;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-family:Barlow Condensed,system-ui,sans-serif;font-size:16px;font-weight:600;line-height:1;transition:background .15s,border-color .15s;display:flex}.zoom-btn:hover{background:#ffffff1f;border-color:#ffffff47}.zoom-btn:active{background:#ffffff2e}.zoom-btn:focus-visible{outline-offset:1px;outline:2px solid #ffd200}.zoom-readout{text-align:center;letter-spacing:.05em;color:#c8c4b8;min-width:44px;font-family:Barlow Condensed,system-ui,sans-serif;font-size:13px;font-weight:600}.zoom-divider{background:#ffffff1f;width:1px;height:18px;margin:0 2px}@media(prefers-reduced-motion:reduce){.zoom-btn{transition:none}}.launcher-overlay{z-index:2000;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.launcher-dialog{color:#e7ecf6;background:#0d1724;border:1px solid #ffffff1f;border-radius:10px;outline:none;flex-direction:column;gap:20px;width:90vw;min-width:340px;max-width:440px;padding:32px 28px 28px;font-family:inherit;display:flex;box-shadow:0 12px 40px #000000b3}.launcher-heading{letter-spacing:.1em;text-transform:uppercase;color:#ffd200;margin:0;font-size:14px;font-weight:700}.launcher-subhead{color:#6e7b94;letter-spacing:.03em;margin:4px 0 0;font-size:12px}.launcher-actions{flex-direction:column;gap:10px;display:flex}.launcher-action-btn{color:#cfd6e4;cursor:pointer;text-align:left;background:#ffffff0d;border:1px solid #ffffff21;border-radius:6px;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 16px;font-family:inherit;transition:background .13s,border-color .13s;display:flex}.launcher-action-btn:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff40}.launcher-action-btn:focus-visible{outline-offset:2px;outline:2px solid #ffd200}.launcher-action-btn:disabled{opacity:.5;cursor:not-allowed}.launcher-action-btn.primary{color:#ffd200;background:#ffd2001a;border-color:#ffd2004d}.launcher-action-btn.primary:hover:not(:disabled){background:#ffd2002e;border-color:#ffd20080}.launcher-btn-label{letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:600}.launcher-btn-hint{color:#6e7b94;text-transform:none;letter-spacing:0;font-size:11px;font-weight:400}.launcher-action-btn.primary .launcher-btn-hint{color:#ffd200a6}.launcher-loading{color:#9aa3b8;align-items:center;gap:10px;padding:4px 0;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.launcher-spinner{border:2px solid #ffd20040;border-top-color:#ffd200;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite launcher-spin;display:inline-block}@media(prefers-reduced-motion:reduce){.launcher-spinner{border-top-color:#ffd200;animation:none}}@keyframes launcher-spin{to{transform:rotate(360deg)}}.launcher-error{color:#ff6b6b;word-break:break-word;background:#ff6b6b1a;border:1px solid #ff6b6b40;border-radius:4px;padding:10px 12px;font-size:12px;line-height:1.5}*{box-sizing:border-box}html,body{color:#fff;-webkit-font-smoothing:antialiased;background:#0c0f15;margin:0;padding:0;font-family:Barlow Condensed,system-ui,sans-serif}body{background:radial-gradient(1200px 700px at 50% 30%,#1f3a5e,#15233b 45%,#07101e);place-items:center;min-height:100vh;padding:32px 16px 80px;display:grid}body.is-electron{background:#ece6d6;padding:0;overflow:hidden}@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-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}
