@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/167cd0713aa75522-s.40v7iydlhc_yt.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/e455bcff747f0d5e-s.438h7bwt6ldsi.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/791bf8c4bb753ed6-s.p.0rg7ym60g9xsl.woff2)format("woff2");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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_60be9c9f-module__LXTWwa__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_60be9c9f-module__LXTWwa__variable{--font-display:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.woff2)format("woff2");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:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_a1e8d591-module__QyHbJG__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_a1e8d591-module__QyHbJG__variable{--font-body:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.woff2)format("woff2");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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_3d5ba02a-module__0cb7nq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal;font-weight:400}.ibm_plex_mono_3d5ba02a-module__0cb7nq__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--bg:#f6f3ec;--surface:#fffdf8;--ink:#171512;--muted:#5f5a52;--line:#e2dcd0;--accent:#0f5c4d;--accent-ink:#fff;--accent-soft:#e3eee9;--code-bg:#efeadf;--error:#a2271d;--focus:#1f5fbf;--serif:var(--font-display,Georgia), Georgia, "Times New Roman", serif;--sans:var(--font-body,system-ui), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:var(--font-mono,ui-monospace), ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#15130f;--surface:#1e1b16;--ink:#f2ede4;--muted:#a79f92;--line:#35302a;--accent:#6fd0b8;--accent-ink:#0f1a16;--accent-soft:#1b2a25;--code-bg:#262219;--error:#ff8a80;--focus:#8ab4ff}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:17px/1.6 var(--sans);overflow-wrap:break-word;margin:0}img,svg,video{max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:3px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:3px}h1,h2,h3{font-family:var(--serif);text-wrap:balance;letter-spacing:-.01em;font-weight:600;line-height:1.15}h2{font-size:1.6rem}h3{font-size:1.15rem}.muted,.fine,.optional{color:var(--muted)}.fine{margin:.5rem 0 0;font-size:.9rem}.eyebrow{font:600 .78rem/1.4 var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 .4rem}.top{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.4rem 1rem;max-width:76rem;margin:0 auto;padding:.8rem 1rem;display:flex}.brand{font-family:var(--serif);color:var(--ink);align-items:center;gap:.5rem;margin-right:auto;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.brand svg{width:1.4rem;height:1.4rem}.menu{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.2rem 1rem;font-size:.95rem;display:flex}.menu a{color:var(--ink);padding:.3rem 0;text-decoration:none}.menu a:hover,.menu a[aria-current=page]{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-decoration-thickness:2px}.menu .button{margin-left:auto;padding:.45rem .9rem;font-size:.92rem}@media (min-width:52rem){.menu{flex-basis:auto}.brand{margin-right:1.5rem}.menu .button{margin-left:.5rem}}.foot{border-top:1px solid var(--line);max-width:76rem;color:var(--muted);gap:.8rem;margin:3rem auto 0;padding:1.5rem 1rem 2rem;font-size:.92rem;display:grid}.foot .links{flex-wrap:wrap;gap:.3rem 1.1rem;display:flex}.foot .links a{color:var(--ink);text-decoration:none}.foot .links a:hover{text-decoration:underline}.foot p{margin:0}@media (min-width:52rem){.foot{grid-template-columns:1fr auto;align-items:start}}button,.button{font:inherit;color:var(--accent-ink);background:var(--accent);border:2px solid var(--accent);cursor:pointer;border-radius:10px;padding:.7rem 1.1rem;font-weight:600;line-height:1.3;text-decoration:none;display:inline-block}.button.secondary{color:var(--accent);background:0 0}button:disabled{opacity:.6;cursor:progress}.site{max-width:76rem;margin:0 auto;padding:0 1rem}.site>section,.site>article{margin:3rem 0}.hero{max-width:46rem;padding-top:1.5rem}.hero h1{margin:1rem 0;font-size:clamp(2.1rem,6.5vw,3.4rem);font-weight:500}.hero h1 em{color:var(--accent);font-style:italic}.lede{max-width:40rem;font-size:1.15rem}.ctas{flex-wrap:wrap;gap:.7rem;margin:1.4rem 0 1rem;display:flex}.status{color:var(--muted);align-items:baseline;gap:.5rem;margin:.6rem 0 0;font-size:.92rem;display:inline-flex}.status:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:.55rem;height:.55rem;transform:translateY(-.05rem)}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;padding:1.25rem}.card h2,.card h3{margin-top:0}.card p:last-child{margin-bottom:0}.card a.more{font-weight:600;text-decoration:none}.card a.more:hover{text-decoration:underline}.band{background:var(--accent-soft);border-radius:18px;padding:1.5rem 1.25rem}@media (min-width:52rem){.band{padding:2.5rem 2rem}}.band h2{margin-top:0}.split{align-items:start;gap:1.5rem;display:grid}@media (min-width:52rem){.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem}}.section-head{max-width:44rem}.section-head h2{margin-bottom:.4rem}.section-head p{margin-top:0}.list{padding-left:1.2rem}.list li{margin:.35rem 0}.pills{flex-wrap:wrap;gap:.4rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.tag{letter-spacing:.02em;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.15rem .6rem;font-size:.78rem;font-weight:600;display:inline-block}.prose-wide{max-width:44rem}.prose-wide h2{margin-top:2.2rem}.channel{border-top:1px solid var(--line);gap:1rem;padding:1.5rem 0;display:grid}@media (min-width:52rem){.channel{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2.5rem}}.channel h2{margin:0 0 .5rem}.channel .text p:last-child{margin-bottom:0}.example{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;margin:0;padding:1rem 1.1rem;font-size:.98rem}.example .eyebrow{margin-bottom:.3rem}.example p{margin:.3rem 0 0}.group{margin:2.5rem 0}.group-head{flex-wrap:wrap;align-items:baseline;gap:.3rem .8rem;margin-bottom:.9rem;display:flex}.group-head h2{margin:0}.group-head p{color:var(--muted);margin:0}.plugin{align-content:start;gap:.5rem;display:grid}.plugin header{flex-wrap:wrap;align-items:center;gap:.4rem .6rem;display:flex}.plugin h3,.plugin p{margin:0}.plugin .connects{color:var(--accent);font-weight:600}.plugin .needs{color:var(--muted);margin:.2rem 0 0;padding-left:1.1rem;font-size:.92rem}.plugin .needs li{margin:.15rem 0}.plugin details{font-size:.92rem}.plugin summary{cursor:pointer;color:var(--muted)}.plugin details ul{margin:.4rem 0 0;padding-left:1.1rem}.plugin code{font-family:var(--mono);background:var(--code-bg);border-radius:4px;padding:.05em .3em;font-size:.88em}.plugin .consent{color:var(--muted);font-size:.92rem}.plugin footer{font-size:.88rem}.plans{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));align-items:stretch;gap:1rem;display:grid}.plan{align-content:start;gap:.5rem;display:grid}.plan .price{font-family:var(--serif);margin:.2rem 0;font-size:2rem;font-weight:500;line-height:1.1}.plan .price small{font:.95rem/1.5 var(--sans);color:var(--muted);display:block}.plan ul{margin:.4rem 0 0;padding-left:1.1rem}.plan li{margin:.3rem 0}.plan .for{color:var(--muted);font-size:.95rem}.faq{max-width:44rem}.faq details{border-top:1px solid var(--line);padding:.8rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:600}.faq details p{margin:.6rem 0 0}.learn{grid-template-columns:minmax(0,1fr);gap:2rem;max-width:76rem;margin:0 auto;padding:0 1rem;display:grid}.learn .hero h1{margin:1.5rem 0 1rem;font-size:clamp(2rem,6vw,3rem)}.points{max-width:40rem;padding-left:1.1rem}.points li{margin:.4rem 0}.contents,.open{grid-column:1/-1}.open{max-width:44rem}.toc{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1.5rem;display:grid}.toc h3{margin-bottom:0}.toc p{margin:.2rem 0 .5rem;font-size:.95rem}.toc ol{margin:0;padding-left:1.3rem;font-size:.95rem}@media (min-width:60rem){.learn{grid-template-columns:minmax(0,1.2fr) minmax(22rem,.8fr);align-items:start}.gate{margin-top:2rem;position:sticky;top:1rem}}.signup{gap:.35rem;display:grid}.signup label{margin-top:.6rem;font-weight:600}.signup input:not([type=checkbox]),.signup select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--muted);border-radius:8px;width:100%;min-height:2.75rem;padding:.6rem .7rem}.signup [aria-invalid=true]{border-color:var(--error)}.signup fieldset{border:1px solid var(--line);border-radius:8px;gap:.35rem;margin:.8rem 0 0;padding:.4rem .9rem .9rem;display:grid}.signup legend{padding:0 .3rem;font-weight:600}.signup .optional{font-weight:400}.signup .check{align-items:flex-start;gap:.6rem;margin-top:.3rem;font-weight:400;display:flex}.signup .check input{width:1.25rem;height:1.25rem;accent-color:var(--accent);flex:none;margin-top:.2rem}.signup .notice{color:var(--muted);margin:1rem 0 .2rem;font-size:.92rem}.error{color:var(--error);margin:.1rem 0 0;font-size:.92rem}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.signup button[type=submit]{width:100%;min-height:3rem;margin-top:1rem}.guide{grid-template-columns:minmax(0,1fr);gap:1.5rem;max-width:76rem;margin:0 auto;padding:0 1rem;display:grid}.nav{border-bottom:1px solid var(--line);padding:.75rem 0;font-size:.95rem}.nav summary{cursor:pointer;font-weight:700}.nav h2{font:700 .8rem var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1.1rem 0 .3rem}.nav ul{margin:0;padding:0;list-style:none}.nav li{margin:.25rem 0}.nav a{color:var(--ink);text-decoration:none}.nav a:hover{text-decoration:underline}@media (max-width:59.99rem){.nav:not([open]) nav{display:none}}@media (min-width:60rem){.guide{grid-template-columns:17rem minmax(0,1fr)}.nav{border:0;border-right:1px solid var(--line);align-self:start;max-height:100vh;padding:1.5rem 1rem 1.5rem 0;position:sticky;top:0;overflow-y:auto}.nav summary{display:none}}.page{min-width:0;padding:1rem 0 2rem}.page.narrow{max-width:44rem;margin:0 auto;padding:1rem}.prose{max-width:44rem}.prose h1{margin:.5rem 0 1rem;font-size:clamp(1.7rem,5vw,2.4rem)}.prose h2{margin-top:2.2rem;font-size:1.45rem}.prose h3{margin-top:1.6rem}.prose li{margin:.3rem 0}.prose blockquote{border-left:4px solid var(--accent);background:var(--surface);margin:1rem 0;padding:.2rem 1rem}.prose code{font-family:var(--mono);background:var(--code-bg);overflow-wrap:anywhere;border-radius:4px;padding:.1em .3em;font-size:.9em}.table-wrap{margin:1rem 0;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.5rem .6rem}th{background:var(--surface)}.copy-block{margin:1rem 0;position:relative}.copy-block pre{background:var(--code-bg);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--mono);border-radius:8px;margin:0;padding:2.6rem 1rem 1rem;overflow-x:auto}.copy-block pre code{background:0 0;padding:0;font-size:.88rem;line-height:1.5}.copy-block button{padding:.3rem .7rem;font-size:.85rem;position:absolute;top:.5rem;right:.5rem}.pager{border-top:1px solid var(--line);justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1rem;display:flex}.pager a:last-child{text-align:right}@media print{.top,.foot,.nav,.pager,.copy-block button{display:none}body{color:#000;background:#fff;font-size:11pt}.guide{display:block}}
