@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-latin-400-normal-Bk63H6sG.woff2)format("woff2"),url(/assets/open-sans-latin-400-normal-DKniycaP.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/open-sans-latin-500-normal-C0rntwkW.woff2)format("woff2"),url(/assets/open-sans-latin-500-normal-BxcNt415.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-latin-600-normal-Cp4N6AwT.woff2)format("woff2"),url(/assets/open-sans-latin-600-normal-C3dWW5mx.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-latin-700-normal-CceUhp2e.woff2)format("woff2"),url(/assets/open-sans-latin-700-normal-CZCQA30i.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text:#f3f7fb;--muted:#b0c2d4;--cyan:#67e8f9;--line:#fff2;--mono:Consolas, "Liberation Mono", monospace;font-synthesis:none;color:var(--text);background:#061120;font-family:Open Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 18% 8%,#00c1ff38,#0000 48%),radial-gradient(circle at 86% 26%,#00a4ff24,#0000 54%),radial-gradient(circle at 78% 96%,#d455751f,#0000 46%),linear-gradient(#061120 0%,#0a1730 34%,#0b1b2e 70%,#111d2f 100%);min-width:300px;min-height:100vh;margin:0;font-size:15px;line-height:1.75}body:before{content:"";pointer-events:none;opacity:.35;background-image:linear-gradient(#ffffff07 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--cyan);outline-offset:5px;border-radius:4px}::selection{color:#fff;background:#67e8f947}h1,h2,h3,p{margin:0}.container{width:min(1120px,100% - 64px);margin-inline:auto}.site-header{z-index:5;border-bottom:1px solid var(--line);background:#00000045;position:relative}.navigation{justify-content:space-between;align-items:center;height:72px;display:flex}.brand{text-transform:uppercase;align-items:center;gap:14px;font-size:14px;font-weight:700;display:flex}.brand-logo{flex-shrink:0;width:42px;height:36px;display:block;position:relative;overflow:hidden}.brand-logo img{width:80px;max-width:none;height:80px;position:absolute;top:-22px;left:-19px}.nav-links{align-items:center;gap:12px;font-size:12px;display:flex}.nav-links a{border:1px solid #0000;border-radius:999px;padding:6px 14px;transition:background .2s}.nav-links .nav-writing{background:#67e8f91a;border-color:#a5f3fc4d}.nav-links a:hover{background:#67e8f926;border-color:#a5f3fc4d}.nav-links span{color:var(--cyan);margin-left:4px}.intro{text-align:center;padding:93px 0 84px}.eyebrow{text-transform:uppercase;letter-spacing:.23em;color:#b1dce7;font-size:11px}.intro h1{letter-spacing:-1.8px;margin:20px auto;font-size:clamp(36px,4.5vw,57px);font-weight:700;line-height:1.15}.intro-description{color:var(--muted);max-width:545px;margin:auto;font-size:16px;line-height:1.8}.writing-section{padding:0 0 92px}.section-label{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.section-label h2{letter-spacing:-.4px;font-size:21px;font-weight:700}.section-label>a{color:var(--muted);font-size:12px}.section-label>a:hover{color:var(--cyan)}.section-label>a>span{color:var(--cyan);padding-left:5px}.featured-post{background:#00000030;border:1px solid #a5f3fc40;border-radius:20px;grid-template-columns:1.12fr 1fr;transition:border-color .2s,background .2s;display:grid;position:relative;overflow:hidden}.featured-post:hover{background:#0000003d;border-color:#a5f3fc80}.featured-post:not(:has(.featured-example)){display:block}.featured-copy{padding:38px}.tags{flex-wrap:wrap;gap:7px;display:flex}.tag{color:#c0dce8;background:#00000026;border:1px solid #ffffff29;border-radius:999px;padding:3px 10px;font-size:10px}.tag:first-child{color:#b4f4fb;background:#67e8f91a;border-color:#a5f3fc4d}.featured-copy h3{letter-spacing:-.7px;overflow-wrap:anywhere;margin:19px 0 13px;font-size:clamp(25px,2.5vw,32px);font-weight:700;line-height:1.35}.featured-copy>p{color:var(--muted);max-width:650px;font-size:14px;line-height:1.9}.featured-link:after{content:"";z-index:2;position:absolute;inset:0}.featured-link:focus-visible{outline:none}.featured-post:has(.featured-link:focus-visible){outline:2px solid var(--cyan);outline-offset:5px}.post-meta{color:#a1b9ca;flex-wrap:wrap;align-items:center;gap:9px;font-size:11px;display:flex}.featured-copy .post-meta{margin-top:20px}.meta-dot{color:#7596ae}.read-article,.button-link{background:var(--cyan);color:#06141b;border:1px solid var(--cyan);border-radius:999px;align-items:center;gap:20px;margin-top:26px;padding:10px 19px;font-size:12px;font-weight:700;display:inline-flex}.read-article>span{font-size:18px;line-height:1}.featured-example{align-items:center;min-width:0;padding:32px 32px 32px 10px;display:flex}.example-window{background:#0209128c;border:1px solid #ffffff1f;border-radius:12px;width:100%}.example-title{font:11px var(--mono);color:#bee8ef;border-bottom:1px solid #ffffff14;justify-content:space-between;padding:12px 20px;display:flex}.example-title span{color:#819aac}.example-window pre{font:12px/2 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;color:#d1e1ec;margin:0;padding:25px 21px 29px}.example-window code{font:inherit}.post-list{margin-top:24px}.post-row{border:1px solid var(--line);background:#00000025;border-radius:16px;justify-content:space-between;align-items:center;gap:35px;margin-top:20px;padding:30px 35px;display:flex}.post-row h3{margin:12px 0 8px;font-size:22px;line-height:1.5}.post-row h3 a:hover{color:var(--cyan)}.post-row p{color:var(--muted);font-size:13px}.post-row>.post-meta{flex-shrink:0;max-width:150px}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:30px 0 34px;display:flex}.footer-name{text-transform:uppercase;font-size:12px;font-weight:700}.site-footer p{color:#a0b7c9;margin-top:5px;font-size:11px}.footer-links{color:#b5c7d5;gap:25px;font-size:11px;display:flex}.footer-links a:hover{color:var(--cyan)}.footer-links>span{color:#9bb2c5}.article-heading{max-width:1000px;padding:33px 0 42px}.back-link{color:var(--muted);align-items:center;gap:10px;margin-bottom:31px;font-size:12px;display:inline-flex}.back-link:hover{color:var(--cyan)}.article-heading h1{letter-spacing:-1.5px;overflow-wrap:anywhere;text-wrap:balance;margin:20px 0;font-size:clamp(32px,4.2vw,53px);font-weight:700;line-height:1.22}.article-description{color:#b5cbdc;max-width:780px;font-size:17px;line-height:1.85}.article-byline{align-items:center;gap:14px;margin-top:26px;display:flex}.author-name{font-size:12px;font-weight:600}.article-byline .post-meta{margin-top:3px;font-size:11px}.article-layout{border-top:1px solid var(--line);grid-template-columns:215px minmax(0,740px);gap:60px;padding:37px 0 75px;display:grid}.article-sidebar{scrollbar-width:thin;align-self:start;max-height:calc(100dvh - 64px);position:sticky;top:32px;overflow-y:auto}.toc summary{cursor:pointer;justify-content:space-between;align-items:center;padding:6px 0 16px;font-size:12px;font-weight:700;list-style:none;display:flex}.toc summary::-webkit-details-marker{display:none}.toc summary>span{color:var(--cyan);font-size:17px}.toc:not([open]) summary>span{transform:rotate(180deg)}.toc ol{border-left:1px solid var(--line);margin:0 0 25px;padding:0;list-style:none}.toc a{color:#a2bfd2;border-left:1px solid #0000;margin-left:-1px;padding:7px 0 7px 15px;font-size:11px;line-height:1.7;display:block}.toc a:hover{color:#eef9ff}.toc a[aria-current]{color:var(--cyan);border-left-color:var(--cyan)}.source-link{color:#a6c4d7;border-top:1px solid var(--line);gap:10px;padding-top:15px;font-size:11px;display:inline-flex}.source-link:hover{color:var(--cyan)}.article-column{min-width:0}.prose{color:#c8d8e5;overflow-wrap:break-word;font-size:15px;line-height:1.95}.prose>p{margin:0 0 24px}.prose>p:first-child{color:#e0eaf1;font-size:17px}.prose strong{color:#f3f8fc;font-weight:700}.prose h2,.prose h3{color:var(--text);letter-spacing:-.4px;scroll-margin-top:35px;font-weight:700;line-height:1.4}.prose h2{margin:45px 0 19px;font-size:25px}.prose h3{margin:32px 0 16px;font-size:20px}.prose a:not(.heading-anchor){color:#8be9f5;text-underline-offset:4px;overflow-wrap:anywhere;-webkit-text-decoration:underline #67e8f960;text-decoration:underline #67e8f960}.prose a:hover{-webkit-text-decoration-color:var(--cyan);text-decoration-color:var(--cyan)}.heading-anchor{font:16px var(--mono);color:var(--cyan);opacity:0;padding:0 10px}.prose h2:hover .heading-anchor,.prose h3:hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}.prose blockquote{border-left:2px solid var(--cyan);color:#d2edf2;background:#67e8f910;border-radius:0 9px 9px 0;margin:28px 0;padding:18px 23px;font-size:16px}.prose blockquote p{margin:0}.prose ul,.prose ol{margin:18px 0 26px;padding-left:23px}.prose li{margin:11px 0;padding-left:6px}.prose li::marker{color:#8dd7e5}.prose :not(pre)>code{font:.87em var(--mono);color:#cfecf5;overflow-wrap:anywhere;background:#00000024;border:1px solid #ffffff12;border-radius:4px;padding:2px 5px}.prose pre{tab-size:4;scrollbar-width:thin;margin:0;padding:20px 23px 23px;line-height:1.8;overflow-x:auto}.prose pre code{font:12px/1.8 var(--mono);color:#d0e0ed;white-space:pre;overflow-wrap:normal}.code-frame{background:#020a148c;border:1px solid #ffffff24;border-radius:11px;margin:25px 0 29px;overflow:hidden}.code-toolbar{font:11px var(--mono);color:#a4bed0;border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;padding:8px 15px 8px 23px;display:flex}.code-toolbar button{color:#abc5d7;background:0 0;border:1px solid #0000;border-radius:5px;padding:6px 9px;font-size:10px}.code-toolbar button:hover{color:var(--cyan);background:#67e8f908;border-color:#67e8f940}.hljs-comment{color:#8fa9bc}.hljs-keyword,.hljs-literal{color:#c8b0f0}.hljs-string{color:#a0d9b9}.hljs-title,.hljs-title.function_{color:#8be1e9}.hljs-built_in,.hljs-type{color:#9dc8e8}.hljs-number,.hljs-meta{color:#edc295}.prose hr{background:var(--line);border:0;height:1px;margin:38px 0}.prose img{border-radius:8px;max-width:100%;height:auto}.table-scroll{margin:25px 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:13px}.prose td,.prose th{text-align:left;border:1px solid var(--line);padding:10px 14px}.prose th{color:var(--text);background:#ffffff0a}.article-end{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding-top:25px;display:flex}.text-link{color:#c0dbe9;font-size:12px}.text-link:hover{color:var(--cyan)}.reading-progress{z-index:10;width:100%;height:2px;color:var(--cyan);appearance:none;background:0 0;border:0;position:fixed;top:0;left:0}.reading-progress::-webkit-progress-bar{background:0 0}.reading-progress::-webkit-progress-value{background:var(--cyan)}.reading-progress::-moz-progress-bar{background:var(--cyan)}.error-page{min-height:70vh;padding:90px 0}.error-page h1{letter-spacing:-1px;margin-bottom:20px;font-size:clamp(32px,4vw,50px)}.error-page p{color:var(--muted);max-width:580px}.loading{min-height:70vh;color:var(--muted);padding:130px 0}.no-script{color:var(--muted);padding-block:25px}.no-script a{color:var(--cyan);text-decoration:underline}.skip-link{z-index:20;background:var(--cyan);color:#071321;border-radius:5px;padding:10px 20px;font-weight:700;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#main:focus{outline:none}@media (width<=1050px){.featured-copy{padding:29px}.featured-example{padding:24px 24px 24px 0}.example-window pre{padding-inline:16px;font-size:11px}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:35px}.toc a{font-size:10px}.article-heading h1{font-size:45px}}@media (width<=760px){.container{width:calc(100% - 40px)}.navigation{height:66px}.brand{gap:10px;font-size:11px}.nav-links{gap:2px;font-size:11px}.nav-links a{padding:5px 11px}.intro{padding:59px 0 52px}.intro h1{letter-spacing:-1.1px;margin:18px auto;font-size:clamp(34px,6.5vw,47px)}.eyebrow{font-size:9px}.intro-description{max-width:430px;font-size:14px}.section-label h2{font-size:19px}.section-label>a{font-size:11px}.featured-post{border-radius:16px;display:block}.featured-copy{padding:26px}.featured-copy h3{font-size:27px}.featured-copy>p{font-size:13px}.featured-example{padding:0 26px 26px}.example-window pre{padding:19px 20px;font-size:12px}.writing-section{padding-bottom:52px}.site-footer{flex-direction:column;align-items:flex-start;gap:22px;padding:25px 0}.footer-links{gap:20px;width:100%;font-size:10px}.footer-links>span{margin-left:auto}.article-heading{padding-top:26px;padding-bottom:29px}.back-link{margin-bottom:26px;font-size:11px}.article-heading h1{letter-spacing:-1px;font-size:clamp(30px,6vw,43px);line-height:1.27}.article-description{font-size:14px}.article-byline{margin-top:23px}.article-layout{grid-template-columns:1fr;gap:26px;padding-top:22px;padding-bottom:45px}.article-sidebar{border-bottom:1px solid var(--line);max-height:none;padding-bottom:16px;position:static}.toc ol{grid-template-columns:1fr 1fr;gap:0 14px;margin-bottom:17px;display:grid}.toc a{padding:6px 0 6px 12px;font-size:10px}.source-link{padding-top:12px;font-size:10px}.prose{font-size:14px}.prose>p:first-child{font-size:15px}.prose h2{margin-top:36px;scroll-margin-top:22px;font-size:23px}.prose blockquote{padding:15px 18px;font-size:14px}.prose pre{padding:17px 18px 20px}.prose pre code{font-size:11px}.code-toolbar{padding-left:18px}.post-row{padding:25px;display:block}.post-row h3{font-size:22px}.post-row>.post-meta{max-width:none;margin-top:18px}}@media (width<=380px){.container{width:calc(100% - 32px)}.brand{gap:7px;font-size:10px}.nav-links a{padding-inline:8px}.intro h1{font-size:31px}.featured-copy{padding:23px}.featured-copy h3{font-size:25px}.featured-example{padding:0 22px 22px}.example-window pre{padding:16px;font-size:11px}.footer-links{gap:17px;font-size:9px}.article-heading h1{font-size:29px}.toc ol{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media print{html,body{color:#18212b;background:#fff}body:before,.site-header,.site-footer,.skip-link,.article-sidebar,.reading-progress,.back-link,.article-end,.heading-anchor,.code-toolbar button{display:none!important}.container{width:100%;max-width:none}.article-heading{padding:0 0 25px}.article-heading h1{color:#111;max-width:none;font-size:30px}.article-description,.post-meta,.author-name,.prose,.prose>p:first-child,.prose strong,.prose h2,.prose h3{color:#222}.article-layout{padding:20px 0 0;display:block}.prose{font-size:11pt;line-height:1.65}.prose a:not(.heading-anchor){color:#14606c}.prose :not(pre)>code,.prose pre code{color:#26333c;background:0 0}.prose pre,.prose pre code{white-space:pre-wrap;overflow-wrap:anywhere}.code-frame{break-inside:avoid;background:#f5f7f8}.code-toolbar{color:#333;background:#e9edf0}.hljs-comment{color:#5d6c72}.hljs-keyword,.hljs-literal{color:#673486}.hljs-title,.hljs-title.function_,.hljs-built_in,.hljs-type{color:#245f7c}.hljs-string{color:#32644c}.prose blockquote{color:#333;background:#f0f6f6}.prose h2{break-after:avoid}.tag{color:#245f7c!important;border-color:#aaa!important}}
