.intro{display:none}html[data-intro=play]:not([data-motion=reduced]) .intro{--cps: 8.3333ms;--t1: .2s;--t3: calc(var(--t1) + var(--end) * var(--cps) + .15s);--t4: calc(var(--t3) + 1.2s);--t5: calc(var(--t4) + 2.45s);--t6: calc(var(--t5) + .32s);--t7: calc(var(--t6) + .85s);position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;touch-action:none;animation:intro-out 1ms var(--t7) forwards}.intro:before,.intro:after{content:"";position:absolute;inset:0 50% 0 0;background:linear-gradient(var(--grid-major) 1px,transparent 1px) 0 -1px / 64px 64px,linear-gradient(90deg,var(--grid-major) 1px,transparent 1px) -1px 0 / 64px 64px,var(--ground);border:0 solid transparent;border-right-width:1px;--x: -100%;animation:intro-part .85s cubic-bezier(.65,0,.35,1) var(--t6) forwards,intro-edge 1ms var(--t6) forwards}.intro:after{inset:0 0 0 50%;background-position:0 -1px,calc(-50vw - 1px) 0,0 0;border-width:0 0 0 1px;--x: 100%}.intro[data-skip]:before,.intro[data-skip]:after{border-color:var(--signal);animation:intro-skip .2s var(--ease-out) forwards}.intro[data-skip]>*{visibility:hidden}.intro-svg{position:relative;z-index:1;width:min(100% - 32px,680px,(100vh - 136px) * .968);height:auto;overflow:visible;animation:intro-out 80ms backwards}.intro-svg text{font:11.5px var(--font-mono);fill:var(--fg-2)}@media (orientation: landscape) and (max-height: 480px) and (min-width: 640px){.intro-svg{width:min(100% - 32px,680px,(100vh - 32px) * .968)}}.intro-pane{animation:intro-fade .4s var(--ease-io) var(--t4) forwards}.intro-box{fill:var(--panel);stroke:var(--rule-2)}.intro-rule{stroke:var(--rule)}.intro-reg{fill:none;stroke:var(--rule-3)}.intro-svg .intro-file,.intro-svg .intro-dist{font-size:10.5px;letter-spacing:.06em;fill:var(--fg-3);animation:intro-out 1ms var(--t3) forwards}.intro-svg .intro-dist{animation:intro-in 1ms var(--t3) backwards}.intro-svg .intro-k{fill:var(--model)}.intro-svg .intro-s{fill:var(--data)}.intro-svg .intro-c{fill:var(--fg-3)}.intro-code rect{width:344px;height:15px;fill:var(--panel);stroke-width:1.5px;stroke-dasharray:0 703 15;--at: calc(var(--t1) + var(--c) * var(--cps));animation:intro-type calc(var(--n) * var(--cps)) steps(var(--n),start) var(--at) forwards,intro-lit calc(var(--n) * var(--cps)) var(--at)}.intro-oks text{font-size:10px;animation:intro-tick .2s var(--ease-out) calc(var(--t1) + var(--c) * var(--cps)) backwards}.intro-oks tspan{fill:var(--ok)}.intro-wipe{fill:var(--panel);stroke-width:1.5px;stroke-dasharray:0 668 360 308;transform-box:fill-box;animation:intro-wipe .45s var(--ease-io) var(--t3) backwards,intro-lit .45s var(--t3)}.intro-wire path{fill:none;stroke:var(--rule-3);stroke-dasharray:1;stroke-dashoffset:1;animation:intro-draw .5s var(--ease-out) calc(var(--t3) + .18s + var(--i) * 42ms) forwards}.intro-wire .intro-3{stroke:var(--fg-faint);stroke-width:2px}.intro-wire .intro-fg{stroke:var(--fg)}.intro-wire .intro-cu{stroke:var(--signal)}.intro-wire .intro-te{stroke:var(--data-dim)}.intro-wire .intro-vi{stroke:var(--model)}.intro-beats text{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;text-anchor:middle;fill:var(--fg-faint);--at: calc(var(--t1) + var(--c, 0) * var(--cps));animation:intro-beat 1ms var(--at) forwards}.intro-beats text:first-child{text-anchor:start;--at: 0s}.intro-beats text:last-child{text-anchor:end;--at: var(--t3)}.intro-mk{transform:translate(25px,32.6px) scale(.25);animation:intro-in 1ms calc(var(--t3) + .2s) backwards,intro-grow .7s var(--ease-io) var(--t4) forwards}.intro-b{fill:var(--fg);transform-box:fill-box;transform-origin:center;animation:intro-fold .28s var(--ease-io) var(--t5) forwards}.intro-b2{fill:var(--signal);animation:intro-seam .32s cubic-bezier(.7,0,.84,0) var(--t5) forwards,intro-out 1ms var(--t6) forwards}.intro-lk{animation:intro-in 1ms calc(var(--t4) + .5s) backwards,intro-fade .3s var(--ease-io) calc(var(--t5) - .12s) forwards}.intro-svg .intro-nm{font:700 30px var(--font-sans);letter-spacing:-.01em;text-anchor:middle;fill:var(--fg)}.intro-svg .intro-nm2{font-weight:400;fill:var(--fg-2)}.intro-nc{fill:var(--ground);stroke-width:2px;stroke-dasharray:0 558 38;animation:intro-set .5s var(--ease-io) calc(var(--t4) + .52s) both,intro-lit .5s calc(var(--t4) + .52s)}.intro-svg .intro-tg{font-size:13px;text-anchor:middle;animation:intro-rise .45s var(--ease-out) calc(var(--t4) + .96s) backwards}.intro-foot{position:absolute;z-index:1;inset:auto var(--gut) max(var(--gut),env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);animation:intro-out 1ms var(--t5) forwards}.intro-foot .prov{animation:intro-out 1ms var(--t4) forwards}.intro-skip{min-height:44px;margin-left:auto;padding:0 16px;font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg);background:var(--panel);border:1px solid var(--rule-3);border-radius:var(--r-2);transition:border-color var(--d-2) var(--ease-out)}.intro-skip:hover{border-color:var(--fg-3)}@keyframes intro-in{0%,to{visibility:hidden}}@keyframes intro-out{0%,to{visibility:hidden;pointer-events:none}}@keyframes intro-fade{to{opacity:0}}@keyframes intro-tick{0%{opacity:0;transform:translate(-4px)}}@keyframes intro-rise{0%{opacity:0;transform:translateY(5px)}}@keyframes intro-lit{0%,to{stroke:var(--signal)}}@keyframes intro-beat{0%,to{fill:var(--fg)}}@keyframes intro-type{to{transform:translate(calc(var(--n) * 6.9px))}}@keyframes intro-wipe{0%{transform:translateY(-100%)}}@keyframes intro-draw{to{stroke-dashoffset:0}}@keyframes intro-grow{to{transform:translate(140px,100px) scale(4)}}@keyframes intro-set{to{transform:translate(260px)}}@keyframes intro-fold{to{transform:translate(var(--x));opacity:0}}@keyframes intro-seam{to{transform:scale(.07,60)}}@keyframes intro-part{to{transform:translate(var(--x))}}@keyframes intro-skip{to{transform:translate(var(--x))}}@keyframes intro-edge{0%,to{border-color:var(--signal)}}@media print{.intro{display:none!important}}.lp-typer{container:lp-typer / inline-size;margin-top:var(--s-6)}.lp-typer-line{display:flex;flex-direction:column;font-family:var(--font-mono);font-size:var(--t-readout);font-size:min(var(--t-readout),3.6cqi);line-height:1.7;white-space:nowrap;color:var(--fg)}.lp-typer-prompt{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3)}.lp-typer-prompt b{color:var(--signal-hi)}.lp-typer-phrase{position:relative;align-self:flex-start}.lp-typer-text{display:block;clip-path:inset(0 calc(100% - var(--n) * 1ch) 0 0)}.lp-typer-caret{position:absolute;left:2px;top:.25em;width:.5em;height:1.2em;background:var(--signal);transform:translate(calc(var(--n) * 1ch))}[data-typer][data-on=hold] .lp-typer-caret{animation:lp-blink 1s steps(1) infinite}@keyframes lp-blink{50%{opacity:0}}@container lp-typer (min-width: 520px){.lp-typer-line{flex-direction:row;align-items:baseline;gap:var(--s-4);font-size:var(--t-code)}}.lp-offers{container:lp-offers / inline-size;display:grid;gap:var(--col-gap);margin-top:var(--s-7)}.lp-offer{display:grid}.lp-scene{display:flex;flex-direction:column;justify-content:center;gap:var(--s-3);padding-block:var(--s-4) var(--s-3);border-bottom:1px solid var(--rule);border-radius:5px 5px 0 0;background:linear-gradient(var(--grid-major) 1px,transparent 0) 0 -1px / 16px 16px,linear-gradient(90deg,var(--grid-major) 1px,transparent 0) -1px 0 / 16px 16px,var(--ground)}.lp-scene .prov{align-self:flex-start;margin-left:var(--s-3)}.lp-offer-copy{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-3);padding:var(--s-5)}.lp-offer-h{font-size:clamp(1.625rem,1.2rem + 1.7vw,2.5rem);font-weight:600;line-height:1.08;letter-spacing:-.03em;text-wrap:balance;color:var(--fg)}.lp-get{margin-top:var(--s-3)}@container lp-offers (min-width: 860px){.lp-offer{grid-template-columns:minmax(0,11fr) minmax(0,10fr)}.lp-offer:nth-child(2n) .lp-scene{order:1}.lp-scene{margin:var(--s-3);padding:var(--s-6) var(--s-5) var(--s-3);border:1px solid var(--rule);border-radius:var(--r-1)}.lp-scene .prov{margin-left:0}.lp-offer-copy{justify-content:center;padding:var(--s-7) clamp(24px,4vw,64px)}}.lp-art{width:100%;max-width:540px;height:auto;margin-inline:auto;font:10.5px var(--font-mono);color:var(--fg-3)}.lp-art text{fill:currentColor}.lp-cap{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}.lp-f{fill:var(--panel);stroke:var(--rule-3)}.lp-ln{fill:none;stroke:var(--rule-3)}.lp-sk{fill:var(--rule-3)}.lp-fl{fill:currentColor}.lp-st{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.lp-pk{fill:currentColor;color:var(--data);offset-rotate:0deg}.lp-hi{color:var(--fg)}.lp-c{color:var(--signal-hi)}.lp-d{color:var(--data)}.lp-m{color:var(--model)}.lp-w{color:var(--warn)}.lp-ok{color:var(--ok)}.lp-tmp,.lp-pk{opacity:0}.lp-ty{--o: 1;--c: inset(0 100% 0 0);--c1: inset(0 -1px 0 0)}.lp-dr{--o: 1;--s: 1;stroke-dasharray:1}[data-playing=true] [class*=lp-k]{animation:9s var(--ease-out) var(--d, 0s) var(--scene-iter, infinite) backwards}[data-playing=true] .lp-ty{animation-timing-function:steps(12)}[data-playing=true] .lp-k1{animation-name:lp-k1}[data-playing=true] .lp-k2{animation-name:lp-k2}[data-playing=true] .lp-k3{animation-name:lp-k3}[data-playing=true] .lp-k4{animation-name:lp-k4}[data-playing=true] .lp-k5{animation-name:lp-k5}[data-playing=true] .lp-tmp{animation:lp-tmp 9s linear var(--d, 0s) var(--scene-iter, infinite)}@supports (offset-path: path("M0 0")){[data-playing=true] .lp-pk{animation:lp-go 9s linear var(--d, 0s) var(--scene-iter, infinite)}}html[data-motion=full] [data-playing=true] .lp-act{animation:lp-loop 9s linear infinite}@keyframes lp-k1{0%,10%{opacity:var(--o, 0);transform:translate(var(--x, 0),var(--y, 0));clip-path:var(--c, none);stroke-dashoffset:var(--s, 0)}15%,to{opacity:1;transform:none;clip-path:var(--c1, none);stroke-dashoffset:0}}@keyframes lp-k2{0%,24%{opacity:var(--o, 0);transform:translate(var(--x, 0),var(--y, 0));clip-path:var(--c, none);stroke-dashoffset:var(--s, 0)}29%,to{opacity:1;transform:none;clip-path:var(--c1, none);stroke-dashoffset:0}}@keyframes lp-k3{0%,38%{opacity:var(--o, 0);transform:translate(var(--x, 0),var(--y, 0));clip-path:var(--c, none);stroke-dashoffset:var(--s, 0)}43%,to{opacity:1;transform:none;clip-path:var(--c1, none);stroke-dashoffset:0}}@keyframes lp-k4{0%,52%{opacity:var(--o, 0);transform:translate(var(--x, 0),var(--y, 0));clip-path:var(--c, none);stroke-dashoffset:var(--s, 0)}57%,to{opacity:1;transform:none;clip-path:var(--c1, none);stroke-dashoffset:0}}@keyframes lp-k5{0%,66%{opacity:var(--o, 0);transform:translate(var(--x, 0),var(--y, 0));clip-path:var(--c, none);stroke-dashoffset:var(--s, 0)}71%,to{opacity:1;transform:none;clip-path:var(--c1, none);stroke-dashoffset:0}}@keyframes lp-loop{0%,9%,98%,to{opacity:0}10%,95%{opacity:1}}@keyframes lp-tmp{2%,26%{opacity:1}0%,28%,to{opacity:0}}@keyframes lp-go{0%{offset-distance:0%;opacity:0}2%,10%{opacity:1}12%,to{offset-distance:100%;opacity:0}}.lp-build{display:grid;gap:var(--s-6) var(--s-7);padding:var(--s-5)}.lp-build-col{display:grid;align-content:start;gap:var(--s-4);min-width:0}.lp-step-n{margin-right:var(--s-2);color:var(--signal-hi)}.lp-build-say{font-size:clamp(1.5rem,1.15rem + 1.5vw,2.25rem);font-weight:600;line-height:1.15;letter-spacing:-.03em;text-wrap:balance;color:var(--fg)}.lp-code{padding:var(--s-4);border:1px solid var(--rule-2);border-radius:var(--r-1);background:var(--ground);font-family:var(--font-mono);font-size:var(--t-code);line-height:1.9;color:var(--fg-2)}.lp-code span{display:block;width:fit-content;white-space:pre}.lp-ui{max-width:320px;margin:0}.lp-on{color:var(--on-signal);font-weight:600}.lp-build-cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3) var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--rule);font-size:var(--t-small);color:var(--fg-2)}@container lp-offers (min-width: 860px){.lp-build{grid-template-columns:5fr 4fr 4fr;padding:var(--s-7) clamp(24px,4vw,64px) var(--s-5)}.lp-build-cap{grid-column:1 / -1}}.lp-cta{padding-bottom:0}.lp-cta-box{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s-6) var(--s-7);padding:clamp(24px,5vw,64px)}.lp-cta-copy{flex:1 1 26rem;min-width:0}.lp-cta-act{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2)}.lp-cta-next{max-width:60ch;margin-top:var(--s-5);font-size:var(--t-small);color:var(--fg-2)}.sys-grid.sc-grid{display:flex;flex-wrap:wrap}.sc-grid .sc-card[hidden]{display:none}.sc-card{flex:1 1 340px;min-width:0;container-type:inline-size}.sc-card.sc-feature{flex-basis:100%}.sc-card:focus-within{border-color:var(--rule-3);background-color:var(--panel-2)}.sc-lay{flex:1;display:flex;flex-direction:column;gap:var(--s-4);min-width:0}.sc-copy{flex:1;display:flex;flex-direction:column;gap:var(--s-3);min-width:0}.sc-copy .h3{text-wrap:balance}.sc-copy .sys-link{align-self:flex-start}@media screen{.sc-card .sys-link{position:static}.sc-card .sys-link:after{content:"";position:absolute;inset:0}}@container (max-width: 369.98px){.sc-copy .sys-top{flex-direction:column;align-items:flex-start;gap:6px}}@container (max-width: 289.98px){.sc-dots{display:none}.sc-bar{gap:4px;padding-left:6px}.sc-bar .prov{gap:4px;padding-inline:5px;letter-spacing:0}}.sc-shot{display:flex;flex-direction:column;border:1px solid var(--rule-2);border-radius:var(--r-2);background:var(--ground);overflow:hidden;transition:border-color var(--d-2) var(--ease-out)}.sc-bar{position:relative;display:flex;align-items:center;gap:6px;min-height:30px;padding:3px 4px 3px 8px;border-bottom:1px solid var(--rule);font:11px var(--font-mono);color:var(--fg-3)}.sc-dots{flex:none;width:5px;height:5px;margin-right:14px;border-radius:50%;background:currentColor;box-shadow:7px 0,14px 0;opacity:.6}.sc-addr{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sc-bar:after{content:"";position:absolute;inset:auto 0 -1px;height:1px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform var(--d-3) var(--ease-out)}.sc-card:is(:hover,:focus-within) .sc-shot{border-color:var(--signal)}.sc-card:is(:hover,:focus-within) .sc-bar:after{transform:none}.sc-card:is(:hover,:focus-within) .sc-dots{color:var(--signal-hi);opacity:1}.sc-card:is(:hover,:focus-within) :is(.sc-addr,.sc-art){color:var(--fg-2)}html[data-motion=reduced] :is(.sc-shot,.sc-bar:after){transition:none}.sc-art{flex:1 0 208px;display:block;width:100%;font:11px var(--font-mono);color:var(--fg-3);fill:currentColor}.sc-art svg{overflow:visible}.sc-art text{dominant-baseline:central}.sc-cp{font-size:.91em;letter-spacing:.08em;text-transform:uppercase}.sc-lg{font-size:1.45em}.sc-g{fill:var(--ground)}.sc-ln{fill:none;stroke:var(--rule-3)}.sc-o{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sc-f{fill:var(--panel);stroke:var(--rule-3)}.sc-sk{fill:var(--rule-3)}.sc-ns,.sc-pt{fill:none;stroke:currentColor;vector-effect:non-scaling-stroke}.sc-ns{stroke-opacity:.6}.sc-pt{stroke-width:7;stroke-linecap:square}.sc-hi{color:var(--fg)}.sc-c{color:var(--signal-hi)}.sc-d{color:var(--data)}.sc-m{color:var(--model)}.sc-w{color:var(--warn)}.sc-x{color:var(--fail)}@container (min-width: 690px){.sc-lay{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s-6)}.sc-art{flex-basis:340px;font-size:13px}.sc-copy{padding:var(--s-3) var(--s-3) 0 0}.sc-copy .h3{font-size:clamp(1.75rem,1.1rem + 1.4vw,2.25rem);line-height:1.1}.sc-copy p{font-size:var(--t-body)}}@media print{.sc-shot{display:none}}.sc-dr{--s: 1}[data-playing=true] .sc-dr{stroke-dasharray:1}.sc-sl{--t: translateX(-10px)}.sc-up{--t: translateY(-10px)}.sc-gx{--t: scaleX(0)}.sc-gx,.sc-rs,.sc-run{transform-box:fill-box;transform-origin:0 50%}.sc-tmp{opacity:0}.sc-fw{fill:none;stroke:currentColor}[data-playing=true] [class*=sc-k]{animation:9s var(--ease-out) var(--scene-iter, infinite)}[data-playing=true] .sc-k1{animation-name:sc-k1}[data-playing=true] .sc-k2{animation-name:sc-k2}[data-playing=true] .sc-k3{animation-name:sc-k3}[data-playing=true] .sc-k4{animation-name:sc-k4}[data-playing=true] .sc-k5{animation-name:sc-k5}[data-playing=true] .sc-k6{animation-name:sc-k6}[data-playing=true] .sc-tmp{animation:sc-tmp 9s linear var(--scene-iter, infinite)}[data-playing=true] .sc-fw{animation:sc-fw 9s linear var(--scene-iter, infinite)}[data-playing=true] .sc-tk{animation:sc-tk 9s steps(1) var(--d, 0s) var(--scene-iter, infinite)}[data-playing=true] .sc-nb{animation:sc-nb 9s var(--ease-io) var(--scene-iter, infinite)}[data-playing=true] .sc-rs{animation:sc-rs 9s steps(1) var(--scene-iter, infinite)}[data-playing=true] .sc-run{animation:sc-run 9s linear var(--scene-iter, infinite)}html[data-motion=full] [data-playing=true] .sc-act{animation:sc-loop 9s linear infinite}@keyframes sc-k1{0%,3%{opacity:0;transform:var(--t, none);stroke-dashoffset:var(--s, 0)}8%,to{opacity:1;transform:none;stroke-dashoffset:0}}@keyframes sc-k2{0%,16%{opacity:0;transform:var(--t, none);stroke-dashoffset:var(--s, 0)}21%,to{opacity:1;transform:none;stroke-dashoffset:0}}@keyframes sc-k3{0%,29%{opacity:0;transform:var(--t, none);stroke-dashoffset:var(--s, 0)}34%,to{opacity:1;transform:none;stroke-dashoffset:0}}@keyframes sc-k4{0%,42%{opacity:0;transform:var(--t, none);stroke-dashoffset:var(--s, 0)}47%,to{opacity:1;transform:none;stroke-dashoffset:0}}@keyframes sc-k5{0%,55%{opacity:0;transform:var(--t, none);stroke-dashoffset:var(--s, 0)}60%,to{opacity:1;transform:none;stroke-dashoffset:0}}@keyframes sc-k6{0%,68%{opacity:0;transform:var(--t, none);stroke-dashoffset:var(--s, 0)}73%,to{opacity:1;transform:none;stroke-dashoffset:0}}@keyframes sc-loop{0%,99.5%,to{opacity:0}2%,97%{opacity:1}}@keyframes sc-tmp{0%,4%,16%,to{opacity:0}6%,11%{opacity:1}}@keyframes sc-fw{to{stroke-dashoffset:-180px}}@keyframes sc-tk{0%,25%,50%,75%,to{opacity:1}12%,37%,62%,87%{opacity:.3}}@keyframes sc-nb{0%,16%,60%,to{transform:none}26%,50%{transform:translate(-24px)}}@keyframes sc-run{0%,8%{transform:scaleX(0)}73%,to{transform:none}}@keyframes sc-rs{0%,60%{transform:none}27%{transform:scaleX(.45)}}
