@import url("https://fonts.googleapis.com/css2?family=Source+Code+Pro&family=Source+Serif+Pro:wght@400;600;700&display=swap");body[a="dark"]{background-color:#000;color:#fff;color-scheme:dark}body[a="dark"] a{color:#79a8ff}body[a="dark"] a:visited{color:#f78fe7}body[a="dark"] details{border:thin solid #fff}body[a="dark"] details summary{color:#fff}body[a="dark"] details[open] summary{border-bottom:1px solid #fff}body[a="dark"] pre{background:#000}body[a="dark"] code:not(pre>code){background-color:#fff;color:#000}body[a="dark"] *:target{background:#2f3849;color:#fff}body[a="dark"] table,body[a="dark"] th,body[a="dark"] td{border:thin solid #fff}body[a="dark"] .toc{border:thin solid #fff;padding:1rem}body[a="dark"] figcaption{color:#000}body[a="dark"] blockquote{border:thin solid #fff}body[a="light"]{background-color:#fff;color:#000;color-scheme:light}body[a="light"] a{color:#3548cf}body[a="light"] a:visited{color:#8f0075}body[a="light"] details{border:thin solid #000}body[a="light"] details summary{color:#000}body[a="light"] details[open] summary{border-bottom:1px solid #000}body[a="light"] pre{background:#fff}body[a="light"] code:not(pre>code){background-color:#000;color:#fff}body[a="light"] *:target{background:#dae5ec;color:#000}body[a="light"] table,body[a="light"] th,body[a="light"] td{border:thin solid #000}body[a="light"] .toc{border:thin solid #000;padding:1rem}body[a="light"] figcaption{color:#595959}body[a="light"] blockquote{border:thin solid #000}@media (prefers-color-scheme: dark){body[a="auto"]{background-color:#000;color:#fff;color-scheme:dark}body[a="auto"] a{color:#79a8ff}body[a="auto"] a:visited{color:#f78fe7}body[a="auto"] details{border:thin solid #fff}body[a="auto"] details summary{color:#fff}body[a="auto"] details[open] summary{border-bottom:1px solid #fff}body[a="auto"] pre{background:#000}body[a="auto"] code:not(pre>code){background-color:#fff;color:#000}body[a="auto"] *:target{background:#2f3849;color:#fff}body[a="auto"] table,body[a="auto"] th,body[a="auto"] td{border:thin solid #fff}body[a="auto"] .toc{border:thin solid #fff;padding:1rem}body[a="auto"] figcaption{color:#000}body[a="auto"] blockquote{border:thin solid #fff}}@media (prefers-color-scheme: light){body[a="auto"]{background-color:#fff;color:#000;color-scheme:light}body[a="auto"] a{color:#3548cf}body[a="auto"] a:visited{color:#8f0075}body[a="auto"] details{border:thin solid #000}body[a="auto"] details summary{color:#000}body[a="auto"] details[open] summary{border-bottom:1px solid #000}body[a="auto"] pre{background:#fff}body[a="auto"] code:not(pre>code){background-color:#000;color:#fff}body[a="auto"] *:target{background:#dae5ec;color:#000}body[a="auto"] table,body[a="auto"] th,body[a="auto"] td{border:thin solid #000}body[a="auto"] .toc{border:thin solid #000;padding:1rem}body[a="auto"] figcaption{color:#595959}body[a="auto"] blockquote{border:thin solid #000}}html{height:100%}body{font-family:'Source Serif Pro', serif;font-size:14px;line-height:1.4;margin:0;min-height:100%;overflow-wrap:break-word}h2,h3,h4,h5,h6{margin-top:1.5rem}p{margin:1rem 0}li{margin:0.4rem 0}a{text-decoration:none}a:hover{text-decoration:underline}hr{text-align:center;border:0;margin:2rem 0}hr:before{content:'/////'}hr:after{content:attr(data-content) "/////"}pre{padding:1em;overflow-x:auto}table{width:100%}table,th,td{border-collapse:collapse;padding:0.4rem}code{text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%}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{padding:1rem}blockquote p{margin:0}img{max-width:100%;display:block;margin:0 auto}figcaption{text-align:center;opacity:0.5}details{padding:1rem}details summary{text-decoration:none}details[open] summary{margin-bottom:0.5em;padding-bottom:0.5em}.post-meta{display:flex;justify-content:space-between;align-items:center}.post-header-meta{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1rem}.post-header-meta a{justify-self:start}.post-header-author{justify-self:center}.post-header-meta time{justify-self:end}.w{max-width:640px;margin:0 auto;padding:4rem 2rem}.theme-toggle-wrap{display:flex;justify-content:flex-end;margin:0 0 0.65rem}.theme-toggle{appearance:none;-webkit-appearance:none;color:inherit;background:transparent;border:1px solid color-mix(in srgb, currentColor 22%, transparent);border-radius:999px;padding:0.22rem;line-height:0;cursor:pointer;opacity:0.48;transition:opacity 0.14s ease, border-color 0.14s ease, background-color 0.14s ease}.theme-toggle .theme-toggle-icon{display:none;align-items:center;justify-content:center;width:0.95rem;height:0.95rem}.theme-toggle[data-theme-state="auto"] .theme-toggle-icon-auto,.theme-toggle[data-theme-state="light"] .theme-toggle-icon-light,.theme-toggle[data-theme-state="dark"] .theme-toggle-icon-dark{display:inline-flex}.theme-toggle:hover,.theme-toggle:focus-visible{opacity:0.85;border-color:color-mix(in srgb, currentColor 45%, transparent);background:color-mix(in srgb, currentColor 9%, transparent)}.theme-toggle:focus-visible{outline:1px solid color-mix(in srgb, currentColor 45%, transparent);outline-offset:1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.toc{padding:1rem}.floating-toc{position:fixed;left:calc((100vw - 640px) / 2 - 220px);top:50%;transform:translateY(-50%);width:180px;max-height:70vh;overflow-y:auto;z-index:20;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.2s ease}.floating-toc.is-visible{opacity:1;visibility:visible;pointer-events:auto}@media (max-width: 1280px){.floating-toc{left:16px}}.floating-toc-title{margin:0 0 0.5rem;font-size:0.68rem;letter-spacing:0.08em;text-transform:uppercase;opacity:0.7}.floating-toc-list{list-style:none;margin:0;padding:0 0 0 0.7rem;border-left:1px solid color-mix(in srgb, currentColor 20%, transparent)}.floating-toc-item{margin:0;padding:0}.floating-toc-item a{display:block;font-size:0.76rem;line-height:1.35;padding:0.18rem 0;margin-left:calc(var(--toc-level, 0) * 0.55rem);opacity:0.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floating-toc-item.active a{opacity:1;font-weight:600}
