.landing{--l-paper:#f1f4f1;--l-panel:#fff;--l-ink:#101511;--l-muted:#565d57;--l-faint:#828882;--l-seam:#d9ded8;--l-wash:#e4f1e6;--l-green:#078543;--l-green-bright:#22a448;--l-green-deep:#005d2c;--l-dark:#0a130d;--l-dark-panel:#101a13;--l-dark-seam:#232f26;--l-dark-muted:#879789;--l-mint:#b2e3bb;font-family:var(--font-landing-sans), "Instrument Sans", "Helvetica Neue", ui-sans-serif, system-ui, sans-serif;background:var(--l-paper);color:var(--l-ink);font-feature-settings:"ss01"}@supports (color:lab(0% 0 0)){.landing{--l-paper:lab(96.0179% -1.56954 1.45506);--l-panel:lab(100% 0 0);--l-ink:lab(6.33074% -2.93258 1.83583);--l-muted:lab(38.7075% -4.14005 2.63968);--l-faint:lab(56.0803% -3.47212 2.39638);--l-seam:lab(87.9366% -2.35337 2.18481);--l-wash:lab(93.8886% -5.91043 3.76443);--l-green:lab(48.4079% -43.6135 26.2959);--l-green-bright:lab(59.1585% -50.1886 36.9058);--l-green-deep:lab(34.1666% -35.9235 21.7202);--l-dark:lab(5.01435% -3.86976 1.95024);--l-dark-panel:lab(8.04625% -5.90779 2.97981);--l-dark-seam:lab(17.9322% -6.66873 3.92392);--l-dark-muted:lab(60.9334% -8.28847 5.2932);--l-mint:lab(85.9062% -22.2867 14.319)}}.landing ::selection{background:var(--l-green);color:#fff;color:lab(100% 0 0)}.l-mono{font-family:var(--font-landing-mono), "IBM Plex Mono", ui-monospace, "SF Mono", monospace}.l-kicker{font-family:var(--font-landing-mono), "IBM Plex Mono", ui-monospace, monospace;letter-spacing:.14em;text-transform:uppercase;font-size:.6875rem;font-weight:500}.l-hatch{background-image:repeating-linear-gradient(-45deg, var(--l-seam) 0 1px, transparent 1px 7px)}.l-dark .l-hatch,.l-hatch-dark{background-image:repeating-linear-gradient(-45deg, var(--l-dark-seam) 0 1px, transparent 1px 7px)}.l-rail{border-color:var(--l-seam)}.l-dark .l-rail{border-color:var(--l-dark-seam)}.l-plus{width:9px;height:9px;color:var(--l-faint);position:absolute}.l-plus:before,.l-plus:after{content:"";background:currentColor;position:absolute}.l-plus:before{width:1px;height:9px;top:0;left:4px}.l-plus:after{width:9px;height:1px;top:4px;left:0}.l-dither{background-color:var(--l-green);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cg fill='%23ffffff' fill-opacity='0.5'%3E%3Crect x='0' y='0' width='1' height='1'/%3E%3Crect x='4' y='2' width='1' height='1'/%3E%3Crect x='2' y='5' width='1' height='1'/%3E%3Crect x='6' y='6' width='1' height='1'/%3E%3C/g%3E%3C/svg%3E"), linear-gradient(135deg, var(--l-green-deep), var(--l-green) 55%, var(--l-green-bright))}.l-btn{font-family:var(--font-landing-mono), "IBM Plex Mono", ui-monospace, monospace;letter-spacing:.02em;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.15rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.l-btn:focus-visible{outline:2px solid var(--l-green-bright);outline-offset:2px}.l-btn-ink{background:var(--l-ink);color:var(--l-paper)}.l-btn-ink:hover{background:var(--l-green-deep)}.l-btn-ghost{border-color:var(--l-seam);background:var(--l-panel);color:var(--l-ink)}.l-btn-ghost:hover{border-color:var(--l-ink)}.l-dark .l-btn-ghost{border-color:var(--l-dark-seam);color:var(--l-mint);background:0 0}.l-dark .l-btn-ghost:hover{border-color:var(--l-mint)}.l-btn-green{background:var(--l-green);color:#fff;color:lab(100% 0 0)}.l-btn-green:hover{background:var(--l-green-deep)}.l-acc{border:1px solid var(--l-dark-seam);background:var(--l-dark-panel)}.l-acc+.l-acc{margin-top:.5rem}.l-acc>summary{cursor:pointer;color:#e7ede8;color:lab(93.1748% -2.95293 1.87835);justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.1rem;font-size:.9375rem;font-weight:500;list-style:none;display:flex}.l-acc>summary::-webkit-details-marker{display:none}.l-acc>summary:after{content:"+";font-family:var(--font-landing-mono), monospace;color:var(--l-dark-muted);border:1px solid var(--l-dark-seam);flex-shrink:0;place-items:center;width:1.6rem;height:1.6rem;display:grid}.l-acc[open]{border-color:color-mix(in oklch, var(--l-mint) 35%, var(--l-dark-seam))}.l-acc[open]>summary:after{content:"×"}@media (prefers-reduced-motion:no-preference){.l-rise{animation:.7s cubic-bezier(.2,.7,.2,1) both l-rise;animation-delay:var(--l-rise-delay,0s)}@keyframes l-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}}[data-rv]{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--rv-d,0s);transform:translateY(18px)}[data-rv].is-in{opacity:1;transform:none}.l-caret{vertical-align:text-bottom;background:var(--l-green);width:.55em;height:1em;margin-left:2px;display:inline-block}.l-caret.is-done{opacity:0;transition:opacity .3s .8s}.l-btn svg{transition:transform .18s}.l-btn:hover svg{transform:translate(3px)}.l-btn-ghost:hover svg{transform:translateY(3px)}.l-tile{transition:background-color .18s,color .18s}.l-tile:hover{background:var(--l-ink)}.l-tile:hover>span:last-child{color:var(--l-paper)}.l-tile:hover>svg{color:var(--l-green-bright);transform:translate(2px,-2px)}.l-tile>svg{transition:transform .18s,color .18s}.l-packet{background:var(--l-green-bright);width:7px;height:7px;position:absolute;top:50%;left:0;transform:translateY(-50%)}@media (prefers-reduced-motion:no-preference){.l-packet{animation:3s cubic-bezier(.45,0,.55,1) infinite l-packet}@keyframes l-packet{0%{opacity:0;left:0}10%{opacity:1}82%{opacity:1;left:calc(100% - 7px)}92%,to{opacity:0;left:calc(100% - 7px)}}.l-recv{animation:3s infinite l-recv}@keyframes l-recv{0%,80%{background:var(--l-wash)}86%,92%{background:#b2e7bc;background:lab(87.1303% -23.7829 15.291)}to{background:var(--l-wash)}}}@media (prefers-reduced-motion:reduce){.l-packet{display:none}}.l-marquee{width:max-content;display:flex}@media (prefers-reduced-motion:no-preference){.l-marquee{animation:40s linear infinite l-marquee}.l-marquee:hover{animation-play-state:paused}@keyframes l-marquee{to{transform:translate(-50%)}}}.l-acc>summary{transition:color .15s}.l-acc>summary:hover{color:var(--l-mint)}@media (prefers-reduced-motion:no-preference){.l-acc[open]>:not(summary){animation:.28s cubic-bezier(.2,.7,.2,1) l-acc-in}@keyframes l-acc-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}}.l-step{cursor:pointer;text-align:left;width:100%;transition:background-color .2s;position:relative}.l-step:before{content:"";background:var(--l-green-bright);transform-origin:top;width:2px;transition:transform .3s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.l-step:hover{background:color-mix(in oklch, var(--l-dark-panel) 60%, transparent)}.l-step[aria-selected=true]{background:var(--l-dark-panel)}.l-step[aria-selected=true]:before{transform:scaleY(1)}@media (prefers-reduced-motion:no-preference){.ha-plane{opacity:0;animation:.8s cubic-bezier(.2,.7,.2,1) forwards ha-rise;animation-delay:var(--ha-d,0s)}@keyframes ha-rise{0%{opacity:0;transform:translateY(26px)}to{opacity:var(--ha-o,1);transform:none}}.ha-slab{opacity:0;animation:.9s cubic-bezier(.3,.9,.35,1.15) .75s forwards ha-drop}@keyframes ha-drop{0%{opacity:0;transform:translateY(-56px)}60%{opacity:1}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){.ha-plane{opacity:var(--ha-o,1)}}.l-seq{transition:background-color .25s,color .25s,border-color .25s}.l-seq.is-lit{background:var(--l-green);color:#fff;border-color:#0000}.l-stat-row{transition:background-color .2s}.l-stat-row:hover{background:var(--l-wash)}.l-navlink{position:relative}.l-navlink:after{content:"";background:var(--l-green);height:2px;transition:transform .25s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.l-navlink.is-active{color:var(--l-ink)}.l-navlink.is-active:after{transform:scaleX(1)}@media (prefers-reduced-motion:no-preference){.ha-box{animation:7s cubic-bezier(.3,.7,.4,1) infinite ha-cycle}@keyframes ha-cycle{0%{opacity:0;transform:translateY(-58px)}8%{opacity:1;transform:translateY(0)}10.5%{transform:translateY(2.5px)}13%{transform:translateY(0)}80%{opacity:1;transform:translateY(0)}90%{opacity:0;transform:translateY(7px)}to{opacity:0;transform:translateY(-58px)}}.ha-ground{animation:7s infinite ha-ground}@keyframes ha-ground{0%,6%{opacity:0}9%{opacity:1.6}14%{opacity:1}80%{opacity:1}90%,to{opacity:0}}}.landing.l-docs{--background:var(--l-paper);--foreground:var(--l-ink);--card:var(--l-panel);--card-foreground:var(--l-ink);--muted:var(--l-panel);--muted-foreground:var(--l-muted);--border:var(--l-seam);--green:var(--l-green);--primary:var(--l-ink);--primary-foreground:var(--l-paper);--ring:var(--l-green-bright);--radius:.25rem}.l-docs .font-display{font-family:var(--font-landing-sans), "Instrument Sans", ui-sans-serif, system-ui, sans-serif;letter-spacing:-.022em;font-weight:600}.l-docs .font-mono,.l-docs code,.l-docs pre{font-family:var(--font-landing-mono), "IBM Plex Mono", ui-monospace, "SF Mono", monospace}.l-docs .font-numeric{font-family:var(--font-landing-mono), "IBM Plex Mono", ui-monospace, monospace;font-variant-numeric:tabular-nums}.l-docs .uppercase{font-family:var(--font-landing-mono), "IBM Plex Mono", ui-monospace, monospace;letter-spacing:.14em;font-weight:500}.l-docs [aria-current=page]{box-shadow:inset 2px 0 0 var(--l-green);background:var(--l-panel)}
