@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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}:root{--gray-0:#f6f7f9;--gray-1:#eceef1;--gray-2:#e1e4e9;--gray-3:#cfd3da;--gray-4:#b0b5be;--gray-5:#8b919b;--gray-6:#666c76;--gray-7:#474c55;--gray-8:#2b2f36;--gray-9:#15171b;--gray-10:#0d0f12;--canvas:var(--gray-0);--surface:#fff;--ink:var(--gray-9);--ink-2:var(--gray-6);--rule:var(--gray-2);--rule-strong:var(--gray-4);--dot-off:#e4e6ea;--signal:#ff5a1f;--font-sans:-apple-system, system-ui, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, "IBM Plex Mono", monospace;--text-h1:1.75rem;--text-h2:1.375rem;--text-h3:1.1875rem;--text-h4:1.0625rem;--text-body:1.0625rem;--text-small:.9375rem;--text-caption:.8125rem;--leading-h1:1.2;--leading-h2:1.25;--leading-h3:1.3;--leading-h4:1.4;--leading-body:1.6;--leading-small:1.5;--leading-caption:1.45;--tracking-h1:-.02em;--tracking-h2:-.018em;--tracking-h3:-.012em;--tracking-h4:-.006em;--text-label:var(--text-caption);--text-ui:var(--text-small);--text-title:var(--text-h1);--pitch:15px;--col-read:600px;--col-wide:720px;--gutter:clamp(1rem, 4vw, 2rem);--space-1:calc(var(--pitch) * .5);--space-2:var(--pitch);--space-3:calc(var(--pitch) * 2);--space-4:calc(var(--pitch) * 3);--space-5:calc(var(--pitch) * 4);--space-6:calc(var(--pitch) * 6);--space-7:calc(var(--pitch) * 8)}*,:before,:after{box-sizing:border-box}html{background:var(--canvas);color:var(--ink);font-family:var(--font-sans);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100dvh;font-size:var(--text-ui);flex-direction:column;margin:0;line-height:1.5;display:flex}main{width:100%;max-width:calc(var(--col-wide) + 2 * var(--gutter));padding:0 var(--gutter);flex:1;margin:0 auto}main:has(>.home){max-width:calc(96rem + 2 * var(--gutter))}::selection{background:var(--ink);color:var(--canvas)}a{color:inherit;text-decoration:none;transition:color .16s}@media (prefers-reduced-motion:reduce){a{transition:none}}.ul,.prose a,.colophon a,.post-header .meta a{--ul-y:100%;background-image:linear-gradient(var(--ink-2), var(--ink-2)), linear-gradient(var(--rule), var(--rule));background-size:0% 1.5px,100% 1.5px;background-position:0 var(--ul-y), 0 var(--ul-y);background-repeat:no-repeat;padding-bottom:.08em;transition:background-size .24s cubic-bezier(.2,.7,.2,1),color .16s}.ul:hover,a:hover .ul,.prose a:hover,.colophon a:hover,.post-header .meta a:hover{background-size:100% 1.5px,100% 1.5px}@media (prefers-reduced-motion:reduce){.ul,.prose a,.colophon a,.post-header .meta a{transition:none}}:focus-visible{outline:1px solid var(--ink);outline-offset:3px}img,svg,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4{letter-spacing:0;margin:0;font-weight:500;line-height:1.25}.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}.mono,.label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:0}.muted{color:var(--ink-2)}.section-label{font-family:var(--font-sans);font-size:var(--text-body);letter-spacing:-.012em;color:var(--ink);margin:0 0 var(--space-2);font-weight:500;line-height:1.3}.live{background:var(--signal);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-left:.6em;display:inline-block;position:relative;top:-1px}@media (prefers-reduced-motion:no-preference){.live{animation:4.5s ease-in-out infinite breathe}@keyframes breathe{0%,to{opacity:1}50%{opacity:.35}}}.site-header{width:100%;max-width:calc(var(--col-wide) + 2 * var(--gutter));padding:var(--space-3) var(--gutter) var(--space-5);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.wordmark{color:var(--ink);line-height:0;text-decoration:none;display:block}.wordmark .logo{width:56px;height:auto}.site-nav{gap:var(--space-2);font-size:var(--text-ui);color:var(--ink-2);display:flex}.site-nav .ul{background-size:0% 1.5px,0% 1.5px}.site-nav a:hover .ul{background-size:100% 1.5px,0% 1.5px}.site-nav a:hover{color:var(--ink)}.site-nav a[aria-current=page]{color:var(--ink);cursor:default}.site-nav a[aria-current=page]:hover .ul{background-size:0% 1.5px,0% 1.5px}.site-footer{width:100%;max-width:calc(var(--col-wide) + 2 * var(--gutter));margin:var(--space-7) auto 0;padding:0 var(--gutter) var(--space-4);gap:var(--space-1);color:var(--gray-5);flex-wrap:wrap;font-size:.75rem;display:flex}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--ink)}main:has(>.home){max-width:none;padding:0}.home{background:var(--gray-1);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.masthead{color:var(--ink)}.home-copy{z-index:1;background:var(--surface);padding:var(--space-5) var(--gutter) var(--space-5);font-size:var(--text-body);gap:var(--space-6);flex-direction:column;display:flex;position:relative}.home-copy-body>*,.home-foot{width:100%;max-width:56ch;margin-inline:auto}.home-copy-body>*+*{margin-top:var(--space-3)}.home-copy .site-footer{max-width:none;margin:0;padding:0}@media (width>=900px){.home{background:linear-gradient(to right, var(--gray-1) 50%, var(--surface) 50%);grid-template-columns:1fr 1fr;min-height:100svh}.masthead{position:relative}.home .display-figure{width:128%;position:absolute;inset:0 auto 0 0;-webkit-mask-image:linear-gradient(90deg,#000 39%,#0000008c 100%);mask-image:linear-gradient(90deg,#000 39%,#0000008c 100%)}.home-copy{padding:var(--space-6) clamp(2rem, 6vw, 6rem) 24px;background:0 0;justify-content:center}.home-copy-body{margin-block:auto}.home-copy .site-footer{margin-top:var(--space-5)}.home-copy-body>*,.home-foot{max-width:48ch;margin-inline:0}.home .display-figure,.home .display{height:100%}}.display-figure{height:100%;margin:0}.display{color:currentColor;width:100%;height:clamp(300px,70vw,560px);display:block;position:relative}.display-still,.display-live{width:100%;height:100%;position:absolute;inset:0}.display-still{object-fit:cover;object-position:center}.display-live{display:none}.js .display-still,.display.is-live .display-still{visibility:hidden}.display.is-live .display-live{display:block}@media (width<=899px){.home .display{height:clamp(300px,70vw,560px)}}.manifesto{text-align:left;text-wrap:pretty;color:var(--ink-2);line-height:1.5}.manifesto-head .reveal{margin-right:.3em;display:inline-block}.manifesto-head{font-size:var(--text-h2);font-weight:500;line-height:var(--leading-h2);letter-spacing:var(--tracking-h2);color:var(--ink);margin:0 0 var(--space-2);text-wrap:balance}.manifesto p{margin:0}.manifesto b{color:var(--ink);background:linear-gradient(transparent 76%, var(--gray-2) 76%, var(--gray-2) 94%, transparent 94%);margin:0 -.08em;padding:0 .08em;font-weight:600}.post-list{margin:0;padding:0;list-style:none}.post-list a{justify-content:space-between;align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0;color:var(--ink);text-decoration:none;display:flex}.post-list .text{min-width:0;display:block}.post-list .title{font-size:var(--text-ui);line-height:1.4}.post-list .blurb{font-size:var(--text-ui);color:var(--ink-2);text-wrap:pretty;max-width:52ch;padding-right:var(--space-2);margin-top:.2em;line-height:1.45;display:block}.post-list.has-blurbs a{padding:var(--space-2) 0}.post-list .meta{font-size:var(--text-label);color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0}.post-list .meta .sep{color:var(--rule);margin:0 .4em}.more-link{margin-top:var(--space-2);font-size:var(--text-label);color:var(--ink-2);text-decoration:none;display:inline-block}.more-link:hover{color:var(--ink)}.more-link .arrow{margin-left:.15em;transition:transform .26s cubic-bezier(.2,.7,.2,1);display:inline-block}.more-link:hover .arrow{transform:translate(.25em)}.more-link.back .arrow{margin:0 .15em 0 0}.more-link.back:hover .arrow{transform:translate(-.25em)}@media (prefers-reduced-motion:reduce){.more-link .arrow{transition:none}}.year-group{margin-top:var(--space-5)}.year-group .section-label{font-size:var(--text-h2);line-height:var(--leading-h2);letter-spacing:var(--tracking-h2)}.post-list.has-blurbs .title{font-size:var(--text-body);font-weight:500}.year-group:first-of-type{margin-top:0}.page-field{--field-h:clamp(360px, 56vh, 600px);inset:auto 0;top:calc(var(--field-h) * -.5);height:var(--field-h);pointer-events:none;color:var(--ink);position:fixed;-webkit-mask-image:linear-gradient(#000 50%,#0000 100%);mask-image:linear-gradient(#000 50%,#0000 100%)}body.has-field{overflow-x:clip}.page-field .display-figure,.page-field .display{height:100%}body.has-field{position:relative}body.has-field>.site-header,body.has-field>main,body.has-field>.site-footer{z-index:1;position:relative}.tics{left:var(--space-3);z-index:2;flex-direction:column;gap:4px;display:none;position:fixed;top:50%;transform:translateY(-50%)}.js .tics:not([hidden]){display:flex}.tic{background:var(--gray-3);cursor:pointer;border:0;width:10px;height:1.5px;margin:0;padding:0;transition:background-color .2s,width .2s;display:block}.tic.is-head{width:18px}.tic.is-past{background:var(--gray-4)}.tic.is-current{background:var(--ink)}.tic:hover{background:var(--ink-2)}.tic:focus-visible{outline:1.5px solid var(--signal);outline-offset:3px}@media (width<=959px){.tics{display:none!important}}.post{max-width:var(--col-read);margin-inline:auto}.post-header{padding:var(--space-5) 0 var(--space-5)}.post-header .meta{font-size:var(--text-label);color:var(--ink-2);font-variant-numeric:tabular-nums;margin:var(--space-2) 0 0;flex-wrap:wrap;gap:0 .35em;display:flex}.post-header .meta .sep{color:var(--gray-4)}.post-header h1{font-size:var(--text-h1);font-weight:500;line-height:var(--leading-h1);letter-spacing:var(--tracking-h1);text-wrap:balance}.post-header .deck{font-size:var(--text-body);color:var(--ink-2);margin:var(--space-2) 0 0;line-height:1.5}.prose{font-size:var(--text-body);line-height:var(--leading-body)}.prose>:first-child{margin-top:0}.prose p{margin:0 0 1.3em}.prose h2,.prose h3,.prose h4{color:var(--ink);text-wrap:balance}.prose h2{font-size:var(--text-h2);font-weight:500;line-height:var(--leading-h2);letter-spacing:var(--tracking-h2);margin:2em 0 .6em}.prose h3{font-size:var(--text-h3);font-weight:500;line-height:var(--leading-h3);letter-spacing:var(--tracking-h3);margin:1.9em 0 .55em}.prose h4{font-size:var(--text-h4);font-weight:600;line-height:var(--leading-h4);letter-spacing:var(--tracking-h4);margin:1.8em 0 .5em}.prose h2+h3,.prose h3+h4{margin-top:.8em}.prose .anchor{color:var(--gray-4);opacity:0;margin-left:.4em;font-weight:400;text-decoration:none;transition:opacity .16s,color .16s}.prose h2:hover .anchor,.prose h3:hover .anchor,.prose h4:hover .anchor,.prose .anchor:focus-visible{opacity:1}.prose .anchor:hover{color:var(--ink-2)}.prose strong{font-weight:500}.prose em{font-style:italic}.prose hr{border:0;width:15px;height:15px;margin:2.75em auto;position:relative;transform:rotate(45deg)}.prose hr:before,.prose hr:after{content:"";position:absolute;inset:0}.prose hr:before{background-color:var(--gray-4);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2 2'%3E%3Crect x='.11' y='.11' width='.78' height='.78' rx='.17'/%3E%3Crect x='.11' y='1.11' width='.78' height='.78' rx='.17'/%3E%3Crect x='1.11' y='1.11' width='.78' height='.78' rx='.17'/%3E%3C/svg%3E") 50%/contain no-repeat}.prose hr:after{background-color:var(--ink);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2 2'%3E%3Crect x='1.11' y='.11' width='.78' height='.78' rx='.17'/%3E%3C/svg%3E") 50%/contain no-repeat}.prose blockquote{padding:0 0 0 var(--space-2);border-left:1px solid var(--rule);color:var(--ink-2);margin:1.5em 0}.prose blockquote p:last-child{margin-bottom:0}.prose blockquote .cite{font-size:var(--text-caption);line-height:var(--leading-caption);margin-top:.6em}.prose ul,.prose ol{margin:0 0 1.3em;padding-left:1.5em}.prose li{margin:.3em 0}.prose li::marker{color:var(--ink-2)}.prose li>ul,.prose li>ol{margin:.3em 0 0}.prose .contains-task-list{padding-left:1.5em;list-style:none}.prose .task-list-item input{appearance:none;vertical-align:-.05em;border:1px solid var(--rule-strong);background:var(--surface);border-radius:3px;width:.85em;height:.85em;margin:0 .55em 0 -1.5em}.prose .task-list-item input:checked{background:var(--ink) center / 70% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 5.2l2.2 2.2L8 3' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");border-color:var(--ink)}.prose del{color:var(--ink-2);text-decoration-color:var(--gray-4)}.prose kbd{font-family:var(--font-mono);border:1px solid var(--rule-strong);background:var(--surface);color:var(--ink);border-bottom-width:2px;border-radius:3px;padding:.05em .4em .1em;font-size:.8em}.prose code{font-family:var(--font-mono);background:var(--surface);border:1px solid var(--rule);border-radius:3px;padding:.05em .35em;font-size:.85em}.prose pre{border:1px solid var(--rule);padding:var(--space-2);border-radius:4px;margin:1.5em 0;font-size:.8em;line-height:1.6;overflow-x:auto;background-color:var(--surface)!important}.prose pre code{background:0 0;border:0;padding:0;font-size:1em}.prose pre[data-title]:before{content:attr(data-title);margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-2)) var(--space-2);padding:.5em var(--space-2);border-bottom:1px solid var(--rule);color:var(--ink-2);font-size:.9em;display:block}.prose pre .line.hl{width:calc(100% + 2 * var(--space-2));margin:0 calc(-1 * var(--space-2));padding:0 var(--space-2);background:var(--gray-1);display:inline-block}.prose img{margin:2em 0 .5em}.prose p>img:only-child{margin:2em 0}.prose .screen{text-align:center}.prose .screen img{border:1px solid var(--rule);border-radius:16px;width:auto;max-width:100%;max-height:640px;display:inline-block}.prose .screens p:not(:has(>em:only-child)){justify-content:center;align-items:flex-start;gap:var(--space-2);margin:2em 0 .5em;display:flex}.prose .screens img{border:1px solid var(--rule);border-radius:16px;flex:1 1 0;width:auto;min-width:0;max-width:100%;margin:0}.prose .screens p>em:only-child,.prose video+em,.prose .embed+em{font-size:var(--text-caption);line-height:var(--leading-caption);color:var(--ink-2);margin:.5em 0 2em;font-style:normal;display:block}.prose video{border:1px solid var(--rule);background:var(--gray-1);border-radius:4px;width:100%;height:auto;margin:2em 0 .5em;display:block}.prose .embed{aspect-ratio:16/9;border:1px solid var(--rule);border-radius:4px;margin:2em 0 .5em;overflow:hidden}.prose .embed iframe{border:0;width:100%;height:100%;display:block}.prose aside{padding:var(--space-2);border:1px solid var(--rule);font-size:var(--text-small);line-height:var(--leading-small);color:var(--ink-2);border-radius:4px;margin:1.5em 0}.prose aside[data-label]:before{content:attr(data-label);font-size:var(--text-caption);color:var(--ink);margin-bottom:.4em;font-weight:600;display:block}.prose aside>:last-child{margin-bottom:0}.prose figcaption,.prose img+em{font-size:var(--text-caption);line-height:var(--leading-caption);color:var(--ink-2);margin:.5em 0 2em;font-style:normal;display:block}.prose .wide{--wide:max(100%, min(60rem, 100vw - 2 * var(--space-5)));width:var(--wide);margin-left:calc((100% - var(--wide)) / 2)}.prose .wide img{width:100%;height:auto}.prose .wide>:first-child{margin-top:0}.prose .wide>:last-child{margin-bottom:0}.prose div.wide{margin-top:1.5em;margin-bottom:1.5em}.prose table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:var(--text-label);margin:1.5em 0}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:.5em .75em .5em 0}.prose th{color:var(--ink-2);font-weight:500}.prose sup{line-height:0}.prose sup a{font-variant-numeric:tabular-nums;color:var(--ink-2);padding:0 .1em;font-size:.7em;font-weight:500;text-decoration:none}.prose sup a:hover,.prose sup a[aria-expanded=true]{color:var(--ink)}.prose .sidenote{font-size:var(--text-caption);line-height:var(--leading-caption);color:var(--ink-2);text-wrap:pretty;display:none}.prose .sidenote .sn-num{vertical-align:.35em;margin-right:.3em;font-size:.8em;font-weight:500}.prose .sidenote .sn-p{display:block}.prose .sidenote .sn-p+.sn-p{margin-top:.4em}.prose .sidenote.is-open{padding-left:var(--space-2);border-left:1px solid var(--rule);margin:.6em 0 .8em;display:block}@media (width>=1120px){.prose .sidenote,.prose .sidenote.is-open{--sn-w:200px;float:right;clear:right;width:var(--sn-w);margin:.2em calc(-1 * (var(--sn-w) + var(--space-3))) .8em 0;border:0;padding:0;display:block}.prose .footnotes{display:none}}.js .prose .footnotes{display:none}.prose .footnotes{border-top:1px solid var(--rule);font-size:var(--text-label);color:var(--ink-2);margin-top:3em;padding-top:1em}.prose .footnotes ol{padding-left:1.5em}.prose .footnotes p{margin:0 0 .5em}.colophon{font-size:var(--text-label);color:var(--ink-2);margin:var(--space-5) 0 0;border-top:1px solid var(--rule);padding-top:var(--space-2)}.colophon p{margin:0}.colophon p+p{margin-top:.3em}.post-nav{margin:var(--space-5) 0 0}.post-nav .more-link{font-size:var(--text-ui);margin-top:0}.prose .swatches{gap:var(--space-2) var(--space-1);grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));margin:1.5em 0 2em;display:grid}.prose .swatch i{background:var(--c);border:1px solid var(--rule);border-radius:4px;height:3rem;display:block}.prose .swatch b,.prose .swatch span{font-family:var(--font-mono);color:var(--ink-2);font-size:.6875rem;font-weight:400;line-height:1.5;display:block}.prose .swatch b{color:var(--ink);margin-top:.4em}.nothing{padding:var(--space-3) 0 0}.nothing .display-figure{max-width:480px;margin-left:var(--space-5)}.nothing .display{height:clamp(200px,26vw,262px);color:var(--ink)}.nothing p{font-family:var(--font-mono);font-size:var(--text-label);color:var(--ink-2);margin:var(--space-4) 0 0}.nothing a{color:var(--ink);text-decoration:none}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0}.js.named .reveal{animation:.45s cubic-bezier(.2,.7,.2,1) both rise;animation-delay:var(--d,0s)}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}@view-transition{navigation:auto}.site-header{view-transition-name:site-header}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation:.14s ease-in both page-out}::view-transition-new(root){animation:.32s cubic-bezier(.2,.7,.2,1) both page-in}::view-transition-old(site-header),::view-transition-new(site-header){mix-blend-mode:normal;animation:none}::view-transition-old(site-header):only-child{animation:.14s ease-in both page-out}::view-transition-new(site-header):only-child{animation:.32s cubic-bezier(.2,.7,.2,1) both page-in}@keyframes page-out{to{opacity:0}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none}}
