:root{--bg-color:#f5f0eb;--text-color:#181818;--mono-font:Consolas, "Liberation Mono", Menlo, Monaco, "Courier New", Courier, monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--mono-font);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;width:100%;min-height:100vh;overflow-x:hidden}.nav-link,.prose a,.site-footer a,.site-header a,.crumbs a{color:var(--text-color);text-underline-offset:4px;text-decoration:underline;transition:opacity .15s}.nav-link:hover,.prose a:hover,.site-footer a:hover,.site-header a:hover,.crumbs a:hover{opacity:.5}.site-header{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;max-width:680px;margin:0 auto;padding:1.5rem 1.5rem 0;font-size:.85rem;display:flex}.site-header.overlay{position:absolute;top:0;left:0;right:0}.site-header .home{letter-spacing:-.02em;font-weight:700;text-decoration:none}.site-header nav{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.page{max-width:680px;margin:3rem auto 5rem;padding:0 1.5rem}.crumbs{opacity:.85;margin-bottom:1.5rem;font-size:.8rem}.crumbs span[aria-hidden]{margin:0 .4rem}.page h1{letter-spacing:-.02em;margin-bottom:.5rem;font-size:clamp(1.4rem,3.5vw,2.2rem);font-weight:700;line-height:1.2}.meta{opacity:.7;margin-bottom:2rem;font-size:.8rem}.prose{font-size:.9rem;line-height:1.6}.prose>*+*{margin-top:1rem}.prose h2{letter-spacing:-.01em;margin-top:2.25rem;font-size:1.1rem}.prose h3{margin-top:1.5rem;font-size:.95rem}.prose ul,.prose ol{padding-left:1.5rem}.prose li+li{margin-top:.35rem}.prose blockquote{opacity:.85;border-left:2px solid;padding-left:1rem}.prose table{border-collapse:collapse;width:100%;font-size:.8rem;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border:1px solid;padding:.4rem .6rem}.prose code{font-family:var(--mono-font)}.prose hr{opacity:.3;border:0;border-top:1px solid}.note{border:1px solid;padding:.75rem 1rem;font-size:.85rem}.list{padding:0;font-size:.9rem;line-height:1.5;list-style:none}.list li+li{margin-top:1.25rem}.list .desc{opacity:.8;font-size:.85rem;display:block}.site-footer{flex-wrap:wrap;gap:.25rem 1.25rem;max-width:680px;margin:0 auto;padding:0 1.5rem 3rem;font-size:.8rem;display:flex}
