:root{color-scheme:light dark;--background:#ffffff;--text:#333333;--heading:#222222;--muted:#6b6b6b;--link:#355f82;--line:#e3e3e3;--surface:#f2f2f2;font-family:-apple-system,BlinkMacSystemFont,segoe ui,sans-serif;font-size:17px}@media(prefers-color-scheme:dark){:root{--background:#181818;--text:#d8d8d8;--heading:#eeeeee;--muted:#a0a0a0;--link:#9bc1e2;--line:#353535;--surface:#262626}}*{box-sizing:border-box}body{margin:0;padding-bottom:40px;background:var(--background);color:var(--text);line-height:1.7}.site-shell{max-width:744px;margin:0 auto;padding:0 28px}.site-header{padding:48px 0 24px}.site-title{color:var(--heading);font-size:24px;font-weight:650;letter-spacing:-.045em;text-decoration:none}a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--link);outline-offset:5px;border-radius:2px}main:focus{outline:none}h1,h2,h3,h4,h5,h6{color:var(--heading);line-height:1.3;font-weight:600;overflow-wrap:anywhere}h1{font-size:30px;letter-spacing:-.025em;margin:0 0 12px}h2{font-size:23px;letter-spacing:-.015em;margin:2em 0 .8em}h3{font-size:19px;margin:1.8em 0 .7em}h4,h5,h6{font-size:17px;margin:1.6em 0 .7em}time,.muted{color:var(--muted)}time{font-size:14px;font-variant-numeric:tabular-nums}.post-list{list-style:none;margin:0;padding:0}.post-list li{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:baseline;gap:14px;padding:8px 0}.post-list a{color:var(--heading);text-decoration:none;line-height:1.5}.post-list a:hover{text-decoration:underline}.article-header{margin-bottom:32px}.prose{overflow-wrap:anywhere}.prose>:first-child{margin-top:0}.prose p,.prose ul,.prose ol{margin:0 0 1.35em}.prose li+li{margin-top:.35em}.prose figure{margin:28px 0}.prose img{display:block;max-width:100%;height:auto}.prose figcaption{color:var(--muted);font-size:14px;margin-top:10px}.prose blockquote{margin:1.5em 0;padding-left:20px;border-left:2px solid var(--line);color:var(--muted)}.prose blockquote>:last-child{margin-bottom:0}code,pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.87em}:not(pre)>code{background:var(--surface);padding:.15em .3em;border-radius:3px}pre{padding:18px;overflow-x:auto;border-radius:4px;line-height:1.65}pre code{font-size:inherit}table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1.5em 0}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px 16px 8px 0}hr{border:0;border-top:1px solid var(--line);margin:2em 0}.prose .katex{font-size:1.05em}.prose .katex-display{overflow-x:auto;overflow-y:hidden;padding:8px 0;margin:24px 0}.prose .katex-display>.katex{display:block;width:max-content;min-width:100%}.article-nav{margin-top:48px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.article-nav a,.pagination a{text-decoration:none}.article-nav a:hover,.pagination a:hover{text-decoration:underline}.pagination{display:flex;gap:24px;margin-top:32px;font-size:14px}.visually-hidden,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:absolute;top:12px;left:20px;padding:8px 12px;background:var(--background);z-index:1}@media(max-width:520px){.site-shell{padding:0 22px}.site-header{padding:32px 0 20px}h1{font-size:27px}.post-list li{grid-template-columns:minmax(0,1fr);gap:2px;padding:8px 0}.article-header{margin-bottom:26px}}