.karaoke-display[data-v-a7153272]{align-items:center;display:flex;flex-direction:column;font-family:var(--font-display,system-ui,sans-serif);gap:12px;justify-content:center;min-height:200px;padding:24px;text-align:center}.karaoke-line[data-v-a7153272]{max-width:90%;transition:opacity .3s ease,transform .3s ease}.karaoke-line.previous[data-v-a7153272]{color:var(--textMuted,#888);font-size:16px}.karaoke-line.current[data-v-a7153272]{color:var(--textPrimary,#fff);font-size:28px;font-weight:600;padding-bottom:8px;position:relative}.karaoke-line.next[data-v-a7153272]{color:var(--textMuted,#888);font-size:18px}.karaoke-line.placeholder[data-v-a7153272]{color:var(--textMuted,#666);font-weight:400}.karaoke-word[data-v-a7153272]{transition:color .15s ease,text-shadow .15s ease}.karaoke-word.active[data-v-a7153272],.karaoke-word.highlighted[data-v-a7153272]{color:var(--accentFill,#4ecca3)}.karaoke-word.active[data-v-a7153272]{text-shadow:0 0 20px var(--accentFill,#4ecca3)}.waiting-indicator[data-v-a7153272]{animation:pulse-a7153272 1.5s ease-in-out infinite}@keyframes pulse-a7153272{0%,to{opacity:.3}50%{opacity:.7}}.line-progress[data-v-a7153272]{background:var(--surface-sunken,hsla(0,0%,100%,.1));border-radius:2px;bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.line-progress-fill[data-v-a7153272]{background:var(--accentFill,#4ecca3);border-radius:2px;height:100%;transition:width .05s linear}.lrc-editor[data-v-a012c3b3]{background:var(--surface-base,#0f0f1a);color:var(--textPrimary,#fff);display:flex;flex-direction:column;height:100%;overflow:hidden}.editor-header[data-v-a012c3b3]{align-items:center;background:var(--surface-alt,#1a1a2e);border-bottom:1px solid var(--borderDefault,#2a2a3e);display:flex;gap:16px;padding:12px 16px}.editor-header h3[data-v-a012c3b3]{font-size:16px;font-weight:600;margin:0}.editor-header .header-info[data-v-a012c3b3]{color:var(--textMuted,#888);flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-header .header-actions[data-v-a012c3b3]{display:flex;gap:8px}.clear-btn[data-v-a012c3b3],.icon-btn[data-v-a012c3b3],.preview-btn[data-v-a012c3b3],.primary-btn[data-v-a012c3b3],.sync-btn[data-v-a012c3b3]{border:none;border-radius:4px;cursor:pointer;font-size:13px;padding:6px 12px;transition:background .15s,opacity .15s}.clear-btn[data-v-a012c3b3]:disabled,.icon-btn[data-v-a012c3b3]:disabled,.preview-btn[data-v-a012c3b3]:disabled,.primary-btn[data-v-a012c3b3]:disabled,.sync-btn[data-v-a012c3b3]:disabled{cursor:not-allowed;opacity:.5}.icon-btn[data-v-a012c3b3]{background:var(--surface-alt,#2a2a3e);color:var(--textPrimary,#fff)}.icon-btn[data-v-a012c3b3]:hover:not(:disabled){background:var(--surface-hover,#3a3a4e)}.primary-btn[data-v-a012c3b3]{background:var(--accentFill,#4ecca3);color:#000;font-weight:600}.primary-btn[data-v-a012c3b3]:hover:not(:disabled){background:var(--accentFillHover,#5fd9b0)}.waveform-section[data-v-a012c3b3]{padding:12px 16px;position:relative}.waveform-loading[data-v-a012c3b3],.waveform-section[data-v-a012c3b3]{background:var(--surface-sunken,#0a0a14)}.waveform-loading[data-v-a012c3b3]{align-items:center;color:var(--textMuted,#888);display:flex;inset:0;justify-content:center;position:absolute;z-index:1}.waveform-container[data-v-a012c3b3]{min-height:100px}.zoom-controls[data-v-a012c3b3]{align-items:center;color:var(--textMuted,#888);display:flex;font-size:12px;gap:8px;position:absolute;right:16px;top:8px}.zoom-controls button[data-v-a012c3b3]{background:var(--surface-alt,#2a2a3e);border:none;border-radius:4px;color:var(--textPrimary,#fff);cursor:pointer;height:24px;width:24px}.zoom-controls button[data-v-a012c3b3]:hover{background:var(--surface-hover,#3a3a4e)}.transport-controls[data-v-a012c3b3]{align-items:center;background:var(--surface-alt,#1a1a2e);border-bottom:1px solid var(--borderDefault,#2a2a3e);display:flex;justify-content:space-between;padding:12px 16px}.time-display[data-v-a012c3b3]{color:var(--textMuted,#888);font-family:monospace;font-size:14px;min-width:140px}.transport-buttons[data-v-a012c3b3]{align-items:center;display:flex;gap:4px}.transport-buttons button[data-v-a012c3b3]{background:var(--surface-sunken,#0a0a14);border:none;border-radius:4px;color:var(--textPrimary,#fff);cursor:pointer;font-size:16px;height:36px;width:36px}.transport-buttons button[data-v-a012c3b3]:hover{background:var(--surface-hover,#2a2a3e)}.transport-buttons button.play-btn[data-v-a012c3b3]{background:var(--accentFill,#4ecca3);border-radius:50%;color:#000;font-size:20px;height:48px;width:48px}.transport-buttons button.play-btn[data-v-a012c3b3]:hover{background:var(--accentFillHover,#5fd9b0)}.sync-controls[data-v-a012c3b3]{display:flex;gap:8px}.preview-btn[data-v-a012c3b3],.sync-btn[data-v-a012c3b3]{background:var(--surface-sunken,#0a0a14);color:var(--textPrimary,#fff)}.preview-btn[data-v-a012c3b3]:hover:not(:disabled),.sync-btn[data-v-a012c3b3]:hover:not(:disabled){background:var(--surface-hover,#2a2a3e)}.preview-btn.active[data-v-a012c3b3],.sync-btn.active[data-v-a012c3b3],.sync-indicator[data-v-a012c3b3]{background:var(--accentFill,#4ecca3);color:#000}.sync-indicator[data-v-a012c3b3]{padding:12px 16px}.sync-progress-bar[data-v-a012c3b3]{background:#0003;border-radius:2px;height:4px;margin-bottom:8px;overflow:hidden}.sync-progress-fill[data-v-a012c3b3]{background:#000;height:100%;transition:width .1s}.sync-instruction[data-v-a012c3b3]{font-size:14px}.sync-instruction .key-hint[data-v-a012c3b3]{font-weight:600}.sync-instruction .next-line[data-v-a012c3b3]{font-style:italic;margin-left:4px}.editor-content[data-v-a012c3b3]{display:flex;flex:1;overflow:hidden}.lyrics-input-section[data-v-a012c3b3],.timed-lines-section[data-v-a012c3b3]{display:flex;flex:1;flex-direction:column;overflow:hidden}.lyrics-input-section[data-v-a012c3b3]{border-right:1px solid var(--borderDefault,#2a2a3e)}.section-header[data-v-a012c3b3]{align-items:center;background:var(--surface-alt,#1a1a2e);display:flex;font-size:12px;font-weight:600;justify-content:space-between;letter-spacing:.5px;padding:8px 12px;text-transform:uppercase}.clear-btn[data-v-a012c3b3],.section-header[data-v-a012c3b3]{color:var(--textMuted,#888)}.clear-btn[data-v-a012c3b3]{background:transparent;border:1px solid var(--borderDefault,#2a2a3e);font-size:11px;padding:4px 8px}.clear-btn[data-v-a012c3b3]:hover{background:var(--surface-hover,#2a2a3e);color:var(--textPrimary,#fff)}.lyrics-textarea[data-v-a012c3b3]{background:var(--surface-sunken,#0a0a14);border:none;color:var(--textPrimary,#fff);flex:1;font-family:inherit;font-size:14px;line-height:1.6;padding:12px;resize:none}.lyrics-textarea[data-v-a012c3b3]::-moz-placeholder{color:var(--textMuted,#666)}.lyrics-textarea[data-v-a012c3b3]::placeholder{color:var(--textMuted,#666)}.lyrics-textarea[data-v-a012c3b3]:focus{outline:none}.lyrics-textarea[data-v-a012c3b3]:disabled{opacity:.7}.timed-lines-list[data-v-a012c3b3]{flex:1;overflow-y:auto;padding:8px}.timed-line[data-v-a012c3b3]{align-items:center;background:var(--surface-sunken,#0a0a14);border-radius:4px;display:flex;gap:8px;margin-bottom:4px;padding:8px}.timed-line.current[data-v-a012c3b3]{background:var(--accentFill,#4ecca3);color:#000}.timed-line.current .line-actions button[data-v-a012c3b3],.timed-line.current .time-badge[data-v-a012c3b3]{background:#0003;color:#000}.timed-line.current .line-actions button[data-v-a012c3b3]:hover{background:#0000004d}.time-badge[data-v-a012c3b3]{background:var(--surface-alt,#2a2a3e);border:none;border-radius:4px;color:var(--accentFill,#4ecca3);cursor:pointer;flex-shrink:0;font-family:monospace;font-size:12px;padding:4px 8px}.time-badge[data-v-a012c3b3]:hover{background:var(--surface-hover,#3a3a4e)}.line-text[data-v-a012c3b3]{flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-actions[data-v-a012c3b3]{display:flex;flex-shrink:0;gap:4px}.line-actions button[data-v-a012c3b3]{background:var(--surface-alt,#2a2a3e);border:none;border-radius:4px;color:var(--textPrimary,#fff);cursor:pointer;font-size:12px;height:24px;width:24px}.line-actions button[data-v-a012c3b3]:hover{background:var(--surface-hover,#3a3a4e)}.line-actions button.remove-btn[data-v-a012c3b3]:hover{background:#e53e3e;color:#fff}.empty-state[data-v-a012c3b3]{color:var(--textMuted,#888);font-size:14px;padding:24px;text-align:center}.preview-overlay[data-v-a012c3b3]{background:#0f0f1af2;border-radius:12px;bottom:80px;box-shadow:0 8px 32px #00000080;left:50%;max-width:600px;padding:16px;position:fixed;transform:translate(-50%);width:80%;z-index:100}.shortcuts-help[data-v-a012c3b3]{background:var(--surface-alt,#1a1a2e);border-top:1px solid var(--borderDefault,#2a2a3e);color:var(--textMuted,#888);display:flex;font-size:12px;gap:16px;justify-content:center;padding:8px 16px}.shortcuts-help kbd[data-v-a012c3b3]{background:var(--surface-sunken,#0a0a14);border-radius:3px;display:inline-block;font-family:monospace;font-size:11px;padding:2px 6px}.dance-avatar[data-v-e617d7ff]{height:100%;overflow:hidden;position:relative;width:100%}.rive-canvas[data-v-e617d7ff]{display:block;height:100%;width:100%}.dance-avatar.is-dancing .rive-canvas[data-v-e617d7ff]{filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.debug-overlay[data-v-e617d7ff]{background:#000000b3;border-radius:4px;bottom:8px;color:#fff;font-family:monospace;font-size:10px;left:8px;padding:4px 8px;pointer-events:none;position:absolute}.midi-stream-editor[data-v-7ab614a4]{background:var(--surface-base,var(--surface,#0f0f1a));color:var(--surface-base-text,var(--textPrimary,#fff));display:flex;flex-direction:column;height:100%;outline:none}.midi-stream-header[data-v-7ab614a4]{align-items:center;border-bottom:1px solid var(--surface-base-border,var(--borderDefault,#2a2a3e));display:flex;gap:8px;padding:12px}.header-title[data-v-7ab614a4]{color:var(--textPrimary,#fff);flex:1;font-size:14px;font-weight:600}.icon-button[data-v-7ab614a4]{align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--textMuted,#888);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;text-decoration:none;transition:all .15s ease;width:32px}.icon-button[data-v-7ab614a4]:hover{background:var(--surface-sunken,var(--surfaceAlt,#1a1a2e));color:var(--textPrimary,#fff)}.icon-button.active[data-v-7ab614a4]{color:var(--accentFill,#4ecca3)}.open-app-link[data-v-7ab614a4]{font-size:14px;margin-left:auto}.midi-stream-error[data-v-7ab614a4],.midi-stream-loading[data-v-7ab614a4]{align-items:center;color:var(--textMuted,#888);display:flex;flex:1;flex-direction:column;gap:12px;justify-content:center}.loading-spinner[data-v-7ab614a4]{animation:spin-7ab614a4 .8s linear infinite;border:2px solid var(--borderDefault,#2a2a3e);border-radius:50%;border-top-color:var(--accentFill,#4ecca3);height:24px;width:24px}@keyframes spin-7ab614a4{to{transform:rotate(1turn)}}.midi-stream-error[data-v-7ab614a4]{color:var(--error,#e94560)}.midi-stream-error button[data-v-7ab614a4]{background:var(--surface-sunken,var(--surfaceAlt,#1a1a2e));border:1px solid var(--borderDefault,#2a2a3e);border-radius:6px;color:var(--textPrimary,#fff);cursor:pointer;padding:8px 16px}.midi-stream-error button[data-v-7ab614a4]:hover{border-color:var(--accentFill,#4ecca3)}.midi-stream-content[data-v-7ab614a4]{display:flex;flex:1;overflow:hidden}.song-list-sidebar[data-v-7ab614a4]{background:var(--surface-alt,var(--surfaceAlt,#1a1a2e));border-right:1px solid var(--surface-alt-border,var(--borderDefault,#2a2a3e));flex-shrink:0;overflow-y:auto;width:220px}.song-section[data-v-7ab614a4]:not(:last-child){border-bottom:1px solid var(--surface-alt-border,var(--borderDefault,#2a2a3e))}.section-header[data-v-7ab614a4]{align-items:center;background:var(--surface-alt,var(--surfaceAlt,#1a1a2e));display:flex;justify-content:space-between;padding:12px 12px 8px;position:sticky;top:0}.section-title[data-v-7ab614a4]{color:var(--textMuted,#888);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.section-count[data-v-7ab614a4]{background:var(--surface-sunken,rgba(0,0,0,.2));border-radius:10px;color:var(--textMuted,#666);font-size:11px;padding:2px 6px}.song-item[data-v-7ab614a4]{align-items:center;cursor:pointer;display:flex;gap:8px;padding:10px 12px;transition:background .15s ease}.song-item[data-v-7ab614a4]:hover{background:var(--surface-sunken,rgba(0,0,0,.2))}.song-item:hover .edit-lyrics-btn[data-v-7ab614a4]{opacity:1}.song-item.active[data-v-7ab614a4]{background:var(--accentFill,#4ecca3);color:var(--accentOnFill,#fff)}.song-item.active .edit-lyrics-btn[data-v-7ab614a4],.song-item.active .song-artist[data-v-7ab614a4]{color:#fffc}.song-item.active .edit-lyrics-btn[data-v-7ab614a4]:hover{background:#fff3;color:#fff}.song-item .song-info[data-v-7ab614a4]{display:flex;flex:1;flex-direction:column;min-width:0}.edit-lyrics-btn[data-v-7ab614a4]{background:transparent;border:none;border-radius:4px;color:var(--textMuted,#888);cursor:pointer;flex-shrink:0;font-size:14px;height:28px;opacity:0;transition:opacity .15s,background .15s;width:28px}.edit-lyrics-btn[data-v-7ab614a4]:hover{background:var(--surface-hover,#3a3a4e);color:var(--textPrimary,#fff)}.song-title[data-v-7ab614a4]{font-size:13px;font-weight:500}.song-artist[data-v-7ab614a4],.song-title[data-v-7ab614a4]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-artist[data-v-7ab614a4]{font-size:12px;margin-top:2px}.empty-state[data-v-7ab614a4],.song-artist[data-v-7ab614a4]{color:var(--textMuted,#888)}.empty-state[data-v-7ab614a4]{font-size:13px;padding:24px 12px;text-align:center}.visualization-container[data-v-7ab614a4]{flex:1;min-height:200px;position:relative}.falling-notes-canvas[data-v-7ab614a4]{height:100%;left:0;position:absolute;top:0;width:100%}.karaoke-overlay[data-v-7ab614a4]{align-items:center;background:linear-gradient(180deg,#0f0f1ab3 0,#0f0f1a80 30% 70%,#0f0f1ab3);display:flex;justify-content:center;inset:0;pointer-events:none;position:absolute;z-index:10}.dance-avatar-container[data-v-7ab614a4]{background:#0000004d;border:2px solid hsla(0,0%,100%,.2);border-radius:50%;bottom:20px;height:150px;overflow:hidden;pointer-events:none;position:absolute;right:20px;width:150px;z-index:15}.no-song-overlay[data-v-7ab614a4]{align-items:center;background:var(--surface-base,rgba(15,15,26,.9));color:var(--textMuted,#888);display:flex;flex-direction:column;gap:12px;justify-content:center;inset:0;position:absolute}.no-song-overlay .overlay-icon[data-v-7ab614a4]{font-size:48px;opacity:.5}.tracks-sidebar[data-v-7ab614a4]{background:var(--surface-alt,var(--surfaceAlt,#1a1a2e));border-left:1px solid var(--surface-alt-border,var(--borderDefault,#2a2a3e));overflow-y:auto;padding:12px;width:200px}.tracks-sidebar h4[data-v-7ab614a4]{color:var(--textMuted,#888);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.track-item[data-v-7ab614a4]{align-items:center;display:flex;font-size:13px;gap:8px;padding:6px 0}.track-color[data-v-7ab614a4]{border-radius:3px;flex-shrink:0;height:12px;width:12px}.track-name[data-v-7ab614a4]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-notes[data-v-7ab614a4]{color:var(--textMuted,#888);font-size:11px}.transport-controls[data-v-7ab614a4]{align-items:center;background:var(--surface-alt,var(--surfaceAlt,#1a1a2e));border-top:1px solid var(--surface-base-border,var(--borderDefault,#2a2a3e));display:flex;gap:16px;padding:12px 16px}.transport-buttons[data-v-7ab614a4]{align-items:center;display:flex;gap:4px}.play-button[data-v-7ab614a4]{align-items:center;background:var(--accentFill,#4ecca3);border:none;border-radius:50%;color:var(--accentOnFill,#fff);cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;transition:all .15s ease;width:40px}.play-button[data-v-7ab614a4]:hover:not(:disabled){filter:brightness(1.1);transform:scale(1.05)}.play-button[data-v-7ab614a4]:disabled{cursor:not-allowed;opacity:.5}.transport-center[data-v-7ab614a4]{align-items:center;display:flex;flex:1;gap:12px}.time-display[data-v-7ab614a4]{color:var(--textMuted,#888);font-size:13px;font-variant-numeric:tabular-nums;min-width:45px}.time-display.time-duration[data-v-7ab614a4]{text-align:right}.seek-bar[data-v-7ab614a4]{background:var(--surface-sunken,var(--surface,#0f0f1a));border-radius:4px;cursor:pointer;flex:1;height:8px;position:relative}.seek-progress[data-v-7ab614a4]{background:var(--accentFill,#4ecca3);border-radius:4px;height:100%;left:0;top:0}.seek-handle[data-v-7ab614a4],.seek-progress[data-v-7ab614a4]{pointer-events:none;position:absolute}.seek-handle[data-v-7ab614a4]{background:var(--textPrimary,#fff);border-radius:50%;box-shadow:0 2px 4px #0000004d;height:14px;opacity:0;top:50%;transform:translate(-50%,-50%);transition:opacity .15s ease;width:14px}.seek-bar:hover .seek-handle[data-v-7ab614a4]{opacity:1}.transport-volume[data-v-7ab614a4]{align-items:center;display:flex;gap:8px}.volume-slider[data-v-7ab614a4]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-sunken,var(--surface,#0f0f1a));border-radius:2px;cursor:pointer;height:4px;width:80px}.volume-slider[data-v-7ab614a4]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--textPrimary,#fff);border-radius:50%;cursor:pointer;height:12px;width:12px}.volume-slider[data-v-7ab614a4]::-moz-range-thumb{background:var(--textPrimary,#fff);border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}.lrc-editor-modal[data-v-7ab614a4]{background:var(--surface-base,#0f0f1a);inset:0;position:absolute;z-index:100}
