@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/baloo-2-latin-700-normal.CqTg7A15.woff2)format("woff2"),url(/_astro/baloo-2-latin-700-normal.Ld3Zm3l2.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/baloo-2-latin-800-normal.BbF3Etk1.woff2)format("woff2"),url(/_astro/baloo-2-latin-800-normal.B8BXfZF7.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-latin-400-normal.C38fXH4l.woff2)format("woff2"),url(/_astro/inter-latin-400-normal.CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-latin-500-normal.Cerq10X2.woff2)format("woff2"),url(/_astro/inter-latin-500-normal.BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/inter-latin-600-normal.LgqL8muc.woff2)format("woff2"),url(/_astro/inter-latin-600-normal.CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-latin-700-normal.Yt3aPRUw.woff2)format("woff2"),url(/_astro/inter-latin-700-normal.BLAVimhd.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-500-normal.CJOVTJB7.woff)format("woff")}:root{--font-display:"Baloo 2", "Fredoka", system-ui, sans-serif;--font-ui:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--fs-sm:12px;--fs-md:13px;--fs-base:14px;--fs-lg:16px;--fs-body:16px;--fs-xl:21px;--fs-2xl:24px;--fs-3xl:33px;--fs-mark:clamp(52px, 6vw, 76px);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-12:48px;--sp-16:64px;--sp-24:96px;--r-box:6px;--r-card:8px;--r-panel:12px;--bw:2px;--page:1200px;--gutter:16px;--fret-g:#21d07a;--fret-r:#e2464a;--fret-y:#f2c531;--fret-b:#3a8ee6;--fret-o:#f08a3c;--bounce:cubic-bezier(.34, 1.56, .64, 1)}@media (width>=720px){:root{--gutter:28px}}:root[data-theme=light]{--bg:#dde1f1;--window:#f1f3fb;--surface:#f7f7ff;--surface-2:#e3e7f4;--border-soft:#c7cfe7;--text:#282d4a;--text-dim:#535a7c;--text-faint:#5e6589;--purple:#4a4585;--purple-bri:#6860b5;--purple-bd:#9f9adb;--purple-bg:#d9dbf6;--cta-a:#ea76cb;--cta-a-ink:#402a38;--cta-b:#9d97e6;--cta-b-ink:#232644;--wm-0:#22b86f;--wm-1:#e0609a;--wm-2:#e0a816;--wm-3:#3d8fe0;--wm-4:#ee7d3a;--ink-beam:#4a4585;--glass:#ffffff8c;--glass-edge:#9f9adb;--tick:#4a458538;--shadow-media:0 1px 3px #2f35541a, 0 18px 40px -24px #2f355466;--frame:#1b2030;--float:#ffffff9e;--tab-on:#d9dbf6;--tag:#4a4585;--tag-ink:#fff;--d-easy:#5a9e7a;--d-medium:#c49030;--d-hard:#cf7327;--d-expert:#c94f5a;--purple-fg:#fff;--beta:#fbeccf;--beta-ink:#8a6218;--lift:0 1px 2px #2f35541a, 0 8px 18px -10px #2f35544d}:root[data-theme=dark]{--bg:#283045;--window:#2a3348;--surface:#313a52;--surface-2:#3d4761;--border-soft:#404b66;--text:#dce1f2;--text-dim:#a3adc7;--text-faint:#8893b0;--purple:#b4befe;--purple-bri:#c6cffe;--purple-bd:#8792d6;--purple-bg:#414a6d;--cta-a:#f5c2e7;--cta-a-ink:#2d1a28;--cta-b:#b4befe;--cta-b-ink:#232a3b;--wm-0:#80e5af;--wm-1:#f79cbb;--wm-2:#fad976;--wm-3:#8fc5ff;--wm-4:#ffb585;--ink-beam:#f2f4ff;--glass:#dce1ff24;--glass-edge:#b4befe;--tick:#b4befe38;--shadow-media:0 2px 6px #0a0e184d, 0 24px 50px -28px #0a0e18b3;--frame:#1a1f2d;--float:#12162285;--tab-on:#4d5785;--tag:#b4befe;--tag-ink:#232a3b;--d-easy:#4a9a6a;--d-medium:#a07018;--d-hard:#b0621f;--d-expert:#b03545;--purple-fg:#283045;--beta:#3d3320;--beta-ink:#e8c678;--lift:0 1px 2px #00000038, 0 10px 22px -12px #0000008c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:64px}html,body{margin:0}body{background:var(--window);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;line-height:1.55;overflow-x:hidden}img,video{max-width:100%;display:block}a{color:var(--purple-bri)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--purple-bd);outline-offset:3px;border-radius:4px}code{font-family:var(--font-mono);font-size:.88em}main{z-index:1;position:relative}main>section,.topbar-in,.foot-in{width:min(var(--page), 100% - 2 * var(--gutter));margin-inline:auto}.topbar{z-index:20;background:0 0;transition:box-shadow .2s,background-color .2s;position:sticky;top:0}.topbar.scrolled{background:var(--window);box-shadow:0 1px 0 var(--border-soft)}.topbar-in{align-items:center;gap:var(--sp-4);grid-template-columns:1fr auto 1fr;height:60px;display:grid}.brand{color:var(--text);justify-self:start;align-items:center;gap:9px;text-decoration:none;display:flex}.brand-star{color:var(--purple-bri);display:flex}.brand-name{font-family:var(--font-display);font-weight:800;font-size:var(--fs-lg);letter-spacing:.02em;padding-top:2px}.product-tabs{gap:4px;display:flex}.ptab{height:36px;color:var(--text-dim);font-weight:600;font-size:var(--fs-base);border-radius:99px;align-items:center;gap:6px;padding:0 16px;text-decoration:none;display:inline-flex}.ptab:hover{background:var(--surface-2);color:var(--text)}.ptab[aria-current=page]{background:var(--tab-on);color:var(--purple);box-shadow:var(--lift)}.soon{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);background:var(--surface-2);border-radius:4px;padding:1px 5px;font-size:10px;font-weight:500}.topnav{justify-self:end;align-items:center;gap:2px;display:flex}.topnav-link{color:var(--text-dim);font-size:var(--fs-base);border-radius:var(--r-box);padding:7px 10px;font-weight:500;text-decoration:none}.topnav-link:hover,.icon-link:hover{color:var(--text);background:var(--surface-2)}.icon-link{border-radius:var(--r-box);width:36px;height:36px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.language-picker{border-radius:var(--r-box);height:36px;color:var(--text-dim);font-size:var(--fs-base);cursor:pointer;align-items:center;gap:5px;padding:0 8px;font-weight:500;display:inline-flex;position:relative}.language-picker:hover{color:var(--text);background:var(--surface-2)}.language-picker:focus-within{outline:2px solid var(--purple-bri);outline-offset:2px}.language-picker-chevron{opacity:.6;display:flex}.language-picker select{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.theme-btn .ti{display:none}:root[data-theme-pref=system] .ti-system,:root[data-theme-pref=light] .ti-light,:root[data-theme-pref=dark] .ti-dark{display:flex}@media (width<=720px){.topbar-in{grid-template-columns:1fr auto;row-gap:6px;height:auto;padding-top:10px}.product-tabs{grid-area:2/1/auto/-1;padding-bottom:8px}.ptab{height:32px;padding:0 12px}}@media (width>=361px) and (width<=720px){.topbar-in>span:empty{display:none}}.hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(32px,4vw,56px);padding-block:clamp(28px,5vw,56px) clamp(16px,3vw,32px);display:grid}.wordmark{font-family:var(--font-display);font-weight:800;line-height:1;display:inline-flex}.wl{display:inline-block}.wl-0{color:var(--wm-0)}.wl-1{color:var(--wm-1)}.wl-2{color:var(--wm-2)}.wl-3{color:var(--wm-3)}.wl-4{color:var(--wm-4)}.hero-mark{font-size:var(--fs-mark);margin:0 0 var(--sp-4);margin-left:-.04em}.hero-mark .wl{animation:letter-in .6s var(--bounce) both;animation-delay:calc(var(--i) * 45ms + 60ms)}@keyframes letter-in{0%{opacity:0;transform:translateY(.3em)scale(.8)}to{opacity:1;transform:none}}.hero-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-3xl);margin:0 0 var(--sp-6);text-wrap:balance;line-height:1.12}.hero-sub{color:var(--text-dim);margin:0 0 var(--sp-6);text-wrap:pretty;max-width:34rem}.cta-pair{gap:var(--sp-3);grid-template-columns:1fr 1fr;max-width:460px;display:grid}.cta-col{flex-direction:column;gap:6px;min-width:0;display:flex}.cta{--c:var(--cta-a);--ink:var(--cta-a-ink);height:46px;padding:0 var(--sp-4);border-radius:var(--r-card);background:var(--c);color:var(--ink);font-weight:600;font-size:var(--fs-base);white-space:nowrap;justify-content:center;align-items:center;gap:8px;text-decoration:none;transition:filter .12s,transform .12s;display:flex}.cta-web{--c:var(--cta-b);--ink:var(--cta-b-ink)}.cta:hover{filter:brightness(1.06)}.cta:active{transform:translateY(1px)}.news-pill{max-width:100%;margin-bottom:var(--sp-5);background:var(--float);backdrop-filter:blur(14px);color:var(--text);font-size:var(--fs-md);border-radius:99px;align-items:center;gap:8px;padding:4px 12px 4px 4px;text-decoration:none;display:inline-flex}.news-pill>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.news-pill:hover{background:var(--tab-on)}.news-pill svg{color:var(--text-dim);transition:transform .15s}.news-pill:hover svg{transform:translate(2px)}.news-tag{background:var(--tag);color:var(--tag-ink);font-weight:700;font-size:var(--fs-sm);border-radius:99px;flex:none;padding:2px 9px}.news-pill svg{flex:none}.facts{margin:var(--sp-6) 0 0;font-size:var(--fs-md);color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.facts span{align-items:center;gap:10px;display:inline-flex}.dot{background:var(--c);border-radius:99px;width:5px;height:5px}.stage{border-radius:var(--r-panel);background:var(--frame);box-shadow:var(--shadow-media);aspect-ratio:16/9;position:relative;overflow:hidden}.stage-video{object-fit:cover;width:100%;height:100%}.sound-btn{color:#fff;height:30px;font-size:var(--fs-sm);cursor:pointer;background:#101420b8;border:0;border-radius:99px;align-items:center;gap:6px;padding:0 11px 0 9px;font-weight:600;display:flex;position:absolute;bottom:12px;left:12px}.sound-btn:hover{background:#101420e6}.sound-btn .so-on{display:none}.sound-btn[aria-pressed=true] .so-on{display:flex}.sound-btn[aria-pressed=true] .so-off{display:none}.sound-btn span{display:flex}@media (width<=900px){.hero{grid-template-columns:minmax(0,1fr)}.cta-pair{max-width:none}}@media (width<=420px){.cta-pair{grid-template-columns:1fr}}.fret-g,.fret-bg-g{--c:var(--fret-g)}.fret-r,.fret-bg-r{--c:var(--fret-r)}.fret-y,.fret-bg-y{--c:var(--fret-y)}.fret-b,.fret-bg-b{--c:var(--fret-b)}.fret-o,.fret-bg-o{--c:var(--fret-o)}.block{padding-block:clamp(36px,5vw,56px)}.section-title{font-family:var(--font-display);font-weight:800;font-size:var(--fs-2xl);margin:0 0 var(--sp-5);line-height:1.1}.panel{background:var(--surface);border-radius:var(--r-panel)}.app-row{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center;gap:clamp(28px,4vw,48px);display:grid}.does{gap:var(--sp-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.does li{flex-direction:column;gap:2px;padding-left:22px;display:flex;position:relative}.does li:before{content:"";background:var(--c);border-radius:99px;width:12px;height:8px;position:absolute;top:7px;left:0}.does b{font-weight:600;font-size:var(--fs-lg)}.does span{color:var(--text-dim);font-size:var(--fs-base)}.shot{border-radius:var(--r-panel);box-shadow:var(--shadow-media);margin:0;overflow:hidden}:root[data-theme=dark] .only-light,:root[data-theme=light] .only-dark{display:none}.game-strip{gap:var(--sp-4);grid-template-columns:repeat(3,1fr);margin-top:clamp(28px,4vw,40px);display:grid}.game-shot{border-radius:var(--r-card);margin:0;overflow:hidden}.game-shot img{aspect-ratio:16/9;object-fit:cover;width:100%}@media (width<=760px){.app-row{grid-template-columns:1fr}.game-strip{grid-template-columns:1fr 1fr}.game-shot:nth-child(3){display:none}}.get-grid{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.get-card{padding:var(--sp-6);gap:var(--sp-4);flex-direction:column;display:flex}.get-card-head{justify-content:space-between;align-items:baseline;gap:2px var(--sp-3);flex-wrap:wrap;display:flex}.get-card h3{font-family:var(--font-display);font-weight:800;font-size:var(--fs-xl);margin:0;line-height:1.1}.mono-dim{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-faint)}.get-copy{color:var(--text-dim);font-size:var(--fs-base);min-height:42px;margin:0}.cta-block{width:100%}.file-line{justify-content:space-between;gap:var(--sp-3);margin:var(--sp-3) 0 0;font-size:var(--fs-sm);color:var(--text-faint);flex-wrap:wrap;display:flex}.file-line code,.file-line a{color:var(--text-dim)}.file-line a:hover{color:var(--text)}.help{margin:var(--sp-2) 0 0;font-size:var(--fs-md);color:var(--text-dim)}.get-card>.help{margin-top:0}.help b{color:var(--text);font-weight:600}.os-panel[hidden]{display:none}.seg{background:var(--surface-2);border-radius:var(--r-card);padding:3px;display:flex}.seg-btn{border-radius:var(--r-box);height:32px;color:var(--text-dim);font-weight:600;font-size:var(--fs-md);cursor:pointer;background:0 0;border:0;flex:1}.seg-btn:hover{color:var(--text)}.seg-btn[aria-selected=true]{background:var(--surface);color:var(--purple);box-shadow:0 1px 2px #0000001f}:root[data-theme=dark] .seg-btn[aria-selected=true]{background:var(--bg)}@media (width<=760px){.get-grid{grid-template-columns:1fr}.get-copy{min-height:0}}.qa-list{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));align-items:start;column-gap:clamp(24px,4vw,48px);display:grid}.qa{border-top:1px solid var(--border-soft)}.qa summary{justify-content:space-between;align-items:center;gap:var(--sp-3);cursor:pointer;padding:12px 0;font-weight:600;list-style:none;display:flex}.qa summary::-webkit-details-marker{display:none}.qa summary:after{content:"+";font-family:var(--font-mono);font-size:var(--fs-lg);color:var(--text-faint);transition:transform .2s}.qa[open] summary:after{transform:rotate(45deg)}.qa summary:hover{color:var(--purple-bri)}.qa p{margin:0 0 var(--sp-4);color:var(--text-dim);font-size:var(--fs-base);max-width:52ch}.qa .todo{border:var(--bw) dashed var(--purple-bd);border-radius:var(--r-box);padding:var(--sp-2) var(--sp-3);font-style:italic}.foot{background:var(--bg)}.foot-in{padding:var(--sp-8) 0 var(--sp-12);justify-content:space-between;gap:var(--sp-6);flex-wrap:wrap;display:flex}.foot-mark{font-size:var(--fs-2xl)}.foot-brand p{color:var(--text-faint);font-size:var(--fs-md);max-width:36ch;margin:var(--sp-1) 0 0}.foot-links{gap:var(--sp-2) var(--sp-5);flex-wrap:wrap;align-items:flex-start;display:flex}.foot-links a{color:var(--text-dim);font-size:var(--fs-base);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.foot-links a:hover{color:var(--text)}.foot-strip{height:4px;display:flex}.foot-strip i{flex:1}.foot-strip i:first-child{background:var(--fret-g)}.foot-strip i:nth-child(2){background:var(--fret-r)}.foot-strip i:nth-child(3){background:var(--fret-y)}.foot-strip i:nth-child(4){background:var(--fret-b)}.foot-strip i:nth-child(5){background:var(--fret-o)}.tour{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:clamp(28px,4vw,48px);display:grid}.tour-screen{aspect-ratio:16/9;border-radius:var(--r-panel);background:var(--frame);box-shadow:var(--shadow-media);position:relative;overflow:hidden}.tour-video{object-fit:cover;width:100%;height:100%}.tour-sped{color:#dce1f2;font-family:var(--font-mono);font-size:var(--fs-sm);pointer-events:none;background:#0a0d18c7;border-radius:999px;padding:3px 9px;position:absolute;bottom:10px;right:10px}.tour-sped[hidden]{display:none}.wm-0{--c:var(--wm-0)}.wm-1{--c:var(--wm-1)}.wm-2{--c:var(--wm-2)}.wm-3{--c:var(--wm-3)}@property --p{syntax:"<number>";inherits:true;initial-value:0}.tour-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tour-step{--p:0;gap:var(--sp-4);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;padding:10px 4px;display:grid}.tour-text{flex-direction:column;gap:1px;min-width:0;display:flex}.tour-name{font-family:var(--font-display);font-weight:800;font-size:var(--fs-xl);color:var(--text-dim);line-height:1.2;transition:color .15s}.tour-text span{color:var(--text-faint);font-size:var(--fs-base);transition:color .15s}.tour-step:hover .tour-name{color:var(--text)}.tour-step[aria-pressed=true] .tour-name{color:#0000;background:linear-gradient(90deg, var(--c) calc(var(--p) * 100%), var(--text) 0);-webkit-background-clip:text;background-clip:text}.tour-step[aria-pressed=true] .tour-text span{color:var(--text-dim)}.tour-time{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-faint);white-space:nowrap}.tour-step[aria-pressed=true] .tour-time{color:var(--c)}@media (width<=900px){.tour{grid-template-columns:minmax(0,1fr)}.tour-side{order:-1}.tour-list{gap:0 var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.tour-text span,.tour-time{display:none}.tour-step{padding:6px 0}}.more{padding-bottom:clamp(56px,7vw,88px)}.more-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.more-tile{border-radius:var(--r-panel);background:var(--surface);color:var(--text);flex-direction:column;text-decoration:none;transition:transform .15s;display:flex;overflow:hidden}.more-tile:hover{transform:translateY(-2px)}.more-art{aspect-ratio:16/9;background:var(--frame);display:block;overflow:hidden}.art-svg,.art-img{object-fit:cover;width:100%;height:100%;display:block}.more-text{flex-direction:column;gap:2px;padding:14px 16px 16px;display:flex}.more-text b{font-family:var(--font-display);font-weight:800;font-size:var(--fs-xl);align-items:center;gap:8px;line-height:1.1;display:flex}.more-text>span{color:var(--text-dim);font-size:var(--fs-base)}.soon-title{font-size:var(--fs-mark);margin-bottom:var(--sp-3);font-weight:800;line-height:1}.soon-kicker{margin:0 0 var(--sp-3)}.soon-stage{box-shadow:var(--shadow-media)}.backdrop{pointer-events:none;z-index:0;height:1100px;position:absolute;inset:0 0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(#000 45%,#0000);mask-image:linear-gradient(#000 45%,#0000)}.bd-shader{opacity:.62;position:absolute;inset:0}.bd-shader canvas{display:block}:root[data-theme=light] .bd-shader{opacity:.55}.prose{max-width:68ch}.prose h2{font-family:var(--font-display);font-size:var(--fs-xl);margin:var(--sp-6) 0 var(--sp-2)}.prose p,.prose dd{color:var(--text-dim);line-height:1.6}.prose dl{margin:var(--sp-4) 0}.prose dt{margin-top:var(--sp-3);font-weight:700}.prose dd{margin:2px 0 0}.prose a{color:var(--purple-bri)}.docs{width:min(1240px, 100% - 2 * var(--gutter));padding-block:var(--sp-8) var(--sp-24);grid-template-columns:200px minmax(0,1fr) 190px;align-items:start;gap:clamp(28px,4vw,64px);margin-inline:auto;display:grid}.docs-nav,.doc-toc{max-height:calc(100vh - 92px);position:sticky;top:76px;overflow-y:auto}.docs-nav ul,.doc-toc ul{margin:0;padding:0;list-style:none}.docs-nav-fold>summary{display:none}.docs-nav-group+.docs-nav-group{margin-top:var(--sp-6)}.docs-nav-label{margin:0 0 var(--sp-2);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);padding-left:10px;font-size:11px;font-weight:500}.docs-nav li a,.docs-nav-soon,.doc-toc a{border-radius:var(--r-box);font-size:var(--fs-base);color:var(--text-dim);padding:5px 10px;line-height:1.4;text-decoration:none;display:block}.docs-nav li a:hover,.doc-toc a:hover{color:var(--text);background:var(--surface-2)}.docs-nav li a[aria-current=page]{background:var(--tab-on);color:var(--purple);font-weight:600}.docs-nav-soon{color:var(--text-faint);opacity:.6;cursor:default}.doc-toc a{font-size:var(--fs-md);padding-block:4px}.doc-toc a[aria-current]{color:var(--purple);font-weight:600}.doc{min-width:0;max-width:72ch}.doc-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.doc h1{font-family:var(--font-display);font-weight:800;font-size:var(--fs-3xl);margin:0 0 var(--sp-4);line-height:1.1}.doc-copy{flex:none;margin-top:2px}.doc-copy .doc-copy-done{color:var(--fret-g);display:none}.doc-copy.done .doc-copy-idle{display:none}.doc-copy.done .doc-copy-done{display:flex}.doc h2{font-family:var(--font-display);font-weight:700;font-size:var(--fs-xl);margin:var(--sp-12) 0 var(--sp-3);scroll-margin-top:76px;line-height:1.25}.doc h3{font-size:var(--fs-lg);margin:var(--sp-6) 0 var(--sp-2)}.doc p,.doc li{color:var(--text-dim);line-height:1.65}.doc p{margin:0 0 var(--sp-4)}.doc .doc-lead{color:var(--text);font-size:17px}.doc b,.doc strong{color:var(--text);font-weight:600}.doc ul,.doc ol{margin:0 0 var(--sp-4);padding-left:1.2em}.doc li+li{margin-top:4px}.doc a{color:var(--purple-bri)}.doc .ui{color:var(--text);white-space:nowrap;font-weight:600}@media (width<=720px){.doc .ui{white-space:normal}}.doc-table{border-collapse:separate;border-spacing:0;width:100%;margin:var(--sp-2) 0 var(--sp-6);font-size:var(--fs-base);background:var(--surface);border-radius:var(--r-card);overflow:hidden}.doc-table th{text-align:left;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);background:var(--surface-2);padding:9px 14px;font-size:11px;font-weight:500}.doc-table td{vertical-align:top;color:var(--text-dim);padding:11px 14px;line-height:1.5}.doc-table tr+tr td{box-shadow:inset 0 1px 0 var(--border-soft)}.doc-table td:first-child{color:var(--text);white-space:nowrap;font-weight:600}.doc-table .num{font-family:var(--font-mono);font-size:var(--fs-md);white-space:nowrap;color:var(--text)}.doc-table-wrap{overflow-x:auto}.doc-shot{margin:var(--sp-2) 0 var(--sp-6)}.doc-shot-slot{aspect-ratio:16/7;border-radius:var(--r-card);background:repeating-linear-gradient(-45deg, var(--surface) 0 12px, var(--surface-2) 12px 24px);color:var(--text-faint);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase;place-items:center;display:grid}.doc-shot img{border-radius:var(--r-card);box-shadow:var(--shadow-media)}.doc-shot a{cursor:zoom-in;display:block}.doc-shot figcaption{margin-top:var(--sp-2);font-size:var(--fs-md);color:var(--text-faint)}.doc-steps{gap:var(--sp-2);counter-reset:step;list-style:none;display:grid;padding:0!important}.doc-steps li{counter-increment:step;border-radius:var(--r-card);background:var(--surface);padding:10px 14px 10px 46px;position:relative;margin:0!important}.doc-steps li:before{content:counter(step);width:22px;height:22px;font-family:var(--font-mono);color:#1d2233;background:var(--s,var(--wm-0));border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid;position:absolute;top:11px;left:12px}.doc-steps li:nth-child(2){--s:var(--wm-1)}.doc-steps li:nth-child(3){--s:var(--wm-2)}.doc-steps .skip{opacity:.55}@media (width<=1100px){.docs{grid-template-columns:190px minmax(0,1fr)}.doc-toc{display:none}}@media (width<=900px){.docs{gap:var(--sp-4);padding-top:var(--sp-4);grid-template-columns:minmax(0,1fr)}.docs-nav{max-height:none;position:static;overflow:visible}.docs-nav-fold>summary{align-items:center;gap:var(--sp-2);border-radius:var(--r-card);background:var(--surface);font-size:var(--fs-base);cursor:pointer;padding:10px 14px;font-weight:600;list-style:none;display:flex}.docs-nav-fold>summary::-webkit-details-marker{display:none}.docs-nav-here{color:var(--text-dim);margin-left:auto;font-weight:500}.docs-nav-fold[open]>summary svg{transform:rotate(180deg)}.docs-nav-list{padding:var(--sp-4) 4px var(--sp-2)}.doc h1{font-size:var(--fs-2xl)}}@media (width<=640px){.doc-table thead{display:none}.doc-table,.doc-table tbody,.doc-table tr,.doc-table td{display:block}.doc-table tr{padding:10px 14px}.doc-table tr+tr{box-shadow:inset 0 1px 0 var(--border-soft)}.doc-table tr+tr td{box-shadow:none}.doc-table td{padding:3px 0;white-space:normal!important}.doc-table td:first-child{padding-bottom:6px}.doc-table td:not(:first-child){grid-template-columns:92px 1fr;gap:8px;display:grid}.doc-table td:not(:first-child):before{content:attr(data-label);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);padding-top:3px;font-size:10px}}.doc kbd{background:var(--surface-2);min-width:1.6em;box-shadow:inset 0 -1px 0 var(--border-soft);font-family:var(--font-mono);text-align:center;color:var(--text);border-radius:5px;padding:1px 6px;font-size:12px;display:inline-block}.doc code{color:var(--text);background:var(--surface-2);border-radius:4px;padding:1px 5px}.doc .doc-next{margin-top:var(--sp-12);padding-top:var(--sp-4);box-shadow:inset 0 1px 0 var(--border-soft)}@media (width<=640px){.doc-table td:not(:first-child):not([data-label]){display:block}}.dchip{border-radius:var(--r-box);min-width:22px;height:21px;font:700 11px var(--font-mono);color:#fff;vertical-align:1px;place-items:center;padding:0 5px;display:inline-grid}.dchip.e{background:var(--d-easy)}.dchip.m{background:var(--d-medium)}.dchip.h{background:var(--d-hard)}.dchip.x{background:var(--d-expert)}.doc-final{margin:var(--sp-3) 0;align-items:center;gap:6px;display:flex}.doc-final>span:first-child{font:500 var(--fs-sm) var(--font-mono);color:var(--text-dim);margin-right:4px}.doc-map-img{line-height:0;position:relative}.doc-map-img img{border-radius:var(--r-box);width:100%;height:auto}.doc-map-mark{box-shadow:0 0 0 2px var(--text), 0 0 0 4px var(--bg);border-radius:4px;position:absolute;top:42%;bottom:1%}.set-card{margin:var(--sp-4) 0 var(--sp-3);border-radius:var(--r-card);background:var(--surface);padding:20px}.doc>.set-card:first-of-type{margin-top:var(--sp-6)}.set-card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.doc .set-card-head h2{font-size:var(--fs-lg);margin:0}.set-card-head span{color:var(--text-dim);font-size:var(--fs-sm);text-align:right}.doc .set-rows{flex-direction:column;gap:8px;margin:0;list-style:none;display:flex;padding:0!important}.doc .set-rows li{margin:0}.set-row{border-radius:var(--r-box);background:var(--surface-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:10px 12px 10px 14px;display:grid}.set-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.set-copy b{font-size:var(--fs-base);color:var(--text);font-weight:700}.set-copy small{color:var(--text-dim);font-size:var(--fs-sm);line-height:1.45}.set-actions{align-items:center;gap:var(--sp-3);flex:none;display:flex}.set-btn:before,.set-link:before{content:attr(data-t)}.set-btn{border-radius:var(--r-box);background:var(--surface);min-height:32px;color:var(--text);font-size:var(--fs-sm);align-items:center;padding:0 10px;font-weight:600;display:inline-flex}.set-link{color:var(--text-dim);font-size:var(--fs-sm);font-weight:600}.set-switch{background:var(--text-faint);border-radius:999px;flex:none;width:40px;height:22px;position:relative}.set-switch:after{content:"";background:#fff;border-radius:999px;width:16px;height:16px;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000040}.set-switch.on{background:var(--purple-bri)}.set-switch.on:after{background:var(--surface);transform:translate(18px)}.set-seg{border-radius:var(--r-box);background:var(--surface-2);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:3px;padding:3px;display:grid}.set-seg span{min-height:36px;color:var(--text-dim);font-size:var(--fs-sm);text-align:center;border-radius:3px;place-items:center;font-weight:700;display:grid}.set-seg span.on{background:var(--surface);color:var(--purple);box-shadow:0 1px 2px #00000014}.doc .set-note{font-size:var(--fs-md);color:var(--text-dim);margin:12px 0 0}.set-card{--model-col:124px}.model-cols{grid-template-columns:minmax(0, 1fr) var(--model-col) var(--model-col);font-size:var(--fs-sm);color:var(--text-dim);gap:12px;padding:0 14px 8px;font-weight:700;display:grid}.model-cols span:first-child{grid-column:2}.model-row{grid-template-columns:auto auto minmax(0, 1fr) var(--model-col) var(--model-col);border-radius:var(--r-box);background:var(--surface-2);align-items:center;gap:12px;min-height:64px;padding:10px 14px;display:grid}.model-row.selected{box-shadow:inset 0 0 0 2px var(--purple-bri)}.model-radio{width:18px;height:18px;box-shadow:inset 0 0 0 2px var(--text-faint);border-radius:999px}.model-row.selected .model-radio{box-shadow:inset 0 0 0 5px var(--purple-bri)}.model-badge{border-radius:var(--r-box);color:#fff;width:40px;height:40px;font-family:var(--font-display);font-size:var(--fs-2xl);text-shadow:0 1px #0000002e;place-items:center;font-weight:800;line-height:1;display:grid;box-shadow:inset 0 -3px #00000029}.model-badge.fretformer-2{background:linear-gradient(135deg, var(--fret-g), var(--fret-b))}.model-badge.fretformer-1{background:linear-gradient(135deg, var(--fret-y), var(--fret-o))}.model-badge.inpaint{background:linear-gradient(135deg, var(--fret-b), var(--fret-r))}.model-badge.lite{background:linear-gradient(135deg, var(--fret-g), var(--fret-y))}.model-name{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.model-tag{border-radius:var(--r-box);padding:2px 7px;font-size:11px;font-weight:700;line-height:1.4}.model-tag.rec{color:var(--purple-fg);background:var(--purple-bri)}.model-tag.beta{color:var(--beta-ink);background:var(--beta)}.model-size{flex-direction:column;gap:2px;display:flex}.model-size b{font:600 var(--fs-md) var(--font-mono);color:var(--text)}.model-size b.is-text{font:500 var(--fs-md) var(--font-ui);color:var(--text-dim)}.model-size small{color:var(--text-dim);font-size:var(--fs-sm);line-height:1.3}@media (width<=640px){.set-card{padding:14px}.set-actions:has(.set-btn){display:none}.set-row{grid-template-columns:minmax(0,1fr) auto}.model-cols{display:none}.model-row{grid-template-columns:auto minmax(0,1fr);gap:4px 12px}.model-radio{display:none}.model-size{flex-flow:wrap;grid-column:2;align-items:baseline;gap:2px 8px}.model-size:before{content:attr(data-label);width:64px;font-size:var(--fs-sm);color:var(--text-dim);font-weight:700}.set-seg{grid-template-columns:1fr 1fr;grid-auto-flow:row}}.changelog-date{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-faint);margin-left:8px;font-weight:500}.blog,.post-in{width:min(1000px, 100% - 2 * var(--gutter));margin-inline:auto}.blog{padding-block:var(--sp-8) var(--sp-24)}.blog>h1{font-family:var(--font-display);font-weight:800;font-size:var(--fs-3xl);margin:0 0 var(--sp-2);line-height:1.1}.blog-line{margin:0 0 var(--sp-8);color:var(--text-dim);font-size:17px}.blog-list{margin-top:var(--sp-8);border-top:1px solid var(--border-soft)}.post-row{align-items:center;gap:var(--sp-6);padding-block:var(--sp-4);color:inherit;grid-template-columns:112px minmax(0,1fr);text-decoration:none;display:grid}.blog-list .post-row+.post-row{border-top:1px solid var(--border-soft)}.post-row-cover{aspect-ratio:1;object-fit:cover;border-radius:var(--r-card);width:100%;box-shadow:var(--shadow-media);transition:transform .14s}.post-row:hover .post-row-cover{transform:translateY(-3px)}.post-row h2,.post-row h3{font-family:var(--font-display);font-weight:700;font-size:var(--fs-xl,22px);color:var(--text);margin:0;line-height:1.2;transition:color .12s}.post-row:hover h2,.post-row:hover h3{color:var(--purple)}.post-row-summary{color:var(--text-dim);margin:4px 0 0;line-height:1.5}.post-row.is-lead{gap:var(--sp-8);grid-template-columns:minmax(0,340px) minmax(0,1fr);padding-block:0}.post-row.is-lead h2{font-size:var(--fs-3xl);font-weight:800}.post-row.is-lead .post-row-summary{margin-top:var(--sp-2);font-size:17px}.post-meta{margin:0 0 var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-faint);align-items:center;gap:10px;display:flex}.post-tag{background:var(--tab-on);color:var(--purple);border-radius:999px;padding:2px 9px;font-weight:500}.post{position:relative}.post-wash{background:linear-gradient(color-mix(in oklab, var(--tint) 15%, transparent), transparent);pointer-events:none;height:420px;position:absolute;inset:0 0 auto}.post-in{padding-block:var(--sp-6) var(--sp-24);position:relative}.post-back{color:var(--text-dim);font-size:var(--fs-md);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.post-back:hover{color:var(--text)}.post-back svg{transform:rotate(180deg)}.post-head{align-items:center;gap:var(--sp-8);margin-block:var(--sp-6) var(--sp-12,48px);grid-template-columns:180px minmax(0,1fr);display:grid}.post-cover{aspect-ratio:1;object-fit:cover;border-radius:var(--r-card);width:100%;box-shadow:var(--shadow-media)}.post-head h1{font-family:var(--font-display);margin:0;font-size:clamp(32px,5vw,46px);font-weight:800;line-height:1.08}.post-summary{margin:var(--sp-2) 0 0;max-width:56ch;color:var(--text-dim);font-size:17px;line-height:1.5}.post-body{grid-template-columns:minmax(0,1fr) 190px;align-items:start;gap:clamp(28px,4vw,64px);display:grid}.post-body .doc{max-width:none}.post-clip{border-radius:var(--r-card);width:100%;box-shadow:var(--shadow-media);background:var(--surface);display:block}.post-draft{border-radius:var(--r-box);background:var(--beta);font-size:var(--fs-md);padding:10px 14px;font-weight:600;color:var(--beta-ink)!important}.post-cta{gap:var(--sp-2);margin-top:var(--sp-8);flex-wrap:wrap;display:flex}.doc .post-cta .cta{color:var(--ink);text-decoration:none}.post .doc-shot-slot{aspect-ratio:16/5}.post-next{margin-top:var(--sp-12,48px);padding-top:var(--sp-6);border-top:1px solid var(--border-soft)}.post-next .docs-nav-label{padding-left:0}@media (width<=900px){.post-body{grid-template-columns:minmax(0,1fr)}.post-body .doc-toc{display:none}}@media (width<=640px){.post-row{gap:var(--sp-4);grid-template-columns:76px minmax(0,1fr)}.post-row h2,.post-row h3{font-size:18px}.post-row.is-lead{gap:var(--sp-4);grid-template-columns:minmax(0,1fr)}.post-row.is-lead .post-row-cover{aspect-ratio:16/9}.post-row.is-lead h2{font-size:28px}.post-head{gap:var(--sp-4);grid-template-columns:84px minmax(0,1fr)}.post-head h1{font-size:28px}.post-cta .cta{flex:1}}
