@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-opsz-normal.BjhtXyW2.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-opsz-normal.BQn1nviT.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-opsz-normal.s-izfB6B.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-opsz-italic.DTr-ymY4.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-opsz-italic.CSPGnFdO.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-opsz-italic.kJKFiXvB.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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: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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #f6f2e9;--paper-edge: #ece6d8;--ink: #1f2b47;--text: #2b2a28;--muted: #6b675f;--rule: #d8d0bf;--grid: rgba(70, 98, 150, .09);--margin-line: #d9907f;--pencil: #b4442c;--highlight: rgba(244, 214, 92, .55);--hl-ml: rgba(140, 182, 238, .42);--hl-health: rgba(242, 150, 165, .38);--hl-infra: rgba(140, 205, 160, .45);--hl-products: rgba(244, 214, 92, .55);--hl-teaching: rgba(196, 164, 236, .42);--tape-1: rgba(168, 196, 228, .78);--tape-2: rgba(238, 182, 172, .78);--tape-3: rgba(186, 212, 172, .8);--sticky: #fbefb5;--serif: "Newsreader Variable", "Iowan Old Style", Georgia, serif;--mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--margin: 9.5rem;--measure: 38rem;--gap: 2rem;color-scheme:light}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.4 0 0 0 0 0.3 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");color:var(--text);font-family:var(--serif);font-size:1.1875rem;line-height:1.6;font-optical-sizing:auto;-webkit-font-smoothing:antialiased}::selection{background:var(--highlight);color:inherit}h1,h2,h3{color:var(--ink);font-weight:450;line-height:1.15;letter-spacing:-.01em;margin:0 0 .6em;text-wrap:balance}h1{font-size:clamp(2.1rem,4.6vw,3rem)}h2{font-size:1.65rem}h3{font-size:1.3rem}p{margin:0 0 1em;text-wrap:pretty}a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;text-decoration-color:color-mix(in srgb,var(--ink) 40%,transparent);background-image:linear-gradient(var(--highlight),var(--highlight));background-size:0% .55em;background-position:0 88%;background-repeat:no-repeat;transition:background-size .25s ease}a:hover{background-size:100% .55em;text-decoration-color:transparent}a:focus-visible{outline:2px solid var(--pencil);outline-offset:3px;border-radius:2px}.label{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);line-height:1.5}.lede{font-size:clamp(1.35rem,2.6vw,1.6rem);line-height:1.4;color:var(--ink)}.muted{color:var(--muted)}.sheet{position:relative;max-width:calc(var(--margin) + var(--measure) + 6rem);margin:0 auto;padding:0 1.5rem}.sheet:before{content:"";position:absolute;top:0;bottom:0;left:calc(1.5rem + var(--margin) - 1.1rem);border-left:1px solid var(--margin-line);opacity:.7;pointer-events:none}.row{display:grid;grid-template-columns:var(--margin) minmax(0,var(--measure));column-gap:0;margin-bottom:3.25rem}.row>.stamp{padding-right:2rem;padding-top:.45em}.row>.body{min-width:0}section+section{border-top:1px solid var(--rule);padding-top:3rem}.note{display:inline-block;font-style:italic;font-size:.95rem;line-height:1.35;color:var(--pencil);transform:rotate(-1.5deg);transform-origin:left top}.photo{float:right;width:15rem;margin:.5rem 0 1.25rem 2rem}.print{position:relative;padding:8px 8px 10px;background:#fff;box-shadow:0 1px 2px #0000001f,0 6px 14px -6px #0003;transform:rotate(1.8deg)}.print:before{content:"";position:absolute;top:-12px;left:50%;width:5.5rem;height:1.6rem;transform:translate(-50%) rotate(-4deg);background:var(--photo-tape, var(--tape-1));box-shadow:0 1px 1px #0000000f}.print img{display:block;width:100%;height:auto}.photo figcaption{margin-top:.9rem}.plain{list-style:none;padding:0;margin:0}.arrow-links{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;font-family:var(--mono);font-size:.8rem}.arrow-links a:after{content:" →" / ""}.tags{font-family:var(--mono);font-size:.75rem;color:var(--muted);margin:.5rem 0 .6rem}.prose h2{margin-top:2em}.prose h3{margin-top:1.6em}.prose blockquote{margin:1.5em 0;padding-left:1.25rem;border-left:2px solid var(--margin-line);color:var(--muted);font-style:italic}.prose img{max-width:100%;height:auto;border:1px solid var(--rule)}.prose figure{margin:2em 0}.prose figcaption,.figcap{font-family:var(--mono);font-size:.75rem;color:var(--muted);margin-top:.6rem}.prose code{font-family:var(--mono);font-size:.85em;background:var(--paper-edge);padding:.1em .3em;border-radius:3px}.prose pre{font-size:.85rem;line-height:1.55;padding:1rem 1.25rem;overflow-x:auto;border:1px solid var(--rule);border-radius:4px}.prose pre code{background:none;padding:0}.prose hr{border:0;border-top:1px solid var(--rule);margin:2.5em 0}.prose .footnotes{font-size:.95rem;color:var(--muted);border-top:1px solid var(--rule);margin-top:3rem;padding-top:1rem}.prose .footnotes h2{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}[data-topics]{transition:max-height .35s ease,opacity .25s ease,margin .35s ease,padding .35s ease}[data-topics].folding{max-height:0;opacity:0;overflow:hidden;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}.d-skim,.d-deep{display:none}mark{background:none;color:inherit}.detailed mark{background-image:linear-gradient(100deg,transparent .15em,var(--highlight) .3em,var(--highlight) calc(100% - .35em),transparent calc(100% - .1em));background-repeat:no-repeat;background-size:100% .72em;background-position:0 65%;padding:0 .12em;margin:0 -.12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}html[data-detail=skim] .detailed mark{background:none}[data-topics].marked :is(.title,h2){background-image:linear-gradient(var(--swipe),var(--swipe));background-repeat:no-repeat;background-size:100% .5em;background-position:0 82%;width:fit-content}html[data-detail=skim] .detailed .d-skim,html[data-detail=deep] .detailed .d-deep{display:revert}html[data-detail=skim] .detailed .d-read{display:none}.sidenote{position:absolute;left:0;width:calc(var(--margin) - 2.25rem);font-size:.85rem;line-height:1.4}.sidenote p{display:inline;margin:0}.sidenote .sn-num{font-style:normal;font-family:var(--mono);font-size:.7rem;margin-right:.2rem}.has-sidenotes .footnotes{display:none}.prose sup a{font-family:var(--mono);font-size:.7rem;color:var(--pencil);text-decoration:none;padding:0 .1em}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(min-width:1200px){html{font-size:17px}:root{--margin: 11.5rem;--measure: 43rem}}@media(min-width:1500px){html{font-size:19px}:root{--margin: 12rem;--measure: 43rem}}@media(min-width:1100px){body.wide-margin{--margin: 13rem}}@media(min-width:1500px){body.wide-margin{--margin: 14.5rem}}@media(max-width:760px){body{font-size:1.0625rem}.sheet{padding:0 1rem}.sheet:before{left:.45rem}.row{grid-template-columns:minmax(0,1fr);margin-bottom:2.5rem}.row>.stamp{padding:0 0 .5rem}.note{transform:none}.photo{float:none;width:min(16rem,80%);margin:.75rem 0 1.5rem}.label{font-size:.8rem;letter-spacing:.05em}.arrow-links a{display:inline-block;padding:.5rem 0}}@media(prefers-reduced-motion:reduce){a{transition:none}}.skip[data-astro-cid-5hce7sga]{position:absolute;left:-999px;top:.5rem;background:var(--paper);padding:.4rem .8rem;z-index:10}.skip[data-astro-cid-5hce7sga]:focus{left:.5rem}.masthead[data-astro-cid-5hce7sga]{position:relative;padding-top:3.25rem}.masthead[data-astro-cid-5hce7sga]>.sheet[data-astro-cid-5hce7sga]{padding-bottom:3.5rem}.masthead[data-astro-cid-5hce7sga]:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent);mask-image:linear-gradient(to bottom,#000 30%,transparent);pointer-events:none}.head-row[data-astro-cid-5hce7sga]{margin-bottom:0}.nameplate[data-astro-cid-5hce7sga]{display:grid;gap:.35rem;padding:.85rem 1.25rem .9rem;border:1px solid var(--ink);outline:1px solid var(--ink);outline-offset:3px;border-radius:10px;background:var(--paper);text-decoration:none;color:var(--text);margin:0 4px 1.75rem}.nameplate[data-astro-cid-5hce7sga]:hover{background:var(--paper)}.np-line[data-astro-cid-5hce7sga]{display:grid;grid-template-columns:4.75rem auto;align-items:baseline;border-bottom:1px solid var(--rule);padding-bottom:.2rem}.np-line[data-astro-cid-5hce7sga]:last-child{border-bottom:0;padding-bottom:0}.np-key[data-astro-cid-5hce7sga]{font-family:var(--mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.np-val[data-astro-cid-5hce7sga]{font-size:1rem;color:var(--ink)}.np-name[data-astro-cid-5hce7sga]{font-size:1.35rem;font-weight:500;letter-spacing:.005em}nav[data-astro-cid-5hce7sga] ul[data-astro-cid-5hce7sga]{display:flex;flex-wrap:wrap;gap:.25rem 1.6rem}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{font-family:var(--mono);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--muted)}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:hover{color:var(--ink)}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga][aria-current=page]{color:var(--ink);text-decoration:underline wavy var(--pencil);text-decoration-thickness:1px;text-underline-offset:.35em}footer[data-astro-cid-5hce7sga]{padding-top:2.5rem;padding-bottom:3rem}footer[data-astro-cid-5hce7sga]:before{display:none}.foot-row[data-astro-cid-5hce7sga]{border-top:1px solid var(--rule);padding-top:2rem;margin-bottom:0}.foot-row[data-astro-cid-5hce7sga] p[data-astro-cid-5hce7sga]{font-size:1rem;color:var(--muted)}.copy[data-astro-cid-5hce7sga]{margin-top:1.5rem}@media(max-width:760px){.masthead[data-astro-cid-5hce7sga]{padding-top:1.75rem}.masthead[data-astro-cid-5hce7sga]>.sheet[data-astro-cid-5hce7sga]{padding-bottom:2.25rem}.head-row[data-astro-cid-5hce7sga] .stamp[data-astro-cid-5hce7sga]{display:none}.np-line[data-astro-cid-5hce7sga]{grid-template-columns:4.25rem auto}.np-name[data-astro-cid-5hce7sga]{font-size:1.2rem}nav[data-astro-cid-5hce7sga] ul[data-astro-cid-5hce7sga]{gap:0 1.25rem}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{display:inline-block;padding:.7rem 0;font-size:.85rem}.np-key[data-astro-cid-5hce7sga]{font-size:.72rem}}
