.picker[data-v-52b1f1b6]{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:.7rem;display:grid}.card[data-v-52b1f1b6]{text-align:left;font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:12px;flex-direction:column;justify-content:flex-start;gap:.3rem;padding:.9rem 1rem;display:flex}.card[data-v-52b1f1b6]:hover{border-color:var(--accent)}.label[data-v-52b1f1b6]{font-size:.95rem;font-weight:700}.description[data-v-52b1f1b6]{color:var(--ink-dim);font-size:.8rem;line-height:1.45}.staff-block[data-v-4661718e]{width:100%;max-width:340px;margin:0 auto}.staff[data-v-4661718e]{--staff-ink:var(--ink);width:100%}.note-name[data-v-4661718e]{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.01em;height:1.6rem;color:var(--ink-dim);opacity:0;margin:0;font-size:1.15rem;font-weight:700;line-height:1.6rem;transition:opacity .22s}.note-name.shown[data-v-4661718e]{opacity:1}.staff[data-v-4661718e] svg{width:100%;height:auto;display:block}.session-layout[data-v-66dd4e46]{grid-template-columns:minmax(0,1fr);grid-template-areas:"music""sidebar""toolbar";gap:1rem;display:grid}.music[data-v-66dd4e46]{flex-direction:column;grid-area:music;justify-content:center;gap:.75rem;min-width:0;display:flex}.toolbar[data-v-66dd4e46]{border-top:1px solid var(--line);color:var(--ink-dim);flex-wrap:wrap;grid-area:toolbar;justify-content:center;align-items:center;gap:.75rem 1.5rem;padding-top:.85rem;font-size:.8rem;display:flex}.sidebar[data-v-66dd4e46]{grid-area:sidebar;min-width:0}@media (width>=900px){.session-layout[data-v-66dd4e46]{flex:1;grid-template:"music sidebar"minmax(0,1fr)"toolbar sidebar"/minmax(0,1fr) 320px;gap:1rem 1.75rem}.toolbar[data-v-66dd4e46]{justify-content:flex-start}.sidebar[data-v-66dd4e46]{align-self:start;position:sticky;top:0}}.chart[data-v-5ed20d0d]{margin:0}.svg-host[data-v-5ed20d0d]{min-height:2rem}.svg-host.loading[data-v-5ed20d0d]{opacity:.4}.svg-host[data-v-5ed20d0d] svg{width:100%;height:auto;display:block}.name[data-v-5ed20d0d]{text-align:center;color:var(--ink-dim);margin-top:.4rem;font-size:.85rem;font-weight:600}.error[data-v-5ed20d0d]{color:var(--accent-warn);text-align:center;margin:0;font-size:.75rem;line-height:1.5}.error .stem[data-v-5ed20d0d]{opacity:.85;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;display:block}.compact .name[data-v-5ed20d0d]{display:none}.meter[data-v-d527ee15]{width:100%;max-width:340px;margin:0 auto}.track[data-v-d527ee15]{background:var(--surface-2);border:1px solid var(--line);border-radius:13px;height:26px;position:relative;overflow:hidden}.band[data-v-d527ee15]{background:color-mix(in srgb, var(--accent-ok) 18%, transparent);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.center[data-v-d527ee15]{background:var(--ink-dim);width:2px;margin-left:-1px;position:absolute;top:4px;bottom:4px;left:50%}.needle[data-v-d527ee15]{background:var(--accent-warn);border-radius:2px;width:4px;margin-left:-2px;transition:left 80ms linear,background .12s;position:absolute;top:2px;bottom:2px}.needle.in-tune[data-v-d527ee15]{background:var(--accent-ok)}.caption[data-v-d527ee15]{text-align:center;font-variant-numeric:tabular-nums;color:var(--ink-dim);min-height:1.2em;margin:.35rem 0 0;font-size:.85rem}.caption.in-tune[data-v-d527ee15]{color:var(--accent-ok)}.practice-sidebar[data-v-9e327044]{flex-direction:column;align-items:stretch;gap:.6rem;display:flex;container-type:inline-size}.hint-slot[data-v-9e327044]{--hint-pad:.85rem;--caption:1.7rem;height:calc((100cqw - 2 * var(--hint-pad) - 2px) * 9 / 16 + 2 * var(--hint-pad) + 2px + var(--caption));display:grid}.hint-slot[data-v-9e327044]>*{grid-area:1/1;min-width:0}.hint-box[data-v-9e327044]{background:var(--surface-2);border:1px solid var(--line);padding:var(--hint-pad);border-radius:12px;overflow:hidden}.placeholder[data-v-9e327044]{border:1.5px dashed var(--line);border-radius:12px;justify-content:center;align-items:center;display:flex}.fade-enter-active[data-v-9e327044]{transition:opacity .2s,transform .2s}.fade-enter-from[data-v-9e327044]{opacity:0;transform:translateY(6px)}.fade-leave-active[data-v-9e327044]{display:none}.hold-track[data-v-9e327044]{background:var(--surface-2);border-radius:2px;height:3px;overflow:hidden}.hold-fill[data-v-9e327044]{background:var(--accent-ok);height:100%;transition:width 60ms linear}.feedback[data-v-9e327044]{text-align:center;color:var(--ink-dim);min-height:1.3em;margin:.4rem 0 0;font-size:.9rem;font-weight:600}.status.correct .feedback[data-v-9e327044]{color:var(--accent-ok)}.status.wrong .feedback[data-v-9e327044]{color:var(--accent-warn)}.feedback.listening[data-v-9e327044]{color:var(--accent)}.actions[data-v-9e327044]{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.reveal-inline[data-v-9e327044]{display:none}.footer[data-v-9e327044]{color:var(--ink-faint);flex-direction:column;align-items:center;gap:.6rem;font-size:.78rem;display:flex}button[data-v-9e327044]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .9rem;font-size:.85rem}button[data-v-9e327044]:disabled{opacity:.6;cursor:default}@media (width<=899.98px){.practice-sidebar[data-v-9e327044]{gap:1rem}.meter[data-v-9e327044]{order:1}.status[data-v-9e327044]{order:2;width:100%;max-width:340px;margin:0 auto}.hint-slot[data-v-9e327044]{order:3;width:100%;max-width:340px;height:auto;margin:0 auto}.hint-slot[data-v-9e327044]:not(.shown){display:none}.actions[data-v-9e327044]{order:4}.footer[data-v-9e327044]{order:5}.reveal-inline[data-v-9e327044]{display:inline-block}}.toggle[data-v-99cae677]{cursor:pointer;align-items:center;gap:.4rem;display:flex}.gate[data-v-99cae677]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;display:flex}.blurb[data-v-99cae677]{max-width:34ch;color:var(--ink-dim);margin:0;font-size:.9rem;line-height:1.55}.error[data-v-99cae677]{max-width:40ch;color:var(--accent-warn);margin:0;font-size:.85rem;line-height:1.5}button[data-v-99cae677]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .9rem;font-size:.85rem}button.primary[data-v-99cae677]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);padding:.7rem 1.4rem;font-size:.95rem;font-weight:600}button[data-v-99cae677]:disabled{opacity:.6;cursor:default}.streak[data-v-99cae677]{margin:0}.debug[data-v-99cae677]{font-variant-numeric:tabular-nums;width:100%;color:var(--ink);border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:.2rem .8rem;margin:0;padding-top:.6rem;font-size:.72rem;display:grid}.debug>div[data-v-99cae677]{justify-content:space-between;gap:.5rem;display:flex}.debug dt[data-v-99cae677]{color:var(--ink-faint)}.debug dd[data-v-99cae677]{margin:0}.toggle[data-v-bba76a6d]{cursor:pointer;align-items:center;gap:.4rem;display:flex}.gate[data-v-bba76a6d]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;display:flex}.blurb[data-v-bba76a6d]{max-width:34ch;color:var(--ink-dim);margin:0;font-size:.9rem;line-height:1.55}.error[data-v-bba76a6d]{max-width:40ch;color:var(--accent-warn);margin:0;font-size:.85rem;line-height:1.5}.resume[data-v-bba76a6d]{color:var(--ink-faint);margin:0;font-size:.78rem}.link[data-v-bba76a6d]{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;margin-left:.3rem;padding:0;text-decoration:underline}button[data-v-bba76a6d]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .9rem;font-size:.85rem}button.primary[data-v-bba76a6d]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);padding:.7rem 1.4rem;font-size:.95rem;font-weight:600}button[data-v-bba76a6d]:disabled{opacity:.6;cursor:default}.section[data-v-bba76a6d]{color:var(--ink-faint);text-align:center;margin:0;font-size:.78rem}.done[data-v-bba76a6d]{text-align:center;flex-direction:column;align-items:center;gap:.7rem;padding:2rem 0;display:flex}.done h3[data-v-bba76a6d]{margin:0;font-size:1rem;font-weight:700}.done p[data-v-bba76a6d]{max-width:34ch;color:var(--ink-dim);margin:0;font-size:.88rem;line-height:1.5}.staff-block[data-v-e9eed5d0]{width:100%;margin:0 auto}.staff[data-v-e9eed5d0]{--staff-ink:var(--ink);width:100%}.note-name[data-v-e9eed5d0]{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.01em;height:1.6rem;color:var(--ink-dim);opacity:0;margin:0;font-size:1.15rem;font-weight:700;line-height:1.6rem;transition:opacity .22s}.note-name.shown[data-v-e9eed5d0]{opacity:1}.staff[data-v-e9eed5d0] svg{width:100%;height:auto;display:block}.toggle[data-v-cef1007d]{cursor:pointer;align-items:center;gap:.4rem;display:flex}.range-field[data-v-cef1007d]{align-items:center;gap:.5rem;display:flex}.range-field input[type=range][data-v-cef1007d]{width:8rem;accent-color:var(--accent)}.range-field .value[data-v-cef1007d]{min-width:4.5em;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.gate[data-v-cef1007d]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;display:flex}.blurb[data-v-cef1007d]{max-width:34ch;color:var(--ink-dim);margin:0;font-size:.9rem;line-height:1.55}.error[data-v-cef1007d]{max-width:40ch;color:var(--accent-warn);margin:0;font-size:.85rem;line-height:1.5}.progress[data-v-cef1007d]{color:var(--ink-faint);text-align:center;margin:0;font-size:.78rem}button[data-v-cef1007d]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .9rem;font-size:.85rem}button.primary[data-v-cef1007d]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);padding:.7rem 1.4rem;font-size:.95rem;font-weight:600}button[data-v-cef1007d]:disabled{opacity:.6;cursor:default}.streak[data-v-cef1007d]{margin:0}.staff-block[data-v-373fa95c]{width:100%;margin:0 auto}.staff[data-v-373fa95c]{--staff-ink:var(--ink);width:100%}.staff-block.fill[data-v-373fa95c]{flex-direction:column;flex:1;min-height:0;display:flex}.staff-block.fill .staff[data-v-373fa95c]{flex:1 1 0;min-height:0;overflow:hidden}.note-name[data-v-373fa95c]{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.01em;height:1.6rem;color:var(--ink-dim);opacity:0;margin:0;font-size:1.15rem;font-weight:700;line-height:1.6rem;transition:opacity .22s}.note-name.shown[data-v-373fa95c]{opacity:1}.staff[data-v-373fa95c] svg{width:100%;height:auto;display:block}.session[data-v-90221e3a]{flex-direction:column;gap:1rem;display:flex}.session-header[data-v-90221e3a]{align-items:center;gap:1rem;display:flex}.back[data-v-90221e3a]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-dim);border-radius:8px;flex:none;padding:.4rem .7rem;font-size:.8rem}.title[data-v-90221e3a]{color:var(--ink);text-align:center;flex:1;min-width:0;margin:0;font-size:.95rem;font-weight:700}.session-header[data-v-90221e3a]:after{content:"";flex:none;width:5rem}.gate[data-v-90221e3a]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;display:flex}.blurb[data-v-90221e3a]{max-width:34ch;color:var(--ink-dim);margin:0;font-size:.9rem;line-height:1.55}.error[data-v-90221e3a]{max-width:40ch;color:var(--accent-warn);margin:0;font-size:.85rem;line-height:1.5}.hint[data-v-90221e3a]{color:var(--ink-faint);text-align:center;margin:0;font-size:.85rem}.bar-field[data-v-90221e3a]{color:var(--ink-dim);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.bar-field input[data-v-90221e3a]{width:4.5em;font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.4rem .5rem;font-size:.9rem}button[data-v-90221e3a]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .9rem;font-size:.85rem}button.primary[data-v-90221e3a]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);padding:.7rem 1.4rem;font-size:.95rem;font-weight:600}button[data-v-90221e3a]:disabled{opacity:.6;cursor:default}.resume[data-v-90221e3a]{align-items:center;gap:.6rem;display:flex}.tempo-field[data-v-90221e3a]{color:var(--ink-dim);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.tempo-field input[type=range][data-v-90221e3a]{width:8rem;accent-color:var(--accent)}.tempo-field .value[data-v-90221e3a]{min-width:3em;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.playback-actions[data-v-90221e3a]{flex-wrap:wrap;gap:.5rem;display:flex}.streak[data-v-90221e3a]{margin:0}@media (width>=900px){.session[data-v-90221e3a]{flex:1}}.songs[data-v-eacf31e4]{flex-direction:column;flex:1;gap:1rem;display:flex}.blurb[data-v-eacf31e4]{color:var(--ink-dim);margin:0;font-size:.85rem;line-height:1.5}.library-actions[data-v-eacf31e4]{flex-wrap:wrap;gap:.5rem;display:flex}.visually-hidden[data-v-eacf31e4]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.import-status[data-v-eacf31e4]{margin:0;font-size:.8rem}.import-status.ok[data-v-eacf31e4]{color:var(--accent-ok)}.import-status.error[data-v-eacf31e4]{color:var(--accent-warn)}.empty[data-v-eacf31e4]{color:var(--ink-faint);text-align:center;margin:0;padding:1.5rem 0;font-size:.85rem}.song-list[data-v-eacf31e4]{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.song-row[data-v-eacf31e4]{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;flex-direction:column;gap:.6rem;padding:.7rem .85rem;display:flex}.song-info[data-v-eacf31e4]{min-width:0}.song-title[data-v-eacf31e4]{color:var(--ink);margin:0;font-size:.9rem;font-weight:600}.song-date[data-v-eacf31e4]{color:var(--ink-faint);margin:.15rem 0 0;font-size:.75rem}.song-actions[data-v-eacf31e4]{flex-wrap:wrap;gap:.4rem;display:flex}button[data-v-eacf31e4]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .9rem;font-size:.85rem}button.primary[data-v-eacf31e4]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}button[data-v-eacf31e4]:disabled{opacity:.6;cursor:default}button.danger[data-v-eacf31e4]{color:var(--accent-warn)}button.danger.confirming[data-v-eacf31e4]{background:var(--accent-warn);border-color:var(--accent-warn);color:var(--on-accent)}.field[data-v-eacf31e4]{flex-direction:column;gap:.35rem;display:flex}.field label[data-v-eacf31e4]{color:var(--ink-dim);font-size:.85rem}.field input[type=text][data-v-eacf31e4]{font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .7rem;font-size:.9rem}.field textarea[data-v-eacf31e4]{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);resize:vertical;border-radius:8px;padding:.65rem .75rem;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.5}.validation[data-v-eacf31e4]{font-size:.82rem}.hint[data-v-eacf31e4]{color:var(--ink-faint);margin:0 0 .4rem}.status[data-v-eacf31e4]{margin:0 0 .4rem;font-weight:600}.status.ok[data-v-eacf31e4]{color:var(--accent-ok)}.status.error[data-v-eacf31e4]{color:var(--accent-warn)}.issues[data-v-eacf31e4]{flex-direction:column;gap:.4rem;margin:0 0 .6rem;padding:0;list-style:none;display:flex}.issues>li[data-v-eacf31e4]{border-left:3px solid var(--line);padding-left:.9rem}.issues>li.error[data-v-eacf31e4]{border-left-color:var(--accent-warn);color:var(--ink)}.issues>li.warning[data-v-eacf31e4]{border-left-color:var(--ink-faint);color:var(--ink-dim)}.issue-notes[data-v-eacf31e4]{color:var(--ink-dim);margin:.25rem 0 0;padding-left:1.1rem;font-size:.78rem}.transpose[data-v-eacf31e4]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.actions[data-v-eacf31e4]{flex-wrap:wrap;gap:.5rem;display:flex}.editor[data-v-eacf31e4],.editor-main[data-v-eacf31e4],.editor-side[data-v-eacf31e4]{flex-direction:column;gap:1rem;min-width:0;display:flex}@media (width>=900px){.editor[data-v-eacf31e4]{flex:1;grid-template-columns:minmax(0,3fr) minmax(300px,2fr);gap:1.5rem;display:grid}.field.abc[data-v-eacf31e4]{flex:1}.field.abc textarea[data-v-eacf31e4]{resize:none;flex:1;min-height:12rem}}.panel[data-v-85622e5d]{flex-direction:column;gap:1rem;display:flex}h2[data-v-85622e5d]{margin:0;font-size:1rem;font-weight:600}.groups[data-v-85622e5d]{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:start;gap:1rem;display:grid}.group[data-v-85622e5d]{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:1rem}section.group[data-v-85622e5d]{flex-direction:column;gap:1.25rem;display:flex}h3[data-v-85622e5d],.advanced summary[data-v-85622e5d]{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin:0;font-size:.75rem;font-weight:700}.field[data-v-85622e5d]{flex-direction:column;gap:.4rem;display:flex}label[data-v-85622e5d]{color:var(--ink-dim);justify-content:space-between;gap:.5rem;font-size:.85rem;display:flex}label.sub[data-v-85622e5d]{margin-top:.4rem}.value[data-v-85622e5d]{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.hint[data-v-85622e5d]{color:var(--ink-faint);margin:0;font-size:.75rem;line-height:1.45}input[type=range][data-v-85622e5d]{width:100%;accent-color:var(--accent)}.range-pair[data-v-85622e5d]{align-items:center;gap:.6rem;display:flex}.range-pair .value[data-v-85622e5d]{text-align:right;min-width:2.8em}.segmented[data-v-85622e5d]{gap:.35rem;display:flex}.segmented button[data-v-85622e5d]{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink-dim);cursor:pointer;border-radius:8px;flex:1;padding:.5rem .4rem;font-size:.8rem}.segmented button.on[data-v-85622e5d]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.advanced summary[data-v-85622e5d]{cursor:pointer}.advanced>.field[data-v-85622e5d]{margin-top:.9rem}.checkbox label[data-v-85622e5d]{justify-content:flex-start;align-items:center;gap:.5rem}.reset[data-v-85622e5d]{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink-dim);cursor:pointer;border-radius:8px;margin-top:.9rem;padding:.5rem .8rem;font-size:.8rem}.panel[data-v-87fefdde]{flex-direction:column;gap:1rem;display:flex}.dashboard[data-v-87fefdde]{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:start;gap:1.25rem 2rem;display:grid}.column[data-v-87fefdde]{flex-direction:column;gap:1rem;min-width:0;display:flex}h2[data-v-87fefdde]{margin:0;font-size:1rem;font-weight:600}.empty[data-v-87fefdde]{color:var(--ink-faint);font-size:.85rem;line-height:1.5}.tiles[data-v-87fefdde]{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.tile[data-v-87fefdde]{background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:10px;flex-direction:column;gap:.15rem;padding:.6rem .3rem;display:flex}.tile .n[data-v-87fefdde]{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.tile .l[data-v-87fefdde]{color:var(--ink-faint);font-size:.65rem;line-height:1.2}.modes[data-v-87fefdde]{flex-direction:column;gap:.5rem;display:flex}h3[data-v-87fefdde]{color:var(--ink-dim);margin:0;font-size:.8rem;font-weight:600}table[data-v-87fefdde]{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.8rem}th[data-v-87fefdde],td[data-v-87fefdde]{text-align:right;border-bottom:1px solid var(--line);padding:.35rem .3rem}th[data-v-87fefdde]:first-child,td[data-v-87fefdde]:first-child{text-align:left}th[data-v-87fefdde]{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:500}td.note[data-v-87fefdde]{font-weight:600}td.warn[data-v-87fefdde]{color:var(--accent-warn)}.hint[data-v-87fefdde]{color:var(--ink-faint);margin:0;font-size:.72rem}.weakest[data-v-87fefdde]{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:.9rem}.weakest h3[data-v-87fefdde]{color:var(--ink-dim);margin:0 0 .6rem;font-size:.8rem;font-weight:600}.reset[data-v-87fefdde]{font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-dim);cursor:pointer;border-radius:8px;align-self:flex-start;padding:.5rem .8rem;font-size:.8rem}.panel[data-v-d1755641]{flex-direction:column;gap:1rem;display:flex}h2[data-v-d1755641]{margin:0;font-size:1rem;font-weight:600}.blurb[data-v-d1755641]{color:var(--ink-faint);margin:0;font-size:.78rem;line-height:1.55}.blurb code[data-v-d1755641],.file[data-v-d1755641]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.controls[data-v-d1755641]{color:var(--ink-dim);align-items:center;gap:1rem;font-size:.8rem;display:flex}.controls label[data-v-d1755641]{align-items:center;gap:.35rem;display:flex}.reload[data-v-d1755641]{font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-dim);cursor:pointer;border-radius:7px;margin-left:auto;padding:.35rem .6rem;font-size:.75rem}.group-heading[data-v-d1755641]{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin:0;font-size:.78rem;font-weight:700}.grid[data-v-d1755641]{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.9rem;display:grid}.cell[data-v-d1755641]{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:.6rem}.cell h4[data-v-d1755641]{align-items:center;gap:.4rem;margin:0 0 .4rem;font-size:.85rem;font-weight:700;display:flex}.file[data-v-d1755641]{color:var(--ink-faint);text-align:center;margin-top:.4rem;font-size:.68rem;display:block}.legend[data-v-d1755641]{color:var(--ink-faint);margin:0;font-size:.72rem;line-height:1.5}.app[data-v-bf169e1d]{--shell-width:1400px;--gutter:max(1rem, calc((100% - var(--shell-width)) / 2 + 1rem));flex-direction:column;min-height:100dvh;display:flex}header[data-v-bf169e1d]{text-align:center;padding:max(1rem, env(safe-area-inset-top)) var(--gutter) 0;margin-bottom:1rem}h1[data-v-bf169e1d]{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:600}.sub[data-v-bf169e1d]{color:var(--ink-faint);margin:.1rem 0 0;font-size:.75rem}main[data-v-bf169e1d]{padding:0 var(--gutter) 1rem;flex-direction:column;flex:1;order:1;display:flex}.back[data-v-bf169e1d]{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-dim);border-radius:8px;align-self:flex-start;margin:0 0 .85rem;padding:.4rem .7rem;font-size:.8rem}footer[data-v-bf169e1d]{text-align:center;color:var(--ink-faint);margin-top:auto;padding-top:1.5rem;font-size:.7rem}footer a[data-v-bf169e1d]{color:inherit}nav[data-v-bf169e1d]{padding:.5rem var(--gutter) calc(.5rem + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--surface) 70%, transparent);order:2;position:sticky;bottom:0}.tabs[data-v-bf169e1d]{gap:.35rem;display:flex}.tabs button[data-v-bf169e1d]{font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-dim);cursor:pointer;border-radius:8px;flex:1;padding:.55rem .3rem;font-size:.78rem}.tabs button.on[data-v-bf169e1d]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}@media (width>=900px){.app[data-v-bf169e1d]{height:100dvh}header[data-v-bf169e1d]{margin-bottom:.5rem}nav[data-v-bf169e1d]{padding:0 var(--gutter);background:var(--surface);border-bottom:1px solid var(--line);order:0;margin-bottom:1rem;position:static}.tabs[data-v-bf169e1d]{gap:.25rem}.tabs button[data-v-bf169e1d]{background:0 0;border:none;border-bottom:2.5px solid #0000;border-radius:0;flex:none;margin-bottom:-1px;padding:.6rem 1rem;font-size:.85rem}.tabs button[data-v-bf169e1d]:hover{color:var(--ink)}.tabs button.on[data-v-bf169e1d]{color:var(--ink);border-bottom-color:var(--accent);background:0 0}main[data-v-bf169e1d]{min-height:0;overflow-y:auto}}:root{--surface:#faf9f7;--surface-2:#fff;--line:#dcd8d2;--ink:#1b1d23;--ink-dim:#565b66;--ink-faint:#8a8f9a;--accent:#3a6ea5;--on-accent:#fff;--accent-ok:#2f9e52;--accent-warn:#c2691f;--note-correct:#2f9e52;--note-wrong:#c2691f;--note-holding:#3a6ea5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--surface:#16181d;--surface-2:#1f232a;--line:#333942;--ink:#e8eaed;--ink-dim:#a4abb6;--ink-faint:#6f7681;--accent:#4a8fd4;--on-accent:#0d1117;--accent-ok:#45b566;--accent-warn:#d98a3a;--note-correct:#45b566;--note-wrong:#d98a3a;--note-holding:#4a8fd4}}*{box-sizing:border-box}body{background:var(--surface);color:var(--ink);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}svg text{font-family:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
