.practice-theme{--practice-ink:#221829;--practice-muted:#766a7c;--practice-faint:#9b91a0;--practice-plum:#6d2878;--practice-plum-dark:#4f1e59;--practice-plum-soft:#f2e9f5;--practice-gold:#b77932;--practice-gold-soft:#fbf1df;--practice-line:#e7dfe9;--practice-paper:#fffdf9;--practice-surface:#fff;color:var(--practice-ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.practice-shell{background:radial-gradient(circle at 78% 2%,#b7793217,#0000 28rem),#f7f4f8;min-height:100dvh;padding-top:64px}.practice-sidebar{z-index:20;border-right:1px solid var(--practice-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf9f5;width:320px;position:fixed;inset:64px auto 0 0;overflow-y:auto;box-shadow:8px 0 32px #2d1c310a}.practice-course-panel{padding:24px 18px 30px}.practice-course-heading{align-items:center;gap:12px;padding:0 8px 20px;display:flex}.practice-course-icon{width:42px;height:42px;color:var(--practice-plum);background:linear-gradient(145deg,#f9f2fb,#eee0f2);border:1px solid #dfcde4;border-radius:13px;flex:none;place-items:center;display:grid}.practice-course-icon svg{width:20px;height:20px}.practice-course-heading span{color:var(--practice-gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:2px;font-size:.67rem;font-weight:800;display:block}.practice-course-heading h2{letter-spacing:-.02em;margin:0;font-size:1.06rem;font-weight:750}.practice-progress{background:#fbf8fc;border:1px solid #eadfed;border-radius:14px;margin-bottom:18px;padding:14px 15px}.practice-progress>div:first-child{color:var(--practice-muted);justify-content:space-between;align-items:center;margin-bottom:9px;font-size:.75rem;display:flex}.practice-progress strong{color:var(--practice-plum)}.practice-progress-track{background:#e9deec;border-radius:999px;height:5px;overflow:hidden}.practice-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#7c3587,#b77932);height:100%;transition:width .24s;display:block}.practice-course-nav{gap:8px;display:grid}.practice-course-section{border:1px solid #0000;border-radius:14px;overflow:hidden}.practice-folder-button{width:100%;color:var(--practice-ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:11px 10px;transition:background .15s,color .15s;display:grid}.practice-folder-button:hover,.practice-folder-button.is-current{background:var(--practice-plum-soft)}.practice-folder-button>svg{width:17px;height:17px;color:var(--practice-plum)}.practice-folder-button>svg:last-child{width:15px;height:15px;color:var(--practice-faint);transition:transform .15s}.practice-folder-button>svg:last-child.is-rotated{transform:rotate(180deg)}.practice-folder-order{color:var(--practice-faint);letter-spacing:.08em;font-size:.64rem;font-weight:800}.practice-folder-copy{min-width:0}.practice-folder-copy strong,.practice-folder-copy small{display:block}.practice-folder-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:750;overflow:hidden}.practice-folder-copy small{color:var(--practice-muted);margin-top:1px;font-size:.67rem}.practice-folder-count{min-width:31px;color:var(--practice-plum);text-align:center;background:#6d287814;border-radius:999px;padding:3px 6px;font-size:.65rem;font-weight:750}.practice-lesson-links{gap:2px;margin:0 8px 8px 26px;padding-left:15px;display:grid;position:relative}.practice-lesson-links:before{content:"";background:#e5d8e8;width:1px;position:absolute;inset:4px auto 8px 4px}.practice-lesson-links a{color:var(--practice-muted);border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:9px 10px;text-decoration:none;transition:background .14s,color .14s;display:grid;position:relative}.practice-lesson-links a:hover{color:var(--practice-plum-dark);background:#f8f2f9}.practice-lesson-links a.is-current{color:var(--practice-plum-dark);background:#efe3f2}.practice-lesson-links a.is-current:before{background:var(--practice-plum);content:"";border-radius:999px;width:3px;height:26px;position:absolute;left:-12px}.practice-lesson-links strong,.practice-lesson-links small{display:block}.practice-lesson-links strong{font-size:.78rem;font-weight:700;line-height:1.25}.practice-lesson-links small{color:var(--practice-faint);margin-top:2px;font-size:.64rem}.practice-lesson-status{color:#b7abbc;border-radius:50%;place-items:center;width:17px;height:17px;display:grid}.practice-lesson-status svg{width:13px;height:13px}.practice-lesson-status.is-complete{color:#337144;background:#e7f4e9}.practice-main{min-height:calc(100dvh - 64px);margin-left:320px}.practice-main-inner{width:min(100%,1120px);margin:0 auto;padding:44px 38px 64px}.practice-mobile-outline-button{display:none}.practice-lesson-header{margin-bottom:28px}.practice-breadcrumb{color:var(--practice-faint);align-items:center;gap:8px;margin-bottom:18px;font-size:.76rem;font-weight:650;display:flex}.practice-breadcrumb a{color:var(--practice-plum);text-decoration:none}.practice-lesson-header-grid{grid-template-columns:minmax(0,1fr) 290px;align-items:end;gap:38px;display:grid}.practice-lesson-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.practice-lesson-badges>span{border:1px solid var(--practice-line);color:var(--practice-muted);background:#ffffffb8;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:.68rem;font-weight:700;display:inline-flex}.practice-lesson-badges svg{width:12px;height:12px}.practice-lesson-badges .practice-level-badge{color:var(--practice-plum-dark);background:#eee1f1;border-color:#dcc6e1}.practice-lesson-badges .level-expert{background:var(--practice-gold-soft);color:#87561f;border-color:#e5c997}.practice-lesson-header h1{max-width:720px;color:var(--practice-ink);letter-spacing:-.048em;margin:0;font-size:clamp(2.05rem,4vw,3.4rem);font-weight:790;line-height:1.02}.practice-lesson-header h1+p{max-width:720px;color:var(--practice-muted);margin:18px 0 0;font-size:1.04rem;line-height:1.7}.practice-section-kicker{color:var(--practice-gold);letter-spacing:.12em;text-transform:uppercase;font-size:.67rem;font-weight:800;display:block}.practice-session-tempos{background:#ffffffb8;border:1px solid #e7dfe9;border-radius:18px;padding:18px;box-shadow:0 12px 34px #301c350d}.practice-session-tempos>div{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.practice-session-tempos>div>span{background:#f8f4f9;border-radius:11px;flex-direction:column;align-items:center;min-width:0;padding:9px 4px;display:flex}.practice-session-tempos small,.practice-session-tempos em{color:var(--practice-faint);letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-style:normal;font-weight:700}.practice-session-tempos strong{color:var(--practice-plum-dark);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:1.16rem}.practice-exercise-card{background:var(--practice-surface);border:1px solid #ded3e1;border-radius:24px;margin-bottom:28px;overflow:hidden;box-shadow:0 18px 60px #311d3517}.practice-exercise-heading{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:28px;padding:26px 28px 20px;display:grid}.practice-exercise-heading h2{letter-spacing:-.025em;margin:6px 0 7px;font-size:1.36rem;font-weight:770}.practice-exercise-heading p{max-width:660px;color:var(--practice-muted);margin:0;font-size:.86rem;line-height:1.6}.practice-exercise-heading-tools{flex:none;align-items:center;gap:10px;display:flex}.practice-scale-switcher{grid-column:1/-1;grid-template-columns:minmax(310px,1fr) auto;align-items:center;gap:9px;width:100%;display:grid}.practice-scale-secondary-controls{gap:9px;display:flex}.practice-scale-switcher-group{background:#f8f4f8;border:1px solid #dfd5e2;border-radius:13px;align-items:center;gap:7px;padding:5px;display:flex}.practice-scale-switcher-group>span{color:var(--practice-muted);letter-spacing:.06em;text-transform:uppercase;margin-left:5px;font-size:.6rem;font-weight:750;display:grid}.practice-scale-switcher-group>div{gap:2px;display:flex}.practice-root-switcher>div{flex:1;justify-content:space-evenly}.practice-scale-switcher button{width:31px;height:31px;color:var(--practice-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;font-size:.74rem;font-weight:780;transition:background .14s,color .14s,box-shadow .14s;display:grid}.practice-scale-switcher button:hover{color:var(--practice-plum);background:#f0e5f2}.practice-scale-switcher button.is-selected{background:var(--practice-plum);color:#fff;box-shadow:0 5px 12px #6d287833}.practice-scale-switcher button:focus-visible{outline:2px solid var(--practice-plum);outline-offset:2px}.practice-accidental-switcher button{font-family:Georgia,Times New Roman,serif;font-size:1rem}.practice-direction-switcher button{width:auto;min-width:57px;padding-inline:9px}.practice-target-tempo{background:var(--practice-gold-soft);color:#8a5a23;border:1px solid #ead8b9;border-radius:13px;flex:none;align-items:center;gap:10px;padding:9px 12px;display:flex}.practice-target-tempo svg{width:18px;height:18px}.practice-target-tempo span,.practice-target-tempo strong{display:block}.practice-target-tempo span{letter-spacing:.06em;text-transform:uppercase;font-size:.59rem;font-weight:750;line-height:1.2}.practice-target-tempo strong{letter-spacing:0;margin-top:2px;font-size:.77rem}.practice-sheet{background:repeating-linear-gradient(0deg,#593a4405 0,#593a4405 1px,transparent 1px,transparent 4px),var(--practice-paper);border:1px solid #e9e1e4;border-radius:18px;margin:0 20px 20px;overflow:hidden}.practice-notation{min-width:0;height:146px;position:relative;overflow-x:auto}.practice-notation-render{min-width:300px;height:146px}.practice-notation-render canvas{display:block}.practice-notation-playhead{pointer-events:none;background:#9b3b75;border-radius:999px;width:2px;height:81px;transition:left 60ms linear;position:absolute;top:36px;transform:translate(-1px);box-shadow:0 0 0 3px #9b3b751c}.practice-notation-playhead:before{content:"";background:#9b3b75;border-radius:50%;width:7px;height:7px;position:absolute;top:-5px;left:50%;transform:translate(-50%)}.practice-transport{background:#f8f4f7f0;border-top:1px solid #e9e1e4;grid-template-columns:auto auto minmax(210px,1fr) auto auto;align-items:center;gap:12px;padding:13px 16px;display:grid}.practice-play-button,.practice-metronome-button,.practice-reset-button{cursor:pointer;border:0;justify-content:center;align-items:center;display:inline-flex}.practice-play-button{background:var(--practice-plum);color:#fff;border-radius:12px;gap:8px;min-width:102px;padding:10px 15px;font-size:.8rem;font-weight:750;box-shadow:0 8px 18px #6d287833}.practice-play-button:hover{background:var(--practice-plum-dark)}.practice-play-button:disabled{cursor:wait;opacity:.72}.practice-play-button svg,.practice-metronome-button svg,.practice-reset-button svg{width:16px;height:16px}.practice-play-icon{transform:translate(1px)}.practice-metronome-button{color:var(--practice-muted);background:#fff;border:1px solid #dfd5e2;border-radius:11px;gap:7px;padding:9px 11px;font-size:.73rem;font-weight:700}.practice-metronome-button.is-on{color:var(--practice-plum);background:#f2e7f4;border-color:#ceb4d5}.practice-tempo-control{grid-template-columns:auto minmax(100px,1fr);align-items:center;gap:12px;display:grid}.practice-tempo-control label{color:var(--practice-muted);text-transform:uppercase;font-size:.64rem;font-weight:700;line-height:1.2;display:block}.practice-tempo-control label strong{color:var(--practice-ink);font-variant-numeric:tabular-nums;text-transform:none;margin-top:2px;font-size:.74rem;display:block}.practice-tempo-control input{width:100%;accent-color:var(--practice-plum);cursor:pointer}.practice-reset-button{width:34px;height:34px;color:var(--practice-muted);background:#fff;border:1px solid #dfd5e2;border-radius:10px}.practice-reset-button:disabled{cursor:default;opacity:.35}.practice-loop-status{min-width:82px;color:var(--practice-muted);text-align:right;font-size:.66rem;font-weight:700}.practice-loop-status span{align-items:center;gap:5px;display:inline-flex}.practice-loop-status i{background:#4b9c62;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #4b9c621f}.practice-chord-guide{background:#fffaf0;border:1px solid #eadfca;border-radius:16px;justify-content:space-between;align-items:center;gap:30px;margin:-2px 20px 20px;padding:17px 20px;display:flex}.practice-chord-guide-copy h3{margin:5px 0 4px;font-size:.98rem}.practice-chord-guide-copy p{max-width:440px;color:var(--practice-muted);margin:0;font-size:.75rem;line-height:1.5}.practice-chord-diagrams{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.practice-chord-diagram{background:#fff;border:1px solid #eadfcf;border-radius:11px;min-width:98px;padding:7px 6px 5px}.practice-playback-error{color:#9d3434;background:#fff2f2;border:1px solid #f1c3c3;border-radius:10px;margin:-3px 20px 20px;padding:10px 12px;font-size:.78rem}.practice-guidance-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:22px;margin-bottom:22px;display:grid}.practice-guidance-card,.practice-steps-card{border:1px solid var(--practice-line);background:#fffc;border-radius:20px;box-shadow:0 12px 38px #301c350d}.practice-guidance-card{padding:25px 27px}.practice-guidance-card h2,.practice-steps-card h2{color:var(--practice-ink);letter-spacing:-.025em;margin:6px 0 14px;font-size:1.22rem;font-weight:760}.practice-explanation-card>p{color:var(--practice-muted);margin:0 0 13px;font-size:.9rem;line-height:1.72}.practice-coach-tip{background:var(--practice-gold-soft);border:1px solid #ead8b9;border-radius:14px;gap:12px;margin-top:19px;padding:15px;display:flex}.practice-coach-tip>svg{color:#9c672a;flex:none;width:18px;height:18px;margin-top:1px}.practice-coach-tip strong{color:#79501f;font-size:.78rem}.practice-coach-tip p{color:#7f6649;margin:3px 0 0;font-size:.77rem;line-height:1.55}.practice-focus-card{flex-direction:column;justify-content:space-between;display:flex}.practice-focus-card ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.practice-focus-card li{color:var(--practice-muted);align-items:flex-start;gap:9px;font-size:.8rem;line-height:1.5;display:flex}.practice-focus-card li svg{width:15px;height:15px;color:var(--practice-plum);flex:none;margin-top:3px}.practice-finger-key{border-top:1px solid var(--practice-line);margin-top:23px;padding-top:18px}.practice-finger-key>strong{color:var(--practice-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.practice-finger-key>div{grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px;display:grid}.practice-finger-key span{color:var(--practice-muted);align-items:center;gap:6px;font-size:.71rem;display:flex}.practice-finger-key i{background:var(--practice-plum);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.65rem;font-style:normal;font-weight:750;display:grid}.practice-steps-card{grid-template-columns:240px 1fr;gap:28px;margin-bottom:22px;padding:25px 27px;display:grid}.practice-steps-card ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.practice-steps-card li{background:#fbf9fc;border:1px solid #ebe3ed;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:11px 13px;display:grid}.practice-steps-card li>span{width:27px;height:27px;color:var(--practice-plum);background:#eadced;border-radius:9px;place-items:center;font-size:.72rem;font-weight:800;display:grid}.practice-steps-card li p{color:var(--practice-muted);margin:0;font-size:.8rem;line-height:1.5}.practice-lesson-finish{background:linear-gradient(120deg,#f7eef8,#fffaf0);border:1px solid #d8c6dd;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px;padding:21px 24px;display:flex}.practice-lesson-finish>div{align-items:center;gap:14px;display:flex}.practice-lesson-finish>div>svg{width:25px;height:25px;color:var(--practice-plum);flex:none}.practice-lesson-finish h2{margin:0 0 3px;font-size:1rem}.practice-lesson-finish p{color:var(--practice-muted);margin:0;font-size:.76rem}.practice-lesson-finish button{border:1px solid var(--practice-plum);background:var(--practice-plum);color:#fff;cursor:pointer;border-radius:11px;flex:none;align-items:center;gap:7px;padding:10px 14px;font-size:.76rem;font-weight:750;display:inline-flex}.practice-lesson-finish button svg{width:15px;height:15px}.practice-lesson-finish button.is-complete{color:#2e6b3e;background:#e7f4e9;border-color:#84ad8f}.practice-lesson-pagination{grid-template-columns:1fr 1fr;gap:16px;margin-top:30px;display:grid}.practice-lesson-pagination a{border:1px solid var(--practice-line);min-width:0;color:var(--practice-muted);background:#ffffffbd;border-radius:15px;align-items:center;gap:11px;padding:15px 16px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.practice-lesson-pagination a:hover{border-color:#cfb6d5;transform:translateY(-1px);box-shadow:0 12px 30px #301c3514}.practice-lesson-pagination a>svg{width:18px;height:18px;color:var(--practice-plum);flex:none}.practice-lesson-pagination small,.practice-lesson-pagination strong{display:block}.practice-lesson-pagination small{color:var(--practice-faint);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-size:.63rem;font-weight:700}.practice-lesson-pagination strong{color:var(--practice-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.practice-next-link{text-align:right;justify-content:flex-end}.practice-mobile-drawer{display:none}@media (max-width:1120px){.practice-sidebar{width:292px}.practice-main{margin-left:292px}.practice-main-inner{padding-inline:28px}.practice-lesson-header-grid{grid-template-columns:1fr}.practice-session-tempos{max-width:330px}.practice-guidance-grid{grid-template-columns:1fr}}@media (max-width:840px){.practice-sidebar{display:none}.practice-main{margin-left:0}.practice-main-inner{padding:25px 20px 48px}.practice-mobile-outline-button{width:100%;color:var(--practice-plum-dark);cursor:pointer;background:#ffffffd1;border:1px solid #ded3e1;border-radius:13px;align-items:center;gap:9px;margin-bottom:22px;padding:11px 13px;font-size:.79rem;font-weight:750;display:flex}.practice-mobile-outline-button svg{width:17px;height:17px}.practice-mobile-outline-button span{background:var(--practice-plum-soft);border-radius:999px;margin-left:auto;padding:3px 7px;font-size:.65rem}.practice-mobile-drawer{z-index:70;display:block;position:fixed;inset:0}.practice-mobile-drawer-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2117256b;border:0;position:absolute;inset:0}.practice-mobile-drawer-panel{background:var(--practice-paper);width:min(90vw,348px);position:absolute;inset:0 auto 0 0;overflow-y:auto;box-shadow:20px 0 60px #2218293d}.practice-mobile-drawer-close{z-index:2;border:1px solid var(--practice-line);width:34px;height:34px;color:var(--practice-muted);cursor:pointer;background:#fff;border-radius:10px;place-items:center;display:grid;position:absolute;top:17px;right:15px}.practice-mobile-drawer-close svg{width:17px;height:17px}}@media (max-width:680px){.practice-main-inner{padding-inline:14px}.practice-lesson-header h1{font-size:2.15rem}.practice-lesson-header h1+p{font-size:.92rem}.practice-exercise-heading{grid-template-columns:minmax(0,1fr) auto;padding:21px 18px 16px;display:grid}.practice-exercise-heading-tools{flex-wrap:wrap}.practice-target-tempo{width:max-content}.practice-scale-switcher{grid-template-columns:minmax(0,1fr);gap:7px}.practice-scale-secondary-controls{grid-template-columns:92px minmax(0,1fr);gap:7px;display:grid}.practice-scale-switcher-group{min-width:0}.practice-root-switcher,.practice-scale-secondary-controls .practice-scale-switcher-group{flex-direction:column;align-items:stretch;gap:4px}.practice-scale-switcher-group>span{display:none}.practice-scale-switcher-group>div{justify-content:center}.practice-root-switcher>div{justify-content:space-between}.practice-direction-switcher button{flex:1;min-width:0;padding-inline:2px;font-size:.7rem}.practice-sheet{margin:0 10px 10px}.practice-transport{grid-template-columns:1fr 1fr auto}.practice-play-button,.practice-metronome-button{min-height:40px}.practice-tempo-control{grid-area:2/1/auto/-1}.practice-reset-button{grid-area:1/3}.practice-loop-status{display:none}.practice-chord-guide{margin:0 10px 10px;display:grid}.practice-chord-diagrams{justify-content:flex-start}.practice-guidance-card,.practice-steps-card{padding:21px 19px}.practice-steps-card{grid-template-columns:1fr;gap:6px}.practice-lesson-finish{display:grid}.practice-lesson-finish button{justify-content:center;width:100%}.practice-lesson-pagination{grid-template-columns:1fr}.practice-lesson-pagination>span{display:none}}@media (prefers-reduced-motion:reduce){.practice-progress-track span,.practice-folder-button>svg:last-child,.practice-lesson-pagination a,.practice-notation-playhead{transition:none}}
