@font-face{font-family:Archivo;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/archivo-latin-wght-normal.woff2) format("woff2-variations")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-wght-normal.woff2) format("woff2-variations")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-wght-italic.woff2) format("woff2-variations")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-latin-wght-normal.woff2) format("woff2-variations")}:root{--bg-0: #2e343c;--bg-1: #343b45;--bg-2: #313841;--bg-3: #3a424d;--bg-4: #424c58;--bg-5: #4d5866;--bd-0: rgba(255, 255, 255, .07);--bd-1: rgba(255, 255, 255, .11);--bd-2: rgba(255, 255, 255, .18);--t0: #eaeaeb;--t1: #c2c6cc;--t2: #acb2b9;--t3: #969da6;--accent: #d0a44e;--accent-lit: #ddbd7e;--accent-dim: rgba(208, 164, 78, .16);--accent-dim2: rgba(208, 164, 78, .26);--green: #92d3b0;--amber: #e1c07f;--red: #ecbab6;--blue: #afc8e4;--purple: #d0bfe3;--sbd-bg: rgba(146, 211, 176, .15);--sbd-fg: #92d3b0;--aud-bg: rgba(225, 192, 127, .15);--aud-fg: #e1c07f;--mtx-bg: rgba(175, 200, 228, .15);--mtx-fg: #afc8e4;--fm-bg: rgba(208, 191, 227, .15);--fm-fg: #d0bfe3;--font-display: "Archivo", -apple-system, BlinkMacSystemFont, sans-serif;--font-ui: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--font: var(--font-ui);--fs-micro: 10.5px;--fs-label: 12px;--fs-small: 14px;--fs-body: 16px;--fs-lead: 19px;--fs-h3: 20px;--fs-h2: 27px;--fs-h1: 40px;--fs-display: clamp(38px, 6vw, 68px);--tracking-label: .09em;--tracking-micro: .13em;--r-sm: 4px;--r-md: 8px;--r-lg: 12px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 28px;--sp-7: 40px;--sp-8: 64px;--sp-9: 96px;--sp-10: 140px;--measure: 68ch;--w-page: 1180px;--w-prose: 760px;--header-h: 60px;--ease: cubic-bezier(.4, 0, .2, 1)}:root{--shadow-menu: 0 10px 28px rgba(0, 0, 0, .32);--shadow-modal: 0 12px 40px rgba(0, 0, 0, .4);--shadow-screenshot: 0 24px 64px rgba(0, 0, 0, .55)}@media(prefers-color-scheme:light){:root[data-theme=auto]{--bg-0: #f8f5ef;--bg-1: #f0ece3;--bg-2: #fbf9f4;--bg-3: #ffffff;--bg-4: #e9e3d7;--bg-5: #dbd4c5;--bd-0: rgba(40, 34, 22, .07);--bd-1: rgba(40, 34, 22, .11);--bd-2: rgba(40, 34, 22, .19);--t0: #1e1c16;--t1: #474338;--t2: #565144;--t3: #67614f;--accent: #4d6b3f;--accent-lit: #3b5530;--accent-dim: rgba(77, 107, 63, .12);--accent-dim2: rgba(77, 107, 63, .2);--green: #2f6a3f;--amber: #7a5712;--red: #a63a33;--blue: #2f5f8f;--purple: #68489c;--shadow-screenshot: 0 24px 64px rgba(40, 34, 22, .18)}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:var(--bg-0);color:var(--t0);font-family:var(--font);font-size:var(--fs-body);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{margin:0;line-height:1.15;font-weight:600;color:var(--t0)}h1{font-family:var(--font-display);font-size:var(--fs-h1);letter-spacing:-.015em}h2{font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.01em}h3{font-size:var(--fs-h3)}p{margin:0 0 1em}p:last-child{margin-bottom:0}a{color:var(--accent-lit);text-decoration:none}a:hover{color:var(--accent-lit);text-decoration:underline;text-underline-offset:3px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}img,svg,video{max-width:100%;height:auto;display:block}hr{border:none;border-top:1px solid var(--bd-0);margin:var(--sp-7) 0}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.875em}code{background:var(--bg-3);border:1px solid var(--bd-0);border-radius:3px;padding:1px 5px}pre{background:var(--bg-3);border:1px solid var(--bd-1);border-radius:var(--r-md);padding:var(--sp-4) var(--sp-5);overflow-x:auto;line-height:1.55}pre code{background:none;border:none;padding:0}time,.tnum{font-variant-numeric:tabular-nums}table{border-collapse:collapse;width:100%;font-size:var(--fs-small)}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--bd-0)}th{font-size:var(--fs-micro);font-weight:650;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--t2)}blockquote{margin:var(--sp-5) 0;padding-left:var(--sp-5);border-left:2px solid var(--accent);color:var(--t1)}.page{width:100%;max-width:var(--w-page);margin:0 auto;padding:0 var(--sp-6)}.prose-width{max-width:var(--w-prose)}.stack>*+*{margin-top:var(--sp-4)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--sp-4);top:-60px;z-index:100;background:var(--bg-3);color:var(--t0);padding:10px 16px;border:1px solid var(--bd-2);border-radius:var(--r-sm);transition:top .15s var(--ease)}.skip-link:focus{top:var(--sp-4)}.eyebrow{font-size:var(--fs-micro);font-weight:650;letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--accent);margin:0 0 var(--sp-3)}.lede{font-size:var(--fs-lead);line-height:1.55;color:var(--t1);max-width:var(--measure)}.prose{max-width:var(--w-prose);color:var(--t1)}.prose>*{max-width:var(--measure)}.prose h2{margin:var(--sp-7) 0 var(--sp-3);color:var(--t0)}.prose h3{margin:var(--sp-6) 0 var(--sp-2);color:var(--t0)}.prose ul,.prose ol{margin:0 0 1em;padding-left:1.4em}.prose li{margin-bottom:.4em}.prose li::marker{color:var(--t3)}.prose img{border-radius:var(--r-md);border:1px solid var(--bd-1);margin:var(--sp-5) 0}.prose table{margin:var(--sp-5) 0}.prose>pre{max-width:none}@media(max-width:900px){.prose table{display:block;overflow-x:auto}.prose th,.prose td{min-width:9rem}.prose th:last-child,.prose td:last-child{min-width:15rem}}.wm[data-astro-cid-hhuuaa7r]{display:inline-flex;align-items:center;gap:9px}.wm[data-astro-cid-hhuuaa7r] img[data-astro-cid-hhuuaa7r]{width:var(--wm-size);height:var(--wm-size);border-radius:5px}.wm-text[data-astro-cid-hhuuaa7r]{font-family:var(--font-display);font-size:calc(var(--wm-size) * .66);font-weight:600;letter-spacing:.02em;color:var(--t0);white-space:nowrap}.hdr[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg-1) 88%,transparent);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--bd-1)}.hdr-inner[data-astro-cid-3ef6ksr2]{height:var(--header-h);display:flex;align-items:center;gap:var(--sp-6)}.hdr-home[data-astro-cid-3ef6ksr2]{flex-shrink:0}.hdr-home[data-astro-cid-3ef6ksr2]:hover{text-decoration:none}.hdr-nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:2px;margin-left:auto}.hdr-link[data-astro-cid-3ef6ksr2]{font-size:var(--fs-small);color:var(--t1);padding:7px 12px;border-radius:var(--r-sm);transition:color .12s var(--ease),background .12s var(--ease)}.hdr-link[data-astro-cid-3ef6ksr2]:hover{color:var(--t0);background:var(--bg-4);text-decoration:none}.hdr-link[data-astro-cid-3ef6ksr2].is-active{color:var(--accent-lit);background:var(--accent-dim)}@media(max-width:860px){.hdr-mobile[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;padding:var(--sp-2) var(--sp-6) var(--sp-5);border-top:1px solid var(--bd-0);background:var(--bg-1)}.hdr-mobile[data-astro-cid-3ef6ksr2][hidden]{display:none}.hdr-mobile[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{padding:11px 0;color:var(--t1);font-size:var(--fs-body);border-bottom:1px solid var(--bd-0)}.hdr-mobile[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].is-cta{color:var(--accent-lit);border-bottom:none}}.ftr[data-astro-cid-sz7xmlte]{background:var(--bg-1);border-top:1px solid var(--bd-1);margin-top:auto}.ftr[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{margin:0}.ftr-top[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5);flex-wrap:wrap;padding-top:var(--sp-6);padding-bottom:var(--sp-5)}.ftr-links[data-astro-cid-sz7xmlte]{display:flex;gap:var(--sp-5);font-size:var(--fs-label)}.ftr-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--t3)}.ftr-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent-lit)}.ftr-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;gap:var(--sp-3) var(--sp-5);flex-wrap:wrap;padding-top:var(--sp-4);padding-bottom:var(--sp-6);border-top:1px solid var(--bd-0);font-size:var(--fs-micro);color:color-mix(in srgb,var(--t3) 72%,transparent)}@media(max-width:640px){.ftr-bottom[data-astro-cid-sz7xmlte]{flex-direction:column}}body{display:flex;flex-direction:column;min-height:100vh}main{flex:1 0 auto}
