:root{--ink:#15221b;--muted:#667269;--paper:#f7f5ef;--green:#174f3b;--lime:#d9ed75;--line:#dfe3dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.top{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid var(--line);background:#fbfaf6;position:relative;z-index:2}.top a{font-size:20px;text-decoration:none;color:inherit;letter-spacing:-.6px}.top b{color:var(--green)}button{border:0;border-radius:10px;padding:13px 18px;background:var(--green);color:white;font-weight:700;cursor:pointer}.top button{background:transparent;color:var(--green);border:1px solid #b5c1b9;padding:9px 14px}.hero{min-height:560px;display:grid;grid-template-columns:1.2fr .8fr;grid-gap:60px;gap:60px;align-items:center;max-width:1180px;margin:auto;padding:80px 28px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:12px;font-weight:800;color:#587d65}.hero h1{font-family:Georgia,serif;font-size:clamp(48px,7vw,88px);line-height:.93;letter-spacing:-4px;margin:15px 0 28px;max-width:820px}.hero h1 em{color:var(--green);font-weight:400}.hero p{font-size:18px;line-height:1.55;max-width:650px;color:var(--muted)}form{display:flex;gap:10px;margin-top:30px;max-width:720px;background:white;padding:8px;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 30px #163c2512}input{flex:1 1;border:0;padding:14px;font-size:16px;outline:none;min-width:0}.demo{background:transparent;color:var(--green);text-decoration:underline;padding:12px 0}.safety{display:block;color:var(--muted)}.error{color:#9d2e24!important;font-weight:700}.art{height:380px;background:var(--green);border-radius:180px 16px 180px 16px;display:grid;grid-template-columns:1fr 1fr;place-items:center;padding:55px;transform:rotate(2deg);box-shadow:20px 20px 0 var(--lime)}.art span{font:48px Georgia,serif;color:var(--lime);border:1px solid #ffffff42;border-radius:50%;width:100px;height:100px;display:grid;place-items:center}.video{max-width:1120px;aspect-ratio:16/9;margin:0 auto 50px;padding:0 28px}.video iframe{width:100%;height:100%;border:0;border-radius:18px;background:#111}.results{max-width:1180px;margin:auto;padding:40px 28px}.song-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;border-bottom:2px solid var(--ink);padding-bottom:28px}.song-head h2{font:48px Georgia,serif;margin:10px 0}.facts{display:flex;gap:25px;flex-wrap:wrap}.facts span{font-size:18px;font-weight:800}.facts small{display:block;color:var(--muted);font-size:10px;letter-spacing:1px;margin-bottom:6px}.warning{background:#fff3d5;border-left:5px solid #d89b27;padding:14px 20px;margin:24px 0}.warning p{margin:6px 0}.layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);grid-gap:34px;gap:34px;margin-top:38px}.plan,.practice,.section-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:18px}.section-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.section-card h3{font:32px Georgia,serif;margin:7px 0}.section-card header button{background:#eef2ed;color:var(--green);padding:10px 12px}.confidence{font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:800;padding:4px 7px;border-radius:20px}.certain{background:#dcefdc;color:#286437}.likely{background:#fff0c9;color:#76530b}.check{background:#ffe0da;color:#902e21}.progression{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:20px 0 8px}.progression span{font:30px Georgia,serif;padding:20px;text-align:center;border-right:1px solid var(--line)}.progression span:last-child{border:0}.pattern{margin-top:20px}.pattern b{display:block;margin-bottom:8px}.pattern code,.practice code{display:block;font-size:18px;background:#eef2ed;padding:12px;margin:5px 0;border-radius:8px}.tab{background:#14221b;color:#e9f5ed;padding:20px;overflow:auto;border-radius:10px;font:18px/1.55 monospace}.section-card li{margin:8px 0}.section-card details{color:var(--muted);font-size:13px}.practice-link{background:transparent;color:var(--green);padding:8px 0}.practice{background:var(--green);color:white;position:-webkit-sticky;position:sticky;top:20px}.practice .eyebrow{color:var(--lime)}.practice h2{font:34px Georgia,serif}.hero-chord{font:78px Georgia,serif;color:var(--lime)}.practice code{background:#ffffff18}.controls{display:flex;gap:12px;margin:20px 0}.controls label{font-size:13px}.controls select{display:block;margin-top:5px;padding:8px;border-radius:8px}.hint{font-size:12px;color:#cbd8d0}.practice button{background:var(--lime);color:var(--green);width:100%}.plan ol{padding-left:22px}.plan li{margin:14px 0;line-height:1.45}footer{text-align:center;padding:50px;color:var(--muted);border-top:1px solid var(--line)}@media(max-width:800px){.hero{grid-template-columns:1fr;padding-top:55px}.hero h1{letter-spacing:-2px}.art{display:none}form{flex-direction:column}.song-head{display:block}.facts{margin-top:25px}.layout{grid-template-columns:1fr}.practice{position:static}.section-card header{display:block}.section-card header button{margin-top:10px}.progression span{font-size:23px;padding:13px}.top button{font-size:12px}}@media print{.hero,.practice,.practice-link,.section-card header button,.top,.video,footer{display:none!important}body{background:white}.results{padding:0}.layout{display:block}.plan,.section-card{page-break-inside:avoid;break-inside:avoid;border-color:#aaa}.warning{font-size:12px}.song-head h2{font-size:34px}}.download-options,.language-toggle,.top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.language-toggle{padding:3px;border:1px solid var(--line);border-radius:10px}.language-toggle button{border:0;padding:6px 8px}.language-toggle button.active{background:var(--green);color:#fff}.download-options{margin-top:14px}.download-options button{background:var(--green)}.tab-visual{margin:10px 0 14px;background:#10231a;border-radius:12px;padding:12px;overflow-x:auto}.tab-visual svg{display:block;min-width:620px;width:100%;height:auto}.tab-visual line{stroke:#a8c6b6;stroke-width:1}.tab-visual text{fill:#effaf3;font:700 14px monospace}.tab-visual rect{fill:#10231a}.tab-visual .tab-note{fill:#fff;font-size:14px}.tab-visual .hammer-arc{fill:none;stroke:#d9ed75;stroke-width:2.5}.tab-visual .hammer-label{fill:#d9ed75;font:700 10px Arial}.strum-timeline{display:flex;align-items:end;gap:6px;padding:10px 0;overflow-x:auto}.strum-timeline>div{display:grid;grid-template-rows:25px 48px;min-width:62px;text-align:center;border-bottom:3px solid var(--green)}.strum-timeline .beat-chord{font-weight:800;color:var(--green);white-space:nowrap}.strum-timeline .stroke{display:grid;place-items:center;background:#eef2ed;border-radius:9px 9px 0 0;font:700 24px monospace}.strum-timeline .rest .stroke{color:var(--muted);background:#f7f5ef}.strum-legend{display:block;color:var(--muted);margin-top:5px}.techniques{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.techniques span{background:#eff4cc;border-radius:8px;padding:8px 10px;font-size:13px}.safety{margin-top:14px}.music-brand{gap:7px}.music-brand img{width:120px}.complete-song{margin-top:40px;padding:32px;background:#fff;border:1px solid var(--line);border-radius:18px}.layout>aside,.layout>div,.section-card,.tab-wrap{min-width:0}.hero,.results,.video{width:100%}@media(max-width:800px){.top{height:auto;min-height:70px;padding:10px 16px}.music-brand img{width:100px}.top-actions{justify-content:flex-end}.results{padding:28px 16px}.tab-visual svg{min-width:560px}.download-options{align-items:stretch}.download-options button{width:100%}}@media print{@page{size:A4;margin:8mm}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.top{display:flex!important}.hero{display:grid!important}.video{display:block!important}.practice-link{display:inline-block!important}.practice{display:block!important}.section-card header button{display:inline-block!important}footer{display:block!important}body{background:var(--paper)!important}.results{padding:40px 28px!important}.layout{display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr)!important}.complete-song,.plan,.practice,.section-card,.tab-visual{page-break-inside:avoid;break-inside:avoid}}:root{--ink:#07162d;--muted:#657086;--paper:#f8f7ff;--card:#fff;--green:#7137e8;--lime:#ffe2ee;--line:#dedcf0;--pink:#ee2186;--orange:#ff7a00;--dark:#34206f}body{position:relative;isolation:isolate;background:radial-gradient(circle at 8% 3%,rgba(255,122,0,.18),transparent 25rem),radial-gradient(circle at 93% 13%,rgba(238,33,134,.18),transparent 29rem),radial-gradient(circle at 52% 96%,rgba(91,55,232,.2),transparent 31rem),linear-gradient(145deg,#fff,#f8f6ff 44%,#f3f7ff);background-attachment:fixed}body:before{content:"♫   ♩   🎸   ♪   ♬\A   🎸   ♫   ♪   ♩   🎸\A ♬   ♪   🎸   ♫   ♩";position:fixed;z-index:-1;inset:-4vh -2vw;overflow:hidden;white-space:pre-wrap;color:#7137e8;font:clamp(38px,6vw,84px)/2.4 Georgia,serif;letter-spacing:clamp(20px,6vw,90px);opacity:.055;transform:rotate(-8deg);pointer-events:none}.top{height:78px;background:rgba(255,255,255,.84);border-color:rgba(113,55,232,.14);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.music-brand{display:flex;align-items:center;gap:9px}.music-brand img{width:145px;height:auto}.music-brand b{padding:6px 10px;border-radius:999px;color:white!important;background:linear-gradient(135deg,#7137e8,#ee2186 65%,#ff7a00);font-size:14px;letter-spacing:0;box-shadow:0 8px 18px rgba(113,55,232,.22)}.hero form button,button{background:linear-gradient(135deg,#6939e8,#e82291 58%,#ff7800 115%);box-shadow:0 12px 24px rgba(104,53,220,.22)}.top button{border-color:rgba(113,55,232,.25);color:var(--dark);background:white;box-shadow:none}.demo,.eyebrow,.hero h1 em,.practice-link{color:var(--green)}.hero form{border-color:rgba(113,55,232,.17);box-shadow:0 20px 48px rgba(52,32,111,.12)}.art{background:linear-gradient(145deg,#7137e8,#ee2186 68%,#ff7a00);box-shadow:20px 20px 0 #eee7ff}.art span{color:white;background:rgba(255,255,255,.1)}.chord-gallery{margin:30px 0;padding:28px;border:1px solid rgba(113,55,232,.16);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 18px 45px rgba(52,32,111,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.chord-gallery-head h2{margin:7px 0 5px;font:36px Georgia,serif}.chord-gallery-head p{margin:0 0 22px;color:var(--muted)}.chord-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));grid-gap:14px;gap:14px}.chord-diagram,.chord-missing{min-height:265px;padding:16px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#fff,#f5f1ff)}.chord-diagram h3,.chord-missing h3{margin:0;text-align:center;font:32px Georgia,serif;color:var(--dark)}.chord-diagram svg{display:block;width:100%;max-width:175px;margin:auto}.chord-diagram svg line{stroke:#657086;stroke-width:1}.chord-diagram svg .nut{stroke:#07162d;stroke-width:4}.chord-diagram svg .barre{stroke:#7137e8;stroke-width:15;stroke-linecap:round}.finger-dot{fill:#ee2186;stroke:white;stroke-width:1.5}.finger-number{fill:white;font:700 10px Arial}.open-mark{fill:#07162d;font:700 15px Arial}.fret-label,.string-order{fill:#657086;font:9px Arial}.chord-diagram small{display:block;color:var(--muted);font-size:9px;text-align:center}.chord-missing{display:grid;place-content:center;text-align:center}.chord-missing p{color:var(--muted);font-size:13px}.practice{background:linear-gradient(155deg,#34206f,#7137e8 64%,#c52293)}.hero-chord,.practice .eyebrow{color:#fff0d7}.practice button{color:white;background:linear-gradient(135deg,#ee2186,#ff7a00)}.plan,.section-card{box-shadow:0 12px 32px rgba(52,32,111,.07)}.pattern code{background:#eee8ff}.practice code{background:rgba(255,255,255,.13)}@media (max-width:600px){.music-brand img{width:112px}.music-brand b{font-size:11px;padding:4px 7px}.chord-gallery{padding:18px;margin-inline:-6px}.chord-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.chord-diagram{padding:10px}.chord-diagram h3{font-size:27px}}@media print{body:before{display:none}.chord-gallery{box-shadow:none;page-break-inside:avoid;break-inside:avoid}.chord-grid{grid-template-columns:repeat(4,1fr)}.chord-diagram{min-height:230px;padding:8px}}.complete-song{margin-top:46px;padding:clamp(22px,4vw,38px);border-radius:24px;color:white;background:linear-gradient(145deg,#24134f,#7137e8 58%,#d51e8d 105%);box-shadow:0 24px 55px rgba(52,32,111,.22)}.complete-song>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.complete-song .eyebrow{color:#ffd4e7}.complete-song h2{margin:6px 0;font:clamp(36px,5vw,55px) Georgia,serif}.complete-song header p{margin:0 0 25px;color:#e2daf6}.complete-song .confidence{flex:0 0 auto}.song-roadmap{display:grid;grid-gap:10px;gap:10px}.song-roadmap article{display:grid;grid-template-columns:42px 1fr;grid-gap:14px;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.09)}.part-number{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#34206f;background:#fff0d7;font-weight:900}.song-roadmap h3{margin:2px 0 12px;font-size:21px}.complete-progression{display:flex;flex-wrap:wrap;gap:7px}.complete-progression span{min-width:58px;padding:10px 14px;border-radius:9px;color:#07162d;background:white;text-align:center;font:23px Georgia,serif}.song-roadmap article b{display:inline-block;margin-top:10px;color:#ffd4e7;font-size:12px}.song-roadmap article p{margin:7px 0 0;color:#e2daf6}.playthrough-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}.playthrough-footer strong{font-size:22px;letter-spacing:5px;color:#fff0d7}.playthrough-footer p{margin:7px 0;color:#e2daf6}.playthrough-footer button{flex:0 0 auto;background:linear-gradient(135deg,#ee2186,#ff7a00)}.complete-song details{margin-top:18px;color:#e2daf6;font-size:12px}.overview-empty{padding:18px;border-radius:12px;background:rgba(255,255,255,.1)}.complete-song-button{display:inline-flex;align-items:center;margin-top:14px;padding:12px 17px;border-radius:11px;color:white;background:linear-gradient(135deg,#7137e8,#ee2186 68%,#ff7a00);box-shadow:0 10px 22px rgba(113,55,232,.22);font-size:14px;font-weight:900;text-decoration:none}.complete-song-button:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(113,55,232,.28)}.complete-song{scroll-margin-top:24px}.top-actions{display:flex;gap:8px}.result-pdf-button,.top .pdf-button{color:white;border:0;background:linear-gradient(135deg,#7137e8,#ee2186 68%,#ff7a00);box-shadow:0 9px 20px rgba(113,55,232,.2)}.result-pdf-button{display:inline-flex;margin:14px 0 0 8px;padding:12px 17px;font-size:14px}.top .pdf-button{padding:9px 14px}.result-pdf-button:hover,.top .pdf-button:hover{transform:translateY(-1px)}@media (max-width:650px){.complete-song>header,.playthrough-footer{display:block}.playthrough-footer button{width:100%;margin-top:12px}.song-roadmap article{grid-template-columns:34px 1fr;padding:14px}.part-number{width:32px;height:32px}.complete-progression span{min-width:50px;padding:8px 10px;font-size:20px}.top-actions>button:last-child{display:none}.top .pdf-button{font-size:11px;padding:8px}.result-pdf-button{display:flex;width:100%;justify-content:center;margin-left:0}}@media print{.complete-song-button{display:none}.complete-song{color:#07162d;background:white;box-shadow:none;border:2px solid #34206f}.complete-song .eyebrow,.playthrough-footer strong,.song-roadmap article b{color:#34206f}.complete-song details,.complete-song header p,.playthrough-footer p,.song-roadmap article p{color:#657086}.song-roadmap article{border-color:#dedcf0;background:white}.playthrough-footer button{display:none}}.practice-range,.practice-status{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.practice-range{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.12)}.practice-options{display:flex;gap:8px;margin:16px 0 0;padding:0;border:0}.practice-options legend{width:100%;margin-bottom:7px;font-size:13px;font-weight:800}.practice-options button{min-width:68px;padding:12px;background:rgba(255,255,255,.14);box-shadow:none}.practice-options button.active{color:#34206f;background:#fff0d7}.practice-options:disabled{opacity:.45}.practice-options:disabled button{cursor:not-allowed}.practice-unavailable{padding:10px;border-radius:9px;background:rgba(255,255,255,.12);font-size:13px}.practice-status{margin:18px 0 12px;font-size:12px}.practice-actions{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.practice-actions button{min-height:48px;padding:10px 8px}.video>div{width:100%;height:100%;border-radius:18px;overflow:hidden;background:#111}.video iframe{display:block}@media (max-width:650px){.practice{padding:18px}.practice h2{font-size:29px;margin:10px 0}.practice-options button{flex:1 1;min-height:48px}.practice-actions{grid-template-columns:1fr}.practice-actions button{min-height:52px;font-size:16px}}.analysis-diagnostics{max-width:1120px;margin:-35px auto 45px;padding:14px 20px;border:1px dashed #9c91bd;border-radius:12px;background:#fff;font-size:13px}.analysis-diagnostics summary{cursor:pointer;font-weight:800}.analysis-diagnostics dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:12px;gap:12px;margin:14px 0 0}.analysis-diagnostics dl div{padding:9px;border-radius:8px;background:#f4f1ff}.analysis-diagnostics dt{color:var(--muted);font-size:10px;text-transform:uppercase}.analysis-diagnostics dd{margin:4px 0 0;font-weight:800}.music-sheet{margin:28px 0;padding:24px;background:#fff;border:1px solid #ccd0da;color:#07162d}.music-sheet>header{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-bottom:12px;border-bottom:2px solid #07162d}.music-sheet h2{margin:0;font-size:28px;text-transform:uppercase}.music-sheet header p{margin:3px 0 0}.music-sheet header>b{font:12px monospace}.sheet-section{padding:22px 0;page-break-inside:avoid;break-inside:avoid;border-bottom:1px solid #aeb4c0}.sheet-section-head{display:flex;align-items:center;justify-content:space-between;min-height:30px}.sheet-section h3{margin:0;font-size:18px;text-transform:uppercase;letter-spacing:1.4px}.sheet-instruction{margin:7px 0 14px;font-size:12px;color:#596273}.measure-row{display:flex;gap:12px;overflow-x:auto;padding:3px 0 8px}.sheet-measure{flex:1 0 330px;min-width:330px;padding:20px 9px 11px;border-inline:2px solid #07162d}.measure-number{position:absolute;top:1px;left:8px;color:#788091;font:9px monospace}.chord-lane,.count-row,.stroke-row,.tab-string{display:grid;grid-template-columns:repeat(var(--slots),1fr);position:relative}.chord-lane{height:26px;align-items:end}.chord-lane b{font-size:15px}.tab-lanes{padding:5px 0}.tab-string{height:19px;align-items:center}.tab-string>span{position:absolute;left:-1px;width:15px;background:#fff;font:700 11px monospace;z-index:2}.tab-string>i{position:absolute;left:14px;border-top:1px solid #697181}.tab-string>b{z-index:1;justify-self:center;padding:0 2px;background:#fff;font:700 11px monospace}.strum-lane{padding:5px 0}.count-row i{text-align:center;color:#737b89;font:9px monospace}.stroke-row b{text-align:center;font-size:17px}.stroke-row .ghost{font-size:11px;color:#7c8390}.stroke-row .accent{font-weight:900;color:#d52376}.measure-repeat{position:absolute;right:7px;bottom:0}.same-measure,.sheet-check{font-size:11px;color:#687181}.sheet-check{margin:10px 0 0;padding:8px;background:#fff4d9}.sheet-check a{color:#7137e8;font-weight:800}@media (max-width:650px){.music-sheet{margin-inline:-6px;padding:15px}.music-sheet>header{display:block}.music-sheet header>b{display:block;margin-top:8px}.sheet-measure{flex-basis:300px;min-width:300px}}@media print{.music-sheet{border:0;margin:0;padding:0}.music-sheet>header{padding-top:0}.sheet-section{page-break-inside:avoid;break-inside:avoid}.measure-row{overflow:visible;flex-wrap:wrap}.sheet-measure{flex:1 0 45%;min-width:0}.chord-gallery,.complete-song,.layout,.warning{display:none!important}}.music-sheet{max-width:1120px;margin:24px auto;padding:22px 24px;border:1px solid #cfd4dd;box-shadow:0 10px 35px #07162d12}.music-sheet>header{align-items:flex-end;padding-bottom:8px}.music-sheet h2{font-size:20px;letter-spacing:.04em}.music-sheet header p{font-size:13px}.music-sheet header>b{font-size:10px}.sheet-section{padding:13px 0 11px;border-bottom:1px solid #d8dce3}.sheet-section-head{min-height:22px;margin-bottom:5px}.sheet-section h3{font-size:13px;letter-spacing:.12em}.music-row{display:grid;grid-template-columns:repeat(var(--measures),minmax(0,1fr));padding:2px 0 7px;overflow:visible}.music-row,.sheet-measure{break-inside:avoid;page-break-inside:avoid}.sheet-measure{position:relative;min-width:0!important;padding:12px 2px 4px 10px;border-left:1px solid #07162d;border-right:0}.sheet-measure:last-child{border-right:1px solid #07162d}.sheet-measure>small{position:absolute;top:0;left:4px;color:#7c8491;font:8px ui-monospace,monospace}.chord-lane{height:18px;align-items:center}.chord-lane b{font-size:12px;line-height:1}.tab-lanes{padding:1px 0 3px}.tab-string{height:14px}.tab-string>span{left:-9px;width:10px;font:700 9px ui-monospace,monospace}.tab-string>i{left:0;right:0;border-color:#697181}.tab-string>b{font:700 9px ui-monospace,monospace}.strum-lane{padding:1px 0 0}.stroke-row b{font-size:14px}.stroke-row .ghost{font-size:10px;color:#8d94a0}.stroke-row .muted{font-family:ui-monospace,monospace}.count-row{margin-top:1px}.count-row i{font:8px ui-monospace,monospace}.sheet-measure>em,.sheet-measure>strong{position:absolute;right:3px;bottom:-4px;font-size:9px}.music-sheet>footer{display:flex;justify-content:space-between;gap:10px;margin-top:9px;color:#626b79;font:9px ui-monospace,monospace}.music-sheet>footer span{font-family:Arial,sans-serif;font-weight:700}@media (max-width:650px){.music-sheet{padding:14px 12px}.music-row{grid-template-columns:repeat(var(--measures),minmax(150px,1fr));overflow-x:auto}.music-row.complex{grid-template-columns:repeat(var(--measures),minmax(220px,1fr))}.music-sheet>footer{display:block}.music-sheet>footer span{display:block;margin-top:4px}}@media print{.music-sheet{box-shadow:none}.music-row{overflow:visible}.sheet-section{break-inside:auto;page-break-inside:auto}.music-row{break-inside:avoid;page-break-inside:avoid}.sheet-measure{min-width:0!important}}.music-sheet{padding-top:16px}.music-sheet>header{padding-bottom:6px}.music-sheet h2{font-size:18px}.music-sheet header p{font-size:11px}.sheet-section{padding:9px 0 7px}.sheet-section.reference{padding:7px 0}.sheet-section-head{min-height:17px;margin-bottom:3px}.sheet-section h3{font-size:12px}.sheet-section h3 span{font-weight:500;letter-spacing:0;text-transform:none}.music-row{padding-bottom:4px}.sheet-measure{padding-top:10px}.chord-lane{height:15px}.tab-lanes{padding:0 0 2px}.tab-string{height:12px}.tab-string>b{font-size:9.5px}.stroke-row b{font-size:10px;line-height:12px}.stroke-row .ghost{font-size:8px}.count-row i{font-size:7.5px}.music-sheet>footer{font-size:9.5px}.music-sheet>footer span{font-family:ui-monospace,monospace;font-weight:400}.music-sheet>footer b{font-family:Arial,sans-serif}.chord-chart{display:flex;align-items:baseline;flex-wrap:wrap;padding:2px 0 4px;font:700 14px/1.8 ui-monospace,monospace}.chord-chart span{display:inline-block;min-width:72px;text-align:center}.chord-chart b{font-weight:700}.pattern-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;padding:12px 0 4px}.sheet-pattern{max-width:360px;page-break-inside:avoid;break-inside:avoid;padding-top:7px}.sheet-pattern h3{margin:0 0 5px;font-size:11px;letter-spacing:.06em}.pattern-grid{width:320px;max-width:100%}.pattern-grid>span{display:grid;grid-template-columns:repeat(var(--slots),1fr);min-height:15px;border-inline:1px solid currentColor}.pattern-grid b,.pattern-grid i{text-align:center;font:9px ui-monospace,monospace}.pattern-grid b{font-size:11px}.sheet-pattern>small{font-size:9px;color:#687181}@media (max-width:650px){.pattern-list{grid-template-columns:1fr}.chord-chart{font-size:12px}.chord-chart span{min-width:60px}}@media print{.pattern-list{grid-template-columns:repeat(2,minmax(0,1fr))}.chord-chart,.sheet-pattern{page-break-inside:avoid;break-inside:avoid}}.notation-help{margin:18px 0;padding:12px 14px;border:1px solid rgba(113,55,232,.2);border-radius:10px;background:#fff}.notation-help summary{cursor:pointer;font-weight:800}.notation-help dl{display:grid;grid-template-columns:max-content 1fr;grid-gap:7px 16px;gap:7px 16px;margin:14px 0 0}.notation-help dt{font:700 13px ui-monospace,monospace}.notation-help dd{margin:0;color:var(--muted);font-size:13px}.lesson-label{display:block;margin-top:10px;color:var(--green);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.lesson-card h4{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.lesson-evidence,.lesson-pattern,.lesson-steps,.lesson-summary,.lesson-techniques{margin-top:18px}.lesson-summary{padding:16px;border-radius:12px;background:#f5f1ff}.lesson-summary p{margin:0;line-height:1.55}.lesson-steps ol{padding-left:24px}.lesson-steps li{margin:9px 0;line-height:1.5}.lesson-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.lesson-facts span{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:13px}.lesson-facts b{display:block;margin-bottom:3px;color:var(--muted);font-size:9px;text-transform:uppercase}.lesson-pattern code{display:block;margin:7px 0;padding:12px;border-radius:8px;background:#eee8ff;font:700 15px ui-monospace,monospace}.lesson-pattern small{color:var(--muted)}.lesson-techniques p{margin:7px 0}.lesson-evidence summary{cursor:pointer;font-weight:800}.lesson-evidence button{display:block;width:100%;margin-top:8px;color:var(--dark);background:#f5f1ff;box-shadow:none;text-align:left}.lesson-layer,.practice-sheet-layer{margin-top:44px}.lesson-layer>h2,.practice-sheet-layer>h2{margin:7px 0 18px;font:36px Georgia,serif}.practice-focus{max-width:1180px;margin:0 auto 50px;padding:28px}.practice-focus>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.practice-focus>header h2{margin:5px 0;font:36px Georgia,serif}.practice-focus-grid{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);grid-gap:22px;gap:22px;align-items:start}.practice-focus .practice{position:static;margin:0}.practice-focus .music-sheet{margin:0}.practice-focus nav{display:flex;justify-content:space-between;margin-top:18px}.practice-focus nav button:disabled{opacity:.4}.focus-main .video{margin-bottom:18px;max-height:52vh}.music-sheet.compact footer,.music-sheet.compact header{display:none}@media (max-width:800px){.practice-focus{padding:16px}.practice-focus>header{align-items:flex-start;flex-direction:column}.practice-focus-grid{grid-template-columns:1fr}.focus-main .video{padding:0 16px;margin-bottom:8px}.notation-help dl{grid-template-columns:1fr}.notation-help dd{margin-bottom:6px}.lesson-layer>h2,.practice-sheet-layer>h2{font-size:29px}}.practice-focus-grid>*{min-width:0}.music-sheet.compact{max-width:100%;overflow-x:auto}.results>.layout>aside>.practice{display:none}.stored-practice-player{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);grid-gap:28px;gap:28px;max-width:1120px;margin:0 auto;padding:42px 28px 0;align-items:start}.stored-video .video{margin:0;padding:0}.stored-practice{padding:26px;border-radius:20px;color:#fff;background:linear-gradient(155deg,#34206f,#7137e8 64%,#c52293);box-shadow:0 18px 45px #34206f20}.stored-practice .eyebrow{color:#fff0d7}.stored-practice h2{margin:8px 0 4px;font:34px Georgia,serif;line-height:1.05}.stored-practice-meta{margin:0 0 20px;color:#eee5ff;text-transform:capitalize}.stored-practice label{display:grid;grid-gap:7px;gap:7px;font-size:13px;font-weight:900}.stored-practice select{width:100%;padding:12px;border:0;border-radius:10px;background:#fff;font:inherit}.stored-practice fieldset{display:flex;gap:8px;margin:18px 0;padding:0;border:0}.stored-practice legend{width:100%;margin-bottom:7px;font-size:13px;font-weight:900}.stored-practice fieldset button{flex:1 1;padding:11px;background:#ffffff20}.stored-practice fieldset button.active{color:#34206f;background:#fff0d7}.stored-practice .resume-button{width:100%;background:linear-gradient(135deg,#ee2186,#ff7a00)}.stored-practice>p:last-child{margin-bottom:0;font-size:13px;color:#ffe8f4}.stored-practice>p.saved{color:#d9f4df}.stored-analysis{padding-top:55px}.stored-analysis .lesson-layer{margin-top:55px}.stored-analysis .complete-song{margin-top:45px}@media (max-width:800px){.stored-practice-player{grid-template-columns:1fr;padding:22px 16px 0}.stored-practice{padding:20px}.stored-analysis{padding-top:35px}}.evaluation{max-width:1500px;margin:0 auto;padding:34px 28px;color:var(--ink);font-family:Arial,sans-serif}.evaluation>header{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;border-bottom:2px solid var(--ink);padding-bottom:20px}.evaluation h1{font:42px Georgia,serif;margin:8px 0}.evaluation h2{font:28px Georgia,serif}.category-picker,.evaluation-actions,.evaluation-filters{display:flex;flex-wrap:wrap;gap:8px}.category-picker button,.evaluation-actions button,.evaluation-filters button{padding:10px 12px;font-size:12px}.evaluation-filters{margin:18px 0}.category-picker button,.evaluation-filters button{color:var(--dark);background:white;border:1px solid var(--line);box-shadow:none}.category-picker .active,.evaluation-filters .active{color:white;background:var(--green)}.evaluation-summary{display:flex;flex-wrap:wrap;gap:18px;margin:20px 0;padding:16px;border-radius:12px;background:#eee8ff}.evaluation-summary span{font-weight:800}.evaluation-grid{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:22px;gap:22px;align-items:start}.evaluation-list{display:grid;grid-gap:8px;gap:8px}.evaluation-list button{display:block;color:var(--ink);background:white;border:1px solid var(--line);box-shadow:none;text-align:left}.evaluation-list button.selected{border:2px solid var(--green)}.evaluation-list small{display:block;margin-top:6px;color:var(--muted)}.evaluation-detail>label,.review>label{display:block;margin:12px 0;font-weight:800;font-size:13px}.evaluation input,.evaluation select,.evaluation textarea{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid var(--line);border-radius:7px;background:white;font:inherit}.evaluation textarea{min-height:64px;resize:vertical}.run-analysis{margin:12px 0}.result-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 0}.result-meta h2{width:100%;margin:0}.result-meta a{color:var(--green);font-weight:800}.evaluation .music-sheet{margin-top:8px}.evaluation pre{max-height:420px;overflow:auto;padding:16px;border-radius:10px;background:#111;color:#e8f2ec;font-size:11px}.validation{margin:20px 0;padding:14px;border-left:4px solid var(--green);background:#f5f1ff}.review{margin-top:25px;padding-top:16px;border-top:2px solid var(--ink)}.review-row{display:grid;grid-template-columns:minmax(180px,1fr) 150px minmax(180px,1fr);grid-gap:8px;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.review-row input,.review-row select{margin:0}.evaluation .eyebrow{color:var(--green)}@media (max-width:800px){.evaluation>header{display:block}.evaluation-actions{margin-top:16px}.evaluation-grid,.review-row{grid-template-columns:1fr}.evaluation{padding:22px 16px}}.sheet-overview{margin-top:16px;padding:14px;border:2px solid #07162d;page-break-inside:avoid;break-inside:avoid}.sheet-overview h3{margin:0 0 9px;font-size:13px;letter-spacing:.12em}.sheet-overview>div{display:grid;grid-template-columns:110px 1fr;grid-gap:5px 12px;gap:5px 12px;padding:6px 0;border-top:1px solid #d8dce3;font:12px ui-monospace,monospace}.sheet-overview small{grid-column:2;color:#626b79}@media (max-width:650px){.sheet-overview>div{grid-template-columns:1fr}.sheet-overview small{grid-column:1}}@media print{.sheet-overview{page-break-inside:avoid;break-inside:avoid}}.site-header{position:relative;z-index:5;justify-content:space-between;gap:24px;max-width:1280px;margin:auto;padding:18px 28px;background:#fff}.site-header,.site-header nav{display:flex;align-items:center}.site-header nav{gap:18px}.site-header nav a{color:var(--dark);font-size:14px;font-weight:800;text-decoration:none}.marketing-button,.site-header .nav-cta{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border-radius:11px;color:#fff!important;background:linear-gradient(135deg,#7137e8,#ee2186 68%,#ff7a00);font-weight:900;text-decoration:none}.nav-logout{padding:9px 12px;color:var(--dark);background:#f4f1ff;box-shadow:none}.app-header{max-width:none;border-bottom:1px solid var(--line)}.app-shell{min-height:calc(100vh - 84px);padding:1px;background:#faf9ff}.app-page{max-width:1180px;margin:45px auto 80px;padding:0 28px}.app-page.narrow{max-width:760px}.app-page h1,.auth-page h1{margin:8px 0 15px;font:clamp(40px,6vw,62px) Georgia,serif}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.marketing-sections{background:#fff}.marketing-sections>section{max-width:1180px;margin:auto;padding:80px 28px}.marketing-sections>section>span,.marketing-split span{color:#7137e8;font-size:11px;font-weight:900;letter-spacing:.15em}.marketing-sections h2{max-width:850px;margin:10px 0 18px;font:clamp(34px,5vw,52px) Georgia,serif}.marketing-sections p{max-width:760px;color:var(--muted);font-size:17px;line-height:1.65}.marketing-intro{border-bottom:1px solid var(--line)}.marketing-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-top:32px}.marketing-grid article,.notation-showcase article{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 12px 32px #1d1b310c}.steps article>b{color:#ee2186;font-size:30px}.notation-showcase{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:30px}.notation-showcase code{display:block;margin:8px 0;padding:9px;border-radius:7px;background:#f4f1ff;font:700 14px ui-monospace,monospace}.notation-showcase small{color:var(--muted)}.marketing-split{display:grid;grid-template-columns:1fr 1fr;grid-gap:46px;gap:46px;align-items:center}.practice-preview{display:grid;grid-gap:18px;gap:18px;padding:30px;border-radius:22px;color:#fff;background:linear-gradient(145deg,#24134f,#7137e8 58%,#d51e8d)}.practice-preview strong{font:55px Georgia,serif}.practice-preview code{padding:13px;border-radius:9px;background:#ffffff18}.marketing-button.secondary{margin-left:8px;color:#34206f!important;background:#f1ebff}.final-cta{text-align:center}.final-cta h2{margin-inline:auto}.final-cta>div{display:flex;justify-content:center;gap:8px}.auth-page{max-width:620px;margin:50px auto;padding:30px}.auth-form{display:grid;grid-gap:16px;gap:16px;margin-top:26px;padding:25px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 50px #1d1b3112}.analyze-form label,.auth-form label{font-size:13px;font-weight:900}.analyze-form input,.auth-form input,.library-search input{display:block;width:100%;margin-top:7px;padding:14px;border:1px solid var(--line);border-radius:9px;font:inherit}.auth-form p{margin:0;text-align:center}.analyze-form{display:grid;grid-gap:16px;gap:16px;margin-top:25px;padding:26px;border-radius:18px;background:#fff;box-shadow:0 18px 45px #1d1b3110}.loading-steps{display:grid;grid-gap:6px;gap:6px;color:var(--muted)}.duplicate-notice{padding:16px;border-left:4px solid #7137e8;background:#f4f1ff}.duplicate-notice a{font-weight:900}.duplicate-notice small{display:block;margin-top:8px}.song-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px}.song-card{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 14px 35px #1d1b310e}.song-card>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.song-card>div{padding:19px}.song-card h2{margin:7px 0;font:29px Georgia,serif}.song-card p{margin:5px 0;color:var(--muted)}.song-card small{display:block;margin-top:5px;color:var(--muted)}.song-card>div>div{display:flex;gap:9px;margin-top:15px}.song-card a{padding:10px 12px;border-radius:8px;background:#f1ebff;color:#34206f;font-weight:900;text-decoration:none}.empty-state{margin-top:30px;padding:45px;border:1px dashed #9c91bd;border-radius:18px;text-align:center}.library-search{display:flex;gap:8px;max-width:700px;margin:25px 0}.library-search input{margin:0}.dashboard>section{margin-top:40px}.dashboard-list{display:grid;grid-gap:9px;gap:9px;margin:15px 0}.dashboard-list a{display:flex;justify-content:space-between;gap:15px;padding:16px;border:1px solid var(--line);border-radius:11px;color:var(--dark);background:#fff;text-decoration:none}.dashboard-list span{color:var(--muted)}.account-details{display:grid;grid-template-columns:150px 1fr;grid-gap:10px;gap:10px;padding:25px;border-radius:15px;background:#fff}.account-details dt{font-weight:900}.account-details dd{margin:0}.lesson-management,.library-detail-actions{display:flex;align-items:center;gap:12px;max-width:1120px;margin:25px auto;padding:0 24px}.library-detail-actions a{font-weight:900}.danger-button{color:#a0253d;background:#fff0f2;box-shadow:none}@media (max-width:800px){.site-header{align-items:flex-start;padding:14px 16px}.site-header nav{justify-content:flex-end;flex-wrap:wrap;gap:9px}.site-header nav a{font-size:11px}.app-header{display:block}.app-header nav{justify-content:flex-start;margin-top:12px}.marketing-grid,.marketing-split,.notation-showcase,.song-grid{grid-template-columns:1fr}.marketing-sections>section{padding:55px 18px}.page-heading{align-items:flex-start;flex-direction:column}.app-page{padding-inline:16px}.final-cta>div{display:grid}.marketing-button.secondary{margin-left:0}.dashboard-list a,.library-search{display:grid}}.home-page .top,.home-page>.top,.lesson-route .approved-library,.lesson-route .hero,.lesson-route .top,.public-demo .approved-library,.public-demo .hero{display:none}.lesson-route .results,.public-demo .results{padding-top:18px}.global-back{position:fixed;left:18px;top:94px;z-index:40;display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:10px 15px;border:1px solid var(--line);border-radius:999px;color:var(--dark);background:#fff;box-shadow:0 10px 28px #1d1b3120;font:inherit;font-weight:900;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.global-back svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.global-back:hover{transform:translateX(-2px);box-shadow:0 12px 30px #1d1b312b}.global-back:focus-visible{outline:3px solid #7c3aed55;outline-offset:3px}@media (max-width:520px){.global-back{left:12px;top:84px;padding:10px 13px}}@media print{.global-back{display:none!important}}.library-nav{font-weight:800}.approved-library{max-width:1180px;margin:0 auto 70px;padding:42px 28px}.approved-library>header{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:24px}.approved-library h2{font:44px Georgia,serif;margin:8px 0}.approved-library header p{color:var(--muted);max-width:680px;line-height:1.5}.approved-count{white-space:nowrap;background:#e8f6e9;color:#286437;border-radius:999px;padding:9px 13px;font-weight:800}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:22px;gap:22px}.library-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 15px 40px #1d1b3110}.library-video{aspect-ratio:16/9;background:#111}.library-video iframe{width:100%;height:100%;border:0}.library-copy{padding:20px}.library-copy>span{color:#286437;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.library-copy h3{font:29px Georgia,serif;margin:10px 0 5px}.library-copy p{color:var(--muted)}.library-copy button{width:100%;margin-top:8px}.song-actions{flex-wrap:wrap}.song-actions .danger-button{padding:10px 12px;border-radius:8px;font-size:14px}.song-card>div>small+small{margin-top:3px}@media (max-width:800px){.library-grid{grid-template-columns:1fr}.approved-library>header{display:block}.approved-count{display:inline-block;margin-top:10px}.approved-library h2{font-size:36px}.library-nav{display:none}}@media print{.approved-library{display:none}}.site-header+.site-header,.site-header~.site-header{display:none}.header-menu{position:relative;margin-left:auto}.header-menu summary{cursor:pointer;list-style:none;border:1px solid #e3d4f5;border-radius:999px;padding:7px 12px;font-weight:700;white-space:nowrap}.header-menu nav{position:absolute;right:0;top:42px;z-index:20;display:flex;flex-direction:column;gap:10px;min-width:190px;padding:16px;background:#fff;border:1px solid #e3d4f5;border-radius:14px;box-shadow:0 12px 30px #1b103322}.header-menu nav a,.header-menu nav button{padding:8px;text-align:left}.top,body>footer:not(.site-footer){display:none}.site-footer{display:grid;grid-template-columns:1fr auto;grid-gap:12px 28px;gap:12px 28px;padding:30px max(28px,calc((100vw - 1224px) / 2));border-top:1px solid var(--line);background:#fff;color:var(--muted);text-align:left}.site-footer>div{display:grid;grid-gap:4px;gap:4px}.site-footer strong{color:var(--ink)}.site-footer nav{display:flex;align-items:center;gap:18px}.site-footer a{color:var(--dark);font-weight:800;text-decoration:none}.site-footer small{grid-column:1/-1}.legal-page,.status-page,.welcome-page{max-width:940px;margin:50px auto 80px;padding:30px}.legal-page h1,.status-page h1,.welcome-page h1{margin:8px 0 18px;font:clamp(42px,7vw,68px)/1.02 Georgia,serif}.legal-page li,.legal-page>p,.status-page>p,.welcome-intro{color:var(--muted);font-size:17px;line-height:1.65}.legal-page section{margin-top:34px}.legal-page h2{margin-bottom:10px;font:30px Georgia,serif}.legal-page li{margin:8px 0}.legal-updated{font-size:13px!important}.legal-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:42px}.legal-links a{font-weight:900}.status-page{text-align:center;min-height:62vh}.status-code{display:block;color:#7137e8;font:900 clamp(80px,18vw,170px)/.8 Georgia,serif;opacity:.17}.status-page>p{max-width:650px;margin:0 auto 26px}.status-page>div{display:flex;justify-content:center;gap:9px}.status-page small{display:block;margin:-12px 0 22px;color:var(--muted)}.loading-page{display:grid;min-height:55vh;place-content:center}.loading-note{opacity:1;animation:loading-note 1s ease-in-out infinite alternate}.loading-page p{font-weight:800}@keyframes loading-note{to{transform:translateY(-10px);color:#ee2186}}.welcome-page{max-width:1120px}.welcome-intro{max-width:760px}.welcome-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:34px}.welcome-steps article{display:flex;flex-direction:column;align-items:flex-start;padding:25px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 16px 40px #1d1b3110}.welcome-steps article>b{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#7137e8,#ee2186,#ff7a00)}.welcome-steps h2{margin:18px 0 8px;font:28px Georgia,serif}.welcome-steps p{flex:1 1;color:var(--muted);line-height:1.55}.welcome-steps .secondary{margin:0}.onboarding-tip{display:flex;gap:12px;margin-top:22px;padding:18px;border-radius:12px;background:#eee8ff}.auth-consent{color:var(--muted);line-height:1.45;text-align:center}.auth-consent a{font-weight:800}@media (max-width:700px){body{overflow-x:hidden}.site-header{align-items:center;gap:10px;min-height:72px;padding:12px 14px}.site-header .music-brand{min-width:0}.site-header .music-brand img{width:108px}.header-menu summary{min-height:44px;display:flex;align-items:center;padding:8px 13px}.header-menu nav{position:fixed;top:72px;right:12px;left:12px;max-height:calc(100vh - 88px);overflow-y:auto;min-width:0;padding:14px}.header-menu nav a,.header-menu nav button{width:100%;min-height:44px;padding:12px}.hero{min-height:auto;padding:46px 16px}.hero h1{font-size:clamp(42px,13vw,62px);letter-spacing:-2px}.hero p{font-size:16px}.hero form{width:100%}.results{padding:26px 12px}.song-head h2{font-size:36px;overflow-wrap:anywhere}.facts{gap:14px}.facts span{font-size:15px}.lesson-card,.plan{padding:17px}.lesson-card header button,.lesson-evidence button,.practice-link{min-height:44px;width:100%}.lesson-summary{padding:13px}.lesson-steps ol{padding-left:20px}.lesson-facts span{flex:1 1 130px}.lesson-pattern code{overflow-x:auto;white-space:pre}.stored-practice-player{padding-inline:12px}.stored-practice fieldset{flex-wrap:wrap}.stored-practice fieldset button{min-width:72px;min-height:48px}.music-sheet{width:calc(100% + 4px);margin-inline:-2px;padding-inline:9px;overflow:hidden}.music-sheet>header b{overflow-wrap:anywhere}.music-row{margin-inline:-2px;padding-bottom:8px;overflow-x:auto;scroll-snap-type:x proximity}.music-row .sheet-measure{scroll-snap-align:start}.chord-chart,.pattern-grid{overflow-x:auto}.chord-chart{flex-wrap:nowrap;padding-bottom:8px}.chord-chart span{flex:0 0 64px}.download-options{display:grid;width:100%}.download-options button{min-height:48px}.site-footer{grid-template-columns:1fr;padding:26px 18px}.site-footer nav{align-items:flex-start;flex-direction:column;gap:12px}.legal-page,.status-page,.welcome-page{margin-top:24px;padding:22px 17px}.legal-page h1,.status-page h1,.welcome-page h1{font-size:42px}.status-page>div{display:grid}.status-page .secondary{margin:0}.welcome-steps{grid-template-columns:1fr}.welcome-steps article{padding:20px}.onboarding-tip{align-items:flex-start;flex-direction:column}.auth-page{margin-top:20px;padding:20px 16px}.auth-form{padding:20px}.page-heading .marketing-button{width:100%}.account-details{grid-template-columns:1fr}.account-details dd{margin-bottom:8px}}.landing-capabilities{max-width:1180px;margin:0 auto 70px;padding:65px 28px}.landing-capabilities>h2{max-width:850px;margin:10px 0 14px;font:clamp(36px,5vw,54px) Georgia,serif}.landing-capabilities>p{max-width:760px;color:var(--muted);font-size:17px;line-height:1.6}.landing-capabilities>div{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:30px}.landing-capabilities article{padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 15px 40px #1d1b3110}.landing-capabilities article>b{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--purple),var(--pink),var(--orange))}.landing-capabilities h3{margin:18px 0 8px;font:28px Georgia,serif}.landing-capabilities article p{margin:0;color:var(--muted);line-height:1.55}.landing-capabilities>aside{display:grid;grid-template-columns:auto 1fr auto;grid-gap:14px;gap:14px;align-items:center;margin-top:20px;padding:18px;border-radius:14px;background:#eee8ff}.public-demo .landing-capabilities{display:none}@media (max-width:700px){.landing-capabilities{padding:48px 16px}.landing-capabilities>aside,.landing-capabilities>div{grid-template-columns:1fr}.landing-capabilities>aside .marketing-button{width:100%;text-align:center}}.preview-gate{margin:0 auto 28px;padding:24px;border:1px solid #d8cef7;border-radius:18px;background:linear-gradient(135deg,#f5f1ff,#fff7fb)}.preview-gate h2{margin:8px 0;font:34px Georgia,serif}.preview-gate p{max-width:760px;color:var(--muted);line-height:1.55}.preview-gate small{display:block;margin-top:12px;color:var(--muted)}.pricing-page{max-width:1080px;margin:50px auto 80px;padding:30px}.pricing-page>h1{max-width:850px;margin:8px 0 18px;font:clamp(42px,7vw,68px)/1.02 Georgia,serif}.pricing-page>p{max-width:760px;color:var(--muted);font-size:17px;line-height:1.65}.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px;margin-top:34px}.pricing-grid article{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 16px 40px #1d1b3110}.pricing-grid h2{display:inline-block;margin:13px 7px 16px 0;font:40px Georgia,serif}.pricing-grid article>p{min-height:54px;color:var(--muted);line-height:1.5}.pricing-grid ul{min-height:132px;padding:0;list-style:none}.pricing-grid li{margin:10px 0}.billing-note{display:grid;grid-gap:5px;gap:5px;margin-top:20px;padding:18px;border-radius:13px;background:#eee8ff}.billing-note span{color:var(--muted)}@media (max-width:700px){.preview-gate{padding:18px}.pricing-page{margin-top:24px;padding:22px 17px}.pricing-grid{grid-template-columns:1fr}.pricing-grid article>p,.pricing-grid ul{min-height:0}}.cost-cards{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin:28px 0}.cost-cards article{display:grid;grid-gap:5px;gap:5px;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}.cost-cards b{font:34px Georgia,serif}.cost-cards span{color:var(--muted)}.cost-table{overflow-x:auto}.cost-table table{width:100%;border-collapse:collapse;background:#fff}.cost-table td,.cost-table th{padding:12px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}@media (max-width:700px){.cost-cards{grid-template-columns:repeat(2,1fr)}}@media print{body.print-full-lesson .download-options,body.print-full-lesson .practice-link,body.print-full-lesson .site-footer,body.print-full-lesson .site-header,body.print-full-lesson .stored-practice-player,body.print-full-lesson button{display:none!important}body.print-full-lesson .app-shell{background:#fff}body.print-full-lesson .results,body.print-full-lesson .stored-analysis{max-width:none;margin:0;padding:0;background:#fff}body.print-full-lesson .chord-gallery,body.print-full-lesson .complete-song,body.print-full-lesson .layout,body.print-full-lesson .lesson-layer,body.print-full-lesson .practice-sheet-layer,body.print-full-lesson .warning{display:block!important}body.print-full-lesson .layout{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(260px,1fr)!important}body.print-full-lesson .chord-diagram,body.print-full-lesson .music-sheet,body.print-full-lesson .plan,body.print-full-lesson .section-card{page-break-inside:avoid;break-inside:avoid;box-shadow:none}body.print-full-lesson a{color:inherit;text-decoration:none}}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem;margin-top:2rem}.admin-grid>a,.admin-list article,.moderation-actions{border:1px solid var(--line);border-radius:18px;background:#fff;padding:1.2rem;text-decoration:none;color:inherit}.admin-grid h2{margin:.2rem 0}.admin-list{display:grid;grid-gap:.75rem;gap:.75rem;margin:1.5rem 0}.admin-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-list article p{margin:.35rem 0 0;color:var(--muted)}.credit-positive{color:#167340;font-weight:800}.credit-negative{color:#b22538;font-weight:800}.community-button{display:inline-flex;margin:.7rem .5rem 0 0;padding:.7rem 1rem;border:0;border-radius:999px;background:linear-gradient(100deg,#742ee8,#ef257d,#ff5b2c);color:#fff!important;font-weight:800;text-decoration:none;cursor:pointer}.community-button:disabled{opacity:.65}.diff-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin:1.5rem 0}.diff-grid section{min-width:0}.diff-grid pre,.diff-grid textarea{box-sizing:border-box;width:100%;height:60vh;overflow:auto;border:1px solid var(--line);border-radius:14px;background:#11131c;color:#f3f1fa;padding:1rem;font:12px/1.5 monospace;white-space:pre-wrap}.diff-grid textarea{resize:vertical}.contribution-check,.moderation-actions{display:grid;grid-gap:.8rem;gap:.8rem;position:-webkit-sticky;position:sticky;bottom:1rem}.contribution-check span{color:var(--muted)}.moderation-actions label{display:grid;grid-gap:.35rem;gap:.35rem;font-weight:700}.moderation-actions textarea{min-height:90px}.moderation-actions input,.moderation-actions textarea{padding:.7rem;border:1px solid var(--line);border-radius:10px}.moderation-actions>div{display:flex;gap:.75rem}.moderation-actions button{padding:.75rem 1rem;border:0;border-radius:10px;background:#762fe8;color:#fff;font-weight:800}.moderation-actions button.secondary{background:#eee;color:#19142b}@media (max-width:760px){.diff-grid{grid-template-columns:1fr}.diff-grid pre,.diff-grid textarea{height:42vh}.admin-list article{align-items:flex-start;flex-direction:column}}.user-admin-actions{display:grid;grid-template-columns:130px 100px minmax(180px,1fr) auto;grid-gap:.5rem;gap:.5rem;align-items:center}.user-admin-actions input,.user-admin-actions select{padding:.65rem;border:1px solid var(--line);border-radius:9px}.user-admin-actions small{grid-column:1/-1}@media (max-width:900px){.user-admin-actions{grid-template-columns:1fr;width:100%}}.download-options button,.marketing-button,.result-pdf-button{border-radius:12px}.landing-capabilities article{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.landing-capabilities article:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#7137e8,#ee2186,#ff7a00)}.landing-capabilities article:hover{transform:translateY(-4px);box-shadow:0 20px 44px #1d1b311c}.landing-capabilities article>b{margin-top:4px;box-shadow:0 8px 18px #7137e833}.marketing-sections .marketing-grid article,.marketing-sections .steps article{border-radius:18px;box-shadow:0 15px 40px #1d1b3110}.marketing-sections .steps article{position:relative;overflow:hidden}.marketing-sections .steps article:after{content:"";position:absolute;right:-25px;top:-25px;width:90px;height:90px;border-radius:50%;background:#f1ebff}.editor-form{display:grid;grid-gap:1.4rem;gap:1.4rem;margin:2rem 0}.editor-fields,.section-editor{padding:1.2rem;border:1px solid var(--line);border-radius:18px;background:#fff}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.editor-grid label{display:grid;grid-gap:.35rem;gap:.35rem;font-weight:800}.editor-fields textarea,.editor-grid input,.editor-grid select,.editor-grid textarea{width:100%;box-sizing:border-box;padding:.75rem;border:1px solid var(--line);border-radius:10px;font:inherit}.editor-fields textarea,.editor-grid textarea{min-height:110px;resize:vertical}.editor-fields>.wide,.editor-grid .wide{grid-column:1/-1}.section-editor legend{padding:0 .5rem;font-weight:900}.editor-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.editor-actions button,.moderation-actions button,.section-editor button{min-height:46px}.secondary{color:var(--dark)!important;background:#f1ebff!important;box-shadow:none!important}.danger{color:#a0253d!important}.draft-notice{padding:.8rem 1rem;border-radius:10px;background:#eaf7ee;color:#286437;font-weight:800}.lesson-comparison{display:grid;grid-gap:1rem;gap:1rem;margin-top:2rem}.comparison-meta article,.lesson-comparison>header,.section-comparison article{padding:1.2rem;border:1px solid var(--line);border-radius:16px;background:#fff}.lesson-comparison>header p{color:var(--muted)}.comparison-meta,.comparison-sheet-grid,.section-values{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.comparison-meta article{display:grid;grid-gap:.35rem;gap:.35rem}.comparison-meta h3,.section-values b{margin:0;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.section-comparison{display:grid;grid-gap:.8rem;gap:.8rem}.section-comparison article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.section-comparison article h3{margin:.2rem 0}.section-changed{border-color:#7b42e8!important;box-shadow:0 0 0 2px #eee5ff}.change-badge,.section-change-list span{display:inline-block;padding:.35rem .6rem;border-radius:999px;background:#eee5ff;color:#6330c8;font-size:.8rem;font-weight:800}.section-change-list{display:flex;flex-wrap:wrap;gap:.4rem}.section-values{margin-top:1rem}.section-values>div{padding:.8rem;border-radius:10px;background:#f8f6ff}.section-values p{margin:.35rem 0}.section-values small{color:var(--muted)}.comparison-sheet{padding:1rem;border:1px solid var(--line);border-radius:16px;background:#fff}.comparison-sheet summary{cursor:pointer;font-weight:900}.comparison-sheet-grid{margin-top:1rem}.comparison-sheet-grid>div{min-width:0}.initial-review{padding:1.2rem;border:1px solid var(--line);border-radius:18px;background:#fff}.initial-review .music-sheet{box-shadow:none}.moderation-actions{margin-top:1.2rem}@media (max-width:700px){.comparison-meta,.comparison-sheet-grid,.editor-grid,.section-values{grid-template-columns:1fr}.editor-actions{display:grid}.editor-actions button{width:100%}}.revision-history{margin-top:0!important;padding-top:0}.moderation-checklist{display:grid;grid-gap:.55rem;gap:.55rem;padding:.8rem;border:1px solid var(--line);border-radius:12px}.moderation-checklist label{display:flex;gap:.5rem;align-items:center;font-weight:600}.moderation-checklist legend{font-weight:800}.library-admin-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.library-admin-actions label{display:flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:700}.library-admin-actions button{padding:.55rem .8rem;border-radius:9px}