:root{--paint-vol-rgb: 100,180,160;--paint-snd-rgb: 255,144,96}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:var(--bg-main, #0f0f1a);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;color:#e8e8f0;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;padding-top:env(safe-area-inset-top,0px)}.app--bg-image{background-size:cover;background-position:center}.main-area{flex:1 1 0;position:relative;min-height:0;overflow:hidden;touch-action:none}.main-area--focus{position:absolute;top:0;right:0;bottom:0;left:0;z-index:11}.canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--bg-main, #0f0f1a);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;cursor:pointer}.splash__logo{color:#ffffffb3;animation:rainbow-color 4s ease-in-out 3.7s forwards}.splash__title{font-size:20px;font-weight:300;letter-spacing:6px;text-transform:uppercase;display:flex}.splash__letter{color:#ffffff26;animation:rainbow-wave 2.4s ease-out forwards}@keyframes rainbow-wave{0%{color:#ff3b3b;transform:scale(1)}8%{color:#ff8c1a;transform:scale(1.3)}16%{color:#ffe01a;transform:scale(1.2)}24%{color:#3bff6f;transform:scale(1.25)}32%{color:#1ad4ff;transform:scale(1.15)}40%{color:#6b5bff;transform:scale(1.2)}48%{color:#d94fff;transform:scale(1.1)}60%{color:#ff3b8a;transform:scale(1.05)}75%{color:#f5d76e;transform:scale(1.02)}to{color:#f0d060;transform:scale(1)}}@keyframes rainbow-color{0%{color:#ff3b3b}12%{color:#ff8c1a}24%{color:#ffe01a}36%{color:#3bff6f}48%{color:#1ad4ff}60%{color:#6b5bff}72%{color:#d94fff}85%{color:#f5d76e}to{color:#f0d060}}.splash__sub{font-size:13px;letter-spacing:2px;color:transparent;animation:color-throb 24s ease-in-out 4s infinite}@keyframes color-throb{0%{color:#ff3b3b40}8%{color:#ff3b3b80}16%{color:#ff8c1a40}25%{color:#ff8c1a80}33%{color:#3bff6f40}41%{color:#3bff6f80}50%{color:#1ad4ff40}58%{color:#1ad4ff80}66%{color:#6b5bff40}75%{color:#6b5bff80}83%{color:#d94fff40}91%{color:#d94fff80}to{color:#ff3b3b40}}.ta-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;background:#0006}.ta-sheet{background:var(--bg-sheet, #16162a);border-radius:20px 20px 0 0;width:100%;max-width:380px;display:flex;flex-direction:column;animation:bs-slide-up .25s ease-out;pointer-events:auto}.ta-tabs{display:flex;gap:0;padding:0 20px}.ta-tab{flex:1;padding:8px 0;border:none;background:none;cursor:pointer;font-size:13px;font-weight:600;color:#ffffff4d;border-bottom:2px solid transparent;transition:all .15s}.ta-tab--active{color:#fffc;border-bottom-color:#b48cff99}.ta-body{padding:8px 20px 24px;display:flex;flex-direction:column;gap:20px}.ta-direction{display:flex;justify-content:center}.ta-direction__badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:4px 12px;border-radius:20px}.ta-direction__badge--accel{color:#7cf0b0;background:#78f0aa1a}.ta-direction__badge--decel{color:#f0a07c;background:#f0a0781a}.ta-direction__badge--none{color:#ffffff4d;background:#ffffff0a}.ta-tempos{display:flex;align-items:center;gap:12px;justify-content:center}.ta-tempo-field{display:flex;flex-direction:column;align-items:center;gap:4px}.ta-label{font-size:11px;font-weight:600;color:#ffffff59;text-transform:uppercase;letter-spacing:.06em}.ta-tempo-value{font-size:36px;font-weight:200;color:#fff;line-height:1;letter-spacing:-2px;padding:4px 12px;border-radius:10px;background:#ffffff0a;min-width:80px;text-align:center}.ta-arrow{color:#fff3;flex-shrink:0;padding-top:14px}.ta-bars-row{display:flex;align-items:center;justify-content:center;gap:10px}.ta-bars-stepper{display:flex;align-items:center;gap:0}.ta-bars-stepper button{width:36px;height:36px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#fff9;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.ta-bars-stepper button:first-child{border-radius:8px 0 0 8px}.ta-bars-stepper button:last-child{border-radius:0 8px 8px 0}.ta-bars-stepper button:active{background:#ffffff14}.ta-bars-value{min-width:40px;text-align:center;font-size:20px;font-weight:300;color:#fff;padding:0 4px;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);height:36px;display:flex;align-items:center;justify-content:center}.ta-bars-unit{font-size:13px;color:#ffffff59}.ta-loop-row{display:flex;align-items:center;justify-content:center;gap:10px}.ta-loop-toggle{display:flex;gap:4px}.ta-loop-btn{width:44px;height:36px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0a;color:#ffffff59;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.ta-loop-btn:active{transform:scale(.92)}.ta-loop-btn--active{border-color:#78dcb466;color:#78dcb4cc;background:#78dcb41a}.ta-actions{display:flex;gap:10px;justify-content:center;padding-top:4px}.ta-btn{padding:10px 24px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.ta-btn:disabled{opacity:.3;cursor:default}.ta-btn--apply{background:#b48cff80;color:#0f0f1a}.ta-btn--apply:active:not(:disabled){opacity:.8}.ta-btn--clear{background:#ffffff0f;color:#ffffff80}.ta-btn--clear:active{background:#ffffff1a}.ta-schedule-rows{display:flex;flex-direction:column;gap:8px}.ta-sched-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.ta-sched-num{width:18px;height:18px;border-radius:50%;background:#ffffff0f;color:#ffffff59;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ta-sched-field{display:flex;align-items:baseline;gap:3px}.ta-sched-unit{font-size:10px;color:#ffffff40;text-transform:uppercase}.ta-sched-for{font-size:11px;color:#ffffff40;flex-shrink:0}.ta-tempo-value--sm{font-size:20px;min-width:36px;padding:4px 6px}.ta-sched-remove{width:22px;height:22px;border:none;border-radius:50%;margin-left:auto;background:#ef53501a;color:#ef535080;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.ta-sched-remove:active{background:#ef535033}.ta-sched-entry{display:flex;flex-direction:column;gap:6px}.ta-sched-trans{display:flex;align-items:center;gap:10px;padding:6px 10px 6px 28px}.ta-sched-trans__line{width:12px;border-top:1px dashed rgba(180,140,255,.25);flex-shrink:0}.ta-sched-trans__type{border:1px solid rgba(180,140,255,.2);border-radius:6px;background:#b48cff0f;color:#b48cffb3;font-size:10px;font-weight:600;padding:2px 8px;cursor:pointer;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;transition:all .15s}.ta-sched-trans__type:active{transform:scale(.92)}.ta-sched-trans__val{font-size:14px;font-weight:700;color:#b48cff99;min-width:24px;text-align:center;padding:1px 4px;background:#b48cff0f;border-radius:4px}.ta-sched-trans__stop-label{font-size:10px;font-weight:600;color:#ef535080;text-transform:uppercase;letter-spacing:.04em}.ta-sched-add{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;border:1px dashed rgba(255,255,255,.1);border-radius:10px;background:none;color:#ffffff4d;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.ta-sched-add:active{background:#ffffff0a}.ta-mode-btn{height:36px;padding:0 18px;border-radius:10px;border:1px solid transparent;background:#ffffff0a;color:#fff6;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.ta-mode-btn:hover{color:#ffffffb3}.ta-mode-btn:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.ta-mode-btn.ta-loop-btn--active{color:rgb(var(--accent-rgb, 120,220,180))}.ta-prob{display:flex;flex-direction:column}.ta-prob__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.ta-prob__value{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums;color:rgb(var(--accent-rgb, 120,220,180))}.ta-prob__slider{width:100%;height:26px;margin:0;padding:0;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.ta-prob__slider:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:4px;border-radius:6px}.ta-prob__slider::-webkit-slider-runnable-track{height:10px;border-radius:5px;background:linear-gradient(to right,rgb(var(--accent-rgb, 120,220,180)) var(--pct, 0%),rgba(255,255,255,.08) var(--pct, 0%))}.ta-prob__slider::-moz-range-track{height:10px;border-radius:5px;background:#ffffff14}.ta-prob__slider::-moz-range-progress{height:10px;border-radius:5px;background:rgb(var(--accent-rgb, 120,220,180))}.ta-prob__slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;margin-top:-8px;border-radius:50%;background:rgb(var(--accent-rgb, 120,220,180));border:3px solid var(--bg-sheet, #16162a);box-shadow:0 1px 3px #0006}.ta-prob__slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:rgb(var(--accent-rgb, 120,220,180));border:3px solid var(--bg-sheet, #16162a)}.ta-prob__hint{margin:12px 0 0;font-size:12px;color:#fff6;text-align:center}.ta-sched-total{text-align:center;font-size:12px;color:#ffffff4d;font-weight:500}.beat-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.beat-hitarea,.subbeat-hitarea,.center-bullseye-btn{position:absolute;border-radius:50%;transform:translate(-50%,-50%);pointer-events:auto;cursor:pointer;background:transparent;border:none;padding:0;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:background .12s ease,box-shadow .12s ease}.center-bullseye-btn{z-index:3}.beat-hitarea:active,.subbeat-hitarea:active,.center-bullseye-btn:active{background:#ffffff12}.beat-hitarea:focus-visible,.subbeat-hitarea:focus-visible,.center-bullseye-btn:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(var(--accent-rgb, 120,220,180),.75)}@media(hover:hover){.beat-hitarea:hover,.subbeat-hitarea:hover,.center-bullseye-btn:hover{background:#ffffff0d}}.paint-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;touch-action:none;cursor:crosshair;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.paint-dot{position:absolute;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;background:transparent;border:none;padding:0}.paint-dot:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(var(--accent-rgb, 120,220,180),.75)}.circle-zoom{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:center center}.main-area--zoomed .circle-zoom,.circle-zoom--settling{will-change:transform}.circle-zoom--settling{transition:transform .18s cubic-bezier(.4,0,.2,1)}@media(prefers-reduced-motion:reduce){.circle-zoom--settling{transition:none}}.main-area--zoomed{overflow:hidden;cursor:grab}.main-area--zoomed:active{cursor:grabbing}.vfader-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20}.vfader-backdrop{position:absolute;top:0;right:0;bottom:0;left:0}.vfader{position:absolute;display:flex;flex-direction:column;align-items:center;padding:12px 0;background:var(--bg-sheet, #16161f);border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:0 8px 24px #00000080;touch-action:none}.vfader__value{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;color:#64b4a0;margin-bottom:8px}.vfader__track-area{flex:1;width:40px;position:relative;display:flex;align-items:center;justify-content:center;cursor:ns-resize;touch-action:none}.vfader__track-area:focus-visible{outline:2px solid rgba(100,180,160,.7);outline-offset:4px;border-radius:10px}.vfader__track{width:14px;height:100%;border-radius:7px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);overflow:hidden;display:flex;align-items:flex-end}.vfader__fill{width:100%;border-radius:7px;background:#64b4a0}.vfader__thumb{position:absolute;width:30px;height:30px;margin-bottom:-15px;border-radius:50%;background:#64b4a0;border:3px solid var(--bg-sheet, #0f0f1a);pointer-events:none}.slot-edit-bar{position:absolute;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none}.slot-edit-bar__label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fff6}.slot-edit-btn{pointer-events:auto;cursor:pointer;padding:9px 18px;border-radius:12px;border:1px solid transparent;font-size:14px;font-weight:600;transition:background .15s ease,border-color .15s ease}.slot-edit-btn--cancel{background:#1e1e2aeb;border-color:#ffffff26;color:#ffffffbf}.slot-edit-btn--cancel:hover{background:#282838f2}.slot-edit-btn--save{background:rgba(var(--accent-rgb, 120,220,180),.16);border-color:rgba(var(--accent-rgb, 120,220,180),.5);color:rgb(var(--accent-rgb, 120,220,180));font-weight:700}.slot-edit-btn--save:hover{background:rgba(var(--accent-rgb, 120,220,180),.26)}@keyframes bs-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bs-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 2px;flex-shrink:0}.bs-header-label{font-size:11px;font-weight:500;color:#fff6;text-transform:uppercase;letter-spacing:.05em}.bs-close-btn{background:none;border:none;cursor:pointer;color:#ffffff59;padding:2px;border-radius:6px}.bs-close-btn:active{background:#ffffff0f}.ld-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none}.ld-overlay[data-open=true]{pointer-events:auto}.ld-overlay[data-open=true] .ld-backdrop{opacity:1}.ld-overlay[data-open=true] .ld-panel{transform:translate(0)}.ld-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;opacity:0;transition:opacity .25s ease}.ld-panel{position:absolute;top:0;left:0;bottom:0;width:88vw;max-width:340px;background:var(--bg-sheet, #16162a);border-right:1px solid rgba(255,255,255,.06);transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.ld-tabs{display:flex;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06);padding:0 8px}.ld-tab{flex:1;padding:14px 0 12px;border:none;background:none;color:#ffffff59;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}.ld-tab--active{color:#fffc;border-bottom-color:rgba(var(--accent-rgb, 120,220,180),.5)}.ld-content{flex:1;overflow-y:auto;padding:16px}.ld-version{flex-shrink:0;text-align:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.08);font-size:11px;font-weight:500;letter-spacing:.3px;color:#ffffff4d}.ld-option-row--danger{align-items:flex-start;margin-top:8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}.ld-option-hint{display:block;margin-top:2px;font-size:11px;line-height:1.35;color:#ffffff4d}.ld-reset-btn{flex-shrink:0;padding:7px 14px;border-radius:8px;border:1px solid rgba(239,83,80,.25);background:#ef535014;color:#ef5350e6;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}.ld-reset-btn:hover{background:#ef535029;border-color:#ef535073}.ld-reset-btn:focus-visible{outline:2px solid rgba(239,83,80,.8);outline-offset:2px}.ld-reset-btn--armed{background:#ef5350d9;border-color:#ef5350e6;color:#0f0f1a}.ld-reset-btn--armed:hover{background:#ef5350}.ld-stepper__value{min-width:28px;text-align:center;font-size:14px;font-weight:700;color:#ffffffbf;font-variant-numeric:tabular-nums}.ld-option-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.04)}.ld-option-label{font-size:14px;color:#fff9}.ld-toggle{width:44px;height:26px;border-radius:13px;border:none;background:#ffffff1a;cursor:pointer;position:relative;transition:background .2s;padding:0}.ld-toggle--on{background:#78dcb466}.ld-toggle__knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fffc;transition:transform .2s}.ld-toggle--on .ld-toggle__knob{transform:translate(18px)}.ld-section{margin-bottom:20px}.ld-stepper{display:flex;align-items:center;gap:4px}.ld-stepper__btn{width:32px;height:32px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#ffffff0a;color:#ffffff80;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.ld-stepper__btn:active{background:#ffffff14}.mini-wheel{flex-shrink:0}@keyframes pop-in{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}.seq-strip{flex:0 0 auto;z-index:9;height:52px;padding:0 10px;display:flex;align-items:center;background:linear-gradient(180deg,var(--strip-top, rgba(45,35,70,.92)) 0%,var(--strip-bottom, rgba(30,25,55,.95)) 100%);border-top:1px solid var(--strip-border-top, rgba(140,110,200,.08));border-bottom:1px solid var(--strip-border-bottom, rgba(140,110,200,.15))}.seq-strip__scroll{display:flex;gap:8px;align-items:center;overflow-x:auto;height:100%;flex:1;min-width:0;scrollbar-width:none;-webkit-overflow-scrolling:touch}.seq-strip__scroll::-webkit-scrollbar{display:none}.seq-play{flex-shrink:0;width:40px;height:40px;margin-right:6px;border:1px solid rgba(120,220,180,.25);border-radius:50%;background:#78dcb40f;color:#78dcb499;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.seq-play:active{transform:scale(.9)}.seq-play--playing{border-color:#ef535066;background:#ef53501a;color:#ef5350cc}.seq-loop{flex-shrink:0;width:40px;height:40px;margin-left:6px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:transparent;color:#ffffff4d;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.seq-loop:active{transform:scale(.9)}.seq-loop--active{border-color:#78dcb44d;color:#78dcb499;background:#78dcb40f}.seq-clear-all{flex-shrink:0;width:40px;height:40px;margin-left:4px;border:1px solid rgba(239,83,80,.15);border-radius:8px;background:#ef53500f;color:#ef535080;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.seq-clear-all:active{background:#ef53502e;color:#ef5350e6;transform:scale(.92)}.seq-clear-all--confirm{border-color:#ef535080;background:#ef535026;color:#ef5350e6}.seq-slot{flex-shrink:0;width:40px;height:40px;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:#ffffff0a;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transition:all .15s ease}.seq-slot:active{transform:scale(.95)}.seq-slot--selected{border-color:#b39ddb66;background:#b39ddb14}.seq-slot--playing{border-color:#78dcb480;background:#78dcb41a;box-shadow:0 0 8px #78dcb433;animation:slot-pulse 1s ease-in-out infinite}@keyframes slot-pulse{0%,to{box-shadow:0 0 8px #78dcb433}50%{box-shadow:0 0 14px #78dcb459}}.seq-slot--live{border-color:#ef785066;background:#ef785014}.seq-slot__live-dot{position:absolute;top:-2px;left:-2px;width:6px;height:6px;border-radius:50%;background:#ef6450e6;animation:live-pulse 1.2s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.3}}.seq-slot--dirty{border-style:dashed;border-color:#ffc86466;background:#ffc8640d}.seq-slot__reps{position:absolute;bottom:0;right:0;font-size:9px;font-weight:600;color:#ffffff59;line-height:1}.seq-slot--playing .seq-slot__reps{color:#78dcb4b3}.seq-slot--live .seq-slot__reps{color:#ef8c6499}.seq-slot--dirty .seq-slot__reps{color:#ffc86480}.seq-slot__remove{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border:none;border-radius:50%;background:#ef535040;color:#ef5350cc;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.seq-add{flex-shrink:0;width:42px;height:42px;border-radius:8px;border:1.5px dashed rgba(255,255,255,.15);background:transparent;color:#ffffff4d;font-size:22px;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center}.seq-add:active{background:#ffffff0f;border-color:#78dcb44d;color:#78dcb4b3}.seq-reps-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100}.seq-reps-dialog{position:fixed;z-index:101;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-dialog, #1e1e36);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:20px;min-width:200px;box-shadow:0 8px 32px #0009;animation:pop-in .15s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column;align-items:center;gap:16px}.seq-reps-label{font-size:13px;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.08em}.seq-reps-stepper{display:flex;align-items:center;gap:8px}.seq-reps-stepper button{width:40px;height:40px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0a;color:#fff9;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.seq-reps-stepper button:active{background:#ffffff14}.seq-reps-stepper input{width:56px;height:40px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0f;color:#fff;font-size:18px;font-weight:700;text-align:center;outline:none}.seq-reps-stepper input:focus{border-color:#78dcb466}.seq-edit-circle{width:100%;padding:10px 18px;border-radius:10px;border:1px solid rgba(var(--accent-rgb, 120,220,180),.4);background:rgba(var(--accent-rgb, 120,220,180),.1);color:rgb(var(--accent-rgb, 120,220,180));font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease}.seq-edit-circle:hover{background:rgba(var(--accent-rgb, 120,220,180),.18)}.seq-edit-circle:active{transform:scale(.98)}.seq-reps-done{padding:10px 32px;border:none;border-radius:8px;background:#78dcb480;color:#0f0f1a;font-size:14px;font-weight:700;cursor:pointer}.seq-reps-done:active{transform:scale(.96)}.bs-theme-card{padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:transparent;cursor:pointer;text-align:left;transition:all .15s;width:100%;color:inherit}.bs-theme-card:active{transform:scale(.98)}.bs-theme-card--active{border-color:#a0a0a080;background:#ffffff0a}.bs-theme-card__label{font-size:15px;font-weight:600;color:#ffffffd9}.bs-theme-card__desc{font-size:11px;color:#ffffff59;margin-top:3px}.bs-theme-card__swatches{display:flex;gap:6px;margin-top:10px}.bs-theme-swatch{width:20px;height:20px;border-radius:50%;flex-shrink:0}.bs-arrow-preview{margin-top:8px}.seq-save-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#00000080;display:flex;align-items:center;justify-content:center}.seq-save-prompt{background:var(--bg-sheet, #16162a);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;max-width:280px;text-align:center;animation:pop-in .15s cubic-bezier(.34,1.56,.64,1)}.seq-save-prompt__text{font-size:14px;color:#ffffff80;margin-bottom:16px}.seq-save-prompt__actions{display:flex;gap:12px;justify-content:center}.seq-save-prompt__btn{padding:8px 20px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:transparent;color:#fff9;font-size:14px;cursor:pointer}.seq-save-prompt__btn--confirm{background:#78dcb480;color:#0f0f1a;border-color:transparent}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(min-width:600px){.seq-strip{height:48px;padding:0 16px}.sheet{max-width:520px;margin:0 auto;border:1px solid rgba(255,255,255,.06);border-bottom:none}.ld-panel{max-width:380px}}@media(min-width:1024px){.ld-panel{max-width:400px}}.theme-light body,.theme-light{color:#1a1a2e}.theme-light .tb-btn{color:#1a1a2e99;background:#1a1a2e0d}.theme-light .tb-tempo__num{color:#1a1a2e}.theme-light .tb-vol,.theme-light .tb-meter{background:#1a1a2e0f}.theme-light .tb-vol__icon{color:#1a1a2e66}.theme-light .tb-vol__num{color:#1a1a2eb3}.theme-light .tb-meter__num{color:#1a1a2e}.theme-light .ruler{background:#1a1a2e0d;border-color:#1a1a2e0f}.theme-light .ruler__tick:before,.theme-light .ruler__tick:after{background:#1a1a2e33}.theme-light .ruler__tick--major:before,.theme-light .ruler__tick--major:after{background:#1a1a2e59}.theme-light .ruler__label{color:#96691e;background-image:none}.theme-light .corner-btn{color:#1a1a2e8c}.theme-light .toast{background:#1a1a2e14;color:#1a1a2ecc}.theme-light .bs-header-label{color:#1a1a2e99}.theme-light .bs-close-btn{color:#1a1a2e8c}.theme-light .seq-slot{border-color:#1a1a2e26;color:#1a1a2e66}.theme-light .vfader{border-color:#1a1a2e1f}.theme-light .vfader__track{background:#1a1a2e1a;border-color:#1a1a2e1f}.theme-light .slot-edit-bar__label{color:#1a1a2e80}.theme-light .slot-edit-btn--cancel{background:#1a1a2e0f;border-color:#1a1a2e2e;color:#1a1a2ebf}.theme-light .bs-theme-card{border-color:#1a1a2e1f}.theme-light .bs-theme-card__label{color:#1a1a2ecc}.theme-light .bs-theme-card__desc{color:#1a1a2e80}.notation-staff{flex:0 0 auto;width:100%;overflow-x:auto;overflow-y:hidden;display:flex;justify-content:center;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab}.notation-staff::-webkit-scrollbar{display:none}.notation-staff:active{cursor:grabbing}.ns-svg{display:block;flex-shrink:0}.ns-line{stroke:#ffffff26}.ns-notehead{fill:#fff9}.ns-stem{stroke:#fff9}.ns-beam{fill:#fff9}.ns-rest-path{stroke:#fff6}.ns-rest-dot{fill:#fff6}.ns-rest-slash{stroke:#fff6}.ns-flag{stroke:#fff9}.ns-tuplet line{stroke:#ffffff59}.ns-tuplet-num{fill:#ffffff80}.ns-timesig{fill:#ffffff8c;font-family:-apple-system,sans-serif}.ns-barline{stroke:#fff6}.theme-light .ns-line{stroke:#1a1a2e26}.theme-light .ns-notehead{fill:#1a1a2ea6}.theme-light .ns-stem{stroke:#1a1a2ea6}.theme-light .ns-beam{fill:#1a1a2ea6}.theme-light .ns-rest-path{stroke:#1a1a2e66}.theme-light .ns-rest-dot{fill:#1a1a2e66}.theme-light .ns-rest-slash{stroke:#1a1a2e66}.theme-light .ns-flag{stroke:#1a1a2ea6}.theme-light .ns-tuplet line{stroke:#1a1a2e4d}.theme-light .ns-tuplet-num{fill:#1a1a2e80}.theme-light .ns-timesig{fill:#1a1a2e99}.theme-light .ns-barline{stroke:#1a1a2e66}.topbar{--ui: clamp(.82px, calc(100vw / 390), 1px);flex:0 0 auto;z-index:10;display:flex;flex-direction:column;align-items:center;width:100%;gap:8px;padding:8px 14px;transition:opacity .3s ease}.topbar--hidden{opacity:0;pointer-events:none}.topbar__row{display:flex;align-items:center;width:100%;gap:calc(var(--ui) * 6)}.tb-menu{order:1}.tb-auto{order:2;margin-right:calc(var(--ui) * 2)}.topbar__center{order:4;display:flex;align-items:center;justify-content:center;margin:0 auto}.tb-vol{order:5}.tb-fav{order:6}.tb-meter{order:7}@media(max-width:430px){.tb-vol{order:3}.tb-vol__num{display:none}}.topbar__ruler{width:100%;max-width:440px}.tb-btn{flex-shrink:0;width:calc(var(--ui) * 50);height:calc(var(--ui) * 50);border:none;border-radius:calc(var(--ui) * 13);background:#ffffff0a;color:#ffffff59;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,transform .1s ease}.tb-btn>svg{width:calc(var(--ui) * 25);height:calc(var(--ui) * 25)}.tb-btn:hover{background:#ffffff14;color:#ffffff8c}.tb-btn:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.tb-btn:active{transform:scale(.92)}.tb-auto>svg{width:calc(var(--ui) * 26);height:calc(var(--ui) * 26)}.tb-auto--armed{background:rgba(var(--accent-rgb, 120,220,180),.12);color:rgba(var(--accent-rgb, 120,220,180),.75)}.tb-auto--running{color:rgba(var(--accent-rgb, 120,220,180),.95)}.tb-auto--armed:hover{background:rgba(var(--accent-rgb, 120,220,180),.18)}.tb-fav{color:var(--fav-color, rgba(240,120,140,.65))}.tb-fav:hover{color:var(--fav-color, rgba(240,120,140,.65));background:var(--fav-border, rgba(240,120,140,.15))}.tb-tempo{position:relative;min-width:calc(var(--ui) * 60);display:flex;align-items:center;justify-content:center;padding:0 6px;border-radius:12px;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;-webkit-tap-highlight-color:transparent}.tb-tempo:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.tb-tempo__num{font-size:calc(var(--ui) * 34);line-height:calc(var(--ui) * 38);font-weight:200;letter-spacing:-1px;color:#fff;font-variant-numeric:tabular-nums}.tb-vol{display:flex;align-items:center;gap:4px;flex-shrink:0;padding:calc(var(--ui) * 7) calc(var(--ui) * 10);border-radius:999px;background:#ffffff0a;cursor:ns-resize;-webkit-user-select:none;user-select:none;touch-action:none}.tb-vol:hover{background:#ffffff12}.tb-vol:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.tb-vol__icon{color:#ffffff59;flex-shrink:0}.tb-vol__num{font-size:calc(var(--ui) * 17);font-weight:300;line-height:1;color:#ffffffb3;min-width:15px;text-align:center;font-variant-numeric:tabular-nums}.tb-meter{display:flex;align-items:center;flex-shrink:0;padding:calc(var(--ui) * 8) calc(var(--ui) * 15);border-radius:999px;background:#ffffff0a;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;-webkit-tap-highlight-color:transparent}.tb-meter:hover{background:#ffffff12}.tb-meter:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.tb-meter__num{font-size:calc(var(--ui) * 21);line-height:calc(var(--ui) * 25);font-weight:300;color:#fffffff2;font-variant-numeric:tabular-nums}@media(min-width:700px){.topbar{--ui: 1.15px}}.ruler{position:relative;width:100%;height:52px;overflow:hidden;border-radius:12px;background:#00000047;border:.5px solid rgba(255,255,255,.05)}.ruler__scroll{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;touch-action:pan-x}.ruler__scroll:active{cursor:grabbing}.ruler__scroll::-webkit-scrollbar{display:none}.ruler__content{position:relative;height:100%}.ruler__tick{position:absolute;top:0;bottom:0;width:var(--tick-w, 1px);scroll-snap-align:center}.ruler__tick:before,.ruler__tick:after{content:"";position:absolute;left:0;width:100%;height:var(--tick-len, 7px);background:#ffffff29}.ruler__tick:before{top:6px}.ruler__tick:after{bottom:6px}.ruler__tick--major:before,.ruler__tick--major:after{background:#ffffff47}.ruler__label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;text-align:center;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:#e8ba78;background-color:var(--bg-main, #0f0f1a);background-image:linear-gradient(#00000047,#00000047);pointer-events:none}.ruler__caret{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2.5px;height:30px;border-radius:1.5px;background:rgb(var(--accent-rgb, 120,220,180));opacity:.85;pointer-events:none;transition:opacity .15s ease}.ruler__caret--active{opacity:1}.transport{position:relative;flex:0 0 auto;z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;padding:4px 20px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));transition:opacity .3s ease}.transport--hidden{opacity:0;pointer-events:none}.transport__row{display:flex;align-items:center;justify-content:center;gap:20px}.tr-brush{width:62px;height:62px;border-radius:50%;flex-shrink:0;border:1px solid rgba(255,255,255,.12);background:transparent;color:#fff6;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .1s ease}.tr-brush:hover{color:#ffffffa6;border-color:#ffffff38}.tr-brush:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:3px}.tr-brush:active{transform:scale(.94)}.tr-brush--vol-on,.tr-brush--vol-on:hover{border-color:rgba(var(--paint-vol-rgb),.45);background:rgba(var(--paint-vol-rgb),.12);color:rgb(var(--paint-vol-rgb))}.tr-brush--sound-on,.tr-brush--sound-on:hover{border-color:rgba(var(--paint-snd-rgb),.45);background:rgba(var(--paint-snd-rgb),.12);color:rgb(var(--paint-snd-rgb))}.paint-tray{position:absolute;bottom:100%;left:16px;right:16px;margin-bottom:8px;border-radius:999px;border:1px solid transparent;background:var(--bg-sheet, #16162a);box-shadow:0 8px 28px #00000073;padding:11px 0;animation:paint-tray-in .16s cubic-bezier(.2,.7,.3,1)}.paint-tray--sound{border-color:rgba(var(--paint-snd-rgb),.45)}.paint-tray--vol{border-color:rgba(var(--paint-vol-rgb),.45)}@keyframes paint-tray-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.paint-tray{animation:none}}.paint-tray__scroll{display:flex;align-items:center;gap:8px;padding:0 14px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.paint-tray__scroll::-webkit-scrollbar{height:4px}.paint-tray__scroll::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:2px}.paint-cat{display:flex;align-items:center;gap:8px;flex:0 0 auto}.paint-cat--div{border-left:1px solid rgba(255,255,255,.1);padding-left:10px;margin-left:4px}.paint-cat__label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#ffffff9e;white-space:nowrap;padding:0 2px}.paint-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:8px 11px;border-radius:999px;border:1.5px solid rgba(255,255,255,.1);background:#1e1e2ae6;color:#fff;font:inherit;font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .1s ease}.paint-chip:hover{background:#303040f2}.paint-chip:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.75);outline-offset:2px}.paint-chip:active{transform:scale(.96)}.paint-chip--on{background:#ffffff14}.paint-chip__dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.paint-brush{display:flex;align-items:center;gap:14px;padding:0 22px}.paint-brush__label{font-size:11px;letter-spacing:.6px;font-weight:600;color:#ffffff9e}.paint-brush__value{color:rgb(var(--paint-vol-rgb));font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;min-width:42px;text-align:right}.paint-brush__range{flex:1;height:34px;margin:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.paint-brush__range:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.75);outline-offset:2px;border-radius:999px}.paint-brush__range::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:linear-gradient(to right,rgb(var(--paint-vol-rgb)) var(--paint-brush-pct, 0%),rgba(255,255,255,.1) var(--paint-brush-pct, 0%))}.paint-brush__range::-moz-range-track{height:8px;border-radius:4px;background:#ffffff1a}.paint-brush__range::-moz-range-progress{height:8px;border-radius:4px;background:rgb(var(--paint-vol-rgb))}.paint-brush__range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;margin-top:-9px;border-radius:50%;background:rgb(var(--paint-vol-rgb));border:3px solid var(--bg-main, #0f0f1a)}.paint-brush__range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:rgb(var(--paint-vol-rgb));border:3px solid var(--bg-main, #0f0f1a)}.tr-play{width:72px;height:72px;border-radius:50%;flex-shrink:0;border:2px solid rgba(var(--accent-rgb, 120,220,180),.2);background:rgba(var(--accent-rgb, 120,220,180),.04);color:rgba(var(--accent-rgb, 120,220,180),.7);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .1s ease}.tr-play:hover{background:rgba(var(--accent-rgb, 120,220,180),.1)}.tr-play:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:3px}.tr-play:active{transform:scale(.94)}.tr-play--playing{border-color:rgba(var(--accent-rgb, 120,220,180),.4);background:rgba(var(--accent-rgb, 120,220,180),.1);color:rgba(var(--accent-rgb, 120,220,180),.9)}.corner-btn{position:fixed;z-index:12;bottom:calc(4px + env(safe-area-inset-bottom,0px));border:none;background:transparent;cursor:pointer;color:#ffffff80;display:flex;align-items:center;justify-content:center;transition:color .15s ease,background .15s ease,transform .1s ease}.corner-btn:hover{color:#fffc}.corner-btn:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.corner-btn:active{transform:scale(.9)}.corner-btn--share{left:14px;width:38px;height:38px;border-radius:19px}.corner-btn--help{right:14px;width:33px;height:33px;border-radius:50%;border:1px solid rgba(255,255,255,.14)}.corner-btn__glyph{font-size:18px;font-weight:600;line-height:1;margin-top:-1px}.corner-btn--help-on{border-color:rgba(var(--accent-rgb, 120,220,180),.7);background:rgba(var(--accent-rgb, 120,220,180),.16);color:rgb(var(--accent-rgb, 120,220,180))}.tap-pulse{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;pointer-events:none;opacity:0;background:rgb(var(--accent-rgb, 120,220,180))}.tap-pulse--on{animation:tap-pulse 205ms linear 1}@keyframes tap-pulse{0%{opacity:0}12.2%{opacity:.3}to{opacity:0}}@media(prefers-reduced-motion:reduce){.tap-pulse--on{animation-duration:1ms}}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);background:#ffffff1f;color:#ffffffd9;padding:10px 20px;border-radius:20px;font-size:13px;font-weight:500;letter-spacing:.03em;z-index:1000;pointer-events:none;max-width:calc(100vw - 40px);text-align:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:1;animation:fade-in .15s ease;transition:opacity .5s ease}.toast--fading{opacity:0}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000073;animation:fade-in .15s ease}.sheet{position:fixed;bottom:0;left:0;right:0;z-index:41;width:100%;display:flex;flex-direction:column;background:var(--bg-sheet, #16162a);border-top:1px solid rgba(255,255,255,.06);border-radius:20px 20px 0 0;animation:bs-slide-up .22s cubic-bezier(.4,0,.2,1)}.sheet:focus{outline:none}.sheet-header{flex-shrink:0;padding:14px 16px 2px;display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-title{font-size:11px;font-weight:500;color:#fff6;text-transform:uppercase;letter-spacing:.5px}.sheet-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-6px -6px -6px 0;border:none;border-radius:8px;background:none;cursor:pointer;color:#ffffff59;transition:background .15s ease,color .15s ease}.sheet-close:hover{background:#ffffff0f;color:#ffffffb3}.sheet-close:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.sheet-body{flex:1;overflow-y:auto;padding:12px 16px calc(28px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch}.mp-sheet{height:400px;max-height:82vh}.mp-section-label{font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#ffffff59;margin:14px 0 8px}.mp-section-label:first-child{margin-top:0}.mp-chips{display:flex;flex-wrap:wrap;gap:8px}.mp-chip{border:1px solid rgba(255,255,255,.12);background:transparent;color:#ffffffb3;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.mp-chip--num{width:44px;height:44px;border-radius:22px}.mp-chip--poly{height:40px;padding:0 14px;border-radius:20px}.mp-chip:hover{border-color:#ffffff40}.mp-chip:active{transform:scale(.94)}.mp-chip:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.mp-denoms{display:flex;gap:8px}.mp-denom{flex:1;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:transparent;color:#fff9;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.mp-denom:hover{border-color:#ffffff40}.mp-denom:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.mp-chip--active{background:rgba(var(--accent-rgb, 120,220,180),.12);border-color:rgba(var(--accent-rgb, 120,220,180),.5);color:rgb(var(--accent-rgb, 120,220,180))}.fav-sheet{height:80vh;max-height:80vh}.fav-save-current{width:100%;margin-bottom:16px;padding:12px 14px;border:1px dashed rgba(var(--accent-rgb, 120,220,180),.35);border-radius:10px;background:rgba(var(--accent-rgb, 120,220,180),.04);color:rgba(var(--accent-rgb, 120,220,180),.9);font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}.fav-save-current:hover{background:rgba(var(--accent-rgb, 120,220,180),.1);border-style:solid}.fav-save-current:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.fav-form{margin-bottom:16px}.fav-form__row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.fav-input{flex:1;min-width:0;height:40px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0f;color:#fff;font-size:14px;outline:none;transition:border-color .15s ease}.fav-input::placeholder{color:#ffffff40}.fav-input:focus{border-color:rgba(var(--accent-rgb, 120,220,180),.5)}.fav-form__cancel{flex-shrink:0;padding:10px 8px;border:none;background:none;color:#fff6;font-size:13px;cursor:pointer;border-radius:6px}.fav-form__cancel:hover{color:#ffffffb3}.fav-types{display:flex;gap:6px;margin-bottom:10px}.fav-type{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 6px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08;cursor:pointer;transition:border-color .15s ease,background .15s ease}.fav-type:hover:not(:disabled){border-color:#ffffff2e}.fav-type:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:2px}.fav-type:disabled{opacity:.35;cursor:default}.fav-type--active{border-color:rgba(var(--accent-rgb, 120,220,180),.45);background:rgba(var(--accent-rgb, 120,220,180),.1)}.fav-type__label{font-size:11px;font-weight:700;color:#ffffff80}.fav-type--active .fav-type__label{color:rgba(var(--accent-rgb, 120,220,180),.95)}.fav-type__desc{font-size:9px;color:#ffffff4d;line-height:1.3;text-align:center}.fav-confirm{width:100%;padding:11px 14px;border:none;border-radius:8px;background:rgba(var(--accent-rgb, 120,220,180),.5);color:#0f0f1a;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease}.fav-confirm:hover:not(:disabled){background:rgba(var(--accent-rgb, 120,220,180),.65)}.fav-confirm:disabled{background:rgba(var(--accent-rgb, 120,220,180),.15);color:#0f0f1a66;cursor:default}.fav-empty{text-align:center;color:#fff3;font-size:12px;padding:32px 0;margin:0}.fav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.fav-row{display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.04)}.fav-row__load{flex:1;min-width:0;display:flex;align-items:center;gap:12px;text-align:left;padding:10px 8px;border:none;border-radius:8px;background:none;cursor:pointer;transition:background .15s ease}.fav-row__load:hover{background:#ffffff0a}.fav-row__load:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:-2px}.fav-row__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.fav-row__name{font-size:14px;font-weight:600;color:#ffffffbf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fav-row__tags{display:flex;flex-wrap:wrap;gap:6px}.fav-tag{font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px}.fav-tag--meter{background:#ff78a01f;color:#ff78a0bf}.fav-tag--tempo{background:#b39ddb1f;color:#b39ddbcc}.fav-tag--seq{background:rgba(var(--accent-rgb, 120,220,180),.12);color:rgba(var(--accent-rgb, 120,220,180),.8)}.fav-row__delete{flex-shrink:0;min-width:32px;height:32px;padding:0 8px;border:none;border-radius:16px;background:transparent;color:#ffffff40;font-size:18px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.fav-row__delete:hover{background:#ef53501f;color:#ef5350}.fav-row__delete:focus-visible{outline:2px solid rgba(239,83,80,.8);outline-offset:2px}.fav-row__delete--armed{background:#ef535029;color:#ef5350;font-size:11px;font-weight:700;letter-spacing:.02em}.dial-handle{position:fixed;z-index:12;right:0;top:50%;translate:0 -50%;width:26px;height:56px;display:flex;align-items:center;justify-content:center;padding:0 3px 0 0;border:1px solid rgba(255,255,255,.08);border-right:none;border-radius:14px 0 0 14px;background:#ffffff0b;color:#ffffff6b;cursor:pointer;transition:color .15s ease,background .15s ease,translate .15s ease}.dial-handle:hover{color:#ffffffd9;background:#ffffff17}.dial-handle:focus-visible{outline:2px solid rgba(var(--accent-rgb, 120,220,180),.7);outline-offset:-2px}.dial-handle:active{background:#ffffff24}.theme-light .dial-handle{border-color:#1a1a2e1a;background:#1a1a2e0d;color:#1a1a2e80}.help-mode{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;background:#0006;animation:fade-in .2s ease;cursor:help}.help-ring{position:absolute;box-sizing:border-box;border-radius:50%;pointer-events:none;border:2.5px solid rgba(var(--accent-rgb, 120,220,180),.95)}.help-ring--halo{border-color:rgba(var(--accent-rgb, 120,220,180),.9);animation:help-halo 1.1s ease-out infinite}@keyframes help-halo{0%{scale:1;opacity:.7}to{scale:var(--help-halo-scale, 1.5);opacity:0}}.help-card{position:absolute;left:22px;right:22px;max-width:460px;margin:0 auto;padding:16px 20px;border-radius:18px;background:var(--bg-sheet, rgba(16,16,28,.97));border:1px solid rgba(255,255,255,.18);text-align:center;pointer-events:none;box-shadow:0 18px 40px #00000073}.help-card__title{margin:0;font-size:19px;font-weight:700;line-height:1.25;color:#fffffffa}.help-card__body{margin:7px 0 0;font-size:14.5px;font-weight:500;line-height:20px;color:#ffffffb8}.theme-light .help-card{border-color:#1a1a2e1f}.theme-light .help-card__title{color:#1a1a2eeb}.theme-light .help-card__body{color:#1a1a2e99}@media(prefers-reduced-motion:reduce){.help-mode{animation:none}.help-ring--halo{animation:none;opacity:.35}}.tempo-dial{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0a0710;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.tempo-dial:focus{outline:none}.tempo-dial:focus-visible{outline:2px solid rgba(168,120,230,.8);outline-offset:-3px}.tempo-dial__glow{position:absolute;border-radius:50%;opacity:0;pointer-events:none;will-change:opacity}.tempo-dial__glow--on{animation:dial-throb var(--throb-ms, .5s) linear 1}@keyframes dial-throb{0%{opacity:0}50%{opacity:var(--throb-peak, 1)}to{opacity:0}}.tempo-dial__svg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tempo-dial__handle{transition:fill .15s ease}.tempo-dial__num{position:absolute;width:200px;text-align:center;pointer-events:none;color:#fff;font-size:64px;font-weight:200;line-height:88px;letter-spacing:1px;font-variant-numeric:tabular-nums}.tempo-dial__back{position:absolute;left:12px;top:calc(12px + env(safe-area-inset-top,0px));display:flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px 8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:#ffffff0a;color:#fff9;font-size:13px;font-weight:600;cursor:pointer;transition:color .15s ease,background .15s ease}.tempo-dial__back:hover{color:#ffffffeb;background:#ffffff17}.tempo-dial__back:focus-visible{outline:2px solid rgba(168,120,230,.8);outline-offset:2px}@media(prefers-reduced-motion:reduce){.tempo-dial__glow--on{animation-duration:1ms}}
