@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.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:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.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:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_abbdc57a-module__Zkq1UW__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_abbdc57a-module__Zkq1UW__variable{--font-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/65c558afe41e89d6-s.3jppgd0xzx-0d.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/14e23f9b59180572-s.0t8ljjjn9wtsx.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:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/b49b0d9b851e4899-s.2zyohmvb-ks7f.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:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/2a65768255d6b625-s.p.3u4lli0-axodc.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:Playfair Display Fallback;src:local(Times New Roman);ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.0%;size-adjust:111.26%}.playfair_display_ce47a8b-module__eNA-RG__className{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.playfair_display_ce47a8b-module__eNA-RG__variable{--font-display:"Playfair Display", "Playfair Display Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_b45e8298-module__oDXDLG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_b45e8298-module__oDXDLG__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
html{--blog-paper:#faf8f4;background:var(--blog-paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100%}body{background:var(--blog-paper);min-height:100%}.publication{--ink:#183f35;--accent:#28704b;--line:#e0dbd2;--human:#e9eee5;--assistant:#fffdf9;--button-hover:#245548;--cite:color-mix(in srgb, var(--accent) 13%, transparent);--card-shadow:0 18px 44px -20px #183f3557, 0 2px 6px #183f350f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:var(--blog-paper);--muted:#59645d;--measure:34em;background:var(--paper);color:var(--ink);min-height:100vh;font:17px/1.7 var(--font-sans,system-ui), system-ui, sans-serif;-webkit-font-smoothing:antialiased}.publication *{box-sizing:border-box}.publication a{color:inherit;text-underline-offset:5px}.publication a:hover{color:var(--accent)}.publication :focus-visible{outline:2px solid var(--accent);outline-offset:5px}.publication .skip-link{background:var(--paper);z-index:10;padding:12px;position:absolute;top:-90px;left:16px}.publication .skip-link:focus{top:8px}.publication .masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;max-width:800px;margin:auto;padding:24px 32px;display:flex}.publication .brand{align-items:center;gap:10px;text-decoration:none;display:flex}.publication .brand-mark{flex-shrink:0;width:22px;height:22px}.publication .wordmark{font:500 18px/1 var(--font-mono,monospace), monospace;letter-spacing:.06em}.publication .brand-section{border-left:1px solid var(--line);color:var(--muted);padding-left:12px;font-size:15px;line-height:1.2}.publication .brand:hover .brand-section{color:var(--accent)}.publication nav{align-items:center;gap:16px;font-size:14px;display:flex}.publication nav a{white-space:nowrap;text-decoration:none}.publication .nav-cta,.publication .button{background:var(--ink);color:var(--paper);border-radius:8px;align-items:center;gap:8px;font-weight:500;text-decoration:none;display:inline-flex}.publication .nav-cta{padding:9px 14px}.publication .nav-cta:hover,.publication .button:hover{color:var(--paper);background:var(--button-hover)}.publication h1,.publication h2,.publication h3{font-family:var(--font-display,Georgia), Georgia, serif;letter-spacing:-.03em;text-wrap:balance;font-weight:400;line-height:1.12}.publication h1{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(38px,5vw,52px);line-height:1.06}.publication em{font-style:italic}.publication .standfirst{max-width:var(--measure);margin:0 0 20px;font-size:19px;line-height:1.55}.publication .byline,.publication figcaption{color:var(--muted);font-size:14px}.publication .byline time{white-space:nowrap}.publication .journal{max-width:800px;margin:auto;padding:56px 32px 80px}.publication .journal-heading{margin-bottom:40px}.publication .article-list{border-top:1px solid var(--line)}.publication .article-card{border-bottom:1px solid var(--line);padding:32px 0}.publication .article-card h2{margin:0 0 12px;font-size:32px}.publication .article-card h2 a{text-decoration:none}.publication .article-card h2 a:hover{text-decoration:underline;text-decoration-thickness:1px}.publication .article-card p{max-width:var(--measure);margin:8px 0}.publication .empty-state{color:var(--muted);padding:24px 0}.publication .article{max-width:800px;margin:auto;padding:56px 32px 24px}.publication .article h1{font-size:clamp(40px,6vw,56px)}.publication .article-heading{border-bottom:1px solid var(--line);margin-bottom:48px;padding-bottom:32px}.publication .article-heading .byline{margin:0}.publication .article-body{font-size:18px;line-height:1.75}.publication .article-body>p,.publication .article-body>ul,.publication .article-body>ol,.publication .article-body>h2,.publication .article-body>h3,.publication .article-body>blockquote{max-width:var(--measure)}.publication .article-body p{margin:0 0 1.1em}.publication .article-body h2{margin:56px 0 16px;font-size:32px}.publication .article-body h3{margin:40px 0 12px;font-size:25px}.publication blockquote{border-left:3px solid var(--accent);font-family:var(--font-display,Georgia), Georgia, serif;margin:36px 0;padding-left:24px;font-size:25px;line-height:1.4}.publication .editorial-figure{margin:36px 0}.publication .editorial-figure img{width:100%;height:auto;display:block}.publication figcaption{margin-top:8px}.publication .article-body p,.publication .chat-text{overflow-wrap:anywhere}.publication .chat-excerpt{border:1px solid var(--line);border-radius:8px;margin:44px 0;font-size:16px;line-height:1.65;overflow:hidden}.publication .chat-excerpt header{border-bottom:1px solid var(--line);padding:24px}.publication .chat-label{color:var(--muted);margin:0 0 8px;font-size:14px}.publication .chat-excerpt header h2{margin:0 0 12px;font-size:26px}.publication .chat-excerpt ol{gap:20px;margin:0;padding:24px;list-style:none;display:grid}.publication .chat-excerpt li{border-radius:6px;padding:18px 22px}.publication .chat-excerpt li[data-role=human]{background:var(--human);margin-left:32px}.publication .chat-excerpt li[data-role=assistant]{background:var(--assistant);margin-right:32px}.publication .chat-name{margin:0 0 8px;font-size:13px;font-weight:600}.publication .chat-text{white-space:pre-wrap;margin:0}.publication .citation-badge{background:var(--cite);min-width:1.6em;height:1.6em;color:var(--accent);font:600 11px/1 var(--font-mono,monospace), monospace;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;margin-left:.2em;padding:0 .4em;display:inline-flex;position:relative;top:-.5em}:is(.publication .citation-badge:hover,.publication .citation:has(.citation-card:popover-open) .citation-badge){background:var(--accent);color:var(--paper)}.publication .citation-badge:focus-visible{outline-offset:2px}.publication .citation:has(.citation-card:popover-open) .citation-text{background:var(--cite);box-shadow:0 0 0 3px var(--cite);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px}.publication .citation-card{display:none}.publication .citation-card:popover-open{border:1px solid var(--line);background:var(--assistant);width:100%;max-height:70vh;color:var(--ink);box-shadow:var(--card-shadow);font:15px/1.55 var(--font-sans,system-ui), system-ui, sans-serif;text-align:left;overflow-wrap:anywhere;border-radius:12px 12px 0 0;flex-direction:column;align-items:flex-start;gap:10px;margin:0;padding:18px 20px 20px;display:flex;position:fixed;inset:auto 0 0;overflow-y:auto}@supports (position-area:block-end){.publication .citation-card:popover-open{position-area:block-end span-inline-end;position-try-fallbacks:flip-block, flip-inline, flip-block flip-inline;border-radius:8px;width:26rem;max-height:min(30rem,50vh - 24px);margin:10px 0 0;inset:auto}}.publication .source-label{font:500 12px/1.4 var(--font-mono,monospace), monospace;color:var(--muted);align-items:center;gap:7px;display:inline-flex}.publication .source-icon{width:14px;height:14px;color:var(--accent);flex-shrink:0}.publication .citation-card-title,.publication .source-title{font:400 20px/1.3 var(--font-display,Georgia), Georgia, serif;letter-spacing:-.01em}.publication .source-locator{background:var(--cite);color:var(--accent);font:500 12px/1.4 var(--font-mono,monospace), monospace;white-space:nowrap;border-radius:4px;padding:3px 8px;text-decoration:none;display:inline-flex}.publication a.source-locator:hover{background:var(--accent);color:var(--paper)}.publication .citation-card-quote{border-left:2px solid var(--accent);padding-left:14px;font-size:14.5px;line-height:1.6}.publication .citation-card-link{color:var(--accent);text-underline-offset:4px;margin-top:2px;font-size:14px;font-weight:500}.publication .sources{max-width:var(--measure);border-top:1px solid var(--line);margin-top:72px;padding-top:32px}.publication .sources h2{margin:0 0 8px;font-size:25px}.publication .sources ol,.publication .source-locators{margin:0;padding:0;list-style:none}.publication .source{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;gap:16px;padding:18px 0;display:grid}.publication .source:last-child{border-bottom:0}.publication .source>div{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.publication .source-number{background:var(--cite);min-width:26px;height:26px;color:var(--accent);font:600 12px/1 var(--font-mono,monospace), monospace;border-radius:4px;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.publication .source-title{text-decoration:none}.publication .source-title span{font-family:var(--font-sans,system-ui), system-ui, sans-serif;color:var(--muted);font-size:15px}.publication .source-title:hover{text-decoration:underline;text-decoration-thickness:1px}.publication .source-locators{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.publication .waste-code{background:var(--cite);color:var(--accent);font-family:var(--font-mono,monospace), monospace;white-space:nowrap;cursor:pointer;border:0;border-radius:4px;padding:.1em .38em;font-size:.86em;font-weight:500;line-height:1.4}:is(.publication .waste-code:hover,.publication .waste-code-ref:has(.citation-card:popover-open) .waste-code){background:var(--accent);color:var(--paper)}.publication .waste-code:focus-visible{outline-offset:2px}.publication .waste-code-notation{font:600 24px/1.2 var(--font-mono,monospace), monospace;letter-spacing:.02em}.publication .waste-code-description{font-size:16px;line-height:1.5}.publication .waste-code-context{color:var(--muted);flex-direction:column;gap:2px;font-size:13.5px;line-height:1.45;display:flex}.publication .waste-code-parent{font:500 12px/1.4 var(--font-mono,monospace), monospace;color:var(--accent)}.publication .article-end{max-width:800px;margin:auto;padding:0 32px 72px}.publication .closing{border:1px solid var(--line);background:var(--assistant);border-radius:8px;margin-top:32px;padding:40px}.publication .closing h2{margin:0 0 16px;font-size:clamp(30px,4vw,38px)}.publication .closing p{max-width:52ch;color:var(--muted);margin:0 0 28px}.publication .button{padding:14px 24px;font-size:15px}.publication .back-link{gap:8px;margin-top:36px;font-size:15px;text-decoration:none;display:inline-flex}.publication .back-link:hover{text-decoration:underline}.publication .publication-footer{border-top:1px solid var(--line);max-width:800px;color:var(--muted);flex-wrap:wrap;gap:12px 28px;margin:auto;padding:28px 32px;font-size:14px;display:flex}.publication button{font:inherit;background:var(--ink);color:var(--paper);cursor:pointer;border:0;border-radius:4px;padding:10px 18px}.publication .theme-toggle{width:40px;height:40px;color:var(--ink);background:0 0;border-radius:50%;flex-shrink:0;padding:8px;position:relative}.publication .theme-toggle:hover{background:var(--human)}.publication .theme-toggle svg{width:22px;height:22px;position:absolute;inset:9px}.publication .theme-sun{opacity:0;transform:rotate(-60deg)scale(.6)}.publication .theme-moon{opacity:1;transform:rotate(0)scale(1)}@media (max-width:720px){.publication .nav-cta{display:none}}@media (max-width:600px){.publication .masthead{padding:18px 20px}.publication .journal,.publication .article{padding:40px 20px 24px}.publication .journal{padding-bottom:64px}.publication .article h1{font-size:40px}.publication .standfirst{font-size:18px}.publication .article-body{font-size:17px}.publication .article-body h2{font-size:28px}.publication .chat-excerpt ol{padding:14px}.publication .chat-excerpt li[data-role]{margin:0}.publication .sources{margin-top:56px}.publication .article-end{padding:0 20px 56px}.publication .closing{padding:28px 22px}.publication .publication-footer{padding:24px 20px}}@media (max-width:860px),(max-height:520px){.publication .citation-card:popover-open{position-area:none;position-try-fallbacks:none;width:100%;max-height:70vh;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:12px 12px 0 0;margin:0;inset:auto 0 0}.publication .citation-card::backdrop{background:#0000002e}}@media (max-width:400px){.publication .nav-site{display:none}}html[data-blog-theme=dark]{--blog-paper:#1d2925;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-blog-theme=dark] .publication{--ink:#e3e9df;--muted:#adbcb0;--accent:#b4d39a;--line:#405247;--human:#2d3e33;--assistant:#24332c;--button-hover:#c9d8bd;--card-shadow:0 20px 48px -16px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-blog-theme=dark] .publication .theme-sun{opacity:1;transform:rotate(0)scale(1)}html[data-blog-theme=dark] .publication .theme-moon{opacity:0;transform:rotate(60deg)scale(.6)}@media (prefers-color-scheme:dark){html:not([data-blog-theme=light]){--blog-paper:#1d2925;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:not([data-blog-theme=light]) .publication{--ink:#e3e9df;--muted:#adbcb0;--accent:#b4d39a;--line:#405247;--human:#2d3e33;--assistant:#24332c;--button-hover:#c9d8bd;--card-shadow:0 20px 48px -16px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:not([data-blog-theme=light]) .publication .theme-sun{opacity:1;transform:rotate(0)scale(1)}html:not([data-blog-theme=light]) .publication .theme-moon{opacity:0;transform:rotate(60deg)scale(.6)}}@media (prefers-reduced-motion:no-preference){html,body,.publication,.publication a,.publication button,.publication .source-locator,.publication .citation-text,.publication .chat-excerpt li{transition:background-color .18s,color .18s}.publication .theme-toggle svg{transition:opacity .18s,transform .24s}.publication a{transition:color .15s,background-color .15s,text-decoration-color .15s}}
