:root{--paper: #fcfbf9;--paper-2: #f3f1ee;--card: #ffffff;--ink: #1c1917;--ink-2: #44403c;--muted: #78716c;--line: #e7e5e2;--line-2: #d6d3cf;--accent: #8b1e3f;--accent-soft: #f6e4ea;--accent-ink: #741833;--accent-2: #a16207;--accent-2-soft: #f6ecd8;--ok: #15803d;--ok-soft: #dcf2e3;--bad: #c81e1e;--cur: #2563eb;--bad-soft: #fbe0e0;--gold: #b7791f;--white-key: #ffffff;--white-key-2: #efedea;--black-key: #1c1917;--black-key-2: #3a3532;--shadow: 0 1px 2px rgba(28, 25, 23, .05), 0 4px 16px -6px rgba(28, 25, 23, .11);--shadow-lg: 0 2px 6px rgba(28, 25, 23, .07), 0 20px 40px -16px rgba(28, 25, 23, .22);--radius: 10px;--serif: "Libre Baskerville", Georgia, "Times New Roman", serif;--sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--seg-on: var(--card);--seg-on-ink: var(--ink);--seg-on-line: var(--line-2);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #141211;--paper-2: #1c1a18;--card: #1f1c1a;--ink: #f2efeb;--ink-2: #cfc9c3;--muted: #948c85;--line: #2f2b28;--line-2: #403a36;--accent: #e57a98;--accent-soft: #3a1a24;--accent-ink: #f3a7bd;--accent-2: #e0b04c;--accent-2-soft: #352a14;--ok: #4ade80;--ok-soft: #173322;--bad: #f87171;--cur: #60a5fa;--bad-soft: #3a1a1a;--gold: #f4c25b;--white-key: #ece8e3;--white-key-2: #cdc7c0;--black-key: #0b0a09;--black-key-2: #2a2623;--shadow: 0 1px 2px rgba(0,0,0,.35), 0 6px 20px -8px rgba(0,0,0,.55);--shadow-lg: 0 24px 48px -16px rgba(0,0,0,.6);--seg-on: #2f2b28;--seg-on-ink: var(--accent-ink);--seg-on-line: var(--line-2);color-scheme:dark}}:root[data-theme=dark]{--paper: #141211;--paper-2: #1c1a18;--card: #1f1c1a;--ink: #f2efeb;--ink-2: #cfc9c3;--muted: #948c85;--line: #2f2b28;--line-2: #403a36;--accent: #e57a98;--accent-soft: #3a1a24;--accent-ink: #f3a7bd;--accent-2: #e0b04c;--accent-2-soft: #352a14;--ok: #4ade80;--ok-soft: #173322;--bad: #f87171;--cur: #60a5fa;--bad-soft: #3a1a1a;--gold: #f4c25b;--white-key: #ece8e3;--white-key-2: #cdc7c0;--black-key: #0b0a09;--black-key-2: #2a2623;--shadow: 0 1px 2px rgba(0,0,0,.35), 0 6px 20px -8px rgba(0,0,0,.55);--shadow-lg: 0 24px 48px -16px rgba(0,0,0,.6);--seg-on: #2f2b28;--seg-on-ink: var(--accent-ink);--seg-on-line: var(--line-2);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--accent-ink);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-family:var(--serif);font-weight:700;line-height:1.25;letter-spacing:-.01em;margin:0 0 .5em}h1{font-size:clamp(28px,4vw,40px)}h2{font-size:clamp(22px,2.6vw,28px)}h3{font-size:20px}h4{font-size:16px}p{margin:0 0 1em}small,.small{font-size:13px}.muted{color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:24px 0}kbd{font:12px var(--sans);background:var(--paper-2);border:1px solid var(--line-2);border-bottom-width:2px;border-radius:5px;padding:1px 6px}button,input,select,textarea{font:inherit;color:inherit}[hidden]{display:none!important}.app{display:flex;min-height:100vh}.sidebar{width:248px;flex:none;position:sticky;top:0;height:100vh;height:100dvh;overflow-y:auto;background:var(--paper-2);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:18px 12px}.brand{display:flex;align-items:center;gap:10px;padding:4px 10px 18px;color:var(--ink);text-decoration:none!important}.brand-mark{width:36px;height:36px;flex:none;display:block;border-radius:8px}:root[data-theme=dark] .brand-mark{box-shadow:0 0 0 1px var(--line-2)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-mark{box-shadow:0 0 0 1px var(--line-2)}}.brand-name{font:600 19px/1.1 var(--serif)}.brand-name em{font-style:italic;color:var(--accent);font-weight:400}.nav{display:flex;flex-direction:column;gap:1px}.nav a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:9px;color:var(--ink-2);font-weight:500;font-size:14px;text-decoration:none}.nav a .ni{width:18px;text-align:center;color:var(--muted);font-size:13px}.nav a:hover{background:var(--card);color:var(--ink)}.nav a.active{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.nav a.active .ni{color:var(--accent)}.nav-sep{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:14px 10px 4px;font-weight:600}button.nav-sep{display:flex;align-items:center;width:100%;background:none;border:0;text-align:left;cursor:pointer;border-radius:7px}button.nav-sep:hover{color:var(--ink)}.nav-chev{margin-left:auto;font-size:12px;transition:transform .15s}.nav-grp.closed .nav-chev{transform:rotate(-90deg)}.nav-items{display:flex;flex-direction:column;gap:1px}.nav-grp.closed .nav-items{display:none}.sidebar-foot{margin-top:auto;padding-top:16px}.input-status{display:flex;flex-direction:column;gap:4px;font-size:12px}.input-status a{color:var(--muted);display:flex;align-items:center;gap:7px;padding:3px 10px}.dot{width:8px;height:8px;border-radius:50%;background:var(--line-2);display:inline-block;flex:none}.dot.on{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;height:58px;padding:0 28px;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar-title{font:600 16px var(--serif);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{display:flex;align-items:center;gap:10px}.icon-btn{border:1px solid var(--line);background:var(--card);border-radius:9px;height:34px;min-width:34px;padding:0 8px;cursor:pointer;font-size:14px}.icon-btn:hover{border-color:var(--line-2)}#acct-btn{display:inline-flex;align-items:center;justify-content:center;color:var(--ink);text-decoration:none}#acct-btn svg{width:18px;height:18px;display:block}.icon-btn.lang{font-weight:600;font-size:12px;letter-spacing:.04em}@media(min-width:901px){body.nav-hidden .sidebar{display:none}}.xp{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2);text-decoration:none!important}.rank-badge{background:var(--ink);color:var(--paper);border-radius:6px;padding:2px 7px;font-weight:600}.xp-bar{width:70px;height:6px;background:var(--line);border-radius:3px;overflow:hidden}.xp-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--gold))}.streak{font-size:13px;font-weight:600;color:var(--accent-ink)}.view{padding:28px 28px 80px;max-width:1180px;width:100%;margin:0 auto}.scrim{display:none}@media(max-width:900px){.sidebar{position:fixed;z-index:50;left:0;top:0;bottom:0;height:auto;transform:translate(-100%);transition:transform .2s;box-shadow:var(--shadow-lg)}body.nav-open .sidebar{transform:none}body.nav-open .scrim{display:block;position:fixed;inset:0;z-index:40;background:#0000004d}.topbar{padding:0 16px}.view{padding:20px 16px 80px}.xp-bar,.xp-num{display:none}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card+.card{margin-top:16px}.card.flat{box-shadow:none}.card h3:first-child,.card h2:first-child{margin-top:0}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid.wide{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid.tight{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.stack>*+*{margin-top:16px}.section{margin-top:36px}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;flex-wrap:wrap}.section-head h2{margin:0}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:600;margin-bottom:6px}.lead{font-size:17px;color:var(--ink-2);max-width:70ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-2);background:var(--card);color:var(--ink);padding:8px 16px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;text-decoration:none!important;transition:transform .05s,background .15s,border-color .15s;white-space:nowrap}.btn:hover{border-color:var(--ink-2)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn.primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}.btn.accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--paper-2)}.btn.small{padding:5px 11px;font-size:13px;border-radius:8px}.btn.big{padding:13px 24px;font-size:16px;border-radius:12px}.btn:disabled{opacity:.45;cursor:not-allowed}.seg{display:inline-flex;background:var(--paper-2);border:1px solid var(--line);border-radius:11px;padding:3px;gap:2px;flex-wrap:wrap}.seg button{border:0;background:transparent;padding:6px 12px;border-radius:8px;cursor:pointer;font-weight:500;font-size:13.5px;color:var(--ink-2)}.seg button.on{background:var(--seg-on);color:var(--seg-on-ink);box-shadow:var(--shadow),inset 0 0 0 1px var(--seg-on-line);font-weight:600}.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--paper-2);color:var(--ink-2);border:1px solid var(--line)}.chip.accent{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent}.chip.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.chip.blue{background:var(--accent-2-soft);color:var(--accent-2);border-color:transparent}.lvl{display:inline-flex;gap:2px}.lvl i{width:6px;height:12px;border-radius:2px;background:var(--line)}.lvl i.on{background:var(--accent)}select,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],textarea{background:var(--card);border:1px solid var(--line-2);border-radius:9px;padding:7px 10px;font-size:14px;outline:none}select:focus,input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input[type=number]{width:70px}input[type=range]{accent-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}label{font-size:14px}.field{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--ink-2);font-weight:500}.progress{height:8px;background:var(--line);border-radius:4px;overflow:hidden}.progress i{display:block;height:100%;background:var(--accent);border-radius:4px;transition:width .4s}.progress.ok i{background:var(--ok)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px;overflow-x:auto}.tabs a,.tabs button{border:0;background:none;padding:10px 14px;cursor:pointer;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;font-size:14px;text-decoration:none!important}.tabs .on{color:var(--ink);border-bottom-color:var(--accent)}@media(max-width:700px){.tabs{flex-wrap:wrap;overflow-x:visible;gap:0 2px}.tabs a,.tabs button{padding:8px 10px}}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:10px 18px;border-radius:12px;font-weight:500;opacity:0;pointer-events:none;transition:all .25s;z-index:100;box-shadow:var(--shadow-lg)}.toast.show{opacity:1;transform:translate(-50%)}.toast.ok{background:var(--ok);color:#fff}.toast.bad{background:var(--bad);color:#fff}.empty{text-align:center;padding:40px;color:var(--muted)}pre.error{white-space:pre-wrap;color:var(--bad);background:var(--bad-soft);padding:16px;border-radius:10px;font-size:12px}.hero{position:relative;overflow:hidden;border-radius:22px;padding:40px;background:var(--ink);color:var(--paper);box-shadow:var(--shadow-lg)}.hero h1{color:var(--paper);max-width:18ch}.hero h1 em{color:#f0a3b8;font-style:italic;font-weight:500}.hero p{color:color-mix(in srgb,var(--paper) 75%,transparent);max-width:52ch;font-size:16px}.hero .btn{border-color:transparent}.hero .btn.primary{background:#a32a4f;color:#fff}.hero .btn.primary:hover{background:#fff;color:var(--ink)}.hero-keys{position:absolute;right:-40px;bottom:-40px;width:40%;height:60%;display:flex;gap:4px;opacity:.07;transform:rotate(-8deg);pointer-events:none}.hero-keys i{flex:1;background:var(--paper);border-radius:0 0 8px 8px}.stat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.tile{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.tile .v{font:600 26px var(--serif)}.tile .k{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.feature{display:flex;flex-direction:column;gap:8px;text-decoration:none!important;color:var(--ink);transition:transform .15s,box-shadow .15s}.feature:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.feature .ic{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink);font-size:19px}.feature h3{margin:4px 0 0;font-size:18px}.feature p{margin:0;color:var(--ink-2);font-size:14px}.kb-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:4px;position:relative}.kb-nav{display:flex;justify-content:space-between;gap:12px;margin-top:8px}.kb-nav[hidden]{display:none}.kb-arr{flex:1;min-height:44px;font-size:24px;line-height:1;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);cursor:pointer}.kb-arr:disabled{opacity:.35;cursor:default}.kb{position:relative;height:150px;user-select:none;-webkit-user-select:none;touch-action:none;margin:0 auto}.kb .key{position:absolute;top:0;cursor:pointer;transition:background .06s}.kb .white{height:100%;background:linear-gradient(180deg,var(--white-key-2) 0,var(--white-key) 10%,var(--white-key) 92%,var(--white-key-2) 100%);border:1px solid var(--line-2);border-top:0;border-radius:0 0 7px 7px;z-index:1;box-shadow:inset 0 -4px #0000000d}.kb .black{height:62%;background:linear-gradient(180deg,var(--black-key-2),var(--black-key) 70%);border-radius:0 0 5px 5px;z-index:2;box-shadow:inset 0 -3px #ffffff14,0 2px 3px #0000004d}.kb .lab{position:absolute;bottom:8px;width:100%;text-align:center;font-size:10px;color:var(--muted);font-weight:600;pointer-events:none}.kb .hint{position:absolute;bottom:24px;width:100%;text-align:center;font-size:9px;color:var(--line-2);pointer-events:none;font-weight:600}.kb .black .hint{bottom:6px;color:#777}.kb .white.scale{background:linear-gradient(180deg,var(--white-key) 0,#c9dbff 55%,#b3cbff)}.kb .black.scale{background:linear-gradient(180deg,#4a74e0,#2348b0)}.kb .white.chord,.kb .white.target{background:linear-gradient(180deg,var(--white-key) 0,#ffd2ad 55%,#ffc08f);box-shadow:inset 0 -6px #e8711f}.kb .black.chord,.kb .black.target{background:linear-gradient(180deg,#f2924a,#d0611a)}.kb .white.root{box-shadow:inset 0 -6px #1e3a8a}.kb .black.root{background:linear-gradient(180deg,#2c4fb8,#1e3a8a);box-shadow:inset 0 -4px #e8711f}.kb .white.down{background:var(--line-2);box-shadow:inset 0 3px 6px #00000026}.kb .black.down{background:#57524a}.kb .white.target.down{background:var(--accent)}.kb .white.good{background:var(--ok-soft)!important;box-shadow:inset 0 -6px 0 var(--ok)!important}.kb .black.good{background:var(--ok)!important}.kb .white.bad{background:var(--bad-soft)!important;box-shadow:inset 0 -6px 0 var(--bad)!important}.kb .black.bad{background:var(--bad)!important}.kb .white.hint2{background:linear-gradient(180deg,var(--white-key),#fff3c4)}.kb-demo{margin:14px 0;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.kb-demo .kb-scroll{width:100%;max-width:640px}.kb-demo .kb{height:110px}.abc-snippet{margin:16px 0;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:12px}.abc-snippet .play-snip{margin-top:6px}.abcjs-container svg{max-width:100%}.abc-cur,.abc-cur path,.abc-cur *{fill:var(--accent)!important}.pa-ok,.pa-ok path{fill:var(--ok)!important}.pa-miss,.pa-miss path{fill:var(--bad)!important}.pa-err,.pa-err path{fill:var(--bad)!important}svg .abcjs-annotation,svg .abcjs-decoration{fill:var(--accent-2)}.pa{display:flex;flex-direction:column;gap:14px}.pa-controls{display:flex;flex-direction:column;gap:12px;padding:16px}.pa-row{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}.pa-row.checks{gap:8px 16px}.pa-row.checks .pa-go{margin-left:auto}.pa-field{display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--ink-2)}.pa-field.tempo output{font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink);min-width:110px}.pa-range{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-2)}.pa-check{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);cursor:pointer;font-size:13.5px}.pa-help{font-size:13px;color:var(--muted)}.pa-score-wrap{padding:10px 14px;overflow:hidden}.pa-stage{position:sticky;bottom:0;z-index:10;background:linear-gradient(180deg,transparent,var(--paper) 18px);padding-top:14px}.pa-kb{display:flex;flex-direction:column}.pa-hw{display:block;margin:0 auto;border-radius:10px 10px 0 0;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--paper-2) 70%,transparent))}.pa-hud{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 16px;border-radius:12px;background:var(--ink);color:var(--paper);position:sticky;top:66px;z-index:15;box-shadow:var(--shadow-lg)}.pa-points{display:flex;align-items:baseline;gap:8px}.pa-score{font:700 22px var(--serif);font-variant-numeric:tabular-nums}.pa-mult{font-weight:700;font-size:14px;padding:1px 8px;border-radius:6px}.pa-mult.m2{background:var(--accent-2)}.pa-mult.m3{background:var(--accent)}.pa-mult.m4{background:linear-gradient(90deg,var(--accent),var(--gold));animation:pulse .6s infinite alternate}@keyframes pulse{to{transform:scale(1.08)}}.pa-meter{width:90px;height:6px;background:#ffffff26;border-radius:3px;overflow:hidden}.pa-meter i{display:block;height:100%;background:var(--gold);transition:width .2s}.pa-acc,.pa-combo{font-size:13px;opacity:.85}.pa-fb{margin-left:auto;font:700 18px var(--serif);opacity:0;transform:translateY(4px);transition:all .15s}.pa-fb.show{opacity:1;transform:none}.pa-fb.great{color:var(--gold)}.pa-fb.good{color:#86efac}.pa-fb.ok{color:#93c5fd}.pa-fb.bad{color:#fca5a5}.pa-result{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:18px 22px;border-radius:16px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);animation:pop .3s}@keyframes pop{0%{transform:scale(.96);opacity:0}}.pa-result .res-main{flex:1;min-width:200px}.pa-result .res-title{font:600 20px var(--serif)}.pa-result .res-pts{font-weight:600}.grade{width:74px;height:74px;border-radius:18px;display:grid;place-items:center;font:700 44px var(--serif);color:#fff;flex:none}.grade.gS{background:linear-gradient(135deg,var(--gold),var(--accent));box-shadow:0 0 0 4px color-mix(in srgb,var(--gold) 30%,transparent)}.grade.gA{background:var(--ok)}.grade.gB{background:var(--accent-2)}.grade.gC{background:var(--muted)}.grade.gD{background:var(--bad)}.grade.small{width:30px;height:30px;font-size:17px;border-radius:8px}.stars{color:var(--gold);letter-spacing:2px}.stars.big{font-size:22px}.badge-new{display:inline-block;background:var(--gold);color:#fff;font:700 12px var(--sans);padding:2px 8px;border-radius:6px;vertical-align:middle;margin-left:6px}.heat{display:flex;gap:3px;flex-wrap:wrap;margin-top:8px}.heat span{min-width:26px;height:26px;padding:0 4px;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:600;color:#fff}.piece-card{display:flex;flex-direction:column;gap:10px;color:var(--ink);text-decoration:none!important;transition:transform .15s,box-shadow .15s}.piece-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.piece-card .comp{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.piece-card h3{margin:0;font-size:19px}.piece-card .meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:auto}.piece-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap}.plan{display:grid;gap:6px}.plan-row{display:grid;grid-template-columns:96px repeat(4,minmax(0,1fr));gap:6px;align-items:center}.piece-cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;margin:16px 0;align-items:start}@media(max-width:980px){.piece-cols{grid-template-columns:1fr}}.plan-row .lab{font-size:13px;font-weight:600;color:var(--ink-2)}.plan-head{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;text-align:center}.step{border:1px solid var(--line);background:var(--paper-2);border-radius:9px;padding:6px;font-size:12px;cursor:pointer;text-align:center;color:var(--ink-2);font-weight:600;min-height:34px}.step:hover{border-color:var(--accent)}.step.done{background:var(--ok-soft);color:var(--ok);border-color:transparent}.step.next{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);color:var(--accent-ink)}@media(max-width:640px){.plan-row{grid-template-columns:58px repeat(4,minmax(0,1fr));gap:4px}.step{font-size:10px;padding:4px 2px;overflow-wrap:anywhere}.plan-head{font-size:9px;letter-spacing:0;overflow-wrap:anywhere}}.prose{max-width:74ch;font-size:16px;line-height:1.7}.prose h3{margin-top:1.6em}.prose h4{margin-top:1.4em;font-family:var(--sans);font-weight:700;font-size:15px}.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1em}.prose li{margin:.25em 0}.prose blockquote{margin:1em 0;padding:4px 18px;border-left:3px solid var(--accent);color:var(--ink-2);font-style:italic}.callout{margin:18px 0;padding:14px 18px;border-radius:12px;background:var(--accent-2-soft);border-left:4px solid var(--accent-2);font-size:15px}.callout.tip{background:var(--ok-soft);border-color:var(--ok)}.callout.warn{background:var(--accent-soft);border-color:var(--accent)}.callout>:last-child{margin-bottom:0}.tbl{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px}.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top}.tbl th{font-weight:600;background:var(--paper-2)}.table-wrap{overflow-x:auto}.course-layout{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}.course-toc{position:sticky;top:78px;max-height:calc(100vh - 100px);overflow:auto;font-size:13.5px}.course-toc .ch{font-weight:700;margin:14px 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.course-toc a{display:flex;gap:6px;padding:4px 8px;border-radius:7px;color:var(--ink-2)}.course-toc a.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.course-toc a .ck{color:var(--ok);width:14px;flex:none}.toc-toggle{display:none}@media(max-width:900px){.course-layout{grid-template-columns:1fr}.course-toc{position:static;max-height:none}.course-toc{padding:0}.toc-toggle{display:flex;width:100%;align-items:center;gap:8px;padding:12px 14px;border:0;background:none;font:600 14px var(--sans);color:var(--ink);cursor:pointer;text-align:left}.toc-toggle .toc-chev{margin-left:auto;transition:transform .15s}.course-toc.open .toc-chev{transform:rotate(180deg)}.course-toc .toc-list{display:none;padding:0 12px 12px}.course-toc.open .toc-list{display:block}}.lesson-list{display:flex;flex-direction:column}.lesson-item{display:flex;align-items:center;gap:12px;padding:11px 4px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none!important}.lesson-item:hover{background:var(--paper-2)}.lesson-item .ck{width:22px;height:22px;border-radius:50%;border:2px solid var(--line-2);display:grid;place-items:center;font-size:12px;flex:none}.lesson-item.done .ck{background:var(--ok);border-color:var(--ok);color:#fff}.lesson-item .tt{flex:1;font-weight:500}.quiz{margin-top:28px}.quiz-q{margin:16px 0}.quiz-q .q{font-weight:600;margin-bottom:8px}.choices{display:flex;flex-direction:column;gap:6px}.choice{text-align:left;border:1px solid var(--line-2);background:var(--card);border-radius:10px;padding:9px 14px;cursor:pointer;font-size:14.5px}.choice:hover{border-color:var(--ink-2)}.choice.right{background:var(--ok-soft);border-color:var(--ok)}.choice.wrong{background:var(--bad-soft);border-color:var(--bad)}.explain{margin-top:8px;font-size:14px;color:var(--ink-2);padding:8px 12px;background:var(--paper-2);border-radius:8px}.drill{display:grid;grid-template-columns:1fr 280px;gap:20px;align-items:start}@media(max-width:900px){.drill{grid-template-columns:1fr}}.drill-stage{text-align:center;padding:26px}.drill-stage .staff{max-width:340px;margin:0 auto}.big-q{font:600 32px var(--serif);margin:10px 0 18px}.answers{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px}.answers .btn{min-width:64px}.answers .btn.right{background:var(--ok);color:#fff;border-color:var(--ok)}.answers .btn.wrong{background:var(--bad);color:#fff;border-color:var(--bad)}.feedback{min-height:28px;font-weight:600;margin-top:12px}.feedback.ok{color:var(--ok)}.feedback.bad{color:var(--bad)}.score-line{display:flex;gap:18px;justify-content:center;font-size:14px;color:var(--ink-2);flex-wrap:wrap}.score-line b{font-size:18px;color:var(--ink);font-family:var(--serif)}.timer-ring{font:700 30px var(--serif);color:var(--accent)}.level-list{display:flex;flex-direction:column;gap:6px}.level-btn{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:9px 12px;cursor:pointer;font-size:13.5px}.level-btn.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.level-btn .pct{font-size:12px;color:var(--muted)}.flash-ok{animation:flashok .5s}.flash-bad{animation:flashbad .5s}@keyframes flashok{30%{background:var(--ok-soft)}}@keyframes flashbad{30%{background:var(--bad-soft)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.chord-big{font:700 54px var(--serif);line-height:1}.chord-big small{font-size:22px;color:var(--muted);font-weight:400;margin-left:8px}.prog-strip{display:flex;gap:8px;flex-wrap:wrap}.prog-strip .pc{flex:1;min-width:80px;padding:12px;border-radius:12px;background:var(--paper-2);border:1px solid var(--line);text-align:center;transition:all .15s}.prog-strip .pc b{display:block;font:600 20px var(--serif)}.prog-strip .pc span{font-size:12px;color:var(--muted)}.prog-strip .pc.on{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-2px)}.prog-strip .pc.on span{color:var(--accent)}.dia-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.dia-grid button{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:10px 4px;cursor:pointer}.dia-grid button b{display:block;font:600 16px var(--serif)}.dia-grid button span{font-size:12px;color:var(--muted)}.dia-grid button:hover,.dia-grid button.on{border-color:var(--accent);background:var(--accent-soft)}@media(max-width:640px){.dia-grid{grid-template-columns:repeat(4,1fr)}}.roll-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--card)}.roll{display:grid;user-select:none;-webkit-user-select:none}.roll .rl{position:sticky;left:0;z-index:2;background:var(--paper-2);font-size:11px;padding:0 8px;display:flex;align-items:center;border-bottom:1px solid var(--line);font-weight:600;color:var(--ink-2);white-space:nowrap}.roll .rl.tonic{color:var(--accent)}.roll .cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);height:24px;cursor:pointer}.roll .cell.beat{border-right-color:var(--line-2)}.roll .cell.bar{border-right:2px solid var(--line-2)}.roll .cell.chordtone{background:color-mix(in srgb,var(--accent-2-soft) 55%,transparent)}.roll .cell.on{background:var(--accent);border-radius:4px}.roll .cell.cont{background:var(--accent);opacity:.7}.roll .cell.play{box-shadow:inset 0 0 0 2px var(--ok)}.roll .chords{position:sticky;top:0}.roll .chordsel{padding:3px;background:var(--paper-2);border-bottom:1px solid var(--line)}.roll .chordsel select{width:100%;padding:3px 4px;font-size:12px}textarea.abc-editor{width:100%;min-height:260px;font:13px/1.5 ui-monospace,SF Mono,Menlo,monospace}.widget{margin:18px 0}.cof svg{width:100%;max-width:420px;display:block;margin:0 auto}.cof text{font-family:var(--serif);fill:var(--ink)}.cof .seg-maj{fill:var(--card);stroke:var(--line-2);cursor:pointer}.cof .seg-min{fill:var(--paper-2);stroke:var(--line-2);cursor:pointer}.cof .seg-maj:hover,.cof .seg-min:hover,.cof .on{fill:var(--accent-soft)}.metro-dots{display:flex;gap:8px}.metro-dots i{width:16px;height:16px;border-radius:50%;background:var(--line);transition:background .05s}.metro-dots i.on{background:var(--accent)}.metro-dots i.mute{background:var(--paper-2);border:1px dashed var(--line-2)}.bpm{font:700 40px var(--serif);font-variant-numeric:tabular-nums}.session-plan{display:flex;flex-direction:column;gap:10px}.sblock{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line)}.sblock .n{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--paper-2);font:600 18px var(--serif)}.sblock.cur{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sblock.cur .n{background:var(--accent);color:#fff}.sblock.done{opacity:.6}.sblock.done .n{background:var(--ok);color:#fff}.sblock .tm{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink-2)}.dur-pick{display:flex;gap:8px;flex-wrap:wrap}.dur-pick button{border:1px solid var(--line-2);background:var(--card);border-radius:14px;padding:14px 18px;cursor:pointer;min-width:92px}.dur-pick button b{display:block;font:600 24px var(--serif)}.dur-pick button.on{border-color:var(--accent);background:var(--accent-soft)}.session-timer{font:700 48px var(--serif);font-variant-numeric:tabular-nums}.bars{display:flex;align-items:flex-end;gap:4px;height:120px}.bars div{flex:1;background:var(--accent);border-radius:4px 4px 0 0;min-height:2px;position:relative}.bars div.zero{background:var(--line)}.bars-x{display:flex;gap:4px;font-size:10px;color:var(--muted)}.bars-x span{flex:1;text-align:center}.badges{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.badge{text-align:center;padding:14px 10px;border-radius:12px;border:1px solid var(--line);background:var(--card)}.badge .bi{font-size:28px;filter:grayscale(1);opacity:.35}.badge.got .bi{filter:none;opacity:1}.badge .bn{font-weight:600;font-size:13px;margin-top:4px}.badge .bd{font-size:11px;color:var(--muted)}.level-card{position:relative;overflow:hidden}.level-card .num{position:absolute;right:16px;top:8px;font:700 64px var(--serif);color:var(--paper-2);line-height:1;z-index:0}.level-card>*{position:relative;z-index:1}.unit{border-top:1px solid var(--line);padding:16px 0}.unit:first-of-type{border-top:0}.task{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;color:var(--ink);text-decoration:none!important}.task:hover{background:var(--paper-2)}.task .ck{width:20px;height:20px;border-radius:6px;border:2px solid var(--line-2);display:grid;place-items:center;font-size:11px;flex:none}.task.done .ck{background:var(--ok);border-color:var(--ok);color:#fff}.task .ty{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;width:76px;flex:none}.task .tt{flex:1}.hero-grid{position:relative;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}@media(max-width:760px){.hero-grid{grid-template-columns:1fr}.hero{padding:26px 20px}}.hero .chip.dur{background:#ffffff14;color:var(--paper);border-color:#ffffff2e;text-decoration:none}.hero .chip.dur:hover{background:#a32a4f;border-color:#a32a4f}.global-score{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--paper);text-decoration:none!important}.ring{--v: 0;position:relative;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;align-content:center;background:conic-gradient(var(--accent) calc(var(--v) * 1%),rgba(255,255,255,.12) 0)}.ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--ink)}.ring b,.ring small{position:relative;line-height:1}.ring b{font:700 48px var(--serif)}.ring small{font-size:13px;opacity:.6}.gs-label{font-weight:600;letter-spacing:.02em}.gs-sub{font-size:12px;opacity:.65}.skills-wrap{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:center}@media(max-width:760px){.skills-wrap{grid-template-columns:1fr}}.radar{width:100%;max-width:340px;display:block;margin:0 auto}.radar a text{cursor:pointer}.skill-list{display:flex;flex-direction:column;gap:4px}.skill-row{display:grid;grid-template-columns:26px 110px 1fr 36px;gap:10px;align-items:center;padding:7px 8px;border-radius:9px;color:var(--ink);text-decoration:none!important}.skill-row:hover{background:var(--paper-2)}.skill-row .si{color:var(--accent);text-align:center}.skill-row b{text-align:right;font-family:var(--serif)}.skill-badge{display:inline-flex;align-items:center;gap:8px;color:var(--ink-2);font-size:13px;font-weight:600;text-decoration:none!important;padding:4px 10px 4px 4px;border:1px solid var(--line);border-radius:999px;background:var(--card)}.sb-ring{--v: 0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--v) * 1%),var(--line) 0);position:relative}.sb-ring:before{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--card)}.sb-ring b{position:relative;font-size:12px;font-family:var(--serif)}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:8px}.page-head h1{margin-bottom:4px}.piece-card{position:relative}.fav{position:absolute;top:12px;right:12px;z-index:2;border:0;background:none;font-size:22px;line-height:1;cursor:pointer;color:var(--muted);padding:4px}.fav:hover,.fav.on{color:var(--gold)}.card-play{margin-left:auto;flex:none;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 0 2px}.card-play:hover{border-color:var(--accent);color:var(--accent)}.card-play.on{background:var(--accent);border-color:var(--accent);color:#fff;padding:0}.fav.inline{position:static;font-size:34px;vertical-align:middle;color:var(--gold);padding:2px 8px;border-radius:999px;margin-left:4px}.fav.inline:hover{background:var(--paper-2)}.chord-svg{color:var(--ink)}details>summary{cursor:pointer}.session-bar{position:fixed;left:50%;transform:translate(-50%);bottom:16px;z-index:60;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--ink);color:var(--paper);padding:8px 10px 8px 16px;border-radius:14px;box-shadow:var(--shadow-lg);max-width:calc(100vw - 32px);font-size:14px}.session-bar a.sb-t{color:var(--gold);font-weight:600}.session-bar .sb-l{font-weight:500;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-bar .sb-time{font:700 18px var(--serif);font-variant-numeric:tabular-nums}.session-bar .sb-time.over{color:var(--gold);animation:pulse .8s infinite alternate}.session-bar .btn{border-color:#fff3}.session-bar .btn:not(.primary){background:transparent;color:var(--paper)}.session-bar .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}body:has(.session-bar) .pa-stage{bottom:64px}.fretboard{overflow-x:auto}.fb-svg{min-width:640px;width:100%;display:block}.fb-wood{fill:color-mix(in srgb,var(--gold) 18%,var(--card));stroke:var(--line-2)}.fb-fret{stroke:var(--line-2);stroke-width:2}.fb-nut{fill:var(--ink-2)}.fb-dot{fill:var(--line-2)}.fb-string{stroke:var(--ink-2);opacity:.75}.fb-num{font-size:10px;fill:var(--muted)}.fb-cell{cursor:pointer}.fb-mark{fill:transparent}.fb-cell:hover .fb-mark{fill:color-mix(in srgb,var(--accent) 25%,transparent)}.fb-cell.target .fb-mark{fill:var(--accent)}.fb-cell.good .fb-mark{fill:var(--ok)}.fb-cell.bad .fb-mark{fill:var(--bad)}.fb-cell.down .fb-mark{fill:var(--accent-2)}.fb-cell.scale .fb-mark{fill:var(--accent-2-soft)}.fb-lab{font-size:9px;font-weight:700;fill:#fff;pointer-events:none}.pa.guitar .pa-check:has(input[data-k=highway]){display:none}.pa.guitar .pa-stage{position:static}.tuner-gauge{position:relative;height:34px;margin:18px auto;max-width:420px;border-radius:17px;background:linear-gradient(90deg,var(--bad-soft),var(--ok-soft) 45%,var(--ok-soft) 55%,var(--bad-soft));border:1px solid var(--line)}.tuner-gauge:after{content:"";position:absolute;left:50%;top:4px;bottom:4px;width:2px;background:var(--ok)}.tuner-gauge i{position:absolute;top:-6px;bottom:-6px;width:4px;margin-left:-2px;left:50%;background:var(--ink);border-radius:2px;transition:left .12s}.pa-hidden,.pa-hidden *{opacity:0!important;transition:opacity .3s}.plan-mem{display:flex;gap:6px;align-items:center;margin-top:12px;flex-wrap:wrap}.plan-mem .lab{font-size:13px;font-weight:600;color:var(--ink-2);width:96px}.plan-mem .step{flex:1;min-width:90px}.mem-grid{display:grid;gap:6px;align-items:center;margin-top:10px}.mem-grid .lab{font-size:13px;font-weight:600;color:var(--ink-2)}@media(max-width:640px){.mem-grid{font-size:11px}.mem-grid .step{font-size:10px;padding:4px 2px}}.level-btn .pct{white-space:nowrap}.drill-stage .staff svg{max-height:190px}@media(max-width:700px){.pa-stage{position:static}.kb{height:120px}.pa-hud{top:62px;gap:10px;padding:8px 12px}.pa-score{font-size:18px}}.pa-out,.pa-out path{opacity:.28}.pa-sel,.pa-sel path{fill:var(--accent-2)!important}.pa-sheet .pa-ok,.pa-sheet .pa-ok path{fill:var(--ok)!important}.pa-sheet .pa-miss,.pa-sheet .pa-miss path,.pa-sheet .pa-err,.pa-sheet .pa-err path{fill:var(--bad)!important}.pa-sheet{cursor:pointer}.pa-sheet{position:relative}.pa-sheet>div{position:relative;overflow:visible!important;contain:paint}.pa-sheet svg{overflow:visible}.pa-fx{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:5}.pa-sheet .abcjs-annotation{fill:var(--accent)!important;font-weight:700}.pa-score-wrap{max-height:calc(100vh - 360px);min-height:200px;overflow-y:auto;overscroll-behavior:contain}.pa-stage{position:static}.pdf-view iframe{width:100%;height:80vh;border:1px solid var(--line);border-radius:12px;background:#fff}.practice-panel{margin:16px 0;display:flex;flex-direction:column;gap:12px}.pp-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.pp-label{font:600 18px var(--sans)}.minimap{display:flex;gap:4px;align-items:flex-start}.mm-sec{min-width:0}.mm-bars{display:flex;gap:1px;height:26px;border-radius:6px;overflow:hidden;cursor:pointer}.mm-bars span{flex:1;min-width:2px;transition:transform .1s,filter .1s}.mm-sec:hover .mm-bars span{filter:brightness(1.08)}.mm-bars span.sel{box-shadow:inset 0 -4px 0 var(--accent),inset 0 4px 0 var(--accent)}.mm-lab{font-size:10px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden}.pp-legend{margin-top:-4px}.pp-more>summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--ink-2)}.pp-more[open]>summary{margin-bottom:10px}.mem-card{margin:0 0 16px}.sing-live{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-top:12px}.sing-live b{font:400 44px var(--serif)}.drill>*,.grid>*,.skills-wrap>*,.piece-cols>*{min-width:0}.answers{max-width:100%}.pa-barhl{fill:color-mix(in srgb,var(--accent) 13%,transparent);stroke:color-mix(in srgb,var(--accent) 45%,transparent);stroke-width:1.5;transition:x .12s ease,width .12s ease,y .2s ease;pointer-events:none}.pa-barhover{fill:color-mix(in srgb,var(--accent-2) 10%,transparent);stroke:color-mix(in srgb,var(--accent-2) 40%,transparent);stroke-dasharray:4 3;pointer-events:none}.pa-selbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 10px 8px 16px;border-radius:12px;background:var(--accent-2-soft);border:1px solid color-mix(in srgb,var(--accent-2) 35%,transparent)}.pa-seltext{font-weight:700;color:var(--ink)}.pa-selbar .pa-selclear{margin-left:auto}@media(max-width:600px){.piece-head.compact .pp-help .chip{padding:4px 8px}.piece-head.compact .chip{font-size:11px}}.pa-more{display:flex;flex-direction:column;gap:12px}.pa-more[hidden]{display:none}.pa-transport .pa-setb.on{border-color:var(--accent)}.pa-row .pa-go{margin-left:auto}@media(pointer:coarse){.btn,.seg button,select{min-height:40px}.pa-check input{width:20px;height:20px}}.pa-transport{display:inline-flex;gap:6px;margin-left:auto}.pa-transport .pa-rew{min-width:44px;font-size:16px}.pa-transport .pa-go{min-width:140px}.pa-row .pa-go{margin-left:0}.pa.no-kb .pa-stage{display:none}.grid>.card+.card{margin-top:0}#lvls{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.level-card{display:flex;flex-direction:column;justify-content:flex-start;height:100%}.level-card .progress{margin-top:auto!important}.combo{position:relative;display:inline-block;min-width:200px}.combo-btn{width:100%;text-align:left;background:var(--card);border:1px solid var(--line-2);border-radius:9px;padding:7px 30px 7px 10px;font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}.combo-btn:after{content:"▾";position:absolute;right:10px;color:var(--muted)}.combo-panel{position:absolute;z-index:40;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:min(360px,90vw);background:var(--card);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px}.combo-input{width:100%;margin-bottom:6px}.combo-list{max-height:280px;overflow-y:auto}.combo-opt{padding:7px 10px;border-radius:8px;cursor:pointer;font-size:14px}.combo-opt.active{background:var(--paper-2)}.combo-opt.sel{font-weight:700;color:var(--accent-ink)}.combo-empty{padding:8px 10px;color:var(--muted);font-size:13px}body.pa-focus .welcome-ov{z-index:1000}.pa-transport .pa-fs,.pa-transport .pa-big{min-width:44px;font-size:16px}@media(max-width:899px),(max-height:499px),(pointer:coarse){.pa-big{display:none!important}}.pa-big[hidden]{display:none}body.pa-focus{overflow:hidden}.pa.focus{position:fixed;inset:0;z-index:900;background:var(--paper);padding:12px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left));overflow:hidden;gap:10px}.pa.focus>*{flex:none}.pa.focus>.pa-score-wrap,.pa.focus .pa-score-wrap{flex:1 1 auto;min-height:0;max-height:none}.pa.focus .pa-help,.pa.focus .pa-selhelp{display:none}.pa.focus .pa-controls{padding-top:10px;padding-bottom:10px}.pa.focus .pa-result:not([hidden]){position:absolute;left:16px;right:16px;bottom:16px;margin:0 auto;max-width:760px;max-height:70%;overflow:auto;z-index:30}body.has-sbar .main{padding-bottom:96px}.session-bar .sb-icon{background:transparent;border:0;color:var(--paper);opacity:.7;font-size:16px;width:28px;height:28px;border-radius:8px;cursor:pointer}.session-bar .sb-icon:hover{opacity:1;background:#ffffff1f}.session-bar.mini{left:auto;right:16px;transform:none;padding:0;background:transparent;box-shadow:none}.session-bar .sb-pill{background:var(--ink);color:var(--gold);border:0;border-radius:999px;padding:8px 14px;font:600 14px var(--sans, inherit);box-shadow:var(--shadow-lg);cursor:pointer}.session-bar .sb-pill .sb-time{font-size:14px;color:var(--paper)}body.pa-focus .session-bar{display:none}.inst-head{font-size:20px;margin:28px 0 4px}.inst-tabs{margin:4px 0 18px}.pp-tuning{margin-left:4px}@media(max-width:700px){.pa-fs-l{display:none}}.pa-transport .pa-kbt{min-width:44px;font-size:16px;opacity:.45}.pa-transport .pa-kbt.on{opacity:1;border-color:var(--accent)}@media(pointer:coarse){.pa-keys{display:none}}.pa.focus .pa-keys{display:none}.prose pre.tab-ascii{font:13px/1.35 ui-monospace,SF Mono,Menlo,monospace;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 14px;overflow-x:auto;color:var(--ink);white-space:pre}.print-sheet{position:fixed;left:-10000px;top:0;width:700px;background:#fff;color:#000}.print-sheet header{text-align:center;margin-bottom:10px}.print-sheet h1{font:600 24px/1.2 var(--serif);color:#000;margin:0 0 4px}.print-sheet .print-comp{font:italic 14px var(--serif);text-align:right}.print-sheet footer{margin-top:12px;font:10px var(--sans);color:#555;text-align:center}.pp-print{margin:2px 0 10px}.pa-transport .pa-print{min-width:44px;font-size:16px}@media print{@page{size:A4;margin:14mm 12mm}body.printing{background:#fff!important}body.printing>*:not(.print-sheet){display:none!important}body.printing .print-sheet{position:static;width:auto}body.printing .print-sheet svg{max-width:100%;height:auto}body.printing .print-sheet .abcjs-staff-wrapper,body.printing .print-sheet svg{break-inside:avoid}}.pa-transport{flex-wrap:wrap;justify-content:flex-end;max-width:100%}@media(max-width:480px){.pa-transport{width:100%}.pa-transport .pa-go{min-width:0;flex:1}.pa-transport .btn:not(.pa-go){min-width:40px;padding-left:8px;padding-right:8px}}.pa-sheet .abcjs-annotation.pa-nname{fill:var(--muted)!important;font-weight:500}.j-day{margin-top:12px}.j-day .lesson-item .muted{margin-left:auto;text-align:right}.chip.mic-adv{cursor:help}.chip.mic-adv.mic{background:color-mix(in srgb,var(--ok) 14%,transparent)}.chip.mic-adv.midi{background:color-mix(in srgb,var(--accent) 14%,transparent)}.help summary{cursor:pointer}.help .help-item{border-top:1px solid var(--line);padding:8px 0}.help .help-item>summary{list-style:revert}.help ol{padding-left:20px;margin:6px 0}.welcome-ov{position:fixed;inset:0;z-index:200;background:#14120e8c;display:flex;align-items:center;justify-content:center;padding:16px}.welcome{width:min(640px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:20px 22px;box-shadow:var(--shadow-lg)}.welcome h2{margin:6px 0}.welcome h3{font-size:15px;margin:16px 0 8px}.welcome .wl-pick{flex-wrap:wrap}.welcome .wl-list{padding-left:18px;margin:8px 0 14px}.welcome .wl-list li{margin:6px 0}.welcome .wl-nav{margin-top:18px}.welcome .wl-starts{display:flex;flex-direction:column;gap:10px;margin-top:12px}.welcome .wl-starts .btn{text-align:center}.pa-sheet .abcjs-annotation.pa-ped{fill:var(--ink)!important;font-family:var(--serif);font-style:italic;font-weight:500;font-size:14px}.pp-films ul{margin:6px 0 0;padding-left:20px}.pp-films li{margin:3px 0}.ph-next{background:var(--paper-2);border-radius:12px;padding:10px 12px;margin:6px 0 4px}.pa-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:4px;border-radius:50%;border:1px solid var(--line-2, var(--line));color:var(--muted);font:600 11px/1 var(--sans);cursor:help;vertical-align:middle;flex:none;user-select:none}.pa-tip:hover,.pa-tip:focus{color:var(--ink);border-color:var(--ink);outline:none}.pa-tip:hover:after,.pa-tip:focus:after{content:attr(data-tip);position:absolute;z-index:60;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:max-content;max-width:min(280px,80vw);padding:8px 10px;border-radius:10px;background:var(--ink);color:var(--paper);font:400 12.5px/1.45 var(--sans);text-align:left;white-space:normal;box-shadow:var(--shadow-lg);pointer-events:none}@media(max-width:899px),(max-height:499px){.pa.focus{padding:4px 4px 0;gap:0}.pa.focus .pa-score-wrap{padding:4px 2px 72px;border:0;border-radius:0;box-shadow:none}.pa.focus .pa-stage,.pa.focus .pa-selbar,.pa.focus .pa-help,.pa.focus .pa-selhelp,.pa.focus .pa-keys,.pa.focus .pa-tip{display:none!important}.pa.focus .pa-controls{position:fixed;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:5;padding:0;margin:0;background:none;border:0;box-shadow:none}.pa.focus .pa-controls>:not(.pa-row:first-child){display:none!important}.pa.focus .pa-controls .pa-row:first-child>:not(.pa-transport){display:none!important}.pa.focus .pa-transport{width:auto;margin:0;padding:6px;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg)}.pa.focus .pa-transport .pa-print,.pa.focus .pa-transport .pa-kbt,.pa.focus .pa-transport .pa-setb{display:none}.pa.focus .pa-transport .pa-go{min-width:120px;flex:none}.pa.focus .pa-hud{position:fixed;top:auto;right:auto;left:10px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:5;width:auto;max-width:calc(100vw - 230px);flex-wrap:nowrap;gap:6px;padding:6px 10px;border-radius:14px}.pa.focus .pa-hud .pa-meter,.pa.focus .pa-hud .pa-acc,.pa.focus .pa-hud .pa-fb{display:none}.pa.focus .pa-score{font-size:15px}.pa.focus .pa-mult{font-size:11px;padding:0 5px}.pa.focus .pa-combo{font-size:11px;white-space:nowrap}}@media(max-width:899px),(max-height:499px){.pa.focus .pa-transport{padding:4px;gap:4px;opacity:.92}.pa.focus .pa-transport .btn{padding:6px 10px;min-height:0;font-size:.9rem}.pa.focus .pa-transport .pa-go{min-width:96px}}.noel{font-size:.9em;margin-left:.15em}.pa{touch-action:manipulation}body.pa-focus{overflow-x:hidden}.pa.focus,.pa.focus .pa-score-wrap{touch-action:pan-y;overflow-x:hidden}.connect-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;padding:10px 14px;margin:0 0 14px;border-left:3px solid var(--accent)}.connect-banner[hidden]{display:none}.connect-banner .cn-acts{gap:6px;flex-wrap:wrap}.welcome-ov:has(.connect-ask){z-index:1000}.welcome-ov:has(.connect-help){z-index:1000}.welcome .ch-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;position:sticky;top:-20px;background:var(--card);padding-top:4px;z-index:1}.connect-help .ch-acts{gap:8px;flex-wrap:wrap;margin:6px 0 4px}.connect-help .ch-state{margin:6px 0 10px}.connect-help .ch-state.ok{color:var(--ok)}@media(max-width:560px){.welcome-ov{padding:0;align-items:stretch}.welcome{width:100%;max-height:100dvh;border-radius:0;padding:14px 16px calc(16px + env(safe-area-inset-bottom))}.welcome .ch-head{top:-14px}.welcome .ch-head h2{font-size:1.25rem}.connect-help .ch-acts .btn{flex:1 1 100%}}@media(max-width:420px){.pa-transport .pa-print{display:none}.pa-transport .pa-go{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:8px;padding-right:8px}.pa-field{flex-wrap:wrap;max-width:100%}.pa-field select{min-width:0;max-width:100%;flex:1 1 140px}.pa-field.tempo input[type=range]{flex:1 1 120px;min-width:0}.pa-field.tempo output{min-width:0}.field{max-width:100%;min-width:0}.field select{max-width:100%}}.pa-shake,.pa-shake-soft{transform-box:fill-box;transform-origin:center}.pa-shake-soft,.pa-shake-soft path{fill:var(--accent)!important}@keyframes pa-shake{0%,to{transform:translate(0)}15%{transform:translate(-3px)}30%{transform:translate(3px)}45%{transform:translate(-3px)}60%{transform:translate(2px)}75%{transform:translate(-1px)}}@keyframes pa-shake-soft{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}@media(prefers-reduced-motion:reduce){.pa-shake,.pa-shake-soft{animation:none}}.pa-glow{transform-box:fill-box;transform-origin:center;animation:pa-glow .75s ease-out}@keyframes pa-glow{0%{filter:none;transform:scale(1)}30%{filter:drop-shadow(0 0 3px var(--ok)) drop-shadow(0 0 6px var(--ok));transform:scale(1.1)}to{filter:none;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.pa-glow{animation:none}}.pa-playhead{fill:var(--accent-2);opacity:.55;pointer-events:none}.pa-ph{position:absolute;left:0;top:0;background:var(--accent-2);opacity:.55;border-radius:1.5px;pointer-events:none;will-change:transform}.pa-ph.beside{opacity:.4}.pa[data-mode=tempo] .abc-cur,.pa[data-mode=tempo] .abc-cur path,.pa[data-mode=tempo] .abc-cur *{fill:var(--cur)!important}.pa[data-mode=tempo] .pa-miss,.pa[data-mode=tempo] .pa-miss path{fill:var(--bad)!important}.pa[data-mode=tempo] .pa-ok,.pa[data-mode=tempo] .pa-ok path{fill:var(--ok)!important}@media(max-width:480px){.pa .seg[data-k=mode]{display:grid;grid-template-columns:1fr 1fr;width:100%}.pa .seg[data-k=mode] button{text-align:center}}.lesson-item.locked{opacity:.55}.lesson-lock{border-left:3px solid var(--gold);margin-bottom:16px}.lesson-blur{filter:blur(3px);pointer-events:none;user-select:none;max-height:220px;overflow:hidden}.seo-home{max-width:780px}.seo-home li{margin:6px 0}.account-card{max-width:460px}.account-form{display:flex;flex-direction:column;gap:12px;margin:8px 0}.account-form input[type=email],.account-form input[type=password],.account-form input[type=text]{width:100%}.pw-wrap{position:relative;display:block}.pw-wrap input{padding-right:40px}.pw-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:32px;height:32px;padding:0;border:0;border-radius:7px;background:none;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pw-eye:hover{color:var(--ink);background:var(--line)}.pw-eye svg{width:18px;height:18px;display:block}.account-card .or{text-align:center;margin:10px 0}.google-btn{width:100%;justify-content:center}.account-invite{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;margin-bottom:14px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-left:4px solid var(--accent)}.account-invite>span:first-child{font-weight:600;color:var(--ink)}.btn.danger{background:var(--card);color:var(--bad);border-color:color-mix(in srgb,var(--bad) 50%,var(--line))}.btn.danger:hover{background:var(--bad);border-color:var(--bad);color:#fff}.why-grid .card p{margin:0}.ad-kpis{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.ad-kpi{display:flex;flex-direction:column;gap:2px}.ad-kpi b{font:700 26px var(--serif)}.ad-bars{display:flex;align-items:flex-end;gap:3px;height:140px;overflow-x:auto;padding-bottom:18px}.ad-bar{position:relative;flex:1 0 14px;height:100%;display:flex;align-items:flex-end}.ad-bar i{display:block;width:100%;background:var(--accent-2);border-radius:3px 3px 0 0;min-height:2px}.ad-bar span{position:absolute;bottom:-16px;left:50%;transform:translate(-50%);font-size:9px;color:var(--muted);white-space:nowrap}.eq-ways .eq-way{position:relative}.eq-way.best{border:2px solid var(--accent)}.eq-way.low{opacity:.85}.eq-medal{font-size:28px;line-height:1}.eq-tbl td{vertical-align:top}.eq-tbl td:nth-child(2),.eq-tbl td:nth-child(3),.eq-tbl td:nth-child(4){text-align:center;white-space:nowrap}.eq-test{margin-top:24px;border-left:3px solid var(--ok)}.eq-note{margin-top:14px;font:600 22px var(--serif);min-height:32px}.eq-note.pulse{animation:pa-glow .6s ease-out}.install-box p{margin:6px 0}.gl-list{display:flex;flex-direction:column;gap:8px}.gl-item h3{margin:0}.gl-item p{margin:6px 0 0}.gl-item.on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}.pa-sheet .gl-term{cursor:help;text-decoration:underline dotted}.pa-sheet .gl-term:hover{fill:var(--accent-2)!important}.gl-pop{position:fixed;z-index:1200;max-width:320px;padding:12px 14px;box-shadow:var(--shadow-lg);font-size:14px}.gl-pop p{margin:6px 0}.sh-sheet{background:#fff;color:#111;padding:24px;border-radius:12px;margin-top:12px;max-width:900px}.sh-sheet h1{color:#111;margin-top:0}.sh-sheet h3{color:#111;margin:14px 0 6px}.sh-foot{color:#666;font-size:11px;margin-top:18px}.sh-chords{display:flex;flex-wrap:wrap;gap:4px 6px}.sh-chord text{font-family:system-ui,sans-serif;text-anchor:middle}.sh-cname{font-size:13px;font-weight:700;fill:#111}.sh-l{stroke:#333;stroke-width:1}.sh-nut,.sh-dot{fill:#111}.sh-fing{fill:#fff;font-size:8px;font-weight:700}.sh-open{fill:none;stroke:#111;stroke-width:1.2}.sh-mark{font-size:11px;fill:#111}.sh-base{font-size:9px;fill:#111;text-anchor:end!important}.sh-fret{border-collapse:collapse;font-size:12px;color:#111}.sh-fret th,.sh-fret td{border:1px solid #999;padding:4px 6px;text-align:center}.sh-fret td.acc{background:#eee;font-size:10px}.sh-fret td.acc span{color:#555}.sh-scales{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px 18px;color:#111}.sh-scale b{display:block;margin-bottom:4px}.sh-w{fill:#fff;stroke:#333;stroke-width:1}.sh-w.on{fill:#ddd}.sh-b{fill:#222}.sh-bdot{fill:#fff}.sh-kn{font-size:8px;text-anchor:middle;fill:#111;font-family:system-ui,sans-serif}.sh-cof{display:block;margin:0 auto;max-width:100%;height:auto}.sh-cof text{text-anchor:middle;font-family:system-ui,sans-serif;fill:#111}.sh-ring{fill:none;stroke:#bbb}.sh-maj{font-size:17px;font-weight:700}.sh-acc{font-size:9px;fill:#555!important}.sh-min{font-size:12px}@media print{body.printing-sheet .sidebar,body.printing-sheet .topbar,body.printing-sheet .no-print,body.printing-sheet .session-bar,body.printing-sheet #toast{display:none!important}body.printing-sheet .main,body.printing-sheet .view{margin:0!important;padding:0!important}body.printing-sheet .sh-sheet{box-shadow:none;padding:0;max-width:none}@page{size:A4;margin:12mm}}.pt-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.pt-steps li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}.pt-steps li.done{opacity:.7}.pt-steps li.done a{text-decoration:line-through}.pt-steps li.next{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.pt-steps .ck{width:20px;text-align:center;color:var(--ok);font-weight:700}.hi-tools{gap:10px 16px;margin:10px 0 14px;align-items:center}.hi-zoom{gap:4px;margin-left:auto}.hi-wrap{overflow-x:auto;padding:8px 0}.hi-svg{display:block;font-family:var(--sans, system-ui)}.hi-grid{stroke:var(--line);stroke-width:1}.hi-year{fill:var(--muted);font-size:11px}.hi-period{cursor:pointer}.hi-period rect{opacity:.9}.hi-period:hover rect,.hi-period:focus rect{opacity:1;stroke:var(--ink);stroke-width:1.5}.hi-plabel{fill:#fff;font-size:12px;font-weight:600;pointer-events:none;paint-order:stroke;stroke:#00000040;stroke-width:2px}.hi-comp{cursor:pointer}.hi-clabel{fill:var(--ink-2);font-size:11px}.hi-comp.extra .hi-clabel{fill:var(--muted);font-style:italic}.hi-comp:hover .hi-clabel,.hi-comp:focus .hi-clabel{fill:var(--accent);font-weight:600}.hi-ev circle{fill:var(--accent-2);cursor:help}.hi-cards{margin-top:18px}.hi-facts{margin:18px 0}.hi-facts ul{margin:6px 0 0;padding-left:18px}.hi-vertical{display:flex;flex-direction:column;gap:6px;border-left:2px solid var(--line);padding-left:12px;margin-left:4px}.hi-vp{display:flex;flex-direction:column;gap:2px;border-left:4px solid;padding:8px 10px;background:var(--paper-2);border-radius:0 8px 8px 0;margin:8px 0 2px;color:inherit}.hi-vc{display:flex;align-items:center;gap:6px;color:inherit;font-size:14px}.hi-vc.extra{color:var(--muted);font-style:italic}.hi-vc .dot{width:8px;height:8px;border-radius:50%;flex:none}.hi-ve{font-size:13px;padding:2px 0}.hi-plabel.out{fill:var(--ink);stroke:none;font-weight:600}.pa-sheet .pa-hit,.pa-sheet .pa-hit path{fill:var(--ok)!important}@keyframes pa-shake{0%,to{transform:translate(0)}12%{transform:translate(-5px)}25%{transform:translate(5px)}38%{transform:translate(-5px)}50%{transform:translate(4px)}64%{transform:translate(-3px)}80%{transform:translate(2px)}}.pa-shake,.pa-shake path{fill:var(--bad)!important}.lang-menu{position:fixed;z-index:1300;display:flex;flex-direction:column;padding:6px;min-width:150px;box-shadow:var(--shadow-lg)}.lang-menu button{text-align:left;background:none;border:0;padding:8px 10px;border-radius:8px;cursor:pointer;color:var(--ink);font:inherit}.lang-menu button:hover,.lang-menu button.on{background:var(--paper-2);font-weight:600}.pa-playhead.beside{opacity:.4}.piece-head.compact{margin-top:8px;margin-bottom:12px}.piece-head.compact h1{font-size:clamp(24px,3vw,34px);margin-bottom:.3em}.piece-head.compact .row{gap:8px}.mast-chip{display:inline-flex;align-items:center;gap:6px}.mast-chip .progress{width:56px;height:5px;margin:0}.pp-desc{margin:16px 0}.pp-desc .lead{margin:0 0 6px}.pa-tick{pointer-events:none}.pa-tick.early{fill:#e08a00}.pa-tick.late{fill:#8a5cf6}.pa[data-mode=tempo].rhythm .abc-cur,.pa[data-mode=tempo].rhythm .abc-cur path{fill:var(--accent)!important}.pa-rh-tip{margin-top:4px;font-size:.95em}.pa-rh-tip:before{content:"🥁 "}.pa-controls .pa-row:first-child{gap:10px 12px}.pa-transport{width:100%;margin-left:0;justify-content:flex-start;gap:8px}.pa-transport .btn{height:40px;min-height:40px;font-size:14px}.pa-transport .pa-rew,.pa-transport .pa-print,.pa-transport .pa-kbt,.pa-transport .pa-fs{min-width:44px;font-size:15px}.seg>.pa-tip{align-self:center;margin:0 6px 0 4px}.pa-controls .pa-help{margin-top:-4px}.pa-controls .pa-selhelp,.pa-controls .pa-keys{margin-top:-8px}.pp-help .chip{cursor:pointer;font:inherit;font-size:12px;font-weight:600;padding:3px 10px;line-height:inherit}.pp-help .chip:hover{border-color:var(--ink-2)}@media(max-width:480px){.pa .seg[data-k=mode]{display:flex;flex-wrap:wrap}.pa .seg[data-k=mode] button{flex:1 1 30%}.pa .seg[data-k=mode]>.pa-tip{flex:none}}.pa-transport .pa-fs{font-size:14px}.piece-head .pp-help{margin:0;display:inline-flex;flex-wrap:wrap;gap:6px}.pp-help [hidden]{display:none}.piece-head #hs{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.piece-head #hs:empty{display:none}.pa-tq{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:10px;background:var(--card);height:40px}.pa-transport .pa-tq .btn{border:0;background:none;min-width:34px;height:38px;min-height:0;padding:0 8px;font-size:18px;box-shadow:none}.pa-tv{min-width:46px;text-align:center;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-2)}@media(max-width:480px){.pa-transport .pa-tq .btn{min-width:30px;padding:0 4px}.pa-tv{min-width:38px;font-size:12px}}.pa.focus .pa-tq{height:auto}.pa-dyn{display:inline-flex;align-items:center;gap:6px}.pa-dyn b{font-family:var(--serif);font-style:italic;min-width:22px;text-align:right}.pa-dyn-bar{position:relative;width:80px;height:6px;border-radius:3px;background:#ffffff2e;overflow:visible}.pa-dyn-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--accent);transition:width .15s}.pa-dyn-bar u{position:absolute;top:-3px;width:2px;height:12px;background:#fff;margin-left:-1px}.pa-dy{margin-top:8px;padding-top:6px;border-top:1px solid var(--line);font-size:.95em}.pa-dy b{display:block;margin-bottom:2px}.pa-sheet .pa-fix,.pa-sheet .pa-fix path{fill:#d97706!important}.pa-dimhand{fill:var(--card);opacity:.62;pointer-events:none}.session-bar{align-items:center}.session-bar .sb-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 260px}.session-bar .sb-top{display:flex;gap:10px;align-items:baseline;min-width:0}.session-bar .sb-how{font-size:13.5px;opacity:.92}.session-bar .sb-goal{font-size:13px;color:var(--gold)}.session-bar .sb-goal .sb-time{font-size:13px;color:var(--paper);opacity:.8}.session-bar .sb-act{display:flex;gap:6px;align-items:center}.session-bar.goal-ok{box-shadow:0 0 0 2px var(--ok),var(--shadow-lg)}.se-how{margin:0 0 16px;padding-left:20px;color:var(--ink-2)}.se-how li{margin:2px 0}.se-card-bg{position:fixed;inset:0;z-index:1400;background:#14120e73;display:grid;place-items:center;padding:16px}.se-card{max-width:460px;width:100%;text-align:center;padding:28px 24px;box-shadow:var(--shadow-lg)}.se-card h2{margin:6px 0 8px}.se-card-how{font-size:16px;color:var(--ink-2)}.se-card-act{justify-content:center;margin-top:18px}.se-card-grade{font:700 44px var(--serif);margin:6px auto;width:72px;height:72px;line-height:72px;border-radius:18px}.session-bar .sb-short{display:none}@media(max-width:600px){.session-bar{left:8px;right:8px;transform:none;max-width:none;gap:8px;padding:6px 8px 6px 12px;flex-wrap:nowrap}.session-bar .sb-how,.session-bar .sb-l,.session-bar .sb-full{display:none}.session-bar .sb-short{display:inline}.session-bar .sb-main{flex:1 1 auto;flex-direction:row;align-items:center;gap:8px}.session-bar .sb-act .btn{padding:6px 10px;white-space:nowrap}.session-bar .sb-icon{width:24px}body.has-sbar .main{padding-bottom:72px}}.session-bar a.sb-t{white-space:nowrap}@media(max-width:420px){.pa-transport .pa-kbt{display:none}}.pa-tag{position:absolute;transform:translate(-50%,-100%);font:600 11px var(--sans);white-space:nowrap;pointer-events:none;color:var(--ink);animation:pa-tag 1.1s ease-out forwards;z-index:3}.pa-tag.bad{color:var(--bad)}.pa-tag.meh{color:#d97706}.pa-halo{position:absolute;border-radius:50%;pointer-events:none;box-shadow:0 0 0 1.5px var(--ok),0 0 5px 1px var(--ok);opacity:0;animation:pa-halo .6s ease-out;z-index:3}.pa-halo.bad{box-shadow:0 0 0 1.5px var(--bad),0 0 5px 1px var(--bad)}@keyframes pa-halo{0%{opacity:0;transform:scale(.8)}25%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}@media(prefers-reduced-motion:reduce){.pa-halo{display:none}}@keyframes pa-tag{0%{opacity:0;transform:translate(-50%,-100%) translateY(4px)}15%{opacity:1;transform:translate(-50%,-100%)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-100%) translateY(-6px)}}.pa-pass{position:fixed;left:50%;top:84px;transform:translate(-50%,-8px);z-index:70;display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:14px;background:var(--ink);color:var(--paper);box-shadow:var(--shadow-lg);font-size:14px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;white-space:nowrap}.pa-pass.show{opacity:1;transform:translate(-50%)}.pa-pass .grade.small{width:26px;height:26px;line-height:26px;font-size:15px}body.pa-focus .pa-pass{top:52px}@media(max-width:600px){.pa-pass{top:64px;font-size:13px}}.pa-selframe{fill:color-mix(in srgb,var(--accent-2) 7%,transparent);stroke:var(--accent-2);stroke-width:2;pointer-events:none}.pa-pass .pa-pass-speed{color:var(--gold);font-variant-numeric:tabular-nums}@media(max-width:420px){.pa-pass{white-space:normal;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 24px)}}.nav-report{display:flex;align-items:center;gap:10px;width:100%;margin-top:14px;padding:8px 12px;border:0;background:none;border-radius:9px;color:var(--muted);font:inherit;font-size:13.5px;cursor:pointer;text-align:left}.nav-report:hover{background:var(--paper-2);color:var(--ink)}.rp-bg{position:fixed;inset:0;z-index:1500;background:#14120e73;display:grid;place-items:center;padding:16px}.rp{width:100%;max-width:520px;display:flex;flex-direction:column;gap:10px}.rp h2{margin:0}.rp-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.rp textarea,.rp input[type=email]{width:100%;box-sizing:border-box;font:inherit;padding:10px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink)}.rp textarea{resize:vertical;min-height:110px}.rp-act{justify-content:flex-end}.ad-rep{border-top:1px solid var(--line);padding:10px 0}.ad-rep.error b{color:var(--bad)}.tour-ov{position:fixed;inset:0;z-index:1600}.tour-hole{position:fixed;border-radius:10px;box-shadow:0 0 0 200vmax #14120e99;outline:2px solid var(--accent);transition:all .2s;pointer-events:none}.tour-bub,.tip-bub{position:fixed;width:min(320px,calc(100vw - 24px));box-sizing:border-box;padding:14px 16px;box-shadow:var(--shadow-lg);font-size:14.5px}.tip-bub{position:absolute;z-index:30;border:1px solid var(--accent)}.tour-bub p,.tip-bub p{margin:0 0 12px}.tour-bub:before,.tip-bub:before{content:"";position:absolute;left:var(--ax, 50%);top:-7px;width:12px;height:12px;margin-left:-6px;background:inherit;transform:rotate(45deg);border-left:inherit;border-top:inherit}.tour-bub.up:before,.tip-bub.up:before{top:auto;bottom:-7px;border:0;border-right:inherit;border-bottom:inherit}.hero .hero-tour{cursor:pointer;font:inherit}.st-seg{flex-wrap:wrap}.piece-head #hs .grade{cursor:help}.pa-pass .pa-pass-mast{font-variant-numeric:tabular-nums}.pa-pass .pa-pass-mast small{color:var(--gold);font-weight:600}.guide{margin:0 0 14px;border:1px solid var(--accent);display:flex;flex-direction:column;gap:8px}.guide h3{margin:2px 0 0}.guide p{margin:0}.guide .gd-dots{display:flex;gap:6px}.guide .gd-dots span{flex:1;height:6px;border-radius:3px;background:var(--line)}.guide .gd-dots span.ok{background:var(--ok)}.guide .gd-dots span.on{background:var(--accent)}.guide .row{gap:8px;flex-wrap:wrap}.guide.done{border-color:var(--ok)}.chain-bar{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:980;display:flex;align-items:center;gap:10px;padding:10px 12px 10px 16px;border-radius:14px;background:var(--ink);color:var(--paper);box-shadow:var(--shadow-lg);font-size:14.5px;max-width:calc(100vw - 24px)}.chain-bar .chain-n{color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap}.chain-bar .btn{color:var(--paper);border-color:#ffffff4d}.ptabs-h{margin:14px 0 8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.seg.ptabs{display:grid;grid-template-columns:repeat(3,1fr);width:100%;margin:0 0 14px;padding:0;gap:10px;background:none;border:0}.seg.ptabs button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px 10px;border:2px solid var(--line-2);border-radius:14px;background:var(--card);color:var(--ink);text-align:center;white-space:normal;box-shadow:none}.seg.ptabs button .pt-t{font-size:16px;font-weight:700}.seg.ptabs button small{font-size:12.5px;font-weight:500;color:var(--muted);line-height:1.35}.seg.ptabs button:hover{border-color:var(--accent)}.seg.ptabs button.on{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:var(--shadow)}.seg.ptabs button.on small{color:#ffffffd9}.pt-lead{margin:0 0 10px}.mem-aloud{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:var(--paper-2);font-size:14.5px}.piece-page[data-tab=steps] .pa-controls .seg[data-k=mode],.piece-page[data-tab=steps] .pa-controls .seg[data-k=hands],.piece-page[data-tab=memory] .pa-controls .seg[data-k=mode],.piece-page[data-tab=memory] .pa-controls .seg[data-k=hands]{display:none}.pa-namehint{font:600 15px var(--sans, system-ui);fill:var(--accent);pointer-events:none}@media(max-width:600px){.seg.ptabs{gap:6px}.seg.ptabs button{padding:10px 4px}.seg.ptabs button .pt-t{font-size:13.5px}.seg.ptabs button small{font-size:11px}.guide .row .btn{flex:1 1 auto}.chain-bar{bottom:12px;font-size:13.5px}}.guide.compact{gap:6px;padding:10px 14px;box-shadow:var(--shadow)}.guide .gd-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.guide .gd-num{font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.guide .gd-title{flex:1 1 200px;font-size:16px}.guide .gd-acts{display:flex;gap:6px;margin-left:auto}.guide .gd-desc{font-size:13.5px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer}.guide .gd-desc.open{-webkit-line-clamp:unset}.chain-pop{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);z-index:990;width:min(380px,calc(100vw - 32px));box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 20px 16px;border-radius:18px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-lg);text-align:center;border:2px solid var(--line-2);animation:cp-in .25s ease-out}.chain-pop.ok{border-color:var(--ok)}.chain-pop.retry{border-color:var(--accent-2)}.chain-pop .cp-big{font:700 24px var(--serif)}.chain-pop .chain-n{color:var(--muted);font-variant-numeric:tabular-nums}@keyframes cp-in{0%{opacity:0;transform:translate(-50%,-46%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%)}}@media(max-width:600px){.guide .gd-title{font-size:14.5px;flex-basis:100%;order:3}.guide .gd-acts{order:2}}.pa-hud .pa-step{display:flex;gap:8px;align-items:baseline;font-size:13.5px;color:var(--paper);max-width:46%;overflow:hidden;white-space:nowrap}.pa-hud .pa-step b{overflow:hidden;text-overflow:ellipsis}.pa-hud .pa-step b{font-weight:600}.pa-hud .pa-step-t{color:var(--gold);font-variant-numeric:tabular-nums}.pa-hud .pa-acc.ok{color:#8fd19e}.pa-hud .pa-acc.low{color:#f2a65a}.pa-hud .pa-step-s{display:none}@media(max-width:900px){.pa.focus .pa-hud.has-step{flex-wrap:wrap;row-gap:2px}.pa.focus .pa-hud .pa-step{flex-basis:100%;max-width:none;font-size:12px;gap:6px}.pa.focus .pa-hud .pa-step-l{display:none}.pa.focus .pa-hud .pa-step-s{display:inline}.pa.focus .pa-hud.has-step .pa-acc{display:inline;font-size:12px}}@media(max-width:900px){.pa.focus .pa-hud.has-step{max-width:calc(100vw - 250px)}}.piece-page[data-tab=memory] .mem-card{padding:0;border:0;background:none;box-shadow:none}.mem-extra{gap:8px;margin:10px 0 0;flex-wrap:wrap}#memh .mem-head{margin-bottom:10px}.piece-page[data-tab=steps] .pa-selbar,.piece-page[data-tab=memory] .pa-selbar{display:none!important}@media(min-width:901px){.pa.focus .pa-controls{padding:8px 12px}.pa.focus .pa-selbar{display:none}.pa.focus .pa-hud{position:absolute;top:18px;right:max(28px,env(safe-area-inset-right));left:auto;z-index:6;max-width:calc(100% - 320px);flex-wrap:nowrap;padding:6px 12px}.pa.focus .pa-hud .pa-meter{display:none}.pa.focus .pa-score{font-size:18px}}.pa-hud{flex-wrap:nowrap;padding-right:130px;min-height:30px}.pa-hud>*{min-width:0;flex-shrink:1;white-space:nowrap}.pa-hud .pa-points{flex-shrink:0}.pa-fb{position:absolute;right:16px;top:50%;margin:0;transform:translateY(calc(-50% + 4px));pointer-events:none}.pa-fb.show{transform:translateY(-50%)}@media(max-width:600px){.pa-hud .pa-meter{display:none}.pa-hud{padding-right:104px}.pa-fb{font-size:15px;right:10px}}@media(max-width:900px){.pa.focus .pa-hud{padding-right:10px}}.pa:not(.focus) .pa-hud{height:54px;box-sizing:border-box;overflow:hidden}.pa-hud>*:not(.pa-fb){overflow:hidden;text-overflow:ellipsis}.pa-hud .pa-step{max-width:34%}.pa-hud .pa-acc,.pa-hud .pa-combo{flex-shrink:0}.guide .gd-split{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.guide .gd-split .seg button{padding:4px 10px;font-size:13px}@media(max-width:480px){.guide .gd-tempo .seg button{padding:4px 6px}}.piece-page .practice-panel{margin:0 0 12px;padding:10px 14px;gap:6px}.piece-page .practice-panel .pp-legend{font-size:12px}.piece-page[data-tab=steps] .practice-panel,.piece-page[data-tab=memory] .practice-panel{display:none}.gd-map{display:flex;gap:6px;margin:2px 0}.gm-part{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:4px;padding:4px;border:2px solid transparent;border-radius:8px;background:none;cursor:pointer;font:inherit;color:var(--muted)}.gm-part:hover{background:var(--paper-2)}.gm-part.on{border-color:var(--accent);color:var(--ink)}.gm-part.ok .gm-lab{color:var(--ok);font-weight:600}.gm-bars{display:flex;gap:2px;height:14px}.gm-bars i{flex:1;border-radius:3px}.gm-lab{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gd-map{user-select:none;-webkit-user-select:none}.gm-bars i{cursor:pointer}.gm-bars i:hover{outline:2px solid var(--line-2)}.gm-bars i.sel{outline:2px solid var(--accent-2);outline-offset:0}.gm-part[data-pick]{opacity:.55}.gm-part[data-pick]:hover{opacity:.85}.gd-all summary{cursor:pointer;font-size:13.5px;color:var(--ink-2);font-weight:600}.mem-back{margin:0}.pa-hud{padding-left:10px;gap:12px}.pa-hud-ctl{display:flex;align-items:center;gap:6px;flex-shrink:0}.pa-hud-ctl .btn{height:36px;min-height:0;padding:0 12px;background:#ffffff1a;color:var(--paper);border:1px solid rgba(255,255,255,.18);box-shadow:none;font-size:14px}.pa-hud-ctl .btn:hover{background:#ffffff2e}.pa-hud-ctl .pa-rew{min-width:38px;padding:0 8px}.pa-hud-ctl .pa-go{min-width:118px;background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.pa-hud-ctl .pa-go.paused{background:#ffffff24;border-color:#ffffff40}.pa-hud-ctl .pa-tq{height:36px;background:#ffffff0f;border-color:#ffffff2e;color:var(--paper)}.pa-hud-ctl .pa-tq .btn{background:none;border:0;min-width:30px;height:34px;padding:0 6px;font-size:17px}.pa-hud-ctl .pa-tv{color:var(--paper)}.pa-hud.listen .pa-points,.pa-hud.listen .pa-meter,.pa-hud.listen .pa-acc,.pa-hud.listen .pa-combo{display:none}.pa:not(.focus) .pa-hud{height:56px}@media(max-width:700px){.pa-hud-ctl .pa-go{min-width:0;padding:0 10px}.pa-hud .pa-step{display:none}}@media(max-width:900px){.pa.focus .pa-hud{left:8px;right:62px;max-width:none;bottom:calc(10px + env(safe-area-inset-bottom));padding:6px 8px;gap:8px;flex-wrap:nowrap}.pa.focus .pa-hud.has-step{flex-wrap:nowrap}.pa.focus .pa-hud .pa-step{display:none}.pa.focus .pa-hud-ctl .btn{height:34px}.pa.focus .pa-hud-ctl .pa-go{min-width:0;padding:0 10px}.pa.focus .pa-transport{padding:4px}}@media(min-width:901px){.pa.focus .pa-hud{max-width:calc(100% - 320px);padding-left:10px}}@media(max-width:900px){.pa.focus .pa-hud .pa-points,.pa.focus .pa-hud .pa-combo{display:none}.pa.focus .pa-hud:not(.listen) .pa-acc{display:inline;font-size:12px;white-space:nowrap}.pa.focus .pa-hud .pa-fb{display:none}}@media(max-width:420px){.pa-hud-ctl .pa-tq .btn{min-width:26px;padding:0 4px}.pa-hud-ctl .pa-tv{min-width:40px;font-size:12px}}@media(max-width:900px){.pa.focus .pa-hud,.pa.focus .pa-hud.has-step{max-width:none;width:auto}}@media(max-width:500px){.pa.focus .pa-hud:not(.listen) .pa-acc{display:none}}.piece-page[data-tab=steps] .pa-selhelp,.piece-page[data-tab=memory] .pa-selhelp{display:none}.gd-opts{margin:4px 0 6px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.pa-hud-ctl .pa-fs{min-width:38px;padding:0 8px;font-size:16px}.pa-hud-ctl .pa-fs .pa-fs-l{display:none}.pa.focus .pa-hud-ctl .pa-fs{order:-1;margin-right:4px;background:var(--paper);color:var(--ink);border-color:var(--paper);font-weight:700}.pa.focus .pa-hud-ctl .pa-fs:hover{background:var(--paper);opacity:.85}@media(max-width:900px){.pa.focus .pa-controls{display:none!important}.pa.focus .pa-hud{right:8px}}.pa-snav{display:inline-flex;gap:4px;flex-shrink:0}.pa-snav[hidden]{display:none}.pa-snav .btn{height:36px;min-height:0;min-width:32px;padding:0 8px;font-size:18px;line-height:1;background:#ffffff1a;color:var(--paper);border:1px solid rgba(255,255,255,.18);box-shadow:none}.pa-snav .btn:hover{background:#ffffff2e}@media(max-width:900px){.pa.focus .pa-snav .btn{height:34px;min-width:28px;padding:0 6px}}@media(max-width:420px){.pa.focus .pa-hud{gap:6px}.pa.focus .pa-hud-ctl{gap:4px}.pa.focus .pa-hud-ctl .pa-rew,.pa.focus .pa-hud-ctl .pa-fs{min-width:32px;padding:0 6px}}.pa-hud.has-step .pa-meter{display:none}.pa-hud .pa-step{max-width:40%}.gm-lab small{color:var(--muted);font-weight:600;margin-left:2px}.gm-part.on .gm-lab small{color:var(--accent)}.lf-card .prose p{margin:0 0 10px}.recent-piece>.row.between{margin-top:auto}.piece-card>.progress{margin-top:auto}.piece-card>.progress~.meta{margin-top:0}.grid .piece-card>.progress~.meta{min-height:76px;align-content:flex-start}.lesson-back{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:6px 12px;border-radius:999px;background:var(--paper-2);border:1px solid var(--line);font-size:13.5px;font-weight:600;color:var(--accent);text-decoration:none!important}.lesson-back:hover{border-color:var(--accent)}.confetti{position:fixed;inset:0;z-index:2000;pointer-events:none}svg .abcjs-bar path{stroke:var(--ink);stroke-width:.5px;vector-effect:non-scaling-stroke}.account-invite .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.hw-links{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.hw-links .muted{margin-right:4px}.chain-pop.next{border-color:var(--accent)}.chain-pop .cp-desc{margin:2px 0 4px;color:var(--ink-2);font-size:14px;line-height:1.5;text-align:left}.pa .pa-sheet .pa-rp,.pa .pa-sheet .pa-rp path{fill:#2563eb!important}.pa .pa-sheet .pa-rp.bad,.pa .pa-sheet .pa-rp.bad path{fill:var(--bad)!important}.pp-prog svg{width:100%;height:auto;display:block;margin-top:8px}.pp-prog .grid-l{stroke:var(--line);stroke-width:1}.pp-prog .ax{fill:var(--muted);font-size:11px}.pp-prog .l-t{stroke:#2563eb}.pp-prog .d-t{fill:#2563eb}.pp-prog .l-a{stroke:var(--ok)}.pp-prog .d-a{fill:var(--ok)}.pp-prog polyline{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.pp-prog .lg{display:inline-flex;align-items:center;gap:6px;margin-right:14px}.pp-prog .lg i{width:14px;height:3px;border-radius:2px;display:inline-block}.pa{position:relative}.pa-heard{position:absolute;right:8px;display:block;width:max-content;margin:0;z-index:6;pointer-events:none;font:600 13px var(--sans);padding:2px 9px;border-radius:10px;background:var(--bg-2, var(--line));color:var(--ink);box-shadow:0 1px 4px #00000026;transition:opacity .6s;white-space:nowrap}.pa-heard.ok{background:var(--ok-soft);color:var(--ok)}.pa-heard.bad{background:var(--bad-soft);color:var(--bad)}.pa-heard.old{opacity:.45}.pa-skip{position:sticky;top:40px;display:block;width:max-content;margin:6px 8px -34px auto;z-index:6}.welcome-ov:has(.ach){z-index:1000}.ach{width:min(460px,100%);text-align:center}.ach .ch-head{text-align:left}.ach-img{display:block;width:min(320px,100%);aspect-ratio:1;margin:12px auto;border-radius:18px;box-shadow:var(--shadow-lg);outline:1px solid rgba(255,255,255,.08);outline-offset:-1px}.ach-nets{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0 4px}.ach-net{background:var(--net);border-color:var(--net);color:#fff}.ach-net:hover{filter:brightness(1.15);color:#fff}:root[data-theme=dark] .ach-net{box-shadow:inset 0 0 0 1px #ffffff40}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ach-net{box-shadow:inset 0 0 0 1px #ffffff40}}.ach-share{margin-top:4px}.ach-don{margin-top:16px;padding:12px 14px;border-radius:10px;background:var(--paper-2)}.ach-don p{margin:0 0 8px}.ach-off{background:none;border:0;padding:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit}.don-card{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.don-card p{margin:0}.metro-big .bpm{font-size:56px;line-height:1.1}.metro-big .bpm .tn{font:italic 600 22px var(--serif);color:var(--accent);margin-left:8px}.metro-big .row.between{align-items:center;gap:16px;flex-wrap:wrap}.metro-big .row.between>div:first-child{flex:1 1 280px}.metro-big .metro-dots i{width:22px;height:22px}.metro-adj{display:flex;align-items:center;gap:10px}.metro-adj .btn{width:44px;height:44px;padding:0;font-size:22px;flex:none;justify-content:center}@media(max-width:600px){.metro-big .bpm{font-size:64px}.metro-big .metro-dots{width:100%;justify-content:center}.metro-big .metro-dots i{width:28px;height:28px}.metro-big .row:last-child{gap:10px}.metro-big .row:last-child .field{flex:1 1 28%}.metro-big .row:last-child .field select{width:100%}.metro-big .go,.metro-big .tp{flex:1 1 45%;min-height:52px;font-size:18px;justify-content:center}.metro-big input[type=range]{height:28px}}
