@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#17152e;font-synthesis:none;text-rendering:optimizelegibility;--ink-900:#17152e;--ink-700:#39364f;--ink-500:#716c7f;--ink-200:#d8d1d8;--cream-100:#fffaf2;--cream-200:#f6ede4;--blush-100:#f8dce9;--blush-300:#efb7cf;--rose-500:#e994b4;--rose-600:#d8799f;--teal-500:#5ab8ad;--teal-600:#409f96;--mustard-500:#f2c34f;--white:#fff;--success-500:#2c9a70;--danger-500:#d85c67;--space-xs:.25rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.5rem;--space-2xl:2rem;--space-3xl:3rem;--space-4xl:4rem;--radius-sm:.5rem;--radius-md:.875rem;--radius-lg:1.25rem;--radius-xl:1.75rem;--radius-full:999px;--shadow-card:0 16px 40px #261b3417;--shadow-lift:0 22px 55px #261b3429;background:#f8dce9;font-family:DM Sans Variable,DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--blush-100);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.site-frame{background:var(--cream-100);border-radius:var(--radius-xl);width:min(100% - 24px,1220px);min-height:calc(100vh - 24px);box-shadow:var(--shadow-card);border:1px solid #17152e1f;margin:12px auto;overflow:hidden}.site-header{border-bottom:1px solid #17152e1a;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.brand{color:var(--ink-900);letter-spacing:-.03em;align-items:center;gap:10px;font-size:1.1rem;font-weight:750;text-decoration:none;display:inline-flex}.brand-mark{width:36px;height:36px;color:var(--cream-100);background:var(--ink-900);border-radius:12px;place-items:center;font-family:Fraunces Variable,Georgia,serif;font-size:.95rem;font-weight:700;display:grid}.session-label{color:var(--ink-500);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:650;display:none}.home-page,.setup-page,.simple-page,.fretboard-page,.find-one-page,.resolve-page,.progression-page,.mode-page{padding:44px 20px 32px}.home-intro{gap:var(--space-lg);margin-bottom:40px;display:grid}.eyebrow{color:var(--teal-600);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:.76rem;font-weight:800}h1,h2,p{margin-top:0}h1,.exercise-card h2{letter-spacing:-.045em;font-family:Fraunces Variable,Georgia,serif;font-weight:680}h1{max-width:760px;margin-bottom:0;font-size:clamp(2.45rem,11vw,5.9rem);line-height:.94}.lede{max-width:580px;color:var(--ink-700);margin-bottom:0;font-size:clamp(1rem,2vw,1.16rem);line-height:1.55}.section-heading{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex}.section-heading h2{letter-spacing:-.01em;margin-bottom:0;font-size:1rem}.section-heading span{color:var(--ink-500);font-size:.75rem}.carousel-heading-actions{align-items:center;gap:12px;display:flex}.carousel-buttons{gap:7px;display:none}.carousel-buttons button{width:42px;height:42px;color:var(--cream-100);background:var(--ink-900);border:1.5px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;place-items:center;font-size:1.15rem;font-weight:850;transition:background .15s,color .15s,transform .15s;display:grid}.carousel-buttons button:hover:not(:disabled){transform:translateY(-2px)}.carousel-buttons button:disabled{color:var(--ink-500);cursor:default;opacity:.55;background:0 0}.exercise-carousel{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;grid-auto-columns:min(78vw,340px);grid-auto-flow:column;gap:14px;margin-right:-20px;padding-right:20px;scroll-padding-inline:20px;display:grid;overflow-x:auto}.exercise-carousel::-webkit-scrollbar{display:none}.exercise-card{border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);min-height:510px;box-shadow:5px 6px 0 var(--ink-900);scroll-snap-align:start;flex-direction:column;padding:18px;display:flex;overflow:hidden}.exercise-card--teal{background:var(--teal-500)}.exercise-card--rose{background:var(--rose-500)}.exercise-card--mustard{background:var(--mustard-500)}.exercise-card--navy{color:var(--cream-100);background:#403b72}.exercise-card--navy .exercise-card__meta,.exercise-card--navy p{color:#fffaf2c7}.exercise-card--navy .exercise-card__meta span:first-child{background:#fffaf224;border-color:#fffaf28c}.exercise-card__meta,.preview-topline{color:#17152ebf;letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.7rem;font-weight:800;display:flex}.exercise-card__meta span:first-child{border-radius:var(--radius-full);background:#fffaf28c;border:1px solid #17152e80;place-items:center;width:34px;height:34px;display:grid}.exercise-art{width:100%;margin:18px 0 8px}.art-paper{fill:var(--cream-100)}.art-line,.art-string,.art-fret{fill:none;stroke:var(--ink-900);stroke-linecap:round}.art-line{stroke-width:6px}.art-line--soft{stroke-width:3px;opacity:.38}.art-string{stroke-width:1.5px}.art-fret{stroke-width:2px;opacity:.3}.art-ink{fill:var(--ink-900)}.art-accent{fill:var(--mustard-500);stroke:var(--ink-900);stroke-width:2px}.art-spark{fill:var(--cream-100)}.art-question{fill:var(--ink-900);font-family:Fraunces Variable,Georgia,serif;font-size:25px;font-weight:800}.art-chord{fill:var(--cream-100);font-family:Fraunces Variable,Georgia,serif;font-size:21px;font-weight:750}.art-chord--dark{fill:var(--ink-900)}.exercise-card__copy{margin-top:auto}.exercise-card h2{max-width:280px;margin-bottom:8px;font-size:clamp(2rem,8vw,3rem);line-height:.98}.exercise-card p{color:var(--ink-700);margin-bottom:20px;line-height:1.45}.exercise-card.exercise-card--navy h2{overflow-wrap:anywhere;max-width:100%;font-size:clamp(1.8rem,5vw,2.45rem)}.exercise-card.exercise-card--mode h2{overflow-wrap:anywhere;max-width:100%;font-size:clamp(1.75rem,6.5vw,2.45rem)}.exercise-card.exercise-card--navy p{color:#fffaf2e6}.exercise-card--navy .button--dark{color:var(--ink-900);background:var(--cream-100)}.button{border:1.5px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;justify-content:space-between;align-items:center;gap:18px;min-height:52px;padding:0 20px;font-weight:750;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 7px #17152e2e}.button:focus-visible,.back-link:focus-visible,.brand:focus-visible{outline:3px solid var(--mustard-500);outline-offset:3px}.choice-card:has(input:focus-visible){outline:3px solid var(--mustard-500);outline-offset:3px}.button--dark{color:var(--cream-100);background:var(--ink-900)}.button--light{color:var(--ink-900);background:var(--cream-100)}.button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;transform:none}.button--wide{width:100%}.home-note{color:var(--ink-500);text-align:center;margin:34px 0 0;font-size:.82rem}.back-link{color:var(--ink-700);align-items:center;gap:8px;margin-bottom:34px;font-size:.86rem;font-weight:700;text-decoration:none;display:inline-flex}.setup-layout{gap:36px;display:grid}.setup-heading{margin-bottom:38px}.setup-heading h1,.simple-page h1{max-width:690px;margin-bottom:20px;font-size:clamp(2.5rem,9vw,5.2rem)}.option-group{border:0;margin:0 0 34px;padding:0}.option-group legend{align-items:center;gap:10px;margin-bottom:14px;font-size:.95rem;font-weight:800;display:flex}.option-group legend span{width:28px;height:28px;color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-full);place-items:center;font-size:.72rem;display:grid}.option-grid{gap:10px;display:grid}.choice-card{background:var(--cream-200);border-radius:var(--radius-lg);cursor:pointer;border:1.5px solid #0000;grid-template-columns:auto 1fr;gap:4px 12px;padding:16px;display:grid;position:relative}.choice-card input{opacity:0;width:1px;height:1px;position:absolute}.choice-card__indicator{background:var(--cream-100);border:1.5px solid var(--ink-500);border-radius:var(--radius-full);grid-row:1/3;width:20px;height:20px;margin-top:2px}.choice-card--selected{border-color:var(--ink-900);background:#5ab8ad33}.choice-card--selected .choice-card__indicator{background:var(--teal-500);border:5px solid var(--ink-900)}.choice-card strong{line-height:1.25}.choice-card small{color:var(--ink-500);line-height:1.4}.choice-card__title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.choice-card em{color:var(--ink-900);background:var(--mustard-500);border-radius:var(--radius-full);letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;font-size:.6rem;font-style:normal;font-weight:850}.ready-message{color:var(--success-500);margin:14px 4px 0;font-size:.86rem;font-weight:700;line-height:1.45}.setup-preview{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:6px 7px 0 var(--ink-900);align-self:start;padding:20px}.mini-fretboard{margin:24px 0}.mini-fretboard__label{margin-bottom:10px;font-size:.75rem;font-weight:800;display:inline-block}.mini-fretboard__grid{background-color:var(--cream-100);border:1px solid var(--ink-900);border-radius:var(--radius-lg);background-image:repeating-linear-gradient(#0000 0 36px,#17152ea6 37px,#0000 39px),repeating-linear-gradient(90deg,#0000 0 52px,#17152e47 53px 55px);height:230px;position:relative;overflow:hidden}.note{background:var(--ink-900);border-radius:var(--radius-full);place-items:center;width:28px;height:28px;display:grid;position:absolute}.note--one{top:26px;left:20%}.note--two{top:100px;left:42%}.note--target{color:var(--ink-900);background:var(--mustard-500);border:2px solid var(--ink-900);font-style:normal;font-weight:900;top:63px;left:62%}.note--four{top:174px;left:78%}.preview-prompt{gap:5px;margin-bottom:14px;display:grid}.preview-prompt span{color:#17152ead;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.preview-prompt strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.75rem}.preview-answers{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.preview-answers span{border:1px solid var(--ink-900);border-radius:var(--radius-full);text-align:center;background:#fffaf28c;padding:9px 5px;font-size:.72rem;font-weight:800}.simple-page,.fretboard-page{min-height:720px}.fretboard-session-heading{gap:20px;margin-bottom:30px;display:grid}.fretboard-session-heading h1{max-width:760px;margin-bottom:0;font-size:clamp(2.35rem,9vw,5rem)}.question-meta{align-content:end;gap:5px;display:grid}.question-meta span,.fretboard-question__topline>div>span{color:var(--ink-500);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:850}.question-meta strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.25rem}.fretboard-question{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:6px 7px 0 var(--ink-900);gap:24px;padding:16px;display:grid}.fretboard-question__topline{justify-content:space-between;align-items:start;gap:16px;display:flex}.fretboard-question__topline h2{margin:3px 0 0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.45rem,6vw,2.2rem)}.question-mode-chip{color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-full);letter-spacing:.07em;text-transform:uppercase;flex:none;padding:7px 11px;font-size:.65rem;font-weight:850}.fretboard-diagram{background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);overscroll-behavior-inline:contain;padding:14px 10px 18px;overflow-x:auto}.fret-number-row{grid-template-columns:repeat(var(--fret-count), minmax(58px, 1fr));min-width:300px;margin:0 0 7px 26px;display:grid}.fret-number-row--open{grid-template-columns:48px repeat(var(--fretted-count), minmax(58px, 1fr))}.fret-number-row span{color:var(--ink-500);text-align:center;text-transform:uppercase;font-size:.62rem;font-weight:800}.fretboard-body{grid-template-columns:26px minmax(300px,1fr);min-width:326px;display:grid}.string-names{grid-template-rows:repeat(6,46px);display:grid}.string-names span{color:var(--ink-500);place-items:center start;font-size:.66rem;font-weight:850;display:grid}.fretboard-grid{grid-template-columns:repeat(var(--fret-count), minmax(58px, 1fr));border:1px solid var(--ink-900);border-radius:var(--radius-sm);background-color:#49382e;background-image:linear-gradient(90deg,#ffffff06,#0000 24%,#00000014 72%,#ffffff05),repeating-linear-gradient(2deg,#0000 0 12px,#ffffff05 13px,#0000 14px);grid-template-rows:repeat(6,46px);display:grid;position:relative;overflow:hidden}.fretboard-grid--open{grid-template-columns:48px repeat(var(--fretted-count), minmax(58px, 1fr))}.fret-cell{z-index:1;border-right:3px solid #dad9d2a6;align-self:stretch;box-shadow:inset -1px 0 #17152e73}.fret-cell--open{box-shadow:inset -2px 0 0 var(--ink-900), inset 0 0 12px #4a2a142e;background:linear-gradient(90deg,#bf8d50,#d4a76c 72%,#e0bd87);border-right:6px solid #e8ded0}.fret-string{z-index:2;pointer-events:none;background:#ddd9d1;align-self:center;height:1px;box-shadow:0 1px 1px #0d0b09bf}.fret-string--6{height:3px}.fret-string--5{height:2.6px}.fret-string--4{height:2.2px}.fret-string--3{height:1.8px}.fret-string--2{height:1.4px}.fret-marker{z-index:1;background:#e8ded0c7;border-radius:50%;place-self:center;width:9px;height:9px;box-shadow:0 1px 2px #0d0b09a6}.fret-note{z-index:4;width:34px;height:34px;color:var(--ink-900);box-shadow:0 0 0 1.5px var(--ink-900), 0 4px 8px #0d0b095c;background:#77bad2;border:2px solid #fffaf2db;border-radius:50%;place-self:center;place-items:center;padding:0;font-size:.7rem;font-weight:900;display:grid}button.fret-note{cursor:pointer;transition:transform .14s,box-shadow .14s}button.fret-note:hover:not(:disabled){z-index:3;box-shadow:0 0 0 2px var(--ink-900), 0 5px 10px #17152e40;transform:scale(1.15)}button.fret-note:disabled{opacity:1}.fret-note--target{color:var(--ink-900);background:var(--mustard-500)}.fret-note--correct{color:var(--ink-900);background:#9ee0bf}.fret-note--found{color:var(--ink-900);box-shadow:0 0 0 2px var(--ink-900), 0 4px 8px #0d0b095c;background:#9ee0bf}.fret-note--incorrect{color:var(--cream-100);background:var(--danger-500)}.fret-note--reveal{color:var(--ink-900);background:var(--mustard-500)}.fret-note--shape-connection{outline-offset:4px;outline:2px solid #f2c34f7a}.shape-connection-legend{color:var(--ink-500);justify-content:flex-end;align-items:center;gap:7px;margin:9px 2px -5px;font-size:.64rem;font-weight:750;display:flex}.shape-connection-legend i{border:2px solid #d29f22b3;border-radius:50%;width:12px;height:12px}.function-answers{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;display:grid}.function-answer{min-height:50px;color:var(--ink-900);border:1.5px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;background:#fffaf2a8;font-weight:850}.function-answer:hover:not(:disabled){background:var(--cream-100);transform:translateY(-1px)}.function-answer:disabled{opacity:.52}.function-answer--correct:disabled{opacity:1;background:#b9e4cf}.function-answer--incorrect:disabled{color:var(--cream-100);background:var(--danger-500);opacity:1}.fretboard-hint{color:#17152ead;text-align:center;margin:-8px 0 0;font-size:.78rem;font-weight:700}.fretboard-feedback{background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);gap:16px;padding:17px;display:grid}.fretboard-feedback--correct{background:#b9e4cf}.fretboard-feedback--incorrect{background:var(--cream-100)}.fretboard-feedback>div{gap:4px;display:grid}.fretboard-feedback>div>span{letter-spacing:.09em;text-transform:uppercase;font-size:.67rem;font-weight:850}.fretboard-feedback strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.55rem}.fretboard-feedback p{color:var(--ink-700);margin-bottom:0;font-size:.85rem}.fretboard-results{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);max-width:760px;box-shadow:6px 7px 0 var(--ink-900);justify-items:start;margin:0 auto;padding:clamp(26px,6vw,60px);display:grid}.fretboard-results h1{margin:22px 0 16px;font-size:clamp(2.5rem,9vw,5rem)}.preview-panel{border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);min-height:300px;box-shadow:6px 7px 0 var(--ink-900);justify-content:center;align-items:center;gap:28px;margin-top:40px;display:flex}.preview-panel--rose{background:var(--rose-500)}.preview-note{font-family:Fraunces Variable,Georgia,serif;font-size:6rem;font-weight:700}.preview-wave{letter-spacing:.1em;font-size:2rem;font-weight:800}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.find-one-page{min-height:720px}.find-one-heading{gap:18px;margin-bottom:36px;display:grid}.find-one-heading h1{max-width:720px;margin-bottom:0;font-size:clamp(2.6rem,10vw,5.3rem)}.find-one-layout{gap:18px;display:grid}.song-stage,.pitch-panel{border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:5px 6px 0 var(--ink-900)}.song-stage{background:var(--ink-900);padding:16px}.song-stage__meta{color:#fffaf2ad;letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;margin-bottom:14px;font-size:.7rem;font-weight:800;display:flex}.youtube-frame{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#0b0a16;border:1px solid #fffaf24d;position:relative;overflow:hidden}.youtube-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.song-stage__title{color:var(--cream-100);gap:16px;padding:18px 4px 4px;display:grid}.song-stage__title h2{letter-spacing:-.035em;margin-bottom:3px;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.6rem,6vw,2.35rem)}.song-stage__title p{color:#fffaf2a8;margin-bottom:0}.song-stage__controls{flex-wrap:wrap;gap:7px;display:flex}.song-control{min-height:38px;color:var(--cream-100);border-radius:var(--radius-full);cursor:pointer;background:#fffaf214;border:1px solid #fffaf247;padding:0 13px;font-size:.72rem;font-weight:750}.song-control:hover{background:#fffaf226}.song-control--report{color:#fffaf2ad;border-color:#0000}.pitch-panel{background:var(--rose-500);flex-direction:column;gap:24px;padding:22px;display:flex}.pitch-panel h2{letter-spacing:-.04em;max-width:380px;margin-bottom:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.9rem,7vw,2.8rem);line-height:1}.pitch-panel .eyebrow{color:#17152ea3}.pitch-orb{aspect-ratio:1;background:var(--mustard-500);border:1.5px solid var(--ink-900);border-radius:50%;align-self:center;place-items:center;width:min(48vw,178px);display:grid;box-shadow:5px 6px #17152e33}.pitch-orb span{letter-spacing:.09em;text-transform:uppercase;align-self:end;font-size:.65rem;font-weight:850}.pitch-orb strong{font-family:Fraunces Variable,Georgia,serif;font-size:4rem;line-height:.8}.pitch-orb i{align-self:start;font-size:1.5rem;font-style:normal;font-weight:800;line-height:.5}.pitch-slider{color:#17152e9e;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr 1fr;gap:8px;font-size:.68rem;font-weight:800;display:grid}.pitch-slider input{width:100%;accent-color:var(--ink-900);cursor:ew-resize;grid-column:1/-1}.pitch-ticks{grid-column:1/-1;grid-template-columns:repeat(12,1fr);align-items:center;margin:-3px 1px 0;display:grid}.pitch-ticks i{background:#17152e6b;border-radius:50%;justify-self:center;width:4px;height:4px}.pitch-ticks i:first-child{justify-self:start}.pitch-ticks i:last-child{justify-self:end}.pitch-ticks .pitch-ticks__active{background:var(--ink-900);width:8px;height:8px}.pitch-slider span:last-child{text-align:right}.volume-control{gap:7px;display:grid}.volume-control>span{color:var(--ink-700);justify-content:space-between;align-items:center;font-size:.72rem;display:flex}.volume-control small{font-weight:800}.volume-control input{width:100%;accent-color:var(--ink-900);cursor:ew-resize}.pitch-actions{gap:10px;display:grid}.answer-feedback{border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);gap:8px;padding:18px;display:grid}.answer-feedback--correct{background:#b9e4cf}.answer-feedback--incorrect{background:var(--cream-100)}.answer-feedback>span{letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:850}.answer-feedback>strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.55rem}.answer-feedback>p{color:var(--ink-700);margin-bottom:0;font-size:.88rem;line-height:1.45}.comparison-actions{grid-template-columns:1fr 1fr;gap:8px;margin:6px 0;display:grid}.comparison-actions button,.text-button{color:var(--ink-900);border:1px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;background:0 0;padding:10px 12px;font-weight:800}.feedback-drone-control{color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;margin-top:2px;padding:9px 11px;display:flex}.feedback-drone-control span{letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:800}.feedback-drone-control button{min-height:36px;color:var(--ink-900);background:var(--cream-100);border-radius:var(--radius-full);cursor:pointer;border:0;padding:0 13px;font-size:.74rem;font-weight:850}.feedback-drone-control button:disabled{cursor:default;opacity:.5}.text-button{border:0;justify-self:start;padding:6px 0}.scale-feedback{gap:8px;margin:6px 0 8px;display:grid}.scale-feedback>span{color:var(--ink-700);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:850}.scale-chords{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.scale-chord{color:var(--ink-900);border-radius:var(--radius-sm);text-align:center;cursor:pointer;background:#fffaf28f;border:1px solid #17152e33;gap:1px;padding:7px 5px;font-family:inherit;transition:background .14s,border-color .14s,transform .14s;display:grid;position:relative}.scale-chord:hover,.scale-chord:focus-visible{border-color:var(--ink-900);background:#fffaf2f2;outline:none;transform:translateY(-1px)}.scale-chord--playing{color:var(--cream-100);background:var(--ink-900);border-color:var(--ink-900)}.scale-chord small{color:var(--ink-500);font-size:.58rem}.scale-chord--playing small{color:#fffaf2b3}.scale-chord strong{font-size:.78rem}.scale-chord i{opacity:.48;font-size:.62rem;font-style:normal;position:absolute;top:5px;right:6px}.session-results,.empty-session{background:var(--rose-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);max-width:760px;box-shadow:6px 7px 0 var(--ink-900);justify-items:start;margin:0 auto;padding:clamp(26px,6vw,60px);display:grid}.session-results h1,.empty-session h1{margin:22px 0 16px;font-size:clamp(2.5rem,9vw,5rem)}.score-orb{aspect-ratio:1;background:var(--mustard-500);border:1.5px solid var(--ink-900);border-radius:50%;justify-content:center;align-items:baseline;width:150px;padding-top:38px;display:flex;box-shadow:5px 6px #17152e33}.score-orb strong{font-family:Fraunces Variable,Georgia,serif;font-size:4rem;line-height:1}.score-orb span{font-weight:800}.missed-list{gap:7px;width:100%;margin:28px 0;display:grid}.missed-list h2{letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:.82rem}.missed-list article{border-radius:var(--radius-md);background:#fffaf29e;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;font-size:.82rem;display:flex}.missed-list article span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.missed-list article strong{white-space:nowrap}.results-actions{gap:10px;width:100%;display:grid}.catalog-command{color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-md);margin-top:28px;padding:14px 18px;font-size:.82rem;display:inline-block}@media (width>=720px){.site-frame{width:min(100% - 48px,1220px);min-height:calc(100vh - 48px);margin:24px auto}.site-header{padding:22px 32px}.session-label{display:inline}.home-page,.setup-page,.simple-page,.fretboard-page,.find-one-page{padding:64px 42px 44px}.home-intro{grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);align-items:end;margin-bottom:60px}.exercise-carousel{grid-template-columns:none;grid-auto-columns:minmax(300px,47%);grid-auto-flow:column;gap:22px;margin-right:-32px;padding:0 32px 12px 0;overflow-x:auto}.exercise-card{min-height:570px;padding:24px}.section-heading span{display:inline}.carousel-buttons{display:flex}.option-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.option-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.find-one-heading{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:end}.fretboard-session-heading{grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);align-items:end}.fretboard-question{padding:24px}.fretboard-feedback{grid-template-columns:minmax(0,1fr) auto;align-items:center}.pitch-actions{grid-template-columns:1fr 1fr}.song-stage__title{grid-template-columns:minmax(0,1fr) auto;align-items:end}.song-stage__controls{justify-content:flex-end}.results-actions{grid-template-columns:1fr 1fr}}@media (width>=980px){.home-page,.setup-page,.simple-page,.fretboard-page,.find-one-page{padding-left:64px;padding-right:64px}.setup-layout{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);align-items:start;gap:64px}.setup-preview{position:sticky;top:24px}.find-one-layout{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);align-items:start;gap:24px}.pitch-panel{min-height:100%}}@media (width<=420px){.fretboard-question{padding:13px}.fretboard-diagram{padding-left:7px;padding-right:7px}.fret-number-row{grid-template-columns:repeat(var(--fret-count), minmax(46px, 1fr));min-width:230px;margin-left:20px}.fret-number-row--open{grid-template-columns:42px repeat(var(--fretted-count), minmax(46px, 1fr))}.fretboard-body{grid-template-columns:20px minmax(230px,1fr);min-width:250px}.fretboard-grid{grid-template-columns:repeat(var(--fret-count), minmax(46px, 1fr));grid-template-rows:repeat(6,42px)}.fretboard-grid--open{grid-template-columns:42px repeat(var(--fretted-count), minmax(46px, 1fr))}.string-names{grid-template-rows:repeat(6,42px)}.fret-note{width:31px;height:31px}.scale-chords{grid-template-columns:repeat(3,minmax(0,1fr))}.comparison-actions{grid-template-columns:1fr}}.resolve-heading{gap:18px;margin:28px 0 32px;display:grid}.resolve-heading h1{max-width:820px;font-size:clamp(2.7rem,9vw,5.6rem)}.resolve-stage{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:5px 6px 0 var(--ink-900);overflow:hidden}.resolve-stage__topline{color:var(--cream-100);background:var(--ink-900);letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;gap:14px;padding:13px 17px;font-size:.68rem;font-weight:800;display:flex}.resolve-stage__question{gap:24px;padding:24px 18px;display:grid}.resolve-stage__question .eyebrow{color:#17152ea3}.resolve-stage__question h2{max-width:650px;margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.9rem,7vw,3.5rem);line-height:1}.resolve-timeline{gap:7px;display:grid}.resolve-timeline--melody{grid-template-columns:repeat(8,minmax(0,1fr));align-items:end}.resolve-timeline--harmony{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.resolve-timeline i,.resolve-timeline strong{min-width:0;color:var(--cream-100);border:1px solid var(--ink-900);background:#17152ec7;place-items:center;font-style:normal;display:grid}.resolve-timeline--melody i,.resolve-timeline--melody strong{border-radius:var(--radius-full);height:clamp(42px,12vw,70px)}.resolve-timeline--melody i:nth-child(2),.resolve-timeline--melody i:nth-child(6){height:clamp(52px,14vw,82px)}.resolve-timeline--melody i:nth-child(3),.resolve-timeline--melody i:nth-child(5){height:clamp(60px,16vw,92px)}.resolve-timeline--melody i:nth-child(4),.resolve-timeline--melody i:nth-child(7){height:clamp(68px,18vw,104px)}.resolve-timeline--harmony i,.resolve-timeline--harmony strong{border-radius:var(--radius-md);min-height:72px}.resolve-timeline--harmony i>span{border-radius:var(--radius-full);background:#fffaf2b8;width:42%;height:7px;box-shadow:0 -13px #fffaf261,0 13px #fffaf261}.resolve-timeline strong{color:var(--ink-900);background:var(--mustard-500);font-family:Fraunces Variable,Georgia,serif;font-size:1.7rem}.resolve-play{min-height:52px;color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-full);cursor:pointer;border:0;justify-self:start;align-items:center;gap:12px;padding:0 20px 0 8px;font-weight:800;display:inline-flex}.resolve-play>span{width:38px;height:38px;color:var(--ink-900);background:var(--rose-500);border-radius:50%;place-items:center;display:grid}.resolve-play:disabled{cursor:wait;opacity:.82}.resolve-audio-error{color:var(--ink-900);grid-column:1/-1;margin:-12px 0 0;font-size:.8rem;font-weight:750}.resolution-choices{background:var(--rose-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);gap:18px;margin-top:28px;padding:22px 18px;display:grid}.resolution-choices__heading{gap:10px;display:grid}.resolution-choices__heading h2{margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.65rem,6vw,2.65rem)}.resolution-choices__heading>span{color:var(--ink-700);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.resolution-choice-grid{gap:10px;display:grid}.resolution-choice{min-height:112px;color:var(--ink-900);background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);text-align:left;cursor:pointer;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:3px 12px;padding:17px;transition:transform .14s,background .14s,box-shadow .14s;display:grid;position:relative}.resolution-choice:hover:not(:disabled),.resolution-choice:focus-visible{outline:none;transform:translateY(-2px);box-shadow:0 5px #17152e38}.resolution-choice:disabled{cursor:not-allowed;opacity:.48}.resolution-choice>span{background:var(--cream-200);border:1px solid #17152e33;border-radius:50%;grid-row:1/-1;place-items:center;width:34px;height:34px;font-weight:850;display:grid}.resolution-choice strong{align-self:end;font-family:Fraunces Variable,Georgia,serif;font-size:1.35rem}.resolution-choice small{color:var(--ink-500);align-self:start;font-weight:700}.resolution-choice>i{font-size:1.1rem;font-style:normal;position:absolute;top:12px;right:14px}.resolution-choice--selected{background:var(--mustard-500);box-shadow:0 5px 0 var(--ink-900);transform:translateY(-2px)}.resolution-choice--correct{background:#b9e4cf}.resolution-choice--incorrect{color:var(--cream-100);background:var(--danger-500)}.resolution-choice--incorrect small{color:#fffaf2c2}.resolution-lock{width:100%}.resolution-feedback{background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);gap:16px;padding:18px;display:grid}.resolution-feedback--correct{background:#b9e4cf}.resolution-feedback>div:first-child{gap:5px;display:grid}.resolution-feedback>div:first-child>span{letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:850}.resolution-feedback strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.75rem}.resolution-feedback p{color:var(--ink-700);margin:0;line-height:1.45}.resolution-feedback__audio{gap:8px;display:grid}.resolution-feedback__audio button{min-height:44px;color:var(--ink-900);border:1px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;background:0 0;font-weight:800}.resolve-results{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);max-width:760px;box-shadow:6px 7px 0 var(--ink-900);justify-items:start;margin:0 auto;padding:clamp(26px,6vw,60px);display:grid}.resolve-results h1{margin:22px 0 16px;font-size:clamp(2.5rem,9vw,5rem)}.progression-setup-heading{gap:20px;margin:28px 0 34px;display:grid}.progression-setup-heading h1{max-width:870px;font-size:clamp(2.7rem,10vw,5.7rem)}.progression-setup{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:6px 7px 0 var(--ink-900);gap:22px;padding:20px 17px;display:grid}.progression-setup__heading{gap:10px;display:grid}.progression-setup__heading h2{margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.8rem,6vw,3rem);line-height:1}.progression-setup__heading>span{color:var(--ink-700);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:850}.progression-level-grid{gap:10px;display:grid}.progression-level-grid>button{color:var(--ink-900);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);text-align:left;cursor:pointer;background:#fffaf2ad;gap:4px;padding:17px;transition:transform .15s,box-shadow .15s,background .15s;display:grid}.progression-level-grid>button.progression-level-card--selected{background:var(--mustard-500);box-shadow:0 5px 0 var(--ink-900);transform:translateY(-2px)}.progression-level-grid span{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:850}.progression-level-grid strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.45rem}.progression-level-grid p{color:var(--ink-700);margin:2px 0;line-height:1.35}.progression-level-grid small{color:var(--ink-700);font-size:.7rem;font-weight:750;line-height:1.35}.progression-setup__footer{border-top:1px solid #17152e47;align-items:end;gap:14px;padding-top:4px;display:grid}.progression-setup__footer p{color:var(--ink-700);gap:2px;margin:0;display:grid}.progression-setup__footer p strong{color:var(--ink-900);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.progression-heading{gap:20px;margin-bottom:34px;display:grid}.progression-heading h1{font-size:clamp(2.7rem,10vw,5.5rem)}.progression-level{background:var(--mustard-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);width:fit-content;min-width:190px;box-shadow:4px 5px 0 var(--ink-900);gap:2px;padding:14px 18px;display:grid}.progression-level span{letter-spacing:.11em;text-transform:uppercase;font-size:.67rem;font-weight:850}.progression-level strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.35rem}.progression-level small{color:var(--ink-700);font-weight:750}.progression-stage{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:6px 7px 0 var(--ink-900);overflow:hidden}.progression-stage__topline{color:#17152ec7;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #17152e52;justify-content:space-between;padding:13px 17px;font-size:.67rem;font-weight:850;display:flex}.progression-stage__intro{align-items:end;gap:18px;padding:21px 17px 18px;display:grid}.progression-stage__intro h2,.chord-bank__heading h2{margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.55rem,5vw,2.35rem);line-height:1.05}.progression-play{min-height:54px;color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-full);cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-weight:850;display:inline-flex}.progression-play:disabled{cursor:wait;opacity:.72}.progression-timeline{background:#fffaf270;border-top:1px solid #17152e3d;border-bottom:1px solid #17152e3d;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px;display:grid}.progression-slot{min-width:0;min-height:106px;color:var(--ink-900);background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-md);align-content:center;place-items:center;gap:2px;padding:18px 5px 10px;display:grid;position:relative}button.progression-slot{cursor:pointer}button.progression-slot:disabled{cursor:default;opacity:1}.progression-slot>span{color:var(--ink-500);font-size:.62rem;font-weight:850;position:absolute;top:7px;left:9px}.progression-slot strong{font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.45rem,7vw,2.2rem)}.progression-slot small{min-height:24px;color:var(--ink-500);text-align:center;font-size:clamp(.56rem,2.3vw,.7rem);font-weight:750;line-height:1.15}.progression-slot--given{background:#fffaf29e;border-style:dashed}.progression-slot--active{background:var(--mustard-500);box-shadow:0 4px 0 var(--ink-900);transform:translateY(-2px)}.progression-slot--correct{background:#b9e4cf}.progression-slot--incorrect{color:var(--cream-100);background:var(--danger-500)}.progression-slot--incorrect small,.progression-slot--incorrect>span{color:#fffaf2c7}.progression-replays{grid-template-columns:1fr 1fr;gap:8px;padding:14px 17px 17px;display:grid}.progression-replays button{min-height:42px;color:var(--ink-900);border:1px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;background:#fffaf29e;padding:8px 10px;font-size:.72rem;font-weight:800}.chord-bank{background:var(--cream-200);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);gap:18px;margin-top:28px;padding:20px 17px;display:grid}.chord-bank__heading{gap:10px;display:grid}.chord-bank__heading>span{color:var(--ink-500);font-size:.7rem;font-weight:800}.chord-bank__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.progression-chord{min-height:104px;color:var(--ink-900);background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-md);cursor:grab;grid-template-rows:1fr 1fr;grid-template-columns:auto 1fr auto;align-items:center;gap:0 10px;padding:12px;transition:transform .16s,box-shadow .16s,background .16s;display:grid;position:relative}.progression-chord:active{cursor:grabbing}.progression-chord:disabled{cursor:default;opacity:.48}.progression-chord>span{color:var(--ink-500);letter-spacing:-.22em;grid-row:1/3;font-weight:900}.progression-chord strong{align-self:end;font-family:Fraunces Variable,Georgia,serif;font-size:1.75rem}.progression-chord small{color:var(--ink-500);align-self:start;font-weight:750}.progression-chord i{grid-row:1/3;font-size:1.15rem;font-style:normal}.progression-chord--selected{background:var(--mustard-500);box-shadow:0 4px 0 var(--ink-900);transform:translateY(-2px)}.chord-bank__hint{color:var(--ink-500);margin:-6px 0 0;font-size:.72rem}.progression-feedback{min-height:50px}.progression-feedback>p{color:var(--ink-700);margin:0}.progression-feedback__miss,.progression-feedback__complete{border:1px solid var(--ink-900);border-radius:var(--radius-lg);gap:14px;padding:16px;display:grid}.progression-feedback__miss{background:#f5c3c5}.progression-feedback__complete{background:#b9e4cf}.progression-feedback__miss p,.progression-feedback__complete p{color:var(--ink-700);margin:0;line-height:1.4}.progression-feedback__complete>div{gap:4px;display:grid}.progression-feedback__complete span{letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:850}.progression-feedback__complete strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.65rem}.progression-results{background:var(--mustard-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);max-width:760px;box-shadow:6px 7px 0 var(--ink-900);justify-items:start;margin:0 auto;padding:clamp(26px,6vw,60px);display:grid}.progression-results h1{margin:22px 0 16px;font-size:clamp(2.5rem,9vw,5rem)}.mode-heading{gap:20px;margin:28px 0;display:grid}.mode-heading h1{max-width:880px;font-size:clamp(2.7rem,10vw,5.7rem)}.mode-heading--quiz{margin-bottom:34px}.back-link--button{cursor:pointer;background:0 0;border:0;padding:0}.mode-view-switch{background:var(--cream-200);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px;padding:7px;display:grid}.mode-view-switch button{min-width:0;color:var(--ink-700);border-radius:var(--radius-lg);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:1px 10px;padding:13px;display:grid}.mode-view-switch button[aria-pressed=true]{color:var(--cream-100);background:var(--ink-900)}.mode-view-switch span{width:32px;height:32px;color:var(--ink-900);background:var(--mustard-500);border-radius:50%;grid-row:1/-1;place-items:center;font-size:.7rem;font-weight:850;display:grid}.mode-view-switch strong{align-self:end;font-size:.96rem}.mode-view-switch small{opacity:.72;align-self:start}.mode-listen-controls{background:var(--mustard-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:5px 6px 0 var(--ink-900);gap:18px;margin-bottom:20px;padding:18px;display:grid}.mode-listen-controls>div,.mode-listen-controls fieldset{gap:8px;display:grid}.mode-listen-controls fieldset{border:0;min-width:0;margin:0;padding:0}.mode-listen-controls label,.mode-listen-controls legend,.mode-teacher-panel__heading label{color:var(--ink-700);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:850}.mode-listen-controls select,.mode-teacher-panel__heading select{width:100%;min-height:50px;color:var(--ink-900);background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-md);font:inherit;padding:0 14px;font-weight:800}.mode-melody-options{gap:7px;display:grid}.mode-melody-options button{color:var(--ink-900);border-radius:var(--radius-md);text-align:left;cursor:pointer;background:#fffaf294;border:1.5px solid #0000;gap:2px;padding:11px 13px;display:grid}.mode-melody-options button[aria-pressed=true]{background:var(--cream-100);border-color:var(--ink-900);box-shadow:0 3px 0 var(--ink-900)}.mode-melody-options small{color:var(--ink-700);line-height:1.3}.mode-teacher-panel{background:var(--rose-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);gap:20px;padding:20px 17px;display:grid}.mode-teacher-panel__heading{gap:15px;display:grid}.mode-teacher-panel__heading h2,.mode-quiz-setup__heading h2,.mode-answer-panel__heading h2{margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.8rem,6vw,3rem);line-height:1}.mode-teacher-panel__heading label{gap:7px;display:grid}.mode-teacher-grid{gap:10px;display:grid}.mode-teacher-card{background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);gap:5px;min-width:0;padding:16px;display:grid;box-shadow:0 4px #17152e2e}.mode-teacher-card>div:first-child{justify-content:space-between;align-items:center;display:flex}.mode-teacher-card>div:first-child>span{background:var(--mustard-500);border:1px solid var(--ink-900);border-radius:50%;place-items:center;width:34px;height:34px;font-weight:850;display:grid}.mode-teacher-card>div:first-child>button{width:44px;height:44px;color:var(--cream-100);background:var(--ink-900);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.mode-teacher-card h3{margin:8px 0 0;font-family:Fraunces Variable,Georgia,serif;font-size:1.65rem}.mode-teacher-card p{min-height:40px;color:var(--ink-700);margin:0;line-height:1.35}.mode-teacher-card>small{color:var(--teal-600);margin-top:7px;font-weight:850}.mode-formula{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:8px;display:grid}.mode-formula i{aspect-ratio:1;background:var(--cream-200);border-radius:50%;place-items:center;min-width:0;font-size:.68rem;font-style:normal;font-weight:850;display:grid}.mode-formula .mode-formula__colour{background:var(--mustard-500);border:1px solid var(--ink-900)}.mode-quiz-setup{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:5px 6px 0 var(--ink-900);gap:22px;padding:20px 17px;display:grid}.mode-quiz-setup__heading{gap:12px;display:grid}.mode-quiz-setup__heading>span{color:var(--ink-700);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:850}.mode-level-grid{gap:10px;display:grid}.mode-level-grid>button{color:var(--ink-900);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);text-align:left;cursor:pointer;background:#fffaf2ad;gap:4px;padding:17px;display:grid}.mode-level-grid>button.mode-level-card--selected{background:var(--mustard-500);box-shadow:0 5px 0 var(--ink-900);transform:translateY(-2px)}.mode-level-grid span{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:850}.mode-level-grid strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.55rem}.mode-level-grid p{color:var(--ink-700);margin:2px 0;line-height:1.35}.mode-level-grid small{color:var(--ink-700);font-size:.68rem;font-weight:750;line-height:1.35}.mode-start-quiz{width:100%}.mode-level-badge{background:var(--rose-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);width:fit-content;min-width:190px;box-shadow:4px 5px 0 var(--ink-900);gap:2px;padding:14px 18px;display:grid}.mode-level-badge span{letter-spacing:.11em;text-transform:uppercase;font-size:.67rem;font-weight:850}.mode-level-badge strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.25rem}.mode-level-badge small{color:var(--ink-700);font-weight:750}.mode-quiz-stage{background:var(--teal-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:6px 7px 0 var(--ink-900);overflow:hidden}.mode-quiz-stage__topline{color:#17152ec7;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #17152e4d;justify-content:space-between;gap:12px;padding:13px 17px;font-size:.67rem;font-weight:850;display:flex}.mode-quiz-stage__body{gap:22px;padding:24px 18px;display:grid}.mode-quiz-stage__body>div:last-child{align-content:center;display:grid}.mode-quiz-stage__body h2{margin:0 0 8px;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.8rem,6vw,3rem);line-height:1}.mode-quiz-stage__body p:not(.eyebrow){color:var(--ink-700);margin:0 0 18px;line-height:1.4}.mode-orbit{aspect-ratio:1;border:2px solid #17152e3d;border-radius:50%;justify-self:center;width:min(100%,260px);position:relative}.mode-orbit:before{content:"";background:#fffaf247;border-radius:50%;position:absolute;inset:21%}.mode-orbit>strong{background:var(--mustard-500);border:1.5px solid var(--ink-900);border-radius:50%;place-items:center;width:70px;height:70px;font-family:Fraunces Variable,Georgia,serif;font-size:2rem;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.mode-orbit>i{--orbit-angle:calc(var(--mode-step) * 51.428deg - 90deg);width:34px;height:34px;color:var(--cream-100);background:var(--ink-900);transform:translate(-50%, -50%) rotate(var(--orbit-angle)) translate(112px) rotate(calc(var(--orbit-angle) * -1));border-radius:50%;place-items:center;font-size:.72rem;font-style:normal;font-weight:850;display:grid;position:absolute;top:50%;left:50%}.mode-main-play{min-height:54px;color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-full);cursor:pointer;border:0;justify-self:start;align-items:center;gap:11px;padding:0 20px 0 8px;font-weight:850;display:inline-flex}.mode-main-play>span{width:38px;height:38px;color:var(--ink-900);background:var(--rose-500);border-radius:50%;place-items:center;display:grid}.mode-main-play:disabled{cursor:wait;opacity:.75}.mode-answer-panel{background:var(--cream-200);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);gap:18px;margin-top:28px;padding:20px 17px;display:grid}.mode-answer-panel__heading{gap:9px;display:grid}.mode-answer-panel__heading>span{color:var(--ink-500);font-size:.7rem;font-weight:800}.mode-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mode-answer{min-width:0;min-height:90px;color:var(--ink-900);background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-md);cursor:pointer;align-content:center;place-items:center;gap:3px;padding:12px 7px;display:grid}.mode-answer:disabled{cursor:default;opacity:.48}.mode-answer strong{overflow-wrap:anywhere;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.15rem,5vw,1.55rem)}.mode-answer small{color:var(--ink-500);text-align:center;font-size:.62rem;font-weight:750}.mode-answer--selected,.mode-answer--correct{opacity:1!important}.mode-answer--selected{background:var(--mustard-500)}.mode-answer--correct{box-shadow:0 4px 0 var(--ink-900);background:#b9e4cf}.mode-answer--incorrect{color:var(--ink-900);background:#efc4c8;opacity:1!important}.mode-answer--incorrect small{color:var(--ink-700)}.mode-feedback{min-height:48px}.mode-feedback>p{color:var(--ink-700);margin:0}.mode-feedback__result{border:1px solid var(--ink-900);border-radius:var(--radius-lg);gap:15px;padding:17px;display:grid}.mode-feedback__result--correct{background:#b9e4cf}.mode-feedback__result--miss{background:#f5c3c5}.mode-feedback__result>div:first-child{gap:4px;display:grid}.mode-feedback__result>div:first-child>span{letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:850}.mode-feedback__result strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.6rem}.mode-feedback__result p{color:var(--ink-700);margin:0;line-height:1.4}.mode-comparison{gap:8px;display:grid}.mode-comparison button{min-height:46px;color:var(--ink-900);border:1px solid var(--ink-900);border-radius:var(--radius-full);cursor:pointer;background:#fffaf2b8;align-items:center;gap:9px;padding:0 13px;font-size:.74rem;font-weight:800;display:flex}.mode-comparison button span{width:27px;height:27px;color:var(--cream-100);background:var(--ink-900);border-radius:50%;place-items:center;display:grid}.mode-results{background:var(--rose-500);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);max-width:800px;box-shadow:6px 7px 0 var(--ink-900);justify-items:start;margin:0 auto;padding:clamp(26px,6vw,60px);display:grid}.mode-results h1{margin:22px 0 16px;font-size:clamp(2.5rem,9vw,5rem)}@media (width>=720px){.mode-page{padding:64px 42px 44px}.mode-heading{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:end;margin-bottom:38px}.mode-heading--quiz{grid-template-columns:minmax(0,1fr) auto}.mode-view-switch{width:min(100%,590px)}.mode-listen-controls{grid-template-columns:minmax(130px,.32fr) minmax(0,1.68fr);align-items:end;padding:22px}.mode-melody-options{grid-template-columns:1fr 1fr}.mode-teacher-panel,.mode-quiz-setup,.mode-answer-panel{padding:28px}.mode-teacher-panel__heading,.mode-quiz-setup__heading,.mode-answer-panel__heading{grid-template-columns:minmax(0,1fr) minmax(210px,.38fr);align-items:end}.mode-teacher-grid,.mode-level-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mode-start-quiz{justify-self:end;width:min(100%,360px)}.mode-quiz-stage__topline{padding-left:28px;padding-right:28px}.mode-quiz-stage__body{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:center;padding:30px}.mode-answer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mode-feedback__result--correct{grid-template-columns:minmax(0,1fr) auto;align-items:end}.mode-feedback__result--miss{grid-template-columns:minmax(0,.85fr) minmax(280px,1.15fr);align-items:end}.mode-feedback__result--miss>.button{grid-column:2;justify-self:end}.resolve-page{padding:64px 42px 44px}.resolve-heading{grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);align-items:end;margin-bottom:44px}.resolve-stage__question,.resolution-choices{padding:28px}.resolve-stage__question{grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);align-items:center}.resolve-play{grid-column:1/-1}.resolution-choices__heading{grid-template-columns:1fr auto;align-items:end}.resolution-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.resolution-choice{grid-template-rows:auto auto auto;grid-template-columns:1fr;min-height:142px}.resolution-choice>span{grid-row:auto}.resolution-lock{justify-self:end;width:min(100%,360px)}.resolution-feedback{grid-template-columns:minmax(0,1fr) minmax(210px,.5fr);align-items:end}.resolution-feedback>.button{grid-column:2}.progression-page{padding:64px 42px 44px}.progression-setup-heading{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:end;margin-bottom:44px}.progression-setup{padding:28px}.progression-setup__heading{grid-template-columns:minmax(0,1fr) auto;align-items:end}.progression-level-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.progression-setup__footer{grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);padding-top:18px}.progression-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-bottom:44px}.progression-stage__intro{grid-template-columns:minmax(0,1fr) auto;padding:28px}.progression-stage__topline{padding-left:28px;padding-right:28px}.progression-play{min-width:220px}.progression-timeline{gap:12px;padding:14px 28px}.progression-slot{min-height:132px}.progression-replays{justify-content:flex-end;padding-left:28px;padding-right:28px;display:flex}.progression-replays button{min-width:180px}.chord-bank{padding:28px}.chord-bank__heading{grid-template-columns:minmax(0,1fr) auto;align-items:end}.chord-bank__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.progression-feedback__miss,.progression-feedback__complete{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media (width>=980px){.resolve-page,.progression-page,.mode-page{padding-left:64px;padding-right:64px}.exercise-carousel{grid-auto-columns:minmax(280px,31%)}.progression-level-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.site-header{z-index:20;gap:14px;position:relative}.site-nav{background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-lg);box-shadow:5px 6px 0 var(--ink-900);gap:4px;padding:10px;display:none;position:absolute;top:calc(100% + 1px);left:12px;right:12px}.site-nav--open{display:grid}.site-nav a{color:var(--ink-700);border-radius:var(--radius-md);padding:12px 14px;font-size:.88rem;font-weight:750;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink-900);background:var(--cream-200)}.header-rhythm{background:var(--cream-200);border-radius:var(--radius-full);border:1px solid #17152e24;align-items:center;gap:9px;padding:7px 11px;font-size:.7rem;text-decoration:none;display:none}.header-rhythm>span{gap:3px;display:flex}.header-rhythm i{background:var(--ink-200);border-radius:var(--radius-full);width:6px;height:12px}.header-rhythm i.is-complete{background:var(--teal-500)}.menu-toggle{background:var(--cream-200);cursor:pointer;border:1px solid #17152e29;border-radius:50%;align-content:center;justify-items:center;gap:6px;width:42px;height:42px;margin-left:auto;display:grid}.menu-toggle span{background:var(--ink-900);border-radius:var(--radius-full);width:17px;height:2px}.home-intro{margin-bottom:36px}.home-progress{gap:12px;margin-bottom:52px;display:grid}.home-progress__signal,.home-progress__rhythm{border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);gap:20px;padding:20px;display:grid}.home-progress__signal{background:var(--ink-900);grid-template-columns:minmax(0,1fr) auto;align-items:center}.home-progress__signal .eyebrow{color:var(--teal-500)}.home-progress__signal h2{color:var(--cream-100);margin-bottom:8px;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.65rem,6vw,2.4rem);line-height:1}.home-progress__signal p:not(.eyebrow){color:#fffaf2b3;max-width:470px;margin-bottom:13px;font-size:.84rem;line-height:1.45}.text-link{color:var(--cream-100);text-underline-offset:4px;font-size:.78rem;font-weight:800}.text-link span{margin-left:5px}.home-progress__rhythm{background:var(--cream-200)}.home-progress__recommendation{border-top:1px solid #17152e24;align-content:start;gap:4px;padding-top:17px;display:grid}.home-progress__recommendation>span{color:var(--ink-500);letter-spacing:.09em;text-transform:uppercase;font-size:.66rem;font-weight:850}.home-progress__recommendation strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.35rem}.home-progress__recommendation p{color:var(--ink-700);margin:2px 0 9px;font-size:.8rem;line-height:1.35}.home-progress__recommendation a{color:var(--ink-900);text-underline-offset:4px;justify-self:start;font-size:.78rem;font-weight:850}.exercise-library{scroll-margin-top:24px}.practice-signal-ring{--signal-value:0deg;aspect-ratio:1;background:conic-gradient(var(--mustard-500) 0 var(--signal-value), #17152e1f var(--signal-value) 360deg);border-radius:50%;flex:none;place-items:center;width:190px;display:grid;position:relative}.practice-signal-ring:before{content:"";background:var(--cream-100);border-radius:50%;position:absolute;inset:14px}.practice-signal-ring>div{z-index:1;justify-items:center;display:grid;position:relative}.practice-signal-ring strong{font-family:Fraunces Variable,Georgia,serif;font-size:3.4rem;line-height:.9}.practice-signal-ring span{color:var(--ink-500);letter-spacing:.06em;text-transform:uppercase;margin-top:6px;font-size:.68rem;font-weight:800}.practice-signal-ring--compact{background:conic-gradient(var(--mustard-500) 0 var(--signal-value), #fffaf22e var(--signal-value) 360deg);width:94px}.practice-signal-ring--compact:before{background:var(--ink-900);inset:9px}.practice-signal-ring--compact strong{color:var(--cream-100);font-size:2rem}.practice-signal-ring--compact span{color:#fffaf28c;text-align:center;max-width:60px;margin-top:3px;font-size:.5rem}.weekly-rhythm{gap:12px;display:grid}.weekly-rhythm__beats{gap:7px;display:flex}.weekly-rhythm__beats i{background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-full);width:23px;height:49px;transform:rotate(8deg)}.weekly-rhythm__beats i:nth-child(2n){transform:rotate(-8deg)}.weekly-rhythm__beats i.weekly-rhythm__beat--complete{background:var(--teal-500);box-shadow:inset 0 -8px #17152e14}.weekly-rhythm p{flex-wrap:wrap;align-items:baseline;gap:4px 9px;margin:0;display:flex}.weekly-rhythm strong{font-family:Fraunces Variable,Georgia,serif;font-size:1.45rem}.weekly-rhythm span{color:var(--ink-500);font-size:.76rem;font-weight:700}.progress-page{padding:44px 20px 32px}.progress-page__heading{gap:18px;margin-bottom:36px;display:grid}.progress-page__heading h1{font-size:clamp(2.65rem,11vw,5.5rem)}.progress-overview{background:var(--ink-900);border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);box-shadow:6px 7px 0 var(--teal-500);overflow:hidden}.progress-overview__signal{color:var(--cream-100);text-align:center;justify-items:center;gap:22px;padding:28px 20px;display:grid}.progress-overview__signal .eyebrow{color:var(--teal-500)}.progress-overview__signal h2,.progress-section-heading h2{margin:0;font-family:Fraunces Variable,Georgia,serif;font-size:clamp(1.7rem,6vw,2.5rem);line-height:1.05}.progress-overview__signal p:not(.eyebrow){color:#fffaf2a6;max-width:340px;margin:10px auto 0;line-height:1.45}.progress-overview__skills{background:var(--cream-100);padding:22px 18px}.progress-section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}.progress-section-heading .eyebrow{margin-bottom:7px}.progress-section-heading>span{color:var(--ink-500);font-size:.65rem;font-weight:750}.skill-signal-list{gap:17px;display:grid}.skill-signal{gap:8px;display:grid}.skill-signal>div{justify-content:space-between;gap:12px;display:flex}.skill-signal strong{font-size:.86rem}.skill-signal div span{color:var(--ink-500);font-size:.68rem;font-weight:700}.skill-signal>i{background:var(--cream-200);border-radius:var(--radius-full);height:7px;overflow:hidden}.skill-signal>i span{background:var(--teal-500);border-radius:inherit;height:100%;display:block}.skill-signal:nth-child(2n)>i span{background:var(--rose-500)}.skill-signal:nth-child(3n)>i span{background:var(--mustard-500)}.progress-detail-grid{gap:14px;margin-top:22px;display:grid}.progress-card{border:1.5px solid var(--ink-900);border-radius:var(--radius-xl);padding:20px}.progress-card--attention{background:var(--teal-500)}.progress-card--rhythm{background:var(--mustard-500)}.progress-card--movement{background:var(--cream-200)}.attention-list{gap:7px;display:grid}.attention-list a{border-radius:var(--radius-md);background:#fffaf2bf;border:1px solid #17152e2e;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;text-decoration:none;display:grid}.attention-list a>span{color:var(--ink-500);font-size:.68rem;font-weight:850}.attention-list a div{display:grid}.attention-list small{color:var(--ink-500)}.attention-list b{font-family:Fraunces Variable,Georgia,serif;font-size:1.2rem}.progress-empty-copy{gap:14px;display:grid}.progress-empty-copy p{color:var(--ink-700);line-height:1.4}.progress-empty-copy .button{width:100%;font-size:.8rem}.weekly-goal-control{border-top:1px solid #17152e2e;gap:7px;margin-top:24px;padding-top:18px;display:grid}.weekly-goal-control span{color:var(--ink-700);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:850}.weekly-goal-control select{min-height:48px;color:var(--ink-900);background:var(--cream-100);border:1.5px solid var(--ink-900);border-radius:var(--radius-md);font:inherit;padding:0 13px;font-weight:800}.movement-chart{gap:10px;display:grid}.movement-chart svg{width:100%;height:170px;overflow:visible}.movement-chart line{stroke:#17152e29;stroke-width:.8px}.movement-chart polyline{fill:none;stroke:var(--ink-900);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.movement-chart circle{fill:var(--rose-500);stroke:var(--ink-900);stroke-width:.8px}.movement-chart__labels{color:var(--ink-500);text-align:center;grid-template-columns:repeat(6,minmax(0,1fr));font-size:.58rem;font-weight:700;display:grid}.progress-empty-chart{min-height:180px;color:var(--ink-500);border-radius:var(--radius-lg);text-align:center;border:1px dashed #17152e33;align-content:center;place-items:center;gap:6px;display:grid}.progress-empty-chart span{color:var(--rose-500);font-family:Fraunces Variable,Georgia,serif;font-size:3rem}.progress-empty-chart p{max-width:260px;margin:0;font-size:.78rem;line-height:1.4}@media (width>=720px){.site-header{justify-content:flex-start;padding:18px 32px}.site-nav{box-shadow:none;background:0 0;border:0;border-radius:0;margin-left:28px;padding:0;display:flex;position:static}.site-nav a{padding:9px 12px;font-size:.8rem}.header-rhythm{margin-left:auto;display:flex}.menu-toggle{display:none}.home-progress{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);margin-bottom:64px}.home-progress__signal,.home-progress__rhythm{min-height:220px;padding:25px}.home-progress__rhythm{grid-template-columns:.85fr 1.15fr;align-items:stretch}.home-progress__recommendation{border-top:0;border-left:1px solid #17152e24;padding:3px 0 3px 20px}.progress-page{padding:64px 42px 44px}.progress-page__heading{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:end;margin-bottom:48px}.progress-overview{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);display:grid}.progress-overview__signal{padding:36px 28px}.progress-overview__skills{padding:32px}.progress-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.progress-card{padding:25px}.progress-card--movement{grid-column:1/-1}}@media (width>=980px){.progress-page{padding-left:64px;padding-right:64px}.progress-detail-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr)}.progress-card--movement{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.fretboard-session-heading h1{font-size:clamp(1.8rem,5vw,2.8rem)}.fretboard-prompt{background:var(--cream-100);border-left:6px solid var(--ink-900);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:20px;padding:clamp(16px,3vw,26px);display:flex}.fretboard-prompt .eyebrow{color:var(--ink-700);margin:0 0 8px}.fretboard-prompt h2{margin:0;font-family:inherit;font-size:clamp(1.3rem,3.4vw,2rem);font-weight:800;line-height:1.25}.fretboard-prompt p:last-child{margin:10px 0 0;line-height:1.5}.fretboard-prompt__count{background:var(--blush-100);border-radius:var(--radius-full);flex-shrink:0;padding:12px 16px;font-weight:800}.mode-settings{background:var(--cream-200);border-radius:var(--radius-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:20px;margin:24px 0;padding:24px;display:grid}.mode-settings label{gap:8px;min-width:0;font-weight:750;display:grid}.mode-settings select{width:100%;min-height:48px;font:inherit;color:var(--ink-900);background:var(--cream-100);border:1px solid var(--ink-500);border-radius:10px;padding:10px}.mode-question-body{padding:clamp(20px,4vw,36px)}.mode-question-body h2{font:800 clamp(1.5rem,4vw,2.1rem)/1.25 DM Sans Variable,sans-serif}.mode-teacher-grid,.mode-answer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.mode-teacher-card .button{width:100%;margin-top:18px}.mode-listen-cue{background:var(--cream-100);border-radius:12px;padding:16px;font-weight:750}.mode-feedback .mode-comparison{margin:18px 0}.mode-feedback li{margin:10px 0;line-height:1.6}.mode-feedback>.button{margin-top:16px}@media (width<=600px){.fretboard-prompt{flex-direction:column;align-items:flex-start;gap:12px}.fretboard-session-heading{margin-bottom:18px}.mode-settings{gap:16px;padding:16px}.mode-comparison{grid-template-columns:1fr}}.mode-question-body .eyebrow{color:var(--ink-700)}@media (width<=600px){.mode-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-answer{min-width:0;padding:16px 8px}.mode-answer strong{font-size:1.05rem}.mode-answer small{font-size:.7rem}}.progression-reference{white-space:nowrap;display:inline-flex}.progression-reference__chord{border-radius:.2em;padding:0 .12em;display:inline-block}.progression-reference__chord--playing{color:var(--ink-900);background:var(--blush-300);box-shadow:0 3px 0 var(--ink-900)}.progression-slot--playing{outline:4px solid var(--ink-900);outline-offset:-4px;background:var(--blush-300)}.progression-slot--playing:after{content:"Playing";color:var(--cream-100);background:var(--ink-900);border-radius:var(--radius-full);letter-spacing:.02em;padding:2px 6px;font:750 .58rem/1.4 DM Sans Variable,sans-serif;position:absolute;top:6px;right:7px}.account-controls{margin-left:auto;position:relative}.account-controls summary{cursor:pointer;border:1px solid var(--ink-200);border-radius:24px;padding:12px 16px;font-weight:700;list-style:none}.account-controls summary:focus-visible{outline:3px solid var(--teal-600);outline-offset:3px}.account-popover{z-index:30;background:var(--cream-100);border:1px solid var(--ink-200);width:min(350px,100vw - 48px);box-shadow:var(--shadow-card);border-radius:20px;max-height:75vh;padding:24px;position:absolute;top:calc(100% + 12px);right:0;overflow-y:auto}.account-popover button,.account-form button{cursor:pointer;min-height:44px}.account-popover>button,.account-delete button{border:1px solid var(--ink-200);background:var(--cream-200);text-align:left;border-radius:12px;width:100%;margin-top:10px;padding:10px;display:block}.account-email{overflow-wrap:anywhere}.account-form{gap:14px;max-width:420px;display:grid}.account-form label{gap:6px;font-weight:600;display:grid}.account-form input{border:1px solid var(--ink-500);background:var(--white);border-radius:10px;width:100%;min-width:0;min-height:48px;padding:10px}.account-form p{margin:0}.account-form p:empty{display:none}.access-page{max-width:780px;margin:auto;padding:clamp(24px,6vw,72px)}.access-page h1{font-family:Fraunces Variable,serif;font-size:clamp(32px,5vw,52px)}.access-page>.button{margin-top:24px}.skill-progression{background:var(--cream-200);border-radius:18px;flex-wrap:wrap;align-items:center;gap:20px;margin:20px 0;padding:20px;display:flex}.skill-progression>div{flex:220px}.skill-progression p{margin:0 0 8px}.skill-progression small{color:var(--ink-700);display:block}.skill-progression progress{accent-color:var(--teal-600);width:100%;height:12px}.exploration-control{align-items:center;gap:12px;min-height:48px;padding:12px 0;display:flex}.exploration-control input{width:22px;height:22px;accent-color:var(--teal-600)}.progression-level-grid button:disabled{opacity:.6;cursor:not-allowed}.rating-explainer{color:var(--ink-700);line-height:1.6}@media (width<=600px){.account-controls{position:static}.account-popover{position:fixed;top:84px;right:24px}.account-controls summary{padding:10px;font-size:14px}.site-header{gap:8px}}.header-account-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.header-account-actions .account-controls{margin-left:0}.unlock-all-button{border:1px solid var(--ink-200);background:var(--mustard-500);min-height:44px;color:var(--ink-900);cursor:pointer;white-space:nowrap;border-radius:24px;padding:10px 14px;font-weight:700}.unlock-all-button[aria-pressed=true]{background:var(--teal-500)}.preview-access-note{background:var(--cream-200);text-align:center;margin:0;padding:12px 24px;font-size:14px}@media (width<=600px){.header-account-actions{gap:5px}.unlock-all-button{padding:10px;font-size:12px}.site-header .brand{gap:6px}.site-header .brand-mark{width:30px;height:30px}}@media (width<=420px){.site-header{flex-wrap:wrap}.header-account-actions{flex-basis:100%;order:3;justify-content:flex-end}.menu-toggle{margin-left:auto}}.header-account-actions .account-controls summary{white-space:nowrap}
