.app-header{padding:12px 24px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}body{margin:0;font-family:v-sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}a{text-decoration:none;color:inherit}.abcjs-inline-audio{height:26px;padding:0 5px;border-radius:3px;background-color:#424242;display:flex;align-items:center;box-sizing:border-box}.abcjs-inline-audio.abcjs-disabled{opacity:.5}.abcjs-inline-audio .abcjs-btn{display:block;width:28px;height:34px;margin-right:2px;padding:7px 4px;background:none!important;border:1px solid transparent;box-sizing:border-box;line-height:1}.abcjs-btn g{fill:#f4f4f4;stroke:#f4f4f4}.abcjs-inline-audio .abcjs-btn:hover g{fill:#ccc;stroke:#ccc}.abcjs-inline-audio .abcjs-midi-selection.abcjs-pushed,.abcjs-inline-audio .abcjs-midi-loop.abcjs-pushed,.abcjs-inline-audio .abcjs-midi-reset.abcjs-pushed{border:1px solid #cccccc;background-color:#666;box-sizing:border-box}.abcjs-inline-audio .abcjs-midi-start .abcjs-pause-svg,.abcjs-inline-audio .abcjs-midi-start .abcjs-loading-svg,.abcjs-inline-audio .abcjs-midi-start.abcjs-pushed .abcjs-play-svg,.abcjs-inline-audio .abcjs-midi-start.abcjs-loading .abcjs-play-svg{display:none}.abcjs-inline-audio .abcjs-midi-start.abcjs-pushed .abcjs-pause-svg{display:block}.abcjs-inline-audio .abcjs-midi-progress-background{background-color:#424242;height:10px;border-radius:5px;border:2px solid #cccccc;margin:0 8px 0 15px;position:relative;flex:1;padding:0;box-sizing:border-box}.abcjs-inline-audio .abcjs-midi-progress-indicator{width:20px;margin-left:-10px;height:14px;background-color:#f4f4f4;position:absolute;display:inline-block;border-radius:6px;top:-4px;left:0;box-sizing:border-box}.abcjs-inline-audio .abcjs-midi-clock{margin-left:4px;margin-top:1px;margin-right:2px;display:inline-block;font-family:sans-serif;font-size:16px;box-sizing:border-box;color:#f4f4f4}.abcjs-inline-audio .abcjs-tempo-wrapper{font-size:10px;color:#f4f4f4;box-sizing:border-box;display:flex;align-items:center}.abcjs-inline-audio .abcjs-midi-tempo{border-radius:2px;border:none;margin:0 2px 0 4px;width:42px;padding-left:2px;box-sizing:border-box}.abcjs-inline-audio .abcjs-loading .abcjs-loading-svg{display:inherit}.abcjs-inline-audio .abcjs-loading{outline:none;animation-name:abcjs-spin;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:linear}.abcjs-inline-audio .abcjs-loading-svg circle{stroke:#f4f4f4}@keyframes abcjs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.abcjs-large .abcjs-inline-audio{height:52px}.abcjs-large .abcjs-btn{width:56px;height:52px;font-size:28px;padding:6px 8px}.abcjs-large .abcjs-midi-progress-background{height:20px;border:4px solid #cccccc}.abcjs-large .abcjs-midi-progress-indicator{height:28px;top:-8px;width:40px}.abcjs-large .abcjs-midi-clock{font-size:32px;margin-right:10px;margin-left:10px;margin-top:-1px}.abcjs-large .abcjs-midi-tempo{font-size:20px;width:50px}.abcjs-large .abcjs-tempo-wrapper{font-size:20px}.abcjs-css-warning{display:none}.rack-module[data-v-483c95f9]{background:#222;border:1px solid #333;border-radius:8px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0}.module-header[data-v-483c95f9]{display:flex;align-items:center;gap:8px}.module-status[data-v-483c95f9]{width:8px;height:8px;border-radius:50%;background-color:#333}.module-status.active[data-v-483c95f9]{background-color:#50c878;box-shadow:0 0 8px #50c878}.module-title[data-v-483c95f9]{font-size:.8rem;font-weight:700;color:#666;letter-spacing:1px}.bpm-display[data-v-483c95f9]{font-family:Roboto Mono,monospace;font-size:2.5rem;color:#50c878;font-weight:700}.bpm-label[data-v-483c95f9]{font-size:.8rem;color:#666}.bpm-input[data-v-483c95f9]{width:100%}.rack-btn[data-v-483c95f9]{background:#333;border:none;color:#fff;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:700;transition:all .2s}.rack-btn.primary[data-v-483c95f9]{background:#50c878;color:#000}.rack-btn[data-v-483c95f9]:hover{filter:brightness(1.1)}.spectrogram-container[data-v-7f5f8a6a]{position:relative;width:100%;height:100%;display:flex;flex-direction:column;gap:8px;background-color:#000}.screen[data-v-7f5f8a6a]{position:relative;flex:1;overflow:hidden;background:#000}.spectrogram-canvas[data-v-7f5f8a6a],.grid-canvas[data-v-7f5f8a6a]{position:absolute;top:0;left:0;width:100%;height:100%}.spectrogram-canvas[data-v-7f5f8a6a]{z-index:1}.grid-canvas[data-v-7f5f8a6a]{z-index:2;pointer-events:none}.analysis-overlay[data-v-7f5f8a6a]{position:absolute;top:12px;left:12px;background:#0009;padding:8px 12px;border-radius:8px;pointer-events:none;z-index:5;display:flex;align-items:center;gap:8px}.analysis-stat[data-v-7f5f8a6a]{font-family:Roboto Mono,monospace;color:#50c878;font-size:1rem;display:flex;align-items:center;gap:6px}.debug-info[data-v-7f5f8a6a]{color:#a5b4fc;font-size:.85rem}.overlay-btn[data-v-7f5f8a6a]{pointer-events:auto;background:#1f2937;color:#e5e7eb;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:4px 8px;cursor:pointer;font-size:.85rem}.jianpu-score[data-v-4b650479]{font-family:SimSun,Songti SC,STSong,serif;background:#fff;padding:30px}@media(max-width:500px){.jianpu-score[data-v-4b650479]{padding:0;border:1px solid #ccc}.note-number[data-v-4b650479]{font-size:24px!important}.lyric-text[data-v-4b650479]{font-size:16px!important}}@font-face{font-family:JianpuPoints;src:url(/fonts/JianpuDigits.woff2) format("woff2");font-weight:400;font-style:normal}.header-info[data-v-4b650479]{text-align:center;margin-bottom:30px}.title[data-v-4b650479]{font-size:32px;font-weight:700;color:#000;margin-bottom:12px;letter-spacing:4px}.meta-row[data-v-4b650479]{font-size:16px;color:#333;display:flex;gap:40px;justify-content:center}.music-svg[data-v-4b650479]{display:block;margin:0 auto}.note-number[data-v-4b650479]{font-size:28px;font-family:JianpuPoints,Times New Roman,serif;font-weight:400;fill:#000;text-anchor:middle;cursor:pointer}.note-number.is-rest[data-v-4b650479]{fill:#333}.accidental[data-v-4b650479]{font-size:16px;fill:#000;font-weight:700}.octave-dot[data-v-4b650479]{fill:#000}.underline[data-v-4b650479]{stroke:#000;stroke-width:2;stroke-linecap:round}.aug-dot[data-v-4b650479]{fill:#000}.dash[data-v-4b650479]{stroke:#000;stroke-width:4;stroke-linecap:round}.bar-line[data-v-4b650479]{stroke:#000;stroke-width:1.5}.bar-thick[data-v-4b650479],.repeat-dot[data-v-4b650479]{fill:#000}.part-bracket-text[data-v-4b650479]{font-size:34px;font-family:JianpuPoints,Times New Roman,serif;font-weight:400;fill:#000;text-anchor:middle}.highlight-bg[data-v-4b650479]{fill:#d0305033;rx:4}.tie-line[data-v-4b650479],.slur-line[data-v-4b650479]{fill:#000;stroke:none}.beam-line[data-v-4b650479]{stroke:#000;stroke-width:2.5;stroke-linecap:round}.grace-note-group .note-number[data-v-4b650479]{font-size:18px;font-weight:400}.grace-note-group .octave-dot[data-v-4b650479]{r:2}.grace-note-group .underline[data-v-4b650479]{stroke-width:1.5}.note-number.is-grace[data-v-4b650479]{fill:#333}.grace-slash[data-v-4b650479]{stroke:#000;stroke-width:1.5}.grace-notes-container[data-v-4b650479]{pointer-events:none}.grace-note-number[data-v-4b650479]{font-size:14px;font-family:JianpuPoints,Times New Roman,serif;font-weight:400;fill:#000;text-anchor:middle}.grace-octave-dot[data-v-4b650479]{fill:#000}.grace-underline[data-v-4b650479]{stroke:#000;stroke-width:1;stroke-linecap:round}.grace-to-main-slur[data-v-4b650479],.grace-slur[data-v-4b650479]{fill:#000;stroke:none;opacity:.9}.grace-triplet-mark[data-v-4b650479]{font-size:9px;font-style:italic;font-weight:700;fill:#000;text-anchor:middle}.lyric-text[data-v-4b650479]{font-size:20px;fill:#000;text-anchor:middle;font-family:SimSun,Songti SC,STSong,serif}.clickable-note[data-v-4b650479]{cursor:pointer}.clickable-note:hover .note-number[data-v-4b650479]{fill:#d03050;font-weight:700}.triplet-bracket .triplet-line[data-v-4b650479]{stroke:#444;stroke-width:1}.triplet-number[data-v-4b650479]{font-size:12px;font-style:italic;font-weight:700;fill:#444;text-anchor:middle}.duration-warning-bg.overflow[data-v-4b650479]{fill:#ff4d4f26}.duration-warning-bg.underflow[data-v-4b650479]{fill:#faad1426}.duration-label[data-v-4b650479]{font-size:10px;text-anchor:end;font-weight:700}.duration-label.overflow[data-v-4b650479]{fill:#ff4d4f}.duration-label.underflow[data-v-4b650479]{fill:#faad14}.measure-number[data-v-4b650479]{font-size:12px;font-family:SimSun,Songti SC,STSong,serif;font-weight:700;fill:#666;text-anchor:end;-webkit-user-select:none;user-select:none}.debug-panel[data-v-4b650479]{margin-top:20px;padding:12px;background:#f0f0f0;border-radius:4px;font-size:12px;font-family:monospace}.debug-panel .warning-text[data-v-4b650479]{color:#ff4d4f;font-weight:700}.staff-renderer[data-v-9326a46f]{width:100%;height:100%}.paper-container[data-v-9326a46f]{width:100%;height:100%;background:#fff;display:flex;align-items:flex-start;justify-content:center;overflow:auto}[data-v-9326a46f] .highlight-note{fill:#d03050!important;stroke:#d03050!important}[data-v-9326a46f] .highlight-note path{fill:#d03050!important;stroke:#d03050!important}[data-v-9326a46f] g.highlight-note path{fill:#d03050!important;stroke:#d03050!important}[data-v-9326a46f] svg{color:#000}[data-v-9326a46f] svg text{fill:#000}[data-v-9326a46f] svg path{fill:#000;stroke:none}[data-v-9326a46f] .abcjs-staff,[data-v-9326a46f] .abcjs-note,[data-v-9326a46f] .abcjs-beam-elem,[data-v-9326a46f] .abcjs-slur{fill:#000}.karaoke-container[data-v-369bd1af]{display:flex;flex-direction:column;height:100%;background:linear-gradient(180deg,#1a1a2e,#16213e,#0f0f23);border-radius:16px;overflow:hidden;font-family:SimSun,Songti SC,serif}.karaoke-controls[data-v-369bd1af]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.control-item[data-v-369bd1af]{display:flex;align-items:center;gap:12px}.control-item label[data-v-369bd1af]{color:#ffffffb3;font-size:14px}.stepper[data-v-369bd1af]{display:flex;align-items:center;background:#ffffff1a;border-radius:8px;overflow:hidden}.stepper button[data-v-369bd1af]{width:36px;height:36px;border:none;background:transparent;color:#fff;font-size:18px;cursor:pointer;transition:background .2s}.stepper button[data-v-369bd1af]:hover:not(:disabled){background:#ffffff26}.stepper button[data-v-369bd1af]:disabled{color:#ffffff4d;cursor:not-allowed}.stepper-value[data-v-369bd1af]{width:40px;text-align:center;color:#fff;font-size:16px;font-weight:600}.progress-info[data-v-369bd1af]{display:flex;align-items:baseline;gap:4px}.current-measure[data-v-369bd1af]{font-size:28px;font-weight:700;color:#50c878}.separator[data-v-369bd1af]{color:#fff6;font-size:20px}.total-measures[data-v-369bd1af]{font-size:18px;color:#fff9}.karaoke-display[data-v-369bd1af]{flex:1;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:24px}.karaoke-line[data-v-369bd1af]{background:#ffffff08;border-radius:12px;padding:16px;transition:all .3s ease}.current-line[data-v-369bd1af]{background:#50c87814;border:1px solid rgba(80,200,120,.3);box-shadow:0 0 30px #50c8781a}.current-line.transitioning[data-v-369bd1af]{opacity:.5;transform:translateY(-10px)}.next-line[data-v-369bd1af]{opacity:.6;border:1px solid rgba(255,255,255,.1)}.next-line.ready[data-v-369bd1af]{opacity:.7}.line-indicator[data-v-369bd1af]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.indicator-dot[data-v-369bd1af]{width:8px;height:8px;border-radius:50%}.indicator-dot.playing[data-v-369bd1af]{background:#50c878;box-shadow:0 0 8px #50c878;animation:pulse-369bd1af 1.5s infinite}.indicator-dot.waiting[data-v-369bd1af]{background:#fff6}.indicator-text[data-v-369bd1af]{font-size:12px;color:#ffffff80;text-transform:uppercase;letter-spacing:1px}@keyframes pulse-369bd1af{0%,to{opacity:1}50%{opacity:.5}}.line-content[data-v-369bd1af]{overflow:hidden}.karaoke-svg[data-v-369bd1af]{display:block}.measure-number[data-v-369bd1af]{font-size:12px;fill:#fff6}.note-number[data-v-369bd1af]{font-size:28px;fill:#fff;text-anchor:middle;dominant-baseline:middle}.note-number.is-rest[data-v-369bd1af]{fill:#ffffff80}.octave-dot[data-v-369bd1af]{fill:#fff}.accidental[data-v-369bd1af]{font-size:14px;fill:#fff}.underline[data-v-369bd1af]{stroke:#fff;stroke-width:2}.aug-dot[data-v-369bd1af]{fill:#fff}.dash[data-v-369bd1af]{stroke:#fff;stroke-width:2}.bar-line[data-v-369bd1af]{stroke:#fff6;stroke-width:1}.grace-notes-group[data-v-369bd1af]{opacity:.9}.grace-note-number[data-v-369bd1af]{font-size:12px;fill:#fff;text-anchor:middle;dominant-baseline:middle}.grace-octave-dot[data-v-369bd1af]{fill:#fff}.grace-accidental[data-v-369bd1af]{font-size:10px;fill:#fff}.grace-underline[data-v-369bd1af]{stroke:#fff;stroke-width:1}.tie-path[data-v-369bd1af]{fill:#fff;opacity:.8}.slur-path[data-v-369bd1af]{fill:#ffffffb3}.highlight-bg[data-v-369bd1af]{fill:#50c87866;rx:6;ry:6;animation:highlight-pulse-369bd1af .3s ease-out}@keyframes highlight-pulse-369bd1af{0%{fill:#50c878cc;transform:scale(1.1)}to{fill:#50c87866;transform:scale(1)}}.active-note .note-number[data-v-369bd1af]{fill:#50c878;font-weight:700}.active-note .octave-dot[data-v-369bd1af]{fill:#50c878}.karaoke-footer[data-v-369bd1af]{padding:12px 24px;background:#0000004d;border-top:1px solid rgba(255,255,255,.1)}.song-info[data-v-369bd1af]{display:flex;gap:16px;justify-content:center}.key-signature[data-v-369bd1af],.time-signature[data-v-369bd1af]{color:#fff9;font-size:14px}@media(max-width:768px){.karaoke-controls[data-v-369bd1af]{padding:12px 16px}.control-item label[data-v-369bd1af]{display:none}.karaoke-display[data-v-369bd1af]{padding:16px;gap:16px}.note-number[data-v-369bd1af],.current-measure[data-v-369bd1af]{font-size:24px}}.workbench-container[data-v-df1fef4e]{display:grid;grid-template-columns:1fr 280px;grid-template-rows:48px 1fr 200px;height:100vh;background-color:#121214;color:#e0e0e0;overflow:hidden;transition:all .3s ease}.workbench-container.rack-collapsed[data-v-df1fef4e]{grid-template-columns:1fr 0px}.stage-toolbar[data-v-df1fef4e]{grid-column:1 / 3;grid-row:1 / 2;background-color:#18181b;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid #333}.view-switcher[data-v-df1fef4e]{display:flex;gap:8px}.switch-btn[data-v-df1fef4e]{background:transparent;border:1px solid #333;color:#888;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.9rem}.switch-btn.active[data-v-df1fef4e]{background:#333;color:#fff;border-color:#555}@media(max-width:768px){.btn-text[data-v-df1fef4e]{display:none}}.instrument-selector select[data-v-df1fef4e]{background:#222;color:#eee;border:1px solid #444;padding:4px 8px;border-radius:4px;font-size:.8rem;max-width:120px}.rack-toggle-btn[data-v-df1fef4e]{background:transparent;border:none;color:#50c878;cursor:pointer;font-weight:700}.score-stage[data-v-df1fef4e]{grid-column:1 / 2;grid-row:2 / 3;background-color:#1a1a1d;margin:16px;border-radius:12px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 20px #00000080}.stage-content[data-v-df1fef4e]{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.score-mode[data-v-df1fef4e]{cursor:grab}.score-mode[data-v-df1fef4e]:active{cursor:grabbing}.score-wrapper[data-v-df1fef4e]{transform-origin:center}.score-image[data-v-df1fef4e]{max-width:100%;max-height:100%;display:block;box-shadow:0 4px 12px #0000004d;background-color:#f5f5f0}.analysis-mode[data-v-df1fef4e]{position:relative;background-color:#000}.stage-inner[data-v-df1fef4e]{width:100%;height:100%;overflow:auto}.staff-mode[data-v-df1fef4e]{display:flex;align-items:flex-start;justify-content:center}.jianpu-mode[data-v-df1fef4e]{display:flex;align-items:flex-start;justify-content:center;padding:20px}.karaoke-mode[data-v-df1fef4e]{position:relative;background:transparent}.karaoke-inner[data-v-df1fef4e]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:16px}.side-rack[data-v-df1fef4e]{grid-column:2 / 3;grid-row:2 / 3;background-color:#18181b;border-left:1px solid #333;padding:20px;display:flex;flex-direction:column;gap:24px;z-index:10;overflow-y:auto;transition:transform .3s ease,opacity .3s ease}.side-rack.collapsed[data-v-df1fef4e]{transform:translate(100%);opacity:0;padding:0;width:0;border:none}.rack-module[data-v-df1fef4e]{background:#222;border:1px solid #333;border-radius:8px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0}.module-title[data-v-df1fef4e]{font-size:.8rem;font-weight:700;color:#666;letter-spacing:1px}.tuner-notes[data-v-df1fef4e]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}.note-btn[data-v-df1fef4e]{background:#333;border:1px solid #444;color:#aaa;padding:8px;border-radius:4px;cursor:pointer}.note-btn[data-v-df1fef4e]:hover{background:#444;color:#fff}.spectral-console[data-v-df1fef4e]{grid-column:1 / 3;grid-row:3 / 4;background-color:#121214;position:relative;display:flex;flex-direction:column;border-top:1px solid #333}.spectrum-canvas[data-v-df1fef4e]{width:100%;height:100%;display:block}.console-controls[data-v-df1fef4e]{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:40px;background:#121214cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 32px;border-radius:32px;border:1px solid rgba(255,255,255,.1);z-index:20}.control-group[data-v-df1fef4e]{display:flex;align-items:center;gap:16px}.console-btn[data-v-df1fef4e]{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s}.console-btn[data-v-df1fef4e]:active{transform:scale(.95)}.play-btn[data-v-df1fef4e]{width:48px;height:48px;border-radius:50%;background:#333;color:#50c878;font-size:24px}.record-btn[data-v-df1fef4e]{width:64px;height:64px;border-radius:50%;border:2px solid #fff;padding:4px}.record-inner[data-v-df1fef4e]{width:100%;height:100%;background-color:#f33;border-radius:50%;transition:all .3s}.record-btn.is-recording .record-inner[data-v-df1fef4e]{border-radius:4px;transform:scale(.5);box-shadow:0 0 15px #f33;animation:breathe-df1fef4e 2s infinite}.save-btn[data-v-df1fef4e]{width:40px;height:40px;border-radius:50%;background:#333;font-size:20px}.save-btn[data-v-df1fef4e]:disabled{opacity:.3;cursor:not-allowed}.small-btn[data-v-df1fef4e]{width:36px;height:36px;border-radius:50%;background:#333;color:#ccc;font-size:16px;border:1px solid #444}.small-btn.active[data-v-df1fef4e]{color:#50c878;border-color:#50c878}.separator[data-v-df1fef4e]{width:1px;height:24px;background-color:#333;margin:0 4px}.track-info[data-v-df1fef4e]{color:#fff;text-align:left}.track-title[data-v-df1fef4e]{font-weight:700;font-size:1rem}.track-meta[data-v-df1fef4e]{font-size:.8rem;color:#888}@keyframes breathe-df1fef4e{0%{box-shadow:0 0 15px #ff333380}50%{box-shadow:0 0 25px #f33c}to{box-shadow:0 0 15px #ff333380}}.waveform-hidden[data-v-df1fef4e]{display:none}@media(max-width:768px){.console-controls[data-v-df1fef4e]{width:90%;gap:10px;padding:8px 16px;justify-content:space-between}.track-info[data-v-df1fef4e]{display:none}.stage-toolbar[data-v-df1fef4e]{overflow-x:auto;white-space:nowrap;padding:0 8px;gap:8px;justify-content:flex-start}.stage-toolbar[data-v-df1fef4e]::-webkit-scrollbar{display:none}.view-switcher[data-v-df1fef4e]{flex-shrink:0}.rack-toggle-btn[data-v-df1fef4e]{margin-left:auto;flex-shrink:0;padding-left:12px}.jianpu-mode[data-v-df1fef4e]{padding:8px}}.editor-container[data-v-9e060703]{display:flex;flex-direction:column;min-height:100vh;background:#f5f5f5}.header[data-v-9e060703]{height:60px;background:#fff;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;position:sticky;top:0;z-index:100;box-shadow:0 2px 4px #0000000d}.left[data-v-9e060703],.right[data-v-9e060703]{display:flex;align-items:center;gap:.25rem}.btn-text[data-v-9e060703]{display:none}.view-switcher[data-v-9e060703]{margin-left:.25rem;display:inline-flex;gap:2px}.title[data-v-9e060703]{font-weight:700;font-size:1.1rem;display:none}.main-content[data-v-9e060703]{flex:1;display:flex;flex-direction:column;align-items:stretch}.pane[data-v-9e060703]{padding:2px}.left-pane[data-v-9e060703]{flex:0 0 auto;height:40vh;border-bottom:1px solid #ddd;display:flex;flex-direction:column;overflow:hidden;background:#282c34;padding:0}.editor-wrapper[data-v-9e060703]{flex:1;display:flex;overflow:hidden}.line-numbers[data-v-9e060703]{width:2.8rem;background:#21252b;color:#636d83;font-family:Fira Code,Consolas,monospace;font-size:.875rem;line-height:1.6;padding:1rem .5rem;text-align:right;overflow:hidden;-webkit-user-select:none;user-select:none;border-right:1px solid #181a1f}.line-number[data-v-9e060703]{height:1.4rem}.line-number.error-line[data-v-9e060703]{background:#ff4d4f4d;color:#ff4d4f;font-weight:700}.line-number.overflow-line[data-v-9e060703]{background:#ff4d4f40;color:#ff6b6b;font-weight:700}.line-number.underflow-line[data-v-9e060703]{background:#faad1440;color:#ffc53d;font-weight:700}.code-editor[data-v-9e060703]{flex:1;width:100%;min-height:100%;resize:none;border:none;padding:1rem 1rem 1rem .75rem;font-family:Fira Code,Consolas,monospace;font-size:.875rem;line-height:1.6;outline:none;background:#282c34;color:#abb2bf;overflow-y:auto}.error-bar[data-v-9e060703]{background:#ffeded;color:#ff4d4f;padding:.5rem 1rem;font-size:.9rem;border-top:1px solid #ffccc7}.issue-bar[data-v-9e060703]{background:#fffbe6;color:#d48806;padding:.5rem 1rem;font-size:.85rem;border-top:1px solid #ffe58f;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.issue-title[data-v-9e060703]{font-weight:700;margin-right:.25rem}.issue-item[data-v-9e060703]{padding:.125rem .5rem;border-radius:4px;font-size:.75rem}.issue-item.overflow[data-v-9e060703]{background:#ff4d4f33;color:#ff4d4f}.issue-item.underflow[data-v-9e060703]{background:#faad1433;color:#d48806}.right-pane[data-v-9e060703]{flex:1;background:#fff;display:flex;flex-direction:column;overflow-x:hidden;min-height:50vh}.score-wrapper[data-v-9e060703]{width:100%;overflow-x:auto}.paper-container[data-v-9e060703]{flex:1;margin-top:1.25rem}.audio-container[data-v-9e060703]{padding:.625rem;background:#f9f9f9;border-radius:8px;margin-bottom:.625rem;min-height:3.125rem;display:flex;align-items:center;justify-content:center}.error-msg[data-v-9e060703]{color:#d03050;font-size:.75rem;padding:.625rem}[data-v-9e060703]::-webkit-scrollbar{width:8px;height:8px}[data-v-9e060703]::-webkit-scrollbar-track{background:transparent}[data-v-9e060703]::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}[data-v-9e060703]::-webkit-scrollbar-thumb:hover{background:#999}.left-pane[data-v-9e060703]::-webkit-scrollbar-thumb{background:#4b5263}.left-pane[data-v-9e060703]::-webkit-scrollbar-track{background:#282c34}[data-v-9e060703] .highlight-note{fill:#d03050!important;stroke:#d03050!important}[data-v-9e060703] .highlight-note path{fill:#d03050!important;stroke:#d03050!important}[data-v-9e060703] g.highlight-note path{fill:#d03050!important;stroke:#d03050!important}@media(min-width:768px){.header[data-v-9e060703]{padding:0 1rem}.left[data-v-9e060703],.right[data-v-9e060703]{gap:.75rem}.btn-text[data-v-9e060703]{display:inline}.view-switcher[data-v-9e060703]{margin-left:.5rem;gap:5px}.title[data-v-9e060703]{display:block}.main-content[data-v-9e060703]{flex-direction:row}.left-pane[data-v-9e060703]{flex:0 0 45%;height:calc(100vh - 60px);border-bottom:none;border-right:1px solid #ddd;position:sticky;top:60px}.right-pane[data-v-9e060703]{flex:1;height:auto;min-height:calc(100vh - 60px);padding:1rem}}@media(min-width:1200px){.left-pane[data-v-9e060703]{flex:0 0 40%}}.fanqie-score[data-v-ba277ff2]{font-family:Arial,sans-serif;padding:20px;background:#fff}.header-info[data-v-ba277ff2]{text-align:center;margin-bottom:20px}.title[data-v-ba277ff2]{font-size:24px;font-weight:700}.meta-row[data-v-ba277ff2]{display:flex;justify-content:center;gap:20px;font-size:14px}.bar-line[data-v-ba277ff2]{stroke:#000;stroke-width:1.5}.bar-line.bold[data-v-ba277ff2]{stroke-width:3}.note-text[data-v-ba277ff2]{font-size:20px;font-weight:700;text-anchor:middle;dominant-baseline:central}.note-text.clickable[data-v-ba277ff2]{cursor:pointer}.note-text.clickable[data-v-ba277ff2]:hover{fill:#1a73e8}.underline[data-v-ba277ff2]{stroke:#000;stroke-width:1.5}.slur-line[data-v-ba277ff2]{stroke:#000;stroke-width:1.5;fill:none}.tuplet-bracket[data-v-ba277ff2]{stroke:#000;stroke-width:1;fill:none}.tuplet-number[data-v-ba277ff2]{font-size:12px;font-weight:700;text-anchor:middle;dominant-baseline:middle}.volta-line[data-v-ba277ff2]{stroke:#000;stroke-width:1.2;fill:none}.volta-label[data-v-ba277ff2]{font-size:12px;font-weight:700}.dash[data-v-ba277ff2]{font-size:16px;font-weight:700;text-anchor:start;dominant-baseline:central}.lyric-text[data-v-ba277ff2]{font-size:14px;text-anchor:middle}.accidental[data-v-ba277ff2]{font-size:12px;font-style:italic}.grace-note-text[data-v-ba277ff2]{font-size:12px;font-weight:700;text-anchor:middle;dominant-baseline:central}.grace-dot[data-v-ba277ff2]{fill:#000}.grace-slur-arc[data-v-ba277ff2]{stroke:#000;stroke-width:1;fill:none}.grace-underline[data-v-ba277ff2]{stroke:#000;stroke-width:1}.grace-accidental[data-v-ba277ff2]{font-size:8px;font-style:italic}.bracket[data-v-ba277ff2]{font-size:20px;font-weight:700;text-anchor:middle;dominant-baseline:central}.fanqie-editor[data-v-52df8949]{display:flex;flex-direction:column;height:100vh}.toolbar[data-v-52df8949]{padding:10px 20px;background:#f5f5f5;border-bottom:1px solid #ddd}.main-content[data-v-52df8949]{display:flex;flex:1;overflow:hidden}.editor-pane[data-v-52df8949]{width:35%;border-right:1px solid #ddd;display:flex;flex-direction:column}#hidden-abc-container[data-v-52df8949]{display:none!important;height:0;width:0;overflow:hidden}.code-editor[data-v-52df8949]{flex:1;padding:10px;font-family:monospace;font-size:14px;resize:none;border:none;outline:none}.status-bar[data-v-52df8949]{padding:5px 10px;font-size:12px;border-top:1px solid #eee}.success[data-v-52df8949]{color:green}.error[data-v-52df8949]{color:red}.warning[data-v-52df8949]{color:orange}.error-list[data-v-52df8949]{max-height:100px;overflow-y:auto;background:#fff0f0;padding:5px;font-size:12px}.preview-pane[data-v-52df8949]{flex:1;display:flex;flex-direction:column;background:#fafafa}.preview-scroll[data-v-52df8949]{flex:1;overflow:auto;display:flex;justify-content:center;padding:20px}.audio-control-bar[data-v-52df8949]{padding:10px;background:#fff;border-top:1px solid #ddd}.dashboard-summary[data-v-1a960458]{max-width:1200px}.visitor-logs[data-v-0b33b9e1],.traffic-trends[data-v-471e1ec2],.ip-ban-management[data-v-fc3d3f0f]{max-width:1400px}.admin-dashboard[data-v-41bc0fc7]{height:calc(100vh - 64px)}.score-library,.score-detail{max-width:1220px;margin:0 auto;color:#253b35;padding:16px 0 48px}.score-library h1,.score-detail h1{font-size:clamp(25px,3vw,36px);line-height:1.35;letter-spacing:-.8px;margin:10px 0;font-weight:650;overflow-wrap:anywhere}.score-library h2,.score-detail h2{font-size:19px;margin:0}.score-library h3,.score-detail h3,.score-modal h3{font-size:17px;margin:0 0 8px;overflow-wrap:anywhere}.eyebrow{color:#648377;font-size:11px;letter-spacing:2px;font-weight:700}.muted{color:#758179;font-size:13px;line-height:1.7;margin:6px 0;overflow-wrap:anywhere}.library-heading,.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.detail-heading{margin-top:30px}.library-toolbar{display:flex;justify-content:space-between;gap:16px;margin-bottom:22px}.library-search{max-width:320px}.library-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));background:#f3f7f3;border:1px solid #e5ece5;border-radius:14px;padding:6px;gap:6px;margin-bottom:32px}.library-stats>*{background:transparent;color:inherit;border:1px solid transparent;border-radius:9px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font:inherit;text-align:left}.library-stats button{cursor:pointer}.library-stats button:hover,.library-stats .active{background:#fff;border-color:#dfe8df}.library-stats strong{font-size:25px;font-weight:600}.library-stats span{color:#62756b;font-size:13px}.library-body{display:grid;grid-template-columns:208px minmax(0,1fr);gap:32px;align-items:start}.classification-nav{padding:0 20px 12px 0;border-right:1px solid #e7ece7}.step-heading{display:flex;align-items:center;gap:10px;margin-bottom:20px}.step-heading>span:first-child{font:12px ui-monospace,monospace;color:#93a69b}.category-button{width:100%;display:flex;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:5px;background:transparent;border:1px solid transparent;border-radius:8px;color:#435c50;font:inherit;cursor:pointer}.category-button span:last-child{opacity:.65;font-size:12px}.category-button:hover{background:#f2f6f2}.category-button.selected{background:#e9f3eb;color:#22764e;border-color:#d7e8da;font-weight:600}.nav-note{color:#89968c;font-size:12px;line-height:1.8;padding:8px 12px}.fingering-filter{min-height:93px;padding-bottom:20px;border-bottom:1px solid #e7ece7}.filter-chips{display:flex;flex-wrap:wrap;gap:8px}.results-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:24px 0 18px}.result-filters{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.score-card{display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid #e1e8e1;border-radius:12px;background:#fff;transition:border-color .2s,box-shadow .2s;min-width:0}.score-card:hover{border-color:#adcbb7;box-shadow:0 6px 22px #284a3210}.score-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:20px}.score-symbol{width:42px;height:42px;border-radius:12px;background:#f0f5ec;color:#71945d;display:grid;place-items:center;font-size:25px}.score-original{color:#687c70;font-size:13px;margin:0 0 12px}.score-notes{color:#879087;font-size:13px;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.match-summary{background:#f7f9f6;padding:12px;margin:12px 0 0;border-radius:6px;font-size:12px;align-self:stretch}.match-summary p{margin:4px 0}.score-card-footer{padding-top:20px;margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;width:100%}.score-card-footer .muted{font-size:12px}.library-empty{text-align:center;padding:50px 20px;border:1px dashed #d7e1d6;border-radius:12px}.empty-symbol{color:#a6bda6;font-size:44px;margin-bottom:16px}.library-empty .n-button{margin:16px 6px 0}.library-pagination{justify-content:flex-end;margin-top:28px}.score-modal{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;border-radius:14px}.wide-modal{width:min(820px,calc(100vw - 28px))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.form-grid>*{min-width:0}.candidate-panel{background:#f6f8f3;border:1px solid #e2eadc;border-radius:10px;padding:16px;margin-bottom:22px}.row-between{display:flex;justify-content:space-between;gap:16px;align-items:center}.candidate-choice{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0}.manual-choice{display:flex;gap:10px;margin-top:14px}.manual-choice .n-select{flex:1;min-width:0}.confirmed-line{color:#258052;font-size:13px}.modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px}.form-error{margin:16px 0}.detail-notes{line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:36px 0 20px}.arrangement-card,.assets-panel{border:1px solid #e0e7df;border-radius:12px;padding:26px;margin-bottom:20px}.arrangement-flags{margin-top:14px}.section-sequence{list-style:none;padding:0;margin:24px 0}.section-sequence li{display:flex;gap:18px;padding:0 0 24px}.section-sequence li:last-child{padding-bottom:0}.section-number{flex:0 0 30px;height:30px;border-radius:50%;background:#eaf2e8;color:#4c7456;display:grid;place-items:center;font:13px ui-monospace,monospace}.section-content{min-width:0;flex:1;padding-bottom:16px;border-bottom:1px solid #edf0ea}.section-combination{font-size:16px;color:#326246;margin:10px 0}.section-combination span{color:#bac7bc;padding:0 6px}.practice-status{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#f6f8f4;border-radius:8px;padding:16px}.section-editor{padding:20px;border:1px solid #dfe7db;border-radius:10px;margin:20px 0}.section-editor>.row-between{margin-bottom:20px}.asset-item{padding:18px 0;border-bottom:1px solid #e5eae3}.asset-preview{margin-top:16px}.asset-preview img{max-width:100%;max-height:600px;object-fit:contain}.asset-preview audio{width:100%}.asset-preview a{color:#258052;text-decoration:underline}.asset-empty{color:#83907f;padding:12px 0}.upload-form{padding-top:20px}.file-label{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;color:#687963}.file-label input{max-width:100%}button:focus-visible,.score-card a:focus-visible{outline:2px solid #328555;outline-offset:3px}@media(min-width:1400px){.score-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.score-library,.score-detail{padding-top:6px}.library-heading,.detail-heading{align-items:flex-start;flex-direction:column;gap:14px}.library-toolbar{flex-direction:column}.library-search{max-width:none}.library-body{grid-template-columns:minmax(0,1fr);gap:20px}.classification-nav{border-right:none;padding:0}.flute-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.classification-nav>.category-button{width:auto;min-width:145px}.category-button{padding:10px;font-size:13px;gap:6px}.nav-note{margin:0;padding:4px 0}.library-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}.library-stats>*{padding:10px 12px}.section-heading{align-items:flex-start;flex-direction:column}.arrangement-card,.assets-panel{padding:18px}.section-editor{padding:14px}.row-between{flex-wrap:wrap}}@media(max-width:480px){.score-grid,.form-grid{grid-template-columns:minmax(0,1fr)}.score-card{padding:20px}.practice-status{align-items:flex-start;flex-direction:column}.section-sequence li{gap:10px}.candidate-panel{padding:12px}.score-modal>.n-card__content{padding:16px}.result-filters{gap:12px}}
