.hm{--hm-max:1680px;--hm-pad:16px;--hm-ink:var(--color-fd-foreground);--hm-muted:var(--color-fd-muted-foreground);--hm-line:var(--color-fd-border);width:100%;overflow-x:clip}.hm-frame{max-width:calc(var(--hm-max) + 2 * var(--hm-pad));margin:0 auto;padding:0 var(--hm-pad)}.ip{width:min(100%,1440px);margin:0 auto;padding:clamp(72px,10vw,128px) var(--hm-pad) 80px}.ip-head{max-width:620px;margin-bottom:40px}.ip-head .hm-kicker{margin:0 0 14px}.ip-head h1{margin:0;font-size:clamp(40px,5vw,68px);letter-spacing:-.055em;line-height:.98}.ip-head>p:last-child{margin:20px 0 0;color:var(--hm-muted);font-size:17px;line-height:1.55}.ip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ip-grid>*{min-width:0;border-radius:24px}@media (max-width:1000px){.ip-grid{grid-template-columns:minmax(0,1fr)}}.hm-hero{max-width:var(--hm-max);margin:0 auto;padding:clamp(72px,11vw,136px) 0 clamp(48px,6vw,72px)}.hm-brandline{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px;font-size:14px;color:var(--hm-muted)}.hm-brandline a{color:var(--hm-ink);font-weight:500}@media (hover:hover) and (pointer:fine){.hm-brandline a:hover{text-decoration:underline;text-underline-offset:3px}}.hm-hero h1{max-width:900px;margin:0;font-size:clamp(44px,7.4vw,88px);font-weight:600;line-height:.98;letter-spacing:-.05em;text-wrap:balance}.hm-hero h1 span,.hm-lead{color:var(--hm-muted)}.hm-lead{max-width:560px;margin:28px 0 0;font-size:clamp(17px,1.8vw,19px);line-height:1.55;text-wrap:pretty}.hm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:34px}.hm-cta{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 18px;border:1px solid var(--hm-line);border-radius:999px;background:var(--color-fd-background);font-size:15px;font-weight:500;transition:background .15s,transform .15s}@media (hover:hover) and (pointer:fine){.hm-cta:hover{background:var(--color-fd-accent)}}.hm-cta:active{transform:scale(.98)}.hm-cta.primary{border-color:var(--hm-ink);background:var(--hm-ink);color:var(--color-fd-background)}@media (hover:hover) and (pointer:fine){.hm-cta.primary:hover{opacity:.86}}.hm-install{margin-left:6px}.hm-install .rm-command{margin:0;border-radius:999px;background:transparent}.hm-install .rm-command code{white-space:nowrap;font-size:12.5px}.hm-lines{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:var(--hm-max);margin:0 auto;padding:0;border-top:1px solid var(--hm-line);list-style:none}.hm-lines li+li{border-left:1px solid var(--hm-line)}.hm-lines a{display:grid;gap:4px;height:100%;padding:18px 18px 20px;transition:background .15s}.hm-lines li:first-child a{padding-left:0}@media (hover:hover) and (pointer:fine){.hm-lines a:hover{background:var(--color-fd-accent)}.hm-lines li:first-child a:hover{background:none}}.hm-lines strong{font-size:14px;font-weight:600}.hm-lines span{font-size:13.5px;line-height:1.45;color:var(--hm-muted)}.hm-section{max-width:var(--hm-max);margin:0 auto;padding:clamp(72px,9vw,112px) 0}.hm-section+.hm-section{border-top:1px solid var(--hm-line)}.hm-section.showcase{padding-top:24px}.hm-kicker{margin:0 0 12px;font-size:14px;font-weight:500;color:var(--hm-muted)}.hm-head{max-width:600px}.hm-head.row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;max-width:none;margin-bottom:36px}.hm-end h2,.hm-head h2{margin:0;font-size:clamp(30px,4vw,44px);font-weight:600;line-height:1.06;letter-spacing:-.04em;text-wrap:balance}.hm-head p{margin:14px 0 0;font-size:17px;line-height:1.6;color:var(--hm-muted);text-wrap:pretty}.hm-head p a{color:var(--hm-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--hm-line)}.hm-section>header.hm-head:not(.row){margin-bottom:36px}.hm-head p code,.hm-lead code{font-family:var(--font-mono,ui-monospace,monospace);font-size:.9em}.hm-link{display:inline-flex;gap:6px;margin-top:22px;font-size:15px;font-weight:500;white-space:nowrap}.hm-head.row .hm-link{margin-top:0}.hm-link span{transition:transform .2s}@media (hover:hover) and (pointer:fine){.hm-link:hover span{transform:translateX(3px)}}.hm-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,5vw,64px)}.hm-split.faq{align-items:start}.hm-split.code,.hm-split.faq{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.bx{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.bx-cell{position:relative;display:flex;flex-direction:column;border:1px solid var(--hm-line);border-radius:16px;background:var(--color-fd-card);overflow:hidden}.bx-cell.b-emblem,.bx-cell.b-icon,.bx-cell.b-orb,.bx-cell.b-text{grid-column:span 2}.bx-cell.b-particles,.bx-cell.b-world{grid-column:span 3}.bx-cell.b-scene{grid-column:span 4}.bx-cell.b-thread,.bx-cell.b-weather{grid-column:span 6}.bx-cell.b-thread{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch}.bx-thread-copy{display:flex;flex-direction:column;padding:clamp(24px,3.5vw,40px)}.bx-thread-copy h3{display:flex;align-items:center;gap:10px;margin:0;font-size:22px;font-weight:600;letter-spacing:-.02em}.bx-thread-copy>p{margin:10px 0 0;font-size:15px;line-height:1.6;color:var(--hm-muted)}.bx-thread-copy ul{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none;font-size:14px}.bx-thread-copy li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;line-height:1.5}.bx-thread-copy li:before{content:"";width:6px;height:6px;margin:7px 0 0 4px;border-radius:50%;background:var(--hm-ink)}.bx-thread-copy .hm-link{margin-top:auto;padding-top:28px}.bx-thread-demo{padding:16px 16px 16px 0}.bx-thread-demo .cx{margin:0}.bx-thread-demo .cx-stage{height:520px}.hm-pro{padding:2px 8px;border:1px solid var(--hm-line);border-radius:999px;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--hm-muted)}.bx-play{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--hm-line);border-radius:50%;background:var(--color-fd-background);color:var(--hm-ink);opacity:0;transition:opacity .2s,transform .15s,background .15s}.bx-play:focus-visible,.bx-play[aria-pressed=false]{opacity:1}@media (hover:hover) and (pointer:fine){.bx-cell:hover .bx-play{opacity:1}}@media (hover:none){.bx-play{opacity:1}}@media (hover:hover) and (pointer:fine){.bx-play:hover{background:var(--color-fd-accent)}}.bx-play:active{transform:scale(.92)}.bx-play svg{width:12px;height:12px}.dark-stage .bx-play{border-color:rgb(255 255 255/.16);background:rgb(255 255 255/.08);color:#fff}.bx-demo{display:grid;flex:1;place-items:center;min-height:260px;padding:28px 22px;cursor:pointer}.bx-demo:focus-visible{outline:2px solid var(--hm-ink);outline-offset:-6px;border-radius:14px}.bx-meta{padding:0 20px 18px}.bx-title{font-size:14px;font-weight:600;white-space:nowrap}.bx-title span{color:var(--hm-muted);transition:margin .2s}@media (hover:hover) and (pointer:fine){.bx-title:hover span{margin-left:4px}}.bx-meta p{margin:4px 0 0;font-size:13.5px;line-height:1.5;color:var(--hm-muted)}.bx-cell.dark-stage .bx-meta p{color:rgb(255 255 255/.55)}.hm-components{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--hm-line);border-left:1px solid var(--hm-line)}.hm-component{display:grid;align-content:start;gap:6px;padding:22px 22px 26px;border-right:1px solid var(--hm-line);border-bottom:1px solid var(--hm-line);transition:background .15s}@media (hover:hover) and (pointer:fine){.hm-component:hover{background:var(--color-fd-accent)}}.hm-component header{display:flex;align-items:center;justify-content:space-between;gap:12px}.hm-component strong{font-size:15px;font-weight:600}.hm-component>span{font-size:14px;line-height:1.5;color:var(--hm-muted)}.hm-component em{margin-top:8px;font-style:normal;font-size:12.5px;color:var(--hm-muted)}.hm-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:40px 0 0;padding:0;overflow:hidden;border:1px solid var(--hm-line);border-radius:20px;background:var(--hm-line);list-style:none}.hm-point{display:grid;align-content:start;gap:8px;padding:28px 26px 30px;background:var(--color-fd-background)}.hm-point-icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:10px;border-radius:10px;background:color-mix(in oklab,var(--hm-ink) 6%,transparent);color:var(--hm-ink)}.hm-point-icon svg{width:18px;height:18px}.hm-point strong{font-size:16px;font-weight:600;letter-spacing:-.015em}.hm-point p{margin:0;color:var(--hm-muted);font-size:14.5px;line-height:1.55}@media (max-width:640px){.hm-points{grid-template-columns:minmax(0,1fr)}}.hm-end{max-width:calc(var(--hm-max) + 2 * var(--hm-pad));margin:0 auto;padding:0 var(--hm-pad) 40px}.hm-end-cta{display:grid;justify-items:start;padding:clamp(72px,9vw,112px) 0;border-top:1px solid var(--hm-line)}.hm-end-cta>p{margin:14px 0 0;font-size:17px;color:var(--hm-muted)}.hm-footer{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:32px;padding-top:40px;border-top:1px solid var(--hm-line)}.hm-footer-note{max-width:300px;margin:14px 0 0;font-size:14px;line-height:1.6;color:var(--hm-muted)}.hm-footer nav{display:grid;align-content:start;gap:10px;font-size:14px}.hm-footer nav p{margin:0 0 4px;font-weight:600}.hm-footer nav a{color:var(--hm-muted)}@media (hover:hover) and (pointer:fine){.hm-footer nav a:hover{color:var(--hm-ink)}}.hm-footer-legal{margin:48px 0 0;font-size:12px;color:var(--hm-muted)}@media (max-width:900px){.bx-cell.b-emblem,.bx-cell.b-icon,.bx-cell.b-orb,.bx-cell.b-particles,.bx-cell.b-scene,.bx-cell.b-text,.bx-cell.b-world{grid-column:span 3}.bx-cell.b-thread{grid-template-columns:minmax(0,1fr)}.bx-thread-demo{padding:0 12px 12px}.hm-lines{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-lines li+li{border-left:0}.hm-lines li{border-bottom:1px solid var(--hm-line)}.hm-lines li a,.hm-lines li:first-child a{padding:16px 0}@media (hover:hover) and (pointer:fine){.hm-lines a:hover{background:none}}.hm-components{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-split,.hm-split.code,.hm-split.faq{grid-template-columns:minmax(0,1fr)}.hm-points{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-head.row{flex-direction:column;align-items:flex-start}.hm-footer{grid-template-columns:1fr 1fr}.hm-footer>div:first-child{grid-column:span 2}}@media (max-width:640px){.bx-cell.b-emblem,.bx-cell.b-icon,.bx-cell.b-orb,.bx-cell.b-particles,.bx-cell.b-scene,.bx-cell.b-text,.bx-cell.b-world{grid-column:span 6}.bx-thread-demo .cx-stage{height:480px}.hm-install{margin-left:0}.hm-components{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.bx-play,.bx-title span,.hm-cta,.hm-link span{transition:none}}.hmc{--hmc-bg:#0c0c0e;--hmc-bar:#131316;--hmc-line:rgb(255 255 255/0.07);--hmc-ink:#ededef;--hmc-muted:#8b8b94;--hmc-quiet:#4d4d55;position:relative;width:100%;overflow:hidden;border-radius:22px;background:var(--hmc-bg);color:var(--hmc-ink);box-shadow:0 0 0 1px rgb(0 0 0/.9),inset 0 1px 0 rgb(255 255 255/.06),0 2px 4px rgb(0 0 0/.08),0 40px 80px -40px rgb(0 0 0/.55)}.dark .hmc{box-shadow:0 0 0 1px rgb(255 255 255/.1),inset 0 1px 0 rgb(255 255 255/.06),0 40px 80px -40px rgb(0 0 0/.9)}.hmc-bar{display:flex;align-items:center;gap:14px;padding:12px 12px 12px 18px;border-bottom:1px solid var(--hmc-line);background:var(--hmc-bar)}.hmc-dots{display:flex;flex:none;gap:7px}.hmc-dots i{width:11px;height:11px;border-radius:50%;background:rgb(255 255 255/.12)}.hmc-tabs{position:relative;z-index:0;display:flex;flex:1;justify-content:center}.hmc-tab{height:32px;padding:0 14px;border:0;border-radius:9px;background:none;color:var(--hmc-muted);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;transition:color .2s ease-out}.hmc-tab[data-active]{color:var(--hmc-ink)}.hmc-indicator{position:absolute;z-index:-1;top:var(--active-tab-top);left:var(--active-tab-left);width:var(--active-tab-width);height:var(--active-tab-height);border-radius:9px;background:rgb(255 255 255/.09);box-shadow:inset 0 0 0 1px rgb(255 255 255/.06);transition:left .32s cubic-bezier(.32,.72,0,1),width .32s cubic-bezier(.32,.72,0,1)}.hmc-copy{display:inline-flex;flex:none;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:9px;background:rgb(255 255 255/.06);color:var(--hmc-muted);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .16s,color .16s}.hmc-copy svg{width:15px;height:15px}.hmc-copy[data-copied]{color:#4ade80}@media (hover:hover) and (pointer:fine){.hmc-copy:hover,.hmc-tab:hover:not([data-active]){color:var(--hmc-ink)}.hmc-copy:hover{background:rgb(255 255 255/.1)}}.hmc-file{display:flex;align-items:center;gap:7px;padding:14px 24px 0;color:var(--hmc-muted);font-family:var(--font-mono,ui-monospace,monospace);font-size:12.5px}.hmc-file svg{width:14px;height:14px;color:var(--hmc-quiet)}.hmc-code{display:grid;align-content:start;min-height:340px;margin:0;padding:12px 24px 28px 12px;overflow:hidden;font-size:14px;line-height:1.8;tab-size:2}.hmc-code pre{margin:0;padding:0;border:0;background:transparent!important;white-space:pre-wrap;overflow-wrap:anywhere}.hmc-code pre,.hmc-code pre span{color:var(--shiki-dark)!important;background:transparent!important}.hmc .hmc-code pre code{counter-reset:line}.hmc .hmc-code pre code .line{position:relative;display:inline-block;width:100%;min-height:1.8em;padding-left:3em!important}.hmc .hmc-code pre code .line:before{position:absolute;left:0;width:2em;color:var(--hmc-quiet)!important;font-variant-numeric:tabular-nums;text-align:right;content:counter(line);counter-increment:line;user-select:none}.hmc-copy:focus-visible,.hmc-tab:focus-visible{outline:2px solid rgb(255 255 255/.7);outline-offset:2px}@media (prefers-reduced-motion:reduce){.hmc-indicator{transition:none}}@media (max-width:560px){.hmc-bar{gap:8px;padding:10px}.hmc-dots{display:none}.hmc-tabs{justify-content:flex-start}.hmc-tab{padding:0 10px;font-size:13px}.hmc-copy span{display:none}.hmc-file{padding:12px 16px 0}.hmc-code{min-height:0;padding:10px 16px 22px 4px;font-size:12.5px}}.qx-item{border-bottom:1px solid var(--color-fd-border)}.qx-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;font-size:16px;font-weight:500;cursor:pointer;list-style:none}.qx-item summary::-webkit-details-marker{display:none}.qx-icon{position:relative;flex:none;width:12px;height:12px}.qx-icon:after,.qx-icon:before{content:"";position:absolute;top:5.5px;left:0;width:12px;height:1.5px;background:var(--color-fd-muted-foreground);transition:transform .25s}.qx-icon:after{transform:rotate(90deg)}.qx-item[open] .qx-icon:after{transform:rotate(0deg)}.qx-item p{margin:0 0 20px;font-size:15px;line-height:1.65;color:var(--color-fd-muted-foreground)}.hm-hero.center{position:relative;display:grid;justify-items:center;text-align:center;padding:clamp(40px,5vw,64px) 0 clamp(28px,3vw,40px)}.hm-hero.center:before{content:"";position:absolute;inset:12% 14%;z-index:-1;background:radial-gradient(closest-side,color-mix(in oklab,var(--color-fd-background) 78%,transparent) 45%,transparent);pointer-events:none}.hm-hero.center h1{max-width:16ch;margin-top:18px;font-size:clamp(38px,4.6vw,64px)}.hm-hero.center .hm-lead{max-width:62ch;margin:18px auto 0;font-size:16px}.hm-hero.center .hm-actions{justify-content:center;margin-top:26px}.hm-hero.center .hm-install{margin-left:6px}.hm-section.first{padding-top:clamp(24px,3vw,40px)}.hs{display:grid;gap:18px;max-width:var(--hm-max);margin:0 auto clamp(56px,8vw,96px)}.hs-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;justify-self:center;padding:4px;border:1px solid var(--hm-line);background:var(--color-fd-card)}.hs-tab,.hs-tabs{border-radius:999px}.hs-tab{position:relative;overflow:hidden;padding:7px 15px;font-size:13.5px;font-weight:500;color:var(--hm-muted);transition:color .2s,background-color .2s}@media (hover:hover) and (pointer:fine){.hs-tab:hover{color:var(--hm-ink)}}.hs-tab[aria-selected=true]{background:var(--hm-ink);color:var(--color-fd-background)}.hs-timer{position:absolute;left:14px;right:14px;bottom:4px;height:1.5px;border-radius:1px;background:currentColor;opacity:.45;transform-origin:left;animation:hs-timer linear forwards}@keyframes hs-timer{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.hs-stage{position:relative;display:grid;place-items:center;min-height:720px;padding:clamp(16px,4vw,48px);border:1px solid var(--hm-line);border-radius:28px;background-color:var(--color-fd-muted);box-shadow:inset 0 1px 0 rgb(255 255 255/.6),0 40px 80px -48px rgb(0 0 0/.25)}.hs-demo{width:min(100%,860px);animation:hs-in .5s cubic-bezier(.2,.7,.2,1)}.hs-demo>*{margin:0!important}@keyframes hs-in{0%{opacity:0;transform:translateY(10px) scale(.985)}}.hs-caption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:8px 18px;text-align:center}.hs-caption p{max-width:60ch;margin:0;font-size:15px;color:var(--hm-muted);animation:hs-in .4s ease-out}@media (max-width:640px){.hs-stage{min-height:0;padding:6px;border-radius:20px}}@media (prefers-reduced-motion:reduce){.hs-caption p,.hs-demo,.hs-timer{animation:none}}.hg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}.hg-card{display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid var(--hm-line);border-radius:20px;background:var(--color-fd-card);transition:border-color .2s,transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s}.hg-card.wide{grid-column:span 2}@media (hover:hover) and (pointer:fine){.hg-card:hover{border-color:color-mix(in oklab,var(--hm-ink) 25%,transparent);transform:translateY(-2px);box-shadow:0 18px 40px -24px rgb(0 0 0/.3)}}.hg-card .rm-preview{aspect-ratio:auto;height:300px}.hg-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 16px;border-top:1px solid var(--hm-line)}.hg-meta>span{display:grid;gap:3px}.hg-meta strong{font-size:15px;font-weight:600;letter-spacing:-.01em}.hg-meta>span>span{font-size:13.5px;color:var(--hm-muted)}.hg-arrow{width:18px;height:18px;flex:none;color:var(--hm-muted);transition:transform .2s,color .2s}@media (hover:hover) and (pointer:fine){.hg-meta:hover .hg-arrow{color:var(--hm-ink);transform:translate(2px,-2px)}}.hg-card .rm-preview{height:340px}.hg.small{grid-template-columns:repeat(5,minmax(0,1fr))}.hg.small .rm-preview{height:200px}.hg.small .hg-meta>span>span{font-size:12.5px}@media (max-width:900px){.hg,.hg.small{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.hg,.hg.small{grid-template-columns:minmax(0,1fr)}.hg-card.wide{grid-column:auto}.hg-card .rm-preview{height:280px}}.hc{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;margin-top:32px}.hc-tile{overflow:hidden;border:1px solid var(--hm-line);border-radius:24px;background:#0f0f12}.hc-tile>*{margin:0!important}.hc-tile.globe{display:grid;align-content:center;padding:24px 12px 16px;background:radial-gradient(70% 60% at 50% 45%,rgb(56 120 255/.12),transparent 70%),#0b0b10}.hc-hint{margin:8px 0 0;text-align:center;font-size:12.5px;color:#71717a}@media (max-width:900px){.hc{grid-template-columns:minmax(0,1fr)}}.hm-dark{position:relative;overflow:hidden;margin:clamp(40px,6vw,72px) 0;background:#0b0b0e;color:#fafafa;--hm-ink:#fafafa;--hm-muted:#a1a1aa;--hm-line:rgb(255 255 255/0.09)}.hm-dark-glow{position:absolute!important;inset:auto 0 0 0;height:55%;opacity:.22;mask-image:linear-gradient(0deg,black,transparent)}.hm-dark-inner{position:relative;max-width:calc(var(--hm-max) + 2 * var(--hm-pad));margin:0 auto;padding:clamp(64px,9vw,112px) var(--hm-pad)}.hm-dark-hero{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:32px}.hm-dark .hm-head h2{color:#fafafa}.hm-dark .hm-kicker{color:#f97316}.hm-dark-scene{border:1px solid var(--hm-line);border-radius:24px;background:radial-gradient(60% 60% at 50% 45%,rgb(249 115 22/.1),transparent 70%)}.hg.dark-band .hg-card{background:#111114}.hg.dark-band .hg-card,.hg.dark-band .hg-meta{border-color:var(--hm-line)}.hg.dark-band .rm-preview{background:#0b0b0e}@media (max-width:900px){.hm-dark-hero{grid-template-columns:minmax(0,1fr)}}.hm-hero-band{position:relative;isolation:isolate}.hm-new{display:inline-flex;align-items:center;gap:8px;padding:3px 12px 3px 3px;border:1px solid var(--hm-line);border-radius:999px;background:var(--color-fd-card);font-size:13px;color:var(--hm-muted);transition:border-color .2s,color .2s}.hm-new span:first-child{padding:2px 8px;border-radius:999px;background:var(--hm-ink);color:var(--color-fd-background);font-size:11.5px;font-weight:600}@media (hover:hover) and (pointer:fine){.hm-new:hover{border-color:color-mix(in oklab,var(--hm-ink) 30%,transparent);color:var(--hm-ink)}}.hst{position:relative;margin-bottom:clamp(64px,9vw,112px);padding:clamp(16px,2.2vw,30px);border:1px solid var(--hm-line);border-radius:28px;background:radial-gradient(120% 90% at 50% -10%,color-mix(in oklab,var(--hm-ink) 5%,transparent),transparent 55%),color-mix(in oklab,var(--hm-ink) 3%,var(--color-fd-background))}.hst:before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:linear-gradient(color-mix(in oklab,var(--hm-ink) 4%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in oklab,var(--hm-ink) 4%,transparent) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(120% 90% at 50% 0,#000,transparent 70%);mask-image:radial-gradient(120% 90% at 50% 0,#000,transparent 70%);opacity:.45;pointer-events:none}.hst>.hst-thread{position:relative}.hst-thread{min-width:0;max-width:920px;margin:0 auto}.hst-thread>.cx{margin:0;border:1px solid var(--cx-border);border-radius:20px;box-shadow:0 1px 2px rgb(0 0 0/.03)}.hst-placeholder{max-width:920px;height:680px;margin:0 auto;border-radius:20px}.hst-placeholder,.hst-window{background:var(--color-fd-card)}.hst-window{display:flex;flex-direction:column;min-width:0;margin:0;overflow:hidden;border:1px solid var(--hm-line);border-radius:18px}.hst-window figcaption{display:flex;align-items:center;gap:6px;padding:12px 16px;border-bottom:1px solid var(--hm-line);font-size:12.5px;color:var(--hm-muted)}.hst-window figcaption i{width:10px;height:10px;border-radius:50%;background:color-mix(in oklab,var(--hm-ink) 14%,transparent)}.hst-file{margin-left:8px;font-family:var(--font-mono)}.hst-window-body{flex:1;overflow:auto}.hst-code{margin:0;padding:18px 0;font-family:var(--font-mono);font-size:13.5px;line-height:1.75;white-space:pre}.hst-line{display:block;min-height:1.75em;padding:0 22px}.hst-token{color:var(--shiki-light,var(--hm-ink));transition:color .45s ease}.dark .hst-token{color:var(--shiki-dark,var(--hm-ink))}.hst-line.hst-changed{animation:hst-changed 1.6s cubic-bezier(.2,.7,.2,1)}@keyframes hst-changed{0%,25%{background:color-mix(in oklab,var(--hm-ink) 12%,transparent);box-shadow:inset 2px 0 0 var(--hm-ink)}to{background:transparent;box-shadow:inset 2px 0 0 transparent}}@media (prefers-reduced-motion:reduce){.hst-line.hst-changed{animation:none;background:color-mix(in oklab,var(--hm-ink) 8%,transparent)}}@media (max-width:1000px){.hst{grid-template-columns:minmax(0,1fr)}.hst-window.code{display:none}}@media (max-width:860px){.hst{padding:10px;border-radius:20px}}.hp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.hp,.hp-filter{margin-top:28px}.hp-filter-bar{position:sticky;top:72px;z-index:20;isolation:isolate;padding:18px 0 16px;background:var(--color-fd-background)}.hp-filter-bar:before{position:absolute;z-index:-1;top:-32px;right:0;left:0;height:32px;background:inherit;content:""}.hp-filter .hp{margin-top:0}.hp-chips{display:flex;flex-wrap:wrap;gap:8px}.hp-chip{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;border:0;border-radius:999px;background:color-mix(in oklab,var(--color-fd-foreground) 6%,var(--color-fd-background));color:color-mix(in oklab,var(--color-fd-foreground) 80%,transparent);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background-color .16s ease-out,color .16s ease-out,transform .16s ease-out}.hp-chip svg{margin-right:-4px;opacity:.7}.hp-chip[data-pressed]{background:var(--color-fd-foreground);color:var(--color-fd-background)}.hp-chip:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.hp-chip:not([data-pressed]):hover{background:color-mix(in oklab,var(--color-fd-foreground) 10%,var(--color-fd-background));color:var(--color-fd-foreground)}}.hp-chip:focus-visible{outline:2px solid var(--color-fd-foreground);outline-offset:2px}.hp-gallery-end{position:relative;isolation:isolate;display:flex;justify-content:center;padding:28px 16px 12px}.hp-gallery-fog{position:absolute;z-index:-1;inset:-100px 0 0;pointer-events:none;background:linear-gradient(to bottom,transparent,color-mix(in oklab,var(--color-fd-background) 80%,transparent) 45%,var(--color-fd-background) 72%)}.hp-gallery-link{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 22px;border:1px solid var(--hm-line);border-radius:999px;background:var(--color-fd-background);color:var(--hm-ink);font-size:15px;font-weight:500;text-decoration:none;box-shadow:0 3px 12px color-mix(in oklab,var(--hm-ink) 6%,transparent);touch-action:manipulation}@media (hover:hover){.hp-gallery-link:hover{background:color-mix(in oklab,var(--hm-ink) 4%,var(--color-fd-background))}}.hp-gallery-link:focus-visible{outline:2px solid var(--hm-ink);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hp-card{display:grid;grid-template-rows:1fr;min-height:456px;overflow:hidden;border:1px solid color-mix(in oklab,var(--hm-ink) 3%,transparent);border-radius:24px;background:color-mix(in oklab,var(--hm-ink) 3%,var(--color-fd-background));container-type:inline-size}.hp-card.short{min-height:380px}.hp-card.short .hp-stage{padding:64px 40px}.hp[data-masonry]{grid-auto-rows:1px;row-gap:0;align-items:start}.hp[data-masonry] .hp-card.tall{min-height:856px}.hp[data-masonry]>*{margin-bottom:16px}.hp-card.wide{grid-column:span 2}.hp-card.full,.hp-pair{grid-column:1/-1}.hp-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}.hp-pair .hp-card{min-width:0;min-height:500px}.hp-pair .hp-stage>*{width:100%}@media (min-width:1001px){.hp-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}.hp-stage{display:grid;grid-template-columns:minmax(0,1fr);place-items:center;min-width:0;padding:84px 64px 40px}.hp-stage>*{min-width:0;max-width:100%;margin:0!important;border:0!important;box-shadow:none!important}.hp-card .cx[data-variant=preview] .cx-stage{height:auto;max-height:none;-webkit-mask-image:none;mask-image:none}.hp-stage>.otp{background:var(--otp-surface)!important}.hp-stage>.em-demo{display:grid;width:100%;place-items:center}.hp-card{position:relative}.hp-card-action{position:absolute;z-index:2;top:16px;display:grid;width:38px;height:38px;place-items:center;border:1px solid color-mix(in oklab,var(--hm-ink) 15%,transparent);border-radius:999px;background:transparent;color:var(--hm-ink);text-decoration:none;transition:background-color .15s ease-out,transform .15s ease-out;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.hp-card-action svg{width:18px;height:18px}@media (hover:hover) and (pointer:fine){.hp-card-action:hover{background:var(--color-fd-accent)}}.hp-card-action:active{transform:scale(.96)}.hp-card-action:focus-visible{outline:2px solid var(--hm-ink);outline-offset:2px}.hp-open{right:16px}.hp-play{right:62px}.dark .hm .hp-card{background:#161619;border-color:rgb(255 255 255/.06)}.hp-foot{display:flex;align-items:baseline;gap:10px;padding:14px 18px 16px;border-top:1px solid var(--hm-line);background:var(--color-fd-card)}.hp-kicker{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--hm-muted)}.hp-doc-link{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--hm-ink);font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;transition:color .16s ease-out,transform .16s ease-out}.hp-doc-link span{transition:transform .16s ease-out}@media (hover:hover) and (pointer:fine){.hp-doc-link:hover{color:var(--color-fd-primary)}.hp-doc-link:hover span{transform:translateX(2px)}}.hp-doc-link:focus-visible{outline:2px solid var(--hm-ink);outline-offset:3px;border-radius:2px}.hp-card .gx-seg{display:none}.hp-card.wide .hp-stage>.co{width:100%}.hp-card:has(.co){min-height:740px}.hp-stage>.relative{width:100%}.hp-card:has(.co) .hp-stage{place-items:start center}@media (max-width:1500px){.hp{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1100px){.hp{grid-template-columns:minmax(0,1fr);justify-items:center}.hp-card,.hp-card.full,.hp-card.tall,.hp-card.wide{width:100%;max-width:none}.hp-filter-bar{position:relative;top:auto}.hp-filter-bar:before{display:none}.hp-chips{flex-wrap:nowrap;margin:0 -16px;padding:0 16px;overflow-x:auto;scrollbar-width:none}.hp-card:not(.wide,.full,.tall){aspect-ratio:auto}.hp-card.tall,.hp-card.wide{grid-column:auto;grid-row:auto}}@media (max-width:640px){.hp-filter-bar{top:auto}.hm{--hm-pad:12px}}.hp-card.dark{--hm-ink:#fafafa;--hm-muted:#a1a1aa;--hm-line:rgb(255 255 255/0.09);background:#0b0b0e;color:#fafafa}.hp-card.dark .hp-foot{background:#111114}.hp-card.dark .hp-stage{padding:0}.hp-card.dark .hp-stage>*{width:100%;border-radius:0!important}.hp-card.wide .rm-world-canvas{height:440px}.hp-card.dark .rm-world{padding:24px 0 28px}.hp-card.full .hp-stage>*,.hp-card.wide .hp-stage>*{width:100%}.hp{grid-auto-flow:row dense}.hp-card.tall{grid-row:span 2}.hp-card.tall .hp-stage{padding:84px 64px 40px;place-items:stretch}.hp-card.tall .hp-stage>*{width:100%;height:100%!important}.hp-card.wide.tall .hp-stage{place-items:center}.hp-card.wide.tall .hp-stage>.cx{align-self:center;justify-self:center;width:min(100%,760px);height:auto!important}@container (max-width: 560px){.hp-card.tall .hp-stage,.hp-stage{padding:72px 18px 28px}.hp-card.short .hp-stage{padding:54px 18px}}.hp-card.bleed .hp-stage{padding:0;place-items:stretch}.hp-card.bleed .hp-stage>*{width:100%;min-height:100%;margin:0!important;border-radius:0!important}.hp-card.bleed .cx{border:0;box-shadow:none}.hp-stage>.cx{width:100%;max-width:760px;border-radius:20px}.hm-hero h1 span{color:inherit}.hm-hero h1 .hm-line{display:inline-block}.hm-hero h1 .hm-word,.hm-hero h1 .hm-word span{color:var(--hm-ink)}.hm-hero h1 .hm-word{position:relative;display:inline-block;white-space:nowrap;vertical-align:bottom;transition:width .7s cubic-bezier(.22,1,.36,1)}.hm-hero h1 .hm-ruler{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none}@media (prefers-reduced-motion:reduce){.hm-hero h1 .hm-word{transition:none}}.hp-stage>.hr{min-height:540px}.hp-card:has(.is) .hp-stage{place-items:start center;padding-top:56px}.hp-card.bare .hp-stage>*,.hp-card.bare .hp-stage>*>*{border-color:transparent!important;background:transparent!important;box-shadow:none!important}.hm-hero.split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:end;gap:clamp(32px,5vw,96px);padding:clamp(64px,9vw,128px) 0 clamp(48px,6vw,80px);border-bottom:1px solid var(--hm-line)}.hm-hero.split h1{max-width:none;margin-top:28px;font-size:clamp(48px,7.2vw,112px);font-weight:600;line-height:.92;letter-spacing:-.06em;text-wrap:nowrap}.hm-hero.split h1>span:first-child{color:var(--hm-muted)}.hm-hero-side{display:grid;justify-items:start;max-width:460px;padding-bottom:6px}.hm-hero.split .hm-lead{margin:0;color:var(--hm-ink);font-size:clamp(16px,1.3vw,18px);line-height:1.55}.hm-hero.split .hm-actions{margin-top:28px}.hm-hero.split .hm-cta{height:46px;padding:0 22px}.hm-hero.split .hm-install{margin:14px 0 0}.hm-hero.split .hm-install .rm-command{padding:0;border:0;background:none;color:var(--hm-muted)}.hm-hero.split .hm-install .rm-command button{padding:4px 8px}.hm-section.first{padding-top:clamp(16px,2vw,28px)}.hm-section.first .hp-filter{margin-top:0}@media (max-width:1000px){.hm-hero.split{grid-template-columns:minmax(0,1fr);align-items:start}.hm-hero.split h1{font-size:clamp(44px,11vw,88px);text-wrap:balance}}.hm-hero.split h1 .hm-word{--hm-select:oklch(0.6 0.2 255);--hm-handle:10px;margin-inline:.08em}.hm-hero.split h1 .hm-word:after,.hm-hero.split h1 .hm-word:before{position:absolute;inset:.06em -.08em -.02em;pointer-events:none;content:""}.hm-hero.split h1 .hm-word:before{z-index:-1;border:1.5px solid var(--hm-select);background:color-mix(in oklab,var(--hm-select) 7%,transparent)}.hm-hero.split h1 .hm-word:after{--hm-half:calc(var(--hm-handle) / -2 + 0.75px);inset:calc(.06em + var(--hm-half)) calc(-.08em + var(--hm-half)) calc(-.02em + var(--hm-half));--hm-inner:linear-gradient(var(--color-fd-background),var(--color-fd-background));--hm-outer:linear-gradient(var(--hm-select),var(--hm-select));background:var(--hm-inner) 1.5px 1.5px /calc(var(--hm-handle) - 3px) calc(var(--hm-handle) - 3px) no-repeat,var(--hm-inner) calc(100% - 1.5px) 1.5px /calc(var(--hm-handle) - 3px) calc(var(--hm-handle) - 3px) no-repeat,var(--hm-inner) 1.5px calc(100% - 1.5px) /calc(var(--hm-handle) - 3px) calc(var(--hm-handle) - 3px) no-repeat,var(--hm-inner) calc(100% - 1.5px) calc(100% - 1.5px) /calc(var(--hm-handle) - 3px) calc(var(--hm-handle) - 3px) no-repeat,var(--hm-outer) 0 0 /var(--hm-handle) var(--hm-handle) no-repeat,var(--hm-outer) 100% 0 /var(--hm-handle) var(--hm-handle) no-repeat,var(--hm-outer) 0 100% /var(--hm-handle) var(--hm-handle) no-repeat,var(--hm-outer) 100% 100% /var(--hm-handle) var(--hm-handle) no-repeat}@media (max-width:640px){.hm-hero.split h1 .hm-word{--hm-handle:8px}}.hm-hero.split .hm-install-command>span{color:var(--hm-ink);font-weight:500}