@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/bricolage-grotesque-latin-700-normal.gtcctNPv.woff2)format("woff2"),url(/_astro/bricolage-grotesque-latin-700-normal.DvJDmrLu.woff)format("woff")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/bricolage-grotesque-latin-800-normal.J50vIsBe.woff2)format("woff2"),url(/_astro/bricolage-grotesque-latin-800-normal.Br4b-5gk.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-sans-latin-400-normal.DRC__1Mx.woff2)format("woff2"),url(/_astro/instrument-sans-latin-400-normal.D1W7dsQl.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/instrument-sans-latin-600-normal.B7fBEWYG.woff2)format("woff2"),url(/_astro/instrument-sans-latin-600-normal.B9e8oLYv.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/instrument-sans-latin-700-normal.CYfAanHo.woff2)format("woff2"),url(/_astro/instrument-sans-latin-700-normal.DfAjL1vF.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-mono-latin-400-normal.4GdczIuU.woff2)format("woff2"),url(/_astro/dm-mono-latin-400-normal.-0xN8mdc.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/dm-mono-latin-500-normal.DRMDZjhP.woff2)format("woff2"),url(/_astro/dm-mono-latin-500-normal.CN8Miw6E.woff)format("woff")}:root{--paper:#f4eee3;--card:#fffdf9;--card-2:#efe7da;--line:#ddd3c4;--line-strong:#8e8375;--ink:#1f1b17;--ink-muted:#6b6258;--ink-faint:#a69b8d;--on-ink:#fffdf9;--amber:#f0aa22;--amber-soft:#fbefc6;--amber-ink:#7a5500;--good:#1c7a42;--good-soft:#dcf0e3;--miss:#b4321f;--miss-soft:#fae2dc;--focus-ring:#1f1b17;--rhythm:#e0702a;--rhythm-soft:#fbe4d4;--rhythm-ink:#9a3e0a;--bass:#2e66d4;--bass-soft:#dce6fa;--bass-ink:#1f4fae;--chords:#2f9a4c;--chords-soft:#d9f1e0;--chords-ink:#1e6e38;--melody:#8253cf;--melody-soft:#e8dff9;--melody-ink:#5b33a8;--voice:#d2457a;--voice-soft:#fbdde8;--voice-ink:#a62a5a;--form:#7a817c;--form-soft:#e7e6e0;--form-ink:#575d59;--sound:#0f918a;--sound-soft:#d3efec;--sound-ink:#0b6b66;--kick:#d9501f;--snare:#b07800;--clap:#c2366f;--hat:#0f8c86;--tom:#9a6a3a;--perc:#b5650e;--part-bass:#2e66d4;--keys:#37944a;--arp:#8253cf;--part-voice:#c93b6e;--correct:var(--good);--shadow-card:0 1px 0 #ddd3c4, 0 8px 18px #3c2d191a;--shadow-lift:0 2px 0 #ddd3c4, 0 18px 36px #3c2d192e;--shadow-hard:3px 3px 0 #8e8375;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-xs:4px;--radius-sm:8px;--radius-md:10px;--radius-lg:16px;--radius-tab:6px;--cell:34px;--cell-gap:4px;--lane:42px;--lane-label:96px;--dot-pitch:16px;--tab:22px;--font-display:"Bricolage Grotesque", "Avenir Next", "Helvetica Neue", Arial, sans-serif;--font-sans:"Instrument Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:"DM Mono", ui-monospace, Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#1a1612;--card:#241e18;--card-2:#2e2720;--line:#3c342b;--line-strong:#8a7e70;--ink:#f3ede2;--ink-muted:#b3a799;--ink-faint:#7a6f63;--on-ink:#1a1612;--amber:#f0b22b;--amber-soft:#3d2f0a;--amber-ink:#f0b22b;--good:#4fcb85;--good-soft:#173426;--miss:#ff7a66;--miss-soft:#42201a;--focus-ring:#f3ede2;--rhythm:#ff9050;--rhythm-soft:#4a2208;--rhythm-ink:#ffb98a;--bass:#6a97ff;--bass-soft:#13264d;--bass-ink:#a9c6ff;--chords:#62c973;--chords-soft:#0f2f1c;--chords-ink:#8fe0ab;--melody:#ad8cff;--melody-soft:#2a1d4f;--melody-ink:#c7b5ff;--voice:#f27aa6;--voice-soft:#4a1a2d;--voice-ink:#ffb3cb;--form:#a3aba5;--form-soft:#2e2a27;--form-ink:#cfc7bd;--sound:#33ccc3;--sound-soft:#0b322f;--sound-ink:#8fe3dd;--kick:#ff6a3f;--snare:#f0b22b;--clap:#f26aa3;--hat:#33ccc3;--tom:#d7a372;--perc:#f2a04e;--part-bass:#6a97ff;--keys:#62c973;--arp:#ad8cff;--part-voice:#f27aa6;--correct:var(--good);--shadow-card:0 1px 0 #3c342b, 0 8px 18px #00000073;--shadow-lift:0 2px 0 #3c342b, 0 18px 36px #0009;--shadow-hard:3px 3px 0 #8a7e70;color-scheme:dark}}:root[data-theme=dark]{--paper:#1a1612;--card:#241e18;--card-2:#2e2720;--line:#3c342b;--line-strong:#8a7e70;--ink:#f3ede2;--ink-muted:#b3a799;--ink-faint:#7a6f63;--on-ink:#1a1612;--amber:#f0b22b;--amber-soft:#3d2f0a;--amber-ink:#f0b22b;--good:#4fcb85;--good-soft:#173426;--miss:#ff7a66;--miss-soft:#42201a;--focus-ring:#f3ede2;--rhythm:#ff9050;--rhythm-soft:#4a2208;--rhythm-ink:#ffb98a;--bass:#6a97ff;--bass-soft:#13264d;--bass-ink:#a9c6ff;--chords:#62c973;--chords-soft:#0f2f1c;--chords-ink:#8fe0ab;--melody:#ad8cff;--melody-soft:#2a1d4f;--melody-ink:#c7b5ff;--voice:#f27aa6;--voice-soft:#4a1a2d;--voice-ink:#ffb3cb;--form:#a3aba5;--form-soft:#2e2a27;--form-ink:#cfc7bd;--sound:#33ccc3;--sound-soft:#0b322f;--sound-ink:#8fe3dd;--kick:#ff6a3f;--snare:#f0b22b;--clap:#f26aa3;--hat:#33ccc3;--tom:#d7a372;--perc:#f2a04e;--part-bass:#6a97ff;--keys:#62c973;--arp:#ad8cff;--part-voice:#f27aa6;--correct:var(--good);--shadow-card:0 1px 0 #3c342b, 0 8px 18px #00000073;--shadow-lift:0 2px 0 #3c342b, 0 18px 36px #0009;--shadow-hard:3px 3px 0 #8a7e70;color-scheme:dark}.display-xl{font-family:var(--font-display);letter-spacing:-.02em;font-size:52px;font-weight:800;line-height:56px}.display{font-family:var(--font-display);letter-spacing:-.015em;font-size:36px;font-weight:800;line-height:40px}.title{font-family:var(--font-display);letter-spacing:-.01em;font-size:26px;font-weight:700;line-height:30px}.heading{font-family:var(--font-display);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:24px}.heading-sm{font-family:var(--font-display);font-size:17px;font-weight:700;line-height:22px}.body-lg{font-family:var(--font-sans);font-size:18px;font-weight:400;line-height:28px}.body{font-family:var(--font-sans);font-size:16px;font-weight:400;line-height:24px}.body-strong{font-family:var(--font-sans);font-size:15px;font-weight:700;line-height:22px}.body-sm{font-family:var(--font-sans);font-size:14px;font-weight:400;line-height:20px}.caption{font-family:var(--font-sans);font-size:12.5px;font-weight:600;line-height:16px}.label{font-family:var(--font-mono);letter-spacing:.12em;font-size:10.5px;font-weight:500;line-height:22px}.tag{font-family:var(--font-mono);letter-spacing:.06em;font-size:10px;font-weight:400;line-height:14px}.count{font-family:var(--font-mono);font-size:10.5px;font-weight:500;line-height:14px}.songtag{font-family:var(--font-mono);letter-spacing:.02em;font-size:11.5px;font-weight:400;line-height:16px}.bpm{font-family:var(--font-mono);font-size:26px;font-weight:500;line-height:30px}.sw-btn:focus-visible,.sw-cell:focus-visible,.sw-card:focus-visible,.sw-chip:focus-visible,.sw-rung:focus-visible,.sw-chapter:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.sw-btn{font-family:var(--font-sans);height:44px;padding:0 var(--space-4);border-radius:var(--radius-sm);border:1.5px solid var(--ink);background:var(--card);color:var(--ink);cursor:pointer;align-items:center;gap:var(--space-2);font-size:15px;font-weight:700;line-height:22px;transition:transform .12s cubic-bezier(.2,0,0,1),box-shadow .12s;display:inline-flex}.sw-btn--primary{background:var(--ink);color:var(--on-ink);box-shadow:var(--shadow-hard);font-family:var(--font-display);font-size:17px}.sw-btn--primary:active{box-shadow:none;transform:translate(2px,2px)}.sw-btn--play{background:var(--ink);width:44px;height:44px;color:var(--on-ink);box-shadow:var(--shadow-hard);justify-content:center;padding:0}.sw-btn--play:active{box-shadow:none;transform:translate(2px,2px)}.sw-btn--sm{height:30px;padding:0 10px 0 8px;font-size:12.5px;line-height:16px}.sw-btn--play.sw-btn--sm{width:30px;box-shadow:none;padding:0}.sw-btn[disabled]{color:var(--ink-faint);border-color:var(--line);background:var(--paper);box-shadow:none;cursor:default}.sw-btn svg{width:16px;height:16px;display:block}.sw-btn--sm svg{width:12px;height:12px}.sw-btn--play svg{width:18px;height:18px}.sw-holes{align-items:center;gap:5px;display:inline-flex}.sw-hole{border:1.5px solid var(--line-strong);background:var(--card);box-sizing:border-box;border-radius:50%;width:11px;height:11px;display:block}.sw-hole--on{background:var(--amber);border-color:var(--ink)}.sw-holes--lg .sw-hole{border-width:2px;width:16px;height:16px}.sw-holes__label{color:var(--ink-muted);margin-left:4px;font-size:12.5px;font-weight:600;line-height:16px}.sw-holes__label b{color:var(--amber-ink)}.sw-card{width:232px;min-height:160px;margin-top:var(--tab);border-radius:var(--radius-xs) var(--radius-xs) var(--radius-md) var(--radius-md);border:1px solid var(--line);background:var(--card);color:var(--ink);box-shadow:var(--shadow-card);text-align:left;font:inherit;cursor:pointer;flex-direction:column;gap:6px;padding:14px 14px 12px;transition:transform .2s cubic-bezier(.2,0,0,1),box-shadow .2s;display:flex;position:relative}.sw-card:hover{transform:translateY(-2px)}.sw-card__tab{left:-1px;top:calc(-1 * var(--tab));height:var(--tab);border-radius:var(--radius-tab) var(--radius-tab) 0 0;background:var(--sw-type-ink,var(--ink));color:var(--on-ink);font-family:var(--font-mono);font-size:10.5px;line-height:var(--tab);letter-spacing:.12em;text-transform:uppercase;padding:0 12px;font-weight:500;position:absolute}.sw-card--style .sw-card__tab{background:var(--ink)}.sw-card--style:before{content:"";background:linear-gradient(90deg, var(--rhythm), var(--bass), var(--chords), var(--melody), var(--voice), var(--sound));height:4px;position:absolute;top:0;left:0;right:0}.sw-card--playing .sw-card__tab{animation:.5s step-end infinite sw-pulse}.sw-card--playing{box-shadow:0 0 0 2px var(--amber), var(--shadow-card)}.sw-card--lifted{box-shadow:var(--shadow-lift);transform:translateY(-4px)rotate(-1.5deg)}.sw-card__name{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700;line-height:24px}.sw-card__plain{color:var(--ink-muted);margin:0;font-size:14px;line-height:20px}.sw-card__own{margin:0;font-size:12.5px;font-weight:600;line-height:16px}.sw-card__mini{grid-template-columns:repeat(16,1fr);gap:2px;margin-top:6px;display:grid}.sw-card__mini i{background:var(--card-2);border-radius:2px;height:7px;display:block}.sw-card__mini i.on{background:var(--sw-type,var(--ink))}.sw-card__foot{justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;display:flex}.sw-card--locked{background:var(--card-2);box-shadow:none;cursor:default;border-style:dashed}.sw-card--locked .sw-card__tab{background:var(--line);color:var(--ink-muted)}.sw-card--locked .sw-card__name{color:var(--ink-faint)}.sw-card--locked:hover{transform:none}.sw-card__lock{width:16px;height:16px;stroke:var(--ink-faint);fill:none}@keyframes sw-pulse{0%{opacity:1}50%{opacity:.6}}.sw-sheet{gap:var(--space-2);padding:14px var(--space-4) var(--space-4);border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);background-image:radial-gradient(var(--line) 1px, transparent 1.2px);background-size:var(--dot-pitch) var(--dot-pitch);background-position:8px 8px;flex-direction:column;display:inline-flex}.sw-count{grid-template-columns:var(--lane-label) repeat(16, var(--cell));column-gap:var(--cell-gap);font-family:var(--font-mono);color:var(--ink-muted);text-align:center;font-size:10.5px;font-weight:500;line-height:14px;display:grid}.sw-count b{color:var(--ink)}.sw-count>span:first-child{grid-column:1}.sw-lane{grid-template-columns:var(--lane-label) repeat(16, var(--cell));column-gap:var(--cell-gap);height:var(--lane);align-items:center;display:grid}.sw-lane__label{min-width:0;padding-right:var(--space-2);flex-direction:column;line-height:1.2;display:flex}.sw-lane__name{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex;overflow:hidden}.sw-lane__name i{background:var(--sw-part,var(--ink));border-radius:50%;flex:none;width:10px;height:10px}.sw-lane__tag{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;padding-left:17px;font-size:10px;line-height:14px}.sw-cell{width:var(--cell);height:var(--cell);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--sw-part,var(--ink)) 12%, transparent);border:1.5px dashed var(--line);cursor:pointer;box-sizing:border-box;padding:0;position:relative}.sw-cell--strong{border-style:solid;border-color:var(--line-strong)}.sw-cell--on{background:var(--sw-part,var(--ink));border:1.5px solid var(--sw-part,var(--ink));box-shadow:inset 0 -3px #0000002e}.sw-cell--soft{background:color-mix(in srgb, var(--sw-part,var(--ink)) 12%, transparent);border:1.5px solid var(--sw-part,var(--ink));box-shadow:none}.sw-cell--soft:before{content:"";background:var(--sw-part,var(--ink));border-radius:50%;position:absolute;inset:30%}.sw-cell--held{background:color-mix(in srgb, var(--sw-part,var(--ink)) 30%, transparent);border-color:#0000}.sw-cell--late{transition:transform .2s cubic-bezier(.2,0,0,1);transform:translate(30%)}.sw-cell--roll2:after,.sw-cell--roll3:after{content:"";background:repeating-linear-gradient(90deg, transparent 0 44%, var(--card) 44% 56%);border-radius:6px;position:absolute;inset:0}.sw-cell--roll3:after{background:repeating-linear-gradient(90deg, transparent 0 27%, var(--card) 27% 36%, transparent 36% 63%, var(--card) 63% 72%)}.sw-cell--now{outline:2px solid var(--ink);outline-offset:2px}.sw-cell--hint{border:2px dashed var(--sw-part,var(--ink))}.sw-lane--off .sw-cell{opacity:.35}.sw-ladder{padding:var(--space-2);border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:3px;display:inline-flex}.sw-rung{cursor:pointer;height:26px;font:inherit;text-align:left;border-radius:var(--radius-xs);background:0 0;border:0;grid-template-columns:30px 72px;align-items:center;gap:6px;padding:0;display:grid}.sw-rung__note{font-family:var(--font-mono);color:var(--ink-muted);text-align:right;font-size:11px;font-weight:500}.sw-rung__bar{border-radius:var(--radius-xs);background:color-mix(in srgb, var(--sw-part,var(--ink)) 18%, transparent);border:1.5px dashed var(--line);box-sizing:border-box;height:20px;transition:background .12s}.sw-rung:hover .sw-rung__bar{background:color-mix(in srgb, var(--sw-part,var(--ink)) 45%, transparent)}.sw-rung--root .sw-rung__bar{background:var(--sw-part,var(--ink));border:1.5px solid var(--sw-part,var(--ink))}.sw-rung--root .sw-rung__note{color:var(--ink);font-weight:700}.sw-rung--active .sw-rung__bar{outline:2px solid var(--ink);outline-offset:1px}.sw-board{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--paper);border:1px solid var(--line);background-image:radial-gradient(var(--line) 1px, transparent 1.2px);background-size:var(--dot-pitch) var(--dot-pitch);display:flex}.sw-slot{width:152px;height:120px;margin-top:var(--tab);border-radius:var(--radius-xs) var(--radius-xs) var(--radius-md) var(--radius-md);background:var(--card-2);border:1.5px dashed var(--line-strong);color:var(--ink-muted);text-align:center;padding:var(--space-3);box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:13px;line-height:18px;display:flex;position:relative}.sw-slot__tab{left:-1.5px;top:calc(-1 * var(--tab));height:var(--tab);border-radius:var(--radius-tab) var(--radius-tab) 0 0;background:var(--sw-type-soft,var(--card-2));color:var(--sw-type-ink,var(--ink-muted));font-family:var(--font-mono);font-size:10.5px;line-height:var(--tab);letter-spacing:.12em;text-transform:uppercase;border:1.5px dashed var(--line-strong);box-sizing:border-box;border-bottom:0;padding:0 10px;font-weight:500;position:absolute}.sw-slot--accept{border-style:solid;border-color:var(--ink);background:var(--sw-type-soft,var(--card-2))}.sw-slot--accept .sw-slot__tab{border-style:solid;border-color:var(--ink)}.sw-slot--filled{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-card);text-align:left;color:var(--ink);justify-content:flex-start;align-items:stretch}.sw-slot--filled .sw-slot__tab{background:var(--sw-type-ink,var(--ink));color:var(--on-ink);border:0;left:-1px}.sw-slot__name{font-family:var(--font-display);font-size:16px;font-weight:700;line-height:20px}.sw-slot__mini{grid-template-columns:repeat(16,1fr);gap:1px;margin-top:auto;display:grid}.sw-slot__mini i{background:var(--card-2);border-radius:1px;height:6px}.sw-slot__mini i.on{background:var(--sw-type,var(--ink))}.sw-chapter{gap:var(--space-4);width:560px;padding:14px var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--card);color:var(--ink);text-align:left;font:inherit;cursor:pointer;grid-template-columns:44px 1fr auto;align-items:center;display:grid}.sw-chapter--current{border:1.5px solid var(--ink);box-shadow:var(--shadow-hard)}.sw-chapter--locked{cursor:default;background:var(--paper);border-style:dashed}.sw-chapter__num{border-radius:var(--radius-sm);width:44px;height:44px;font-family:var(--font-display);background:var(--card-2);color:var(--ink);place-items:center;font-size:19px;font-weight:800;display:grid}.sw-chapter--done .sw-chapter__num{background:var(--amber);color:var(--ink)}.sw-chapter--current .sw-chapter__num{background:var(--ink);color:var(--on-ink)}.sw-chapter--locked .sw-chapter__num{color:var(--ink-faint);border:1.5px dashed var(--line);box-sizing:border-box;background:0 0}.sw-chapter__num svg{stroke:currentColor;fill:none;width:22px;height:22px}.sw-chapter__body{min-width:0;display:block}.sw-chapter__name{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:19px;font-weight:700;line-height:24px}.sw-chapter--locked .sw-chapter__name{color:var(--ink-faint)}.sw-chapter__meta{font-family:var(--font-mono);color:var(--ink-muted);margin:4px 0 0;font-size:11px;line-height:14px}.sw-chapter__bar{background:var(--card-2);border:1px solid var(--line);box-sizing:border-box;border-radius:3px;height:6px;margin-top:8px;display:block;overflow:hidden}.sw-chapter__bar i{background:var(--amber);height:100%;display:block}.sw-chapter__right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.sw-chapter__project{color:var(--ink-muted);font-size:12.5px;font-weight:600;line-height:16px}.sw-chapter__right svg{width:18px;height:18px;stroke:var(--ink-muted);fill:none}.sw-chip{border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--card);height:36px;color:var(--ink);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:0 12px 0 10px;font-size:14px;font-weight:700;line-height:20px;transition:transform .12s cubic-bezier(.2,0,0,1);display:inline-flex}.sw-chip:before{content:"";background:var(--sw-type,var(--line-strong));border-radius:50%;flex:none;width:10px;height:10px}.sw-chip:hover{background:var(--card-2)}.sw-chip--selected{border-color:var(--ink);box-shadow:var(--shadow-hard)}.sw-chip--correct{border-color:var(--good);background:var(--good-soft);color:var(--good)}.sw-chip--miss{border-color:var(--miss);background:var(--miss-soft);color:var(--miss);animation:.2s cubic-bezier(.4,0,1,1) sw-shake}.sw-chip svg{stroke:currentColor;fill:none;width:14px;height:14px}@keyframes sw-shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.sw-card--playing .sw-card__tab,.sw-chip--miss{animation:none}.sw-btn,.sw-card,.sw-cell--late,.sw-chip,.sw-rung__bar{transition:none}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100dvh;margin:0;font-size:16px;line-height:1.5;display:flex}#main{flex:1 0 auto}img,svg{max-width:100%}a{color:var(--ink);text-underline-offset:3px;text-decoration-thickness:1.5px}a:hover{text-decoration-color:var(--amber)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}p{margin:0}h1,h2,h3,h4{text-wrap:balance;margin:0}.skip{z-index:20;background:var(--ink);color:var(--on-ink);border-radius:var(--radius-sm);padding:8px 12px;position:absolute;top:8px;left:-9999px}.skip:focus{left:16px}.wrap{width:100%;max-width:1232px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}@media (width>=720px){.wrap{padding-left:32px;padding-right:32px}}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.site-head{background:var(--card);border-bottom:1px solid var(--line)}.site-head .wrap{align-items:center;gap:12px;height:56px;display:flex}.logo{color:var(--ink);flex:none;align-items:center;display:inline-flex}.logo svg{width:auto;height:22px;display:block}.site-nav{align-self:stretch;display:none}.site-nav ul{gap:26px;height:100%;margin:0;padding:0;list-style:none;display:flex}.site-nav a{height:100%;color:var(--ink-muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;padding-top:2px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.site-nav a:hover{color:var(--ink)}.site-nav a[aria-current]{color:var(--ink);border-bottom-color:var(--amber)}.head-cta{align-items:center;gap:12px;margin-left:auto;display:flex}.head-cta .sw-btn{height:34px;font-family:var(--font-sans);padding:0 14px;font-size:14px}.head-gate{min-width:0;font-family:var(--font-mono);color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:11px;display:none;overflow:hidden}@media (width>=960px){.site-head .wrap{gap:24px;height:72px}.logo svg{height:26px}.site-nav{flex:1;margin-left:12px;display:block}.head-cta{gap:20px}.head-cta .sw-btn{height:38px;box-shadow:2px 2px 0 var(--line-strong);padding:0 16px}.head-gate{font-size:11.5px}.navmenu{display:none}}:root:not([data-auth=in]) body[data-gate] .site-nav,:root:not([data-auth=in]) body[data-gate] .head-cta{display:none}:root:not([data-auth=in]) body[data-gate] .head-gate{display:block}body[data-gate] .site-foot{display:none}.navmenu{position:relative}.navmenu summary{cursor:pointer;border-radius:var(--radius-sm);width:36px;height:36px;color:var(--ink);place-items:center;margin-right:-6px;list-style:none;display:grid}.navmenu summary::-webkit-details-marker{display:none}.navmenu summary svg{width:22px;height:22px}.navmenu__panel{z-index:10;border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);min-width:220px;box-shadow:var(--shadow-lift);flex-direction:column;padding:8px;display:flex;position:absolute;top:calc(100% + 10px);right:0}.navmenu__panel a{border-radius:var(--radius-sm);align-items:center;min-height:44px;padding:0 12px;font-weight:700;text-decoration:none;display:flex}.navmenu__panel a:hover{background:var(--card-2)}.navmenu__panel a[aria-current]{box-shadow:inset 3px 0 0 var(--amber)}.badge--full{background:var(--amber);color:var(--ink);border-color:var(--amber)}.theme{font:inherit;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--card);height:32px;color:var(--ink-muted);cursor:pointer;padding:0 12px;font-size:11px}.theme:hover{background:var(--card-2)}a.sw-btn{text-decoration:none}.sw-btn--primary.sw-btn--sm{box-shadow:none;font-size:14px}.page{flex-direction:column;gap:48px;padding-top:24px;padding-bottom:64px;display:flex}@media (width>=720px){.page{padding-top:32px}}.crumbs{font-family:var(--font-mono);color:var(--ink-muted);font-size:11.5px;line-height:16px}.crumbs ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li:before{content:"›";color:var(--ink-faint);margin-right:6px}.crumbs a{color:var(--ink-muted)}.crumbs [aria-current]{color:var(--ink)}.intro{flex-direction:column;gap:14px;max-width:720px;display:flex}.h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:36px;font-weight:800;line-height:40px}@media (width>=720px){.h1{font-size:52px;line-height:56px}}.h2{font-family:var(--font-display);letter-spacing:-.01em;font-size:26px;font-weight:700;line-height:30px}@media (width>=720px){.h2{letter-spacing:-.015em;font-size:36px;font-weight:800;line-height:40px}}.h3{font-family:var(--font-display);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:24px}.h4{font-family:var(--font-display);font-size:17px;font-weight:700;line-height:22px}.lede{font-size:18px;line-height:28px}.definition{max-width:66ch;font-size:18px;line-height:28px}.muted{color:var(--ink-muted)}.sm{font-size:14px;line-height:20px}.mono{font-family:var(--font-mono);color:var(--ink-muted);font-size:11.5px;line-height:16px}.eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);align-items:center;gap:8px;font-size:10.5px;line-height:14px;display:inline-flex}.eyebrow i{background:var(--sw-type,var(--ink));border-radius:50%;width:9px;height:9px;display:inline-block}.section{flex-direction:column;gap:20px;min-width:0;display:flex}.section__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.section__head p{max-width:62ch}.prose{flex-direction:column;gap:12px;max-width:66ch;display:flex}.prose ul,.prose ol{flex-direction:column;gap:6px;margin:0;padding-left:22px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.cols{flex-wrap:wrap;align-items:flex-start;gap:40px;display:flex}.col-main{flex-direction:column;flex:999 560px;gap:32px;min-width:0;display:flex}.col-side{flex-direction:column;flex:280px;gap:20px;min-width:0;display:flex}@media (width>=960px){.col-side{max-width:360px}}.panel{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:16px;min-width:0;padding:20px;display:flex}@media (width>=720px){.panel{padding:24px 28px}}.panel--quiet{border-style:dashed;border-color:var(--line-strong);background:0 0}.amberbox{border-radius:var(--radius-md);background:var(--amber-soft);border:1px solid var(--line);color:var(--amber-ink);flex-wrap:wrap;align-items:center;gap:16px;padding:20px 24px;display:flex}.amberbox p{flex:280px;font-size:15px;font-weight:700;line-height:22px}.amberbox svg{flex:none;width:22px;height:22px}.hintbox{border-radius:var(--radius-md);border:1.5px dashed var(--line-strong);color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:16px;padding:20px 24px;display:flex}.chipgrey{border-radius:var(--radius-sm);background:var(--card-2);height:30px;color:var(--ink);align-items:center;padding:0 10px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}a.chipgrey:hover{background:var(--line)}a.sw-chip{text-decoration:none}.badge{border-radius:var(--radius-xs);height:20px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--ink-muted);white-space:nowrap;align-items:center;padding:0 7px;font-size:10px;line-height:14px;display:inline-flex}.badge--free{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.badge--preview{border-style:dashed}.updated{font-family:var(--font-mono);color:var(--ink-muted);font-size:11.5px}.player{flex-direction:column;gap:14px;min-width:0;display:flex}.player__bar{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.player__tempo{flex-direction:column;min-width:56px;display:flex}.player__tempo .bpm{font-variant-numeric:tabular-nums}.player__ctl{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.player__ctl input[type=range]{width:120px;accent-color:var(--ink)}.player__ctl output{font-family:var(--font-mono);color:var(--ink-muted);min-width:4ch;font-size:11.5px;font-weight:500}.player__spacer{flex-grow:1}.player__status{font-family:var(--font-mono);color:var(--ink-muted);font-size:11.5px}.scroller{-webkit-overflow-scrolling:touch;max-width:100%;padding-bottom:4px;overflow-x:auto}.player .sw-sheet{width:max-content;display:flex}.sw-lane__label{min-width:0}.sw-lane--guide .sw-cell{opacity:.5}.sw-lane--guide .sw-lane__tag{color:var(--ink-faint)}.sw-lane--lit .sw-lane__label{outline:2px solid var(--ink);outline-offset:2px;border-radius:var(--radius-xs)}.sw-lane--lit .sw-cell--on{box-shadow:0 0 0 2px var(--ink)}.sw-sheet--sm{--cell:22px;--cell-gap:3px;--lane:28px;--lane-label:76px;padding:10px 12px 12px}.sw-sheet--sm .sw-lane__tag{display:none}.sw-sheet--sm .sw-count{font-size:9.5px}.sw-cell[disabled]{cursor:default}@media (width<=719px){.player .sw-sheet:not(.sw-sheet--sm){--cell:30px;--cell-gap:3px;--lane:38px;--lane-label:78px;padding:12px}.sw-lane__label,.sw-count>span:first-child{z-index:1;background:var(--card);justify-content:center;align-self:stretch;position:sticky;left:0}.sw-lane__name{font-size:12.5px}}.barpager{gap:4px;display:inline-flex}.barpager button{font:inherit;font-family:var(--font-mono);letter-spacing:.06em;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--card);height:28px;color:var(--ink);cursor:pointer;padding:0 10px;font-size:11px}.barpager button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.chordstrip{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chordstrip li{border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--card);flex-direction:column;justify-content:center;min-width:72px;height:44px;padding:0 12px;display:inline-flex}.chordstrip li b{font-family:var(--font-display);font-size:16px;line-height:20px}.chordstrip li span{font-family:var(--font-mono);color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;line-height:12px}.chordstrip li.now{border-color:var(--keys);background:var(--chords-soft)}.tracks{flex-wrap:wrap;gap:8px;display:flex}.track{display:inline-flex}.trackpill{border-radius:var(--radius-sm) 0 0 var(--radius-sm);height:36px;font:inherit;cursor:pointer;background:var(--card);color:var(--ink);border:1.5px solid var(--line);align-items:center;gap:8px;padding:0 12px 0 10px;font-size:14px;font-weight:700;line-height:20px;display:inline-flex}.trackpill i{background:var(--sw-part,var(--ink));border-radius:50%;width:10px;height:10px}.trackpill[aria-pressed=false]{color:var(--ink-faint);background:var(--paper);border-style:dashed}.trackpill[aria-pressed=false] i{border:1.5px solid var(--line-strong);background:0 0}.track .solo{font:inherit;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:0 var(--radius-sm) var(--radius-sm) 0;border:1.5px solid var(--line);background:var(--card);height:36px;color:var(--ink-muted);cursor:pointer;border-left:0;padding:0 9px;font-size:10px}.track .solo[aria-pressed=true]{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.sw-btn--play .i-pause{display:none}.sw-btn--play[aria-pressed=true] .i-pause{display:block}.sw-btn--play[aria-pressed=true] .i-play{display:none}.player--small{gap:10px}.player select{font:inherit;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--card);height:32px;color:var(--ink);padding:0 8px;font-size:13px}.facts{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;display:grid}.facts div{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.facts dt{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);font-size:10.5px}.facts dd{margin:0;font-size:15px;font-weight:700;line-height:22px}.facts dd.num{font-family:var(--font-mono);font-size:16px;font-weight:500}table.rules{border-collapse:collapse;width:100%;font-size:14px;line-height:20px}table.rules th,table.rules td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 12px 8px 0}table.rules th{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);font-size:10.5px;font-weight:500}table.rules td:first-child{white-space:nowrap;font-weight:700}table.rules td.mono{color:var(--ink);font-size:12px}.steptext{font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;font-size:12px}audio{width:100%;max-width:420px;height:40px}.cards{flex-wrap:wrap;align-items:stretch;gap:16px;display:flex}a.sw-card{text-decoration:none}.sw-card{max-width:100%}.sw-card__count{font-family:var(--font-mono);color:var(--ink-muted);font-size:10.5px;font-weight:500;line-height:14px}.sw-card__go{width:18px;height:18px;stroke:var(--ink-muted);fill:none}.tiles{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.tile{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);color:var(--ink);flex-direction:column;gap:8px;min-width:0;padding:18px 20px;text-decoration:none;transition:transform .2s cubic-bezier(.2,0,0,1);display:flex}a.tile:hover{transform:translateY(-2px)}.tile b{font-family:var(--font-display);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:24px}.tile p{color:var(--ink-muted);font-size:14px;line-height:20px}.tile .bpm{font-size:20px;line-height:24px}.tile .mini{grid-template-columns:repeat(16,1fr);gap:2px;margin-top:auto;padding-top:6px;display:grid}.tile .mini i{background:var(--card-2);border-radius:2px;height:7px;display:block}.tile .mini i.on{background:var(--sw-type,var(--ink))}.tile--style{position:relative;overflow:hidden}.tile--style:before{content:"";background:linear-gradient(90deg, var(--rhythm), var(--bass), var(--chords), var(--melody), var(--voice), var(--sound));height:4px;position:absolute;top:0;left:0;right:0}.recipe{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.recipe li{border-radius:var(--radius-sm);background:var(--card);border:1.5px solid var(--line);grid-template-columns:10px 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.recipe li>i{background:var(--sw-type);border-radius:50%;width:10px;height:10px}.recipe li[data-lit]{border-color:var(--ink);box-shadow:var(--shadow-hard)}.recipe a{font-weight:700}.recipe p{color:var(--ink-muted);font-size:14px;line-height:20px}.recipe .light{font:inherit;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--card);height:30px;color:var(--ink);cursor:pointer;padding:0 10px;font-size:10.5px}.chips{flex-wrap:wrap;gap:6px;display:flex}.path{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.sw-chapter{width:100%;max-width:640px;text-decoration:none}a.sw-chapter:hover{border-color:var(--line-strong)}.sw-chapter__right .badge{align-self:flex-end}.lessons{counter-reset:l;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lessons li{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:start;gap:14px;padding:14px 16px;scroll-margin-top:16px;display:grid}.lessons li:target{border-color:var(--ink);box-shadow:var(--shadow-hard)}.lessons .n{border-radius:var(--radius-sm);width:36px;height:36px;font-family:var(--font-display);background:var(--card-2);place-items:center;font-size:16px;font-weight:800;display:grid}.lessons .kind{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);font-size:10.5px}.lessons h3{font-family:var(--font-display);font-size:18px;font-weight:700;line-height:22px}.lessons p{color:var(--ink-muted);font-size:14px;line-height:20px}.lessons li.project .n{background:var(--ink);color:var(--on-ink)}.ticks{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ticks li{grid-template-columns:18px 1fr;gap:10px;font-size:15px;line-height:22px;display:grid}.ticks svg{width:18px;height:18px;stroke:var(--ink);fill:none;margin-top:2px}.ticks--good svg{stroke:var(--good)}.plan{border-radius:var(--radius-xs) var(--radius-xs) var(--radius-md) var(--radius-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-card);flex-direction:column;gap:12px;padding:20px 18px 18px;display:flex;position:relative}.plan__tab{left:-1px;top:calc(-1 * var(--tab));height:var(--tab);border-radius:var(--radius-tab) var(--radius-tab) 0 0;background:var(--ink);color:var(--on-ink);font-family:var(--font-sans);font-size:12px;line-height:var(--tab);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;padding:0 12px;font-weight:700;position:absolute}.plan--best{border:1.5px solid var(--ink);box-shadow:var(--shadow-hard)}.plan--best .plan__tab{background:var(--amber);color:var(--ink);left:-1.5px}.plan--founding{background:var(--amber-soft);border:1.5px dashed var(--line-strong)}.plan--founding .plan__tab{background:var(--amber-ink);color:var(--on-ink);left:-1.5px}.plan__name{font-family:var(--font-display);font-size:20px;font-weight:700;line-height:24px}.plan__price{font-family:var(--font-mono);flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:36px;font-weight:500;line-height:40px;display:flex}.plan__price small{font-family:var(--font-sans);color:var(--ink-muted);font-size:14px;line-height:20px}.plan__billed{color:var(--ink);font-size:14px;font-weight:500;line-height:20px}.plan__left{color:var(--ink);align-items:baseline;gap:6px;font-size:15px;font-weight:600;line-height:22px;display:flex}.plan__left strong{font-family:var(--font-mono);font-size:22px;font-weight:700;line-height:22px}.plan__note{color:var(--ink);font-size:14px;line-height:20px}.plan .ticks{flex:1;gap:6px}.plan .ticks li{font-size:14px;line-height:20px}.plan__cta{justify-content:center;height:48px}.plan__cta:not(.sw-btn--primary){height:46px}.plan__terms{color:var(--ink-muted);font-size:13px;line-height:19px}@media (width>=720px){.plan{gap:14px;padding:26px 28px 24px}.plan__name{font-size:22px;line-height:26px}.plan__price{min-height:44px;font-size:40px;line-height:44px}.plan__price small{font-size:15px}.plan__billed{font-size:15px;line-height:22px}.plan__left{font-size:16px}.plan__left strong{font-size:24px}.plan .ticks{gap:8px}.plan .ticks li{font-size:15px;line-height:22px}.plan__cta.sw-btn--primary{font-size:18px}.plan__terms{font-size:13.5px;line-height:20px}}.faq{flex-direction:column;gap:8px;max-width:760px;display:flex}.faq details{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);padding:0 20px}.faq summary{cursor:pointer;min-height:56px;font-family:var(--font-display);justify-content:space-between;align-items:center;gap:12px;font-size:17px;font-weight:700;line-height:22px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--font-mono);color:var(--ink-muted);font-size:18px}.faq details[open] summary:after{content:"–"}.faq details>div{color:var(--ink-muted);max-width:64ch;padding:0 0 18px}.hero{flex-wrap:wrap;align-items:center;gap:32px 40px;display:flex}.hero__text{flex-direction:column;flex:380px;gap:18px;min-width:0;display:flex}.hero__grid{flex:1.6 560px;min-width:0}@media (width>=720px){.hero__grid .sw-sheet{--cell:28px;--cell-gap:3px;--lane-label:88px}}.hero .h1{max-width:15ch}.hero__mark{width:auto;height:40px;color:var(--ink);align-self:flex-start}.hero__cta{flex-direction:column;align-items:stretch;gap:10px;display:flex}.hero__cta .sw-btn{justify-content:center;height:52px;padding:0 22px}.hero__grid{flex-direction:column;gap:12px;padding:14px 14px 16px;display:flex}.hero__grid .chordstrip{display:none}.hero .switcher{gap:6px}.hero .switcher button{gap:8px;height:36px;padding:0 12px;font-size:14px}.swipe-hint{font-family:var(--font-mono);color:var(--ink-faint);font-size:10.5px;line-height:14px}@media (width>=720px){.hero__mark{height:56px}.hero__cta{align-items:flex-start}.hero__cta .sw-btn{height:48px;font-size:18px}.hero__grid{gap:14px;padding:20px 24px 24px}.hero .switcher{gap:8px}.hero .switcher button{gap:10px;height:40px;padding:0 14px;font-size:15px}.swipe-hint{display:none}}.switcher{flex-wrap:wrap;gap:8px;display:flex}.switcher button{border-radius:var(--radius-sm);height:40px;font:inherit;cursor:pointer;background:var(--card);color:var(--ink);border:1.5px solid var(--line);align-items:center;gap:10px;padding:0 14px;font-size:15px;font-weight:700;line-height:22px;display:inline-flex}.switcher button span{font-family:var(--font-mono);color:var(--ink-muted);font-size:12px;font-weight:500}.switcher button[aria-pressed=true]{border-color:var(--ink);box-shadow:var(--shadow-hard)}.minigrid{border-radius:var(--radius-sm);background:var(--paper);border:1px solid var(--line);grid-template-columns:repeat(16,1fr);gap:3px;padding:10px;display:grid}.minigrid i{aspect-ratio:1;border:1px dashed var(--line);background:color-mix(in srgb, var(--sw-part,var(--ink)) 10%, transparent);border-radius:3px;display:block}.minigrid i.on{background:var(--sw-part,var(--ink));border:1px solid var(--sw-part,var(--ink))}.minigrid i.hint{border:1.5px dashed var(--sw-part,var(--ink))}.site-foot{border-top:1px solid var(--line);background:var(--card)}.site-foot .wrap{padding-top:20px;padding-bottom:calc(48px + env(safe-area-inset-bottom,0px));color:var(--ink-muted);flex-direction:column;align-items:flex-start;gap:10px;font-size:13px;display:flex}.site-foot .logo svg{height:20px}.site-foot ul{flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none;display:flex}.site-foot nav a{color:var(--ink-muted)}@media (width>=960px){.site-foot .wrap{flex-flow:wrap;align-items:center;gap:16px 28px;padding-top:28px;padding-bottom:28px;font-size:14px}.site-foot .logo svg{height:22px}.site-foot p{flex:240px;min-width:0}.site-foot nav{flex:100%;order:1}.site-foot ul{gap:6px 20px}}.legal{max-width:70ch}.legal h2{margin-top:12px}.legal table.rules td:first-child{font-family:var(--font-mono);font-size:12.5px;font-weight:500}.answers{flex-direction:column;gap:10px;display:flex}.answer{border-radius:var(--radius-sm);border:1.5px solid var(--line);flex-direction:column;gap:4px;margin:0;padding:8px 10px;display:flex}.answer--right{border-color:var(--good);background:var(--good-soft)}.answer .sw-sheet,.round__after>.scroller .sw-sheet{width:max-content;display:flex}.keep{flex-wrap:wrap;align-items:flex-end;gap:20px;display:flex}.project{flex-direction:column;gap:18px;min-width:0;display:flex}.checks{border-radius:var(--radius-md);border:1.5px dashed var(--line-strong);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.check{color:var(--ink-muted)}.check svg{stroke:var(--ink-faint)}.check.is-ok{color:var(--ink)}.check.is-ok svg{stroke:var(--good)}.toc li.toc__listen:before{content:"L"}.sw-chip[aria-pressed=true]{border-color:var(--ink);box-shadow:var(--shadow-hard)}.page--roomy{gap:40px}@media (width>=720px){.page--roomy{gap:64px}}.panel--strong{border:1.5px solid var(--ink);box-shadow:var(--shadow-hard)}.pricehero{flex-direction:column;gap:12px;display:flex}.pricehero .lede{font-size:16px;line-height:24px}@media (width>=720px){.pricehero{text-align:center;align-items:center;gap:14px}.pricehero .h1{max-width:18ch}.pricehero .lede{max-width:52ch;font-size:18px;line-height:28px}}.plans{flex-direction:column;align-items:center;gap:20px;display:flex}.plans__cards{width:100%;max-width:1040px;padding-top:var(--tab);gap:34px;display:grid}@media (width<=899px){.plans__cards .plan--best{order:-1}}@media (width>=900px){.plans__cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.plans__cards--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}.plans__cards .plan__billed,.plans__cards .plan__left{min-height:44px}}.trialstrip{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:12px;width:100%;max-width:1040px;padding:16px;display:flex}.trialstrip__h{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:10.5px;line-height:14px}.trialstrip ol{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.trialstrip li{flex-direction:column;padding-left:20px;font-size:14px;line-height:20px;display:flex;position:relative}.trialstrip li:before{content:"";background:var(--card);border:2px solid var(--ink);border-radius:50%;width:10px;height:10px;position:absolute;top:5px;left:0}.trialstrip li:first-child:before{background:var(--amber)}.trialstrip li span{color:var(--ink-muted)}@media (width>=900px){.trialstrip{grid-template-columns:auto repeat(3,minmax(0,1fr));align-items:start;gap:0 24px;padding:16px 24px;display:grid}.trialstrip__h{border-right:1px dashed var(--line);align-self:stretch;align-items:center;width:112px;padding-right:16px;display:flex}.trialstrip ol{display:contents}}.plans__foot{width:100%;max-width:1040px;color:var(--ink-muted);font-size:12.5px;line-height:18px}.plans__foot a{color:var(--ink-muted)}@media (width>=720px){.plans__foot{font-size:13px;line-height:19px}}.plans-paid{max-width:640px}.compare{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);overflow:hidden}.compare table{border-collapse:collapse;table-layout:fixed;width:100%}.compare th,.compare td{border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:10px 4px;font-size:13.5px;line-height:19px}.compare thead td{width:auto}.compare thead th{width:54px;font-weight:400}.compare thead th:last-child,.compare tbody td:last-child{width:62px;padding-right:14px}.compare tbody th{text-align:left;padding-left:14px;font-weight:600}.compare tbody tr:last-child th,.compare tbody tr:last-child td{border-bottom:0}.compare thead .eyebrow,.compare thead b{display:none}.compare thead .compare__short{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:9.5px;line-height:12px}.compare thead .is-full .compare__short{color:var(--amber-ink)}.compare td{font-family:var(--font-mono);color:var(--ink)}.compare .is-yes{color:var(--good)}.compare .is-no{color:var(--ink-faint)}.compare__long{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.compare__acts{display:none}@media (width>=720px){.compare th,.compare td{text-align:left;padding:12px 8px;font-size:15px;line-height:22px}.compare thead td,.compare tbody th{width:34%;padding-left:24px}.compare thead th,.compare thead th:last-child,.compare tbody td:last-child{width:auto;padding-right:24px}.compare thead th{vertical-align:bottom;padding-top:16px;padding-bottom:16px}.compare thead .eyebrow{display:flex}.compare thead .is-full .eyebrow{color:var(--amber-ink)}.compare thead b{font-family:var(--font-display);font-size:18px;line-height:22px;display:block}.compare thead .compare__short,.compare tbody .compare__short{display:none}.compare__long{clip:auto;white-space:normal;width:auto;height:auto;position:static;overflow:visible}.compare td{font-family:var(--font-sans)}.compare tbody tr:last-child th,.compare tbody tr:last-child td{border-bottom:1px solid var(--line)}.compare__acts{background:var(--paper);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px 24px 16px calc(34% + 8px);display:grid}.compare__acts .sw-btn{justify-content:center;height:40px;font-size:14px}}.promise{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.promise li{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:3px;padding:14px;display:flex}.promise b{font-family:var(--font-display);font-size:16px;line-height:20px}.promise span{color:var(--ink-muted);font-size:13px;line-height:18px}@media (width>=900px){.promise{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.promise li{gap:4px;padding:16px 18px}.promise b{font-size:18px;line-height:22px}.promise span{font-size:14px;line-height:20px}}.stickybar{z-index:15;padding:10px max(16px, env(safe-area-inset-left,0px)) calc(10px + env(safe-area-inset-bottom,0px));background:var(--card);border-top:1px solid var(--line);box-shadow:var(--shadow-lift);justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=720px){.stickybar{display:none!important}}.funnel{border-radius:var(--radius-md);background:var(--ink);color:var(--on-ink);flex-direction:column;gap:14px;padding:20px 22px;display:flex}.funnel__text{flex-direction:column;gap:6px;display:flex}.funnel__h{font-family:var(--font-display);letter-spacing:-.015em;font-size:22px;font-weight:800;line-height:26px}.funnel__text p:not(.funnel__h){color:color-mix(in srgb, var(--on-ink) 80%, var(--ink));font-size:14px;line-height:20px}.funnel .band__btn{font-size:16px}@media (width>=960px){.col-side--sticky{position:sticky;top:16px}.only-narrow{display:none}}.funnelbar__text{flex-direction:column;min-width:0;line-height:18px;display:flex}.funnelbar__text b{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.funnelbar__text span{color:var(--ink-muted);font-size:12.5px}.funnelbar .sw-btn{flex:none}@media (width<=719.98px){body:has(.funnelbar:not([hidden])) .site-foot .wrap{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}}.warn{border-radius:var(--radius-sm);background:var(--miss-soft);color:var(--miss);padding:10px 12px;font-size:14px;font-weight:700;line-height:20px}:root[data-auth=in] .if-out,:root[data-auth=in] [data-locked],:root:not([data-auth=in]) .if-in,:root[data-plan=paid] .if-unpaid,:root:not([data-plan=paid]) .if-paid{display:none!important}.badge__icon{width:11px;height:11px;margin-right:4px}.signin{color:var(--ink-muted);white-space:nowrap;font-size:15px;font-weight:600;text-decoration:none}.signin:hover{color:var(--ink)}@media (width<=959px){.signin{display:none}}.usermenu{position:relative}.usermenu summary{cursor:pointer;border-radius:50%;list-style:none}.usermenu summary::-webkit-details-marker{display:none}.avatar{background:var(--amber);width:32px;height:32px;color:var(--ink);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:15px;font-weight:800;display:grid}.usermenu__panel{z-index:10;border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);min-width:220px;box-shadow:var(--shadow-lift);flex-direction:column;gap:10px;padding:14px 16px;font-size:14px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.usermenu__panel button,.linkbtn{font:inherit;color:var(--ink);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline 1.5px}.linkbtn{color:var(--ink-muted);font-weight:400}.band{border-radius:var(--radius-md);background:var(--ink);color:var(--on-ink);flex-direction:column;gap:14px;padding:24px 20px;display:flex}.band__text{flex-direction:column;gap:6px;max-width:56ch;display:flex}.band__h{font-family:var(--font-display);letter-spacing:-.015em;font-size:24px;font-weight:800;line-height:28px}.band__text p:not(.band__h){color:color-mix(in srgb, var(--on-ink) 80%, var(--ink));font-size:15px;line-height:22px}.band__btn{border-color:var(--on-ink);background:var(--on-ink);height:48px;color:var(--ink);font-family:var(--font-display);box-shadow:var(--shadow-hard);justify-content:center;font-size:17px}.band__btn:active{box-shadow:none;transform:translate(2px,2px)}@media (width>=720px){.band{flex-direction:row;justify-content:space-between;align-items:center;gap:32px;padding:36px 40px}.band__h{font-size:30px;line-height:34px}.band__text p:not(.band__h){font-size:16px;line-height:24px}.band__btn{flex:none;padding:0 22px;font-size:18px}}.gbtn{gap:10px;padding-left:7px}.gbtn__g{border-radius:var(--radius-xs);background:#fff;place-items:center;width:30px;height:30px;display:grid}.sw-btn .gbtn__g svg{width:18px;height:18px}a.sw-card--locked{cursor:pointer;text-decoration:none}.sw-card--locked .sw-card__plain{color:var(--ink-muted)}a.sw-card--locked:hover{border-color:var(--line-strong)}.lsteps{flex-direction:column;gap:20px;margin:0;padding:0;list-style:none;display:flex}.lstep{border-radius:var(--radius-md);background:var(--card);border:1.5px solid var(--line);flex-direction:column;gap:12px;min-width:0;padding:16px;scroll-margin-top:16px;display:flex}@media (width>=720px){.lstep{gap:14px;padding:22px 28px}}.lesson.is-live .lstep.is-current{border-color:var(--ink);box-shadow:var(--shadow-hard)}.lstep__head{align-items:center;gap:10px;display:flex}.lstep__h{font-family:var(--font-display);letter-spacing:-.01em;flex:1;font-size:18px;font-weight:700;line-height:22px}.lstep__h:focus{outline:none}@media (width>=720px){.lstep__head{gap:12px}.lstep__h{font-size:22px;line-height:26px}}.lstep__n,.lessons .n{border-radius:var(--radius-sm);width:36px;height:36px;font-family:var(--font-display);background:var(--card-2);flex:none;place-items:center;font-size:16px;font-weight:800;display:grid}.lstep__n--done{background:var(--amber)}.lstep__n--done svg{display:block!important}.lstep__n svg,.lessons .n svg{width:20px;height:20px;display:none}.lstep.is-done .lstep__n,.lessons li.is-done .n{background:var(--amber)}.lstep.is-done .lstep__n span,.lessons li.is-done .n span{display:none}.lstep.is-done .lstep__n svg,.lessons li.is-done .n svg{display:block}.lstep__done{color:var(--ink);display:none}.lstep.is-done .lstep__done{display:inline}.lstep__text{max-width:66ch;font-size:14.5px;line-height:21px}@media (width>=720px){.lstep__text{font-size:16px;line-height:24px}}.lstep__status{font-family:var(--font-mono);color:var(--ink-muted);min-height:16px;font-size:11px;line-height:16px}@media (width>=720px){.lstep__status{font-size:11.5px}}.lstep.is-done .lstep__status{color:var(--good)}.lstep__status.is-nudged{color:var(--ink);animation:.36s cubic-bezier(.2,0,0,1) nudge}@keyframes nudge{0%,to{transform:none}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.lpic{margin:0}.lpic .sw-sheet{width:max-content;display:flex}.loopdia{flex-direction:column;gap:6px;max-width:560px;display:flex}.loopdia__bars,.loopdia__row{grid-template-columns:64px repeat(4,minmax(0,1fr));align-items:center;gap:4px;display:grid}.loopdia__bars b{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:10.5px;font-weight:500}.loopdia__row>span{font-size:13px;font-weight:700}.loopdia__row i{border-radius:var(--radius-xs);background:color-mix(in srgb, var(--sw-part) 70%, var(--card));height:32px;color:var(--ink);font-style:normal;font-family:var(--font-mono);white-space:nowrap;align-items:center;padding:0 8px;font-size:11px;display:flex;overflow:hidden}.loopdia__row i.again{background:color-mix(in srgb, var(--sw-part) 16%, transparent);border:1.5px dashed var(--sw-part);color:var(--ink-muted)}.kitpads{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.kitpad{border-radius:var(--radius-md);border:1.5px solid var(--line);background:var(--paper);height:52px;color:var(--ink);font:inherit;cursor:pointer;text-align:left;align-items:center;gap:10px;padding:0 14px;font-size:14.5px;font-weight:700;display:flex}.kitpad i{border:2px solid var(--sw-part);border-radius:50%;flex:none;width:14px;height:14px}.kitpad.is-heard{border-color:var(--sw-part);background:color-mix(in srgb, var(--sw-part) 10%, var(--card))}.kitpad.is-heard i{background:var(--sw-part)}@media (width>=720px){.kitpads{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.kitpad{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:16px;height:84px;padding:12px 14px;font-size:15px}}.kitpad.is-hit{animation:.24s cubic-bezier(.2,0,0,1) pad-hit}@keyframes pad-hit{0%{background:color-mix(in srgb, var(--sw-part) 20%, var(--paper));transform:scale(.96)}to{transform:none}}.zones{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.zones li{border-radius:var(--radius-sm);border:1.5px dashed var(--line-strong);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.zones li.is-heard{border-style:solid;border-color:var(--line);background:var(--card-2)}.zones li.is-now{border:1.5px solid var(--ink);box-shadow:var(--shadow-hard)}.clips{flex-direction:column;gap:14px;display:flex}.clips--pair{flex-flow:wrap}.clips--pair .ruler{flex:220px}.clip{align-items:center;gap:14px;display:flex}.clip__body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.ruler{flex-direction:column;gap:4px;min-width:0;max-width:520px;margin:0;display:flex}.ruler__track{border-bottom:1.5px solid var(--line-strong);height:34px;position:relative}.ruler__track i{background:var(--ink-faint);border-radius:1px;width:2px;height:10px;position:absolute;bottom:0}.ruler__track i.beat{background:var(--ink);width:3px;height:30px}.ruler--right .ruler__track i.beat{background:var(--good)}.rounds{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.round{border-top:1px dashed var(--line-strong);flex-direction:column;gap:12px;padding-top:16px;display:flex}.round:first-child{border-top:0;padding-top:0}.round__after{flex-direction:column;gap:10px;display:flex}.clipbtn .i-pause{display:none}.clipbtn[aria-pressed=true] .i-pause{display:block}.clipbtn[aria-pressed=true] .i-play{display:none}.sw-chip[disabled]{cursor:default}.toc{counter-reset:toc;flex-direction:column;gap:6px;margin:0;padding:0;font-size:15px;line-height:22px;list-style:none;display:flex}.toc li{counter-increment:toc;grid-template-columns:22px 1fr;align-items:baseline;gap:6px;display:grid}.toc li:before{content:counter(toc);font-family:var(--font-mono);color:var(--ink-muted);font-size:11.5px}.toc li.is-done:before{content:"✓";color:var(--good);font-weight:700}.toc li.toc__project:before{content:"P"}.toc [aria-current]{font-weight:700}.lessonpage{flex-direction:column;display:flex}.lbar{background:var(--card);border-bottom:1px solid var(--line)}.lbar__in{align-items:center;gap:12px;height:44px;display:flex}.lbar__crumbs{display:none}.lbar__short{font-family:var(--font-mono);color:var(--ink-muted);white-space:nowrap;font-size:11px;text-decoration:none}.ldots{align-items:center;gap:6px;margin:0 0 0 auto;padding:0;list-style:none;display:flex}.ldot{font:inherit;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px 0;font-size:13px;font-weight:600;line-height:16px;display:inline-flex}.ldot i{border:2px solid var(--line-strong);background:var(--card);border-radius:50%;width:10px;height:10px}.ldot.is-done i{background:var(--amber);border-color:var(--ink)}.ldot.is-current i{background:var(--ink);border-color:var(--ink)}.ldot.is-current{color:var(--ink)}.ldot[disabled]{cursor:default}.ldot span{display:none}.lbar__saved{font-family:var(--font-mono);color:var(--good);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.lbar__saved svg{width:14px;height:14px}.lbar__long{display:none}.lesson__body{gap:40px;padding-top:16px;padding-bottom:24px;display:flex}.lesson__main{flex-direction:column;flex:auto;gap:12px;min-width:0;display:flex}.lesson__head,.lesson__title{flex-direction:column;gap:4px;display:flex}.lesson__where{display:none}.lesson__h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:30px;font-weight:800;line-height:34px}.lesson__outcome,.lesson.is-live .lsteps>.lstep:not(.is-current),.lesson:not(.is-live) .lend{display:none}.lend__body{flex-direction:column;flex:1;justify-content:center;gap:12px;display:flex}.lend__pips{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:5px;font-size:13px;font-weight:600;display:flex}.lend__pips span{gap:5px;margin-right:6px;display:inline-flex}.lend__pips i{border:2px solid var(--ink);background:var(--amber);border-radius:50%;width:16px;height:16px}.lnav{align-items:center;gap:10px;display:flex}.lnav__back{justify-content:center;width:48px;height:48px;padding:0}.lnav__back svg{width:18px;height:18px}.lnav__back span,.lnav__count{display:none}.lnav__next{flex:1;justify-content:center;gap:10px;height:48px;padding:0 16px}.lnav__next svg{width:18px;height:18px}.lnav__next.is-waiting{opacity:.4;box-shadow:none}.lnav__next.is-waiting:active{transform:none}.lrail{display:none}@media (width>=960px){.lbar__in{gap:16px;height:48px}.lbar__crumbs{display:block}.lbar__short{display:none}.ldots{gap:16px;margin:0 auto}.ldot span{display:inline}.lbar__saved{border-radius:var(--radius-sm);background:var(--good-soft);height:28px;font-family:var(--font-sans);padding:0 10px;font-size:13px;font-weight:700}.lbar__long{display:inline}.lbar__brief{display:none}.lesson__body{padding-top:26px}.lesson__main{gap:16px}.lesson__head{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:24px}.lesson__where{display:inline}.lesson__h1{font-size:40px;line-height:44px}.lesson__outcome{text-align:right;max-width:40ch;color:var(--ink-muted);font-size:15px;line-height:22px;display:block}.lnav{gap:12px}.lnav__back{width:auto;height:44px;padding:0 16px}.lnav__back span,.lnav__count{display:inline}.lnav__count{margin-left:auto}.lnav__next{flex:none;padding:0 20px}.lrail{flex-direction:column;flex:0 0 300px;gap:10px;min-height:0;display:flex}}.lrail__head{align-items:center;gap:12px;display:flex}.lrail__head .eyebrow{white-space:nowrap;text-decoration:none}.lrail__bar{background:var(--card-2);border-radius:4px;flex:1;height:8px;position:relative;overflow:hidden}.lrail__bar i{transform-origin:0;transform:scaleX(var(--p));background:var(--amber);transition:transform .3s cubic-bezier(.2,0,0,1);position:absolute;inset:0}.lrail__list{flex-direction:column;gap:3px;margin:0;padding:0;font-size:14px;line-height:20px;list-style:none;display:flex}.lrail__item{border-radius:var(--radius-sm);min-height:34px;color:var(--ink);border:1px solid #0000;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;text-decoration:none;display:grid}a.lrail__item:hover{background:var(--card)}.lrail__item[aria-current]{background:var(--card);border:1.5px solid var(--ink);font-weight:700}.lrail__n{font-family:var(--font-mono);color:var(--ink-muted);font-size:11px}.lrail__n svg{width:14px;height:14px;color:var(--good);display:none}.lrail__list li.is-done .lrail__n span{display:none}.lrail__list li.is-done .lrail__n svg{display:block}.lrail__name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lrail__kind{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:10px}@media (height>=560px){:root[data-auth=in] body[data-gate]{flex-direction:column;height:100dvh;display:flex}:root[data-auth=in] body[data-gate] .site-head{flex:none}:root[data-auth=in] body[data-gate] .lessonpage{flex:1;min-height:0}.lesson{flex-direction:column;flex:1;min-height:0;display:flex}.lesson__body,.lesson.is-live .lsteps{flex:1;min-height:0}.lesson.is-live .lstep.is-current{flex:1;min-height:0;overflow-y:auto}.lesson.is-live .lstep.is-current .kitpads{margin:auto 0}.lrail{overflow-y:auto}}.gatewrap{padding-top:28px;padding-bottom:48px}.gate{flex-direction:column;gap:18px;min-height:calc(100dvh - 133px);display:flex}.gate__text,.gate__acts{display:contents}.gate .h1{font-size:34px;line-height:38px}.gate .lede{font-size:16px;line-height:24px}.gate .ticks li{font-size:14.5px;line-height:21px}.eyebrow--amber{color:var(--amber-ink)}.eyebrow--amber i{background:var(--amber);border:1.5px solid var(--ink)}.gate__google{order:1;justify-content:center;height:54px;padding:0 20px 0 10px;font-size:18px}.gate__opens{flex-direction:column;order:2;gap:8px;margin-top:auto;display:flex}.gate__back{color:var(--ink-muted);order:3}.opens{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.opens--this{border:1.5px solid var(--ink);box-shadow:var(--shadow-hard)}.opens:not(.opens--this),.opens__more--wide{display:none}.opens__n{border-radius:var(--radius-sm);width:36px;height:36px;font-family:var(--font-display);background:var(--card-2);place-items:center;font-size:16px;font-weight:800;display:grid}.opens--this .opens__n{background:var(--ink);color:var(--on-ink)}.opens__body{flex-direction:column;gap:2px;display:flex}.opens__body b{font-family:var(--font-display);font-size:17px;line-height:21px}.opens__body span{color:var(--ink-muted);font-size:13.5px;line-height:19px}@media (width>=960px){.gatewrap{padding-top:72px;padding-bottom:96px}.gate{flex-direction:row;align-items:center;gap:64px;max-width:1100px;min-height:0;margin:0 auto}.gate__text{flex-direction:column;flex:520px;gap:22px;min-width:0;display:flex}.gate .h1{max-width:15ch;font-size:52px;line-height:56px}.gate .lede{max-width:46ch;font-size:18px;line-height:28px}.gate .ticks li{font-size:15px;line-height:22px}.gate__acts{flex-direction:column;align-items:flex-start;gap:14px;padding-top:6px;display:flex}.gate__google{height:52px;padding:0 24px 0 9px}.gate__opens{flex:0 0 400px;gap:12px;margin-top:0}.opens{gap:14px;padding:14px 16px}.opens:not(.opens--this),.opens__more--wide{display:grid}.opens__more--wide{display:block}.opens__more--narrow{display:none}.opens__body b{font-size:18px;line-height:22px}.opens__body span{font-size:14px;line-height:20px}}.promises{gap:12px;display:grid}.promise3{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:8px;min-width:0;padding:20px;display:flex}.promise3__h{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:26px}.promise3 p{color:var(--ink-muted);font-size:14.5px;line-height:21px}.promise3__pic{display:none}.ladder{flex-wrap:wrap;align-items:center;gap:6px 4px}.ladder i{width:30px;height:30px;font-style:normal;font-family:var(--font-display);background:var(--card-2);border-radius:6px;place-items:center;font-size:13px;font-weight:800;display:grid}.ladder i.is-free{background:var(--amber);border:1.5px solid var(--ink)}.ladder span{font-family:var(--font-mono);color:var(--ink-muted);margin-left:6px;font-size:11px}@media (width>=900px){.promises{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.promise3{gap:12px;padding:28px}.promise3__h{letter-spacing:-.01em;font-size:26px;line-height:30px}.promise3 p{font-size:15px;line-height:22px}.promise3__pic{display:flex}.promise3 .minigrid.promise3__pic{display:grid}}.access{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13.5px;line-height:19px;display:flex}.section__head .access{max-width:72ch}.access__dot{color:var(--ink-faint)}@media (width>=720px){.access{font-size:14px;line-height:20px}}.units{gap:6px;margin:0;padding:0;list-style:none;display:grid}.unitrow{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);height:100%;color:var(--ink);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}a.unitrow:hover{border-color:var(--line-strong)}.unitrow--free,a.unitrow--free:hover{border:1.5px solid var(--ink)}.unitrow__n{border-radius:var(--radius-sm);width:40px;height:40px;font-family:var(--font-display);background:var(--card-2);place-items:center;font-size:17px;font-weight:800;display:grid}.unitrow--free .unitrow__n{background:var(--ink);color:var(--on-ink)}.unitrow__body{flex-direction:column;min-width:0;display:flex}.unitrow__name{font-family:var(--font-display);font-size:17px;font-weight:700;line-height:22px}.unitrow__meta{font-family:var(--font-mono);color:var(--ink-muted);margin-top:2px;font-size:10.5px;line-height:14px}.unitrow__goal,.unitrow__project{display:none}@media (width>=720px){.unitrow{grid-template-columns:44px minmax(0,1fr) auto;gap:14px;padding:14px 16px}.unitrow--free{box-shadow:var(--shadow-hard)}.unitrow__n{width:44px;height:44px;font-size:19px}.unitrow__name{letter-spacing:-.01em;font-size:19px;line-height:24px}.unitrow__meta{margin-top:4px;font-size:11px}}@media (width>=960px){.units--grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.units--wide .unitrow{grid-template-columns:44px 180px minmax(0,1fr) 220px auto;gap:16px;padding:12px 16px}.units--wide .unitrow--free{box-shadow:none}.units--wide .unitrow__body{display:contents}.units--wide .unitrow__goal{color:var(--ink-muted);font-size:14px;line-height:20px;display:block}.units--wide .unitrow__meta{margin-top:0}.units--wide .unitrow__project{display:inline}}.cards--row{scroll-snap-type:x mandatory;scrollbar-width:none;flex-wrap:nowrap;margin-right:-16px;padding:0 16px 20px 0;overflow-x:auto}.cards--row::-webkit-scrollbar{display:none}.cards--row .sw-card{scroll-snap-align:start;flex:none;width:220px}@media (width>=720px){.cards--row{flex-wrap:wrap;margin-right:0;padding:0;overflow:visible}.cards--row .sw-card{width:232px}}.unlock{flex-direction:column;gap:16px;display:flex}.unlock__intro{flex-direction:column;gap:12px;display:flex}.unlock__intro .lede{font-size:15px;line-height:22px}.unitpath{gap:4px;margin:0;padding:0;list-style:none;display:flex}.unitpath li{flex:1;min-width:0}.unitpath__sq{color:var(--ink-faint);flex-direction:column;gap:6px;text-decoration:none;display:flex}.unitpath__sq b{height:36px;font-family:var(--font-display);border:1.5px dashed var(--line);border-radius:7px;place-items:center;font-size:15px;font-weight:800;display:grid}.unitpath__sq span{font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;line-height:14px;display:none;overflow:hidden}a.unitpath__sq:hover b{border-color:var(--line-strong)}.unitpath--open .unitpath__sq b{background:var(--card);border:1.5px solid var(--line-strong);color:var(--ink)}.unitpath__sq.is-free,.unitpath__sq.is-here{color:var(--ink)}.unitpath__sq.is-free b{background:var(--amber);border:1.5px solid var(--ink);color:var(--ink)}.unitpath__sq.is-here b{background:var(--ink);border:1.5px solid var(--ink);color:var(--on-ink)}.unlock__progress{color:var(--ink);align-items:center;gap:10px;font-size:15px;font-weight:700;line-height:22px;display:flex}.unlock__progress i{background:var(--amber);border:1.5px solid var(--ink);border-radius:50%;flex:none;width:10px;height:10px}.unlockcard{padding-top:var(--tab);flex-direction:column;gap:16px;display:flex}.unlockcard__founding{margin-top:var(--tab);gap:10px}.unlockcard__founding .plan__cta{margin-top:4px}.unlockcard__more{color:var(--ink-muted);text-align:center;font-size:14px;line-height:20px}.unlock__lessons{order:1}.unlock__lessons>summary{cursor:pointer;border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);min-height:52px;font-family:var(--font-display);justify-content:space-between;align-items:center;gap:12px;padding:0 16px;font-size:15.5px;font-weight:700;line-height:20px;list-style:none;display:flex}.unlock__lessons>summary::-webkit-details-marker{display:none}.unlock__lessons>summary:after{content:"+";font-family:var(--font-mono);color:var(--ink-muted);font-size:18px}.unlock__lessons[open]>summary{margin-bottom:8px}.unlock__lessons[open]>summary:after{content:"–"}@media (width>=960px){.unlock{grid-template:"intro side""path side""list side"1fr/minmax(0,1fr) 400px;align-items:start;gap:28px 48px;display:grid}.unlock__intro{grid-area:intro;gap:14px}.unlock__intro .lede{max-width:60ch;font-size:18px;line-height:28px}.unitpath{grid-area:path;gap:6px}.unitpath__sq b{border-radius:var(--radius-sm);width:40px;height:40px;font-size:17px}.unitpath__sq span{display:block}.unlock__lessons{grid-area:list}.unlock__lessons>summary{display:none}.unlock__progress{font-size:16px}.unlockcard,.unlock__paid{grid-area:side}.unlockcard__more{text-align:left}}.welcome{flex-direction:column;gap:18px;min-height:calc(100dvh - 176px);display:flex}.welcome__text,.welcome__plan{display:contents}.eyebrow--good{color:var(--good)}.eyebrow--good svg{width:16px;height:16px}.welcome__path{order:1}.welcome__acts{flex-direction:column;order:2;gap:10px;display:flex}.welcome__acts .sw-btn{justify-content:center;height:52px}.welcome__box{order:3;gap:4px;margin-top:auto;padding:16px 18px}.welcome__billing{margin-top:4px;font-weight:700}@media (width>=960px){.welcome{flex-direction:row;align-items:center;gap:64px;max-width:1100px;min-height:0;margin:0 auto;padding:40px 0}.welcome__text{flex-direction:column;flex:520px;gap:22px;min-width:0;display:flex}.welcome .h1{max-width:15ch}.welcome .lede{max-width:46ch}.welcome__acts{align-items:flex-start;gap:14px;padding-top:6px}.welcome__acts .sw-btn{padding:0 24px;font-size:18px}.welcome__plan{flex-direction:column;flex:0 0 400px;gap:16px;display:flex}.welcome__path .unitpath__sq b{width:36px;height:36px;font-size:15px}.welcome__box{margin-top:0;padding:18px 20px}}@media (prefers-reduced-motion:reduce){a.tile:hover{transform:none}.kitpad.is-hit,.lstep__status.is-nudged{animation:none}.lrail__bar i{transition:none}}a.ccard{text-decoration:none}.ccard__lock{align-items:center;gap:4px;display:none}.ccard__lock svg{width:12px;height:12px;stroke:var(--ink-muted);fill:none}.ccard.is-locked{background:var(--card-2);box-shadow:none;border-style:dashed}.ccard.is-locked .sw-card__tab{background:var(--line);color:var(--ink-muted)}.ccard.is-locked .sw-card__name{color:var(--ink-muted)}.ccard.is-locked .sw-card__mini i.on{background:var(--line-strong)}.ccard.is-locked .ccard__holes{display:none}.ccard.is-locked .ccard__lock{display:inline-flex}.learnwhat__p{max-width:70ch}.collection{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:28px 16px;margin:0;padding:0;list-style:none;display:grid}.collection li{flex-direction:column;gap:10px;min-width:0;display:flex}.collection .sw-card{width:100%}.collection .sw-btn svg{fill:currentColor;width:16px;height:16px}.coming{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.coming a{border-radius:var(--radius-sm);border:1.5px dashed var(--line-strong);color:var(--ink);grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}.coming a:hover{background:var(--card)}.coming__n{border-radius:var(--radius-sm);width:32px;height:32px;font-family:var(--font-display);background:var(--card-2);place-items:center;font-size:14px;font-weight:800;display:grid}.coming__body{flex-direction:column;gap:2px;min-width:0;display:flex}.coming__lock{width:18px;height:18px;stroke:var(--ink-muted);fill:none}.newcard{border-radius:var(--radius-md);background:var(--paper);border:1.5px dashed var(--line-strong);flex-wrap:wrap;align-items:center;gap:20px 28px;padding:18px 16px;display:flex}.newcard__card{flex:none;width:232px;max-width:100%;position:relative}.newcard__glow{background:radial-gradient(closest-side, color-mix(in srgb, var(--amber) 60%, transparent), transparent 70%);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-24px}.newcard__sw{cursor:default;width:100%;position:relative}.newcard__sw:hover{transform:translateY(-4px)rotate(-1.5deg)}.newcard__text{flex-direction:column;flex:240px;gap:10px;display:flex}.newcard.is-new .newcard__sw{animation:.9s cubic-bezier(.2,.9,.3,1.15) both unlock-in}.newcard.is-new .newcard__glow{animation:1.5s ease-out both unlock-glow}.newcard.is-new .newcard__text{animation:.6s cubic-bezier(.2,0,0,1) .45s both unlock-text}.newcard.is-new .sw-hole--on{animation:.42s cubic-bezier(.2,0,0,1) .9s both hole-punch}@keyframes unlock-in{0%{opacity:0;transform:translateY(48px)rotate(-10deg)scale(.5)}55%{opacity:1}to{opacity:1;transform:translateY(-4px)rotate(-1.5deg)scale(1)}}@keyframes unlock-glow{0%{opacity:0;transform:scale(.3)}35%{opacity:1}to{opacity:0;transform:scale(1.5)}}@keyframes unlock-text{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@keyframes hole-punch{0%{transform:scale(1)}50%{transform:scale(1.9)}to{transform:scale(1)}}.deck{border-radius:var(--radius-sm);border:1.5px dashed var(--line-strong);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.deck__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.sw-chip.is-stamped{animation:.32s cubic-bezier(.2,0,0,1) chip-stamp}@keyframes chip-stamp{0%{transform:scale(1)}40%{background:var(--rhythm-soft);transform:scale(.94)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.newcard.is-new .newcard__sw,.newcard.is-new .newcard__glow,.newcard.is-new .newcard__text,.newcard.is-new .sw-hole--on,.sw-chip.is-stamped{animation:none}}
