body[a="dark"]{background-color:#212121;color:#fafafa}body[a="dark"] a{color:#0071bc;text-decoration:none}body[a="dark"] a:visited{color:#0071bc}body[a="dark"] a:hover{text-decoration:underline}body[a="dark"] code:not(pre>code){background-color:#fafafa;color:#212121}body[a="dark"] figcaption{color:#eee}body[a="light"]{background-color:#fff;color:#212121}body[a="light"] a{color:#1e70bf;text-decoration:none}body[a="light"] a:visited{color:#1e70bf}body[a="light"] a:hover{text-decoration:underline}body[a="light"] code:not(pre>code){background-color:#212121;color:#fff}body[a="light"] figcaption{color:#666}@media (prefers-color-scheme: dark){body[a="auto"]{background-color:#212121;color:#fafafa}body[a="auto"] a{color:#0071bc;text-decoration:none}body[a="auto"] a:visited{color:#0071bc}body[a="auto"] a:hover{text-decoration:underline}body[a="auto"] code:not(pre>code){background-color:#fafafa;color:#212121}body[a="auto"] figcaption{color:#eee}}@media (prefers-color-scheme: light){body[a="auto"]{background-color:#fff;color:#212121}body[a="auto"] a{color:#1e70bf;text-decoration:none}body[a="auto"] a:visited{color:#1e70bf}body[a="auto"] a:hover{text-decoration:underline}body[a="auto"] code:not(pre>code){background-color:#212121;color:#fff}body[a="auto"] figcaption{color:#666}}html{height:100%}body{font-family:monospace;font-size:16px;line-height:1.4;margin:0;min-height:100%;overflow-wrap:break-word}.post-meta{text-align:right}h2,h3,h4,h5,h6{margin-top:3rem}.article-layout{display:grid;grid-template-columns:minmax(10rem, 1fr) minmax(0, 3fr) minmax(10rem, 1fr);gap:2rem;align-items:stretch}.article-left,.article-layout>article,.article-meta{min-width:0}.article-left{align-self:stretch}.article-left__sticky{position:sticky;top:2rem;height:calc(100vh - 6rem);display:flex;flex-direction:column}.article-layout>article>h1{margin-top:0}.article-layout article :is(h2, h3, h4, h5, h6){scroll-margin-top:2rem}.section-nav{margin-top:1rem;flex:1;min-height:0;overflow-y:auto}.section-nav>nav{margin-left:0.75rem}.section-nav li{margin:0.35rem 0}.section-nav:empty{display:none}.section-nav nav{font-size:0.85rem}.section-nav ul{list-style:none;margin:0;padding:0}.section-nav a{color:inherit;text-decoration:none}.section-nav a:hover{text-decoration:underline}.article-meta{position:relative;align-self:stretch;min-height:100%}.sidenote-rail{position:absolute;inset:0;pointer-events:none}.sidenote{position:absolute;left:0;width:100%;padding-left:0.75rem;border-left:2px solid currentColor;font-size:0.78rem;line-height:1.45;opacity:0.58;pointer-events:auto;transition:opacity 120ms ease, transform 120ms ease}.sidenote--active{opacity:1;transform:translateX(0.25rem)}.sidenote .citation__number{margin-right:0.35rem;font-weight:bold}.sidenote .citation__text,.sidenote .citation__text>:first-child{display:inline}.sidenote .citation__text>:last-child{margin-bottom:0}.citation__marker{margin-left:0.15rem;font-size:0.68em;line-height:0}.citation__source{display:none}.citation--active :is(.citation__link, .citation__label){text-decoration:underline;text-decoration-thickness:2px}.citation__label{cursor:help;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:0.15em}@media (max-width: 900px){.article-layout{display:flex;flex-direction:column;gap:1rem}.article-left,.article-layout>article,.article-meta{width:100%}.article-left{order:0}.article-left__sticky,.article-meta{position:static;height:auto}.article-layout>article{order:2;padding-bottom:8rem}.article-meta{order:1}.sidenote-rail{display:none}.citation__source{display:block;margin:0.65rem 0 1rem;padding-left:0.75rem;border-left:2px solid currentColor;font-size:0.85rem;line-height:1.45;opacity:0.72}.citation__source .citation__number{margin-right:0.35rem;font-weight:bold}.section-nav{display:block;flex:none;margin-top:1rem;overflow-y:visible;border:thin solid black;padding:1rem}.section-nav>nav{margin-left:0}}hr{margin:2rem 0}p{margin:1rem 0}li{margin:0.4rem 0}.w{max-width:1280px;margin:0 auto;padding:4rem 2rem}.home{max-width:52rem;margin:0 auto}.home-header{display:flex;align-items:baseline;justify-content:space-between;gap:2rem}.home-header h1{margin:0}.home-header nav{white-space:nowrap}.home-nav__disabled{opacity:0.45}.home-intro{margin:3rem 0;text-align:center}.recent-posts{text-align:left}.recent-posts h2{margin-bottom:1rem}.recent-posts ul{margin:0;padding:0;list-style:none}.listing-layout{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr)}.listing-layout__content{grid-column:2}.listing-layout__content ul{margin-left:0;padding-left:0;list-style:none}.post-cards{margin-top:2rem;border-top:1px solid color-mix(in srgb, currentColor 20%, transparent)}.post-card{margin:0}.post-card>a{display:grid;grid-template-columns:minmax(0, 1fr) auto;grid-template-areas:"title date" "description reading-time";column-gap:2rem;padding:1.5rem 0;border-bottom:1px solid color-mix(in srgb, currentColor 20%, transparent);color:inherit;text-decoration:none}.post-card>a:hover,.post-card>a:focus-visible{text-decoration:none}.post-card h2{grid-area:title;margin:0;font-size:1.25rem}.post-card time{grid-area:date}.post-card p{grid-area:description;margin:0.75rem 0 0;opacity:0.72}.post-card time,.post-card .post-card__reading-time{font-size:0.875rem;opacity:0.62}.post-card .post-card__reading-time{grid-area:reading-time;align-self:end;text-transform:uppercase}body[a] .post-card>a{color:inherit}body[a] .post-card>a:hover,body[a] .post-card>a:focus-visible{text-decoration:none}body[a] .post-card>a:hover h2,body[a] .post-card>a:focus-visible h2{color:#e06c75}@media (max-width: 600px){.listing-layout{display:block}.post-card>a{grid-template-columns:1fr;grid-template-areas:"title" "date" "description" "reading-time";row-gap:0.5rem}.post-card p{margin-top:0.25rem}}@media (max-width: 600px){.home-header{align-items:flex-start;flex-direction:column;gap:0.5rem}.home-intro{text-align:left}}hr{text-align:center;border:0}hr:before{content:'/////'}hr:after{content:attr(data-content) "/////"}pre{background:black;padding:1em;overflow-x:auto}table{width:100%}table,th,td{border:thin solid black;border-collapse:collapse;padding:0.4rem}.post-content>.w{padding-top:2rem}code:not(pre>code){padding:0.1em 0.2em;font-size:90%}code.has-jax{-webkit-font-smoothing:antialiased;background:inherit !important;border:none !important;font-size:100%}blockquote{font-style:italic;border:thin solid black;padding:1rem}blockquote p{margin:0}img{max-width:100%;display:block;margin:0 auto}figcaption{text-align:center;opacity:0.5}
