:is(h1,h2,h3,h4,h5,h6){font:300 var(--font-serif);margin:0 0 var(--space-3);scroll-margin-top:6rem}h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.875rem}h4{font-size:1.625rem}h5{font-size:1.25rem}h6{font-size:1.125rem}.blog-post-layout{--article-column-max-width: 70ch;--article-shell-max-width: 88rem;--toc-rail-width: 13.5rem;--toc-rail-gap: clamp(1rem, 1.4vw, 1.75rem)}.article-shell{width:100%;max-width:var(--article-shell-max-width);margin-inline:auto}.article-main{width:min(100%,var(--article-column-max-width));margin-inline:auto;min-width:0}.article-toc-wrap{min-width:0}@media(min-width:1360px){.article-shell.has-toc{display:grid;grid-template-columns:minmax(0,var(--toc-rail-width)) minmax(0,var(--article-column-max-width)) minmax(0,var(--toc-rail-width));column-gap:var(--toc-rail-gap);justify-content:center;align-items:start}.article-main{grid-column:2;max-width:100%}.article-toc-wrap{grid-column:1;align-self:start;position:sticky;top:8.75rem;margin-left:-.5rem}}.article-content{flex:1;min-width:0;>*:first-child{margin-top:0}& a{color:var(--article-link-color);word-break:normal;overflow-wrap:anywhere;text-decoration:none}& a:hover,a:focus-visible{color:var(--article-link-hover);text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.12em;text-decoration-color:var(--color-header-divider)}:is(h2,h3,h4,h5,h6){position:relative}.heading-anchor{position:absolute;right:100%;top:0;display:inline-flex;align-items:center;justify-content:center;padding-right:var(--space-2);line-height:1;color:var(--color-text-secondary);font-weight:300;text-decoration:none;opacity:0;pointer-events:none;transition:opacity .18s ease,color .18s ease}:is(h2,h3,h4,h5,h6):focus-within .heading-anchor{opacity:.5;pointer-events:auto}@media(hover:hover)and (pointer:fine){:is(h2,h3,h4,h5,h6):hover .heading-anchor{opacity:.5;pointer-events:auto}}.heading-anchor:focus-visible{opacity:1;pointer-events:auto;color:var(--article-link-color);text-decoration:none}@media(hover:hover)and (pointer:fine){.heading-anchor:hover{opacity:1;pointer-events:auto;color:var(--article-link-color);text-decoration:none}}@media(hover:none)and (pointer:coarse){.heading-anchor{opacity:0;pointer-events:none}:is(h2,h3,h4,h5,h6):active .heading-anchor{opacity:.5;pointer-events:auto}}@media(max-width:768px){& h1{font-size:2.5rem}& h2{font-size:2rem}& h3{font-size:1.5rem}& h4{font-size:1.25rem}:is(h1,h2,h3,h4,h5,h6){scroll-margin-top:5rem}}}.article-content.body-text{color:var(--color-text);line-height:1.84;font-size:1.05rem;>*+*{margin-top:var(--space-4)}:is(p,li){text-wrap:pretty}:is(h1,h2,h3,h4,h5,h6){color:var(--color-text);line-height:1.28;letter-spacing:-.012em;margin-bottom:var(--space-3)}& h2{font-size:clamp(1.9rem,1.6rem + 1vw,2.2rem)}& h3{font-size:clamp(1.55rem,1.35rem + .7vw,1.8rem)}& h4{font-size:clamp(1.25rem,1.15rem + .4vw,1.45rem)}& h5{font-size:1.1rem}& h6{font-size:1rem}:is(h2,h3,h4,h5,h6){margin-top:var(--space-8)}>:is(h2,h3,h4,h5,h6):first-child{margin-top:0}:is(h3,h4,h5,h6){margin-top:var(--space-6)}& p{margin-bottom:0;color:var(--color-text)}:is(ul,ol){margin-bottom:0;padding-left:1.35em}& li+li{margin-top:.45em}& li :is(ul,ol){margin-top:.45em}:is(pre,.expressive-code,.admonition,table,blockquote){margin-block:var(--space-6)}.admonition{margin-block:var(--space-4)}& blockquote{display:block;padding:var(--space-3) var(--space-4);border-left:2px solid var(--color-header-divider);background:var(--color-surface);border-radius:2px;color:var(--color-text-secondary)}& blockquote:before,blockquote:after{content:none}& img{margin:var(--space-8) auto}& hr{margin:var(--space-8) 0}@media(max-width:768px){line-height:1.76;font-size:1rem;:is(h2,h3,h4,h5,h6){margin-top:var(--space-6)}}}p{margin-bottom:var(--space-4)}ul,ol{margin-bottom:var(--space-4);padding-left:var(--space-4)}img{display:block;margin:var(--space-6) auto;border-radius:6px}table{margin:var(--space-6) 0;font-size:1rem}table{width:100%;border-collapse:collapse;border:1px solid var(--color-border)}th,td{padding:.75em var(--space-3);border-bottom:1px solid var(--color-border)}th{background:var(--color-surface-elevated);color:var(--color-text)}tbody tr:nth-child(2n){background:var(--color-surface)}tbody tr:last-child td{border-bottom:0}hr{margin:var(--space-12) 0;border:0;border-top:1px solid var(--color-header-divider)}strong{font-weight:600}blockquote{display:inline-block;padding:var(--space-4) var(--space-6) var(--space-4) var(--space-4);margin:var(--space-6) 0;position:relative;&:before,&:after{position:absolute;font-size:3em;color:var(--color-text-secondary);opacity:.3;line-height:1}&:before{content:"“";top:-.2em;left:-.1em}&:after{content:"”";bottom:-.3em;right:.1em}>*:last-child{margin-bottom:0}}.post-card{display:block;text-align:left;margin:10px 0;&:hover .post-title{color:var(--article-link-color)}}.post-title-row{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-1)}.post-title{font:300 1.375rem var(--font-serif);margin-bottom:0}.post-meta{font-size:.875rem;color:var(--color-text-muted);margin-top:var(--space-1)}.post-description{font-size:1rem;color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-post-item{position:relative;padding-left:80px}.blog-date{position:absolute;left:0;top:2.5px;width:70px;font:1rem var(--font-mono);color:var(--color-text-muted)}.tag-container{display:inline-flex;flex-wrap:wrap;gap:var(--space-1);align-items:baseline}.tag-small{font:.875rem var(--font-mono);color:var(--color-text-muted)}.tag{font:1rem var(--font-mono);color:var(--color-text-secondary);padding:var(--space-1) var(--space-2)}.article-header{max-width:min(100%,var(--article-column-max-width, var(--max-width)));margin:0 auto var(--space-6);text-align:center}.article-meta-container{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);font-size:1rem;color:var(--color-text-secondary);@media(min-width:640px){flex-direction:row;justify-content:center}}
