@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-latin.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format("woff2")}@font-face{font-family:Bravura;font-style:normal;font-weight:400;font-display:block;src:url(/fonts/bravura.woff2) format("woff2")}@font-face{font-family:Academico;font-style:normal;font-weight:400;font-display:block;src:url(/fonts/academico.woff2) format("woff2")}:root{--body: "Instrument Sans", ui-sans-serif, -apple-system, "Segoe UI", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--t-xs: 12px;--t-sm: 13.5px;--t-base: 16px;--t-md: 17px;--t-lg: 20px;--t-xl: 28px;--t-2xl: clamp(28px, 4vw, 36px)}:root{--bg: #FAFAF9;--panel: #FFFFFF;--text: #141618;--muted: #5A6064;--faint: #9AA0A3}:root{--pigment: oklch(.44 .15 264);--root: #141618}:root[data-scheme=lapis]{--pigment: oklch(.44 .15 264);--root: #141618}:root[data-scheme=vermilion]{--pigment: oklch(.5 .16 30);--root: #141618}:root[data-scheme=viridian]{--pigment: oklch(.47 .11 152);--root: #141618}:root[data-scheme=amethyst]{--pigment: oklch(.45 .13 300);--root: #141618}:root[data-scheme=carmine]{--pigment: oklch(.45 .16 5);--root: #141618}:root[data-scheme=ochre]{--pigment: oklch(.52 .1 86);--root: #141618}:root[data-scheme=verdigris]{--pigment: oklch(.49 .092 170);--root: #141618}:root{--accent: var(--pigment);--tone: var(--pigment);--seam: var(--pigment)}:root{--rail: 268px;--panel-2: color-mix(in oklab, var(--panel) 94%, var(--text));--line: color-mix(in oklab, var(--panel) 87%, var(--text));--line-2: color-mix(in oklab, var(--panel) 76%, var(--text));--on-accent: #ffffff;--board: color-mix(in oklab, var(--panel) 97%, var(--text));--board-edge: color-mix(in oklab, var(--panel) 68%, var(--text));--key-white: color-mix(in oklab, var(--panel) 55%, #ffffff);--key-black: color-mix(in oklab, var(--text) 78%, var(--panel));--key-on-text: #ffffff;--key-on-name: color-mix(in oklab, #ffffff 72%, var(--tone));--key-black-text: color-mix(in oklab, var(--text) 16%, #ffffff);color-scheme:light;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--s9: 96px;--r1: 6px;--r2: 10px;--r3: 16px;--rf: 999px;--e1: 0 8px 24px color-mix(in oklab, var(--text) 12%, transparent);--e2: 0 18px 50px color-mix(in oklab, var(--text) 18%, transparent)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}main{max-width:960px;margin:0 auto;padding:32px 20px 96px}button{font:inherit;cursor:pointer}.toolbar{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.sitenav{max-width:960px;margin:0 auto;padding:8px 20px;min-height:54px;display:flex;align-items:center;gap:var(--s3)}.sitenav .brand{font-weight:640;letter-spacing:-.032em;text-decoration:none;color:var(--text);font-size:var(--t-base);flex:none}.sitenav.bare .brand{margin-right:auto}.addr{position:relative;display:flex;align-items:stretch;margin-right:auto;min-width:0;border:1px solid var(--line-2);border-radius:var(--rf);background:var(--panel)}.addr>*{display:flex;align-items:center;min-width:0}.addr>:first-child{border-radius:var(--rf) 0 0 var(--rf);padding-left:15px}.addr>:last-child{border-radius:0 var(--rf) var(--rf) 0}.a-word{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;border-radius:0;font:500 var(--t-sm)/1 var(--body);color:var(--text);padding:11px 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.a-key{font:700 var(--t-sm)/1 var(--mono);color:var(--pigment)}.addr .none{color:var(--faint)}.addr>*+*{border-left:1px solid var(--line)}.addrmenu>summary{list-style:none;cursor:pointer;gap:7px}.addrmenu>summary::-webkit-details-marker{display:none}.addrmenu>summary:after{content:"";flex:none;width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent;border-top:4px solid var(--faint)}.addrmenu[open]>summary:after{transform:rotate(180deg)}.addrmenu>summary:hover{background:var(--panel-2)}.addrmenu>summary:focus-visible{outline:2px solid var(--pigment);outline-offset:-2px}.addrmenu-panel{position:absolute;left:-1px;top:calc(100% + 9px);z-index:40;width:max-content;min-width:200px;max-width:min(320px,calc(100vw - 24px));max-height:min(70vh,560px);overflow-y:auto;padding:6px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--e1)}.a-tuning>.addrmenu-panel{left:auto;right:-1px}.a-set>.addrmenu-panel{width:min(320px,calc(100vw - 24px));padding:4px 16px 12px}.keygrid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.keygrid a{display:grid;place-items:center;padding:10px 4px;border-radius:var(--r1);font:600 var(--t-sm)/1 var(--mono);color:var(--text);text-decoration:none}.keygrid a:hover{background:var(--panel-2)}.keygrid a[aria-current=page]{background:var(--text);color:var(--bg)}.tuninglist{display:flex;flex-direction:column}.tuninglist a{padding:9px 10px;border-radius:var(--r1);font-size:var(--t-sm);line-height:1.35;color:var(--muted);text-decoration:none}.tuninglist a:hover{background:var(--panel-2);color:var(--text)}.tuninglist a[aria-current=page]{background:var(--text);color:var(--bg);font-weight:600}.sitenav .drawer-open{flex:none;margin:0;padding:8px 13px;font-size:var(--t-xs);font-weight:600;letter-spacing:0;text-transform:none;border-radius:var(--rf);border-color:var(--line-2)}.themes{display:flex;gap:7px}.swatch{width:26px;height:26px;padding:0;border-radius:50%;border:1px solid color-mix(in oklab,var(--text) 18%,transparent);background:var(--sw-bg);display:grid;place-items:center;transition:transform .12s ease,box-shadow .12s ease}.swatch i{display:block;width:11px;height:11px;border-radius:50%;background:var(--sw-accent)}.swatch:hover{transform:translateY(-1px)}.swatch.on{box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--text)}.masthead{padding:8px 0 14px;margin-bottom:10px}.sectionmark{display:none}.masthead h1{font-size:var(--t-2xl);line-height:1.06;margin:0 0 6px;letter-spacing:-.03em;font-weight:700}.masthead .sub{margin:0 0 16px;color:var(--muted);font-size:var(--t-sm)}.pills{display:flex;gap:10px;flex-wrap:wrap}.pill{font:600 13.5px/1 var(--mono);padding:9px 14px;border-radius:999px;background:transparent;border:1px solid var(--pigment);color:var(--pigment);letter-spacing:.04em}.pill.ghost{background:transparent;border:1px solid var(--line);color:var(--muted)}.prose p{margin:0 0 17px;max-width:68ch}.prose.tight{margin-top:24px;font-size:15px;color:var(--muted)}.prose.tight p{margin-bottom:12px}.muted{color:var(--muted)}.panel{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:var(--s4) 0 var(--s2);margin:0;box-shadow:none}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:var(--s3)}.panel-head h2{font-size:15px;letter-spacing:-.014em;margin:0;color:var(--text);font-weight:600}.caption{color:var(--muted);font-size:14px;margin:16px 0 0;max-width:70ch}.caption.top{margin:0 0 16px}.caption strong{color:var(--text);font-weight:650}.hint{font-size:13px;color:var(--muted)}.scroller{overflow-x:auto;padding-bottom:4px}.scroller svg{display:block}.play{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);border-radius:999px;padding:8px 17px;font-size:14px;font-weight:600;letter-spacing:.01em}.play:hover{filter:brightness(1.08)}.toggles{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.seg{display:inline-flex;border:1px solid var(--line-2, var(--line));border-radius:var(--rf);background:var(--panel);overflow:hidden}.seg button{font:500 13px/1 var(--body);padding:8px 13px;color:var(--muted);background:transparent;border:0;white-space:nowrap}.seg button+button{box-shadow:inset 1px 0 0 var(--line)}.seg button:hover{color:var(--text)}.seg button[aria-pressed=true]{background:var(--text);color:var(--bg);font-weight:600}.seg button:focus-visible{outline:2px solid var(--pigment);outline-offset:-2px}.lab{font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-right:2px}.toggle{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:7px 14px;font-size:13px}.toggle.on{border-color:var(--pigment);color:var(--pigment);background:transparent}.box-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:26px 0 16px}.box-bar .play{margin-left:auto}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:7px 12px;font-size:14px;font-weight:600;display:flex;align-items:baseline;gap:7px}.chip span{font:400 12px/1 var(--mono);color:var(--muted)}.chip.on{border-color:var(--pigment);background:var(--pigment);color:var(--on-accent)}.chip.on span{color:var(--on-accent);opacity:.8}.practice ol{margin:0;padding-left:22px}.practice li{margin-bottom:10px}.takeaway{margin:22px 0 0;padding:15px 17px;border-left:2px solid var(--pigment);background:transparent;border-radius:0;font-size:15px;color:var(--text)}.fretboard{font-family:ui-sans-serif,system-ui,sans-serif}.fretboard .fret{stroke:var(--board-edge);stroke-width:1.4}.fretboard .nut{stroke:var(--text);stroke-width:5;stroke-linecap:round}.fretboard .string{stroke:var(--board-edge)}.fretboard .inlay{fill:color-mix(in oklab,var(--text) 14%,var(--panel))}.fretboard .open-name,.fretboard .fret-num{fill:var(--muted);font-size:11px;text-anchor:middle;font-family:ui-monospace,Menlo,monospace}.fretboard .open-name{font-size:12px;font-weight:700}.fretboard .dot{cursor:pointer}.fretboard .dot circle{fill:var(--pigment);stroke:var(--pigment);stroke-width:1.5}.fretboard .dot text{text-anchor:middle;font-size:11px;font-weight:700;fill:var(--on-accent)}.fretboard .dot .l-name{font-size:9.5px}.fretboard .dot .l-degree{font-size:7.5px;font-weight:600;opacity:.82}.fretboard .dot.root circle{fill:var(--root);stroke:var(--root)}.fretboard .dot.root text{fill:var(--on-accent)}.fretboard .dot.ghost circle{fill:var(--panel);stroke:var(--pigment);stroke-width:1.6}.fretboard .dot.ghost text{fill:var(--pigment);font-size:9px;font-weight:600}.fretboard .dot.ghost.root circle{fill:var(--panel);stroke:var(--root);stroke-width:1.9}.fretboard .dot.ghost.root text{fill:var(--root);font-weight:700}.fretboard .dot.seam circle{stroke:var(--root);stroke-width:3.5}.fretboard .dot.ghost.seam circle,.fretboard .dot.root.seam circle{stroke:var(--pigment);stroke-width:3.5}.fretboard .dot.selected circle{fill:var(--pigment);stroke:var(--root);stroke-width:3}.fretboard .dot.selected.root circle{fill:var(--root);stroke:var(--pigment);stroke-width:3}.fretboard .dot.selected text{fill:var(--on-accent)}.fretboard .dot.borrowed polygon{fill:var(--panel);stroke:var(--pigment);stroke-width:2.2}.fretboard .dot.solid.borrowed polygon{fill:var(--pigment);stroke:var(--pigment)}.fretboard .dot.solid.borrowed text{fill:var(--on-accent)}.fretboard .dot.borrowed text{fill:var(--pigment);font-weight:700}.fretboard .dot.seam.borrowed polygon{stroke:var(--root);stroke-width:3.5}.fretboard .dot .fall{stroke:var(--root);stroke-width:2.2;stroke-linecap:round}.fretboard .dot.solid .fall{stroke:var(--pigment)}.fretboard .dot .rise{stroke:var(--root);stroke-width:2.2;stroke-linecap:round}.fretboard .dot.solid .rise{stroke:var(--pigment)}.fretboard .dot.ghost:hover circle{stroke-width:2.4}.piano{font-family:ui-sans-serif,system-ui,sans-serif}.piano .case{fill:var(--text)}.piano .pkey{cursor:pointer}.piano .pkey:focus{outline:none}.piano .key.white{fill:var(--key-white);stroke:var(--board-edge);stroke-width:1}.piano .key.black{fill:var(--key-black);stroke:var(--panel);stroke-width:1.2}.piano .key.white.dim{fill:var(--panel);stroke:var(--pigment);stroke-width:1.6}.piano .key.black.dim{fill:var(--key-black);stroke:var(--pigment);stroke-width:1.6}.piano .key.white.on{fill:var(--pigment);stroke:var(--panel);stroke-width:1}.piano .key.black.on{fill:var(--pigment);stroke:var(--panel);stroke-width:1.2}.piano .key.white.root{fill:var(--root);stroke:var(--panel);stroke-width:1}.piano .key.black.root{fill:var(--root);stroke:var(--pigment);stroke-width:1.8}.piano .key.white.held,.piano .key.black.held{fill:var(--pigment);stroke:var(--panel);stroke-width:1}.piano .key.white.moved{fill:var(--root);stroke:var(--panel);stroke-width:1}.piano .key.black.moved{fill:var(--root);stroke:var(--pigment);stroke-width:1.8}.piano .pkey:hover .key.white{fill:var(--panel);stroke:var(--pigment);stroke-width:1.6}.piano .pkey:hover .key.black{fill:var(--accent);stroke:var(--accent)}.piano .key.sel{stroke:var(--text);stroke-width:2}.piano .key.black.sel{stroke:var(--panel);stroke-width:2}.piano .marker{fill:var(--text)}.piano .name,.piano .degree{text-anchor:middle;pointer-events:none}.piano .name{font-size:9.5px;font-weight:600;letter-spacing:.01em;font-family:ui-sans-serif,system-ui,sans-serif}.piano .degree{font-size:11px;font-weight:700}.piano .name.white{fill:var(--faint)}.piano .name.black{fill:var(--key-black-text)}.piano .name.white.dim,.piano .degree.white.dim{fill:var(--pigment)}.piano .name.black.dim,.piano .degree.black.dim{fill:var(--key-black-text)}.piano .degree.white.on{fill:var(--key-on-text)}.piano .name.white.on{fill:var(--key-on-name)}.piano .name.black.on,.piano .degree.black.on,.piano .name.root,.piano .degree.root,.piano .name.held,.piano .degree.held,.piano .name.moved,.piano .degree.moved{fill:var(--on-accent)}.piano .octave-label{text-anchor:middle;font-size:10px;fill:var(--muted);font-family:ui-monospace,Menlo,monospace}#staff-host svg{display:block;overflow:visible}.drawer{position:fixed;top:0;left:0;bottom:0;width:min(320px,84vw);overflow-y:auto;padding:18px 14px 32px;border-right:1px solid var(--line);background:var(--panel);font-size:15px;z-index:50;transform:translate(-101%);transition:transform .18s ease;box-shadow:var(--e2)}.drawer:target{transform:none}.drawer-open,.drawer-close{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:8px 12px;border:1px solid var(--line);border-radius:999px}.drawer-open{margin:10px 20px 0}.drawer-close{margin-bottom:12px}.drawer-open:hover,.drawer-close:hover{color:var(--text)}@media(min-width:1100px){.drawer-open,.drawer-close{display:none}.drawer{width:var(--rail);font-size:14.5px;padding:4px 28px 48px 30px;background:none;border-right:0;box-shadow:none;transform:none;transition:none;z-index:5}#app{padding-left:var(--rail)}#app>.toolbar{margin-left:calc(var(--rail) * -1);padding-left:var(--rail)}.drawer{top:var(--toolbar-h, 55px)}}.drawer-kind{border-top:1px solid var(--line)}.drawer-kind:first-of-type{border-top:0}.drawer-course{margin:14px 0 0;padding:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.drawer-course:first-child{margin-top:0}.drawer-course+.drawer-kind{border-top:0}.drawer-kind>summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:8px;padding:16px 0 10px;font-size:15px;font-weight:600;letter-spacing:-.012em;color:var(--muted)}.drawer-kind>summary::-webkit-details-marker{display:none}.drawer-kind[open]>summary{color:var(--text);font-weight:650}.drawer-kind>summary:hover{color:var(--accent)}.drawer-kind>summary:before{content:attr(data-n);order:2;font:400 11px/1 var(--mono);color:var(--faint);letter-spacing:.02em}.drawer-kind>summary:after{content:"";order:3;margin-left:auto;align-self:center;width:6px;height:6px;border-right:1.2px solid var(--faint);border-bottom:1.2px solid var(--faint);transform:rotate(-45deg);transition:transform .16s ease}.drawer-kind[open]>summary:after{transform:rotate(45deg)}.drawer-kind ul{list-style:none;margin:0 0 16px;padding:0}.drawer-kind li{position:relative}.drawer-kind li a{display:block;padding:5px 0 5px 18px;line-height:1.45;color:var(--muted);text-decoration:none}.drawer-kind li a:hover{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}.drawer-kind li a[aria-current=page]{color:var(--accent);font-weight:680}.drawer-kind li a[aria-current=page]:before{content:"";position:absolute;left:0;top:50%;width:12px;height:3px;margin-top:-1.5px;border-radius:2px;background:var(--accent)}[hidden]{display:none!important}.control{display:flex;flex-direction:column;gap:6px}.control label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}.control select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:600 15px/1 inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:9px 34px 9px 13px;cursor:pointer;min-width:92px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right 16px center,right 11px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.control select:hover{border-color:var(--accent)}.control select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chord-views{display:flex;gap:26px;align-items:flex-end;flex-wrap:wrap;margin-top:20px}.voicings{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}.voicing{margin:0;padding:0}.voicing figcaption{display:flex;align-items:center;gap:10px;margin-top:8px}.voicing code{font:600 12px/1 var(--mono);color:var(--muted);letter-spacing:.1em}.play.tiny{padding:0;width:26px;height:26px;font-size:11px;line-height:1;display:grid;place-items:center;flex:none}#chord-buttons .chip,#climb-buttons .chip{flex-direction:column;align-items:flex-start;gap:2px}#climb-buttons{margin-bottom:18px}#chord-buttons .chip span{font-size:11px}.circle{font-family:ui-sans-serif,system-ui,sans-serif}.circle .seg{cursor:pointer}.circle .seg path{fill:var(--panel-2);stroke:var(--panel);stroke-width:2}.circle .seg-label{text-anchor:middle;font-size:15px;font-weight:650;fill:var(--muted);pointer-events:none}.circle .seg-label.inner{font-size:13px}.circle .seg.in path{fill:var(--panel);stroke:var(--pigment);stroke-width:2.5}.circle .seg-label.in{fill:var(--tone)}.circle .seg.dim path{fill:var(--panel-2);stroke:var(--seam);stroke-width:2.5}.circle .seg-label.dim{fill:var(--seam)}.circle .seg.on-path path{stroke:var(--text);stroke-width:2.5}.circle .seg.off-key path{stroke:var(--seam);stroke-width:2.5;stroke-dasharray:5 3}.circle .seg.tonic path{fill:var(--accent);stroke:var(--accent)}.circle .seg-label.on-path{fill:var(--text)}.circle .seg-numeral{text-anchor:middle;font-size:9.5px;font-family:ui-monospace,Menlo,monospace;fill:var(--muted);pointer-events:none}.circle .seg-numeral.tonic{fill:var(--on-accent)}.circle .seg-numeral.dim,.circle .seg-label.off-key{fill:var(--seam)}.circle .seg-label.tonic{fill:var(--on-accent)}.circle .seg:hover path{stroke:var(--accent);stroke-width:2.5}.circle .hub{fill:var(--panel);stroke:var(--line);stroke-width:1}.circle .hub-key{text-anchor:middle;font-size:16px;font-weight:650;fill:var(--text);pointer-events:none}.circle .hub-sig{text-anchor:middle;font-size:11px;fill:var(--muted);font-family:ui-monospace,Menlo,monospace;pointer-events:none}.circle .sig{text-anchor:middle;font-size:10px;fill:var(--faint);font-family:ui-monospace,Menlo,monospace;pointer-events:none}.circle-panel .layout{display:flex;gap:30px;align-items:flex-start;flex-wrap:wrap}.circle-panel .notes{flex:1 1 300px;min-width:260px}.circle-panel .notes p{margin:0 0 14px;color:var(--muted);font-size:15px}.circle-panel .notes p strong{color:var(--text);font-weight:650}.fifth-demo{margin:.5rem 0 .75rem;overflow-x:auto}.fifth-demo .dot.seam circle{stroke:var(--seam);stroke-width:3}#circle-notes p.aside{font-size:.86rem;color:var(--muted);border-left:2px solid var(--line);padding-left:.75rem;margin-top:.75rem}#circle-notes h3.sub{font-size:var(--t-sm);font-weight:600;color:var(--muted);margin:1.5rem 0 .5rem}.circle .path-halo{fill:none;stroke:var(--panel);stroke-width:6;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.circle .path{fill:none;stroke:var(--text);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:5 4;opacity:.85;pointer-events:none}.circle .path-now{fill:var(--accent);stroke:var(--panel);stroke-width:2.5;pointer-events:none}.steps{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 20px}.step{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:64px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);color:var(--text)}.step .numeral{font-size:15px;font-weight:700}.step .symbol{font:400 11px/1 var(--mono);color:var(--muted)}.step.on{border-color:var(--pigment);background:var(--pigment);color:var(--on-accent)}.step.on .symbol{color:var(--on-accent);opacity:.8}.step:hover{border-color:var(--accent)}.step.borrowed{border-style:dashed;border-color:var(--root)}.step.borrowed .numeral{color:var(--root)}.step.borrowed.on{background:var(--pigment);border-color:var(--pigment)}.step.borrowed.on .numeral{color:var(--on-accent)}.caption .source{display:block;margin-top:8px}.fretboard .dot.char circle{stroke:var(--root);stroke-width:3}.fretboard .dot.ghost.char circle{stroke:var(--root);stroke-width:2}.fretboard .dot.root.char circle{stroke:var(--pigment);stroke-width:3}.piano .key.char{stroke:var(--text);stroke-width:2;stroke-dasharray:3 2}.piano .key.char.sel{stroke-dasharray:none}.fretboard .dot.playing circle{fill:var(--pigment);stroke:var(--root);stroke-width:3;r:15}.fretboard .dot.playing.root circle{fill:var(--root);stroke:var(--pigment)}.fretboard .dot.playing text{fill:var(--on-accent)}.fretboard .dot circle{transition:r .08s ease}.chordbox{font-family:ui-sans-serif,system-ui,sans-serif;display:block}.chordbox .fret{stroke:var(--board-edge);stroke-width:1}.chordbox .nut{stroke:var(--text);stroke-width:3;stroke-linecap:square}.chordbox .string{stroke:var(--board-edge);stroke-width:1}.chordbox .mute{stroke:var(--muted);stroke-width:1.4;stroke-linecap:round}.chordbox .open{fill:none;stroke:var(--muted);stroke-width:1.4}.chordbox .barre{fill:var(--tone)}.chordbox .cdot circle{fill:var(--tone)}.chordbox .cdot text{text-anchor:middle;font-size:7.5px;font-weight:700;fill:var(--on-accent)}.chordbox .cdot.root circle{fill:var(--root)}.chordbox .fret-mark{font:600 8.5px/1 ui-monospace,Menlo,monospace;fill:var(--muted);text-anchor:start}.chordbox .fret-mark.mirrored{text-anchor:end}.chordgrid{border-collapse:collapse}.chordgrid th,.chordgrid td{padding:3px 2px;vertical-align:top}.chordgrid thead th{text-align:center;font-size:13px;font-weight:650;color:var(--text);padding-bottom:10px;border-bottom:1px solid var(--line)}.chordgrid thead th span{display:block;font:400 11px/1.4 var(--mono);color:var(--muted)}.chordgrid tbody th{text-align:right;font:600 12px/1 var(--mono);color:var(--muted);padding-right:10px;white-space:nowrap;vertical-align:middle}.chordgrid td{text-align:center}.chordgrid .cell{cursor:pointer;border-radius:8px;padding:2px}.chordgrid .cell:hover{box-shadow:inset 0 0 0 1px var(--pigment)}.chordgrid .empty{color:var(--faint);font-size:13px}.chordgrid tr.fits th{color:var(--pigment);box-shadow:inset 3px 0 0 var(--pigment);padding-left:8px}.chordgrid tr.band th,[id^=section-] .chord-grid tr.band th{box-shadow:inset 3px 0 0 var(--pigment)}.chordgrid tbody tr>th,.chordgrid tbody tr>td{border-bottom:1px solid var(--line)}.chordgrid tbody tr:last-child>th,.chordgrid tbody tr:last-child>td{border-bottom:0}.panel-head .toggles select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:600 13px/1 inherit;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:999px;padding:7px 26px 7px 13px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right 13px center,right 9px center;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.chordgrid tbody th .reach{display:block;font-size:10px;font-weight:400;color:var(--faint);margin-top:2px}.chordgrid tr.fits th .reach{color:var(--accent)}.source-chip{display:inline-block;margin-left:10px;padding:3px 9px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--muted);font:600 11px/1.4 var(--mono);letter-spacing:0;text-transform:none}.source-chip.borrowed{border-color:var(--seam);color:var(--seam)}.legend{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:var(--muted)}.legend li{display:flex;align-items:center;gap:8px}.legend strong{color:var(--text);font-weight:650}.key-row{width:22px;height:14px;border-radius:4px;background:transparent;border:1px solid var(--line);box-shadow:inset 3px 0 0 var(--pigment)}.key-count{font:600 11px/1 var(--mono);color:var(--accent)}.key-col{width:22px;height:14px;border-radius:4px;border:1px solid var(--line);border-bottom:2px solid var(--accent)}.key-dot{color:var(--faint);font-size:15px;line-height:1}.chordgrid thead th.wanted{border-bottom-color:var(--accent);border-bottom-width:2px}.chordgrid td.wanted,.chordgrid tr.fits td.wanted{background:transparent}.tab{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.tab .tab-line{stroke:var(--board-edge);stroke-width:1}.tab .tab-clear{fill:var(--panel)}.tab .tab-fret{text-anchor:middle;font-size:11px;font-weight:600;fill:var(--text)}.tab .tab-fret.root{fill:var(--accent);font-weight:700}.tab .tab-mark{font-size:9px;font-weight:700;fill:var(--faint);letter-spacing:.04em}.tab .tab-bar{stroke:var(--text);stroke-width:1.2}.tab .tab-bar.thick{stroke-width:3}.tab .tab-stem{stroke:var(--text);stroke-width:1.4}.tab .tab-beam{stroke:var(--text);stroke-width:3.5}.tab .tab-flag{fill:none;stroke:var(--text);stroke-width:1.6;stroke-linecap:round}.tab .tab-dot{fill:var(--text)}.tab .tab-ring{fill:none;stroke:var(--text);stroke-width:1.2}.tab .tab-rest{fill:var(--muted)}.tab-wrap{margin-top:12px;overflow-x:auto}.voices{display:block}.voices .vc-head{font:500 14px var(--body);fill:var(--text);text-anchor:middle}.voices .vc-sub{font:400 11.5px var(--body);fill:var(--muted);text-anchor:middle}.voices .vc-line{stroke:var(--pigment);stroke-width:2.5}.voices .vc-line.held{stroke:var(--faint);stroke-width:1.5}.voices .vc-node rect{fill:var(--panel);stroke:var(--line-2);stroke-width:1}.voices .vc-name{font:400 12.5px var(--body);fill:var(--text);text-anchor:middle}.voices .vc-step rect{fill:var(--panel);stroke:var(--pigment);stroke-width:1}.voices .vc-amount{font:400 11px var(--body);fill:var(--pigment);text-anchor:middle}.voices.compact .vc-head{font-size:12.5px}.voices.compact .vc-sub{font-size:10.5px}.voices.compact .vc-name{font-size:11px}#app .ladder.guide{border-left:2px solid var(--line);padding-left:12px;margin:8px 0 6px}.chordinput{font:600 13px/1 var(--mono);color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:7px 14px;min-width:170px}.chordinput::placeholder{color:var(--faint);font-weight:400}.chordinput:focus{outline:2px solid var(--accent);outline-offset:1px}.chordinput.wide{min-width:260px;margin-top:12px}.vh,.sr-summary{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.crumbs{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline;font-size:.82rem;color:var(--faint);margin:0 0 1rem}.crumbs a{color:var(--faint);text-decoration:none}.crumbs a:hover{color:var(--accent);text-decoration:underline}.crumbs a+a:before{content:"/";margin-right:.5rem;color:var(--line)}.books{display:block;margin:var(--s6) 0 0;padding:var(--s4) 0 0;border-top:1px solid var(--line)}.books h2{font-size:var(--t-sm);font-weight:600;color:var(--muted);margin:0 0 .5rem}.books p{margin:0 0 .9rem;max-width:62ch;color:var(--muted);font-size:.92rem;line-height:1.55}.books-cta{display:inline-block;font-weight:600;font-size:.9rem;color:var(--accent);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:1px}.books-cta:hover{color:var(--text)}.sitenav .navbooks{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 13px;font-size:var(--t-xs);font-weight:600;letter-spacing:0;text-decoration:none;white-space:nowrap;border-radius:var(--rf);border:1px solid var(--text);background:var(--text);color:var(--bg)}.sitenav .navbooks:hover{background:var(--root);border-color:var(--root)}.sitenav .navbooks:focus-visible{outline:2px solid var(--pigment);outline-offset:2px}.navbooks .bk{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}.related{margin:2.5rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line)}.related h2{font-size:var(--t-sm);font-weight:600;color:var(--muted);margin:0 0 .75rem}.related ul{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;list-style:none;margin:0;padding:0}.related a{font-size:.88rem;color:var(--accent);text-decoration:none}.related a:hover{text-decoration:underline}.chordbox .cb-string{text-anchor:middle;fill:var(--faint);font-family:ui-monospace,Menlo,monospace;pointer-events:none}.whyacc{margin-top:.75rem}.whyacc>details>summary{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:550;color:var(--accent);cursor:pointer;padding:.4rem .8rem;border:1px solid var(--pigment);border-radius:999px;background:transparent;list-style:none;transition:background .15s ease,color .15s ease}.whyacc>details>summary:hover{background:var(--pigment);color:var(--on-accent)}.whyacc>details[open]>summary{margin-bottom:.25rem}.whyacc>details>summary::-webkit-details-marker{display:none}.whyacc>details>summary:before{content:"▸";display:inline-block;width:1em;transition:transform .15s ease}.whyacc>details[open]>summary:before{transform:rotate(90deg)}.whyacc p{font-size:.9rem;line-height:1.6;color:var(--muted);max-width:62ch;margin:.75rem 0 0}.whyacc p.aside{border-left:2px solid var(--line);padding-left:.75rem;color:var(--faint)}.steprule{display:flex;flex-wrap:wrap;align-items:center;gap:0;list-style:none;margin:1rem 0 .25rem;padding:0}.steprule .rung{display:flex;flex-direction:column;align-items:center;min-width:2.5rem;padding:.35rem .2rem;border-radius:6px;background:var(--panel-2, var(--panel));border:1px solid var(--line)}.steprule .rung .n{font-size:.95rem;font-weight:620;color:var(--text)}.steprule .rung .d{font-size:.68rem;color:var(--faint);font-family:var(--mono)}.steprule .rung.moved{border-color:var(--pigment);background:transparent}.steprule .rung.moved .n{color:var(--accent)}.steprule .rung.chosen{border-style:dashed}.steprule .rung.chosen .n{color:var(--muted)}.steprule .rung.octave{opacity:.5}.steprule .gap{display:flex;align-items:center;justify-content:center;min-width:2rem;font-size:.7rem;font-family:var(--mono);color:var(--faint);position:relative}.steprule .gap:before{content:"";position:absolute;left:.15rem;right:.15rem;top:50%;border-top:1px dashed var(--line)}.steprule .gap span{position:relative;background:var(--panel);padding:0 .2rem}.steprule .gap.small{min-width:1.2rem}.steprule .gap.small span{color:var(--seam);font-weight:600}.whyacc ul.why{margin:.5rem 0 0;padding-left:1.1rem;max-width:62ch}.whyacc ul.why li{font-size:.9rem;line-height:1.6;color:var(--muted);margin-bottom:.4rem}#workbench{padding:6px 0 12px;margin-bottom:4px;display:flex;flex-direction:column;gap:6px}.wb-view .scroller{overflow-x:auto;overflow-y:hidden}.wb-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0 4px;margin-bottom:8px}.wb-bar .hint{margin-left:auto;font-size:13px;color:var(--muted)}#view-scale .panel,#view-scale .prose,#view-scale [id]{scroll-margin-top:calc(var(--toolbar-h, 92px) + 12px)}.panel.wb-notes{padding-top:10px;padding-bottom:10px}.panel.wb-notes .caption{margin:0 0 6px}.panel.wb-notes .caption:last-child{margin-bottom:0}@media(max-width:767px){#workbench{padding:4px 0 10px}.wb-bar .hint{display:none}}.menu{position:relative}.menu>summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;color:var(--muted)}.menu>summary::-webkit-details-marker{display:none}.menu>summary:hover{color:var(--text)}.menu .gear{display:block;fill:var(--bg);stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.menu-panel{display:none}.menu-panel{position:absolute;left:0;top:calc(100% + 8px);z-index:40;min-width:232px;padding:6px 4px 10px;background:var(--bg);border:1px solid var(--line);border-radius:12px;box-shadow:var(--e1);display:flex;flex-direction:column;gap:2px}.menu-label{margin-top:2px;padding:10px 9px 2px;border-top:1px solid var(--line);font-size:11px;font-weight:640;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.menu-panel .themes{padding:2px 9px 4px}@media(max-width:767px){.sitenav{flex-wrap:wrap;row-gap:6px;column-gap:6px;padding:7px 12px;min-height:0}.sitenav>.menu>summary,.sitenav>.drawer-open{height:30px;padding-block:0}.sitenav .brand{order:1;margin-right:0}.sitenav>.addr{order:2}.sitenav>.drawer-open,.sitenav>.menu{order:3}.sitenav:after{content:"";order:4;flex:0 0 100%;height:0}.sitenav>.lenses{order:5}.sitenav>.navbooks{order:6}.a-word{padding:9px 8px;font-size:var(--t-xs);gap:5px}.a-key{font-size:var(--t-xs)}.sitenav>.addr{min-width:0;max-width:calc(100vw - 133px)}.addrmenu-panel,.a-tuning>.addrmenu-panel{left:0;right:auto;max-width:calc(100vw - 24px)}.viewswitch a{padding:8px 10px;font-size:var(--t-xs)}}.index-group{padding:18px 0 4px;border-top:1px solid var(--line)}.index-group:first-child{border-top:none;padding-top:4px}.index-group h3{margin:0 0 12px;font-size:15px;font-weight:620;letter-spacing:-.01em;color:var(--text)}.index-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;list-style:none;margin:0;padding:0}.index-list li{margin:0}.index-list a{display:block;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);text-decoration:none;font-size:15px;font-weight:520;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:border-color .12s ease,color .12s ease}.index-list a:hover{border-color:var(--accent, var(--text));color:var(--accent, var(--text))}.panel[data-section=notes] .index-list,.panel[data-section=chords] .index-list:only-child{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.panel[data-section=notes] .index-list a,.panel[data-section=chords] .index-list:only-child a{text-align:left}.crumbs:has(>:only-child){display:none}.hands{display:flex;gap:6px;padding:2px 9px 4px}.handopt{flex:1 1 0;padding:7px 6px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:12.5px;cursor:pointer;white-space:nowrap}.handopt:hover{color:var(--text)}.handopt.on{color:var(--text);font-weight:620;border-color:var(--accent, var(--text))}.lenses{display:flex;flex:none}.lenses:empty{display:none}.viewswitch{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--rf);background:var(--panel);overflow:hidden}.viewswitch a{padding:9px 14px;color:var(--muted);text-decoration:none;font:500 var(--t-sm)/1 var(--body);white-space:nowrap;display:flex;align-items:center}.viewswitch a+a{border-left:1px solid var(--line)}.viewswitch a:hover{color:var(--text);background:var(--panel-2)}.viewswitch a[aria-current=page]{color:var(--bg);font-weight:600;background:var(--text)}.linklist{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;list-style:none;margin:0;padding:0}.linklist a{color:var(--accent);text-decoration:none}.linklist a:hover{text-decoration:underline}[id^=section-] .note-run{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 4px;padding:0}[id^=section-] .note-run li{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:46px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}[id^=section-] .note-run li[data-midi]{cursor:pointer;transition:border-color .12s,background .12s}[id^=section-] .note-run li[data-midi]:hover{border-color:var(--accent)}[id^=section-] .note-run li[data-midi]:active{transform:translateY(1px)}[id^=section-] .note-run .n{font-size:17px;font-weight:650;line-height:1.1}[id^=section-] .note-run .d{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.panel .vrow{padding:18px 0;border-top:1px solid var(--line)}.panel .vrow:first-child{border-top:0;padding-top:0}.panel .vhead{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;flex-wrap:wrap}.panel .vhead strong{font-size:19px}.panel .vinv,.panel .vpos{font:650 11px/1 var(--ui, system-ui, sans-serif);letter-spacing:.06em;text-transform:uppercase}.panel .vinv{color:var(--accent)}.panel .vpos{color:var(--muted);margin-left:auto}.panel .vviews{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center}.panel .vviews svg{display:block;max-width:100%;height:auto}@media(max-width:720px){.panel .vviews{grid-template-columns:minmax(0,1fr)}}.panel .vprose{font-size:14px;line-height:1.55;margin:14px 0 8px;max-width:68ch}.panel .vints{font-size:12px;color:var(--muted);margin:0}.panel .ivchip{display:inline-block;padding:1px 7px;border:1px solid var(--line);border-radius:999px;font-weight:650;font-size:11px;color:var(--accent);text-decoration:none}.panel .ivchip:hover{border-color:var(--accent)}[id^=section-] .ivsep{margin:0 4px;color:var(--faint)}[id^=section-] .chord-homes{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}[id^=section-] .chord-homes a{display:inline-block;padding:5px 11px;border:1px solid var(--line);border-radius:999px;font-size:13px;text-decoration:none}[id^=section-] .chord-homes a:hover{border-color:var(--accent)}[id^=section-] .shape,[id^=section-] .chord-set{margin:0 0 18px}[id^=section-] .shape figcaption,[id^=section-] .chord-set figcaption{font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--muted);margin-bottom:6px}[id^=section-] .chord-set{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}[id^=section-] .chord-set figcaption{flex-basis:100%}[id^=section-] .chord-set figcaption span{color:var(--accent);margin-left:6px}.panel .forms-ruler{display:grid;grid-template-columns:repeat(16,minmax(48px,1fr));grid-template-rows:auto auto;column-gap:0;row-gap:10px;margin:6px 0 0;min-width:768px}.panel .forms-ruler .fret{grid-row:1;font:500 11px/1 var(--ui, system-ui, sans-serif);color:var(--muted);padding-bottom:6px;border-bottom:1px solid var(--line)}.panel .forms-ruler .form{grid-row:2;grid-column-end:span 2;margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.panel .forms-ruler .form figcaption{font:650 13px/1.2 var(--ui, system-ui, sans-serif);color:var(--accent)}.panel .forms-ruler .form small{display:block;font-size:11px;color:var(--muted);line-height:1.35;white-space:nowrap}.panel .forms-ruler .form svg{display:block}.panel .forms-ruler .form[data-at="0"]{grid-column-start:1}.panel .forms-ruler .form[data-at="1"]{grid-column-start:2}.panel .forms-ruler .form[data-at="2"]{grid-column-start:3}.panel .forms-ruler .form[data-at="3"]{grid-column-start:4}.panel .forms-ruler .form[data-at="4"]{grid-column-start:5}.panel .forms-ruler .form[data-at="5"]{grid-column-start:6}.panel .forms-ruler .form[data-at="6"]{grid-column-start:7}.panel .forms-ruler .form[data-at="7"]{grid-column-start:8}.panel .forms-ruler .form[data-at="8"]{grid-column-start:9}.panel .forms-ruler .form[data-at="9"]{grid-column-start:10}.panel .forms-ruler .form[data-at="10"]{grid-column-start:11}.panel .forms-ruler .form[data-at="11"]{grid-column-start:12}.panel .forms-ruler .form[data-at="12"]{grid-column-start:13}.panel .forms-ruler .form[data-at="13"]{grid-column-start:14}.panel .forms-ruler .form[data-at="14"]{grid-column-start:15}.panel .forms-ruler .form[data-at="15"]{grid-column-start:16}.panel .forms-rows{margin:18px 0 0}.panel .forms-rows>summary{cursor:pointer;font:650 12px/1 var(--ui, system-ui, sans-serif);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 0}.panel .forms-rows[open]>summary{color:var(--text)}.panel .forms-rows .vrow:first-of-type{border-top:1px solid var(--line);padding-top:18px}.panel .form-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center}.panel .form-row svg{display:block;max-width:100%;height:auto}@media(max-width:720px){.panel .form-row{grid-template-columns:minmax(0,1fr)}}[id^=section-] .chord-run{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}[id^=section-] .chord-run li{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:62px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}[id^=section-] .chord-run .numeral{font-size:11px;font-weight:700;color:var(--accent)}[id^=section-] .chord-run .sym{font-size:16px;font-weight:650}[id^=section-] .chord-run .seventh{font-size:11px;color:var(--muted)}[id^=section-] .bar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;list-style:none;margin:0;padding:0}[id^=section-] .bar-grid li{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;padding:13px 6px 9px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}[id^=section-] .bar-grid em{position:absolute;top:3px;left:6px;font-style:normal;font-size:10px;color:var(--muted)}[id^=section-] .bar-grid .sym{font-size:16px;font-weight:650}[id^=section-] .bar-grid .numeral{font-size:11px;font-weight:700;color:var(--accent)}@media(max-width:560px){[id^=section-] .bar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}[id^=section-] .solo-neck{margin:0 0 18px}[id^=section-] .solo-neck:last-child{margin-bottom:0}[id^=section-] .solo-neck figcaption{margin:0 0 5px;font-size:13px;color:var(--muted)}[id^=section-] .solo-neck figcaption b{color:var(--text);font-size:15px}[id^=section-] .solo-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:7px 22px;margin:0 0 18px;font-size:13px}[id^=section-] .solo-legend li{align-items:flex-start;gap:8px;line-height:1.4}[id^=section-] .solo-legend .mark{flex:none;width:22px;height:22px;margin-top:-1px}[id^=section-] .solo-legend span{color:var(--muted)}[id^=section-] .solo-legend strong{color:var(--text);font-weight:650}[id^=section-] .solo-controls{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-start;margin:0 0 18px}[id^=section-] .positions{margin:0}[id^=section-] .positions .chip,[id^=section-] .chip.layer{padding:6px 11px;font-size:13px}[id^=section-] .chip.layer{margin-left:auto}@media(max-width:640px){[id^=section-] .chip.layer{margin-left:0}}[id^=section-] .riff-figure{margin:0}[id^=section-] .riff-figure .tab{margin-top:10px}[id^=section-] .riff-moves{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px}[id^=section-] .riff-moves.four{grid-template-columns:repeat(2,minmax(0,1fr))}[id^=section-] .riff-moves .solo-neck{margin:0}[id^=section-] .riff-landing{font:12px/1.6 var(--mono);color:var(--muted);margin:6px 0 0}[id^=section-] .riff-landing .rest{color:var(--text);font-weight:700}[id^=section-] .riff-landing .pull,[id^=section-] .riff-landing .borrow,[id^=section-] .riff-landing .bend{color:var(--accent)}[id^=section-] .riff-held{border-collapse:collapse;margin-top:14px;font-size:13px;line-height:1.5}[id^=section-] .riff-held th,[id^=section-] .riff-held td{text-align:left;padding:6px 14px 6px 0;border-bottom:1px solid var(--line);white-space:nowrap}[id^=section-] .riff-held thead th{font-weight:700;color:var(--text)}[id^=section-] .riff-held th span{font:600 11px/1 var(--mono);color:var(--muted);margin-left:4px}[id^=section-] .riff-held td{color:var(--muted)}[id^=section-] .riff-held td i{font-style:normal;display:inline-block;width:1.2em;color:var(--pigment)}[id^=section-] .riff-held td.rest{color:var(--text);font-weight:650}[id^=section-] .riff-held td.pull,[id^=section-] .riff-held td.borrow,[id^=section-] .riff-held td.bend,[id^=section-] .riff-held td.pull i,[id^=section-] .riff-held td.borrow i{color:var(--accent)}[id^=section-] .riff-turns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}[id^=section-] .riff-turn{margin:0}[id^=section-] .riff-turn figcaption{font-size:13px;font-weight:600;line-height:1.4;color:var(--text);margin:0 0 4px}[id^=section-] .riff-turn .caption{margin-top:4px}@media(max-width:640px){[id^=section-] .riff-moves,[id^=section-] .riff-moves.four,[id^=section-] .riff-turns{grid-template-columns:1fr}}[id^=section-] .riff-play{display:inline-block;margin:0 0 10px;padding:6px 12px;font:600 13px/1 var(--sans, system-ui);color:var(--text);background:var(--panel);border:1px solid var(--line-2);border-radius:999px;cursor:pointer}[id^=section-] .riff-play[aria-pressed=true]{border-color:var(--pigment);background:var(--pigment);color:var(--on-accent)}[id^=section-] .riff-play:disabled{opacity:.6;cursor:progress}[id^=section-] .riff-at{position:relative;margin:4px 0 8px}[id^=section-] .riff-at .at-surface{overflow:visible}[id^=section-] .riff-at .at-cursor-bar{background:color-mix(in oklab,var(--pigment) 10%,transparent)}[id^=section-] .riff-at .at-cursor-beat{background:var(--pigment);width:3px}[id^=section-] .riff-at .at-highlight *{fill:var(--pigment);stroke:var(--pigment)}[id^=section-] .do-this{margin:0;padding-left:20px;display:grid;gap:7px;font-size:var(--t-sm, 14px);max-width:62ch}[id^=section-] .chord-grid{display:block;overflow-x:auto;border-collapse:collapse;font-size:12px;max-width:100%}[id^=section-] .chord-grid th,[id^=section-] .chord-grid td{border:1px solid var(--line);padding:4px 6px;text-align:center;vertical-align:top}[id^=section-] .chord-grid thead th{font-weight:700;color:var(--accent);white-space:nowrap}[id^=section-] .chord-grid thead th span{display:block;font-weight:500;color:var(--text)}[id^=section-] .chord-grid tbody th{font-weight:600;white-space:nowrap;text-align:right;color:var(--muted)}[id^=section-] .chord-grid .count{color:var(--muted);font-variant-numeric:tabular-nums}[id^=section-] .interval-table{border-collapse:collapse;font-size:14px}[id^=section-] .interval-table th,[id^=section-] .interval-table td{border-bottom:1px solid var(--line);padding:5px 18px 5px 0;text-align:left}[id^=section-] .interval-table th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}[id^=section-] .chip-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}[id^=section-] .chip-list li{display:flex;align-items:baseline;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg);font-size:13px}[id^=section-] .chip-list span{font-weight:650;color:var(--accent)}[id^=section-] .progression{margin:0 0 16px}[id^=section-] .progression figcaption{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px}[id^=section-] .progression .steps{margin:0 0 6px}[id^=section-] .progression .steps li{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:54px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}[id^=section-] .progression .steps li.borrowed{border-style:dashed;border-color:var(--seam, var(--accent))}[id^=section-] .progression .steps .numeral{font-size:11px;font-weight:700;color:var(--accent)}[id^=section-] .progression .steps .symbol{font-size:15px;font-weight:650}[id^=section-] .progression .ladder{margin:4px 0 2px}[id^=section-] .progression .ladder.guide{border-left:2px solid var(--line);border-radius:0;padding-left:12px;margin:8px 0 6px}[id^=section-] .progression .voices{margin:2px 0}[id^=section-] .progression .motion{font-size:12px;color:var(--text);margin:0 0 2px}[id^=section-] .progression .source{font-size:12px;color:var(--muted);margin:0}#app>.page-head{max-width:960px;margin-inline:auto;padding-inline:20px}#app>.page-head{padding-top:8px;padding-bottom:4px}#app>.page-head h1{margin:0 0 .35rem;font-size:var(--t-2xl);line-height:1.06;letter-spacing:-.03em;font-weight:700}#app>.page-head .eyebrow{margin:0 0 6px;font-size:var(--t-sm);color:var(--muted)}#app>.page-head .standfirst.claim{font-size:var(--t-lg);line-height:1.35;color:var(--text);max-width:34ch;margin:4px 0 22px}.lesson-prose{max-width:68ch;margin:28px 0 0}.lesson-prose p{margin:0 0 17px;font-size:var(--t-md);line-height:1.6}.try{border:1px solid var(--line);border-radius:var(--r2);background:var(--panel);padding:16px 18px;margin:24px 0 0;max-width:68ch}.try .lab{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--pigment);font-weight:700;margin-bottom:8px}.try p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}.related.deeper ul{display:grid;gap:6px}.related.deeper a{font-size:var(--t-base);font-weight:550;color:var(--text);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px}.related.deeper a:hover{color:var(--pigment);text-decoration-color:currentColor}.lesson-foot{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:40px}.lesson-foot.solo{grid-template-columns:1fr}.lesson-foot a{display:block;border:1px solid var(--line);border-radius:var(--r2);padding:14px 18px;text-decoration:none;color:var(--text);background:var(--panel)}.lesson-foot a.next{text-align:right;border-color:var(--pigment);background:color-mix(in oklab,var(--pigment) 8%,var(--panel))}.lesson-foot .k{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.lesson-foot .t{display:block;font-size:var(--t-md);font-weight:600;margin-top:2px}.lesson-foot a.next .t:after{content:" →"}.lesson-foot a.prev .t:before{content:"← "}.drawer-kind.course>summary{flex-wrap:wrap}.drawer-kind.course>summary .pn,.parts .pn{display:block;flex-basis:100%;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-weight:600;margin-bottom:2px}.drawer-kind.course li a{display:flex;gap:10px;align-items:baseline}.drawer-kind.course .ln,.parts .ln{font-family:var(--mono);font-size:11.5px;color:var(--faint);min-width:1.6em}.drawer-kind.course li.done a{color:var(--faint)}.drawer-kind.course li a[aria-current] .ln{color:var(--pigment)}.drawer-label{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-weight:600}.drawer-label+.drawer-kind{border-top:0}.drawer-close+.drawer-label{margin-top:0;padding-top:0;border-top:0}.parts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px 32px}.parts>li h3{font-size:var(--t-base);margin:0 0 8px}.parts ol{list-style:none;margin:0;padding:0}.parts ol li a{display:flex;gap:10px;align-items:baseline;padding:4px 0;text-decoration:none;color:var(--text)}.parts ol li a:hover{color:var(--pigment)}.ref-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ref-cards a{display:block;border:1px solid var(--line);border-radius:var(--r2);padding:16px;text-decoration:none;color:var(--text);background:var(--panel)}.ref-cards a:hover{border-color:var(--pigment)}.ref-cards b{display:block;font-size:var(--t-md);margin-bottom:4px}.ref-cards span{color:var(--muted);font-size:14px}#section-welcome .panel-head{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#section-welcome .three{display:flex;flex-direction:column;gap:8px;align-items:flex-start}#section-welcome .three svg{display:block;width:auto;max-width:100%}#section-welcome .three svg:nth-child(1){height:150px}#section-welcome .three svg:nth-child(2){height:100px}#section-welcome .three svg:nth-child(3){height:140px}.arc{display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;margin:0 0 14px;padding:0}.arc li{font-size:13px;font-weight:600;color:var(--pigment);background:var(--pigment-wash, #eef1f9);border-radius:6px;padding:5px 9px}.arc li+li:before{content:"›";color:var(--line);font-weight:400;margin-right:9px;margin-left:-1px}.showing{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 16px}.showing .addr{margin-right:0}.showing .hint{margin-left:auto}.ccards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ccards a{display:block;border:1px solid var(--line);border-radius:var(--r2);padding:14px 16px;text-decoration:none;color:var(--text);background:var(--panel)}.ccards a.first,.ccards a:hover{border-color:var(--pigment)}.ccards b{display:block;font-size:var(--t-md);margin-bottom:3px}.ccards span{display:block;color:var(--muted);font-size:14px}.ccards em{display:block;font-style:normal;color:var(--muted);font-size:13px;margin-top:6px}.pairs-group+.pairs-group,.grips-group+.grips-group{margin-top:24px}.pairs-group h3,.grips-group h3{font-size:var(--t-base);margin:0 0 8px}@media(max-width:767px){.parts{grid-template-columns:1fr}.ref-cards{grid-template-columns:1fr 1fr}.ccards,.lesson-foot{grid-template-columns:1fr}.lesson-foot a.next{text-align:left}}.doorway{margin:0 0 14px;font-size:var(--t-sm);color:var(--muted)}.doorway a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--line-2);padding-bottom:1px}.doorway a:hover{color:var(--text);border-bottom-color:currentColor}#app>.doorway{max-width:960px;margin-inline:auto;padding:0 20px 6px}.masthead .doorway{margin:-4px 0 16px}#app>.page-head .standfirst:not(.claim){font-size:var(--t-md);line-height:1.5;color:var(--muted);max-width:62ch;margin:6px 0 4px}.fork{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.btn{display:inline-block;padding:10px 18px;border-radius:var(--rf);border:1px solid var(--line-2);text-decoration:none;color:var(--text);font-weight:600}.btn:hover{border-color:var(--text)}.btn.primary{background:var(--pigment);border-color:var(--pigment);color:var(--on-accent)}.btn.primary:hover{filter:brightness(1.08)}.parts.ladder{grid-template-columns:1fr;gap:0}.parts.ladder>li{display:grid;grid-template-columns:300px 1fr;gap:24px;padding:16px 0;border-top:1px solid var(--line)}.parts.ladder>li:first-child{border-top:0;padding-top:4px}.parts.ladder>li h3{margin:0}.parts.ladder ol{display:flex;flex-wrap:wrap;gap:4px 24px}@media(max-width:767px){.parts.ladder>li{grid-template-columns:1fr;gap:8px}}
