.mp-shell{--wave:#db2777}.mp-upload{cursor:pointer;border-style:dashed;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 20px;transition:border-color .14s,background .14s;display:grid}.mp-upload:hover,.mp-upload.dragover{border-color:var(--primary);background:var(--primary-soft)}.mp-upload-icon,.mp-file-icon{border-radius:var(--radius-sm);background:var(--primary-soft);width:42px;height:42px;color:var(--primary);flex:none;place-items:center;font-size:1.2rem;font-weight:800;display:grid}.mp-upload-icon svg{width:23px;height:23px}.mp-upload strong{display:block}.mp-upload p{color:var(--text-muted);margin-top:2px;font-size:.82rem}.mp-shell.is-loaded .mp-upload{display:none}.mp-work{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.mp-project-bar{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(135px,.48fr) minmax(190px,.62fr) auto minmax(200px,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.mp-file-copy{min-width:0}.mp-file-copy strong,.mp-file-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.mp-file-copy span{color:var(--text-muted);font-size:.75rem}.mp-model-select>span{color:var(--text-faint);margin-bottom:3px;font-size:.64rem;font-weight:700;display:block}.mp-model-select .select{width:100%;min-width:0;padding:8px 28px 8px 9px;font-size:.74rem}.mp-model-progress>span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;display:block;overflow:hidden}.mp-model-progress>div{background:var(--surface-3);border-radius:10px;height:5px;margin-top:6px;overflow:hidden}.mp-model-progress i{background:var(--primary);width:0;height:100%;transition:width .18s;display:block}.mp-compat{color:var(--warning);white-space:nowrap;font-size:.72rem}.mp-transport{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.mp-transport-actions{gap:7px;display:flex}.mp-transport .btn{padding-inline:13px}.mp-transport .btn.is-active{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 38%,var(--border))}.mp-clock{color:var(--text-muted);align-items:baseline;gap:7px;margin:auto;display:flex}.mp-clock strong{color:var(--text);font-size:1.16rem}.mp-select-label{color:var(--text-muted);align-items:center;gap:6px;font-size:.76rem;font-weight:700;display:flex}.mp-select-label .select{min-width:82px;padding:8px 30px 8px 10px;font-size:.8rem}.mp-timeline{border:1px solid var(--border);border-top:0;margin:0 16px 14px;position:relative}.mp-ruler{border-bottom:1px solid var(--border);height:28px;color:var(--text-faint);background:repeating-linear-gradient(to right,transparent 0,transparent calc(3.125% - 1px),var(--border) 3.125%);grid-template-columns:repeat(8,1fr);align-items:end;padding:0 8px 5px;font-size:.68rem;display:grid}.mp-ruler span{text-align:left}.mp-chords{border-bottom:1px solid var(--border);background:var(--surface-2);height:40px;position:relative;overflow:hidden}.mp-chord{color:#2b2f36;font:700 .78rem var(--font-sans);cursor:pointer;opacity:.9;border:0;border-right:1px solid #3c414b29;border-radius:0;position:absolute;inset-block:0}.mp-chord:hover,.mp-chord.is-current{outline:2px solid var(--primary);outline-offset:-2px;z-index:2;opacity:1}.mp-chord-empty{height:100%;color:var(--text-muted);place-items:center;font-size:.76rem;display:grid}.mp-wave-stage{cursor:crosshair;background:var(--surface);height:142px;position:relative;overflow:hidden}#mp-main-wave{width:100%;height:100%}.mp-wave-stage:before{content:"";pointer-events:none;background:repeating-linear-gradient(to right,transparent 0,transparent calc(6.25% - 1px),var(--border) 6.25%);opacity:.72;position:absolute;inset:0}.mp-playhead{z-index:4;background:var(--wave);pointer-events:none;width:2px;position:absolute;top:0;bottom:0;left:0}.mp-playhead:before{content:"";border-left:6px solid #0000;border-right:6px solid #0000;border-top:8px solid var(--wave);position:absolute;top:0;left:50%;transform:translate(-50%)}.mp-loop-region{z-index:1;border-inline:1px solid var(--wave);pointer-events:none;background:#db27770a;position:absolute;top:0;bottom:0}.mp-loop-region.is-active{background:#db27771f}.mp-loop-inputs{z-index:5;pointer-events:none;position:absolute;inset:0}.mp-loop-inputs input{appearance:none;pointer-events:none;background:0 0;width:100%;height:100%;margin:0;position:absolute;inset:0}.mp-loop-inputs input::-webkit-slider-thumb{appearance:none;background:var(--wave);width:13px;height:22px;box-shadow:0 0 0 1px var(--wave);pointer-events:auto;cursor:ew-resize;border:2px solid #fff;border-radius:4px}.mp-loop-inputs input::-moz-range-thumb{background:var(--wave);pointer-events:auto;cursor:ew-resize;border:2px solid #fff;border-radius:4px;width:11px;height:20px}.mp-editor-grid{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) 260px;display:grid}.mp-mixer{border-right:1px solid var(--border);min-width:0}.mp-track-head,.mp-track-row{grid-template-columns:126px minmax(170px,1fr) 84px minmax(130px,.55fr) 90px 48px;align-items:center;gap:10px;display:grid}.mp-track-head{height:36px;color:var(--text-faint);border-bottom:1px solid var(--border);padding:0 12px;font-size:.68rem;font-weight:700}.mp-track-row{border-bottom:1px solid var(--border);cursor:pointer;min-height:72px;padding:8px 12px;transition:background .12s;position:relative}.mp-track-row:before{content:"";left:0;background:var(--track);width:4px;position:absolute;inset-block:0}.mp-track-row:hover,.mp-track-row.is-selected{background:color-mix(in srgb,var(--primary-soft) 48%,var(--surface))}.mp-track-row.is-muted canvas,.mp-track-row.is-muted .mp-level{opacity:.28}.mp-track-row.is-unavailable{opacity:.42;background:var(--surface-2)}.mp-track-name{align-items:center;gap:9px;min-width:0;display:flex}.mp-track-name>span{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:33px;height:33px;color:var(--track);place-items:center;font-weight:800;display:grid}.mp-track-name strong{font-size:.84rem}.mp-track-name small{color:var(--text-faint);white-space:nowrap;margin-top:2px;font-size:.61rem;display:block}.mp-track-row canvas{width:100%;height:42px}.mp-ms{gap:5px;display:flex}.mp-ms button{border:1px solid var(--border-strong);background:var(--surface);width:32px;height:30px;color:var(--text-muted);font:700 .74rem var(--font-sans);cursor:pointer;border-radius:5px;padding:0}.mp-ms button.is-active{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.mp-track-row input[type=range]{width:100%;accent-color:var(--wave)}.mp-level{background:repeating-linear-gradient(to right,var(--surface-3) 0,var(--surface-3) 5px,transparent 5px,transparent 7px);border-radius:2px;height:8px;overflow:hidden}.mp-level span{background:linear-gradient(90deg,#4bbb55 0 72%,#e3b72d 72% 90%,#e24a4a 90%);height:100%;transition:width .12s;display:block}.mp-db{text-align:right;color:var(--text-muted);font-size:.73rem}.mp-practice-rail{background:color-mix(in srgb,var(--surface) 97%,var(--primary-soft))}.mp-practice-rail>section,.mp-privacy{border-bottom:1px solid var(--border);padding:16px}.mp-now,.mp-tempo-summary{grid-template-columns:1fr 1fr;display:grid}.mp-now>div,.mp-tempo-summary>div{text-align:center}.mp-now>div+div,.mp-tempo-summary>div+div{border-left:1px solid var(--border)}.mp-now span,.mp-tempo-summary span{color:var(--text-muted);font-size:.72rem;display:block}.mp-now strong{color:#3e9a55;margin-top:4px;font-size:1.6rem;display:block}.mp-now div+div strong{color:#e27a18}.mp-tempo-summary strong{margin-top:4px;font-size:1.25rem;display:block}.mp-tempo-summary small{color:var(--text-faint);font-size:.62rem;display:block}.mp-practice-controls{gap:15px;display:grid}.mp-switch-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.mp-switch-row strong,.mp-switch-row small{display:block}.mp-switch-row strong{font-size:.82rem}.mp-switch-row small{color:var(--text-muted);margin-top:2px;font-size:.65rem}.mp-switch-row input{width:36px;height:20px;accent-color:var(--primary)}.mp-loop-readout{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px}.mp-loop-readout span,.mp-loop-readout strong{display:block}.mp-loop-readout span{color:var(--text-muted);font-size:.68rem}.mp-loop-readout strong{margin-top:3px;font-size:.78rem}.mp-export-actions{gap:8px;display:grid}.mp-privacy{color:var(--text-muted);gap:8px;font-size:.69rem;line-height:1.45;display:flex}.mp-status{min-height:38px;padding:10px 16px 12px}@media (width<=1060px){.mp-project-bar{grid-template-columns:auto minmax(140px,1fr) minmax(190px,.7fr) auto}.mp-model-progress{grid-column:1/-1}.mp-compat{grid-column:1/3}.mp-editor-grid{grid-template-columns:1fr}.mp-mixer{border-right:0}.mp-practice-rail{border-top:1px solid var(--border);grid-template-columns:repeat(2,1fr);display:grid}.mp-practice-rail>section,.mp-privacy{border-right:1px solid var(--border)}.mp-track-head,.mp-track-row{grid-template-columns:116px minmax(150px,1fr) 78px minmax(110px,.5fr) 70px 44px}}@media (width<=760px){.mp-upload{grid-template-columns:auto 1fr;padding:15px}.mp-upload .btn{grid-column:1/-1;width:100%}.mp-project-bar{grid-template-columns:auto 1fr auto;gap:9px}.mp-model-select{grid-column:1/-1}.mp-project-bar #mp-split{grid-column:1/-1;width:100%}.mp-compat{grid-column:1/-1}.mp-transport{flex-wrap:wrap;align-items:stretch}.mp-transport-actions{grid-template-columns:repeat(4,1fr);width:100%;display:grid}.mp-transport-actions .btn{padding-inline:6px}.mp-clock{order:3;justify-content:center;width:100%;margin:0 auto}.mp-timeline{margin-inline:10px}.mp-wave-stage{height:112px}.mp-track-head{display:none}.mp-track-row{grid-template-columns:108px 1fr 70px;gap:8px;min-height:94px;padding:9px 10px}.mp-track-row canvas{grid-area:2/2/auto/-1;height:30px}.mp-ms{grid-area:1/3}.mp-track-row input[type=range]{grid-area:3/1/auto/3}.mp-level{grid-area:3/3}.mp-db{font-size:.61rem;position:absolute;bottom:4px;right:10px}.mp-practice-rail{grid-template-columns:1fr}.mp-practice-rail>section,.mp-privacy{border-right:0}}@media (width<=430px){.mp-file-icon{display:none}.mp-project-bar{grid-template-columns:1fr auto}.mp-select-label,.mp-select-label .select{flex:1}}
