.fav-toggle[data-v-e9cded19]{align-items:center;gap:.4rem;display:inline-flex}.fav-toggle.active[data-v-e9cded19],.fav-toggle[aria-pressed=true][data-v-e9cded19]{color:var(--violet);border-color:color-mix(in srgb,var(--violet) 40%,var(--border));background:var(--violet-soft)}.fav-toggle.active[data-v-e9cded19]:hover,.fav-toggle[aria-pressed=true][data-v-e9cded19]:hover{color:var(--violet);background:color-mix(in srgb,var(--violet) 22%,var(--bg-elevated))}.degree-block[data-v-95ac2f07]{flex-direction:column;gap:1.15rem;display:flex}.degree-block.is-practice[data-v-95ac2f07]{min-height:70vh}.notes-toolbar[data-v-95ac2f07]{justify-content:space-between;align-items:center;gap:.75rem;min-height:2rem;display:flex}.notes-title[data-v-95ac2f07]{margin:0;font-size:1.15rem;font-weight:700}.toolbar-grow[data-v-95ac2f07]{flex:1}.notes-actions[data-v-95ac2f07]{align-items:center;gap:.4rem;margin-left:auto;display:flex;position:relative}.icon-btn[data-v-95ac2f07]{justify-content:center;align-items:center;min-width:2.15rem;min-height:2.15rem;padding:.45rem;line-height:1;display:inline-flex}.cog-icon[data-v-95ac2f07]{display:block}.play-btn[data-v-95ac2f07]:disabled{opacity:.45;cursor:not-allowed}.config-panel[data-v-95ac2f07]{z-index:20;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);gap:.65rem;width:min(16.5rem,100vw - 2.5rem);padding:.75rem;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 8px 24px #00000059}.config-panel[data-v-95ac2f07],.config-row[data-v-95ac2f07]{flex-direction:column;display:flex}.config-row[data-v-95ac2f07]{gap:.3rem}.config-meta[data-v-95ac2f07]{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.config-label[data-v-95ac2f07]{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}.config-value[data-v-95ac2f07]{font-variant-numeric:tabular-nums;color:var(--fg);font-size:.78rem;font-weight:500}.config-row input[type=range][data-v-95ac2f07]{width:100%;accent-color:var(--fg)}.config-select[data-v-95ac2f07]{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:var(--bg);width:100%;color:var(--fg);font:inherit;padding:.35rem .5rem;font-size:.85rem}.notes-body[data-v-95ac2f07]{flex-direction:column;gap:.55rem;display:flex}.edit-hint[data-v-95ac2f07]{margin:0;font-size:.8rem}.degree-chips[data-v-95ac2f07]{flex-wrap:wrap;gap:.4rem;display:flex}.note-chip[data-v-95ac2f07]{cursor:pointer;font-family:var(--font);color:var(--fg);font-size:.85rem;transition:opacity .15s,background .15s,border-color .15s,box-shadow .15s}.note-chip[data-v-95ac2f07]:hover{background:var(--accent-bg)}.note-chip.is-highlight[data-v-95ac2f07]{border-color:var(--violet);background:var(--violet-soft);box-shadow:0 0 0 1px var(--violet);font-weight:700}.note-chip.is-playing[data-v-95ac2f07]{border-color:var(--fg);background:var(--accent-bg);box-shadow:0 0 0 2px var(--fg);opacity:1;font-weight:700}.note-chip.is-deselected[data-v-95ac2f07]{opacity:.35}.note-chip.is-selected-edit[data-v-95ac2f07]{border-color:var(--fg)}.solfege[data-v-95ac2f07]{color:var(--violet);font-style:italic;font-weight:500}.locked-teaser[data-v-8722d316]{isolation:isolate;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);min-height:9rem;position:relative;overflow:hidden}.decoy[data-v-8722d316]{filter:blur(7px);-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.55;flex-direction:column;gap:.65rem;padding:.85rem 1rem 1rem;display:flex}.decoy-row[data-v-8722d316]{flex-wrap:wrap;gap:.45rem;display:flex}.decoy-chip[data-v-8722d316]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--muted);letter-spacing:.08em;padding:.35rem .75rem;font-size:.85rem;font-weight:600;display:inline-block}.overlay[data-v-8722d316]{z-index:1;background:color-mix(in srgb,var(--bg-elevated) 45%,transparent);color:var(--fg);font-family:var(--font);cursor:pointer;text-align:center;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;margin:0;padding:1rem;display:flex;position:absolute;inset:0}.overlay[data-v-8722d316]:hover{background:color-mix(in srgb,var(--bg-elevated) 62%,transparent)}.overlay:hover .lock-icon[data-v-8722d316]{opacity:.28}.overlay[data-v-8722d316]:focus-visible{outline:2px solid color-mix(in srgb,var(--fg) 35%,transparent);outline-offset:-2px}.lock-icon[data-v-8722d316]{width:4.5rem;height:4.5rem;color:var(--fg);opacity:.18;transition:opacity .15s;display:block}.cta[data-v-8722d316]{font-size:.95rem;font-weight:700}.hint[data-v-8722d316]{max-width:22rem;font-size:.8rem}.path-header[data-v-7ac128f5]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.path-header h2[data-v-7ac128f5]{margin:0}.path-hint[data-v-7ac128f5]{margin-bottom:.75rem;font-size:.85rem}.path-steps[data-v-7ac128f5]{flex-wrap:wrap;margin:0;padding:0;list-style:none}.path-steps[data-v-7ac128f5],.path-steps li[data-v-7ac128f5]{align-items:center;gap:.5rem;display:flex}.path-edit[data-v-7ac128f5]{color:var(--violet);white-space:nowrap;font-size:.85rem;font-weight:600}.path-edit[data-v-7ac128f5]:after{content:" →";color:var(--muted)}.path-chip-btn[data-v-7ac128f5]{font-family:var(--font);color:var(--fg);cursor:pointer;background:var(--bg-elevated)}.path-chip-btn[data-v-7ac128f5]:hover{background:var(--accent-bg)}.path-chip.is-target[data-v-7ac128f5]{border-color:var(--violet);background:var(--violet-soft);font-weight:600}.path-preview[data-v-7ac128f5]{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);width:min(28rem,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--fg);box-shadow:var(--shadow);margin:auto;padding:1.25rem}.path-preview[data-v-7ac128f5]::backdrop{background:#0000008c}.path-preview-header[data-v-7ac128f5]{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.path-preview-header h3[data-v-7ac128f5]{margin:0;font-size:1.15rem}.path-preview-close[data-v-7ac128f5]{flex-shrink:0;padding:.2rem .5rem;line-height:1}.flavour[data-v-7ac128f5]{margin:0 0 .75rem;font-size:.95rem}.arrived[data-v-7ac128f5]{margin:0 0 .75rem;font-size:.85rem}.path-edit-inline[data-v-7ac128f5]{color:var(--violet);font-weight:600}.path-preview-footer[data-v-7ac128f5]{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1.1rem;padding-top:1rem;display:flex}.path-preview-footer .btn-primary[data-v-7ac128f5]{text-decoration:none}.chord-header[data-v-10322bac]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.chord-header h2[data-v-10322bac]{margin:0}.chord-header-actions[data-v-10322bac]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.jam-link[data-v-10322bac]{text-decoration:none}.note[data-v-10322bac]{font-size:.85rem}.chord-row[data-v-10322bac]{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.chord-cell[data-v-10322bac]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);min-width:4.2rem;color:var(--fg);font-family:var(--font);cursor:pointer;flex-direction:column;align-items:center;gap:.15rem;padding:.55rem .7rem;display:flex;position:relative}.chord-cell[data-v-10322bac]:hover{background:var(--accent-bg)}.chord-cell.is-selected[data-v-10322bac]{background:#0ea5e924;border-color:#0ea5e9}.chord-cell.is-characteristic[data-v-10322bac]{border-color:var(--violet)}.roman[data-v-10322bac]{font-size:1rem;font-weight:700}.symbol[data-v-10322bac]{color:var(--muted);font-size:.8rem}.star[data-v-10322bac]{color:var(--violet);font-size:.7rem;position:absolute;top:.2rem;right:.35rem}.why[data-v-10322bac]{color:var(--muted);margin-top:.75rem;font-size:.9rem}.chord-grid[data-v-d7a730e4]{text-align:center;cursor:pointer;margin:0}.chord-grid svg[data-v-d7a730e4]{width:120px;margin:0 auto;display:block}.nut[data-v-d7a730e4]{stroke:var(--fg);stroke-width:3.5px}.fret[data-v-d7a730e4],.string[data-v-d7a730e4]{stroke:var(--muted);stroke-width:1px}.mark[data-v-d7a730e4]{fill:var(--muted);font-size:12px;font-weight:700}.open-mark[data-v-d7a730e4]{fill:#0000;stroke:var(--fg);stroke-width:1.5px}.finger[data-v-d7a730e4]{fill:var(--fg)}.base-fret[data-v-d7a730e4]{fill:var(--muted);font-size:11px;font-weight:600}figcaption[data-v-d7a730e4]{color:var(--muted);margin-top:.25rem;font-size:.8rem}.similar-scales h2[data-v-d9e172e3]{margin:0 0 .5rem}.hint[data-v-d9e172e3]{font-size:.85rem}.from-row[data-v-d9e172e3],.hint[data-v-d9e172e3]{margin-bottom:.75rem}.from-row[data-v-d9e172e3]{align-items:center;gap:.45rem;display:flex}.from-label[data-v-d9e172e3]{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:600}.chip.is-current[data-v-d9e172e3]{border-color:var(--violet);background:var(--violet-soft);font-weight:600}.similar-list[data-v-d9e172e3]{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.derivative[data-v-d9e172e3]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--fg);font-family:var(--font);cursor:pointer;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.85rem;transition:background .15s,border-color .15s;display:inline-flex}.derivative[data-v-d9e172e3]:hover{background:var(--accent-bg);border-color:var(--muted)}.derivative.locked[data-v-d9e172e3]{opacity:.78}.lock-badge[data-v-d9e172e3]{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.05rem .4rem;font-size:.65rem;font-weight:600}.derivative .edit[data-v-d9e172e3]{color:var(--violet);font-weight:600}.derivative .arrow[data-v-d9e172e3]{color:var(--muted)}.derivative .name[data-v-d9e172e3]{font-weight:500}.path-preview[data-v-d9e172e3]{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);width:min(28rem,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--fg);box-shadow:var(--shadow);margin:auto;padding:1.25rem}.path-preview[data-v-d9e172e3]::backdrop{background:#0000008c}.path-preview-header[data-v-d9e172e3]{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.path-preview-header h3[data-v-d9e172e3]{margin:0;font-size:1.15rem}.path-preview-close[data-v-d9e172e3]{flex-shrink:0;padding:.2rem .5rem;line-height:1}.flavour[data-v-d9e172e3]{margin:0 0 .75rem;font-size:.95rem}.arrived[data-v-d9e172e3]{margin:0 0 .75rem;font-size:.85rem}.path-edit-inline[data-v-d9e172e3]{color:var(--violet);font-weight:600}.path-preview-footer[data-v-d9e172e3]{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1.1rem;padding-top:1rem;display:flex}.path-preview-footer .btn-primary[data-v-d9e172e3]{text-decoration:none}.scale-page-shell[data-v-1ae96725]{flex-direction:column;gap:1rem;display:flex}.back[data-v-1ae96725]{align-self:flex-start;text-decoration:none}.scale-page[data-v-1ae96725]{flex-direction:column;gap:1rem;display:flex}.notes-card.is-practice[data-v-1ae96725]{min-height:70vh}.scale-header .aliases[data-v-1ae96725]{margin-top:-.25rem;font-size:.9rem}.scale-header .flavour[data-v-1ae96725]{max-width:46rem}.controls[data-v-1ae96725]{flex-wrap:wrap;gap:.5rem;margin:.5rem 0 .9rem;display:flex}.hint[data-v-1ae96725]{font-size:.85rem}.legend-root[data-v-1ae96725]{color:#e11d48}.legend-scale[data-v-1ae96725]{color:var(--violet)}.legend-chord[data-v-1ae96725]{color:#0ea5e9}.fret-title[data-v-1ae96725]{margin-top:1rem}.instrument-heading[data-v-1ae96725]{justify-content:space-between;align-items:center;gap:.35rem;display:flex}.instrument-heading h3[data-v-1ae96725]{margin:0}.remove[data-v-1ae96725]{border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);cursor:pointer;font-family:var(--font);background:0 0;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.8rem;transition:color .15s,border-color .15s;display:inline-flex}.remove-x[data-v-1ae96725]{font-size:1.05rem;line-height:1}.remove[data-v-1ae96725]:hover{color:var(--fg);border-color:var(--muted)}.add-instrument[data-v-1ae96725]{border:1.5px dashed var(--border);border-radius:var(--radius-lg);width:100%;color:var(--muted);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:1.5rem 1rem;transition:color .15s,border-color .15s,background .15s;display:flex}.add-instrument.empty[data-v-1ae96725]{min-height:8rem;margin-top:.75rem}.add-instrument[data-v-1ae96725]:hover{color:var(--fg);border-color:var(--muted);background:var(--accent-bg)}.add-instrument .plus[data-v-1ae96725]{font-size:2.25rem;font-weight:300;line-height:1}.add-picker[data-v-1ae96725]{display:block}.add-select[data-v-1ae96725]{background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font);cursor:pointer;padding:.4rem .6rem;font-size:.9rem}.visually-hidden[data-v-1ae96725]{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.voicing-row[data-v-1ae96725]{flex-wrap:wrap;gap:1.25rem;display:flex}
