:root{color:#f0ebe3;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0d0d0f;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.35}*{box-sizing:border-box}body{background:radial-gradient(circle at top,#1f1816eb 0%,#0d0d0ffa 52%),linear-gradient(#0f0d0c 0%,#111 100%);min-height:100vh;margin:0}#app,.app-shell{min-height:100vh}.app-header{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#130e0cf0;border-bottom:1px solid #3b2d28;justify-content:space-between;align-items:center;padding:12px 18px;display:flex;position:sticky;top:0}.app-header h1{color:#f0ebe3;margin:0;font-size:1.1rem}.app-nav{gap:8px;display:flex}.app-nav a{color:#f0ebe3;background:#1f1714;border:1px solid #4b3a31;border-radius:8px;padding:6px 10px;text-decoration:none}.app-nav a.router-link-active{background:#3b2922;border-color:#b9894d}.app-main{max-width:1300px;margin:0 auto;padding:14px}.page-grid{gap:14px;display:grid}.card{background:linear-gradient(#2d211df2,#1c1412f2);border:1px solid #4b3a31;border-radius:16px;box-shadow:0 8px 20px #00000040,inset 0 1px #ffffff0a}.card h2{color:#f0ebe3;margin:0;font-size:1.1rem}.muted{color:#c3b3a2;margin:8px 0 0}.small{font-size:.82rem}.controls{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.btn{color:#f0ebe3;cursor:pointer;background:linear-gradient(#3a2a24,#2a1f1a);border:1px solid #4b3a31;border-radius:10px;padding:9px 14px;font-size:.92rem;text-decoration:none}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:#2a1e17;background:linear-gradient(#d6a766,#b9894d);border-color:#9b723f;font-weight:600}.btn-danger{background:linear-gradient(#5a2a2f,#452025);border-color:#88484d}.title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.field-label{color:#f0ebe3;margin-bottom:6px;font-size:.9rem;display:block}input[type=text],input[type=number],input[type=range],select{color:#f0ebe3;background:#1a1412;border:1px solid #4b3a31;border-radius:10px;width:100%;padding:9px 10px}input[type=range]{accent-color:#b9894d;padding:0}.inline-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.project-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.project-list li{background:#271d1a;border:1px solid #4b3a31;border-radius:12px;gap:8px;padding:10px;display:grid}.project-meta{color:#c3b3a2;gap:2px;font-size:.9rem;display:grid}.project-actions{flex-wrap:wrap;gap:8px;display:flex}.state-ok{color:#97dbb4;margin-top:8px}.state-error{color:#ff9dab;margin-top:8px}.two-columns{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=1024px){.inline-fields,.two-columns{grid-template-columns:1fr}}.app-loader[data-v-d5aa3f4e]{z-index:1000;background:radial-gradient(circle at top,#1f1816f5,#0d0d0ffc 60%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loader-stage[data-v-d5aa3f4e]{background:linear-gradient(#2d211dd9,#1c1412e6);border:1px solid #4b3a31;border-radius:18px;flex-direction:column;align-items:center;gap:18px;padding:26px 32px;display:flex;box-shadow:0 18px 36px #0006}.loader-board[data-v-d5aa3f4e]{width:220px;height:auto;display:block}.loader-tine[data-v-d5aa3f4e]{fill:#f3f0ed;stroke:#b4ada7;stroke-width:.7px;transform-box:fill-box;transform-origin:50% 100%;animation:1.1s ease-in-out infinite tineWave-d5aa3f4e}.loader-meta[data-v-d5aa3f4e]{flex-direction:column;align-items:center;gap:4px;display:flex}.loader-title[data-v-d5aa3f4e]{letter-spacing:.12em;color:#d6a766;text-transform:uppercase;margin:0;font-size:1.4rem}.loader-subtitle[data-v-d5aa3f4e]{color:#c3b3a2;letter-spacing:.04em;margin:0;font-size:.85rem}@keyframes tineWave-d5aa3f4e{0%,to{fill:#f3f0ed;transform:translateY(0)scaleY(1)}18%{fill:url(#loaderTineLit);transform:translateY(-2px)scaleY(1.04)}36%{transform:translateY(0)scaleY(.98)}54%{transform:translateY(0)scaleY(1)}}@media (prefers-reduced-motion:reduce){.loader-tine[data-v-d5aa3f4e]{opacity:.85;animation:none}}.header-left[data-v-b717b0f1],.header-right[data-v-b717b0f1]{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.header-left[data-v-b717b0f1]{flex:auto;min-width:0}.header-right[data-v-b717b0f1]{flex-wrap:nowrap;flex-shrink:0;justify-content:flex-end}.app-brand[data-v-b717b0f1]{letter-spacing:.16em;color:#d6a766;text-transform:uppercase;border-radius:8px;flex-shrink:0;padding:4px 8px;font-size:1.15rem;font-weight:700;text-decoration:none;transition:background .15s}.app-brand[data-v-b717b0f1]:hover{background:#d6a7661f}.app-brand.router-link-active[data-v-b717b0f1]{background:#d6a76626}.header-context[data-v-b717b0f1]{color:#c3b3a2;align-items:center;gap:10px;min-width:0;font-size:.92rem;display:flex}.header-context[data-v-b717b0f1]:empty{display:none}.header-actions[data-v-b717b0f1]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.header-actions[data-v-b717b0f1]:empty{display:none}.project-list-section[data-v-e62e059f]{padding:0}.project-list-section h2[data-v-e62e059f]{color:#f3f0ed;margin:0;font-size:1.1rem}.project-list-section .project-list li[data-v-e62e059f]{padding:14px 16px}.tuner[data-v-af189b4e]{flex-direction:column;align-items:center;gap:10px;display:flex}.tuner-svg[data-v-af189b4e]{width:100%;max-width:360px;height:auto;display:block}.tuner-arc[data-v-af189b4e]{fill:none;stroke:#4b3a3199;stroke-width:2px}.tuner-tick-minor[data-v-af189b4e]{stroke:#c3b3a266;stroke-width:1px}.tuner-tick-major[data-v-af189b4e]{stroke:#f0ebe3;stroke-width:2px}.tuner-tick-zero[data-v-af189b4e]{stroke:#d6a766;stroke-width:2.5px}.tuner-label[data-v-af189b4e]{fill:#c3b3a2;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:500}.tuner-needle[data-v-af189b4e]{stroke:#c3b3a2;stroke-width:2.5px;stroke-linecap:round;transition:x2 .12s,y2 .12s,stroke .12s}.tuner-needle-tuned[data-v-af189b4e]{stroke:#d6a766;filter:drop-shadow(0 0 4px #d6a76699)}.tuner-pivot[data-v-af189b4e]{fill:#f0ebe3}.tuner-note[data-v-af189b4e]{fill:#f0ebe3;letter-spacing:1px;-webkit-user-select:none;user-select:none;font-size:32px;font-weight:700}.tuner-note-tuned[data-v-af189b4e]{fill:#d6a766}.tuner-frequency[data-v-af189b4e]{fill:#c3b3a2;-webkit-user-select:none;user-select:none;font-size:12px}.tuner-meta[data-v-af189b4e]{flex-direction:column;gap:8px;width:100%;display:flex}.tuner-status[data-v-af189b4e]{text-align:center;color:#c3b3a2;font-size:.88rem}.tuner-status strong[data-v-af189b4e]{color:#f0ebe3}.tuner-status .status-error[data-v-af189b4e]{color:#d97575}.tuner-status .status-muted[data-v-af189b4e]{color:#c3b3a2}.tuner-meters[data-v-af189b4e]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.meter[data-v-af189b4e]{flex-direction:column;gap:3px;display:flex}.meter-label[data-v-af189b4e]{color:#c3b3a2;text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.meter-bar[data-v-af189b4e]{background:#4b3a3180;border-radius:999px;height:4px;overflow:hidden}.meter-fill[data-v-af189b4e]{background:linear-gradient(90deg,#b9894d,#d6a766);height:100%;transition:width .1s linear}.welcome-card[data-v-8e1a10e8]{flex-direction:column;gap:14px;padding:16px 18px;display:flex}.welcome-grid[data-v-8e1a10e8]{grid-template-columns:minmax(280px,360px) 1fr;align-items:start;gap:18px;display:grid}.welcome-grid.welcome-grid-single[data-v-8e1a10e8]{grid-template-columns:1fr}@media (width<=760px){.welcome-grid[data-v-8e1a10e8]{grid-template-columns:1fr}}.tuner-column[data-v-8e1a10e8]{background:#00000040;border:1px solid #3b2d28;border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.sensitivity[data-v-8e1a10e8]{flex-direction:column;gap:4px;display:flex}.sensitivity-label[data-v-8e1a10e8]{color:#c3b3a2;font-size:.85rem}.sensitivity-label strong[data-v-8e1a10e8]{color:#f0ebe3}.projects-column[data-v-8e1a10e8]{min-width:0}.drill-card[data-v-8e1a10e8]{background:radial-gradient(circle at 0 0,#d6a7662e,#0000 34%),#00000038;border:1px solid #b9894d73;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:14px;padding:14px;display:grid}.drill-card h3[data-v-8e1a10e8]{color:#f0ebe3;margin:3px 0 5px;font-size:1rem}.drill-card p[data-v-8e1a10e8]{color:#c3b3a2;margin:0;font-size:.88rem;line-height:1.4}@media (width<=920px){.drill-card[data-v-8e1a10e8]{grid-template-columns:1fr}}.drill-kicker[data-v-8e1a10e8]{color:#d6a766;letter-spacing:.7px;text-transform:uppercase;font-size:.72rem;font-weight:700}.drill-actions[data-v-8e1a10e8]{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (width<=920px){.drill-actions[data-v-8e1a10e8]{justify-content:flex-start}}.mic-required[data-v-8e1a10e8]{text-align:center;color:#c3b3a2;background:#0003;border:1px dashed #4b3a31;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:200px;padding:32px 18px;display:flex}.mic-required p[data-v-8e1a10e8]{max-width:320px;margin:0;font-size:.95rem}.mic-required-icon[data-v-8e1a10e8]{opacity:.8;font-size:2.2rem}.uploader-card[data-v-d1b2cfad]{background:#201816;border:1px solid #4b3a31;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.uploader-card-embedded[data-v-d1b2cfad]{background:0 0;border:none;gap:8px;height:100%;padding:0}.uploader-header h2[data-v-d1b2cfad]{color:#f0ebe3;margin:0;font-size:1.05rem}.uploader-header p[data-v-d1b2cfad]{color:#c3b3a2;margin:4px 0 0;font-size:.88rem}.dropzone[data-v-d1b2cfad]{text-align:center;cursor:pointer;color:#f0ebe3;background:#271d1a;border:2px dashed #4b3a31;border-radius:12px;flex-direction:column;gap:4px;padding:18px;transition:border-color .15s,background .15s;display:flex}.dropzone[data-v-d1b2cfad]:hover{background:#332622;border-color:#b9894d}.dropzone-compact[data-v-d1b2cfad]{flex:1;justify-content:center;gap:2px;min-height:76px;padding:12px 14px}.dropzone-compact strong[data-v-d1b2cfad]{font-size:.95rem}.dropzone-compact span[data-v-d1b2cfad]{color:#c3b3a2;font-size:.82rem}.dropzone input[data-v-d1b2cfad]{display:none}.dropzone-active[data-v-d1b2cfad]{background:#392b26;border-color:#d6a766}.state[data-v-d1b2cfad]{margin:0;font-size:.88rem}.state-info[data-v-d1b2cfad]{color:#d6a766}.state-error[data-v-d1b2cfad]{color:#d97575}.summary[data-v-d1b2cfad]{color:#c3b3a2;background:#271d1a;border:1px solid #3b2d28;border-radius:10px;flex-wrap:wrap;gap:4px 14px;padding:8px 10px;font-size:.85rem;display:flex}.summary-compact[data-v-d1b2cfad]{padding:6px 10px;font-size:.8rem}.loaded-chip[data-v-d1b2cfad]{cursor:pointer;background:#b9894d14;border:1px solid #b9894d66;border-radius:10px;align-items:center;gap:10px;height:100%;min-height:64px;padding:10px 12px;transition:background .12s;display:flex}.loaded-chip input[data-v-d1b2cfad]{display:none}.loaded-chip[data-v-d1b2cfad]:hover{background:#b9894d26}.loaded-info[data-v-d1b2cfad]{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.loaded-name[data-v-d1b2cfad]{color:#f0ebe3;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:500;overflow:hidden}.loaded-meta[data-v-d1b2cfad]{color:#c3b3a2;font-size:.78rem}.loaded-replace[data-v-d1b2cfad]{color:#b9894d;white-space:nowrap;flex-shrink:0;font-size:.78rem}.modal-backdrop[data-v-252d8361]{z-index:100;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-card[data-v-252d8361]{background:linear-gradient(#2d211df2,#1c1412f2);border:1px solid #4b3a31;border-radius:16px;flex-direction:column;gap:12px;width:min(960px,100%);max-height:min(86vh,900px);padding:14px;display:flex;overflow:auto;box-shadow:0 8px 20px #00000040,inset 0 1px #ffffff0a}.dialog-header[data-v-252d8361]{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.dialog-header h2[data-v-252d8361]{margin:0}.chart-wrap[data-v-252d8361]{background:#11110f;border:1px solid #4b3a31;border-radius:10px;overflow:hidden}.trim-chart[data-v-252d8361]{cursor:pointer;width:100%;height:160px;display:block}.chart-bg[data-v-252d8361]{fill:#0f0f0d}.chart-bar[data-v-252d8361]{fill:#b9894dd9}.chart-bar-muted[data-v-252d8361]{fill:#c3b3a247}.shade[data-v-252d8361]{fill:#00000070}.trim-edge[data-v-252d8361]{stroke:#d6a766;stroke-width:2px}.trim-handle[data-v-252d8361]{fill:#d6a76633;stroke:#d6a766bf;stroke-width:1px;cursor:ew-resize}.playhead[data-v-252d8361]{stroke:#d6a766;stroke-width:2px;stroke-dasharray:4 3}.trim-info[data-v-252d8361]{color:#c3b3a2;font-size:.9rem}.transport[data-v-252d8361]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dialog-actions[data-v-252d8361]{justify-content:flex-end;gap:8px;display:flex}.piano-roll-card[data-v-5136b8dc]{min-width:0;overflow:hidden}.roll-scroll[data-v-5136b8dc]{scrollbar-width:thin;scrollbar-color:#b9894d #231916;background:#11110f;border:1px solid #4b3a31;border-radius:10px;height:clamp(320px,55vh,560px);overflow:auto}.roll-scroll[data-v-5136b8dc]::-webkit-scrollbar{width:12px;height:12px}.roll-scroll[data-v-5136b8dc]::-webkit-scrollbar-track{background:#231916;border-radius:999px}.roll-scroll[data-v-5136b8dc]::-webkit-scrollbar-thumb{background:linear-gradient(#8d6740,#6f4f30);border:2px solid #231916;border-radius:999px}.roll-hotkey-capture[data-v-5136b8dc]{outline:none;width:fit-content}.roll-bg[data-v-5136b8dc]{fill:#0f0f0d}.row-valid-even[data-v-5136b8dc]{fill:#222323}.row-valid-odd[data-v-5136b8dc]{fill:#1b1c1d}.row-invalid-even[data-v-5136b8dc]{fill:#2b1d1f}.row-invalid-odd[data-v-5136b8dc]{fill:#25191b}.grid-line[data-v-5136b8dc]{stroke:#48352b;stroke-width:1px}.row-label[data-v-5136b8dc]{fill:#cfbca7;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11px}.row-label-invalid[data-v-5136b8dc]{fill:#e09898}.row-label-hit[data-v-5136b8dc]{fill:#0000;cursor:pointer}.row-label-hit[data-v-5136b8dc]:hover{fill:#ffffff0f}.row-side-strip[data-v-5136b8dc]{pointer-events:none;fill:#ffffff0a}.row-side-left[data-v-5136b8dc]{fill:#78aadca6}.row-side-right[data-v-5136b8dc]{fill:#e1a55fa6}.row-side-center[data-v-5136b8dc]{fill:#b4b4b48c}.row-side-label[data-v-5136b8dc]{pointer-events:none;-webkit-user-select:none;user-select:none;letter-spacing:.5px;fill:#ffffff8c;font-size:9px;font-weight:600}.row-side-label-left[data-v-5136b8dc]{fill:#78aadcd9}.row-side-label-right[data-v-5136b8dc]{fill:#e1a55fd9}.row-side-label-center[data-v-5136b8dc]{fill:#dcdcdcbf}.playhead[data-v-5136b8dc]{stroke:#d6a766;stroke-width:2.5px;filter:drop-shadow(0 0 3px #d6a76699)}.playhead-marker[data-v-5136b8dc]{fill:#d6a766;filter:drop-shadow(0 1px 2px #0009)}.note[data-v-5136b8dc]{cursor:move}.note-valid[data-v-5136b8dc]{fill:#a07d45}.note-mapped[data-v-5136b8dc]{fill:#b85f8f}.note-invalid[data-v-5136b8dc]{fill:#c45151;stroke:#ffd2d2;stroke-width:1px}.note.note-blocked[data-v-5136b8dc]{stroke:#d97575;stroke-width:1.5px;stroke-dasharray:4 3;opacity:.78}.note.note-blocked-chord[data-v-5136b8dc]{fill:#281618e6}.note.note-blocked-rush[data-v-5136b8dc]{fill:#6e2828d9}.note.note-blocked-dup[data-v-5136b8dc]{fill:#46321ee6}.note-blocked-icon[data-v-5136b8dc]{fill:#ffc8c8f2;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:700}.note-selected[data-v-5136b8dc]{stroke:#d6a766;stroke-width:2.5px;filter:drop-shadow(0 0 4px #d6a766a6)}.selection-box[data-v-5136b8dc]{fill:#b9894d38;stroke:#d6a766;stroke-width:1.75px;stroke-dasharray:6 4;pointer-events:none}.roll-header[data-v-5136b8dc]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.side-legend[data-v-5136b8dc]{flex-wrap:wrap;align-items:center;gap:4px;margin:0;font-size:.85rem;display:flex}.legend-sep[data-v-5136b8dc]{color:#4b3a31;margin:0 4px}.side-chip[data-v-5136b8dc]{letter-spacing:.5px;color:#000000d9;border-radius:4px;justify-content:center;align-items:center;width:18px;height:18px;font-size:.72rem;font-weight:600;display:inline-flex}.side-chip-left[data-v-5136b8dc]{background:#78aadcb3}.side-chip-right[data-v-5136b8dc]{background:#e1a55fb3}.side-chip-center[data-v-5136b8dc]{background:#dcdcdcb3}.legend-icon[data-v-5136b8dc]{color:#ffc8c8f2;border:1px dashed #d97575;border-radius:4px;justify-content:center;align-items:center;min-width:22px;height:18px;padding:0 5px;font-size:.72rem;font-weight:700;display:inline-flex}.legend-chord[data-v-5136b8dc]{background:#281618e6}.legend-rush[data-v-5136b8dc]{background:#6e2828d9}.legend-dup[data-v-5136b8dc]{background:#46321ee6}.editor-panel[data-v-39aa9ab1]{flex-direction:column;gap:10px;padding:14px 16px;display:flex}.ep-header[data-v-39aa9ab1]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ep-title[data-v-39aa9ab1]{color:#f0ebe3;margin:0;font-size:1rem}.ep-actions[data-v-39aa9ab1]{flex-wrap:wrap;gap:6px;display:flex}.ep-btn[data-v-39aa9ab1]{padding:6px 12px;font-size:.85rem}.ep-meta[data-v-39aa9ab1]{grid-template-columns:minmax(200px,1fr) minmax(220px,1.2fr);align-items:stretch;gap:10px;display:grid}@media (width<=640px){.ep-meta[data-v-39aa9ab1]{grid-template-columns:1fr}}.ep-fields[data-v-39aa9ab1]{flex-direction:column;gap:6px;display:flex}.ep-name-input[data-v-39aa9ab1]{color:#f0ebe3;background:#00000059;border:1px solid #3b2d28;border-radius:8px;width:100%;padding:7px 10px;font-size:.92rem}.ep-source-chip[data-v-39aa9ab1]{color:#c3b3a2;background:#00000040;border:1px solid #3b2d28;border-radius:8px;align-items:center;gap:6px;min-height:32px;padding:5px 10px;font-size:.82rem;display:flex}.ep-source-empty[data-v-39aa9ab1]{color:#c3b3a28c;border-style:dashed}.ep-source-icon[data-v-39aa9ab1]{flex-shrink:0;font-size:.9rem}.ep-source-text[data-v-39aa9ab1]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ep-alerts[data-v-39aa9ab1]{flex-direction:column;gap:6px;display:flex}.ep-alert[data-v-39aa9ab1]{border:1px solid #0000;border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px;padding:7px 10px;font-size:.84rem;display:flex}.ep-alert--key[data-v-39aa9ab1]{color:#f0ebe3;background:#b9894d1a;border-color:#b9894d59}.ep-alert--warn[data-v-39aa9ab1]{color:#f0ebe3;background:#d975751a;border-color:#d9757559}.ep-alert-icon[data-v-39aa9ab1]{flex-shrink:0;font-size:.95rem}.ep-alert-text[data-v-39aa9ab1]{flex:1;min-width:0}.ep-alert-breakdown[data-v-39aa9ab1]{color:#c3b3a2;white-space:nowrap;margin-left:6px;font-size:.78rem}.ep-confidence[data-v-39aa9ab1]{color:#d6a766;white-space:nowrap;background:#b9894d1f;border:1px solid #b9894d66;border-radius:999px;padding:2px 7px;font-size:.78rem}.ep-confidence.is-low[data-v-39aa9ab1]{color:#d97575;background:#d975751f;border-color:#d9757573}.ep-alert-btn[data-v-39aa9ab1]{color:#f0ebe3;cursor:pointer;background:#ffffff0f;border:1px solid #4b3a31;border-radius:7px;flex-shrink:0;padding:4px 9px;font-size:.8rem;transition:background .12s}.ep-alert-btn[data-v-39aa9ab1]:hover{background:#ffffff1f}.ep-alert-btn--primary[data-v-39aa9ab1]{color:#2a1e17;background:linear-gradient(#d6a766,#b9894d);border-color:#9b723f;font-weight:600}.ep-alert-btn--primary[data-v-39aa9ab1]:hover{filter:brightness(1.1)}.ep-toolbar[data-v-39aa9ab1]{background:#0000004d;border:1px solid #3b2d28;border-radius:9px;flex-wrap:wrap;align-items:center;gap:4px;padding:6px 10px;display:flex}.tb-group[data-v-39aa9ab1]{align-items:center;gap:3px;display:flex}.tb-sep[data-v-39aa9ab1]{background:#3b2d28;flex-shrink:0;width:1px;height:18px;margin:0 4px}.tb-label[data-v-39aa9ab1]{color:#c3b3a2;white-space:nowrap;padding:0 2px;font-size:.72rem}.tb-btn[data-v-39aa9ab1]{color:#f0ebe3;cursor:pointer;background:#ffffff0f;border:1px solid #3b2d28;border-radius:6px;padding:4px 8px;font-size:.82rem;line-height:1.2;transition:background .1s}.tb-btn[data-v-39aa9ab1]:hover:not(:disabled){background:#ffffff21;border-color:#4b3a31}.tb-btn[data-v-39aa9ab1]:disabled{opacity:.35;cursor:not-allowed}.tb-btn--play[data-v-39aa9ab1]{color:#d6a766;background:#b9894d33;border-color:#b9894d80}.tb-btn--play[data-v-39aa9ab1]:hover:not(:disabled){background:#b9894d59}.tb-btn--danger[data-v-39aa9ab1]{color:#d97575}.tb-btn--danger[data-v-39aa9ab1]:hover:not(:disabled){background:#d9757526;border-color:#d9757566}.tb-seek[data-v-39aa9ab1]{accent-color:#b9894d;flex:1;min-width:80px;max-width:260px;height:4px;padding:0}.tb-time[data-v-39aa9ab1]{color:#c3b3a2;white-space:nowrap;padding:0 2px;font-size:.78rem}.ep-statusbar[data-v-39aa9ab1]{color:#c3b3a2;align-items:center;gap:6px;padding-top:2px;font-size:.78rem;display:flex}.ep-stat-sep[data-v-39aa9ab1]{color:#4b3a31}.ep-stat--ok[data-v-39aa9ab1]{color:#97dbb4}.ep-stat--err[data-v-39aa9ab1]{color:#d97575}.board-card[data-v-8ed021f9]{background:linear-gradient(#2e201a 0%,#1f1713 100%);border:1px solid #5f4635;border-radius:16px;padding:16px;box-shadow:inset 0 0 0 1px #ffffff08,0 10px 22px #00000047}.board-svg[data-v-8ed021f9]{width:100%;display:block}.board-bg[data-v-8ed021f9]{fill:url(#boardWoodPattern)}.board-overlay[data-v-8ed021f9]{fill:#17100d99}.key[data-v-8ed021f9]{fill:#f3f0ed;stroke:#b4ada7;stroke-width:1.2px;cursor:pointer;filter:drop-shadow(0 1px #00000026);transition:fill .12s,transform .12s,stroke-color .12s}.key[data-v-8ed021f9]:hover{fill:#fff}.key[data-v-8ed021f9]:active{transform:translateY(1px)}.key-current[data-v-8ed021f9]{fill:#f4c57b;stroke:#c89447;stroke-width:2.4px}.key-accepted[data-v-8ed021f9]{animation:.42s ease-out acceptedKeyPulse-8ed021f9}.key-disabled[data-v-8ed021f9]{cursor:default}.key-label[data-v-8ed021f9]{text-anchor:middle;fill:#2a1f1a;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:700}.key-label-on-accent[data-v-8ed021f9]{fill:#1c120c}.board-footer[data-v-8ed021f9]{border-top:1px solid #ffffff0d;margin-top:10px;padding:10px 12px 8px}@keyframes acceptedKeyPulse-8ed021f9{0%{fill:#f7d58f;stroke:#ffe0a3;stroke-width:2.8px;filter:drop-shadow(0 0 #d6a76600);transform:translateY(0)scaleY(1)}35%{fill:#ffe1a4;stroke:#fff0c9;stroke-width:3.2px;filter:drop-shadow(0 0 12px #d6a766f2);transform:translateY(-2px)scaleY(1.015)}to{fill:#f4c57b;stroke:#c89447;stroke-width:2.4px;filter:drop-shadow(0 1px #00000026);transform:translateY(0)scaleY(1)}}.practice-context[data-v-9208cd08]{align-items:center;gap:8px;min-width:0;display:inline-flex}.practice-context-tag[data-v-9208cd08]{text-transform:uppercase;letter-spacing:.6px;color:#c3b3a2;border:1px solid #3b2d28;border-radius:999px;padding:2px 8px;font-size:.7rem}.practice-context-name[data-v-9208cd08]{color:#f0ebe3;white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-weight:600;overflow:hidden}.training-bar[data-v-9208cd08]{flex-direction:column;gap:10px;display:flex}.progress-row[data-v-9208cd08]{align-items:center;gap:10px;display:flex}.progress-track[data-v-9208cd08]{background:#4b3a3180;border-radius:999px;flex:1;height:6px;overflow:hidden}.progress-fill[data-v-9208cd08]{background:linear-gradient(90deg,#b9894d,#d6a766);height:100%;transition:width .16s}.progress-pct[data-v-9208cd08]{text-align:right;color:#c3b3a2;width:42px;font-size:.78rem}.bar-body[data-v-9208cd08]{grid-template-columns:1fr auto minmax(280px,360px);align-items:center;gap:14px;display:grid}@media (width<=760px){.bar-body[data-v-9208cd08]{grid-template-columns:1fr}}.queue-section[data-v-9208cd08]{align-items:center;gap:10px;min-width:0;display:flex;position:relative}.accept-burst[data-v-9208cd08]{z-index:1;color:#241812;pointer-events:none;background:#d6a766f2;border-radius:999px;place-items:center;width:24px;height:24px;font-weight:800;line-height:1;animation:.52s ease-out both acceptBurst-9208cd08;display:grid;position:absolute;top:50%;left:-2px;box-shadow:0 0 16px #d6a766a6}.now[data-v-9208cd08]{white-space:nowrap;align-items:baseline;gap:6px;display:flex}.now .caption[data-v-9208cd08]{color:#c3b3a2;text-transform:uppercase;letter-spacing:.6px;font-size:.7rem}.now strong[data-v-9208cd08]{color:#f0ebe3;letter-spacing:.02em;font-size:1.5rem;line-height:1}.arrow[data-v-9208cd08]{color:#c3b3a2;flex-shrink:0;font-size:1.05rem}.next-chips[data-v-9208cd08]{flex-wrap:nowrap;gap:6px;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.next-chips li[data-v-9208cd08]{color:#f0ebe3;white-space:nowrap;background:#b9894d24;border:1px solid #b9894d80;border-radius:999px;flex-shrink:0;padding:3px 9px;font-size:.82rem}.next-chips li.chord[data-v-9208cd08]{background:#d6a76633;border-color:#d6a766bf}.next-chips .empty[data-v-9208cd08]{color:#c3b3a2;background:0 0;border:1px dashed #4b3a31}.done-flag[data-v-9208cd08]{color:#d6a766;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:1rem;font-weight:600;display:flex}.done-flag span[data-v-9208cd08]{color:#c3b3a2;font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:500}@keyframes acceptBurst-9208cd08{0%{opacity:0;transform:translate(-8px,-50%)scale(.7)}25%{opacity:1;transform:translate(-18px,-50%)scale(1.05)}to{opacity:0;transform:translate(-34px,-50%)scale(.86)}}.divider[data-v-9208cd08]{background:#3b2d28;width:1px;height:32px}@media (width<=760px){.divider[data-v-9208cd08]{width:100%;height:1px}}.tuner-section[data-v-9208cd08]{grid-template-columns:auto 1fr;grid-template-areas:"info strip";align-items:center;gap:10px;min-width:0;display:grid}.tuner-info[data-v-9208cd08]{flex-direction:column;grid-area:info;align-items:center;width:88px;line-height:1;display:flex}.tuner-note[data-v-9208cd08]{text-align:center;text-overflow:ellipsis;white-space:nowrap;color:#f0ebe3;letter-spacing:.5px;width:100%;font-size:1.35rem;display:block;overflow:hidden}.tuner-note.tuned[data-v-9208cd08]{color:#d6a766}.tuner-note.poly[data-v-9208cd08]{color:#b9894d}.tuner-note.chord[data-v-9208cd08]{color:#d6a766;letter-spacing:.02em;font-size:1rem}.tuner-cents[data-v-9208cd08]{color:#c3b3a2;font-variant-numeric:tabular-nums;margin-top:2px;font-size:.72rem}.tuner-cents.tuned[data-v-9208cd08]{color:#d6a766}.tuner-strip[data-v-9208cd08]{background:linear-gradient(90deg,#d9757573 0%,#d6a7668c 50%,#d9757573 100%);border:1px solid #4b3a31b3;border-radius:999px;grid-area:strip;height:18px;position:relative}.strip-tick[data-v-9208cd08]{background:#f0ebe373;width:1px;position:absolute;top:3px;bottom:3px}.strip-tick-edge[data-v-9208cd08]{background:#f0ebe359}.strip-tick-left[data-v-9208cd08]{left:3px}.strip-tick-right[data-v-9208cd08]{right:3px}.strip-tick-center[data-v-9208cd08]{background:#d6a766;width:2px;left:50%;transform:translate(-50%)}.strip-marker[data-v-9208cd08]{background:#f0ebe3;border-radius:4px;width:4px;transition:left 50ms linear;position:absolute;top:-4px;bottom:-4px;transform:translate(-50%);box-shadow:0 0 6px #0000008c}.strip-marker.tuned[data-v-9208cd08]{background:#d6a766;box-shadow:0 0 10px #d6a766d9}
