.ff-search{max-width:32rem;display:block}.ff-search__label{margin-bottom:var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);display:block}.ff-search__row{gap:var(--sp-2);display:flex}.ff-search__input{min-width:0;min-height:44px;padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-m);background:var(--card);flex:auto;font-size:16px}.ff-search__input::placeholder{color:var(--muted)}.ff-search__go{min-height:44px}.ff-search__list{margin:var(--sp-2) 0 0;border:1px solid var(--border);border-radius:var(--r-m);background:var(--card);padding:0;list-style:none}.ff-search__list[hidden]{display:none}.ff-search__option{align-items:center;gap:var(--sp-3);min-height:44px;padding:var(--sp-2) var(--sp-3);cursor:pointer;display:flex}.ff-search__option[aria-selected=true]{background:var(--hover);outline:2px solid var(--focus);outline-offset:-2px}.ff-search__option:hover{background:var(--hover)}.ff-search__kind{font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.ff-search__message{margin:var(--sp-2) 0 0;min-height:1.6em;font-size:var(--fs-small);color:var(--muted)}.ff-nav__search-btn[hidden]{display:none}.ff-dialog--search{margin-top:calc(var(--nav-height) + var(--sp-2));margin-bottom:auto}.ff-dialog--search .ff-search{max-width:none}:root,[data-theme=light]{color-scheme:light;--bg:#fafafa;--card:#fff;--text:#1a1a1a;--muted:#6b6b6b;--faint:#8f8f8f;--border:#e4e4e4;--border-strong:#c4c4c4;--divider:#f0f0f0;--hover:#f4f4f5;--focus:#1a1a1a;--danger:#b42318;--scrim:#00000080;--r-s:4px;--r-m:6px;--r-l:12px;--r-xl:16px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--track-display:-.025em;--track-number:-.03em;--track-label:.08em;--track-eyebrow:.14em;--font-sans:var(--font-inter,system-ui, sans-serif);--font-mono:var(--font-jetbrains-mono,ui-monospace, monospace);--fs-display:52px;--fs-h1:40px;--fs-h2:28px;--fs-h3:20px;--fs-body:16px;--fs-small:14px;--fs-caption:12px;--fs-meta:11px;--content-width:64rem;--wide-width:80rem;--gutter:16px;--measure:68ch;--nav-height:56px;--t-fast:.15s}@media (width<=639px){:root{--fs-display:34px;--fs-h1:30px;--fs-h2:23px;--fs-h3:18px}}[data-theme=dark]{color-scheme:dark;--bg:#111113;--card:#18181b;--text:#ececec;--muted:#a1a1aa;--faint:#71717a;--border:#2a2a2e;--border-strong:#3f3f46;--divider:#232327;--hover:#1f1f23;--focus:#ececec;--danger:#f97066}@media (prefers-color-scheme:dark){:root[data-theme=system]{color-scheme:dark;--bg:#111113;--card:#18181b;--text:#ececec;--muted:#a1a1aa;--faint:#71717a;--border:#2a2a2e;--border-strong:#3f3f46;--divider:#232327;--hover:#1f1f23;--focus:#ececec;--danger:#f97066}}:root,[data-theme]{--text-normal:var(--text);--text-muted:var(--muted);--text-faint:var(--faint);--text-error:var(--danger);--text-on-accent:var(--card);--interactive-accent:var(--text);--background-primary:var(--card);--background-secondary:var(--bg);--background-modifier-border:var(--border);--background-modifier-border-focus:var(--focus);--background-modifier-hover:var(--hover);--font-ui-small:var(--fs-small);--font-ui-smaller:var(--fs-caption);--font-normal:400;--font-semibold:600;--font-bold:700;--radius-s:var(--r-s);--radius-m:var(--r-m);--size-4-2:var(--sp-2)}:root,[data-theme=light]{--color-red:#e93147;--color-blue:#086ddd;--color-orange:#ec7500;--color-purple:#7852ee;--color-green:#08b94e;--color-pink:#d53984}[data-theme=dark]{--color-red:#fb464c;--color-blue:#027aff;--color-orange:#e9973f;--color-purple:#a882ff;--color-green:#44cf6e;--color-pink:#fa99cd}@media (prefers-color-scheme:dark){:root[data-theme=system]{--color-red:#fb464c;--color-blue:#027aff;--color-orange:#e9973f;--color-purple:#a882ff;--color-green:#44cf6e;--color-pink:#fa99cd}}body{--fb-root:var(--text-normal);--fb-tone:var(--color-red);--fb-shape-c:var(--color-blue);--fb-shape-a:var(--color-orange);--fb-shape-g:var(--color-purple);--fb-shape-e:var(--color-green);--fb-shape-d:var(--color-pink)}.theme-dark{--fb-shape-a:color-mix(in oklab, var(--color-orange) 85%, black);--fb-shape-g:color-mix(in oklab, var(--color-purple) 95%, black);--fb-shape-e:color-mix(in oklab, var(--color-green) 85%, black);--fb-shape-d:color-mix(in oklab, var(--color-pink) 80%, black)}.fretfolk-fretboard{max-width:100%;height:auto;display:block}.fretfolk-string{stroke:var(--text-muted);stroke-width:1px}.fretfolk-fret{stroke:var(--text-faint);stroke-width:1px}.fretfolk-nut{stroke:var(--text-normal);stroke-width:5px;stroke-linecap:square}.fretfolk-inlay{fill:var(--background-modifier-border)}.fretfolk-dot-body{stroke:var(--background-primary);stroke-width:1.5px}.fretfolk-dot-text{fill:var(--background-primary);font-size:10px;font-weight:600}.fretfolk-dot-text--long{font-size:7.5px}.fretfolk-dot--tone .fretfolk-dot-body{fill:var(--fb-tone)}.fretfolk-dot--characteristic .fretfolk-dot-body{fill:var(--interactive-accent)}.fretfolk-dot--characteristic .fretfolk-dot-text{fill:var(--text-on-accent)}.fretfolk-dot--root .fretfolk-dot-body{fill:var(--fb-root);stroke:var(--fb-root);stroke-width:3px}.fretfolk-dot--shift .fretfolk-dot-body,.fretfolk-dot--stretch .fretfolk-dot-body{stroke:var(--text-normal);stroke-dasharray:3 2}.fretfolk-dot--outside .fretfolk-dot-body{fill:none;stroke:var(--text-muted);stroke-width:1.5px}.fretfolk-dot--compare .fretfolk-dot-ring{fill:none;stroke:var(--text-normal);stroke-width:1.5px}.fretfolk-barre{stroke:var(--fb-tone);stroke-opacity:.45;stroke-width:18px;stroke-linecap:round}.fretfolk-marker.fretfolk-marker--root{fill:var(--fb-root);stroke:var(--fb-root);stroke-width:.5px;font-weight:var(--font-bold,700)}.fretfolk-marker{fill:var(--text-normal);font-size:13px}.fretfolk-finder-row{flex-wrap:wrap;align-items:baseline;gap:.5em;display:flex}.fretfolk-finder-symbol{font-weight:var(--font-semibold,600)}.fretfolk-finder-notes,.fretfolk-finder-note,.fretfolk-finder-caption{color:var(--text-muted)}.fretfolk-finder-notes{font-size:var(--font-ui-small,.9em)}.fretfolk-finder-level{border:1px solid var(--background-modifier-border);border-radius:var(--radius-s,4px);color:var(--text-muted);font-size:var(--font-ui-smaller,.8em);margin-left:auto;padding:0 .4em}.fretfolk-finder-note{font-size:var(--font-ui-smaller,.8em);margin-top:.15em}.fretfolk-finder-preview{border-top:1px solid var(--background-modifier-border);flex-direction:column;align-items:center;padding:.5em .75em;display:flex}.fretfolk-finder-preview:empty{display:none}.fretfolk-finder-figure .fretfolk-fretboard{width:auto;max-height:30vh}.fretfolk-finder-caption{font-size:var(--font-ui-small,.9em);text-align:center;margin:.25em 0 0}.fretfolk-diagram{max-width:100%;overflow:auto hidden}.fretfolk-diagram--min-400 .fretfolk-fretboard{min-width:400px}.fretfolk-diagram--min-500 .fretfolk-fretboard{min-width:500px}.fretfolk-diagram--min-600 .fretfolk-fretboard{min-width:600px}.fretfolk-diagram--min-700 .fretfolk-fretboard{min-width:700px}.fretfolk-diagram--min-800 .fretfolk-fretboard{min-width:800px}.fretfolk-diagram--natural .fretfolk-fretboard{max-width:none}.fretfolk-diagram:focus-visible{outline:2px solid var(--background-modifier-border-focus,var(--interactive-accent));outline-offset:2px}.fretfolk-message{margin:0}.fretfolk-message--error{color:var(--text-error)}.fretfolk-message--hint,.fretfolk-message--placeholder{color:var(--text-muted)}.fretfolk-chord-notes{margin-top:.5em}.fretfolk-voicing-notice{color:var(--text-muted);font-size:var(--font-ui-small,.9em);margin-top:.5em;font-style:italic}.fretfolk-warnings{font-size:var(--font-ui-smaller,.85em);color:var(--text-muted);margin:.5em 0 0;padding-inline-start:1.25em}.fretfolk-compare{font-size:var(--font-ui-small,.9em);color:var(--text-muted);margin:.5em 0 0}.fretfolk-modes{max-width:100%;overflow-x:auto}.fretfolk-modes-table{border-collapse:collapse;width:100%;font-size:var(--font-ui-small,.9em)}.fretfolk-modes-table caption{text-align:start;font-weight:var(--font-semibold,600);padding-bottom:.25em}.fretfolk-modes-table th,.fretfolk-modes-table td{border-bottom:1px solid var(--background-modifier-border);text-align:start;padding:.25em .5em}.fretfolk-modes-row{cursor:pointer}.fretfolk-modes-row:hover{background-color:var(--background-modifier-hover)}.fretfolk-modes-row--selected{background-color:var(--background-modifier-active-hover,var(--background-modifier-hover))}.fretfolk-modes-row--selected .fretfolk-modes-button{font-weight:var(--font-bold,700)}.is-mobile .fretfolk-modes-button{min-height:44px}.fretfolk-modes-diagram{margin-top:.75em}.fretfolk-modes-caption{font-weight:var(--font-semibold,600);margin:0 0 .25em}.fretfolk-layout{flex-direction:column;gap:.75em;max-width:100%;display:flex}.fretfolk-layout--beside{flex-direction:row;align-items:flex-start;gap:16px}.fretfolk-layout-main{flex:auto;min-width:0}.fretfolk-layout--beside .fretfolk-layout-main{flex:0 auto}.fretfolk-layout--beside .fretfolk-panel{box-sizing:border-box;flex:0 0 300px}.fretfolk-panel{border:1px solid var(--background-modifier-border);border-radius:var(--radius-m,8px);background-color:var(--background-secondary);max-width:68ch;font-size:var(--font-ui-small,.9em);overflow-wrap:anywhere;flex-direction:column;gap:12px;padding:12px 14px;display:flex}.fretfolk-panel p,.fretfolk-panel ul,.fretfolk-panel li,.fretfolk-panel dl,.fretfolk-panel dd{margin:0}.fretfolk-panel ul,.fretfolk-panel dl{padding:0;list-style:none}.fretfolk-panel-head{flex-direction:column;gap:4px;display:flex}.fretfolk-panel-titlerow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fretfolk-panel-title{font-size:1.2em;font-weight:var(--font-semibold,600)}.fretfolk-panel-fact{color:var(--text-muted)}.fretfolk-panel-stepper:empty{display:none}.fretfolk-levels{flex-wrap:nowrap;align-items:center;gap:4px;margin-inline-start:auto;display:flex}.fretfolk-level-group{border:1px solid var(--background-modifier-border);border-radius:var(--radius-s,4px);flex-wrap:wrap;display:inline-flex;overflow:hidden}.fretfolk-level-group[hidden],.fretfolk-level-chip[hidden]{display:none}.fretfolk-level-option{box-shadow:none;color:var(--text-normal);font-weight:var(--font-normal,400);background-color:#0000;border:none;border-radius:0}.fretfolk-level-option[aria-checked=true]{background-color:var(--interactive-accent);color:var(--text-on-accent);font-weight:var(--font-bold,700)}.fretfolk-level-option:focus-visible,.fretfolk-level-toggle:focus-visible{outline:2px solid var(--background-modifier-border-focus,var(--interactive-accent));outline-offset:-2px}.fretfolk-level-chip{border-radius:var(--radius-s,4px);background-color:var(--background-modifier-hover);font-size:var(--font-ui-smaller,.85em);font-weight:var(--font-semibold,600);padding:2px 8px}.fretfolk-level-toggle{min-width:2em}.fretfolk-panel .fretfolk-level-option{height:auto;min-height:0;font-size:var(--font-ui-smaller,.85em);padding:2px 10px}.fretfolk-panel .fretfolk-level-toggle{height:auto;min-height:0;padding:2px 6px}.is-mobile .fretfolk-level-option,.is-mobile .fretfolk-level-toggle{min-height:44px}.fretfolk-draft{border:1px solid var(--background-modifier-border);border-radius:var(--radius-s,4px);color:var(--text-muted);padding:0 6px;font-size:11px}.fretfolk-styles{flex-wrap:wrap;gap:4px;display:flex}.fretfolk-style{background-color:var(--background-modifier-hover);color:var(--text-muted);border-radius:999px;padding:0 8px;font-size:11px}.fretfolk-panel-facts{flex-direction:column;gap:6px;display:flex}.fretfolk-facts{grid-template-columns:max-content 1fr;gap:4px 14px;display:grid}.fretfolk-fact{display:contents}.fretfolk-fact-label{color:var(--text-muted);font-weight:var(--font-normal,400)}.fretfolk-fact-value{min-width:0}.fretfolk-chords{flex-wrap:wrap;gap:2px 10px;display:flex}.fretfolk-chord-numeral{color:var(--text-muted)}.fretfolk-blurb{border-top:1px solid var(--background-modifier-border);flex-direction:column;gap:10px;padding-top:12px;display:flex}.fretfolk-blurb-heading{font-weight:var(--font-semibold,600)}.fretfolk-blurb-label{color:var(--text-muted);font-size:11px;font-weight:var(--font-semibold,600);letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px;display:block}.fretfolk-overlay-group{flex-wrap:wrap;gap:4px;display:flex}.fretfolk-overlay-option{border:1px solid var(--background-modifier-border);border-radius:var(--radius-s,4px);box-shadow:none;color:var(--text-normal);font-weight:var(--font-normal,400);background-color:#0000}.fretfolk-overlay-option[aria-checked=true]{border-color:var(--interactive-accent);background-color:var(--interactive-accent);color:var(--text-on-accent);font-weight:var(--font-bold,700)}.fretfolk-overlay-option:focus-visible{outline:2px solid var(--background-modifier-border-focus,var(--interactive-accent));outline-offset:1px}.fretfolk-panel .fretfolk-overlay-option{height:auto;min-height:0;font-size:var(--font-ui-smaller,.85em);padding:2px 8px}.is-mobile .fretfolk-overlay-option{min-height:44px}.fretfolk-overlay-showing{color:var(--text-muted);font-size:var(--font-ui-smaller,.85em)}.fretfolk-fret-range{fill:var(--text-muted);font-size:11px}.fretfolk-ruler-segment,.fretfolk-band,.fretfolk-swatch{--fb-shape-color:var(--text-muted)}.fretfolk-shape--c{--fb-shape-color:var(--fb-shape-c)}.fretfolk-shape--a{--fb-shape-color:var(--fb-shape-a)}.fretfolk-shape--g{--fb-shape-color:var(--fb-shape-g)}.fretfolk-shape--e{--fb-shape-color:var(--fb-shape-e)}.fretfolk-shape--d{--fb-shape-color:var(--fb-shape-d)}.fretfolk-ruler-segment{cursor:pointer}.fretfolk-ruler-segment:focus{outline:none}.fretfolk-ruler-hit{fill:#0000;stroke:none;pointer-events:all}.fretfolk-ruler-segment:focus-visible .fretfolk-ruler-hit{stroke:var(--background-modifier-border-focus,var(--interactive-accent));stroke-width:2px}.fretfolk-ruler-body{fill:color-mix(in oklab, var(--fb-shape-color) 18%, transparent);stroke:var(--fb-shape-color);stroke-width:1px}.fretfolk-ruler-segment--focused .fretfolk-ruler-body{fill:color-mix(in oklab, var(--fb-shape-color) 40%, transparent);stroke-width:2px}.fretfolk-ruler-label{fill:var(--text-normal);font-size:10px;font-weight:var(--font-semibold,600);pointer-events:none}.fretfolk-band{fill:color-mix(in oklab, var(--fb-shape-color) 14%, transparent);stroke:var(--fb-shape-color);stroke-width:2px;pointer-events:none}.fretfolk-stepper{align-items:center;gap:8px;display:flex}.fretfolk-stepper-label{flex:auto;align-items:center;gap:6px;min-width:0;display:inline-flex}.fretfolk-swatch{border:1px solid var(--fb-shape-color);background-color:var(--fb-shape-color);border-radius:2px;flex:none;width:.8em;height:.8em}.fretfolk-stepper-button{min-width:2em}.fretfolk-stepper-button:focus-visible{outline:2px solid var(--background-modifier-border-focus,var(--interactive-accent));outline-offset:-2px}.fretfolk-panel .fretfolk-stepper-button{height:auto;min-height:0;padding:2px 6px}.is-mobile .fretfolk-stepper-button{min-width:44px;min-height:44px}.fretfolk-ruler--legend .fretfolk-ruler-segment{cursor:default}.fretfolk-rotate-notice{display:none}@media (orientation:portrait){.is-phone .fretfolk-scale-diagram{display:none}.is-phone .fretfolk-rotate-notice{padding:var(--size-4-2,8px) 0;color:var(--text-muted);display:block}}@media (forced-colors:active){.fretfolk-ruler-segment,.fretfolk-band,.fretfolk-swatch,.fretfolk-shape--c,.fretfolk-shape--a,.fretfolk-shape--g,.fretfolk-shape--e,.fretfolk-shape--d{--fb-shape-color:CanvasText}.fretfolk-ruler-body{fill:canvas}.fretfolk-band{fill:none}.fretfolk-ruler-segment--focused .fretfolk-ruler-body{stroke:highlight}.fretfolk-ruler-label{fill:canvastext}.fretfolk-swatch{display:none}}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;line-height:1.6;display:flex}main{padding-top:var(--sp-8);flex:1 0 auto}h1,h2,h3{margin:0 0 var(--sp-3);letter-spacing:var(--track-display);text-wrap:balance;font-weight:600;line-height:1.15}h1{font-size:var(--fs-h1);font-weight:700}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);letter-spacing:-.015em}p{margin:0 0 var(--sp-4)}a{color:var(--text);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px;transition:text-decoration-color var(--t-fast)}a:hover{text-decoration-color:var(--text)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.skip-link{top:var(--sp-2);left:var(--sp-2);z-index:100;min-height:44px;padding:0 var(--sp-4);background:var(--text);color:var(--card);border-radius:var(--r-m);font-family:var(--font-mono);font-size:var(--fs-small);align-items:center;text-decoration:none;display:inline-flex;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:none}.container{width:100%;max-width:var(--content-width);padding-inline:var(--gutter);margin-inline:auto}.container--wide{max-width:var(--wide-width)}.prose{max-width:var(--measure)}.mono{font-family:var(--font-mono)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fretfolk-fretboard text{font-family:var(--font-mono)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.ff-eyebrow{margin:0 0 var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--muted);font-weight:400;line-height:1.4}.ff-chip{padding:1px var(--sp-2);border:1px solid var(--border);border-radius:var(--r-s);font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);line-height:1.6;display:inline-block}.ff-absent{font-family:var(--font-mono);font-size:var(--fs-small);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.ff-btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:36px;padding:0 var(--sp-4);border:1px solid var(--border);border-radius:var(--r-m);color:var(--text);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--track-label);text-transform:uppercase;cursor:pointer;transition:border-color var(--t-fast), color var(--t-fast);background:0 0;font-weight:600;text-decoration:none;display:inline-flex}.ff-btn:hover{border-color:var(--border-strong)}.ff-btn--primary{background:var(--text);border-color:var(--text);color:var(--card)}.ff-btn--primary:hover{border-color:var(--text);color:var(--card);opacity:.85}.ff-btn--link{min-height:0;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px;letter-spacing:var(--track-label);border:0;border-radius:0;padding:0}.ff-btn--link:hover{text-decoration-color:var(--text)}.ff-btn:disabled,.ff-btn[aria-disabled=true]{opacity:.4;cursor:default;pointer-events:none}.ff-seg{border:1px solid var(--border);border-radius:var(--r-m);background:var(--card);max-width:100%;padding:2px;display:inline-flex}.ff-seg__option{min-width:0;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-s);color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-caption);cursor:pointer;transition:color var(--t-fast), background-color var(--t-fast);background:0 0;border:0;line-height:1.5}.ff-seg__option:hover:not([aria-checked=true]):not(:disabled){background:var(--hover);color:var(--text)}.ff-seg__option[aria-checked=true]{background:var(--text);color:var(--card);font-weight:700}.ff-seg__option:disabled{opacity:.4;cursor:default}.ff-nav{z-index:50;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 95%, transparent);backdrop-filter:blur(8px);position:sticky;top:0}.ff-nav__bar{align-items:center;gap:0 var(--sp-4);min-height:var(--nav-height);flex-wrap:wrap;display:flex}.ff-nav__brand{align-items:center;gap:var(--sp-2);min-height:44px;letter-spacing:var(--track-display);margin-right:auto;font-weight:700;text-decoration:none;display:inline-flex}.ff-nav__brand svg{fill:currentColor;width:18px;height:18px}.ff-nav__tools{align-items:center;gap:var(--sp-1);order:2;display:flex}.ff-nav__icon-btn{min-width:44px;min-height:44px;padding:0 var(--sp-2);border-radius:var(--r-m);color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--track-label);text-transform:uppercase;cursor:pointer;transition:color var(--t-fast), border-color var(--t-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.ff-nav__icon-btn:hover:not(:disabled){color:var(--text);border-color:var(--border-strong)}.ff-nav__icon-btn:disabled{opacity:.4;cursor:default}.ff-nav__icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.ff-nav__menu-btn[hidden]{display:none}.ff-nav__links{gap:var(--sp-1) var(--sp-4);padding:0 0 var(--sp-3);flex-wrap:wrap;flex-basis:100%;order:3;margin:0;list-style:none;display:flex}.ff-nav__links[hidden]{display:none}.ff-nav__link{min-height:44px;font-size:var(--fs-small);color:var(--muted);transition:color var(--t-fast);align-items:center;text-decoration:none;display:inline-flex}.ff-nav__link:hover{color:var(--text)}.ff-nav__link[aria-current=page]{color:var(--text);font-weight:700}@media (width>=768px){.ff-nav__bar{flex-wrap:nowrap}.ff-nav__brand{margin-right:0}.ff-nav__links,.ff-nav__links[hidden]{padding:0 0 0 var(--sp-6);flex:auto;order:1;display:flex}.ff-nav__menu-btn,.ff-nav__menu-btn[hidden]{display:none}}.ff-footer{margin-top:var(--sp-16);border-top:1px solid var(--border);padding-block:var(--sp-6);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--track-label);color:var(--muted)}.ff-footer__row{gap:var(--sp-1) var(--sp-4);flex-wrap:wrap;align-items:center;display:flex}.ff-footer a{min-width:44px;min-height:44px;color:var(--muted);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.ff-footer a:hover{color:var(--text)}.ff-footer__sep{color:var(--faint)}.ff-figure{margin:0 0 var(--sp-8);border:1px solid var(--border);border-radius:var(--r-l);background:var(--card)}.ff-figure__head{padding:var(--sp-5) var(--sp-5) 0}.ff-figure__title{font-size:var(--fs-h3);margin:0}.ff-figure__dek{margin:var(--sp-1) 0 0;font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.ff-figure__controls{gap:var(--sp-3);padding:var(--sp-4) var(--sp-5) 0;flex-wrap:wrap;display:flex}.ff-figure__controls:empty{display:none}.ff-figure__plot{padding:var(--sp-4) var(--sp-5);overscroll-behavior-x:contain;overflow-x:auto}.ff-figure__foot{justify-content:space-between;align-items:center;gap:var(--sp-2) var(--sp-4);margin:0 var(--sp-5);padding:var(--sp-3) 0;border-top:1px solid var(--divider);font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);flex-wrap:wrap;display:flex}.ff-figure__actions{gap:var(--sp-2);padding:0 var(--sp-5) var(--sp-4);flex-wrap:wrap;display:flex}.ff-figure__actions:empty{display:none}.ff-dialog{width:min(36rem, calc(100vw - 2 * var(--gutter)));max-height:calc(100vh - 2 * var(--gutter));border:1px solid var(--border);border-radius:var(--r-xl);background:var(--card);color:var(--text);padding:0;overflow:auto}.ff-dialog::backdrop{background:var(--scrim)}.ff-dialog__inner{padding:var(--sp-5)}.ff-dialog__head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-4);display:flex}.ff-dialog__title{font-size:var(--fs-h3);margin:0}.ff-dialog__close{min-width:44px;min-height:44px;padding:0 var(--sp-2);color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--track-label);text-transform:uppercase;cursor:pointer;transition:color var(--t-fast);background:0 0;border:0;flex:none}.ff-dialog__close:hover{color:var(--text)}.ff-dialog--enlarge{border:0;border-radius:0;width:100vw;max-width:none;height:100vh;max-height:none}.ff-dialog--enlarge .ff-figure__plot{padding-inline:0}.ff-sg-section{padding-inline:var(--sp-4);padding-block:var(--sp-8);background:var(--bg);color:var(--text);--fb-root:var(--text-normal);--fb-tone:var(--color-red);--fb-shape-c:var(--color-blue)}.ff-sg-section:not(.theme-dark){--fb-shape-a:var(--color-orange);--fb-shape-g:var(--color-purple);--fb-shape-e:var(--color-green);--fb-shape-d:var(--color-pink)}.ff-sg-type{margin:0 0 var(--sp-2);letter-spacing:var(--track-display);line-height:1.1}.ff-sg-type--display{font-size:var(--fs-display);font-weight:700}.ff-sg-type--h1{font-size:var(--fs-h1);font-weight:700}.ff-sg-type--h2{font-size:var(--fs-h2);font-weight:600}.ff-sg-type--h3{font-size:var(--fs-h3);font-weight:600}.ff-btn.is-hover{border-color:var(--border-strong)}.ff-btn--primary.is-hover{border-color:var(--text);opacity:.85}.is-focus{outline:2px solid var(--focus);outline-offset:2px}.ff-sg-row{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.ff-sg-swatches{gap:var(--sp-2);margin:0 0 var(--sp-6);grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));padding:0;list-style:none;display:grid}.ff-sg-swatch{gap:var(--sp-1);padding:var(--sp-2);border:1px solid var(--border);border-radius:var(--r-m);background:var(--card);font-family:var(--font-mono);font-size:var(--fs-meta);flex-direction:column;display:flex}.ff-sg-swatch__chip{border:1px solid var(--border);border-radius:var(--r-s);height:28px}.ff-sg-swatch__chip--bg{background:var(--bg)}.ff-sg-swatch__chip--card{background:var(--card)}.ff-sg-swatch__chip--text{background:var(--text)}.ff-sg-swatch__chip--muted{background:var(--muted)}.ff-sg-swatch__chip--faint{background:var(--faint)}.ff-sg-swatch__chip--border{background:var(--border)}.ff-sg-swatch__chip--border-strong{background:var(--border-strong)}.ff-sg-swatch__chip--divider{background:var(--divider)}.ff-sg-swatch__chip--hover{background:var(--hover)}.ff-sg-swatch__chip--focus{background:var(--focus)}.ff-sg-swatch__chip--danger{background:var(--danger)}@media (forced-colors:active){.ff-seg__option[aria-checked=true]{color:highlighttext;background:highlight}.ff-btn--primary{color:buttonface;background:buttontext}}@media (pointer:coarse){.ff-seg__option{min-height:44px;padding-inline:var(--sp-4);font-size:var(--fs-small)}.ff-btn,.ff-btn--link{min-height:44px}}
