.pitch-illustration.svelte-y2d7ya{background:#fffef9;border:1px solid #dfe5d8;border-radius:10px;margin:0 0 24px;padding:21px 24px 16px;overflow:hidden}figcaption.svelte-y2d7ya{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}figcaption.svelte-y2d7ya strong:where(.svelte-y2d7ya){color:#3c5241;font-size:14px;font-weight:600}figcaption.svelte-y2d7ya span:where(.svelte-y2d7ya),.staff-footnote.svelte-y2d7ya{color:#63725c;font-size:11px;line-height:1.7}svg.svelte-y2d7ya{width:100%;max-width:620px;max-height:220px;margin:12px auto 0;display:block;overflow:visible}.staff-line.svelte-y2d7ya{stroke:#a6afa0;stroke-width:.8px}.staff-ledger.svelte-y2d7ya{stroke:#65775d;stroke-width:1px}.staff-note.svelte-y2d7ya{fill:#31553c}.staff-clef.svelte-y2d7ya{fill:#3c5241;font-family:Apple Symbols,Noto Music,Segoe UI Symbol,serif}.staff-accidental.svelte-y2d7ya{fill:#31553c;font-family:Apple Symbols,Noto Music,serif;font-size:21px}.staff-note-label.svelte-y2d7ya{fill:#496044;font-family:inherit;font-size:11px}.staff-footnote.svelte-y2d7ya{text-align:center;font-size:10px;display:block}@media (width<=640px){.pitch-illustration.svelte-y2d7ya{padding:18px 13px 13px}figcaption.svelte-y2d7ya strong:where(.svelte-y2d7ya){font-size:13px}figcaption.svelte-y2d7ya span:where(.svelte-y2d7ya){font-size:10px}svg.svelte-y2d7ya{margin-top:15px}}.calibration-heading.svelte-1up47rs{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.calibration-heading.svelte-1up47rs h3:where(.svelte-1up47rs){margin-bottom:6px}.calibration-heading.svelte-1up47rs p:where(.svelte-1up47rs),.calibration.svelte-1up47rs>p:where(.svelte-1up47rs){color:#65735c;font-size:12px;line-height:1.85}.calibration.svelte-1up47rs>p:where(.svelte-1up47rs){margin:14px 0}.calibration-offset.svelte-1up47rs{font-variant-numeric:tabular-nums;white-space:nowrap;color:#45623a;background:#edf3e5;border-radius:6px;padding:7px 10px;font-size:12px}.calibration-actions.svelte-1up47rs{flex-wrap:wrap;align-items:center;gap:16px;margin-top:17px;display:flex}.calibration-beats.svelte-1up47rs{justify-content:center;gap:15px;margin:23px 0 16px;display:flex}.calibration-beats.svelte-1up47rs span:where(.svelte-1up47rs){color:#6d7c5e;background:#f8faf4;border:1px solid #d5e0c8;border-radius:50%;place-items:center;width:34px;height:34px;font-size:13px;display:grid}.calibration-beats.svelte-1up47rs span.active:where(.svelte-1up47rs){color:#315538;background:#d8e9c3;border-color:#b1ce93}.calibration-pad.svelte-1up47rs{touch-action:none;width:100%;min-height:140px;margin-bottom:15px}.calibration-pad.svelte-1up47rs strong:where(.svelte-1up47rs){font-size:16px}.calibration-pad.svelte-1up47rs span:where(.svelte-1up47rs){font-size:12px}.calibration-result.svelte-1up47rs{background:#eff5e7;border-radius:7px;padding:13px 15px;color:#415b35!important}@media (width<=640px){.calibration-actions.svelte-1up47rs>.button:where(.svelte-1up47rs){width:100%}.calibration-offset.svelte-1up47rs{padding:6px 8px;font-size:11px}}:root{color:#282e29;font-synthesis:none;--paper:#f8f9f5;--white:#fff;--ink:#282e29;--muted:#858a81;--line:#e6e8df;--forest:#214d3b;--lime:#c4ed96;--sidebar:233px;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#f8f9f5;font-family:Avenir Next,Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{border:0}button,select,input{outline-offset:4px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline-offset:4px;outline:2px solid #619a56}main:focus{outline:none}button svg,a svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600}button{font-weight:500}::selection{color:#183d33;background:#c4ed96}input[type=range]{accent-color:var(--forest)}button{touch-action:manipulation}.skip-link{z-index:100;background:var(--forest);color:#fff;border-radius:8px;padding:12px 20px;position:fixed;top:-60px;left:16px}.skip-link:focus{top:12px}.sidebar{width:var(--sidebar);z-index:40;background:#f1f3ec;border-right:1px solid #e6e8e0;flex-direction:column;padding:37px 24px 22px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.wordmark{letter-spacing:-1.9px;align-items:center;width:max-content;font-size:32px;font-weight:700;line-height:1;display:flex}.brand-dot{color:#629953;margin-left:1px}.brand-symbol{align-items:center;gap:3px;height:31px;margin-right:11px;display:flex}.brand-symbol i{background:#3f6945;border-radius:5px;width:3px;display:block}.brand-symbol i:first-child{height:14px}.brand-symbol i:nth-child(2){height:28px}.brand-symbol i:nth-child(3){height:21px}.brand-symbol i:nth-child(4){height:11px}.sidebar-eyebrow{letter-spacing:1.2px;color:#989e90;white-space:nowrap;margin-top:13px;font-size:9.9px;font-weight:600}.nav-label{letter-spacing:1.5px;color:#91988a;margin:0 0 14px 12px;font-size:11px;font-weight:600;display:block}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav a{color:#72786b;border-radius:7px;align-items:center;gap:12px;min-height:43px;padding:12px 13px;font-size:14px;transition:background .18s,color .18s;display:flex;position:relative}.sidebar nav a svg{color:#8d9683}.sidebar nav a:hover{color:#284b32;background:#e7ecdf}.sidebar nav a.active{color:#355539;background:#e2e9d8;font-weight:600}.sidebar nav a.active svg{color:#476a3e}.nav-active-dot{background:#61874c;border-radius:50%;width:5px;height:5px;margin-left:auto}.nav-divider{background:#e0e4d8;height:1px;margin:25px 11px}.sidebar .exercise-nav{gap:2px}.sidebar .exercise-nav a{gap:12px;min-height:40px;padding:10px 13px;font-size:13.5px}.nav-new{letter-spacing:.3px;color:#858e7a;white-space:nowrap;background:#e6eadf;border-radius:3px;margin-left:auto;padding:3px 4px;font-size:9px}.sidebar-bottom{margin-top:auto;padding-top:45px}.anywhere-card{background:linear-gradient(130deg,#ecf0e3,#e8eedd);border:1px solid #dce3d2;border-radius:9px;padding:17px 14px 14px}.anywhere-illustration{color:#6f8c4c;align-items:center;gap:7px;margin-bottom:13px;display:flex}.anywhere-illustration>span{align-self:flex-start;margin-top:-2px;font-size:16px}.anywhere-card h3{letter-spacing:-.15px;margin-bottom:6px;font-size:14px}.anywhere-card p{color:#899078;font-size:11px;line-height:1.8}.anywhere-card button{color:#58713d;background:0 0;justify-content:space-between;align-items:center;width:100%;margin-top:13px;padding:0;font-size:12px;display:flex}.sidebar-utility{justify-content:space-between;align-items:center;padding:23px 8px 18px;display:flex}.sidebar-utility button{color:#818975;background:0 0;align-items:center;gap:10px;padding:0;font-size:13px;display:flex}.sidebar-utility button:hover{color:#355539}.sidebar-signoff{color:#a3a895;letter-spacing:.2px;margin-left:8px;font-size:10px;display:block}.app-shell{margin-left:var(--sidebar)}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;height:78px;padding:0 43px;display:flex}.breadcrumbs{color:#94998e;align-items:center;gap:14px;font-size:12px;display:flex}.breadcrumbs svg{color:#a4aa9b}.breadcrumbs strong{color:#636b5e;font-weight:500}.topbar-right{align-items:center;gap:21px;display:flex}.local-status{color:#8b9283;align-items:center;gap:7px;font-size:11px;display:flex}.status-dot{background:#7e9e65;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #edf1e8}.topbar-divider{background:var(--line);width:1px;height:19px}.sound-control{color:#7c8472;background:0 0;align-items:center;gap:8px;padding:0;font-size:12px;display:flex}.sound-control svg:last-child{margin-left:3px}.avatar{color:#6e7f54;background:#e8ecdf;border:1px solid #dce3cf;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.icon-button{color:#7c8573;background:0 0;border-radius:6px;place-items:center;padding:7px;display:grid}.icon-button:hover{background:#e9eee0}.mobile-menu-button{display:none}main{max-width:1540px;min-height:calc(100vh - 78px);margin:0 auto;padding:39px 43px 0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px;display:flex}.page-heading h1,.session-header h1{letter-spacing:-1.5px;margin:9px 0;font-size:34px;font-weight:600;line-height:1.3}.page-heading p,.session-header p{color:#8a8f81;letter-spacing:.05px;font-size:13.5px;line-height:1.7}.welcome-line{letter-spacing:1.7px;color:#8c957c;align-items:center;gap:7px;font-size:10px;font-weight:600;display:flex}.welcome-dash{background:#8e9d7c;width:14px;height:1px}.dashboard-heading h1{letter-spacing:-1.35px;margin:10px 0 7px;font-size:32px}.green-period{color:#639952}.streak-pill{color:#8b907e;white-space:nowrap;background:#eff1e8;border:1px solid #e3e7d9;border-radius:20px;align-items:center;gap:5px;margin-top:16px;padding:9px 12px;font-size:11px;display:flex}.streak-pill svg{color:#849766;margin-right:2px}.streak-pill strong{color:#596647;font-weight:600}.mobile-heading-break{display:none}.dashboard-feature-row{grid-template-columns:minmax(0,1.94fr) minmax(245px,1fr);gap:22px;display:grid}.daily-hero{color:#f7faef;isolation:isolate;background:#1f4438;border-radius:12px;align-items:center;min-height:278px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:2;width:100%;padding:30px 31px 25px;position:relative}.hero-eyebrow{letter-spacing:1.65px;color:#d0e0b7;align-items:center;gap:7px;font-size:9px;font-weight:500;display:flex}.hero-eyebrow>span{background:#c4ed96;border-radius:50%;width:4px;height:4px;box-shadow:0 0 0 3px #c4ed9615}.hero-copy h2{letter-spacing:-1.1px;color:#f4f7e9;margin-top:19px;font-size:35px;font-weight:500;line-height:1.17}.hero-copy p{color:#aabdab;margin-top:13px;font-size:12px;line-height:1.8}.hero-actions{align-items:center;gap:14px;margin-top:21px;display:flex}.button{white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:16px;min-height:40px;padding:11px 17px;font-size:13px;font-weight:600;line-height:1.4;transition:background .15s,transform .15s,box-shadow .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button.lime{color:#2a4933;background:#c4ed96;box-shadow:0 3px 4px #102b3220}.button.lime:hover{background:#d4f5b0;box-shadow:0 4px 12px #08251855}.button.primary{color:#f9fdf2;background:#2f5941}.button.primary:hover{background:#234b35}.button.secondary{color:#647257;background:0 0;border-color:#dce2d3}.button.secondary:hover{background:#ecf1e5}.hero-actions>span{color:#becbb5;white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:flex}.hero-footnote{color:#8da68f;margin-top:12px;font-size:9.5px;display:block}.hero-art{z-index:1;width:300px;height:300px;position:absolute;top:50%;right:-49px;transform:translateY(-50%)}.hero-art svg{width:100%;height:100%}.weekly-card{background:#fbfcf8;border:1px solid #e3e6db;border-radius:12px;min-width:0;padding:24px 24px 19px}.eyebrow{letter-spacing:1.45px;color:#8d977c;font-size:10px;font-weight:600}.weekly-top{justify-content:space-between;align-items:center;gap:4px;display:flex}.weekly-top .eyebrow{letter-spacing:1.2px;font-size:9px}.tiny-leaf{color:#81966a;line-height:0}.weekly-card h2{letter-spacing:-.7px;margin:13px 0 6px;font-size:22px;font-weight:500}.weekly-card>p{color:#949b89;font-size:11px;line-height:1.6}.week-days{justify-content:space-between;gap:6px;margin:23px 0;display:flex}.week-day{color:#a0a694;flex-direction:column;align-items:center;gap:9px;font-size:10px;display:flex}.week-day>div{color:#6f8d4f;background:#f3f5ed;border:1px solid #e7eadf;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;display:flex}.week-day>div i{background:#cbd2bf;border-radius:50%;width:3px;height:3px}.week-day.today>span{color:#5b7045;font-weight:600}.week-day.today>div{background:#f8fbf3;border:1px solid #9bb47d;box-shadow:0 0 0 3px #f0f4e9}.week-day.today>div>span{background:#87a569;border-radius:50%;width:5px;height:5px}.week-day.done>div{color:#5e7c41;background:#dcebc7;border-color:#c9dcb3}.daily-goal-label{color:#8c947f;justify-content:space-between;align-items:center;font-size:11px;display:flex}.daily-goal-label strong{color:#5b6c48;font-size:13px;font-weight:500}.daily-goal-label small{color:#a0a592;font-size:11px;font-weight:400}.goal-track{background:#e9eddf;border-radius:4px;height:4px;margin-top:9px;overflow:hidden}.goal-track>span{background:#94ae6f;border-radius:4px;height:100%;transition:width .3s;display:block}.weekly-bottom{justify-content:space-between;align-items:center;gap:5px;margin-top:9px;display:flex}.goal-message{color:#a1a791;font-size:10px}.weekly-bottom button{color:#9ca88a;background:0 0;padding:0;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading h2{letter-spacing:-.8px;font-size:23px;font-weight:600}.section-heading p{color:#939888;margin-top:6px;font-size:12px;line-height:1.6}.exercise-count{letter-spacing:.2px;color:#9ba28f;align-self:flex-end;align-items:center;gap:8px;margin-bottom:3px;font-size:10px;display:flex}.exercise-count>span{color:#81936b;font-family:Georgia,serif;font-size:23px;transform:rotate(-8deg)}.exercise-filter-row{justify-content:space-between;align-items:center;gap:16px;margin:22px 0 19px;display:flex}.filter-tabs{align-items:center;gap:6px;display:flex}.filter-tabs>button{color:#8d9482;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;line-height:1.4;transition:background .15s,color .15s;display:flex}.filter-tabs>button:hover{color:#47603b;background:#eef1e6}.filter-tabs>button.active{color:#536846;background:#edf1e5;border-color:#dfe6d2;font-weight:600}.filter-tabs>button>span{color:#81916b;background:#dee7cf;border-radius:3px;min-width:13px;padding:1px 4px;font-size:9px}.at-your-pace{color:#9da58f;align-items:center;gap:6px;font-size:10px;display:flex}.exercise-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.exercise-card{text-align:left;background:#fffefa;border:1px solid #e4e7dc;border-radius:10px;min-width:0;padding:7px 7px 0;transition:border-color .18s,box-shadow .18s,transform .18s;overflow:hidden}.exercise-card:hover{border-color:#c4d3b4;transform:translateY(-4px);box-shadow:0 9px 22px #4c61360c}.card-art-wrap{border-radius:6px;position:relative;overflow:hidden}.card-art-badge{color:#4f5a47aa;letter-spacing:.4px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff6b;border:1px solid #ffffff4a;border-radius:3px;padding:4px 6px;font-size:9px;display:block;position:absolute;top:10px;right:10px}.card-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.card-title-row h3{letter-spacing:-.5px;font-size:19px;font-weight:600}.card-go{color:#a0ab90;border:1px solid #e7eadf;border-radius:50%;place-items:center;width:25px;height:25px;transition:background .18s,border-color .18s,color .18s,transform .18s;display:grid}.exercise-card:hover .card-go{color:#446135;background:#e5eed8;border-color:#d3e1c1;transform:rotate(-35deg)}.exercise-card-body>p{color:#919988;letter-spacing:.05px;margin-top:4px;font-size:11px;font-weight:400;line-height:1.8}.card-bottom{letter-spacing:.3px;color:#9ba18e;border-top:1px solid #eff0e8;justify-content:space-between;align-items:center;margin-top:17px;padding-top:11px;font-size:9px;font-weight:400;display:flex}.card-bottom>span:first-child{align-items:center;gap:5px;display:flex}.card-bottom>span:last-child{color:#a5ad98;font-size:9px}.category-dot{background:#88a974;border-radius:50%;width:4px;height:4px}.category-dot.peach{background:#c29675}.category-dot.lavender{background:#aaa0c4}.category-dot.butter{background:#c5b366}.category-dot.rose{background:#c7929e}.category-dot.blue{background:#8fa8c0}.listening-note{background:#f0f2e9;border:1px solid #e5e9da;border-radius:9px;align-items:center;gap:20px;margin-top:26px;padding:20px 24px;display:flex}.note-symbol{color:#8b9c6f;background:#e9eedf;border:1px solid #dfe6cf;border-radius:50%;flex-shrink:0;place-items:center;width:47px;height:47px;display:grid}.listening-note>div:nth-child(2){flex:1}.listening-note .eyebrow{letter-spacing:1.3px;color:#a2aa91;font-size:9px}.listening-note h3{letter-spacing:-.15px;color:#5c6a4c;margin-top:4px;margin-bottom:5px;font-size:14px;font-weight:500}.listening-note p{color:#9aa28b;max-width:640px;font-size:10.5px;line-height:1.8}.note-next{color:#8b9e6b;background:0 0;border:1px solid #dce3ce;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.note-next:hover{background:#e1e9d5}.dashboard-footer{color:#a6ad99;justify-content:space-between;align-items:center;padding:25px 0;font-size:9px;display:flex}.dashboard-footer button{color:#9ba68c;background:0 0;align-items:center;gap:7px;padding:0;font-size:9px;display:flex}.text-button{color:#849375;white-space:nowrap;background:0 0;align-items:center;gap:7px;padding:3px 0;font-size:12px;line-height:1.5;display:inline-flex}.text-button:hover{color:#31583c}.page-enter{animation:.4s both enter}@keyframes enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.sidebar-backdrop{display:none}.toast{bottom:25px;left:calc(50% + var(--sidebar)/2);color:#f5faed;z-index:100;background:#244c37;border-radius:8px;align-items:center;gap:11px;max-width:min(520px,90vw);padding:14px 18px;font-size:14px;animation:.2s toast;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 30px #1b312a22}.toast>svg{color:#c4ed96}.toast button{color:#c4d2bb;background:0 0;margin-left:9px;padding:3px;line-height:0}@keyframes toast{0%{opacity:0;bottom:15px}to{opacity:1;bottom:25px}}.exercise-view{max-width:880px;margin:0 auto;padding:0 0 35px}.exercise-topline{justify-content:space-between;align-items:center;margin:-6px 0 31px;display:flex}.session-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.session-header h1{margin-top:8px;margin-bottom:4px;font-size:36px}.session-header .eyebrow{align-items:center;gap:8px;font-size:10px;display:flex}.tiny-dot{background:#b3bda5;border-radius:50%;width:3px;height:3px;display:inline-block}.session-time{font-variant-numeric:tabular-nums;color:#8a967b;background:#edf1e6;border:1px solid #e3e8d9;border-radius:6px;align-items:center;gap:7px;padding:8px 10px;font-size:13px;display:flex}.session-progress-label{color:#929c84;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px;font-size:12px;display:flex}.session-progress-label strong{color:#5b714c;font-weight:500}.progress-dot{color:#abb59d;padding:0 7px}.session-track{background:#e6ebdc;border-radius:5px;height:4px;overflow:hidden}.session-track>span{background:#91b46d;height:100%;transition:width .3s;display:block}.listening-card{color:#edf7e3;isolation:isolate;background:#214537;border-radius:13px;flex-direction:column;align-items:center;min-height:263px;padding:23px 24px 26px;display:flex;position:relative;overflow:hidden}.listening-top{color:#bacbb2;justify-content:space-between;align-items:center;gap:12px;width:100%;font-size:11px;display:flex}.listening-top>span:first-child{align-items:center;gap:7px;display:flex}.audio-quality{letter-spacing:1.1px;color:#8ba083;align-items:center;gap:6px;display:flex;font-size:9px!important}.audio-quality>span{background:#a6c87c;border-radius:50%;width:4px;height:4px}.waveform{z-index:-1;opacity:.36;justify-content:center;align-items:center;gap:4px;width:80%;height:90px;display:flex;position:absolute;top:73px;left:50%;transform:translate(-50%);-webkit-mask-image:linear-gradient(90deg,#0000,#000 20% 80%,#0000);mask-image:linear-gradient(90deg,#0000,#000 20% 80%,#0000)}.waveform>span{background:#b7d895;border-radius:4px;flex-shrink:0;width:3px;transition:transform .3s;display:block;transform:scaleY(.4)}.waveform.is-playing>span{animation:1s ease-in-out infinite alternate wave}@keyframes wave{0%{transform:scaleY(.2)}to{transform:scaleY(1)}}.play-button{color:#31533b;background:#c4ed96;border-radius:50%;place-items:center;width:67px;height:67px;margin:31px 0 20px;transition:transform .2s,background .2s;display:grid;box-shadow:0 0 0 9px #c4ed9608,0 0 0 10px #c4ed9617}.play-button:hover{background:#d3f7ac;transform:scale(1.06)}.play-button:not(.is-playing) svg{margin-left:4px}.play-button.is-playing{background:#c6ed98}.listening-card h2{letter-spacing:-.3px;font-size:18px;font-weight:500}.listening-card>p{color:#a0b299;text-align:center;margin-top:6px;font-size:10.5px;line-height:1.7}.player-shortcut{color:#809d78;align-items:center;gap:5px;margin-top:11px;font-size:9px;display:flex}kbd{color:#869576;white-space:nowrap;background:#eff2e9;border:1px solid #e1e6d6;border-radius:3px;padding:1px 4px;font-family:inherit;font-size:10px;font-weight:500;line-height:1.5;box-shadow:0 1px #d7decc}.player-shortcut kbd{color:#8fae80;box-shadow:none;background:#ffffff09;border:1px solid #ffffff17;font-size:9px}.question-heading{justify-content:space-between;align-items:center;gap:10px;margin:28px 0 15px;display:flex}.question-heading h2{letter-spacing:-.4px;font-size:18px}.hint-button{gap:5px;font-size:11px}.hint-note{color:#8b9b6a;background:#f0f3e5;border:1px solid #e0e7ce;border-radius:7px;align-items:center;gap:10px;margin-bottom:15px;padding:12px 15px;display:flex}.hint-note p{color:#7b8967;font-size:12px;line-height:1.7}.answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.answer-grid.many-answers{grid-template-columns:repeat(3,minmax(0,1fr))}.answer-button{text-align:left;color:#637154;background:#fffffb;border:1px solid #e1e6d8;border-radius:7px;align-items:center;gap:12px;min-height:52px;padding:12px 15px;font-size:14px;transition:background .15s,border-color .15s,opacity .2s;display:flex}.answer-button>svg{margin-left:auto}.answer-number{color:#9ea993;background:#f6f8f1;border:1px solid #e7ecdf;border-radius:4px;flex-shrink:0;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.answer-button:hover:not(:disabled){background:#f0f5e7;border-color:#b8cda1}.answer-button:disabled{opacity:.65}.answer-button.correct-answer{color:#466c33;opacity:1;background:#e8f2dc;border-color:#a9c489}.correct-answer .answer-number{color:#70954f;background:#deedcd;border-color:#c7dcb4}.answer-button.wrong-answer{color:#a66e56;opacity:1;background:#f6e9e3;border-color:#d8b6a5}.wrong-answer .answer-number{color:#a67c66;background:#f2e0d6;border-color:#e7cfc2}.answer-button.faded-answer{opacity:.5}.answer-feedback{align-items:center;gap:12px;min-height:91px;padding:18px 0;display:flex}.answer-feedback.visible{margin-top:4px}.feedback-icon{color:#779e55;background:#e4efd7;border-radius:50%;flex-shrink:0;place-items:center;width:35px;height:35px;display:grid}.feedback-icon.incorrect{color:#ac9469;background:#f1e8da}.answer-feedback>div:nth-child(2){flex:1}.answer-feedback h3{color:#61734e;letter-spacing:-.1px;font-size:14px;font-weight:600}.answer-feedback p{color:#9aa48b;margin-top:4px;font-size:11px;line-height:1.8}.answer-feedback .button{gap:10px;margin-left:8px;font-size:12px}.answer-feedback .listen-first{text-align:center;color:#a0a990;width:100%;font-size:12px}.exercise-footer{color:#a0aa90;border-top:1px solid #e4e8da;justify-content:space-between;align-items:center;gap:12px;padding:19px 0;font-size:10px;display:flex}.exercise-footer>span{align-items:center;gap:6px;display:flex}.exercise-footer kbd{margin-left:6px;font-size:9px}.audio-error{color:#a05f4b;background:#f9e8e2;border-radius:6px;margin-top:12px;padding:12px 15px;font-size:13px;line-height:1.6}.completion{text-align:center;max-width:720px;margin:25px auto 0}.completion-medal{color:#779654;background:#e5efd7;border:1px solid #d9e6c6;border-radius:50%;place-items:center;width:100px;height:100px;margin:10px auto 32px;display:grid;position:relative;box-shadow:0 0 0 9px #f1f5e9,0 0 0 10px #e9efdf}.medal-spark{color:#a2b983;font-size:26px;position:absolute}.medal-spark.one{top:5px;right:-32px}.medal-spark.two{font-size:20px;bottom:6px;left:-31px}.completion h1{letter-spacing:-1.2px;margin:13px 0 12px;font-size:33px;line-height:1.3}.completion>p{color:#8e9980;font-size:13px;line-height:1.7}.completion-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:center;align-items:center;margin:32px 0 25px;padding:29px 0;display:flex}.completion-stats>div{border-right:1px solid var(--line);flex-direction:column;gap:7px;width:33.333%;display:flex}.completion-stats>div:last-child{border:0}.completion-stats strong{letter-spacing:-1px;color:#547043;font-size:32px;font-weight:500}.completion-stats small{letter-spacing:0;color:#9aa98c;font-size:17px;font-weight:400}.completion-stats>div>span{color:#97a189;font-size:11px}.completion-actions{justify-content:center;align-items:center;gap:12px;display:flex}.review{text-align:left;border:1px solid var(--line);background:#fffffb;border-radius:10px;margin-top:41px;padding:23px}.review h3{letter-spacing:-.2px;font-size:15px}.review>p{color:#929c83;margin-top:7px;margin-bottom:17px;font-size:12px;line-height:1.7}.review-row{border-top:1px solid #edf0e6;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;font-size:12px;display:flex}.review-category{color:#98a18b}.review-row>span:last-child{align-items:center;gap:10px;display:flex}.review-row s{color:#bd9c89}.review-row strong{color:#708a58;font-weight:500}.review-row svg{color:#adb89c}.perfect-note{color:#90a077;justify-content:center;align-items:center;gap:10px;margin-top:35px;font-size:12px;line-height:1.8;display:flex}.progress-view,.library-view{padding-bottom:38px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:29px 0 24px;display:grid}.stat-card{border:1px solid var(--line);background:#fdfef9;border-radius:10px;flex-direction:column;align-items:flex-start;padding:23px;display:flex;position:relative}.stat-icon{color:#9cac84;background:#eff3e6;border:1px solid #e5eadb;border-radius:8px;place-items:center;width:33px;height:33px;display:grid;position:absolute;top:21px;right:21px}.stat-label{color:#94a081;font-size:12px}.stat-card>strong{letter-spacing:-1px;color:#597347;margin-top:19px;font-size:31px;font-weight:500;line-height:1.3}.stat-sub{color:#a6ae98;margin-top:7px;font-size:11px}.chart-panel,.skill-panel,.recent-panel{border:1px solid var(--line);background:#fdfef9;border-radius:10px;padding:25px}.panel-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-header h2,.skill-panel>h2,.recent-panel>h2{letter-spacing:-.3px;font-size:18px;font-weight:500}.panel-header p,.skill-panel>p,.recent-panel>p{color:#9aa48b;margin-top:6px;font-size:12px;line-height:1.8}.segmented{background:#f4f6ee;border:1px solid #e3e8d7;border-radius:6px;align-items:center;gap:3px;padding:3px;display:flex}.segmented button{color:#9aa788;background:0 0;border-radius:4px;padding:6px 10px;font-size:11px}.segmented button.active{color:#708358;background:#e5edda;box-shadow:0 1px 3px #32452509}.activity-chart{gap:15px;height:200px;margin-top:31px;display:flex}.chart-y{color:#aab29d;flex-direction:column;justify-content:space-between;width:17px;padding-top:2px;padding-bottom:26px;font-size:10px;display:flex}.chart-columns{background:repeating-linear-gradient(0deg,#0000 0 86px,#edf0e5 86px 87px) 0 -24px;flex:1;align-items:stretch;gap:12px;display:flex}.chart-column{color:#99a48a;flex-direction:column;flex:1;align-items:center;gap:13px;min-width:0;font-size:10px;display:flex}.chart-bar-track{border-bottom:1px solid #e9eddf;flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex}.chart-bar{background:#e0e9d1;border-radius:4px 4px 0 0;align-items:flex-end;width:60%;max-width:47px;min-height:2px;transition:height .3s;display:flex;position:relative}.chart-bar.today{background:#d1e1b6}.chart-bar-correct{background:#93ae70;border-radius:3px 3px 0 0;width:100%;min-height:2px}.bar-tooltip{color:#f0f6e7;white-space:nowrap;z-index:2;opacity:0;pointer-events:none;background:#32533d;border-radius:5px;padding:8px 10px;font-size:11px;transition:opacity .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.chart-bar:hover .bar-tooltip{opacity:1}.chart-legend{color:#9aa78a;justify-content:center;align-items:center;gap:24px;margin-top:20px;font-size:10px;display:flex}.chart-legend>span{align-items:center;gap:7px;display:flex}.chart-legend i{background:#93ae70;border-radius:2px;width:6px;height:6px}.chart-legend>span:nth-child(2) i{background:#e0e9d1}.progress-bottom{grid-template-columns:1fr 1fr;gap:22px;margin-top:23px;display:grid}.skill-panel>p,.recent-panel>p{margin-bottom:20px}.skill-row{align-items:center;gap:12px;margin:19px 0;display:flex}.skill-row:last-child{margin-bottom:0}.skill-icon{color:#819a6f;background:#eaf0e3;border-radius:7px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.skill-icon.peach{color:#bb9877;background:#f7e9df}.skill-icon.lavender{color:#afa1c4;background:#eeebf5}.skill-icon.butter{color:#beac71;background:#f6efd9}.skill-icon.rose{color:#bd94a0;background:#f4e9eb}.skill-icon.blue{color:#90aac1;background:#e7eef4}.skill-row>div{flex:1}.skill-row strong{color:#7c8c6b;font-size:12px;font-weight:500}.skill-track{background:#edf0e5;border-radius:3px;height:3px;margin-top:8px;overflow:hidden}.skill-track>span{background:#9bb779;height:100%;display:block}.skill-score{color:#8d9f77;text-align:right;white-space:nowrap;min-width:57px;font-size:12px}.skill-score small{color:#afb69f;margin-top:5px;font-size:9px;display:block}.empty-sessions{text-align:center;color:#b2bfa0;flex-direction:column;justify-content:center;align-items:center;min-height:270px;padding:25px;display:flex}.empty-sessions h3{color:#8a9a78;letter-spacing:-.2px;margin-top:19px;font-size:15px;font-weight:500}.empty-sessions p{color:#a3af94;max-width:210px;margin-top:9px;font-size:12px;line-height:1.9}.empty-sessions .text-button{margin-top:20px;font-size:12px}.session-row{border-top:1px solid #edf0e5;align-items:center;gap:11px;padding:17px 0;display:flex}.recent-icon{color:#97ac7b;background:#edf2e5;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.session-row>div{flex:1}.session-row strong{color:#718961;font-size:12px;font-weight:500;display:block}.session-row>div>span{color:#a1ae92;margin-top:5px;font-size:10px;display:block}.session-row b{color:#8ea773;letter-spacing:-.4px;font-size:18px;font-weight:500}.session-row b small{font-size:12px}.library-view .page-heading h1{font-size:31px}.library-note{color:#96a486;align-items:center;gap:9px;font-size:11px;display:flex}.library-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin-top:35px;margin-bottom:23px;padding-bottom:17px;display:flex}.root-select{color:#96a486;align-items:center;gap:10px;font-size:11px;display:flex}select{appearance:none;color:#758a60;cursor:pointer;background:#f6f8f0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238b9b77' stroke-width='1.5'%3E%3Cpath d='m5 6 3 3 3-3'/%3E%3C/svg%3E") right 9px center no-repeat;border:1px solid #dfe6d4;border-radius:5px;max-width:100%;padding:8px 30px 8px 12px;font-size:12px}.reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;display:grid}.reference-card{text-align:left;background:#fffffb;border:1px solid #e2e7d9;border-radius:9px;flex-direction:column;min-height:181px;padding:19px;transition:background .15s,border-color .15s,transform .15s;display:flex}.reference-card:hover{background:#fafdf5;border-color:#b8cda1;transform:translateY(-2px)}.reference-card.playing{background:#edf5e2;border-color:#a8c08d}.reference-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.reference-symbol{letter-spacing:-.8px;color:#a0b68b;font-size:23px;font-weight:500}.reference-play{color:#91a875;background:#f5f8ed;border:1px solid #e2e9d6;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.reference-play svg{margin-left:2px}.reference-card.playing .reference-play{color:#6d9150;background:#dcecc8;border-color:#c5d9af}.reference-card h3{letter-spacing:-.2px;margin:15px 0 7px;font-size:14px;font-weight:500}.reference-card p{color:#9aa58b;font-size:11px;font-weight:400;line-height:1.8}.reference-notes{flex-wrap:wrap;align-items:center;gap:4px;margin-top:auto;padding-top:14px;display:flex}.reference-notes>span{color:#9fac8e;background:#f3f6eb;border:1px solid #e8edde;border-radius:3px;padding:2px 5px;font-size:9px}.reference-notes i{background:#ccd5c0;border-radius:50%;width:2px;height:2px}.library-callout{background:#edf2e2;border:1px solid #e1e8d1;border-radius:9px;align-items:center;gap:17px;margin-top:25px;padding:22px;display:flex}.callout-icon{color:#96ab79;background:#e2ebd4;border-radius:50%;flex-shrink:0;place-items:center;width:41px;height:41px;display:grid}.library-callout>div{flex:1}.library-callout h3{letter-spacing:-.2px;color:#758b5e;font-size:14px;font-weight:500}.library-callout p{color:#a0ad8e;margin-top:5px;font-size:11px;line-height:1.8}.library-callout .button{gap:10px;font-size:12px}.piano-panel{background:#fdfef9;border:1px solid #e2e8d7;border-radius:10px;align-items:center;gap:35px;margin-top:25px;padding:28px;display:flex}.piano-panel>div:first-child{flex:1}.piano-panel h2{letter-spacing:-.6px;margin-top:8px;margin-bottom:7px;font-size:20px;font-weight:500;line-height:1.4}.piano-panel p{color:#9daa8d;max-width:250px;font-size:11px;line-height:1.8}.piano{background:#354e36;border:6px solid #354e36;border-top-width:13px;border-radius:8px;flex:1.1;min-width:240px;max-width:400px;display:flex;box-shadow:0 3px 8px #30492f18}.piano-key-wrap{flex:1;position:relative}.white-key{color:#a2b08c;background:linear-gradient(#fcfcf6,#fafcf5);border:1px solid #d8dfcc;border-bottom:4px solid #d7dfc9;border-radius:0 0 3px 3px;justify-content:center;align-items:flex-end;width:100%;height:115px;padding-bottom:10px;font-size:10px;display:flex}.white-key:hover{background:#edf3e1}.white-key:active{background:#d8e7bf;border-bottom-width:1px}.black-key{z-index:1;background:linear-gradient(90deg,#31452e,#40583a);border:1px solid #263e25;border-bottom:4px solid #233721;border-radius:0 0 3px 3px;width:60%;height:65px;position:absolute;top:0;right:-30%}.black-key:hover{background:#597246}.black-key:active{background:#6c8b50;border-bottom-width:1px}dialog{color:var(--ink);overscroll-behavior:contain;background:#fbfcf8;border:1px solid #dfe6d5;border-radius:15px;max-width:calc(100vw - 32px);max-height:90dvh;padding:0;box-shadow:0 25px 90px #11241726}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#15271f55}dialog[open]{animation:.2s dialog-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.settings-dialog{width:530px}.dialog-content{padding:29px 31px}.dialog-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px;display:flex}.dialog-heading .eyebrow{font-size:9px}.dialog-heading h2{letter-spacing:-.9px;margin-top:7px;font-size:24px;font-weight:500}.dialog-heading .icon-button{color:#a0ad8e;align-self:flex-start;margin-top:-7px;margin-right:-8px}.settings-section{border-bottom:1px solid #e4e9db;margin-bottom:23px;padding-bottom:22px}.settings-section h3{color:#6a8057;font-size:14px;font-weight:500}.settings-section>p{color:#a0ac91;margin-top:6px;font-size:12px;line-height:1.7}.volume-row{color:#91a67a;align-items:center;gap:12px;margin:18px 0;font-size:11px;display:flex}.volume-row input{cursor:pointer;flex:1;min-width:0;height:4px}.volume-row>span{text-align:right;color:#91a57b;width:28px}.setting-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.setting-options button{color:#a3b28e;background:#f8faf3;border:1px solid #e2e8d7;border-radius:7px;flex-direction:column;align-items:center;gap:8px;padding:14px 8px;display:flex}.setting-options button strong{color:#8d9f78;font-size:12px;font-weight:500}.setting-options button span{color:#a5b197;font-size:10px;font-weight:400}.setting-options button.selected{color:#7d9d5e;background:#eaf2dd;border-color:#bed3a5}.setting-options button.selected strong{color:#69884c}.sound-test{margin-top:14px;font-size:11px}.setting-label{justify-content:space-between;align-items:center;gap:15px;margin-top:20px;display:flex}.setting-label label{color:#7e9268;font-size:12px}.setting-label label>span{color:#a6b195;margin-top:5px;font-size:10px;display:block}.settings-data>div{justify-content:space-between;align-items:center;gap:12px;margin-top:17px;display:flex}.reset-button{color:#af9986}.settings-data .reset-confirm{background:#f5eae2;border:1px solid #ebd9ca;border-radius:7px;flex-wrap:wrap;align-items:center;padding:13px;display:flex}.reset-confirm p{color:#a38570;width:100%;font-size:12px;line-height:1.7}.reset-confirm .danger{color:#fff;background:#a46f56;min-height:32px;padding:8px 12px;font-size:11px}.settings-done{width:100%;min-height:43px;font-size:13px}.info-dialog{width:500px}.info-dialog .dialog-content>p{color:#96a386;margin-top:-5px;margin-bottom:21px;font-size:13px;line-height:1.9}.info-dialog .dialog-content>h3{color:#7d9366;margin:25px 0 15px;font-size:14px;font-weight:500}.shortcut-row{color:#9ca98c;border-bottom:1px solid #e7ecde;justify-content:space-between;align-items:center;padding:11px 0;font-size:12px;display:flex}.shortcut-row kbd{background:#eff3e6;padding:3px 6px;font-size:11px}.privacy-note{color:#91a37d;background:#eef3e4;border:1px solid #e1e9d3;border-radius:7px;align-items:flex-start;gap:10px;margin:22px 0;padding:15px;font-size:11px;line-height:1.9;display:flex}.privacy-note>svg{margin-top:2px}.install-icon{color:#c4ed96;background:#284c37;border:1px solid #3f6144;border-radius:25px;place-items:center;width:90px;height:90px;margin:6px auto 28px;display:grid;box-shadow:0 7px 16px #23482f12}.install-instruction{border-bottom:1px solid #e5ebdc;padding:15px 0}.install-instruction strong{color:#7f9568;font-size:13px;font-weight:500}.install-instruction p{color:#a0ad90;margin-top:6px;font-size:12px;line-height:1.9}@media (width>=1600px){:root{--sidebar:255px}.sidebar{padding-left:30px;padding-right:30px}.topbar{padding-left:55px;padding-right:55px}main{padding-top:47px;padding-left:55px;padding-right:55px}.daily-hero{min-height:310px}.hero-copy{padding-left:37px}.hero-copy h2{font-size:41px}.hero-copy p{font-size:14px}.hero-art{width:340px;height:340px;right:-24px}.hero-actions{margin-top:25px}.hero-eyebrow{font-size:10px}.hero-footnote{font-size:11px}.weekly-card{padding:28px 30px}.weekly-card h2{font-size:24px}.week-days{margin:27px 0}.week-day>div{width:30px;height:30px}.exercises-section{margin-top:41px}.exercise-cards{gap:24px}.card-title-row h3{font-size:23px}.exercise-card-body{padding:20px 19px 17px}.exercise-card-body>p{font-size:13px}.card-bottom{font-size:11px}.card-bottom>span:last-child{font-size:10px}.card-art-wrap .artwork{height:164px}.dashboard-heading h1{font-size:38px}.page-heading p{font-size:14px}.welcome-line{font-size:11px}.topbar{height:85px}.breadcrumbs,.local-status,.sound-control{font-size:13px}.sidebar-main{margin-top:55px}.sidebar nav a,.sidebar .exercise-nav a{font-size:14px}.nav-label{font-size:12px}.anywhere-card h3{font-size:14px}.anywhere-card p{font-size:12px}.anywhere-card button{font-size:13px}.listening-note p{font-size:12px}.listening-note h3{font-size:15px}.listening-note .eyebrow,.dashboard-footer,.dashboard-footer button{font-size:10px}}@media (width>=1250px) and (width<=1439px){.hero-art{width:280px;height:280px;right:-60px}.hero-copy h2{font-size:32px}.hero-copy{padding-left:27px}.hero-copy p{font-size:11px}.hero-actions .button{gap:9px;padding-left:13px;padding-right:13px;font-size:12px}.hero-actions{gap:10px}.hero-actions>span{font-size:9px}.weekly-card{padding:24px 20px 19px}}@media (width>=1440px) and (width<=1599px){.hero-art{width:310px;height:310px;right:-20px}.hero-copy h2{font-size:37px}.hero-copy p{font-size:13px}}@media (width<=1249px){:root{--sidebar:211px}.sidebar{padding:32px 18px 19px}.wordmark{font-size:30px}.sidebar-eyebrow{letter-spacing:1.05px;font-size:9.3px}.topbar{height:73px;padding:0 30px}main{padding:32px 30px 0}.topbar-right{gap:17px}.local-status{font-size:10px}.sidebar-main{margin-top:42px}.sidebar nav a{padding:11px 12px;font-size:13px}.sidebar .exercise-nav a{padding:10px 12px;font-size:12.5px}.nav-new{font-size:9px}.dashboard-heading h1{font-size:29px}.page-heading p{font-size:12px}.dashboard-feature-row{grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr);gap:17px}.hero-copy{padding:29px 23px 24px}.hero-copy h2{font-size:30px}.hero-copy p{font-size:11px}.hero-art{opacity:.85;width:268px;height:268px;right:-97px}.hero-actions{gap:9px}.hero-actions .button{gap:8px;padding:10px 12px;font-size:11px}.hero-actions>span{gap:3px;font-size:9px}.hero-actions>span svg{width:11px}.hero-footnote{font-size:9px}.weekly-card{padding:24px 19px 19px}.weekly-card h2{font-size:21px}.weekly-card>p{font-size:10px}.week-days{gap:3px}.week-day>div{width:23px;height:23px}.weekly-top .eyebrow{letter-spacing:.9px;font-size:9px}.exercise-cards{gap:15px}.section-heading h2{font-size:21px}.card-title-row h3{letter-spacing:-.6px;font-size:17px}.exercise-card-body{padding:15px 10px 12px}.exercise-card-body>p{font-size:10px}.card-bottom{margin-top:13px;font-size:9px}.card-bottom>span:last-child{font-size:9px}.card-go{width:22px;height:22px}.card-go svg{width:16px}.card-art-wrap .artwork{height:126px}.card-art-badge{font-size:9px;top:7px;right:7px}.stats-grid{gap:15px}.stat-card{padding:19px}.stat-label{font-size:11px}.stat-icon{width:29px;height:29px;top:17px;right:17px}.stat-icon svg{width:18px}.stat-card>strong{font-size:28px}.page-heading h1{font-size:29px}.library-view .page-heading h1{font-size:28px}.library-note{display:none}.reference-grid{gap:14px}.reference-card{padding:16px}.progress-bottom{gap:17px}.chart-panel,.skill-panel,.recent-panel{padding:21px}.piano-panel{gap:20px;padding:23px}.piano-panel h2{font-size:18px}}@media (width<=1050px){:root{--sidebar:194px}.sidebar{padding-left:13px;padding-right:13px}.sidebar-eyebrow{letter-spacing:.9px;font-size:9px}.sidebar .exercise-nav a,.sidebar nav a{gap:10px;font-size:12px}.nav-new{display:none}.nav-label{font-size:10px}.wordmark{margin-left:6px;font-size:28px}.sidebar-eyebrow{margin-left:5px}.sidebar-bottom{padding-top:30px}.anywhere-card{padding:13px 11px}.anywhere-card p{font-size:10px}.anywhere-card h3{font-size:13px}.anywhere-card button{font-size:11px}.topbar{padding:0 25px}.topbar-right{gap:14px}.local-status,.topbar-divider{display:none}main{padding:29px 25px 0}.dashboard-heading h1{letter-spacing:-1.15px;font-size:27px}.dashboard-heading p{font-size:11px}.welcome-line{letter-spacing:1.4px;font-size:9px}.streak-pill{padding:8px 9px;font-size:10px}.streak-pill svg{width:14px}.dashboard-feature-row{grid-template-columns:minmax(0,1.5fr) minmax(219px,1fr);gap:15px}.hero-copy{padding:24px 20px}.hero-copy h2{font-size:27px}.hero-art{opacity:.65;width:263px;height:263px;right:-127px}.hero-eyebrow{letter-spacing:1.4px;font-size:9px}.hero-copy p{font-size:10px}.hero-footnote{font-size:9px}.hero-actions{gap:9px}.hero-actions>span{display:none}.hero-actions .button{gap:9px;padding:10px 11px;font-size:11px}.weekly-card{padding:21px 17px 18px}.weekly-card h2{font-size:20px}.week-days{margin-top:23px;margin-bottom:24px}.daily-hero{min-height:265px}.exercise-cards{gap:13px}.exercise-card-body{padding:13px 9px 11px}.card-title-row h3{letter-spacing:-.4px;font-size:15px}.exercise-card-body>p{letter-spacing:0;font-size:9px}.card-bottom>span:last-child{display:none}.card-art-wrap .artwork{height:114px}.section-heading h2{font-size:20px}.section-heading p{font-size:11px}.exercise-count,.at-your-pace{font-size:9px}.filter-tabs>button{padding:7px 9px;font-size:10px}.filter-tabs{gap:3px}.listening-note{gap:15px;padding:18px}.listening-note p{font-size:10px}.listening-note h3{font-size:13px}.dashboard-footer,.dashboard-footer button{font-size:9px}.progress-view .page-heading{align-items:flex-start}.progress-view .page-heading h1{font-size:26px}.page-heading .button{gap:9px;min-height:35px;margin-top:18px;padding:9px 12px;font-size:11px}.stat-label{font-size:10px}.stat-icon{width:25px;height:25px;top:15px;right:12px}.stat-icon svg{width:15px}.stat-sub{font-size:10px}.stat-card{padding:17px 14px}.stats-grid{gap:12px}.stat-card>strong{font-size:25px}.progress-bottom{grid-template-columns:1fr}.recent-panel .empty-sessions{min-height:200px}.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-view .page-heading h1{font-size:26px}.piano-panel{flex-direction:column;align-items:stretch}.piano-panel>div:first-child{display:block}.piano-panel p{max-width:none}.piano{flex:auto;align-self:center;width:100%;min-width:0}.library-callout{gap:13px;padding:19px}.library-callout .button{min-height:35px;padding:9px 12px;font-size:11px}.library-callout h3{font-size:14px}.library-callout p{font-size:10px}.callout-icon{width:35px;height:35px}.session-header h1{font-size:31px}.session-header p{font-size:12px}.question-heading h2{font-size:16px}.answer-button{font-size:13px}.answer-grid.many-answers{gap:8px}.answer-grid.many-answers .answer-button{gap:8px;padding:10px;font-size:12px}.exercise-footer{align-items:flex-start;font-size:9px}.exercise-footer>span:last-child{gap:4px}.answer-feedback{flex-wrap:wrap;gap:10px}.answer-feedback .button{margin-left:0}.answer-feedback h3{font-size:13px}.answer-feedback p{font-size:10px}.completion h1,.completion-stats strong{font-size:28px}}@media (width<=800px){:root{--sidebar:190px}.topbar{height:67px;padding:0 21px}main{padding:27px 21px 0}.dashboard-heading{gap:10px}.dashboard-heading h1{font-size:25px}.welcome-line{letter-spacing:1.2px;font-size:9px}.streak-pill{gap:3px;padding:7px;font-size:9px}.streak-pill svg{width:13px;margin:0}.dashboard-heading p{font-size:10px}.dashboard-feature-row{grid-template-columns:1fr}.daily-hero{min-height:265px}.hero-copy{padding:28px}.hero-copy h2{font-size:34px}.hero-copy p{font-size:12px}.hero-art{opacity:1;width:285px;height:285px;right:-32px}.hero-copy-break{display:block}.hero-actions .button{gap:12px;padding:11px 13px;font-size:12px}.hero-actions>span{font-size:10px;display:flex}.hero-actions{gap:14px;margin-top:19px}.hero-footnote,.hero-eyebrow{font-size:9px}.weekly-card{grid-template-columns:1fr 1.5fr;column-gap:25px;padding:20px 23px;display:grid}.weekly-top{grid-column:1}.weekly-card h2{grid-column:1;align-self:start;margin-top:9px}.weekly-card>p{grid-column:1;font-size:9px}.tiny-leaf{display:none}.week-days{grid-area:1/2/4;align-items:center;margin:0 0 14px;padding-top:0}.week-day>div{width:25px;height:25px}.week-day{gap:11px;font-size:11px}.daily-goal-label{grid-column:1/3;margin-top:13px;font-size:10px}.goal-track,.weekly-bottom{grid-column:1/3}.weekly-bottom .goal-message{font-size:9px}.weekly-bottom button{display:none}.exercise-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.card-art-wrap .artwork{height:120px}.card-title-row h3{font-size:17px}.exercise-card-body{padding:15px 11px 12px}.exercise-card-body>p{font-size:10px}.card-bottom{font-size:9px}.card-bottom>span:last-child{font-size:9px;display:block}.card-art-badge{font-size:9px}.section-heading h2{font-size:20px}.section-heading p{font-size:10px}.exercise-count,.at-your-pace{display:none}.filter-tabs>button{padding:7px 10px;font-size:10px}.listening-note{align-items:flex-start;gap:12px;padding:18px 16px}.listening-note p{font-size:10px}.note-symbol{width:35px;height:35px;margin-top:5px}.note-symbol svg{width:21px}.note-next{align-self:center;width:25px;height:25px}.note-next svg{width:15px}.dashboard-footer{gap:20px;font-size:9px;line-height:1.9}.dashboard-footer button{white-space:nowrap;font-size:9px}.page-heading h1,.library-view .page-heading h1{letter-spacing:-.8px;font-size:24px}.page-heading .eyebrow{font-size:9px}.progress-view .page-heading h1{font-size:24px}.progress-view .page-heading{display:block}.page-heading p{font-size:11px}.stats-grid{gap:9px}.stat-card{padding:15px 12px}.stat-icon{display:none}.stat-card>strong{margin-top:12px;font-size:23px}.stat-label,.stat-sub{font-size:9px}.panel-header h2{font-size:15px}.panel-header p{font-size:10px}.chart-panel{padding:19px 15px}.segmented{gap:1px;padding:2px}.segmented button{padding:5px 7px;font-size:9px}.chart-columns{gap:8px}.chart-column,.chart-legend{font-size:9px}.reference-grid{gap:12px}.reference-card{padding:15px}.reference-card h3{font-size:14px}.reference-card p{font-size:10px}.reference-notes{gap:3px}.reference-notes>span{padding:2px 4px;font-size:9px}.library-callout{flex-wrap:wrap}.library-callout>div{flex-basis:calc(100% - 50px)}.library-callout .button{margin-left:48px}.library-toolbar{flex-wrap:wrap;gap:10px}.root-select,.exercise-topline .text-button{font-size:10px}.exercise-topline{margin-bottom:24px}.session-header h1{font-size:30px}.session-header .eyebrow{font-size:9px}.session-header p{font-size:10px}.session-time{padding:7px;font-size:11px}.session-progress-label{font-size:10px}.listening-card{min-height:245px;padding:21px 19px 23px}.audio-quality{letter-spacing:.6px;font-size:9px!important}.listening-top{font-size:10px}.listening-card h2{font-size:17px}.listening-card>p{font-size:9px}.question-heading h2{font-size:14px}.hint-button{font-size:9px}.answer-button{gap:9px;min-height:48px;padding:10px;font-size:12px}.answer-number{width:21px;height:21px;font-size:10px}.answer-grid{gap:9px}.answer-grid.many-answers{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-feedback .button{min-height:35px;margin-left:45px;padding:9px 12px;font-size:11px}.answer-feedback>div:nth-child(2){flex-basis:calc(100% - 50px)}.exercise-footer{flex-direction:column;align-items:center;gap:12px;font-size:9px}.completion h1{font-size:26px}.completion>p{font-size:12px}.completion-actions{flex-direction:column;gap:10px}.completion-actions .button{min-width:210px;font-size:12px}.review-row{flex-wrap:wrap;gap:6px;font-size:11px}.review-category{width:100%}.review{padding:18px}.review h3{font-size:14px}.review>p{font-size:11px}.completion-stats strong{font-size:25px}.completion-stats small{font-size:14px}.completion-stats>div>span{font-size:9px}.perfect-note{font-size:11px}.sidebar-bottom{padding-top:22px}.sidebar-main{margin-top:35px}.nav-divider{margin-top:20px;margin-bottom:20px}}@media (width<=640px){:root{--sidebar:233px}.sidebar{padding:30px 24px 23px;transition:transform .22s;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:35;background:#203b2b50;display:block;position:fixed;inset:0}.app-shell{margin-left:0}.topbar{background:#f8f9f5;height:65px;padding:0 19px}.mobile-menu-button{margin-left:-7px;margin-right:-3px;padding:5px;display:grid}.breadcrumbs{gap:9px;font-size:11px}.breadcrumbs .mobile-menu-button svg{color:#7f906c}.topbar-right{gap:14px}.sound-control{gap:6px;font-size:11px}.sound-control svg:first-child{width:16px}.sound-control svg:last-child{width:11px}.avatar{width:28px;height:28px}.avatar svg{width:16px}.wordmark{margin-left:0;font-size:32px}.sidebar-eyebrow{letter-spacing:1.1px;margin-left:0;font-size:10px}.sidebar-main{margin-top:39px}.sidebar nav a{gap:12px;padding:12px;font-size:14px}.sidebar .exercise-nav a{gap:12px;min-height:39px;font-size:13px}.nav-label{font-size:10px}.nav-new{font-size:9px;display:block}.anywhere-card{padding:16px}.anywhere-card h3{font-size:14px}.anywhere-card p{font-size:11px}.anywhere-card button{font-size:12px}.sidebar-bottom{padding-top:40px}.sidebar-utility button{font-size:13px}.sidebar-signoff{font-size:10px}main{min-height:calc(100dvh - 65px);padding:29px 21px 0}.page-heading{margin-bottom:25px}.dashboard-heading{align-items:flex-start;position:relative}.welcome-line{letter-spacing:1.35px;gap:6px;font-size:9px}.welcome-dash{width:11px}.dashboard-heading h1{letter-spacing:-1.15px;margin:12px 0 9px;font-size:28px;line-height:1.25}.mobile-heading-break{display:block}.dashboard-heading p{max-width:265px;font-size:10.5px;line-height:1.8}.streak-pill{margin-top:0;padding:6px 8px;font-size:9px;position:absolute;top:0;right:0}.streak-pill svg{width:12px;height:12px}.dashboard-feature-row{gap:15px}.daily-hero{min-height:272px}.hero-copy{padding:28px 25px 24px}.hero-copy h2{font-size:33px}.hero-copy p{font-size:11px;line-height:1.85}.hero-art{opacity:.8;width:265px;height:265px;right:-100px}.hero-eyebrow{letter-spacing:1.5px;font-size:9px}.hero-actions{gap:13px;margin-top:21px}.hero-actions .button{gap:10px;padding:10px 12px;font-size:11px}.hero-actions>span,.hero-footnote{font-size:9px}.weekly-card{grid-template-columns:1fr 1.4fr;column-gap:22px;padding:20px}.weekly-top .eyebrow{letter-spacing:1px;font-size:9px}.weekly-card h2{margin:8px 0 5px;font-size:20px}.weekly-card>p{font-size:9px;line-height:1.7}.week-day>div{width:22px;height:22px}.week-day{gap:10px;font-size:10px}.week-days{gap:4px;margin-bottom:9px}.daily-goal-label{margin-top:15px;font-size:10px}.daily-goal-label strong{font-size:12px}.weekly-bottom .goal-message{font-size:9px}.exercises-section{margin-top:29px}.section-heading h2{letter-spacing:-.8px;font-size:21px}.section-heading p{margin-top:5px;font-size:10.5px}.exercise-filter-row{margin:18px 0 16px}.filter-tabs{gap:4px}.filter-tabs>button{padding:7px 9px;font-size:9.5px}.filter-tabs>button>span{min-width:11px;padding:1px 3px;font-size:9px}.exercise-cards{gap:13px}.card-art-wrap .artwork{height:108px}.exercise-card{border-radius:9px;padding:5px 5px 0}.card-art-wrap{border-radius:5px}.card-art-badge{padding:3px 4px;font-size:9px;top:5px;right:5px}.exercise-card-body{padding:13px 7px 10px}.card-title-row{gap:5px}.card-title-row h3{letter-spacing:-.4px;font-size:15px}.card-go{width:20px;height:20px}.card-go svg{width:14px}.exercise-card-body>p{max-width:139px;min-height:24px;margin-top:5px;font-size:9px;line-height:1.7}.card-bottom{margin-top:11px;padding-top:9px;font-size:9px}.card-bottom>span:last-child{font-size:9px}.listening-note{gap:11px;margin-top:21px;padding:17px 13px}.note-symbol{width:29px;height:29px;margin-top:8px}.note-symbol svg{width:18px}.listening-note h3{margin-top:5px;font-size:12px}.listening-note .eyebrow{letter-spacing:1px;font-size:9px}.listening-note p{font-size:9.5px;line-height:1.8}.note-next{width:22px;height:22px}.note-next svg{width:13px}.dashboard-footer{padding:21px 0;font-size:9px}.dashboard-footer button{gap:4px;font-size:9px}.dashboard-footer button svg{width:11px}.page-heading h1,.library-view .page-heading h1,.progress-view .page-heading h1{letter-spacing:-1.1px;margin-top:11px;font-size:27px;line-height:1.25}.page-heading .eyebrow{letter-spacing:1.3px;font-size:9px}.page-heading p{font-size:11px}.stats-grid{gap:9px;margin-top:23px;margin-bottom:19px}.stat-card{padding:16px 11px}.stat-card>strong{margin-top:13px;font-size:23px}.stat-label{font-size:9px}.stat-sub{max-width:70px;font-size:9px;line-height:1.7}.chart-panel{padding:19px 15px}.panel-header h2{font-size:14px}.panel-header p{font-size:9px}.segmented button{white-space:nowrap;padding:5px 6px;font-size:9px}.activity-chart{gap:10px;height:180px;margin-top:24px}.chart-y{width:12px;font-size:9px}.chart-columns{gap:9px}.chart-legend{font-size:9px}.progress-bottom{gap:18px;margin-top:18px}.skill-panel,.recent-panel{padding:23px}.skill-panel>h2,.recent-panel>h2{font-size:17px}.skill-panel>p,.recent-panel>p{font-size:11px}.library-toolbar{gap:10px;margin-top:26px}.library-toolbar .filter-tabs>button{padding:8px;font-size:10px}.root-select{gap:6px;font-size:9px}.root-select select{background-position:right 5px center;padding:7px 23px 7px 9px;font-size:10px}.reference-grid{gap:12px}.reference-card{min-height:179px;padding:14px}.reference-symbol{font-size:23px}.reference-play{width:25px;height:25px}.reference-play svg{width:15px}.reference-card h3{margin-top:15px;font-size:14px}.reference-card p{font-size:9.5px;line-height:1.85}.reference-notes{gap:3px}.reference-notes>span{padding:2px 3px;font-size:9px}.library-callout{gap:13px;padding:18px}.library-callout h3{font-size:14px}.library-callout p{font-size:10px;line-height:1.8}.library-callout .button{font-size:11px}.piano-panel{padding:22px}.piano-panel .eyebrow{font-size:9px}.piano-panel h2{font-size:21px}.piano-panel p{font-size:10px}.white-key{height:112px}.piano{max-width:370px}.exercise-view{padding-bottom:20px}.exercise-topline{margin:0 0 27px}.exercise-topline .text-button{font-size:10px}.exercise-topline .text-button svg{width:14px}.session-header{margin-bottom:26px}.session-header h1{margin-top:10px;font-size:33px}.session-header .eyebrow{letter-spacing:1.2px;font-size:9px}.session-header p{font-size:10.5px}.session-time{padding:7px 9px;font-size:11px}.session-time svg{width:14px}.session-progress-label{gap:10px;font-size:10px}.listening-card{min-height:258px;padding:21px}.listening-top{font-size:10px}.listening-top svg{width:14px}.audio-quality{letter-spacing:.6px;font-size:9px!important}.audio-quality>span{width:3px;height:3px}.waveform{gap:3px;top:76px}.waveform>span{width:3px}.play-button{width:62px;height:62px;margin-top:33px;margin-bottom:23px}.listening-card h2{font-size:18px}.listening-card>p{font-size:9px;line-height:1.9}.question-heading{margin-top:25px;margin-bottom:15px}.question-heading h2{font-size:15px}.hint-button{font-size:9px}.hint-button svg{width:13px}.hint-note{padding:12px}.hint-note p{font-size:11px;line-height:1.8}.answer-button{gap:9px;min-height:51px;padding:11px 12px;font-size:12px}.answer-number{width:21px;height:21px}.answer-grid{gap:10px}.answer-grid.many-answers .answer-button{gap:8px;padding:10px;font-size:12px}.answer-feedback{min-height:86px;padding-top:21px;padding-bottom:22px}.answer-feedback h3{font-size:13px}.answer-feedback p{font-size:10px}.answer-feedback .button{min-height:39px;margin-left:45px;font-size:11px}.feedback-icon{width:34px;height:34px}.exercise-footer{gap:12px;padding:18px 0;font-size:9px}.exercise-footer>span:first-child svg{width:14px}.exercise-footer kbd{font-size:9px}.completion{margin-top:30px}.completion h1{font-size:28px}.completion>p{font-size:11px}.completion .eyebrow{font-size:9px}.completion-medal{width:85px;height:85px;margin-bottom:30px}.completion-medal>svg{width:34px}.completion-stats{margin-top:29px;padding:23px 0}.completion-stats strong{font-size:27px}.completion-stats small{font-size:14px}.completion-stats>div>span{font-size:9px}.completion-actions .button{width:100%;max-width:290px;min-height:42px}.review{margin-top:31px;padding:19px}.review h3{font-size:14px}.review>p{font-size:10px}.review-row{flex-wrap:nowrap;font-size:11px}.review-category{width:auto;font-size:10px}.review-row>span:last-child{gap:7px}.toast{gap:9px;width:calc(100% - 32px);padding:13px 15px;font-size:12px;bottom:20px;left:50%}.toast button{margin-left:auto}dialog{border-radius:12px;max-width:calc(100vw - 28px);max-height:92dvh}.dialog-content{padding:25px 23px}.dialog-heading h2{font-size:23px}.dialog-heading .eyebrow{letter-spacing:1.2px;font-size:9px}.settings-section>p{font-size:11px}.setting-options{gap:7px}.setting-options button{gap:8px;padding:14px 6px}.setting-options button strong{font-size:11px}.setting-options button span{font-size:9px}.setting-label{gap:12px}.setting-label select{min-width:124px;padding-left:9px;padding-right:25px;font-size:10px}.setting-label label{font-size:11px}.setting-label label>span{max-width:140px;font-size:9px;line-height:1.6}.settings-data .text-button{font-size:10px}.settings-done,.info-dialog .dialog-content>p{font-size:12px}.info-dialog .dialog-content>h3{font-size:13px}.shortcut-row{font-size:11px}.privacy-note{padding:14px;font-size:10px}.install-instruction p{font-size:11px}.install-instruction strong{font-size:12px}}@media (width<=370px){main,.topbar{padding-left:16px;padding-right:16px}.dashboard-heading h1{font-size:25px}.dashboard-heading p{font-size:10px}.hero-copy h2{font-size:30px}.hero-copy{padding-left:22px}.hero-art{right:-122px}.weekly-card{column-gap:15px;padding:18px 16px}.weekly-card h2{font-size:18px}.week-day>div{width:21px;height:21px}.week-days{gap:3px}.filter-tabs>button{padding:7px 8px;font-size:9px}.card-title-row h3{font-size:14px}.card-go{width:18px;height:18px}.exercise-card-body>p{font-size:9px}.card-art-wrap .artwork{height:99px}.card-bottom>span:last-child{display:none}.exercise-card-body{padding-left:7px;padding-right:7px}.exercise-cards{gap:11px}.section-heading h2{font-size:20px}.library-toolbar .filter-tabs>button{padding:7px;font-size:9px}.reference-card h3{font-size:13px}.question-heading h2{font-size:14px}.answer-button{gap:7px;padding:10px;font-size:11px}.answer-feedback h3{font-size:12px}.stat-card>strong{font-size:22px}.stat-label,.stat-sub{font-size:9px}.dialog-content{padding:23px 19px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sidebar nav a{min-height:45px;font-size:13px}.sidebar .exercise-nav a{min-height:43px;font-size:12px}.sidebar nav a,.sidebar nav a svg{color:#737e68}.breadcrumbs,.topbar-right,.sound-control{font-size:12px}.welcome-line{font-size:9px}.dashboard-heading p,.page-heading p{color:#7c8474;font-size:13px}.dashboard-heading h1{font-size:35px}.hero-copy p{color:#b5c8b2;font-size:12px}.hero-eyebrow{font-size:9px}.hero-actions .button{min-height:43px;font-size:12px}.hero-footnote{font-size:9px}.hero-actions>span{font-size:10px}.hero-art{opacity:.9}.daily-hero{min-height:306px}.weekly-card h2{font-size:23px}.weekly-card>p{color:#8b957c;font-size:11px}.week-days{margin-top:25px;margin-bottom:24px}.week-day{font-size:10px}.daily-goal-label{font-size:11px}.daily-goal-label small{font-size:11px}.goal-message{font-size:9px}.section-heading h2{font-size:24px}.section-heading p{color:#8a937e;font-size:12px}.exercise-card-body{padding:19px 16px 15px}.card-title-row h3{font-size:21px}.exercise-card-body>p{color:#7f8972;font-size:11px;line-height:1.8}.card-bottom{margin-top:17px;padding-top:12px;font-size:9px}.card-bottom>span:last-child,.card-art-badge{font-size:8px}.listening-note h3{font-size:14px}.listening-note p{color:#818d70;font-size:11px;line-height:1.8}.listening-note .eyebrow{font-size:8px}.session-header p{color:#87947a;font-size:12px}.answer-button{min-height:58px;font-size:14px}.hint-button{font-size:11px}.hint-note p{font-size:12px}.answer-feedback h3{font-size:14px}.answer-feedback p{color:#87947a;font-size:11px}.answer-feedback .button,.answer-feedback .listen-first{font-size:12px}.exercise-footer{font-size:10px}.listening-card>p{font-size:11px}.listening-card h2{font-size:21px}.listening-top{font-size:11px}.stat-label{font-size:12px}.stat-sub{font-size:11px}.panel-header p,.skill-panel>p,.recent-panel>p,.skill-row strong,.session-row strong,.skill-score{font-size:12px}.skill-score small,.session-row>div>span{font-size:10px}.empty-sessions p{font-size:12px}.reference-card p{color:#88967b;font-size:11px}.reference-notes>span{font-size:9px}.library-callout h3{font-size:16px}.library-callout p{font-size:11px}.library-callout .button{font-size:12px}.piano-panel p{font-size:11px}.settings-section h3{font-size:14px}.settings-section>p,.setting-label label{font-size:12px}.setting-label label>span{font-size:10px}.setting-label select{min-width:158px;font-size:11px}.setting-options button strong{font-size:12px}.setting-options button span{font-size:10px}.settings-done,.info-dialog .dialog-content>p{font-size:13px}.shortcut-row{font-size:12px}.privacy-note{font-size:11px}.install-instruction p{font-size:12px}.install-instruction strong{font-size:13px}@media (width>=1600px){.dashboard-heading h1{font-size:40px}.daily-hero{min-height:328px}.hero-copy p{font-size:13px}.hero-copy h2{font-size:43px}.card-title-row h3{font-size:23px}.exercise-card-body>p{font-size:13px}.card-bottom{font-size:10px}.card-bottom>span:last-child{font-size:9px}.sidebar nav a{font-size:14px}.sidebar .exercise-nav a{font-size:13px}}@media (width<=1249px){.dashboard-heading h1{font-size:31px}.hero-copy h2{font-size:32px}.hero-copy p{max-width:250px;font-size:11px}.hero-eyebrow{font-size:8px}.hero-actions .button{font-size:11px}.hero-actions>span{display:none}.hero-art{opacity:.55;right:-110px}.weekly-card h2{font-size:22px}.weekly-card>p{font-size:10px}.week-day>div{width:24px;height:24px}.weekly-top .eyebrow{font-size:7px}.card-title-row h3{font-size:18px}.exercise-card-body{padding:17px 12px 14px}.exercise-card-body>p{font-size:10px}.card-bottom{font-size:8px}.card-bottom>span:last-child{font-size:7px}.dashboard-heading p,.sidebar nav a{font-size:12px}.sidebar .exercise-nav a{font-size:11px}.hero-footnote,.dashboard-footer,.dashboard-footer button{font-size:8px}}@media (width<=1050px){.dashboard-heading h1{font-size:28px}.dashboard-heading p{font-size:11px}.hero-copy h2{font-size:29px}.hero-copy p{max-width:200px;font-size:10px}.hero-eyebrow{font-size:7px}.weekly-card h2{font-size:21px}.weekly-card>p{font-size:9px}.weekly-top .eyebrow{font-size:7px}.daily-goal-label{font-size:10px}.week-day>div{width:22px;height:22px}.goal-message{font-size:8px}.card-title-row h3{font-size:16px}.exercise-card-body>p{font-size:9px}.exercise-card-body{padding:16px 9px 13px}.card-bottom>span:last-child{display:none}.section-heading h2{font-size:22px}.section-heading p{font-size:11px}.exercise-cards{gap:13px}.listening-note p{font-size:10px}.sidebar nav a{font-size:11px}.sidebar .exercise-nav a{font-size:10.5px}.sidebar nav a,.sidebar .exercise-nav a{min-height:41px}.sidebar nav a{gap:10px}.sidebar .exercise-nav a{gap:9px}.filter-tabs>button{padding:7px 11px;font-size:10px}.stat-label{font-size:10px}.stat-sub{font-size:9px}.reference-card p{font-size:11px}.answer-button{font-size:13px}.answer-grid.many-answers .answer-button{font-size:12px}.question-heading h2{font-size:18px}.listening-card>p,.answer-feedback p{font-size:10px}.exercise-footer{font-size:9px}}@media (width<=800px){.dashboard-heading h1{font-size:26px}.dashboard-heading p{font-size:10px}.daily-hero{min-height:292px}.hero-copy h2{font-size:36px}.hero-copy p{max-width:275px;font-size:12px}.hero-eyebrow{font-size:8px}.hero-art{opacity:.8;right:-35px}.hero-actions>span{font-size:9px;display:flex}.hero-actions .button{font-size:12px}.hero-footnote{font-size:9px}.weekly-card h2{font-size:20px}.weekly-card>p{font-size:9px}.weekly-card .week-days{margin:0 0 13px}.week-day>div{width:25px;height:25px}.daily-goal-label{font-size:11px}.weekly-card .eyebrow{font-size:7px}.card-title-row h3{font-size:19px}.exercise-card-body{padding:17px 12px 13px}.exercise-card-body>p{min-height:35px;font-size:10px;line-height:1.8}.card-bottom{font-size:8px}.card-bottom>span:last-child{font-size:7px;display:block}.card-art-badge{font-size:7px}.section-heading h2{font-size:22px}.section-heading p{font-size:11px}.filter-tabs>button{padding:8px 11px;font-size:10px}.dashboard-footer,.dashboard-footer button{font-size:7px}.question-heading h2{font-size:16px}.hint-button{font-size:10px}.answer-button{font-size:12px}.answer-grid.many-answers .answer-button{font-size:11px}.listening-top{font-size:10px}.audio-quality{font-size:6px!important}.listening-card>p{font-size:9px}.session-header p{font-size:11px}.stat-label{font-size:9px}.stat-sub{font-size:8px}.panel-header p{font-size:10px}.reference-card h3{font-size:14px}.reference-card p{font-size:10px}.reference-notes>span{font-size:8px}.library-callout h3{font-size:15px}.library-callout p,.library-callout .button{font-size:11px}}@media (width<=640px){.sidebar nav a{min-height:45px;font-size:13px}.sidebar .exercise-nav a{min-height:43px;font-size:12px}.topbar-right .sound-control,.breadcrumbs{font-size:10px}.dashboard-heading h1{letter-spacing:-1.3px;font-size:30px}.dashboard-heading p{max-width:280px;font-size:11px;line-height:1.8}.welcome-line{letter-spacing:1.2px;font-size:7px}.streak-pill{gap:4px;padding:6px 8px;font-size:9px;top:-1px}.daily-hero{min-height:291px}.hero-copy{padding:29px 25px 25px}.hero-copy h2{font-size:34px}.hero-copy p{max-width:245px;font-size:11px}.hero-art{opacity:.5;right:-116px}.hero-eyebrow{letter-spacing:1.2px;font-size:8px}.hero-actions .button{min-height:42px;font-size:11px}.hero-actions>span{font-size:9px}.hero-footnote{font-size:8px}.weekly-card{grid-template-columns:1fr 1.35fr;column-gap:15px;padding:21px 18px}.weekly-top .eyebrow{letter-spacing:1px;font-size:6.5px}.weekly-card h2{white-space:nowrap;margin:9px 0 5px;font-size:19px}.weekly-card>p{max-width:135px;font-size:8px;line-height:1.8}.week-day{font-size:10px}.week-day>div{width:23px;height:23px}.week-days{gap:3px}.weekly-card .week-days{margin:0 0 8px}.daily-goal-label{margin-top:16px;font-size:10px}.daily-goal-label strong{font-size:12px}.daily-goal-label small{font-size:10px}.weekly-bottom .goal-message{font-size:9px}.section-heading h2{font-size:22px}.section-heading p{font-size:11px}.filter-tabs{gap:4px}.filter-tabs>button{min-height:34px;padding:8px 10px;font-size:9px}.filter-tabs>button>span{font-size:8px}.card-title-row h3{letter-spacing:-.4px;font-size:16px}.exercise-card-body{padding:15px 8px 11px}.exercise-card-body>p{max-width:none;min-height:36px;font-size:10px}.card-bottom{letter-spacing:0;gap:6px;font-size:8px}.card-bottom>span:last-child{display:none}.card-art-badge{font-size:6.5px}.card-art-wrap .artwork{height:115px}.card-go{width:22px;height:22px}.listening-note{padding:18px 13px}.listening-note h3{font-size:12px}.listening-note p{font-size:10px;line-height:1.8}.listening-note .eyebrow{font-size:7px}.note-symbol{display:none}.dashboard-footer,.dashboard-footer button{font-size:7px}.dashboard-footer{align-items:flex-start;gap:17px}.dashboard-footer>span{max-width:155px}.dashboard-footer button{white-space:normal;text-align:right;justify-content:flex-end;max-width:140px;line-height:1.9}.page-heading p{font-size:12px}.page-heading .eyebrow{font-size:8px}.exercise-topline .text-button{font-size:10px}.session-header .eyebrow{letter-spacing:1px;font-size:8px}.session-header p{max-width:260px;font-size:11px}.session-progress-label{font-size:10px}.session-time{font-size:11px}.listening-card{min-height:272px}.listening-top{font-size:10px}.audio-quality{font-size:5px!important}.listening-card h2{font-size:19px}.listening-card>p{max-width:280px;font-size:9px}.player-shortcut{font-size:9px}.player-shortcut kbd{font-size:8px}.answer-button{gap:9px;min-height:54px;font-size:12px}.answer-grid.many-answers .answer-button{padding:10px;font-size:11px}.question-heading h2{font-size:16px}.hint-button{font-size:9px}.answer-number{font-size:10px}.hint-note p{font-size:11px}.answer-feedback h3{font-size:13px}.answer-feedback p{font-size:11px}.answer-feedback .button{min-height:41px;font-size:11px}.answer-feedback .listen-first{font-size:10px}.exercise-footer{font-size:9px}.exercise-footer kbd{font-size:8px}.stat-label{font-size:9px}.stat-sub{font-size:8px}.stat-card>strong{font-size:25px}.panel-header p{font-size:9px}.panel-header h2{font-size:15px}.segmented button,.chart-column,.chart-y,.chart-legend{font-size:9px}.skill-panel>p,.recent-panel>p,.skill-row strong,.session-row strong{font-size:12px}.reference-card h3{font-size:14px}.reference-card p{font-size:10px;line-height:1.8}.reference-notes>span{font-size:8px}.library-toolbar .filter-tabs>button{padding:8px;font-size:10px}.root-select,.root-select select{font-size:10px}.library-callout h3{font-size:14px}.library-callout p,.library-callout .button,.piano-panel p{font-size:11px}.piano-panel .eyebrow{font-size:8px}.white-key{font-size:10px}.settings-section h3{font-size:14px}.settings-section>p,.setting-label label{font-size:11px}.setting-label label>span{font-size:9px;line-height:1.7}.setting-label select{min-width:140px;font-size:10px}.setting-options button strong{font-size:11px}.setting-options button span{font-size:9px}.settings-data .text-button{font-size:10px}.settings-done,.info-dialog .dialog-content>p{font-size:12px}.info-dialog .dialog-content>h3{font-size:13px}.shortcut-row{font-size:11px}.privacy-note{font-size:10px}.install-instruction p{font-size:11px}.install-instruction strong,.completion>p{font-size:12px}.completion .eyebrow{font-size:8px}.completion-stats>div>span{font-size:10px}.completion-actions .button{font-size:12px}.review>p{font-size:11px}.review h3{font-size:15px}.review-row{font-size:11px}.review-category{font-size:10px}.perfect-note{font-size:11px}}@media (width<=370px){.dashboard-heading h1{font-size:28px}.dashboard-heading p{font-size:10px}.streak-pill{padding:5px 6px;font-size:8px}.welcome-line{letter-spacing:1px;font-size:6.5px}.hero-copy h2{font-size:32px}.hero-copy p{max-width:226px;font-size:10px}.hero-eyebrow{font-size:7px}.hero-actions .button{font-size:10px}.hero-actions>span{font-size:8px}.hero-art{right:-136px}.weekly-card{column-gap:12px;padding-left:15px;padding-right:15px}.week-day>div{width:21px;height:21px}.weekly-card h2{font-size:18px}.weekly-top .eyebrow{font-size:6px}.filter-tabs>button{padding:8px;font-size:8px}.card-title-row h3{font-size:14px}.exercise-card-body>p{font-size:9px}.card-art-badge{font-size:6px}.card-art-wrap .artwork{height:106px}.question-heading h2{font-size:14px}.hint-button{font-size:8px}.answer-button{font-size:11px}.answer-grid.many-answers .answer-button{font-size:10px}.audio-quality{font-size:4.5px!important}}.sidebar nav a,.sidebar nav a svg,.sidebar-utility button{color:#6d775f}.page-heading p,.dashboard-heading p,.session-header p,.section-heading p,.exercise-card-body>p,.listening-note p,.weekly-card>p,.daily-goal-label,.goal-message,.weekly-bottom .goal-message,.card-bottom,.card-bottom>span:last-child,.week-day,.filter-tabs>button,.at-your-pace,.exercise-count,.dashboard-footer,.dashboard-footer button,.welcome-line,.breadcrumbs,.sound-control,.sidebar-signoff,.anywhere-card p,.local-status{color:#758067}.stat-label,.stat-sub,.panel-header p,.skill-panel>p,.recent-panel>p,.skill-score,.skill-score small,.session-row>div>span,.chart-y,.chart-column,.chart-legend,.empty-sessions p,.reference-card p,.reference-notes>span,.library-callout p,.piano-panel p,.root-select,.library-note,.session-progress-label,.hint-note p,.answer-feedback p,.answer-feedback .listen-first,.exercise-footer,.completion>p,.review>p,.review-category,.completion-stats>div>span{color:#748164}.settings-section>p,.setting-label label>span,.setting-options button span,.info-dialog .dialog-content>p,.shortcut-row,.privacy-note,.install-instruction p{color:#738264}.listening-card .player-shortcut,.listening-card .player-shortcut kbd,.listening-card .audio-quality{color:#a6bd97}.listening-card>p{color:#b5c8a8}.card-art-badge{color:#536247;background:#ffffffa3}@media (width<=640px){.hint-button,.note-next,.weekly-bottom button,.sound-control,.sidebar-utility button{min-height:32px}.note-next{min-width:32px}.question-heading{gap:8px}.hint-button{font-size:9px}.hint-button svg{display:none}.weekly-card{overflow:hidden}.week-days{min-width:0}.week-day{flex:1;min-width:0}.week-day>div{width:22px;height:22px}.weekly-top .eyebrow{letter-spacing:.55px}.streak-pill{gap:4px;font-size:8px}}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}button:disabled{opacity:.48;cursor:default;transform:none!important}.sidebar .exercise-nav a{min-height:36px;padding-top:8px;padding-bottom:8px}.sidebar .nav-divider{margin-top:21px;margin-bottom:21px}.learning-dashboard-row{grid-template-columns:1fr 1fr;gap:20px;margin-top:21px;display:grid}.learning-prompt{text-align:left;background:#fbfcf6;border:1px solid #e0e7d5;border-radius:9px;align-items:center;gap:14px;padding:19px;transition:background .15s,border-color .15s;display:flex}.learning-prompt:hover{background:#f0f5e6;border-color:#b8cda1}.learning-prompt>span:nth-child(2){flex:1;min-width:0}.learning-prompt small{letter-spacing:1.1px;color:#7a8967;margin-bottom:6px;font-size:8px;display:block}.learning-prompt strong{letter-spacing:-.3px;font-size:14px;font-weight:600;line-height:1.5;display:block}.learning-prompt>span>span{color:#718062;margin-top:3px;font-size:10px;line-height:1.8;display:block}.learning-prompt>svg{color:#8ba16e}.prompt-icon{color:#819d60;background:#e9f0dd;border-radius:50%;flex-shrink:0;place-items:center;width:41px;height:41px;display:grid}.review-prompt{background:#f8f8f1}.review-prompt .prompt-icon{color:#a39968;background:#efeedf}.session-utilities{align-items:center;gap:22px;display:flex}.setup-view{max-width:900px;margin:0 auto;padding-bottom:40px}.setup-heading{align-items:center;gap:23px;margin:35px 0 30px;display:flex}.setup-symbol{color:#809c5f;background:#e6efda;border:1px solid #dbe7cd;border-radius:17px;flex-shrink:0;place-items:center;width:73px;height:73px;display:grid}.setup-symbol.peach{color:#b88c67;background:#f8e9de;border-color:#efdccf}.setup-symbol.lavender{color:#998bb1;background:#edeaf5;border-color:#e1dbee}.setup-heading h1{letter-spacing:-1.1px;margin:8px 0 9px;font-size:34px;line-height:1.25}.setup-heading p{color:#78866a;font-size:13px;line-height:1.8}.setup-panel,.lesson-theory{background:#fffffa;border:1px solid #e0e7d5;border-radius:12px;padding:29px}.setup-panel-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.setup-panel-heading h2{letter-spacing:-.4px;font-size:19px}.setup-panel .segmented button{padding:8px 13px;font-size:11px}.setup-description{color:#748364;max-width:650px;margin-top:14px;font-size:12px;line-height:1.9}.target-chips{flex-wrap:wrap;gap:9px;margin:23px 0 13px;display:flex}.target-chips>button{color:#778a61;background:#f8faf3;border:1px solid #dfe6d2;border-radius:6px;align-items:center;gap:7px;min-height:37px;padding:9px 12px;font-size:12px;display:flex}.target-chips>button.selected{color:#547d36;background:#e6f0d6;border-color:#abc78c}.target-chips>button>span{color:#95ae7a;width:13px}.setup-controls{border-top:1px solid #e8ecdf;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:27px;padding-top:25px;display:grid}.setup-controls>label{color:#6f825c;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;font-size:12px;display:flex}.setup-controls select{background-color:#f8faf2;width:100%;min-height:41px;padding:11px 32px 11px 12px;font-size:12px}.setup-controls input{width:100%;height:5px;margin-top:9px}.setup-controls label>span{float:right;color:#8a9c76;font-size:11px}.setup-start{justify-content:space-between;align-items:center;gap:20px;margin-top:25px;display:flex}.setup-start p{color:#879772;align-items:center;gap:7px;font-size:10px;line-height:1.8;display:flex}.setup-start .button{min-height:45px;padding:12px 20px;font-size:13px}.lesson-theory>.eyebrow{font-size:9px}.lesson-theory h2{letter-spacing:-.6px;max-width:660px;margin-top:13px;font-size:23px;line-height:1.5}.lesson-theory>p{color:#6f805f;max-width:720px;margin-top:17px;font-size:14px;line-height:1.95}.lesson-listen{color:#879e6d;background:#f0f5e6;border:1px solid #e1ebd2;border-radius:8px;align-items:flex-start;gap:15px;margin:24px 0;padding:20px;display:flex}.lesson-listen strong{color:#617d48;font-size:13px;font-weight:600}.lesson-listen p{color:#788e63;margin-top:7px;font-size:13px;line-height:1.9}.lesson-pass{color:#81956a;border-top:1px solid #e3e9d9;align-items:flex-start;gap:10px;margin-top:25px;padding-top:21px;font-size:11px;line-height:1.9;display:flex}.lesson-pass>svg{margin-top:2px}.path-overview{background:#eaf1dd;border:1px solid #dce8ca;border-radius:11px;justify-content:space-between;align-items:center;gap:30px;margin:32px 0 36px;padding:27px;display:flex}.path-overview>div{flex:1}.path-overview h2{letter-spacing:-.5px;margin:10px 0 7px;font-size:23px;line-height:1.5}.path-overview p{color:#748960;font-size:12px;line-height:1.8}.path-overview .session-track{background:#dce6cf;max-width:550px;height:5px;margin-top:19px}.path-chapter{margin-top:31px}.path-chapter-title{align-items:center;gap:12px;margin-bottom:17px;display:flex}.path-chapter-title>span{color:#98aa7c;border:1px solid #dfe6d1;border-radius:50%;place-items:center;width:29px;height:29px;font-size:10px;display:grid}.path-chapter h2{letter-spacing:-.4px;font-size:20px}.lesson-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.lesson-card{text-align:left;background:#fffefa;border:1px solid #e1e7d7;border-radius:9px;align-items:center;gap:14px;padding:21px;transition:border-color .15s,transform .15s;display:flex}.lesson-card:hover{border-color:#b6cba0;transform:translateY(-2px)}.lesson-state{color:#93ae71;background:#eaf2dd;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.lesson-card.passed .lesson-state{color:#6c914c;background:#dcebc8}.lesson-card.locked .lesson-state{color:#a5ae94;background:#f0f1e9}.lesson-card.locked{background:#f8f9f3}.lesson-card>svg{color:#a5b191}.lesson-card-copy{flex:1}.lesson-card-copy>strong{letter-spacing:-.2px;font-size:14px;font-weight:500;line-height:1.6;display:block}.lesson-card-copy>span{color:#7b8b69;margin-top:5px;font-size:11px;line-height:1.9;display:block}.lesson-card-copy>small{color:#93a27e;margin-top:10px;font-size:9px;line-height:1.8;display:block}.path-footnote{color:#90a475;background:#f0f4e8;border-radius:9px;align-items:flex-start;gap:13px;margin:30px 0 40px;padding:24px;display:flex}.path-footnote p{color:#7e9068;font-size:12px;line-height:1.9}.mixed-intro{text-align:center;max-width:670px;margin:0 auto;padding:0 0 60px}.mixed-intro>.text-button{width:max-content;margin-bottom:50px;display:flex}.mixed-symbol{color:#7f9c5d;background:#e7f0d9;border:1px solid #dce7cb;border-radius:27px;place-items:center;width:95px;height:95px;margin:0 auto 32px;display:grid;transform:rotate(-5deg)}.mixed-symbol>svg{transform:rotate(5deg)}.mixed-intro h1{letter-spacing:-1.2px;margin:13px 0 20px;font-size:38px;line-height:1.4}.mixed-intro>p{color:#7b8d68;max-width:575px;margin:0 auto;font-size:14px;line-height:2}.mixed-details{color:#8b9e74;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;margin:30px 0;display:flex}.mixed-details>span{align-items:center;gap:6px;font-size:11px;display:flex}.mixed-intro>.button{min-width:205px;min-height:46px;font-size:13px}.input-guidance{color:#758b61;margin-bottom:19px;font-size:12px;line-height:1.9}.melody-slots{align-items:stretch;gap:9px;margin-bottom:22px;display:flex}.melody-slots>button{color:#849c6b;opacity:1;background:#fffffb;border:1px solid #dce6ce;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:81px;display:flex}.melody-slots>button.current{background:#f8fcf1;border-color:#8caf65;box-shadow:0 0 0 2px #e6efd9}.melody-slots>button small{color:#a1b38d;font-size:9px}.melody-slots>button strong{font-size:19px;font-weight:500}.melody-slots>button.match{color:#72934e;background:#eaf3df;border-color:#b3cd98}.melody-slots>button.mismatch{color:#ae886e;background:#f6eae3;border-color:#ddc3b3}.melody-slots>button.mismatch strong{font-size:14px;text-decoration:line-through}.melody-slots>button>span{color:#7c985f;font-size:12px}.degree-keyboard{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.degree-keyboard>button{color:#6e8955;background:linear-gradient(#fffffa,#f5f8ed);border:1px solid #e0e7d5;border-bottom:3px solid #d7e2c8;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:66px;display:flex}.degree-keyboard>button:hover{background:#ecf3e0}.degree-keyboard>button:active{background:#dcebc6;border-bottom-width:1px}.degree-keyboard>button span{color:#a1b58b;font-size:9px}.degree-keyboard>button strong{font-size:15px;font-weight:500}.melody-actions{justify-content:space-between;align-items:center;gap:15px;margin-top:22px;display:flex}.melody-actions .button{font-size:12px}.melody-actions .text-button{font-size:11px}.correction-controls{border-top:1px solid #e4ead8;flex-wrap:wrap;align-items:center;gap:24px;padding:17px 0;display:flex}.correction-controls .text-button{font-size:11px}.response-beats{justify-content:center;align-items:center;gap:18px;margin:22px 0;display:flex}.response-beats>span{color:#acb99b;border:1px solid #e0e7d3;border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;transition:background .1s,color .1s;display:grid}.response-beats>span.lit{color:#547a35;background:#c7e3a4;border-color:#a2c47b;box-shadow:0 0 0 4px #edf5e3}.tap-controls{flex-direction:column;align-items:center;gap:21px;display:flex}.tap-controls>.button{font-size:12px}.tap-pad{color:#91aa73;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#f1f6e8;border:1px dashed #cbd9b8;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:9px;width:100%;min-height:154px;display:flex}.tap-pad.tapping{color:#71974f;background:#e9f3da;border:1px solid #acc78d;box-shadow:0 3px #d1e2bb}.tap-pad:active:not(:disabled){background:#d1e6b4;transform:translateY(2px)}.tap-pad strong{letter-spacing:-.4px;font-size:18px;font-weight:500}.tap-pad>span{color:#93a47e;align-items:center;gap:6px;font-size:10px;display:flex}.timing-window{color:#94a680;text-align:center;margin:17px 0 0;font-size:10px;line-height:1.8}.rhythm-result{background:#fcfef7;border:1px solid #e1e8d5;border-radius:9px;gap:17px;padding:18px;display:flex}.rhythm-result svg{flex:1;width:100%;min-width:0}.timing-labels{color:#93a87b;white-space:nowrap;flex-direction:column;justify-content:space-around;gap:15px;font-size:10px;display:flex}.timing-summary{color:#849b6c;text-align:center;margin-top:15px;font-size:11px;line-height:1.8}.placement-suggestion,.review-overview{text-align:left;background:#edf4e2;border:1px solid #dde7ce;border-radius:10px;align-items:center;gap:20px;margin:25px 0;padding:25px;display:flex}.placement-suggestion>svg{color:#8daa6f;flex-shrink:0}.placement-suggestion>div,.review-overview>div{flex:1}.placement-suggestion h3{color:#6c8853;font-size:15px;font-weight:500;line-height:1.6}.placement-suggestion p{color:#8a9d75;margin-top:7px;font-size:11px;line-height:1.9}.placement-suggestion .button{font-size:11px}.review-overview{margin:0 0 24px}.review-overview-icon{color:#8ca86a;background:#e0eccf;border-radius:50%;flex-shrink:0;place-items:center;width:45px;height:45px;display:grid}.review-overview h2{letter-spacing:-.4px;margin-top:7px;font-size:20px;line-height:1.5}.review-overview p{color:#879c70;margin-top:6px;font-size:11px;line-height:1.9}.review-overview .button{font-size:12px}.memory-panel{background:#fdfef9;border:1px solid #e1e7d5;border-radius:10px;margin-top:24px;padding:25px}.memory-table{margin-top:24px}.memory-table-heading,.memory-row{color:#8ba174;border-top:1px solid #e6ebdd;grid-template-columns:minmax(0,1.4fr) .7fr 1fr;align-items:center;gap:15px;padding:16px 0;font-size:11px;display:grid}.memory-table-heading{color:#a2b18e;letter-spacing:.3px;border-top:0;padding:0 0 14px;font-size:9px}.memory-row strong{color:#758c60;font-size:12px;font-weight:500;line-height:1.7;display:block}.memory-row small{color:#a0af8d;margin-top:4px;font-size:9px;display:block}.memory-state{color:#a49467;background:#f0eddf;border-radius:4px;width:max-content;padding:5px 7px;font-size:10px}.memory-state.growing{color:#92a975;background:#e9f0dd}.memory-state.retained{color:#7c9e5c;background:#deedcd}.memory-footnote{color:#93a57d;border-top:1px solid #e4ebda;padding-top:15px;font-size:10px;line-height:1.8}.settings-data>div{flex-wrap:wrap}@media (width<=1100px){.learning-dashboard-row{grid-template-columns:1fr}.learning-prompt{padding:17px 20px}.lesson-grid{grid-template-columns:1fr}.lesson-card{padding:20px}.setup-heading h1{font-size:30px}.setup-heading p{font-size:12px}.setup-symbol{width:63px;height:63px}.setup-panel,.lesson-theory{padding:25px}.setup-start p{font-size:9px}.setup-start .button{font-size:12px}.path-overview{padding:23px}.path-overview h2{font-size:20px}.path-overview .button{font-size:11px}.placement-suggestion{flex-wrap:wrap}.placement-suggestion .button{margin-left:43px}.review-overview{gap:15px;padding:21px}.review-overview h2{font-size:17px}.review-overview .button{gap:10px;padding:10px 12px;font-size:10px}.review-overview p{font-size:10px}.review-overview-icon{width:37px;height:37px}.review-overview-icon svg{width:23px}.melody-actions{flex-wrap:wrap;gap:14px}.melody-actions .button{margin-left:auto}.melody-slots{gap:6px}.melody-slots>button strong{font-size:16px}.melody-slots>button{min-height:74px}.degree-keyboard{gap:6px}.degree-keyboard>button strong{font-size:13px}.memory-row{font-size:10px}.memory-row strong{font-size:11px}}@media (width<=800px){.setup-heading{gap:17px;margin-top:30px}.setup-heading h1{font-size:28px}.setup-heading p{font-size:11px}.setup-panel,.lesson-theory{padding:22px}.setup-panel-heading{flex-wrap:wrap;gap:15px}.target-chips{gap:7px}.target-chips>button{min-height:35px;padding:8px 10px;font-size:11px}.setup-panel .segmented button{padding:7px 11px;font-size:10px}.setup-controls{gap:20px}.setup-controls>label{font-size:11px}.setup-controls select{padding:10px 27px 10px 10px;font-size:10px}.setup-start{flex-wrap:wrap}.setup-start .button{margin-left:auto}.path-overview{flex-wrap:wrap;gap:20px}.path-overview>div{flex-basis:100%}.path-overview .button{margin-left:auto}.path-chapter h2{font-size:19px}.lesson-theory>p{font-size:13px}.lesson-theory h2{font-size:21px}.lesson-listen{gap:12px;padding:17px}.lesson-listen p{font-size:12px}.lesson-pass{font-size:10px}.review-overview{flex-wrap:wrap}.review-overview>div{flex-basis:calc(100% - 60px)}.review-overview .button{margin-left:52px}.session-utilities{gap:15px}.mixed-intro h1{font-size:33px}.mixed-intro>p{font-size:13px}.mixed-details>span{font-size:10px}.correction-controls{gap:17px}.correction-controls .text-button{font-size:10px}.memory-panel{padding:21px}.memory-table-heading,.memory-row{grid-template-columns:minmax(0,1.15fr) .7fr 1fr;gap:10px}.memory-table-heading{font-size:8px}.memory-state,.memory-row>span:last-child{font-size:9px}.input-guidance{font-size:11px}}@media (width<=640px){.learning-dashboard-row{gap:13px;margin-top:16px}.learning-prompt{gap:12px;padding:17px 15px}.learning-prompt strong{font-size:14px}.learning-prompt small{letter-spacing:1.1px;font-size:7px}.learning-prompt>span>span{font-size:10px}.prompt-icon{width:35px;height:35px}.prompt-icon svg{width:22px}.setup-heading{align-items:flex-start;gap:15px;margin-top:28px;margin-bottom:24px}.setup-heading h1{margin-top:8px;font-size:29px}.setup-heading .eyebrow{letter-spacing:1.2px;font-size:7px}.setup-heading p{font-size:11px;line-height:1.8}.setup-symbol{border-radius:12px;width:51px;height:51px;margin-top:5px}.setup-symbol svg{width:24px}.setup-panel,.lesson-theory{padding:22px 18px}.setup-panel-heading h2{font-size:19px}.setup-panel .segmented button{font-size:10px}.setup-description{font-size:11px;line-height:1.9}.target-chips{gap:8px;margin-top:20px}.target-chips>button{min-height:38px;padding:8px 10px;font-size:11px}.setup-controls{gap:22px 15px}.setup-controls>label{font-size:11px}.setup-controls select{max-width:100%;min-height:42px;font-size:10px}.setup-start{gap:17px;margin-top:22px}.setup-start p{max-width:280px;font-size:10px}.setup-start .button{width:100%;min-height:45px;font-size:12px}.setup-view .exercise-topline .eyebrow{letter-spacing:1.1px;font-size:7px}.lesson-theory>.eyebrow{letter-spacing:1px;font-size:8px}.lesson-theory h2{font-size:21px;line-height:1.5}.lesson-theory>p{font-size:13px;line-height:1.95}.lesson-listen{gap:11px;padding:16px 13px}.lesson-listen>svg{width:18px}.lesson-listen strong,.lesson-listen p{font-size:12px}.lesson-pass{gap:8px;font-size:10px}.path-overview{gap:20px;margin-top:25px;margin-bottom:30px;padding:22px 19px}.path-overview .eyebrow{font-size:8px}.path-overview h2{margin-top:11px;font-size:21px}.path-overview p{font-size:12px}.path-overview>.button{width:100%;min-height:43px;font-size:12px}.curriculum-view .page-heading{flex-wrap:wrap}.curriculum-view .page-heading>.button{min-height:40px;margin-top:3px;font-size:11px}.path-chapter-title{gap:10px}.path-chapter h2{font-size:19px}.lesson-grid{gap:12px}.lesson-card{gap:12px;padding:18px 14px}.lesson-card-copy>strong{font-size:14px}.lesson-card-copy>span{font-size:11px}.lesson-card-copy>small{font-size:9px}.lesson-state{width:30px;height:30px}.lesson-state svg{width:16px}.path-footnote{gap:11px;padding:19px 16px}.path-footnote p{font-size:11px}.path-footnote>svg{width:17px}.mixed-intro>.text-button{margin-bottom:38px}.mixed-intro h1{font-size:33px}.mixed-intro>p{font-size:13px;line-height:1.95}.mixed-intro .eyebrow{font-size:8px}.mixed-details{gap:15px;margin-top:25px}.mixed-details>span{font-size:10px}.mixed-intro>.button{width:100%;font-size:12px}.mixed-symbol{border-radius:23px;width:83px;height:83px}.mixed-symbol>svg{width:34px}.session-utilities{gap:14px}.session-utilities .text-button{font-size:9px}.session-utilities .text-button svg{width:14px}.input-guidance{font-size:11px;line-height:1.9}.melody-slots{gap:5px;margin-bottom:19px}.melody-slots>button{border-radius:6px;gap:6px;min-height:69px}.melody-slots>button strong{font-size:15px}.melody-slots>button small{font-size:8px}.melody-slots>button.mismatch strong{font-size:11px}.melody-slots>button>span{font-size:10px}.degree-keyboard{gap:5px}.degree-keyboard>button{gap:8px;min-height:59px}.degree-keyboard>button strong{font-size:12px}.degree-keyboard>button span{font-size:8px}.melody-actions{gap:17px;margin-top:20px}.melody-actions .text-button{font-size:10px}.melody-actions .button{width:100%;min-height:43px;font-size:12px}.correction-controls{flex-wrap:wrap;gap:17px;padding-top:19px;padding-bottom:19px}.correction-controls .text-button{font-size:10px}.response-beats{gap:17px}.response-beats>span{width:29px;height:29px;font-size:11px}.tap-controls>.button{width:100%;min-height:42px;font-size:11px}.tap-pad{min-height:155px}.tap-pad strong{font-size:19px}.tap-pad>span{font-size:10px}.timing-window{font-size:9px;line-height:1.9}.timing-summary{font-size:10px;line-height:1.9}.rhythm-result{gap:12px;padding:15px 11px}.timing-labels{font-size:9px}.placement-suggestion{gap:13px;padding:20px 17px}.placement-suggestion>div{flex-basis:calc(100% - 40px)}.placement-suggestion h3{font-size:14px}.placement-suggestion p{font-size:11px}.placement-suggestion .button{width:100%;margin-left:0;font-size:11px}.review-overview{gap:15px;padding:22px 18px}.review-overview h2{font-size:19px;line-height:1.5}.review-overview .eyebrow{font-size:7px}.review-overview p{font-size:10px;line-height:1.9}.review-overview .button{width:100%;min-height:42px;margin-left:0;font-size:11px}.memory-panel{padding:22px 17px}.memory-panel .panel-header h2{font-size:17px}.memory-panel .panel-header p{font-size:10px;line-height:1.9}.memory-table{margin-top:20px}.memory-table-heading,.memory-row{grid-template-columns:minmax(0,1.1fr) .7fr .9fr;gap:10px}.memory-row strong{font-size:11px;line-height:1.7}.memory-row small{font-size:8px;line-height:1.7}.memory-state{padding:5px;font-size:8px}.memory-row>span:last-child{font-size:9px;line-height:1.8}.memory-footnote{font-size:9px;line-height:1.9}.settings-data>div{gap:16px}.settings-data .text-button{font-size:10px}}@media (prefers-reduced-motion:reduce){.response-beats>span{transition:none}.lesson-card:hover{transform:none}}.voice-practice{background:#f4f8ed;border:1px solid #dfe7d3;border-radius:9px;margin:0 0 21px}.voice-practice>summary{color:#7f9667;cursor:pointer;align-items:center;gap:10px;padding:16px 19px;font-size:12px;list-style:none;display:flex}.voice-practice>summary::-webkit-details-marker{display:none}.voice-practice>summary>span{flex:1}.voice-practice[open]>summary{border-bottom:1px solid #e1e9d5}.voice-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.voice-heading h3{letter-spacing:-.2px;font-size:15px;font-weight:500}.voice-heading p{color:#7b9066;margin-top:7px;font-size:11px;line-height:1.9}.voice-heading>.text-button{font-size:11px}.pitch-meter{background:#fbfdf5;border:1px solid #e0e8d3;border-radius:8px;margin:23px 0 20px;padding:18px}.pitch-markers{color:#97aa82;justify-content:space-between;align-items:center;gap:15px;font-size:9px;display:flex}.pitch-markers strong{color:#8a9f70;font-size:12px;font-weight:500}.pitch-track{background:linear-gradient(90deg,#ebdec9,#e1eccf 30%,#bfdba2 50%,#e1eccf 70%,#ebdec9);border-radius:5px;height:7px;margin:19px 0 15px;position:relative}.pitch-center{background:#86a965;width:1px;height:15px;position:absolute;top:-4px;left:50%}.pitch-needle{background:#759b50;border:2px solid #f6faed;border-radius:4px;width:8px;height:18px;margin-left:-4px;transition:left .12s;position:absolute;top:-5px;box-shadow:0 1px 4px #445c3626}.pitch-meter>p{text-align:center;color:#91a47b;font-size:10px;line-height:1.8}.voice-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:17px;display:flex}.voice-actions>label{color:#859b6d;align-items:center;gap:7px;font-size:10px;line-height:1.7;display:flex}.voice-actions input{accent-color:#7b9d5b}.voice-actions>.button{font-size:11px}.voice-privacy{color:#91a67b;margin-top:19px;font-size:9px;line-height:1.9}.voice-privacy svg{vertical-align:middle;margin-right:3px}@media (width<=640px){.voice-practice>summary{gap:8px;padding:16px;font-size:11px}.voice-content{padding:19px 15px}.voice-heading{flex-wrap:wrap}.voice-heading h3{font-size:14px}.voice-heading p{font-size:11px}.voice-heading>.text-button{font-size:10px}.pitch-markers{font-size:8px}.pitch-markers strong{font-size:11px}.pitch-meter{padding:16px 13px}.voice-actions>.button{width:100%;min-height:41px;font-size:11px}.voice-actions>label{font-size:10px}.voice-privacy{font-size:9px}}.exercise-card{flex-direction:column;align-items:stretch;display:flex}.card-art-wrap{flex-shrink:0;width:100%}.exercise-card-body{flex-direction:column;flex:1;display:flex}.exercise-card-body>p{margin-bottom:17px}.card-bottom{margin-top:auto}.card-go{flex-shrink:0}.nav-label,.sidebar-eyebrow,.sidebar-signoff,.breadcrumbs,.sound-control,.local-status,.welcome-line,.eyebrow,.weekly-card>p,.daily-goal-label,.daily-goal-label small,.goal-message,.weekly-bottom .goal-message,.week-day,.section-heading p,.filter-tabs>button,.at-your-pace,.exercise-count,.exercise-card-body>p,.card-bottom,.card-bottom>span:last-child,.listening-note p,.dashboard-footer,.dashboard-footer button,.sidebar-utility button,.anywhere-card p{color:#667554}.setup-heading p,.setup-description,.setup-controls>label,.setup-controls label>span,.setup-start p,.target-chips>button,.lesson-theory>p,.lesson-listen p,.lesson-pass,.path-overview p,.lesson-card-copy>span,.lesson-card-copy>small,.path-footnote p,.mixed-intro>p,.mixed-details,.input-guidance,.correction-controls .text-button,.timing-summary,.timing-window,.timing-labels,.placement-suggestion p,.review-overview p,.memory-row>span:last-child,.memory-row small,.memory-table-heading,.memory-footnote,.learning-prompt>span>span,.learning-prompt small{color:#647354}.stat-label,.stat-sub,.panel-header p,.skill-panel>p,.recent-panel>p,.skill-score,.skill-score small,.session-row>div>span,.chart-y,.chart-column,.chart-legend,.empty-sessions p,.reference-card p,.reference-notes>span,.library-callout p,.piano-panel p,.root-select,.library-note,.session-progress-label,.hint-note p,.answer-feedback p,.answer-feedback .listen-first,.exercise-footer,.completion>p,.review>p,.review-category,.completion-stats>div>span,.hint-button{color:#667554}.settings-section>p,.setting-label label>span,.setting-options button span,.info-dialog .dialog-content>p,.shortcut-row,.privacy-note,.install-instruction p,.voice-heading p,.voice-privacy,.voice-actions>label,.pitch-meter>p,.pitch-markers,.tap-pad>span{color:#647354}.memory-state{color:#77613b}.memory-state.growing{color:#5d7544}.memory-state.retained{color:#4c6f33}.pitch-markers strong{color:#647c4f}.pitch-meter.in-tune .pitch-markers strong{color:#416929}.voice-practice>summary{color:#60794b}.target-chips>button.selected{color:#4c722f}.lesson-card-copy>strong,.skill-row strong,.session-row strong,.memory-row strong{color:#5f724e}.resume-banner{background:#edf3e1;border:1px solid #dce7ca;border-radius:10px;align-items:center;gap:17px;margin:0 0 23px;padding:20px 22px;display:flex}.resume-icon{color:#7b985b;background:#dfeaca;border-radius:50%;flex-shrink:0;place-items:center;width:39px;height:39px;display:grid}.resume-banner>div{flex:1}.resume-banner h2{letter-spacing:-.3px;margin-top:6px;font-size:17px}.resume-banner p{color:#697c55;margin-top:5px;font-size:11px;line-height:1.8}.resume-banner .button{font-size:12px}.resume-banner .icon-button{color:#7c9063}.session-paused{text-align:center;background:#fcfef7;border:1px solid #e0e8d4;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:440px;margin:10px 0 25px;padding:35px 20px;display:flex}.pause-symbol{color:#87a666;background:#e5efd6;border-radius:24px;place-items:center;width:82px;height:82px;margin-bottom:27px;display:grid}.session-paused h2{letter-spacing:-.9px;margin:13px 0 12px;font-size:29px;line-height:1.5}.session-paused>p{color:#728660;margin-bottom:26px;font-size:12px;line-height:1.9}.session-paused>.button{min-height:45px;font-size:13px}.session-paused>.text-button{margin-top:20px;font-size:11px}.paused-content{display:none}@media (width<=800px){.resume-banner{flex-wrap:wrap;gap:13px;padding:20px}.resume-banner>div{flex-basis:calc(100% - 65px)}.resume-banner .button{margin-left:52px}.resume-banner .icon-button{margin-left:auto}.session-utilities{gap:13px}.session-utilities .text-button{font-size:9px}}@media (width<=640px){.resume-banner{gap:13px;margin-bottom:18px;padding:19px 16px}.resume-banner h2{font-size:16px}.resume-banner p{font-size:10px}.resume-banner .eyebrow{font-size:7px}.resume-banner .button{flex:1;min-height:41px;margin-left:0;font-size:11px}.resume-banner .icon-button{min-height:35px}.resume-banner .resume-icon{width:34px;height:34px}.session-paused{min-height:400px;padding:30px 19px}.session-paused h2{font-size:26px;line-height:1.4}.session-paused>p{font-size:11px}.session-paused>.button{min-height:44px;font-size:12px}.session-paused .eyebrow{font-size:8px}.session-utilities{gap:11px}.session-utilities .text-button{gap:4px;font-size:8px}.session-utilities .text-button svg{width:12px}.exercise-topline>.text-button{font-size:9px}}.sidebar nav a,.sidebar .exercise-nav a{min-height:44px;font-size:14px}.sidebar-eyebrow{white-space:normal;letter-spacing:1px;max-width:100%;line-height:1.8}.sidebar-utility button,.sound-control,.icon-button{min-height:44px}.icon-button{min-width:44px}.eyebrow,.welcome-line,.hero-eyebrow,.sidebar-eyebrow,.nav-label,.weekly-top .eyebrow,.learning-prompt small,.card-art-badge{font-size:10px;line-height:1.7}.page-heading p,.session-header p,.section-heading p,.setup-heading p,.setup-description,.lesson-theory>p,.lesson-listen p,.lesson-instruction,.reference-card p,.learning-prompt>span>span,.answer-feedback p,.input-guidance,.voice-heading p,.mixed-intro>p{font-size:14px;line-height:1.8}.exercise-card-body>p,.weekly-card>p,.listening-note p,.anywhere-card p,.setup-start p,.lesson-pass,.path-overview p,.lesson-card p,.memory-footnote,.voice-privacy,.voice-actions>label,.timing-window,.listen-first,.session-paused>p,.resume-banner p,.settings-section>p{font-size:12px;line-height:1.8}.filter-tabs>button,.text-button,.hint-button,.target-chips>button,.setup-controls>label,.setting-label>label,.setting-label label>span{font-size:13px}.filter-tabs>button,.target-chips>button,.text-button,.button,.setup-controls select,.setting-label select,.degree-keyboard>button{min-height:44px}.button,.answer-button,.answer-grid.many-answers .answer-button{font-size:14px}.answer-button{min-height:58px}.card-bottom,.card-bottom>span:last-child,.hero-footnote,.hero-actions>span,.goal-message,.weekly-bottom .goal-message,.daily-goal-label,.daily-goal-label small,.week-day,.session-header .eyebrow,.session-time,.session-progress-label,.exercise-footer,.listening-card>p,.player-shortcut,.memory-row small{font-size:11px;line-height:1.7}.audio-quality{font-size:10px!important}.question-heading h2{font-size:21px}.question-heading{align-items:center;gap:18px}.hint-button{flex-shrink:0}.session-utilities{flex-wrap:wrap;justify-content:flex-end;gap:8px 15px}.session-utilities .text-button{min-height:40px;font-size:12px}.exercise-topline>.text-button{font-size:13px}.voice-heading>.text-button,.voice-actions>.button{font-size:12px}.setup-controls input[type=range],.volume-row input{min-height:36px}.filter-tabs{flex-wrap:wrap}.setup-start,.exercise-topline{flex-wrap:wrap;gap:15px}.pitch-markers{font-size:11px}.pitch-markers strong{font-size:13px}.pitch-meter>p,.voice-practice>summary{font-size:12px}.settings-data .text-button{font-size:13px}.reference-card h3{font-size:18px}.chart-bar-track{position:relative}.chart-bar:focus-visible{outline-offset:4px;outline:2px solid #426b39}.chart-bar:focus-visible .bar-tooltip{opacity:1;visibility:visible}.sidebar-backdrop{touch-action:none}.activity-details{border-top:1px solid #e0e7d5;margin-top:18px;padding-top:14px}.activity-details summary{cursor:pointer;color:#46613b;min-height:36px;font-size:13px;line-height:36px}.activity-details table{border-collapse:collapse;width:100%;margin-top:10px;font-size:12px}.activity-details th,.activity-details td{text-align:right;border-bottom:1px solid #e7ecdf;padding:11px 8px;line-height:1.6}.activity-details th:first-child{text-align:left}.activity-details th{font-weight:600}.update-banner{z-index:70;color:#fafff3;background:#214d3b;border:1px solid #7fa16b;border-radius:10px;align-items:center;gap:17px;max-width:calc(100vw - 32px);padding:15px 18px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #16302430}.update-banner p{font-size:13px;line-height:1.6}.update-banner button{flex-shrink:0;font-size:12px}@media (width<=1050px){.sidebar nav a,.sidebar .exercise-nav a{min-height:44px;font-size:13px}.exercise-card-body>p{font-size:12px;line-height:1.8}.hero-copy p{font-size:13px;line-height:1.8}}@media (width<=640px){.sidebar nav a,.sidebar .exercise-nav a{min-height:46px;font-size:14px}.dashboard-heading p,.section-heading p{font-size:13px}.welcome-line,.hero-eyebrow,.weekly-top .eyebrow{letter-spacing:1px;font-size:9px}.hero-copy p{max-width:250px;font-size:13px}.hero-actions .button{min-height:46px;font-size:13px}.hero-footnote{font-size:10px}.weekly-card{padding:23px;display:block}.weekly-card h2{white-space:normal;margin:9px 0 6px;font-size:24px}.weekly-card>p{max-width:none;font-size:12px}.weekly-card .week-days{margin:23px 0}.week-day{gap:10px;font-size:12px}.week-day>div{width:29px;height:29px}.daily-goal-label,.daily-goal-label small,.weekly-bottom .goal-message{font-size:12px}.daily-goal-label strong{font-size:14px}.card-title-row h3{font-size:17px;line-height:1.4}.exercise-card-body{padding:16px 12px}.exercise-card-body>p{font-size:12px;line-height:1.8}.card-art-badge{font-size:9px}.card-bottom{font-size:10px}.card-bottom>span:last-child{display:none}.filter-tabs>button{min-height:44px;padding:10px 12px;font-size:12px}.question-heading h2{font-size:19px;line-height:1.5}.hint-button{min-height:44px;font-size:12px}.answer-button,.answer-grid.many-answers .answer-button{min-height:56px;font-size:14px}.answer-feedback h3{font-size:15px;line-height:1.6}.answer-feedback p{font-size:13px}.session-utilities .text-button{font-size:12px}.exercise-topline{align-items:flex-start}.exercise-topline>.text-button{font-size:12px}.exercise-footer{flex-wrap:wrap;gap:12px;font-size:11px;line-height:1.8}.listening-card>p{font-size:12px;line-height:1.8}.listening-top{flex-wrap:wrap;gap:10px}.audio-quality{font-size:9px!important}.learning-prompt{padding:19px 16px}.learning-prompt small{font-size:10px}.learning-prompt strong{font-size:16px}.learning-prompt>span>span{font-size:12px}.resume-banner .eyebrow,.session-paused .eyebrow{font-size:10px}.resume-banner p,.session-paused>p{font-size:12px}.voice-privacy,.voice-actions>label{font-size:11px}.sound-control{font-size:12px!important}.breadcrumbs{font-size:11px}.update-banner{flex-wrap:wrap;gap:12px;width:calc(100vw - 24px);bottom:12px}}@media (width<=370px){.exercise-cards{grid-template-columns:1fr}.card-title-row h3{font-size:20px}.card-art-wrap .artwork{height:150px}.exercise-card-body>p{font-size:13px}.question-heading{flex-wrap:wrap;gap:4px}.question-heading h2{font-size:18px}}:root{--sidebar:208px}.sidebar{padding:24px 16px 16px}.wordmark{font-size:29px}.sidebar-eyebrow{margin-top:8px;font-size:9px}.sidebar-main{margin-top:24px}.sidebar nav a,.sidebar .exercise-nav a{gap:10px;min-height:37px;padding:8px 10px;font-size:13px}.sidebar .nav-divider{margin:16px 8px}.nav-label{margin:0 0 8px 10px;font-size:10px}.sidebar-bottom{padding-top:18px}.anywhere-card{padding:12px}.anywhere-illustration,.anywhere-card>p,.sidebar-signoff{display:none}.anywhere-card h3{margin:0;font-size:12px}.anywhere-card button{min-height:32px;margin-top:6px}.sidebar-utility{padding:10px 8px 0}.nav-new{display:none}.topbar{height:56px;padding:0 24px}.topbar-right{gap:16px}main{max-width:1660px;min-height:calc(100dvh - 56px);padding:22px 24px 0}.page-heading{margin-bottom:18px}.page-heading h1,.dashboard-heading h1{letter-spacing:-.9px;margin:0 0 5px;font-size:28px;line-height:1.25}.page-heading p,.dashboard-heading p{font-size:13px;line-height:1.6}.streak-pill{margin-top:0;padding:7px 10px}.dashboard-feature-row{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:14px}.daily-hero{border-radius:9px;min-height:150px}.hero-copy{padding:18px 20px}.hero-copy h2{letter-spacing:-.6px;margin:5px 0 0;font-size:26px;line-height:1.2}.hero-copy p{max-width:300px;margin-top:6px;font-size:12px;line-height:1.6}.hero-eyebrow{letter-spacing:1.2px;font-size:9px;line-height:1.4}.hero-actions{gap:13px;margin-top:12px}.hero-actions .button{min-height:40px;padding:9px 13px;font-size:12px}.hero-actions>span{font-size:10px;display:flex}.hero-art{opacity:.6;width:175px;height:175px;right:-16px}.weekly-card{border-radius:9px;min-height:0;padding:17px 18px;display:block}.weekly-top .eyebrow{font-size:9px}.tiny-leaf{display:none}.weekly-card .week-days{gap:8px;margin:11px 0 12px;display:flex}.week-day{gap:5px;font-size:10px}.week-day>div{width:23px;height:23px}.daily-goal-label{margin:0;font-size:11px}.daily-goal-label strong{font-size:13px}.goal-track{margin:8px 0 0}.weekly-bottom{display:none}.learning-dashboard-row{gap:14px;margin-top:14px}.learning-prompt{border-radius:8px;gap:11px;padding:12px 14px}.learning-prompt .prompt-icon{flex-shrink:0;width:32px;height:32px}.learning-prompt .prompt-icon svg{width:22px;height:22px}.learning-prompt small{margin-bottom:3px;font-size:9px;line-height:1.4}.learning-prompt strong{font-size:14px;line-height:1.4}.learning-prompt>span>span{font-size:11px;line-height:1.5}.exercises-section{margin-top:22px}.section-heading{align-items:center;margin-bottom:10px}.section-heading h2{font-size:21px;line-height:1.3}.exercise-filter-row{margin-bottom:12px}.filter-tabs>button{min-height:36px;padding:7px 12px;font-size:12px}.exercise-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.exercise-card{border-radius:8px;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;min-height:116px;padding:16px;display:grid}.exercise-card:hover{transform:translateY(-2px)}.exercise-icon{color:#49704a;background:#e7efdf;border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.exercise-icon.peach{color:#a46642;background:#f7e7dc}.exercise-icon.lavender{color:#79649b;background:#eeebf7}.exercise-icon.butter{color:#9c812c;background:#f8efd1}.exercise-icon.rose{color:#a35771;background:#f5e5eb}.exercise-icon.blue{color:#507ca0;background:#e4edf6}.exercise-card-body{min-width:0;padding:0}.card-title-row{gap:6px}.card-title-row h3{letter-spacing:-.4px;font-size:17px;line-height:1.35}.card-go{width:18px;height:22px;box-shadow:none;background:0 0;border:0}.card-go svg{width:16px;height:16px}.exercise-card-body>p{margin:5px 0 9px;font-size:12px;line-height:1.55}.card-bottom{flex-wrap:wrap;gap:8px;padding-top:8px;font-size:10px;line-height:1.4}.card-bottom>span:last-child{font-size:10px;display:inline}.listening-note{gap:13px;margin-top:18px;padding:14px 16px}.listening-note h3{margin:3px 0;font-size:13px}.listening-note p{font-size:12px;line-height:1.6}.note-symbol{width:34px;height:34px}.listening-note .eyebrow{display:none}.dashboard-footer{padding:16px 0 18px}.dashboard-footer,.dashboard-footer button{font-size:10px}.resume-banner{gap:12px;margin-bottom:14px;padding:13px 16px}.resume-banner h2{margin-top:2px;font-size:16px}.resume-banner p{margin-top:2px;font-size:11px;line-height:1.5}.resume-banner .eyebrow{font-size:9px}.resume-banner .button{min-height:40px;font-size:12px}.exercise-view,.setup-view{max-width:1280px;margin:0 auto;padding-bottom:20px}.exercise-topline{gap:8px;margin:0 0 14px}.exercise-topline .text-button{min-height:36px}.session-header{margin-bottom:15px}.session-header h1{margin:4px 0;font-size:29px;line-height:1.25}.session-header p{font-size:12px;line-height:1.5}.session-header .eyebrow{font-size:9px}.session-progress{margin-bottom:18px}.session-progress-label{margin-bottom:7px;font-size:11px}.listening-and-answer{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:start;gap:20px;display:grid}.listening-column,.answer-column{min-width:0}.listening-card{border-radius:9px;min-height:220px;padding:18px}.listening-top{flex-wrap:wrap;gap:6px;font-size:10px}.listening-card .waveform{height:72px;margin:13px 0 3px}.play-button{width:62px;height:62px}.listening-card h2{margin:9px 0 5px;font-size:19px}.listening-card>p{font-size:11px;line-height:1.6}.player-shortcut{margin-top:10px;font-size:10px}.question-heading{gap:12px;margin:0 0 12px}.question-heading h2{font-size:20px;line-height:1.4}.hint-button{min-height:36px;font-size:12px}.answer-grid,.answer-grid.many-answers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.answer-button,.answer-grid.many-answers .answer-button{gap:10px;min-height:48px;padding:10px 12px;font-size:14px}.answer-feedback{gap:12px;min-height:0;margin:16px 0 10px;padding:14px 0}.answer-feedback h3{font-size:14px;line-height:1.5}.answer-feedback p{font-size:12px;line-height:1.6}.correction-controls{flex-wrap:wrap;gap:16px;margin:0 0 12px}.correction-controls .text-button{min-height:36px;font-size:12px}.exercise-view .pitch-illustration{margin-bottom:14px;padding:14px 18px 11px}.exercise-view .pitch-illustration svg{max-width:500px;max-height:130px;margin-top:5px}.app-shell :is(.exercise-view,.library-view) .pitch-illustration{grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);align-items:center;column-gap:20px;margin-bottom:14px;padding:12px 16px;display:grid}.app-shell :is(.exercise-view,.library-view) .pitch-illustration figcaption{flex-direction:column;grid-area:1/1;align-items:flex-start;gap:4px}.app-shell :is(.exercise-view,.library-view) .pitch-illustration svg{grid-area:1/2/3;max-width:540px;max-height:110px;margin:0 auto}.app-shell :is(.exercise-view,.library-view) .staff-footnote{text-align:left;grid-area:2/1;margin-top:6px}.exercise-footer{gap:12px;padding:14px 0}.voice-practice{margin-bottom:14px}.voice-practice>summary{padding:12px 16px}.voice-content{padding:16px}.setup-heading{gap:14px;margin-bottom:20px}.setup-heading h1{font-size:29px}.setup-panel{padding:20px}.setup-controls{gap:18px 22px;margin-top:20px}.setup-start{margin-top:18px}.target-chips{gap:8px}.target-chips>button{min-height:38px}.mixed-intro{text-align:left;max-width:760px;margin:0;padding-bottom:30px}.mixed-intro>.text-button{margin-bottom:20px}.mixed-symbol{border-radius:16px;width:60px;height:60px;margin:0 0 18px}.mixed-symbol svg{width:30px;height:30px}.mixed-intro h1{margin:8px 0 12px;font-size:30px}.mixed-intro>p{max-width:none;font-size:14px;line-height:1.8}.mixed-details{justify-content:flex-start;gap:20px;margin:20px 0}.mixed-intro>.button{margin-top:6px}@media (width>=1500px){.exercise-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1100px){.hero-art{opacity:.35;right:-65px}.hero-copy{padding:17px}.hero-copy p{max-width:245px}.exercise-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-card{min-height:110px;padding:14px}.dashboard-feature-row{grid-template-columns:minmax(0,1.2fr) minmax(250px,1fr)}}@media (width<=960px){.listening-and-answer{grid-template-columns:1fr;gap:16px}.listening-card{min-height:175px;padding:15px 18px}.listening-card .waveform{height:48px;margin:6px 0 0}.listening-card h2{margin-top:6px;font-size:18px}.player-shortcut{margin-top:5px}.play-button{width:54px;height:54px}.dashboard-feature-row{grid-template-columns:1fr}.daily-hero{min-height:136px}.hero-art{opacity:.5;right:0}.weekly-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5px 18px;padding:14px 18px;display:grid}.weekly-top{grid-area:1/1}.weekly-card .week-days{grid-area:1/2/3;margin:0}.daily-goal-label{grid-area:2/1}.goal-track{grid-area:3/1/auto/-1;margin-top:5px}.learning-dashboard-row{gap:10px}.learning-prompt{padding:12px}.learning-prompt>span>span{display:none}}@media (width<=640px){.sidebar{padding:22px 16px 16px}.sidebar nav a,.sidebar .exercise-nav a{min-height:44px;font-size:14px}.topbar{height:52px;padding:0 16px}.topbar-right{gap:10px}.breadcrumbs{font-size:11px}main{min-height:calc(100dvh - 52px);padding:16px 16px 0}.dashboard-heading{align-items:center;margin-bottom:15px}.dashboard-heading h1{max-width:250px;font-size:24px;line-height:1.25}.dashboard-heading p{max-width:280px;font-size:12px;line-height:1.6}.streak-pill{white-space:nowrap;flex-shrink:0;padding:6px 8px;font-size:9px;position:static}.resume-banner{grid-template-columns:minmax(0,1fr) auto 32px;gap:8px;margin-bottom:12px;padding:12px;display:grid}.resume-banner>div{min-width:0}.resume-banner p,.resume-banner .eyebrow,.resume-banner .resume-icon{display:none}.resume-banner h2{margin:0;font-size:15px;line-height:1.4}.resume-banner .button{gap:8px;min-height:40px;margin:0;padding:9px 11px;font-size:12px}.resume-banner .icon-button{min-width:32px;min-height:40px;padding:4px}.dashboard-feature-row{gap:10px}.daily-hero{min-height:136px}.hero-copy{padding:15px 16px}.hero-copy h2{margin-top:4px;font-size:24px}.hero-copy p{max-width:255px;font-size:12px;line-height:1.6}.hero-actions{gap:12px;margin-top:10px}.hero-actions .button{min-height:42px;font-size:12px}.hero-actions>span{font-size:10px}.hero-art{opacity:.3;width:145px;height:145px;right:-45px}.weekly-card{gap:5px 14px;padding:12px 14px}.weekly-top .eyebrow{letter-spacing:.8px;white-space:normal;font-size:8px}.week-day{gap:6px;font-size:10px}.week-day>div{width:22px;height:22px}.weekly-card .week-days{gap:3px}.daily-goal-label,.daily-goal-label small{font-size:10px}.daily-goal-label strong{font-size:12px}.learning-dashboard-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.learning-prompt{align-items:center;gap:8px;padding:10px}.learning-prompt .prompt-icon{display:none}.learning-prompt small{letter-spacing:.6px;font-size:8px;line-height:1.4}.learning-prompt strong{font-size:12px;line-height:1.45}.learning-prompt>svg{width:14px;height:14px}.exercises-section{margin-top:18px}.section-heading h2{font-size:20px}.exercise-count{display:none}.exercise-filter-row{margin-bottom:10px}.filter-tabs{gap:3px}.filter-tabs>button{min-height:40px;padding:8px 10px;font-size:11px}.exercise-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.exercise-card{grid-template-columns:1fr;gap:8px;min-height:140px;padding:12px;position:relative}.exercise-icon{border-radius:7px;width:30px;height:30px}.exercise-icon svg{width:21px;height:21px}.card-title-row h3{font-size:15px;line-height:1.35}.card-go{position:absolute;top:14px;right:11px}.exercise-card-body>p{margin:5px 0 8px;font-size:11px;line-height:1.55}.card-bottom{padding-top:6px;font-size:9px}.card-bottom>span:last-child{display:none}.listening-note{margin-top:14px;padding:12px}.listening-note p{font-size:11px}.listening-note h3{font-size:12px}.note-symbol{display:none}.dashboard-footer{flex-wrap:wrap;gap:8px;padding:14px 0;font-size:10px}.session-header{margin-bottom:12px}.session-header h1{font-size:26px}.session-header p{display:none}.session-header .eyebrow{font-size:9px}.session-time{padding:6px 8px}.session-utilities{gap:5px 12px}.session-utilities .text-button,.exercise-topline>.text-button{min-height:36px;font-size:11px}.exercise-topline{margin-bottom:12px}.session-progress{margin-bottom:14px}.listening-and-answer{gap:14px}.listening-card{min-height:173px;padding:14px 16px}.listening-card .waveform{height:46px}.listening-card>p{font-size:11px}.question-heading{margin-bottom:9px}.question-heading h2{font-size:18px}.hint-button{font-size:11px}.answer-button,.answer-grid.many-answers .answer-button{gap:8px;min-height:48px;padding:10px;font-size:13px}.answer-feedback{margin:12px 0 8px;padding:12px 0}.answer-feedback h3{font-size:13px}.answer-feedback p{font-size:12px}.answer-feedback .button{width:100%;min-height:42px;margin-left:0;font-size:13px}.exercise-view .pitch-illustration{margin-bottom:12px;padding:12px}.exercise-view .pitch-illustration svg{max-height:120px}.app-shell :is(.exercise-view,.library-view) .pitch-illustration{padding:12px;display:block}.app-shell :is(.exercise-view,.library-view) .pitch-illustration figcaption{flex-direction:row;justify-content:space-between}.app-shell :is(.exercise-view,.library-view) .pitch-illustration svg{max-height:110px;margin:8px auto 0}.app-shell :is(.exercise-view,.library-view) .staff-footnote{text-align:center;margin-top:0}.setup-heading{margin-bottom:16px}.setup-heading h1{font-size:26px}.setup-panel{padding:16px}}.trainer-guide{border:1px solid var(--line);background:#fcfdf9;border-radius:7px;margin:0 0 10px}.trainer-guide>summary{color:#526447;cursor:pointer;align-items:center;gap:7px;min-height:38px;padding:8px 10px;font-size:12px;font-weight:500;list-style:none;display:flex}.trainer-guide>summary::-webkit-details-marker{display:none}.trainer-guide>summary:after{content:"+";margin-left:auto;font-size:17px}.trainer-guide[open]>summary:after{content:"−"}.trainer-guide-content{padding:0 10px 10px}.trainer-guide-content>p{max-width:80ch;margin:0 0 10px;font-size:13px;line-height:1.6}.trainer-examples{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:6px;display:grid}.trainer-examples>button{text-align:left;color:#42563a;background:#fff;border:1px solid #dce4d3;border-radius:5px;min-height:44px;padding:9px 10px;display:block}.trainer-examples>button>span{align-items:center;gap:6px;font-size:12px;display:flex}.trainer-examples strong{font-weight:600}.trainer-examples small{color:#667759;margin-top:4px;font-size:11px;line-height:1.5;display:block}.trainer-examples>button.example-playing{background:#eaf2e0;border-color:#95ac77}.trainer-guide-content>.guide-scoring-note{color:#667759;margin:10px 0 0;font-size:11px}.setup-view>.trainer-guide{margin-bottom:16px}.answer-definition{color:#667759;margin-top:3px;font-size:11px;font-weight:400;line-height:1.4;display:block}.exercise-view .audio-sequence{flex-wrap:wrap;gap:5px 12px;width:100%;margin:10px 0 0;padding:0;list-style:none;display:flex}.audio-sequence>li{color:#b5c8a8;align-items:center;gap:5px;font-size:11px;line-height:1.5;display:flex}.audio-sequence>li>span{border:1px solid #ffffff35;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;display:grid}.audio-sequence>li.active{color:#e2ffc7;font-weight:600}.audio-sequence>li.active>span{color:#214537;background:#c4ed96}.reference-controls{flex-wrap:wrap;gap:4px 10px;width:100%;margin-top:6px;display:flex}.reference-controls>button{color:#e1f2d5;text-underline-offset:3px;background:0 0;min-height:36px;padding:4px 0;font-size:11px;text-decoration:underline}.app-shell:has(.session-toolbar)>main{min-height:0;padding-top:12px}.exercise-view:has(.session-toolbar){max-width:1120px;margin-left:0;padding-bottom:16px}.exercise-view .session-toolbar{flex-wrap:nowrap;align-items:center;gap:14px;min-height:44px;margin:0 0 10px;display:flex}.session-toolbar h1{letter-spacing:-.5px;flex:1;min-width:0;margin:0;font-size:21px;font-weight:600;line-height:1.3}.session-toolbar .session-back{gap:6px;min-height:40px;font-size:12px}.session-toolbar .session-time{white-space:nowrap;background:0 0;border:0;gap:5px;padding:0;font-size:12px}.session-toolbar .session-utilities{flex-wrap:nowrap;gap:12px}.session-toolbar .session-utilities .text-button{white-space:nowrap;min-height:40px;font-size:12px}.exercise-view .session-progress{margin-bottom:12px}.exercise-view .session-progress-label{margin-bottom:5px;font-size:12px}.exercise-view .listening-and-answer{grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:18px}.exercise-view .listening-card{min-height:0;padding:14px 16px}.exercise-view .play-button{flex-shrink:0;width:54px;height:54px;margin:18px 0 10px}.exercise-view .listening-card .waveform{height:70px;margin:0;top:43px}.exercise-view .listening-card h2{margin:4px 0;font-size:17px}.exercise-view .listening-card>p{margin-top:3px;font-size:12px;line-height:1.5}.exercise-view .player-shortcut{margin-top:8px}.exercise-view .question-heading{gap:8px;margin-bottom:8px}.exercise-view .question-heading h2{font-size:18px;line-height:1.4}.exercise-view .input-guidance{margin:0 0 10px;font-size:12px;line-height:1.5}.exercise-view .response-beats{gap:14px;margin:10px 0}.exercise-view .tap-controls{gap:10px}.exercise-view .tap-pad{min-height:112px}.exercise-view .timing-window{margin:9px 0 0;font-size:11px;line-height:1.5}.exercise-view .melody-slots{gap:6px;margin-bottom:10px}.exercise-view .melody-slots>button{gap:4px;min-height:62px}.exercise-view .degree-keyboard{gap:6px}.exercise-view .degree-keyboard>button{gap:4px;min-height:54px}.exercise-view .melody-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px 14px;margin-top:10px}.exercise-view .melody-actions .text-button{min-height:40px;font-size:12px}.exercise-view .melody-actions .button{min-height:40px;margin-left:auto;padding:9px 14px;font-size:13px}.exercise-view .answer-feedback:empty{display:none}.exercise-view .answer-feedback.visible{margin:12px 0 0;padding:10px 0}.exercise-view .exercise-footer{justify-content:flex-end;gap:0;margin-top:10px;padding:8px 0 0;font-size:11px;line-height:1.5}.exercise-view .exercise-footer kbd{margin-left:0;font-size:10px}.exercise-view .exercise-footer>span{flex-wrap:wrap;gap:6px}.exercise-view .session-paused{min-height:0;margin:10px 0 16px;padding:24px}.exercise-view .session-paused h2{margin:8px 0;font-size:23px}.exercise-view .session-paused>p{margin-bottom:14px}.exercise-view .session-paused>.text-button{margin-top:8px}@media (width>=641px){.app-shell:has(.session-toolbar)>.topbar{display:none}}@media (width<=960px){.exercise-view .session-toolbar{flex-wrap:wrap;gap:10px}.session-toolbar .session-back span{display:none}.session-toolbar .session-back{justify-content:center;min-width:40px}.session-toolbar .session-utilities{gap:8px}.session-toolbar .session-utilities .text-button{font-size:11px}.exercise-view .listening-and-answer{grid-template-columns:1fr;gap:12px}.exercise-view .listening-card{text-align:left;grid-template-columns:54px minmax(0,1fr);align-items:center;column-gap:14px;padding:12px 14px;display:grid}.exercise-view .listening-top{grid-column:1/-1;gap:6px;margin-bottom:10px}.exercise-view .play-button{grid-area:2/1/4;margin:0}.exercise-view .listening-card h2{grid-area:2/2;margin:0 0 4px}.exercise-view .listening-card>p{text-align:left;grid-area:3/2;margin:0}.exercise-view .player-shortcut{grid-column:2;margin-top:5px}.exercise-view .audio-sequence,.exercise-view .reference-controls{grid-column:1/-1}.exercise-view .listening-card .waveform{display:none}}@media (width<=640px){.app-shell:has(.session-toolbar)>.topbar{height:44px}:is(.app-shell:has(.session-toolbar)>.topbar .local-status,.app-shell:has(.session-toolbar)>.topbar .avatar){display:none}.app-shell:has(.session-toolbar)>main{padding:8px 12px 0}.exercise-view .session-toolbar{gap:6px 10px;margin-bottom:8px}.session-toolbar h1{font-size:19px}.session-toolbar .session-time{font-size:11px}.session-toolbar .session-utilities{flex-basis:auto;gap:6px}.session-toolbar .session-utilities .session-settings,.session-toolbar .session-pause span{display:none}.session-toolbar .session-utilities .session-pause{justify-content:center;min-width:32px;min-height:40px;padding:0}.session-toolbar .session-utilities .text-button{min-height:36px;font-size:12px}.session-toolbar .session-back{min-height:40px}.exercise-view .session-progress-label{font-size:11px}.exercise-view .question-heading h2{font-size:17px}.exercise-view .hint-button{min-height:40px}.exercise-view .melody-actions{gap:6px 12px}.exercise-view .melody-actions .button{width:auto;min-height:44px;margin-left:auto}.exercise-view .melody-actions .text-button{min-height:44px;font-size:11px}.exercise-view .melody-slots>button{min-height:58px}.exercise-view .exercise-footer{justify-content:flex-start;align-items:flex-start;margin-top:8px;padding-top:7px}}.setup-launch{background:#edf3e6;border:1px solid #d6e1cb;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:14px 16px;display:flex}.setup-launch>div{flex-direction:column;gap:4px;display:flex}.setup-launch strong{font-size:15px;font-weight:600}.setup-launch span{color:#627155;font-size:12px}.setup-launch .button{min-height:44px;padding:10px 16px;font-size:13px}.setup-launch>p{color:#8c553c;flex-basis:100%;margin:0;font-size:12px}.drill-options{border:1px solid var(--line);background:#fcfdf9;border-radius:8px}.drill-options>summary{cursor:pointer;color:#485c3e;align-items:center;gap:8px;min-height:48px;padding:12px 14px;font-size:13px;list-style:none;display:flex}.drill-options>summary::-webkit-details-marker{display:none}.drill-options>summary>span{color:#6b7a5e;margin-left:auto;font-size:11px}.drill-options[open]>summary>svg:last-child{transform:rotate(180deg)}.drill-options .setup-panel{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;padding:16px}.trainer-guide>summary>strong{font-size:12px;font-weight:600}.trainer-guide>summary>span{color:#65755a;margin-left:auto;font-size:10px}.trainer-guide>summary:after{margin-left:4px}.trainer-examples>.example-card{background:#fff;border:1px solid #d9e3ce;border-radius:6px;min-width:0;overflow:hidden}.example-card>button:first-child{text-align:left;color:#42563a;background:0 0;width:100%;min-height:54px;padding:10px;display:block}.example-card>button:first-child>span:first-child{align-items:center;gap:6px;font-size:12px;display:flex}.example-card>button:first-child>small{color:#627455;margin-top:6px;font-size:11px;line-height:1.5;display:block}.example-card>button.example-playing{color:#315726;background:#e9f3de}.example-card .voicing-notes{align-items:stretch;gap:5px;margin-top:10px;display:flex}.voicing-notes>span{background:#f3f5ef;border:1px solid #e6ebdf;border-radius:4px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:7px 2px;display:flex}.voicing-notes>span.bass-note{color:#385d25;background:#dfedce;border-color:#a5c385}.voicing-notes b{font-size:17px;font-weight:600;line-height:1.2}.voicing-notes small{color:inherit;margin:0;font-size:9px;line-height:1.3}.example-card>button.bass-preview{color:#456039;background:#f5f8ef;border-top:1px solid #dfe7d6;justify-content:center;align-items:center;gap:5px;width:100%;min-height:40px;padding:8px;font-size:11px;display:flex}.example-quality{color:#5c6e4d;justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;font-size:12px;display:flex}.example-quality .segmented button{min-height:36px;padding:7px 11px;font-size:11px}.guide-more.text-button{min-height:36px;margin-top:5px;font-size:12px}.exercise-view .response-status{color:#64725a;margin:0 0 8px;font-size:12px;line-height:1.5}.exercise-view .response-status.ready{color:#3e652e;font-weight:500}.exercise-view .listening-card{text-align:left;padding:14px 16px;display:block}.exercise-view .listening-top{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;font-size:11px;display:flex}.exercise-view .listening-top>span{flex-shrink:0;align-items:center;gap:6px;display:flex}.exercise-view .listening-top h2{text-align:right;color:#d0e4bd;letter-spacing:0;margin:0;font-size:11px;font-weight:500;line-height:1.4}.exercise-view .listening-card .play-button{width:100%;height:auto;min-height:48px;box-shadow:none;color:#28472f;background:#c4ed96;border-radius:7px;justify-content:center;align-items:center;gap:10px;margin:0 0 10px;padding:11px 14px;font-size:15px;font-weight:600;display:flex;transform:none}.exercise-view .listening-card .play-button:hover{background:#d2f6ac;transform:none}.exercise-view .listening-card .play-button kbd{color:#375233;background:#ffffff30;border-color:#75975e;margin-left:auto;font-size:10px}.exercise-view .listening-card>p{text-align:left;color:#d4e2cb;margin:0;font-size:12px;line-height:1.5}.exercise-view .audio-sequence{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 0;display:grid}.exercise-view .audio-sequence>li{color:#d1e1c7;min-width:0;display:block}.audio-sequence>li>button{width:100%;min-height:58px;color:inherit;text-align:left;background:#ffffff08;border:1px solid #64816d;border-radius:6px;align-items:center;gap:7px;padding:9px 10px;display:flex}.audio-sequence>li>button:hover{background:#ffffff14}.audio-sequence>li.active>button{background:#3f654b;border-color:#b4d79a}.audio-sequence .phase-number{border:1px solid #8ba184;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:10px;display:grid}.audio-sequence button>span:nth-child(2){flex:1;min-width:0}.audio-sequence small{color:#bccfb0;margin-bottom:3px;font-size:10px;display:block}.audio-sequence strong{font-size:12px;font-weight:500;line-height:1.3;display:block}.audio-sequence button>svg{flex-shrink:0}.home-note-control{color:#d8eccb;background:0 0;justify-content:center;align-items:center;gap:6px;width:100%;min-height:40px;margin:4px 0 -4px;padding:8px 0;font-size:11px;display:flex}.exercise-view .answer-feedback h3{font-size:16px;line-height:1.4}.exercise-view .answer-feedback p{font-size:13px}@media (width<=640px){.setup-heading{margin-top:8px}.setup-launch{gap:10px;margin-bottom:12px;padding:12px}.setup-launch .button{padding:10px 12px}.setup-launch strong{font-size:13px}.drill-options>summary>span{display:none}.example-card>button.bass-preview,.example-quality .segmented button,.guide-more.text-button{min-height:44px}.exercise-view .listening-card{padding:12px 14px}.exercise-view .listening-top{gap:8px;margin-bottom:10px}.exercise-view .listening-top h2{font-size:10px}.exercise-view .listening-card .play-button{min-height:46px;margin-bottom:8px;padding:10px 12px;font-size:14px}.exercise-view .audio-sequence{gap:7px;margin-top:10px}.audio-sequence>li>button{gap:6px;min-height:54px;padding:8px}.audio-sequence strong{font-size:11px}.home-note-control{min-height:44px;margin-top:2px}.exercise-view .response-status{margin-bottom:7px;font-size:11px}}.answer-column.waiting .answer-button{opacity:1;color:#65745c;background:#f2f4ed;border-style:dashed}.answer-column.waiting .degree-keyboard>button{opacity:1;color:#65745c;background:#f2f4ed}.setup-launch{z-index:5;position:sticky;top:12px;box-shadow:0 3px 12px #263b2110}.setup-heading,.setup-heading h1{margin-top:0}.answer-column.waiting .answer-button,.answer-column.waiting .degree-keyboard>button{color:#53624a}@media (width<=640px){.topbar .breadcrumbs>span,.topbar .breadcrumbs>svg,.topbar .avatar{display:none}.topbar .breadcrumbs{gap:8px;min-width:0}.topbar .breadcrumbs>strong,.topbar .sound-control{white-space:nowrap;font-size:12px}.topbar-right{gap:6px}.setup-launch{top:8px}.setup-heading{margin-bottom:14px}.setup-heading h1{font-size:25px}.trainer-examples:has(.voicing-notes){grid-template-columns:1fr}.trainer-examples .example-card:has(.voicing-notes){grid-template-columns:minmax(0,1fr) 78px;display:grid}.example-card:has(.voicing-notes)>button:first-child{grid-template-columns:84px minmax(0,1fr);gap:3px 7px;padding:9px 10px;display:grid}.example-card:has(.voicing-notes)>button:first-child>span:first-child{grid-area:1/1/3;gap:5px;line-height:1.5}.example-card .voicing-notes{grid-area:1/2;gap:4px;margin:0}.voicing-notes>span{gap:2px;padding:5px 2px}.voicing-notes b{font-size:15px}.example-card>button:first-child>small.voicing-direction{grid-area:2/2;margin:0;font-size:9px}.example-card:has(.voicing-notes)>button.bass-preview{border-top:0;border-left:1px solid #dfe7d6;flex-direction:column;gap:3px;min-height:44px;padding:6px;font-size:10px}.example-card .bass-preview>svg{display:none}.example-card .bass-preview>strong{font-size:17px}}
