.site-header[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:4rem;padding-block:1.5rem;display:flex}.theme-toggle[data-astro-cid-nen7h5rs]{border:1px solid var(--border);width:2rem;height:2rem;color:var(--text);cursor:pointer;background:0 0;border-radius:50%;place-items:center;margin-top:-.4rem;font-size:1.1rem;line-height:1;transition:background .15s,color .15s;display:inline-grid}.theme-toggle[data-astro-cid-nen7h5rs]:hover{background:var(--surface);color:var(--accent)}.theme-toggle[data-astro-cid-nen7h5rs]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-brand[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);white-space:nowrap;font-size:1.15rem;font-weight:700;text-decoration:none}.site-brand[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]{color:var(--muted);font-weight:400}nav[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);flex-wrap:wrap;gap:1rem;font-size:.8rem;display:flex}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{text-decoration:none}@media (width<=480px){.site-header[data-astro-cid-nen7h5rs]{flex-direction:column;align-items:flex-start;margin-bottom:2.5rem}}.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--border);margin-top:5rem;padding-block:1rem 2rem}.footer-links[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:1rem;display:flex}:root,html[data-theme=light]{color-scheme:light;--bg:#f7f5ef;--surface:#fffefa;--text:#22221f;--muted:#77766f;--border:#d8d5ca;--accent:#315c43;--selection:#d5e2d3;--font-body:Georgia, "Times New Roman", serif;--font-mono:"Courier New", monospace;--content-width:760px}html[data-theme=dark]{color-scheme:dark;--bg:#20211f;--surface:#292a27;--text:#e9e6dc;--muted:#aaa99f;--border:#44453f;--accent:#a9c7a9;--selection:#414d40;--font-body:Georgia, "Times New Roman", serif;--font-mono:"Courier New", monospace;--content-width:760px}.article-content .astro-code{border:1px solid var(--border);font-family:var(--font-mono);border-radius:4px;margin-block:1.5rem;padding:1.25rem;font-size:.85rem;line-height:1.65;overflow-x:auto}html[data-theme=light] .article-content .astro-code{background-color:var(--surface)!important}html[data-theme=dark] .article-content .astro-code,html[data-theme=dark] .article-content .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}.article--journal .article-content{max-width:680px;font-family:var(--font-body);font-size:1.08rem;line-height:1.9}.text-highlight{color:var(--accent)}.text-warning{color:#b43c35}.text-muted{color:var(--muted)}.tags a{color:var(--accent);text-decoration:none}.tags a:hover{text-decoration:underline}.article--journal .article-content h2{margin-top:3rem;font-size:1.6rem}.article--technical .article-content{font-family:system-ui,sans-serif;font-size:1rem;line-height:1.8}.article--technical .article-content h2{border-bottom:1px solid var(--border);margin-top:2.5rem;padding-bottom:.5rem}.article--technical .article-content h3{margin-top:2rem;font-size:1.15rem}.article-content :not(pre)>code{border:1px solid var(--border);background:var(--surface);font-family:var(--font-mono);border-radius:3px;padding:.15em .35em;font-size:.85em}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{color:var(--text);font-family:var(--font-body);margin:0;font-size:17px;line-height:1.7}a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:var(--accent)}button,input,textarea{font:inherit}.site-shell{width:min(var(--content-width), calc(100% - 40px));margin-inline:auto}main{min-height:65vh}h1,h2,h3{text-wrap:balance;line-height:1.25}h1{letter-spacing:-.04em;font-size:clamp(2rem,6vw,3rem)}h2{font-size:1.45rem}p{margin-block:1rem}.mono{font-family:var(--font-mono);font-size:.85rem}.muted{color:var(--muted)}.section-heading{border-bottom:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;padding-bottom:.5rem;font-size:.85rem;font-weight:400}@media (width<=480px){body{font-size:16px}.site-shell{width:calc(100% - 32px)}}::selection{background:var(--selection);color:var(--text)}
