.emdash-image-media[data-astro-cid-6depetnu]{max-width:100%;height:auto}:where(:root.dark) .emdash-image--light,:where(:root.light) .emdash-image--dark{display:none}@media (prefers-color-scheme:dark){:where(:root:not(.light)) .emdash-image--light{display:none}}@media (prefers-color-scheme:light){:where(:root:not(.dark)) .emdash-image--dark{display:none}}.has-text-align-center[data-astro-cid-44ocxh3s]{text-align:center}.has-text-align-right[data-astro-cid-44ocxh3s]{text-align:right}.has-text-align-justify[data-astro-cid-44ocxh3s]{text-align:justify}.emdash-image[data-astro-cid-nzlefzml]{margin:1.5rem 0}.emdash-image[data-astro-cid-nzlefzml] img[data-astro-cid-nzlefzml]{max-width:100%;height:auto}.emdash-image[data-astro-cid-nzlefzml] figcaption[data-astro-cid-nzlefzml]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-image--align-left[data-astro-cid-nzlefzml],.emdash-image--align-right[data-astro-cid-nzlefzml]{width:fit-content;max-width:50%}.emdash-image--align-left[data-astro-cid-nzlefzml]{float:left;margin:0 1.5rem 1rem 0}.emdash-image--align-right[data-astro-cid-nzlefzml]{float:right;margin:0 0 1rem 1.5rem}.emdash-image--align-center[data-astro-cid-nzlefzml]{width:fit-content;margin-inline:auto}.emdash-image--align-wide[data-astro-cid-nzlefzml],.emdash-image--align-full[data-astro-cid-nzlefzml]{width:100%}@media (width<=640px){.emdash-image--align-left[data-astro-cid-nzlefzml],.emdash-image--align-right[data-astro-cid-nzlefzml]{float:none;width:100%;max-width:100%;margin-inline:0}}.emdash-code[data-astro-cid-dgremz56]{margin:1.5rem 0}.emdash-code-filename[data-astro-cid-dgremz56]{color:#ccc;background:#2d2d2d;border-radius:.5rem .5rem 0 0;padding:.5rem 1rem;font-family:monospace;font-size:.75rem}.emdash-code[data-astro-cid-dgremz56] pre[data-astro-cid-dgremz56]{background:#1e1e1e;border-radius:.5rem;margin:0;padding:1rem;overflow-x:auto}.emdash-code-filename[data-astro-cid-dgremz56]+pre[data-astro-cid-dgremz56]{border-radius:0 0 .5rem .5rem}.emdash-code[data-astro-cid-dgremz56] code[data-astro-cid-dgremz56]{color:#e0e0e0;font-family:Fira Code,Consolas,monospace;font-size:.875rem}.emdash-embed[data-astro-cid-n4v2ghzc]{margin:1.5rem 0}.emdash-embed-video[data-astro-cid-n4v2ghzc]{height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.emdash-embed-video[data-astro-cid-n4v2ghzc] iframe[data-astro-cid-n4v2ghzc],.emdash-embed-video[data-astro-cid-n4v2ghzc] video[data-astro-cid-n4v2ghzc]{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.emdash-embed-audio[data-astro-cid-n4v2ghzc],.emdash-embed-audio[data-astro-cid-n4v2ghzc] audio[data-astro-cid-n4v2ghzc]{width:100%}.emdash-embed[data-astro-cid-n4v2ghzc] figcaption[data-astro-cid-n4v2ghzc]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-gallery[data-astro-cid-d6nmylgu]{grid-template-columns:repeat(var(--columns,3), 1fr);gap:1rem;margin:1.5rem 0;display:grid}.emdash-gallery-item[data-astro-cid-d6nmylgu]{margin:0}.emdash-gallery-item[data-astro-cid-d6nmylgu] img[data-astro-cid-d6nmylgu]{object-fit:cover;aspect-ratio:1;width:100%;height:auto}.emdash-gallery-item[data-astro-cid-d6nmylgu] figcaption[data-astro-cid-d6nmylgu]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.25rem;font-size:.75rem}@media (width<=640px){.emdash-gallery[data-astro-cid-d6nmylgu]{grid-template-columns:repeat(2,1fr)}}.emdash-columns[data-astro-cid-sjaxkm7w]{gap:2rem;margin:1.5rem 0;display:flex}.emdash-column[data-astro-cid-sjaxkm7w]{flex:1;min-width:0}@media (width<=768px){.emdash-columns[data-astro-cid-sjaxkm7w]{flex-direction:column;gap:1rem}}.emdash-break[data-astro-cid-gvovdxls]{margin:2rem 0}.emdash-break-line[data-astro-cid-gvovdxls]{border:none;border-top:1px solid var(--emdash-break-color,var(--color-border,#e0e0e0))}.emdash-break-dots[data-astro-cid-gvovdxls]{text-align:center;color:var(--emdash-break-dots-color,var(--color-muted,#999));letter-spacing:.5em}.emdash-break-space[data-astro-cid-gvovdxls]{height:2rem}iframe[data-emdash-html-block]{border:0;width:100%;margin:1.5rem 0;display:block}.emdash-html-block[data-astro-cid-7hlqo6bn]{margin:1.5rem 0}.emdash-iframe[data-astro-cid-fhxykd76]{aspect-ratio:16/9;width:100%;margin:1.5rem 0}.emdash-iframe[data-astro-cid-fhxykd76] iframe{border:0;width:100%;height:100%;display:block}.emdash-video[data-astro-cid-ymu5gvpn]{margin:1.5rem 0}.emdash-video[data-astro-cid-ymu5gvpn] video[data-astro-cid-ymu5gvpn]{width:100%;height:auto;max-height:70vh;display:block}.emdash-video[data-astro-cid-ymu5gvpn] figcaption[data-astro-cid-ymu5gvpn]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-table-wrapper[data-astro-cid-7uypp5bz]{overscroll-behavior-inline:contain;max-inline-size:100%;margin-block:1.5rem;overflow-x:auto}.emdash-table[data-astro-cid-7uypp5bz]{border-collapse:collapse;inline-size:100%;font-size:.9rem}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz],.emdash-table[data-astro-cid-7uypp5bz] td[data-astro-cid-7uypp5bz]{border:1px solid var(--color-border,#ddd);text-align:start;vertical-align:top;padding:.75rem;position:relative}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz] p,.emdash-table[data-astro-cid-7uypp5bz] td[data-astro-cid-7uypp5bz] p{margin:0}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz]{background:var(--color-surface,#f5f5f5);font-weight:600}.emdash-table[data-astro-cid-7uypp5bz] tbody[data-astro-cid-7uypp5bz] tr[data-astro-cid-7uypp5bz]:nth-child(2n){background:var(--color-bg-subtle,#fafafa)}.emdash-table[data-astro-cid-7uypp5bz] tbody[data-astro-cid-7uypp5bz] tr[data-astro-cid-7uypp5bz]:hover{background:var(--color-surface,#f0f0f0)}.emdash-button[data-astro-cid-i644adhy]{cursor:pointer;border-radius:4px;padding:.75em 1.5em;font-weight:500;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-block}.emdash-button--default[data-astro-cid-i644adhy],.emdash-button--fill[data-astro-cid-i644adhy]{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff);border:2px solid var(--emdash-button-bg,#0073aa)}.emdash-button--default[data-astro-cid-i644adhy]:hover,.emdash-button--fill[data-astro-cid-i644adhy]:hover{background-color:var(--emdash-button-bg-hover,#005177);border-color:var(--emdash-button-bg-hover,#005177)}.emdash-button--outline[data-astro-cid-i644adhy]{color:var(--emdash-button-bg,#0073aa);border:2px solid var(--emdash-button-bg,#0073aa);background-color:#0000}.emdash-button--outline[data-astro-cid-i644adhy]:hover{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff)}.emdash-buttons[data-astro-cid-pxkpowas]{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0;display:flex}.emdash-buttons--vertical[data-astro-cid-pxkpowas]{flex-direction:column;align-items:flex-start}.emdash-buttons--horizontal[data-astro-cid-pxkpowas]{flex-direction:row;align-items:center}.emdash-cover[data-astro-cid-g6rigryn]{background-color:var(--emdash-cover-fallback-bg,#333);border-radius:4px;align-items:center;margin:1.5rem 0;padding:2rem;display:flex;position:relative;overflow:hidden}.emdash-cover__background[data-astro-cid-g6rigryn]{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.emdash-cover__video[data-astro-cid-g6rigryn]{object-fit:cover}.emdash-cover__overlay[data-astro-cid-g6rigryn]{z-index:1;position:absolute;inset:0}.emdash-cover__content[data-astro-cid-g6rigryn]{z-index:2;width:100%;color:var(--emdash-cover-text-color,#fff);position:relative}.emdash-cover--align-left[data-astro-cid-g6rigryn]{text-align:left;justify-content:flex-start}.emdash-cover--align-center[data-astro-cid-g6rigryn]{text-align:center;justify-content:center}.emdash-cover--align-right[data-astro-cid-g6rigryn]{text-align:right;justify-content:flex-end}.emdash-cover__content[data-astro-cid-g6rigryn] h1,.emdash-cover__content[data-astro-cid-g6rigryn] h2,.emdash-cover__content[data-astro-cid-g6rigryn] h3,.emdash-cover__content[data-astro-cid-g6rigryn] h4,.emdash-cover__content[data-astro-cid-g6rigryn] p{color:inherit}.emdash-file[data-astro-cid-dsnn5jk3]{background-color:var(--emdash-file-bg,#f5f5f5);border:1px solid var(--emdash-file-border,#e0e0e0);border-radius:4px;align-items:center;gap:.75rem;margin:1rem 0;padding:1rem;display:flex}.emdash-file__link[data-astro-cid-dsnn5jk3]{color:var(--emdash-file-color,#333);flex:1;align-items:center;gap:.5rem;text-decoration:none;display:flex}.emdash-file__link[data-astro-cid-dsnn5jk3]:hover{text-decoration:underline}.emdash-file__icon[data-astro-cid-dsnn5jk3]{width:1.5rem;height:1.5rem;color:var(--emdash-file-icon-color,#666);flex-shrink:0}.emdash-file__name[data-astro-cid-dsnn5jk3]{word-break:break-all;font-weight:500}.emdash-file__download[data-astro-cid-dsnn5jk3]{background-color:var(--emdash-button-bg,#0073aa);width:2.5rem;height:2.5rem;color:var(--emdash-button-color,#fff);border-radius:4px;justify-content:center;align-items:center;transition:background-color .2s;display:flex}.emdash-file__download[data-astro-cid-dsnn5jk3]:hover{background-color:var(--emdash-button-bg-hover,#005177)}.emdash-file__download[data-astro-cid-dsnn5jk3] svg[data-astro-cid-dsnn5jk3]{width:1.25rem;height:1.25rem}.emdash-pullquote[data-astro-cid-mtrxdgkr]{border-top:4px solid var(--emdash-pullquote-border,#0073aa);border-bottom:4px solid var(--emdash-pullquote-border,#0073aa);text-align:center;margin:2rem 0;padding:1.5rem 2rem}.emdash-pullquote__text[data-astro-cid-mtrxdgkr]{color:var(--emdash-pullquote-color,#333);margin:0;font-size:1.5rem;font-style:italic;line-height:1.4}.emdash-pullquote__citation[data-astro-cid-mtrxdgkr]{color:var(--emdash-pullquote-citation-color,#666);margin-top:1rem;font-size:.9rem;font-style:normal}#navbar[data-astro-cid-wpvy4v7s]{z-index:50;-webkit-backdrop-filter:saturate(1.8)blur(20px);border-bottom:1px solid var(--line);background:#fffc;height:4rem;position:fixed;inset:0 0 auto}.inner[data-astro-cid-wpvy4v7s]{justify-content:space-between;align-items:center;gap:1.5rem;max-width:69rem;height:100%;margin-inline:auto;padding-inline:1.25rem;display:flex}.start[data-astro-cid-wpvy4v7s]{align-items:center;gap:1.25rem;min-width:0;display:flex}.logo[data-astro-cid-wpvy4v7s]{letter-spacing:-.025em;font-family:Syne,Syne fallback,sans-serif;font-size:1.5rem;font-weight:700;line-height:1;transition:color .15s}.logo[data-astro-cid-wpvy4v7s]:hover{color:var(--accent)}.back[data-astro-cid-wpvy4v7s]{min-width:0;color:var(--accent);border-left:1px solid #0000001a;align-items:center;padding-left:1.25rem;font-size:17px;display:inline-flex}.back[data-astro-cid-wpvy4v7s] span[data-astro-cid-wpvy4v7s]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.back[data-astro-cid-wpvy4v7s]:hover{text-decoration:underline}.back[data-astro-cid-wpvy4v7s] .icon[data-astro-cid-wpvy4v7s]{width:1rem;height:1rem;margin-right:2px}.back[data-astro-cid-wpvy4v7s].long{display:none}.desktop[data-astro-cid-wpvy4v7s]{align-items:center;gap:2rem;display:none}.link[data-astro-cid-wpvy4v7s]{color:var(--muted);align-items:center;gap:.25rem;font-size:1.25rem;line-height:1;transition:color .15s;display:inline-flex}.link[data-astro-cid-wpvy4v7s]:hover,.link[data-astro-cid-wpvy4v7s][aria-current=page]{color:var(--ink)}.chev[data-astro-cid-wpvy4v7s]{width:1rem;height:1rem;transition:transform .2s}.dropdown[data-astro-cid-wpvy4v7s]{position:relative}.panel[data-astro-cid-wpvy4v7s]{opacity:0;visibility:hidden;padding-top:.75rem;transition:opacity .15s,visibility .15s;position:absolute;top:100%;right:-1rem}.dropdown[data-astro-cid-wpvy4v7s]:is(:hover,:focus-within) .panel[data-astro-cid-wpvy4v7s]{opacity:1;visibility:visible}.dropdown[data-astro-cid-wpvy4v7s]:is(:hover,:focus-within) .chev[data-astro-cid-wpvy4v7s]{transform:rotate(180deg)}.dropdown[data-astro-cid-wpvy4v7s]:is(:hover,:focus-within) .trigger[data-astro-cid-wpvy4v7s]{color:var(--ink)}.panel-inner[data-astro-cid-wpvy4v7s]{border:1px solid var(--line);backdrop-filter:blur(24px);background:#fafafcf7;border-radius:1rem;grid-template-columns:1fr 1fr;gap:0 .25rem;width:600px;max-width:90vw;padding:.5rem;display:grid;box-shadow:0 20px 50px -12px #00000040}.item[data-astro-cid-wpvy4v7s]{border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background-color .15s;display:flex}.item[data-astro-cid-wpvy4v7s]:hover{background:#7c3aed14}.label[data-astro-cid-wpvy4v7s]{margin-bottom:.25rem;font-size:1rem;font-weight:600;line-height:1;display:block}.desc[data-astro-cid-wpvy4v7s]{color:var(--muted);font-size:.75rem;line-height:1;display:block}.arrow[data-astro-cid-wpvy4v7s]{opacity:0;width:1rem;height:1rem;color:var(--accent);transition:opacity .15s}.item[data-astro-cid-wpvy4v7s]:hover .arrow[data-astro-cid-wpvy4v7s]{opacity:1}.burger[data-astro-cid-wpvy4v7s],.close[data-astro-cid-wpvy4v7s]{border-radius:999px;place-items:center;width:2.5rem;height:2.5rem;display:grid}.burger[data-astro-cid-wpvy4v7s]:hover,.close[data-astro-cid-wpvy4v7s]:hover{background:var(--alt)}#mobile-menu[data-astro-cid-wpvy4v7s]{background:#fafafcfc;border:0;width:100%;max-width:none;height:100%;max-height:none;padding:0;inset:0}#mobile-menu[data-astro-cid-wpvy4v7s]:popover-open{flex-direction:column;display:flex}.sheet-head[data-astro-cid-wpvy4v7s]{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:4rem;padding-inline:1.25rem;display:flex}.sheet[data-astro-cid-wpvy4v7s]{flex-direction:column;padding:1rem 1.25rem;display:flex;overflow-y:auto}.sheet[data-astro-cid-wpvy4v7s] a[data-astro-cid-wpvy4v7s]{border-bottom:1px solid var(--line);padding:.875rem 0;font-size:1.25rem;font-weight:500}.section[data-astro-cid-wpvy4v7s]{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:1.5rem;font-size:.75rem;font-weight:600}@media (width>=640px){.inner[data-astro-cid-wpvy4v7s]{padding-inline:2rem}}@media (width>=768px){.back[data-astro-cid-wpvy4v7s].long{display:inline-flex}.desktop[data-astro-cid-wpvy4v7s]{display:flex}.burger[data-astro-cid-wpvy4v7s]{display:none}}footer[data-astro-cid-jo6i4kqk]{background:var(--alt);color:var(--muted);padding:2.5rem 0 7rem;font-size:12px;line-height:1.5}ol[data-astro-cid-jo6i4kqk]{border-bottom:1px solid #0000001a;gap:.5rem;margin-bottom:1.25rem;padding:0 0 1.5rem 1rem;list-style:decimal;display:grid}.row[data-astro-cid-jo6i4kqk]{flex-direction:column;gap:.5rem;display:flex}@media (width>=640px){.row[data-astro-cid-jo6i4kqk]{flex-direction:row;justify-content:space-between}}.gfm-root{--ease:.15s ease;--emerald:#34d399;--font-display:"Inter","Inter fallback",system-ui,sans-serif;--r-md:.5rem;--r-2xl:1.25rem;--r-full:9999px;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.25rem;--s-6:1.5rem;--s-8:2rem;bottom:var(--s-6);left:var(--s-6);z-index:999999;font-family:var(--font-display);position:fixed}.gfm-card{border-radius:var(--r-full);color:#fff;cursor:pointer;background:#059669;border:none;flex-direction:column;width:7rem;text-decoration:none;transition:width .26s cubic-bezier(.175,.885,.32,1.275) .22s,border-radius .26s .22s,background .2s .22s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #00000073,0 0 20px #10b98140}.gfm-card:hover{border-radius:var(--r-2xl);background:#022c22;width:272px;transition:width .28s cubic-bezier(.175,.885,.32,1.275),border-radius .28s,background .2s,box-shadow .15s;box-shadow:0 6px 28px #00000080,0 0 28px #10b98159}.gfm-bottom{flex-shrink:0;align-items:center;height:3rem;display:flex;position:relative}.gfm-cta{width:100%;padding-inline:var(--s-4);color:var(--emerald);white-space:nowrap;justify-content:center;align-items:center;gap:var(--s-2);opacity:0;font-size:1rem;font-weight:700;text-decoration:none;transition:opacity .12s;display:flex}.gfm-card:hover .gfm-cta,.gfm-root[data-open] .gfm-cta{opacity:1;transition:opacity .18s .18s}.gfm-icon-layer{justify-content:center;align-items:center;transition:opacity .18s .26s;display:flex;position:absolute;inset:0}.gfm-card:hover .gfm-icon-layer,.gfm-root[data-open] .gfm-icon-layer{opacity:0;transition:opacity .15s}.gfm-icon-layer i,.gfm-icon-layer svg:not(.gfm-logo){flex-shrink:0;width:1.125rem;height:1.125rem}.gfm-logo{flex-shrink:0;width:5.5rem;height:auto}.gfm-heart{color:#ff3b30;pointer-events:none;justify-content:center;align-items:center;width:15px;height:15px;line-height:1;transition:opacity .18s .26s;animation:2s infinite gfm-heartbeat;display:flex;position:absolute;bottom:0;right:-2px}.gfm-root:hover .gfm-heart,.gfm-root[data-open] .gfm-heart{opacity:0;transition:opacity .15s}@keyframes gfm-heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(1.25)}}.gfm-top{opacity:0;max-height:0;padding:0 var(--s-4);transition:max-height .22s,opacity .16s,padding-block .22s;overflow:hidden}.gfm-card:hover .gfm-top,.gfm-root[data-open] .gfm-top{opacity:1;max-height:10rem;padding:var(--s-3) var(--s-4) var(--s-2);transition:max-height .26s .26s,opacity .22s .3s,padding-block .26s .26s}.gfm-subtitle{text-transform:uppercase;letter-spacing:.1em;color:var(--emerald);font-size:1rem;font-weight:700;display:block}.gfm-title{color:#f0fdf4;margin:var(--s-1) 0 0;font-size:1rem;font-weight:500;line-height:1.45}.gfm-title em{color:#fff;font-style:normal;font-weight:700;text-decoration:underline #34d39966}.gfm-close{top:var(--s-2);right:var(--s-2);cursor:pointer;color:#fff;border-radius:var(--r-md);width:2rem;height:2rem;transition:background var(--ease), color var(--ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:none;position:absolute}.gfm-close:hover{color:#fff;background:#ffffff14}@media (hover:none){.gfm-card:hover{border-radius:var(--r-full);background:#059669;width:7rem;transition:width .26s cubic-bezier(.175,.885,.32,1.275) .22s,border-radius .26s .22s,background .2s .22s,box-shadow .15s;box-shadow:0 4px 24px #00000073,0 0 20px #10b98140}.gfm-card:hover .gfm-top{opacity:0;max-height:0;padding:0 var(--s-4);transition:max-height .22s,opacity .16s,padding-block .22s}.gfm-card:hover .gfm-cta{opacity:0;transition:opacity .12s}.gfm-card:hover .gfm-icon-layer,.gfm-root:hover .gfm-heart{opacity:1;transition:opacity .18s .26s}.gfm-root[data-open] .gfm-card{border-radius:var(--r-2xl);background:#022c22;width:272px;transition:width .28s cubic-bezier(.175,.885,.32,1.275),border-radius .28s,background .2s,box-shadow .15s;box-shadow:0 6px 28px #00000080,0 0 28px #10b98159}.gfm-root[data-open] .gfm-close{display:flex}.gfm-root[data-open] .gfm-heart{opacity:0;transition:opacity .15s}.gfm-root[data-open] .gfm-card .gfm-top{opacity:1;max-height:10rem;padding:var(--s-3) var(--s-4) var(--s-2);transition:max-height .26s .26s,opacity .22s .3s,padding-block .26s .26s}.gfm-root[data-open] .gfm-card .gfm-cta{opacity:1;transition:opacity .18s .18s}.gfm-root[data-open] .gfm-card .gfm-icon-layer{opacity:0;transition:opacity .15s}.gfm-root{bottom:var(--s-4);left:var(--s-4)}}@font-face{font-family:Syne;src:url(/fonts/syne-adame.woff2)format("woff2");font-weight:700;font-display:block}@font-face{font-family:Inter;src:url(/fonts/inter-latin.woff2)format("woff2");font-weight:400 700;font-display:optional;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin.woff2)format("woff2");font-weight:400 500;font-display:swap}@font-face{font-family:Inter fallback;src:local(Arial);size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}@font-face{font-family:JetBrains Mono fallback;src:local(Courier New);size-adjust:112%;ascent-override:78%;descent-override:21%;line-gap-override:0%}@font-face{font-family:Syne fallback;src:local(Arial Black);size-adjust:96%;ascent-override:95%;descent-override:24%;line-gap-override:0%}:root{--sans:"Inter", "Inter fallback", system-ui, sans-serif;--mono:"JetBrains Mono", "JetBrains Mono fallback", ui-monospace, monospace;--ink:#1d1d1f;--muted:#6e6e73;--alt:#f5f5f7;--chip:#e8e8ed;--chip-hover:#dcdce1;--line:#00000014;--accent:#7c3aed;--accent-hover:#6d28d9;--good:#1a9e5c;--warn:#e67e00;--bad:#d70015;--gradient:linear-gradient(90deg, #7c3aed, #c026d3, #ea580c);--shadow:0 2px 4px #0000000a, 0 18px 40px -16px #0000002e;--ease:cubic-bezier(.22, 1, .36, 1);color-scheme:light}*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:4.5rem}body{color:var(--ink);font-family:var(--sans);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;background:#fff;font-size:17px;line-height:1.47}img,svg,video,iframe{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}ul,ol{padding:0;list-style:none}sup{color:var(--muted);margin-left:1px;font-size:.55em;line-height:0}::selection{background:#ddd6fe}:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.mono{font-family:var(--mono)}.wrap{width:100%;max-width:69rem;margin-inline:auto;padding-inline:1.25rem}.wrap.narrow{max-width:52rem}.wrap.text{max-width:46rem}.wrap.wide{max-width:90rem}@media (width>=640px){.wrap{padding-inline:2rem}}.section{padding-block:6rem}.section.alt{background:var(--alt)}.section.dark{color:#fff;background:#000}@media (width>=640px){.section{padding-block:8rem}}.display{letter-spacing:-.015em;text-wrap:balance;font-size:40px;font-weight:600;line-height:1.08}.h1{letter-spacing:-.025em;text-wrap:balance;font-size:44px;font-weight:600;line-height:1.05}.h2{letter-spacing:-.02em;text-wrap:balance;font-size:32px;font-weight:600;line-height:1.1}.h3{letter-spacing:-.015em;font-size:21px;font-weight:600;line-height:1.25}.lead{color:var(--muted);font-size:19px;line-height:1.45}.small{font-size:15px;line-height:1.45}.tiny{font-size:13px;line-height:1.45}@media (width>=640px){.display{font-size:56px}.h1{font-size:72px}.h2{font-size:40px}.lead{font-size:21px}}.headline{margin-bottom:3rem}.headline>.lead{max-width:44rem;margin-top:1.25rem}.headline.center{text-align:center}.headline.center>*{margin-inline:auto}.headline.center .display{max-width:13.64em}.section.dark .lead{color:#fff9}@media (width>=640px){.headline{margin-bottom:4rem}}.source{color:var(--muted);margin-top:1.5rem;font-size:12px}.pill{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;height:2.75rem;padding-inline:22px;font-size:17px;transition:background-color .2s;display:inline-flex}.pill:hover{background:var(--accent-hover)}.pill.ink{background:var(--ink)}.pill.ink:hover{background:#000}.pill:disabled{opacity:.6;cursor:progress}.textlink{color:var(--accent);align-items:center;font-size:17px;display:inline-flex}.textlink:hover{text-decoration:underline}.textlink .icon{width:1rem;height:1rem;margin-left:2px;transition:transform .2s}.textlink:hover .icon,a:hover>.go{transform:translate(2px)}.round{background:var(--chip);border-radius:999px;place-items:center;width:2.25rem;height:2.25rem;transition:background-color .2s,opacity .2s;display:grid}.round:hover{background:var(--chip-hover)}.round:disabled{opacity:.35;cursor:default}.round .icon{width:1.25rem;height:1.25rem}.icon{flex-shrink:0;width:1.25rem;height:1.25rem}.segmented{scrollbar-width:none;background:var(--chip);border-radius:999px;width:fit-content;max-width:100%;padding:4px;display:flex;overflow-x:auto}.segmented label{white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:.375rem;height:2.25rem;padding-inline:1rem;font-size:14px;font-weight:500;transition:background-color .25s,box-shadow .25s;display:inline-flex;position:relative}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented label:has(:checked){background:#fff;box-shadow:0 1px 3px #0000001f}.segmented label:has(:focus-visible){outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent)}.segmented .icon{width:1rem;height:1rem}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip{background:var(--alt);border-radius:999px;align-items:center;gap:.5rem;height:2rem;padding-inline:.875rem;font-size:14px;display:inline-flex}.dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.card{background:var(--alt);border-radius:22px;flex-direction:column;padding:1.75rem;display:flex}a.card{transition:background-color .3s,box-shadow .3s,transform .3s}a.card:hover{box-shadow:var(--shadow);background:#fff;transform:translateY(-2px)}.grid{gap:1rem;display:grid}@media (width>=640px){.grid.c2,.grid.c3{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.grid.c3{grid-template-columns:repeat(3,1fr)}}.shelf{gap:var(--gap,20px);scroll-snap-type:x mandatory;scrollbar-width:none;padding:.5rem max(1.25rem,50vw - 32.5rem) 2.5rem;scroll-padding-inline:max(1.25rem,50vw - 32.5rem);display:flex;overflow-x:auto}.shelf::-webkit-scrollbar{display:none}.shelf>*{scroll-snap-align:start;flex-shrink:0}.paddles{justify-content:flex-end;gap:.75rem;display:flex}.prose{font-size:17px;line-height:1.6}.prose>*+*{margin-top:1.1em}.prose>:first-child{margin-top:0}.prose :is(h2,h3,h4){letter-spacing:-.02em;text-wrap:balance;font-weight:600;line-height:1.15}.prose h2{margin-top:2.2em;font-size:32px}.prose h3{letter-spacing:-.015em;margin-top:1.8em;font-size:22px}.prose h4{margin-top:1.5em;font-size:18px}.prose :is(h2,h3,h4)+*{margin-top:.6em}.prose :is(p,li){color:color-mix(in srgb, var(--ink) 88%, transparent)}.prose a,.inline a{color:var(--accent);text-underline-offset:3px}.prose a:hover,.inline a:hover{text-decoration:underline}.prose strong,.inline strong{color:var(--ink);font-weight:600}.prose ul{padding-left:1.3em;list-style:outside}.prose ol{padding-left:1.3em;list-style:decimal}.prose li+li{margin-top:.45em}.prose li::marker{color:var(--muted)}.prose :not(pre)>code,.inline code{font-family:var(--mono);background:var(--alt);overflow-wrap:anywhere;border-radius:6px;padding:.12em .38em;font-size:.86em}.prose blockquote{border-left:3px solid var(--chip);color:var(--muted);padding-left:1.2em}.prose img,.prose iframe,.prose video{border-radius:18px}.prose figure{margin-block:2em}.prose figcaption{color:var(--muted);text-align:center;margin-top:.6em;font-size:13px}.prose table{border-collapse:collapse;width:100%;font-size:15px}.prose :is(th,td){text-align:left;border-bottom:1px solid var(--line);padding:.7em .8em}.prose th{font-weight:600}.js [data-anim]{animation-duration:var(--dur,1.3s);animation-timing-function:var(--ease);animation-delay:var(--delay,0s);animation-play-state:paused;animation-fill-mode:backwards}.js [data-anim=dash]{animation-name:dash}.js [data-anim=grow]{transform-origin:0;animation-name:grow}.js [data-anim=fade]{animation-name:fade;animation-duration:.4s}.js [data-anim][data-play]{animation-play-state:running}@keyframes dash{0%{stroke-dashoffset:var(--from)}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes fade{0%{opacity:0}}::view-transition-group(*){animation-duration:.4s;animation-timing-function:var(--ease)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}main[data-astro-cid-hkbrpulz]{padding-top:4rem}
