:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{box-sizing:border-box;flex-direction:column;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.piano-keyboard{-webkit-user-select:none;user-select:none;flex-shrink:0;width:100%;min-width:210px;height:90px;position:relative}.piano-whites{gap:1px;width:100%;height:100%;display:flex}.piano-key{cursor:pointer;box-sizing:border-box;padding:0;font-family:inherit;transition:background .1s,border-color .1s}.piano-key-white{color:#444;background:#e8e8ef;border:1px solid #2a2a4a;border-radius:0 0 4px 4px;flex:1;justify-content:center;align-items:flex-end;min-width:0;padding-bottom:4px;display:flex}.piano-key-white:hover{background:#d6d6e0}.piano-key-white.is-active{color:#1a1a2e;background:#00d4ff;border-color:#00b8e6}.piano-key-white.is-playing{color:#1a1a2e;background:#ffe27a;border-color:#ffc600;box-shadow:0 0 10px #ffc60099}.piano-key-white .piano-key-label{pointer-events:none;font-family:monospace;font-size:.7rem}.piano-blacks{pointer-events:none;height:60%;position:absolute;top:0;left:0;right:0}.piano-key-black{pointer-events:auto;background:#1a1a2e;border:1px solid #e8e8ef;border-radius:0 0 3px 3px;width:8.4%;height:100%;position:absolute;transform:translate(-50%);box-shadow:0 2px 3px #0006}.piano-key-black:hover{background:#2a2a4a}.piano-key-black.is-active{background:#00d4ff;border-color:#00b8e6}.piano-key-black.is-playing{background:#ffc600;border-color:#ffe27a;box-shadow:0 0 10px #ffc60099}.piano-keyboard-compact{min-width:140px;height:56px}.piano-keyboard-grid24{-webkit-user-select:none;user-select:none;flex-shrink:0;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(30,1fr);gap:2px;width:100%;min-width:480px;height:160px;display:grid}.piano-keyboard-grid24.piano-keyboard-compact{gap:1px;min-width:320px;height:80px}.grid24-key{cursor:pointer;border:1px solid hsl(var(--hue), 30%, 22%);color:#1a1a2e;border-radius:3px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.7rem;transition:background .1s,border-color .1s,transform 50ms;display:flex}.grid24-key-natural{background:hsl(var(--hue), 55%, 60%)}.grid24-key-natural:hover{background:hsl(var(--hue), 60%, 68%)}.grid24-key-half-up{background:hsl(var(--hue), 50%, 45%);color:#f4f4fa}.grid24-key-half-up:hover{background:hsl(var(--hue), 55%, 53%)}.grid24-key-half-dn{background:hsl(var(--hue), 50%, 75%);color:#1a1a2e}.grid24-key-half-dn:hover{background:hsl(var(--hue), 60%, 82%)}.grid24-key-sharp{background:hsl(var(--hue), 60%, 30%);color:#f0f0f6}.grid24-key-sharp:hover{background:hsl(var(--hue), 65%, 38%)}.grid24-key.is-active{box-shadow:inset 0 0 0 3px #00d4ff}.grid24-key.is-playing{outline-offset:-3px;z-index:1;outline:3px solid #ffc600;box-shadow:0 0 10px #ffc60099}.grid24-key.is-active.is-playing{box-shadow:inset 0 0 0 3px #00d4ff,0 0 10px #ffc60099}.grid24-key-label{pointer-events:none;font-family:monospace}.piano-keyboard-grid24.piano-keyboard-compact .grid24-key-label{display:none}.piano-keyboard-grid22{-webkit-user-select:none;user-select:none;flex-shrink:0;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(32,1fr);gap:2px;width:100%;min-width:480px;height:160px;display:grid}.piano-keyboard-grid22.piano-keyboard-compact{gap:1px;min-width:320px;height:80px}.grid22-key{cursor:pointer;border:1px solid hsl(var(--hue), 30%, 22%);border-radius:3px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.7rem;transition:background .1s,border-color .1s,transform 50ms;display:flex}.grid22-key-r0{background:hsl(var(--hue), 60%, 75%);color:#1a1a2e}.grid22-key-r0:hover{background:hsl(var(--hue), 65%, 82%)}.grid22-key-r1{background:hsl(var(--hue), 60%, 60%);color:#1a1a2e}.grid22-key-r1:hover{background:hsl(var(--hue), 65%, 68%)}.grid22-key-r2{background:hsl(var(--hue), 60%, 45%);color:#f4f4fa}.grid22-key-r2:hover{background:hsl(var(--hue), 65%, 53%)}.grid22-key-r3{background:hsl(var(--hue), 60%, 30%);color:#f0f0f6}.grid22-key-r3:hover{background:hsl(var(--hue), 65%, 38%)}.grid22-key.is-active{box-shadow:inset 0 0 0 3px #00d4ff}.grid22-key.is-playing{outline-offset:-3px;z-index:1;outline:3px solid #ffc600;box-shadow:0 0 10px #ffc60099}.grid22-key.is-active.is-playing{box-shadow:inset 0 0 0 3px #00d4ff,0 0 10px #ffc60099}.grid22-key-label{pointer-events:none;font-family:monospace;font-weight:600}.piano-keyboard-grid22.piano-keyboard-compact .grid22-key-label{display:none}.piano-keyboard-grid-x-edo{-webkit-user-select:none;user-select:none;flex-shrink:0;gap:2px;width:100%;display:grid}.gridx-cell{border:1px solid hsl(var(--hue), 30%, 22%);border-radius:3px;flex-direction:row;display:flex}.gridx-cell .gridx-key:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.gridx-cell .gridx-key:last-child{border-top-right-radius:2px;border-bottom-right-radius:2px}.gridx-key{cursor:pointer;background:hsl(var(--hue), 60%, var(--lightness));color:hsl(var(--hue), 30%, 15%);border:none;flex:1;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.7rem;transition:background .1s,transform 50ms;display:flex}.gridx-cell .gridx-key-shifted{border-left:2px solid hsl(var(--hue), 30%, 22%)}.piano-keyboard-grid-x-edo[data-rows="3"] .gridx-cell[style*="--lightness:30%"] .gridx-key,.piano-keyboard-grid-x-edo[data-rows="4"] .gridx-cell[style*="--lightness:30%"] .gridx-key,.piano-keyboard-grid-x-edo[data-rows="4"] .gridx-cell[style*="--lightness:45%"] .gridx-key{color:#f0f0f6}.gridx-key:hover{filter:brightness(1.1)}.gridx-key.is-active{box-shadow:inset 0 0 0 3px #00d4ff}.gridx-key.is-playing{outline-offset:-3px;z-index:1;outline:3px solid #ffc600;box-shadow:0 0 10px #ffc60099}.gridx-key.is-active.is-playing{box-shadow:inset 0 0 0 3px #00d4ff,0 0 10px #ffc60099}.gridx-key.is-cued{box-shadow:0 0 0 2px #e832e2}.gridx-key.is-active.is-cued{box-shadow:inset 0 0 0 3px #00d4ff,0 0 0 2px #e832e2}.gridx-key.is-cued.is-playing{box-shadow:0 0 0 2px #e832e2,0 0 10px #ffc60099}.gridx-key.is-active.is-cued.is-playing{box-shadow:inset 0 0 0 3px #00d4ff,0 0 0 2px #e832e2,0 0 10px #ffc60099}.gridx-key-label{pointer-events:none;font-family:monospace;font-weight:600}.piano-keyboard-grid-x-edo.piano-keyboard-compact .gridx-key-label{display:none}.is-cued{box-shadow:0 0 0 2px #e832e2}.grid24-key.is-active.is-cued{box-shadow:inset 0 0 0 3px #00d4ff,0 0 0 2px #e832e2}.grid24-key.is-cued.is-playing{box-shadow:0 0 0 2px #e832e2,0 0 10px #ffc60099}.grid24-key.is-active.is-cued.is-playing{box-shadow:inset 0 0 0 3px #00d4ff,0 0 0 2px #e832e2,0 0 10px #ffc60099}.piano-key.is-cued.is-playing{box-shadow:0 0 0 2px #e832e2,0 0 10px #ffc60099}.octave-selector{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.octave-btn{color:#d0d0e0;cursor:pointer;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:4px;flex:1;min-width:28px;max-width:40px;height:30px;padding:0;font-family:monospace;font-size:.8rem;font-weight:500;transition:background .12s,border-color .12s,color .12s}.octave-btn:hover{color:#00d4ff;border-color:#00d4ff}.octave-btn.is-reference{color:#88c0e0;background:#243a4a;border-color:#3a5a7a}.octave-btn.is-reference:hover{color:#00d4ff;border-color:#00d4ff}.octave-btn.is-active{color:#1a1a2e;background:#00d4ff;border-color:#00b8e6;font-weight:600}.octave-btn.is-active:hover{color:#1a1a2e;background:#00b8e6}.octave-selector-compact{gap:2px;margin-top:4px}.octave-selector-compact .octave-btn{min-width:22px;max-width:30px;height:22px;font-size:.7rem}.we-canvas-area,.we-params-area,.we-adsr-area{box-sizing:border-box;background:#14141f;border:1px solid #3a3a5a;border-radius:8px;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;padding:12px;font-family:system-ui,-apple-system,sans-serif;display:flex}.we-area-header{border-bottom:1px solid #3a3a5a;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding-bottom:6px;display:flex}.we-header-left{flex:1;align-items:baseline;gap:10px;min-width:0;display:flex}.we-header-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.we-history{background:#14141f;border:1px solid #3a3a5a;border-radius:4px;align-items:center;gap:2px;padding:2px;display:inline-flex}.we-history-btn{color:#c0c0e0;cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:1rem;line-height:1;transition:background .12s,color .12s;display:inline-flex}.we-history-btn:hover:not(:disabled){color:#00d4ff;background:#2a2a4a}.we-history-btn:disabled{opacity:.3;cursor:not-allowed}.spectro-toggle{color:#a0a8b8;cursor:pointer;-webkit-user-select:none;user-select:none;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;flex-shrink:0;align-items:center;gap:6px;padding:3px 8px;font-size:.75rem;transition:border-color .15s,color .15s;display:inline-flex}.spectro-toggle:hover{color:#00d4ff;border-color:#00d4ff}.spectro-toggle input{accent-color:#00d4ff;margin:0}.we-area-title{color:#a0a0c0;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.8rem;font-weight:600}.we-sound-tag{color:#c084fc;white-space:nowrap;text-overflow:ellipsis;background:#c084fc1a;border:1px solid #c084fc4d;border-radius:10px;max-width:55%;padding:2px 8px;font-size:.75rem;overflow:hidden}.presets{flex-wrap:wrap;flex-shrink:0;gap:6px;margin-bottom:8px;display:flex}.presets button{color:#c0c0e0;cursor:pointer;background:#2a2a4a;border:1px solid #3a3a5a;border-radius:6px;padding:4px 10px;font-size:.75rem;transition:background .15s,border-color .15s}.presets button:hover{background:#3a3a6a;border-color:#00d4ff}.canvas-container{flex:1;min-width:0;min-height:200px;position:relative;overflow:hidden}.canvas-container canvas{cursor:crosshair;box-sizing:border-box;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:8px;width:100%;height:100%;display:block;position:absolute;inset:0}.canvas-container .label{color:#5a5a8a;pointer-events:none;font-family:monospace;font-size:.7rem;position:absolute;left:6px}.canvas-container .label.top{top:4px}.canvas-container .label.middle{top:50%;transform:translateY(-50%)}.canvas-container .label.bottom{bottom:4px}.we-params-fields{flex-direction:column;flex-shrink:0;gap:12px;display:flex}.we-params-spacer{flex:1;min-height:8px}.control-group{flex-direction:column;gap:4px;display:flex}.control-group label{color:#a0a0c0;font-size:.85rem}.control-group strong{color:#00d4ff}.control-group input[type=range]{accent-color:#00d4ff;width:100%;height:6px}.freq-label{color:#a0a0c0;flex-wrap:wrap;align-items:center;gap:6px;min-width:0;font-size:.85rem;display:inline-flex}.freq-input{color:#00d4ff;text-align:right;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:4px;outline:none;width:90px;padding:4px 6px;font-family:monospace;font-size:.85rem;font-weight:600}.freq-input:focus{background:#0f0f1a;border-color:#00d4ff}.freq-unit{color:#00d4ff;font-size:.85rem;font-weight:600}.note-display{color:#c084fc;font-weight:600}.system-label{color:#a0a0c0;font-size:.85rem}.tuning-system-select{color:#d0d0e0;cursor:pointer;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:6px;width:100%;padding:5px 8px;font-family:inherit;font-size:.8rem}.tuning-system-select:focus{border-color:#00d4ff;outline:none}.xedo-control-designer{color:#a0a0c0;align-items:center;gap:6px;margin-top:6px;font-size:.8rem;font-weight:600;display:inline-flex}.xedo-input-designer{color:#d0d0e0;text-align:center;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:6px;outline:none;width:50px;padding:4px 6px;font-family:monospace;font-size:.85rem}.xedo-input-designer:focus{border-color:#00d4ff}.x-edo-banner{color:#c0d8e8;background:#00d4ff14;border:1px solid #00d4ff4d;border-radius:4px;margin-bottom:6px;padding:6px 10px;font-size:.78rem;line-height:1.4}.x-edo-banner-text{color:#c0d8e8}.x-edo-banner-link{color:#00d4ff;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.x-edo-banner-link:hover{color:#5ce8ff}.x-edo-banner-link:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #00d4ff}.visual-cues-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px;display:flex}.visual-cues-label{color:#a0a0c0;align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.visual-cues-select{width:auto;min-width:80px}.sustain-badge{color:#1a1a2e;letter-spacing:.08em;vertical-align:1px;background:#ffc600;border-radius:3px;margin-left:10px;padding:1px 8px;font-size:.65rem;font-weight:700;display:inline-block;box-shadow:0 0 8px #ffc60080}.control-buttons{flex-wrap:wrap;flex-shrink:0;gap:8px;display:flex}.new-btn{color:#a0a0c0;cursor:pointer;background:0 0;border:1px solid #5a5a7a;border-radius:8px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.new-btn:hover{color:#00d4ff;background:#00d4ff14;border-color:#00d4ff}.update-btn{color:#4ade80;cursor:pointer;background:#4ade8026;border:1px solid #4ade80;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:background .15s,transform .1s}.update-btn:hover{background:#4ade8040;transform:scale(1.02)}.save-btn{color:#c084fc;cursor:pointer;background:#c084fc26;border:1px solid #c084fc;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:background .15s,transform .1s}.save-btn:hover{background:#c084fc40;transform:scale(1.02)}.save-message-slot{flex-shrink:0;min-height:1.1em;margin-top:4px}.save-message{color:#ff9c44;font-size:.8rem;animation:.15s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.adsr-body{flex-direction:row;flex:1;gap:12px;min-height:0;display:flex}.adsr-canvas-container{flex:1;min-width:0;min-height:120px;position:relative;overflow:hidden}.adsr-canvas{cursor:default;-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:6px;width:100%;height:100%;display:block;position:absolute;inset:0}.adsr-tooltip{pointer-events:none;color:#d0d0e0;white-space:nowrap;z-index:2;background:#2a2a4a;border:1px solid #4a4a6a;border-radius:4px;padding:3px 8px;font-family:monospace;font-size:.7rem;position:absolute;transform:translate(-50%,-100%);box-shadow:0 2px 6px #0006}.adsr-tooltip-flipped{transform:translate(-50%)}.adsr-sliders{flex-direction:column;flex-shrink:0;gap:6px;width:160px;display:flex}.adsr-slider{flex-direction:column;gap:2px;display:flex}.adsr-slider label{color:#9a9ab0;justify-content:space-between;align-items:baseline;gap:6px;font-size:.75rem;display:flex}.adsr-slider strong{color:#00d4ff;font-weight:600}.adsr-value-input{font-family:inherit;font-size:inherit;color:#00d4ff;text-align:right;cursor:text;background:0 0;border:1px solid #0000;border-radius:3px;outline:none;width:56px;padding:0 4px;font-weight:600}.adsr-value-input:hover{border-color:#3a3a5a}.adsr-value-input:focus{background:#0f0f1a;border-color:#00d4ff}.adsr-slider input[type=range]{accent-color:#00d4ff;cursor:pointer;width:100%;height:4px}.timeline{flex-direction:column;gap:10px;width:100%;height:100%;min-height:0;display:flex}.timeline-grid-wrapper{background:#1a1a2e;border:1px solid #3a3a5a;border-radius:8px;flex:1;align-items:stretch;min-height:0;display:flex;overflow:auto}.timeline-grid{background:#1a1a2e;flex:none;position:relative}.timeline-extension{background:repeating-linear-gradient(135deg,#161628 0 8px,#1a1a2e 8px 16px);border-left:1px dashed #3a3a5a;flex-direction:column;flex:none;align-items:stretch;gap:4px;min-width:60px;padding:6px 8px;display:flex}.extension-btn{color:#c0c0e0;cursor:pointer;background:#2a2a4a;border:1px solid #4a4a6a;border-radius:4px;padding:4px 8px;font-family:monospace;font-size:.78rem;transition:background .12s,border-color .12s,color .12s}.extension-btn:hover{color:#00d4ff;background:#3a3a5a;border-color:#00d4ff}.measure-labels{z-index:5;background:#1a1a2e;border-bottom:1px solid #2a2a4a;display:flex;position:sticky;top:0}.measure-label{text-align:center;color:#5a5a7a;box-sizing:border-box;border-right:1px solid #2a2a4a;flex:none;padding:4px 0;font-family:monospace;font-size:.65rem;position:relative}.measure-label:last-child{border-right:none}.delete-measure-btn{color:#ff6b8a;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:.95rem;line-height:1;transition:opacity .15s,background .12s;display:inline-flex;position:absolute;top:1px;right:2px}.measure-label.is-last-measure:hover .delete-measure-btn{opacity:1}.delete-measure-btn:hover{color:#ff8ca5;background:#ff6b8a2e}.cells-wrapper{position:relative}.grid-lines-layer{pointer-events:none;position:absolute;inset:0}.grid-line{width:1px;position:absolute;top:0;bottom:0}.track-headers-column{z-index:6;background:#1a1a2e;border-right:1px solid #2a2a4a;flex:0 0 120px;position:sticky;left:0}.track-header-spacer{z-index:7;box-sizing:border-box;background:#1a1a2e;border-bottom:1px solid #2a2a4a;padding:4px 8px;position:sticky;top:0}.track-header-spacer:after{content:" ";font-family:monospace;font-size:.65rem;display:block}.track-header{box-sizing:border-box;cursor:grab;border-bottom:1px solid #2a2a4a;flex-direction:column;justify-content:center;gap:2px;padding:4px 8px;transition:height .35s ease-out;display:flex;position:relative;overflow:hidden}.track-header-row1{align-items:center;gap:6px;min-width:0;display:flex}.track-header-row2{align-items:center;gap:4px;display:flex}.track-color-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.track-name{color:#c0c0e0;white-space:nowrap;text-overflow:ellipsis;cursor:default;flex:1;min-width:0;font-size:.72rem;overflow:hidden}.track-rename-input{color:#e0e0ff;background:#2a2a4a;border:1px solid #00d4ff;border-radius:3px;outline:none;flex:1;min-width:0;padding:1px 4px;font-family:inherit;font-size:.72rem}.track-delete-btn{color:#ff6b8a;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:.95rem;line-height:1;transition:opacity .15s,background .12s;display:inline-flex}.track-header:hover .track-delete-btn{opacity:1}.track-delete-btn:hover{color:#ff8ca5;background:#ff6b8a2e}.track-mute-btn,.track-solo-btn{cursor:pointer;color:#5a5a7a;background:0 0;border:1px solid #3a3a5a;border-radius:3px;flex-shrink:0;width:18px;height:16px;padding:0;font-family:inherit;font-size:.6rem;font-weight:700;line-height:1;transition:background .1s,color .1s,border-color .1s}.track-mute-btn:hover{color:#ff6b8a;border-color:#ff6b8a}.track-solo-btn:hover{color:#fbbf24;border-color:#fbbf24}.track-mute-btn.is-active{color:#fff;background:#c0392b;border-color:#c0392b}.track-solo-btn.is-active{color:#111;background:#d4a017;border-color:#d4a017}.track-volume-slider{cursor:pointer;accent-color:#00d4ff;flex:1;min-width:0;height:4px}.placed-sound.is-track-muted{opacity:.35}.track-header-dragging{opacity:.3}.track-header-insert-above:before{content:"";z-index:2;background:#00d4ff;height:3px;position:absolute;top:-2px;left:0;right:0}.track-header-insert-below:after{content:"";z-index:2;background:#00d4ff;height:3px;position:absolute;bottom:-2px;left:0;right:0}.track-reorder-ghost{opacity:.8;pointer-events:none;z-index:10;background:#2a2a4a;border:2px solid;border-radius:4px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:absolute;left:0;right:0;box-shadow:0 4px 12px #00000080}.track-add-btn{color:#5a5a7a;cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #2a2a4a;width:100%;padding:6px 8px;font-family:inherit;font-size:.72rem;transition:color .12s,background .12s;display:block}.track-add-btn:hover{color:#00d4ff;background:#00d4ff0f}html[style*=cursor] *{cursor:inherit!important}.track-corridors-layer{pointer-events:none;position:absolute;inset:0}.track-corridor{box-sizing:border-box;border-bottom:1px solid #2a2a4a;border-left:3px solid;transition:top .35s ease-out,height .35s ease-out;position:absolute;left:0;right:0}.track-corridor-odd{background:#ffffff05}.track-corridor-hover{background:#00d4ff0f}.track-corridor-paste-target{background:#00d4ff14;border-left-width:4px}.grid-line-measure{background:#4a4a6a}.grid-line-beat{background:#3a3a5a}.grid-line-croche{background:#5050828c}.grid-line-double{background:#50508259}.grid-line-triple{background:#5050822e}.placed-sounds-layer{pointer-events:none;position:absolute;inset:0}.placed-sound{cursor:grab;white-space:nowrap;box-sizing:border-box;pointer-events:auto;-webkit-user-select:none;user-select:none;border:1px solid;border-radius:4px;align-items:center;gap:4px;padding:0 6px;font-size:.7rem;transition:top .35s ease-out;display:flex;position:absolute;overflow:hidden;container-type:inline-size}.placed-sound.is-dragging,.placed-sound.is-resizing,.placed-sound.is-ghost{transition:none}.placed-sound.is-dragging{cursor:grabbing;opacity:.85;z-index:4}.placed-sound.is-resizing{z-index:4}.placed-sound.is-ghost{opacity:.7;z-index:5;pointer-events:none;border-style:dashed}.resize-handle{cursor:ew-resize;z-index:2;width:7px;position:absolute;top:0;bottom:0}.resize-handle-left{left:0}.resize-handle-right{right:0}.placed-sound.is-selected{outline-offset:-1px;z-index:3;outline:2px solid #ffffffe6;box-shadow:0 0 10px #ffffff40}.zoom-rect{pointer-events:none;z-index:6;box-sizing:border-box;background:#fbbf241f;border:2px solid #fbbf24;position:absolute}.selection-rect{pointer-events:none;z-index:6;box-sizing:border-box;background:#00d4ff1f;border:1px dashed #00d4ff;position:absolute}.placed-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.placed-name{color:#f0f0ff;text-shadow:0 1px 2px #0009;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.placed-note{font-weight:600}.placed-patch-name{opacity:.7;font-weight:400}@container (width<=119px){.placed-patch-name{display:none}}@container (width<=29px){.placed-dot,.placed-name{display:none}}.playback-cursor{pointer-events:none;z-index:10;background:#4ade80;width:2px;transition:none;position:absolute;top:0;bottom:0;box-shadow:0 0 8px #4ade80aa}.visualizer{background:#0a0a1a;border:1px solid #2a4a3a;border-radius:8px;flex-shrink:0;overflow:hidden}.visualizer-canvas{width:100%;height:80px;display:block}.context-menu-backdrop{z-index:99;position:fixed;inset:0}.timeline-context-menu{z-index:100;background:#1a1a2e;border:1px solid #4a4a6a;border-radius:6px;padding:4px;position:fixed;box-shadow:0 4px 16px #00000080}.timeline-context-menu button{color:#e0e0ff;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:4px;width:100%;padding:6px 16px;font-family:inherit;font-size:.82rem;display:block}.timeline-context-menu button:hover:not(:disabled){color:#00d4ff;background:#2a2a4a}.timeline-context-menu button:disabled{color:#4a4a6a;cursor:default}.context-menu-separator{background:#3a3a5a;height:1px;margin:3px 4px}.measure-insert-form{color:#e0e0ff;padding:6px 10px;font-size:.82rem}.measure-insert-form label{white-space:nowrap;margin-bottom:6px;display:block}.measure-insert-row{align-items:center;gap:6px;display:flex}.measure-insert-row input{color:#e0e0ff;text-align:center;background:#2a2a4a;border:1px solid #4a4a6a;border-radius:4px;width:48px;padding:3px 6px;font-size:.82rem}.measure-insert-row span{color:#9aa2b8;font-size:.78rem}.measure-insert-row button{color:#fff;cursor:pointer;background:#00b4d8;border:none;border-radius:4px;padding:3px 10px;font-size:.78rem}.measure-insert-row button:hover{background:#00d4ff}.timeline-hint{text-align:center;color:#5a5a7a;flex-shrink:0;font-size:.8rem;font-style:italic}.tabs{background:#1a1a2e;border-bottom:1px solid #2a2a4a;flex-shrink:0;gap:2px;padding:0 16px;display:flex}.tabs .tab{color:#7a7a9a;letter-spacing:.02em;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s,background .15s}.tabs .tab:hover{color:#c0c0e0;background:#ffffff05}.tabs .tab.active{color:#00d4ff;border-bottom-color:#00d4ff}@media (width<=600px){.tabs{padding:0 8px}.tabs .tab{flex:1;padding:10px 12px;font-size:.85rem}}.sound-bank-panel{box-sizing:border-box;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:8px;flex-direction:column;width:100%;min-width:200px;height:100%;padding:12px;display:flex;overflow:hidden}.sound-bank-header{border-bottom:1px solid #3a3a5a;flex-shrink:0;justify-content:space-between;align-items:baseline;margin-bottom:10px;padding-bottom:8px;display:flex}.sound-bank-header h3{color:#a0a0c0;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.85rem;font-weight:600}.sound-bank-header-right{align-items:baseline;gap:8px;display:flex}.sound-bank-count{color:#5a5a7a;font-family:monospace;font-size:.75rem}.folder-add-btn{color:#a0a0c0;cursor:pointer;white-space:nowrap;background:#6464a033;border:1px solid #4a4a6a;border-radius:4px;padding:2px 8px;font-size:.7rem;transition:background .12s,border-color .12s}.folder-add-btn:hover{background:#6464a059;border-color:#6a6a8a}.sound-bank-empty{color:#8a8fa8;margin:0;font-size:.8rem;font-style:italic}.sound-bank-list{flex-direction:column;flex:1;gap:4px;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.folder-item{list-style:none}.folder-row{color:#c0c0d8;cursor:pointer;-webkit-user-select:none;user-select:none;background:#50507826;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:5px 8px;font-size:.8rem;transition:background .12s,border-color .15s;display:flex}.folder-row:hover{background:#50507847;border-color:#4a4a6a}.folder-row.is-drop-target{background:#00d4ff1f;border-color:#00d4ff;box-shadow:0 0 6px #00d4ff40}.folder-item.is-dragging>.folder-row{opacity:.4}.folder-chevron{color:#7a7a9a;text-align:center;flex-shrink:0;width:12px;font-size:.55rem;transition:transform .15s}.folder-chevron.is-expanded{transform:rotate(90deg)}.folder-icon{flex-shrink:0;font-size:.85rem}.folder-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.folder-badge{color:#6a6a8a;background:#3c3c5a66;border-radius:8px;flex-shrink:0;padding:0 5px;font-family:monospace;font-size:.65rem;line-height:1.4}.folder-rename-input{flex:1;min-width:0}.folder-children{flex-direction:column;gap:3px;margin:0;padding:2px 0 0;list-style:none;display:flex}.sound-bank-list .sound-chip{background:color-mix(in srgb, var(--chip-color) 12%, #1a1a2e);border:1px solid color-mix(in srgb, var(--chip-color) 35%, transparent);color:#d0d0e0;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:6px;padding:6px 8px;font-size:.8rem;transition:transform .1s,border-color .15s,box-shadow .15s,opacity .15s;display:flex}.sound-bank-list .sound-chip:hover{border-color:var(--chip-color);box-shadow:0 0 6px color-mix(in srgb, var(--chip-color) 35%, transparent)}.sound-bank-list .sound-chip:active{cursor:grabbing}.sound-bank-list .sound-chip.is-current{background:color-mix(in srgb, var(--chip-color) 22%, #1a1a2e);border-color:var(--chip-color);box-shadow:0 0 0 1px var(--chip-color), 0 0 8px color-mix(in srgb, var(--chip-color) 50%, transparent)}.sound-bank-list .sound-chip.is-dragging{opacity:.4}.sound-chip .chip-dot{background:var(--chip-color);border-radius:50%;flex-shrink:0;width:8px;height:8px}.sound-chip .chip-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sound-chip .chip-info{color:#9aa2b8;font-family:monospace;font-size:.7rem}.sound-chip .chip-rename,.sound-chip .chip-delete,.folder-row .chip-rename,.folder-row .chip-delete{color:#a0a8b8;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:.85rem;line-height:1;transition:background .12s,color .12s;display:flex}.sound-chip .chip-rename:hover,.folder-row .chip-rename:hover{color:#c084fc;background:#c084fc33}.sound-chip .chip-delete,.folder-row .chip-delete{font-size:1rem}.sound-chip .chip-delete:hover,.folder-row .chip-delete:hover{color:#f46;background:#f463}.sound-chip .chip-rename-input{border:1px solid var(--chip-color);color:#e0e0e0;background:#0000004d;border-radius:4px;outline:none;flex:1;min-width:0;padding:2px 6px;font-family:inherit;font-size:.8rem}.sound-chip .chip-rename-input:focus{box-shadow:0 0 4px var(--chip-color)}.folder-row .chip-rename-input{color:#e0e0e0;background:#0000004d;border:1px solid #6a6a8a;border-radius:4px;outline:none;flex:1;min-width:0;padding:2px 6px;font-family:inherit;font-size:.8rem}.folder-row .chip-rename-input:focus{box-shadow:0 0 4px #6a6a8a}.drop-root-zone{text-align:center;color:#6a6a8a;border:1px dashed #4a4a6a;border-radius:6px;flex-shrink:0;margin-top:6px;padding:8px;font-size:.7rem;transition:background .12s,border-color .15s,color .15s}.drop-root-zone.is-active{color:#00d4ff;background:#00d4ff14;border-color:#00d4ff}@media (width<=900px){.sound-bank-panel{width:100%;max-width:none;height:auto;max-height:180px}.sound-bank-list{flex-flow:wrap;overflow-y:visible}.sound-bank-list .sound-chip{flex:none}}.mini-player{box-sizing:border-box;align-items:center;gap:10px;padding:10px 12px;display:flex}.mini-play-btn{color:#0f0f1a;cursor:pointer;background:#4ade80;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;transition:background .15s,transform .1s;display:flex}.mini-play-btn:hover:not(:disabled){background:#22c55e;transform:scale(1.05)}.mini-play-btn.playing{color:#fff;background:#f46}.mini-play-btn.playing:hover{background:#e63355}.mini-play-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.mini-progress-bar{background:linear-gradient(to right, #4ade8066 0%, #4ade8066 var(--progress,0%), #4ade800f var(--progress,0%), #4ade800f 100%);border:1px solid #3a4a5a;border-radius:6px;flex:1;justify-content:center;align-items:center;min-width:0;height:36px;display:flex;position:relative;overflow:hidden}.mini-progress-text{color:#e0f4e0;text-shadow:0 1px 2px #00000080;z-index:1;font-family:monospace;font-size:.8rem}.duration-buttons{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.duration-buttons-bases,.duration-buttons-coefs{background:#1a1a2e;border:1px solid #3a3a5a;border-radius:6px;flex-wrap:wrap;gap:2px;padding:2px;display:flex}.dur-btn{color:#c0c0e0;cursor:pointer;background:#2a2a4a;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;min-width:28px;height:26px;padding:0 6px;font-family:monospace;font-size:.78rem;font-weight:500;transition:background .1s,border-color .1s,color .1s;display:inline-flex}.dur-btn-base{font-family:Bravura,Segoe UI Symbol,Apple Symbols,DejaVu Sans,monospace;font-size:.95rem;line-height:1}.dur-btn:hover:not(:disabled){color:#00d4ff;background:#3a3a6a;border-color:#00d4ff}.dur-btn.is-active{color:#1a1a2e;background:#00d4ff;border-color:#00b8e6;font-weight:600}.dur-btn.is-active:hover:not(:disabled){color:#1a1a2e;background:#00b8e6}.dur-btn:disabled{opacity:.3;cursor:not-allowed}.toolbar{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 16px;display:flex}.toolbar-section{align-items:center;gap:8px;display:flex}.toolbar-section.toolbar-spacer{flex:1;min-width:0}.toolbar .transport-btn{color:#0f0f1a;cursor:pointer;background:#4ade80;border:none;border-radius:6px;padding:6px 16px;font-size:.85rem;font-weight:600;transition:background .15s,transform .1s,opacity .15s}.toolbar .transport-btn:hover:not(:disabled){background:#22c55e;transform:scale(1.02)}.toolbar .transport-btn.playing{color:#fff;background:#f46}.toolbar .transport-btn.playing:hover:not(:disabled){background:#e63355}.toolbar .transport-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.toolbar .toolbar-secondary{color:#8a8aaa;cursor:pointer;background:0 0;border:1px solid #5a5a7a;border-radius:6px;padding:6px 12px;font-size:.8rem;transition:border-color .15s,color .15s}.toolbar .toolbar-secondary:hover:not(:disabled){color:#f46;border-color:#f46}.toolbar .toolbar-secondary:disabled{opacity:.35;cursor:not-allowed}.toolbar .toolbar-export{color:#c084fc;cursor:pointer;background:0 0;border:1px solid #c084fc;border-radius:6px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:background .15s}.toolbar .toolbar-export:hover:not(:disabled){background:#c084fc26}.toolbar .toolbar-export:disabled{opacity:.35;cursor:not-allowed}.bpm-control{color:#a0a0c0;letter-spacing:.05em;align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:inline-flex}.bpm-input{color:#e0e0e0;text-align:center;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;outline:none;width:56px;padding:4px 6px;font-family:monospace;font-size:.85rem}.bpm-input:focus{background:#0f0f1a;border-color:#00d4ff}.a4-control{color:#a0a0c0;letter-spacing:.05em;align-items:center;gap:6px;margin-left:14px;font-size:.75rem;font-weight:600;display:inline-flex}.a4-input{color:#e0e0e0;text-align:center;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;outline:none;width:48px;padding:4px 6px;font-family:monospace;font-size:.85rem}.a4-input:focus{background:#0f0f1a;border-color:#00d4ff}.a4-unit{color:#6a6a8a;letter-spacing:0;font-size:.7rem;font-weight:400}.xedo-control{color:#a0a0c0;letter-spacing:.05em;align-items:center;gap:6px;margin-left:14px;font-size:.75rem;font-weight:600;display:inline-flex}.xedo-input{color:#e0e0e0;text-align:center;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;outline:none;width:42px;padding:4px 6px;font-family:monospace;font-size:.85rem}.xedo-input:focus{background:#0f0f1a;border-color:#00d4ff}.tuning-control{color:#a0a0c0;letter-spacing:.05em;align-items:center;gap:6px;margin-left:14px;font-size:.75rem;font-weight:600;display:inline-flex}.tuning-select{color:#e0e0e0;cursor:pointer;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;outline:none;max-width:220px;padding:4px 6px;font-family:monospace;font-size:.8rem}.tuning-select:focus{background:#0f0f1a;border-color:#00d4ff}.duration-control-label{color:#a0a0c0;letter-spacing:.05em;text-transform:uppercase;margin-right:4px;font-size:.75rem;font-weight:600}.duration-mode-toggle{color:#a0a0c0;cursor:pointer;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;min-width:32px;height:26px;margin-left:4px;padding:0 6px;font-family:monospace;font-size:.85rem;transition:background .1s,border-color .1s,color .1s}.duration-mode-toggle:hover{color:#00d4ff;border-color:#00d4ff}.clipboard-hint{color:#7a7a9a;white-space:nowrap;font-size:.65rem;font-style:italic}.zoom-h-section,.zoom-v-section,.history-section{background:#14141f;border:1px solid #2a2a4a;border-radius:6px;padding:4px 8px}.history-btn{color:#c0c0e0;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:26px;height:26px;font-size:1.05rem;line-height:1;transition:background .12s,color .12s;display:inline-flex}.history-btn:hover:not(:disabled){color:#00d4ff;background:#2a2a4a}.history-btn:disabled{opacity:.3;cursor:not-allowed}.toolbar-flash{color:#4ade80;background:#4ade801a;border:1px solid #4ade804d;border-radius:4px;padding:4px 10px;font-size:.78rem;font-style:italic;animation:.2s ease-out toolbar-flash-in}.toolbar-octave{color:#1a1a2e;background:#00d4ff;border-radius:4px;align-items:center;gap:4px;margin-right:8px;padding:3px 10px;font-family:monospace;font-size:.72rem;font-weight:500;display:inline-flex}.toolbar-octave strong{font-size:.85rem;font-weight:700}.toolbar-octave.is-reference{color:#88c0e0;background:#243a4a}.toolbar-pressed-note{color:#1a1a2e;background:#ffc600;border-radius:4px;align-items:center;gap:4px;margin-right:8px;padding:3px 10px;font-family:monospace;font-size:.8rem;font-weight:600;display:inline-flex;box-shadow:0 0 8px #ffc60080}@keyframes toolbar-flash-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.zoom-label{color:#7a7a9a;text-transform:uppercase;letter-spacing:.05em;margin-right:2px;font-size:.7rem;font-weight:600}.zoom-step{color:#c0c0e0;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:.95rem;line-height:1;transition:background .12s,color .12s;display:inline-flex}.zoom-step:hover:not(:disabled){color:#00d4ff;background:#2a2a4a}.zoom-step:disabled{opacity:.35;cursor:not-allowed}.zoom-slider{accent-color:#00d4ff;cursor:pointer;width:140px;height:4px}.zoom-v-slider{width:100px}.zoom-value{color:#7a7a9a;text-align:right;min-width:42px;font-family:monospace;font-size:.7rem}.properties-panel{box-sizing:border-box;background:#1a1a2e;border:1px solid #2a2a4a;border-radius:8px;flex-direction:column;width:100%;min-width:220px;height:100%;padding:12px;display:flex}.properties-header{border-bottom:1px solid #2a2a4a;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;display:flex}.properties-header h3{color:#a0a0c0;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;margin:0;font-size:.85rem;font-weight:600;display:flex}.properties-badge{color:#0f0f1a;letter-spacing:0;text-transform:none;background:#00d4ff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.7rem;font-weight:700;display:inline-flex}.properties-header-right{align-items:center;gap:4px;margin-left:auto;display:flex}.properties-toggle{color:#8a8aaa;cursor:pointer;background:0 0;border:none;border-radius:4px;width:22px;height:22px;font-size:.85rem;display:none}.properties-toggle:hover{color:#00d4ff;background:#2a2a4a}.properties-body{flex:1;overflow-y:auto}.properties-empty{color:#8a8fa8;margin:0;font-size:.8rem;font-style:italic}.properties-multi{color:#e0e0ff;margin:0 0 6px;font-size:.85rem;font-weight:600}.clip-editor{flex-direction:column;gap:12px;display:flex}.clip-editor .field{flex-direction:column;gap:4px;display:flex}.clip-editor .field-label{color:#9aa2b8;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.clip-editor .field-input{color:#e0e0ff;box-sizing:border-box;background:#0f0f1a;border:1px solid #4a4a6a;border-radius:4px;width:100%;padding:6px 8px;font-family:inherit;font-size:.82rem}.clip-editor .field-input:focus{border-color:#00d4ff;outline:none}.clip-editor .field-readonly{color:#e0e0ff;background:0 0;font-family:monospace;font-size:.82rem}.xedo-control-properties{color:#9aa2b8;align-items:center;gap:6px;margin-top:4px;font-size:.78rem;font-weight:600;display:inline-flex}.xedo-input-properties{color:#e0e0ff;text-align:center;background:#0f0f1a;border:1px solid #4a4a6a;border-radius:4px;outline:none;width:48px;padding:4px 6px;font-family:monospace;font-size:.82rem}.xedo-input-properties:focus{border-color:#00d4ff}.note-editor{flex-direction:column;gap:6px;display:flex}.note-editor-display{color:#e0e0ff;font-family:monospace;font-size:.78rem}.note-editor-hz{color:#9aa2b8}.note-editor-free{background:#0f0f1a;border:1px solid #4a4a6a;border-radius:4px;align-items:center;gap:4px;padding:6px 8px;display:flex}.note-editor-free .freq-input{color:#e0e0ff;background:0 0;border:none;outline:none;flex:1;min-width:0;font-family:monospace;font-size:.82rem}.note-editor-unit{color:#9aa2b8;font-family:monospace;font-size:.78rem}.sound-select-wrapper{align-items:center;gap:6px;display:flex}.sound-select-wrapper .sound-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.clip-delete-btn{color:#ff6b8a;cursor:pointer;background:#2a1a1f;border:1px solid #5a2a3a;border-radius:4px;margin-top:8px;padding:7px 10px;font-family:inherit;font-size:.8rem}.split-buttons{gap:6px;margin-top:4px;display:flex}.clip-split-btn{color:#c084fc;cursor:pointer;background:#1a1a2a;border:1px solid #3a2a5a;border-radius:4px;flex:1;padding:6px 8px;font-family:inherit;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s}.clip-split-btn:hover:not(:disabled){background:#2a1a3a;border-color:#c084fc}.clip-split-btn:disabled{opacity:.35;cursor:not-allowed}.clip-merge-btn{color:#00d4ff;cursor:pointer;background:#1a2a2a;border:1px solid #2a4a5a;border-radius:4px;margin-top:4px;padding:7px 10px;font-family:inherit;font-size:.8rem;transition:background .12s,border-color .12s}.clip-merge-btn:hover:not(:disabled){background:#1a3a3a;border-color:#00d4ff}.clip-merge-btn:disabled{opacity:.35;cursor:not-allowed}.clip-delete-btn:hover{color:#ff8ca5;background:#3a1a24;border-color:#8a3a4a}@media (width<=1100px){.properties-panel{width:100%;max-width:none;height:auto;max-height:240px}.properties-toggle{justify-content:center;align-items:center;display:flex}.properties-panel.collapsed{max-height:44px;overflow:hidden}.properties-panel.collapsed .properties-header{border-bottom:none;margin-bottom:0;padding-bottom:0}}.spectrogram{box-sizing:border-box;background:#14141f;border:1px solid #3a3a5a;border-radius:8px;flex-direction:column;width:100%;min-width:0;height:100%;padding:12px;display:flex}.spectrogram-header{border-bottom:1px solid #3a3a5a;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:6px;display:flex}.spectrogram-header h3{color:#a0a0c0;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.8rem;font-weight:600}.spectrogram-canvas-container{background:#0a0a1a;border:1px solid #2a2a4a;border-radius:6px;flex:1;min-width:0;min-height:200px;overflow:hidden}.spectrogram-canvas{width:100%;height:100%;display:block}.sidebar-resizer{cursor:ew-resize;z-index:5;background:0 0;width:10px;transition:background .15s;position:absolute;top:0;bottom:0}.sidebar-resizer-right{right:-5px}.sidebar-resizer-left{left:-5px}.sidebar-resizer:hover{background:#00d4ff40}.sidebar-resizer:active{background:#00d4ff80}@media (width<=1100px){.sidebar-resizer{display:none}}.toast{z-index:1000;border-radius:6px;align-items:center;gap:12px;max-width:520px;padding:10px 16px;font-size:.85rem;animation:.18s ease-out toast-in;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000080}.toast-error{color:#ffb3c1;background:#2a1a1f;border:1px solid #6a2a3a}.toast-info{color:#b3d4ff;background:#1a2a3a;border:1px solid #2a4a6a}.toast-message{flex:1;line-height:1.4}.toast-dismiss{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:3px;padding:2px 6px;font-size:1.1rem;line-height:1}.toast-dismiss:hover{opacity:1;background:#ffffff14}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.app{color:#e0e0e0;background:#0f0f1a;flex-direction:column;height:100vh;display:flex;overflow:hidden}.app>main[hidden]{display:none!important}.designer-layout{flex:1;grid-template:"sidebar main"1fr/220px 1fr;gap:12px;min-height:0;padding:12px;display:grid}.designer-sidebar{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:8px;flex-direction:column;grid-area:sidebar;min-height:0;display:flex;overflow:hidden}.designer-sidebar>.sound-bank-panel{background:0 0;border:none;border-radius:0;flex:1;min-width:0;max-width:none;min-height:0}.designer-sidebar>.mini-player{background:0 0;border:none;border-top:1px solid #2a2a4a;border-radius:0;flex:none}.designer-main{flex-direction:column;grid-area:main;gap:12px;min-width:0;min-height:0;display:flex}.designer-row{flex-direction:row;flex:1;gap:12px;min-width:0;min-height:0;display:flex}.designer-cell{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.composer-layout{grid-template-columns:var(--composer-bank-width,280px) 1fr var(--composer-aside-width,280px);flex:1;grid-template-rows:auto 1fr;grid-template-areas:"toolbar toolbar toolbar""bank main aside";gap:12px;min-height:0;padding:12px;display:grid}.composer-toolbar{grid-area:toolbar}.composer-sidebar{grid-area:bank;min-height:0;position:relative}.composer-main{flex-direction:column;grid-area:main;min-width:0;min-height:0;display:flex}.composer-aside{grid-area:aside;min-height:0;position:relative}.sidebar-toggle{color:#a0a0c0;cursor:pointer;background:#1a1a2e;border:1px solid #3a3a5a;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;transition:background .15s,color .15s,border-color .15s;display:flex}.sidebar-toggle:hover{color:#00d4ff;background:#2a2a4a;border-color:#00d4ff}.sidebar-toggle-icon{font-size:.7rem;line-height:1;display:block}.composer-sidebar.is-collapsed,.composer-aside.is-collapsed{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:8px;flex-direction:column;align-items:center;gap:10px;padding-top:10px;display:flex;overflow:hidden}.sidebar-collapsed-label{writing-mode:vertical-rl;text-orientation:mixed;color:#a0a0c0;text-transform:uppercase;letter-spacing:.08em;-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:.8rem;font-weight:600}@media (width<=1100px){.designer-layout{grid-template-columns:200px 1fr;overflow-y:auto}.composer-layout{grid-template:"toolbar toolbar""bank main"1fr"aside aside"/minmax(200px,240px) 1fr}}@media (width<=800px){.designer-layout{grid-template:"sidebar""main"1fr/1fr}.designer-sidebar{flex-direction:row;max-height:180px}.designer-sidebar>.sound-bank-panel{border-right:1px solid #2a2a4a;flex:1}.designer-sidebar>.mini-player{border-top:none;border-left:1px solid #2a2a4a;flex:none}.designer-row{flex-direction:column}.composer-layout{grid-template:"toolbar""bank""main"1fr"aside"/1fr}}
