body{flex-direction:column;min-height:100vh;display:flex}.lp-footer{width:100%}.cc-blog-main{flex:1 0 auto;width:100%;max-width:760px;margin:0 auto;padding-top:3rem;padding-bottom:4rem}.cc-blog-intro{border-bottom:1px solid var(--rule);margin-bottom:2rem;padding-bottom:1.5rem}.cc-blog-intro h1{font-family:var(--font-display);font-size:var(--fs-h1);color:var(--fg);margin:0 0 .5rem;font-weight:500}.cc-blog-intro p{color:var(--fg-muted);font-size:var(--fs-body);margin:0}.cc-post-list{flex-direction:column;gap:2rem;margin:0;padding:0;list-style:none;display:flex}.cc-post-item{flex-direction:column;gap:.4rem;display:flex}.cc-post-item h2{font-family:var(--font-display);font-size:var(--fs-h2);margin:0;font-weight:500;line-height:1.2}.cc-post-item h2 a{color:var(--fg);text-decoration:none}.cc-post-item h2 a:hover{color:var(--accent)}.cc-post-meta{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--fg-faint);text-transform:uppercase;letter-spacing:.04em}.cc-post-item p{color:var(--fg-soft);font-size:var(--fs-body);margin:.2rem 0 0}.cc-tag-strip{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.cc-tag{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--fg-muted);border:1px solid var(--rule);padding:.1rem .5rem;text-decoration:none;transition:color .15s,border-color .15s}.cc-tag:hover{color:var(--accent);border-color:var(--accent)}.cc-post-header{border-bottom:1px solid var(--rule);margin-bottom:2rem;padding-bottom:1.25rem}.cc-post-header h1{font-family:var(--font-display);font-size:var(--fs-h1);color:var(--fg);margin:.5rem 0;font-weight:500;line-height:1.1}.cc-back-link{font-family:var(--font-mono);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);text-decoration:none}.cc-back-link:hover{color:var(--accent)}.cc-prose{color:var(--fg-soft);font-size:1.0625rem;line-height:1.7}.cc-prose h2,.cc-prose h3{font-family:var(--font-display);color:var(--fg);clear:both;margin:2rem 0 .75rem;font-weight:500;line-height:1.25}.cc-prose h2{font-size:var(--fs-h2)}.cc-prose h3{font-size:var(--fs-h3)}.cc-prose p,.cc-prose ul,.cc-prose ol{margin:0 0 1.1rem}.cc-prose a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.cc-prose a:hover{color:var(--accent-hover)}.cc-prose code{font-family:var(--font-mono);background:var(--bone-200);padding:.1em .35em;font-size:.875em}.cc-prose blockquote{border-left:2px solid var(--accent);color:var(--fg-muted);margin:1.1rem 0;padding-left:1rem}.cc-prose table{border-collapse:collapse;width:auto;max-width:100%;margin:1.5rem 0;font-size:.9em;line-height:1.45}.cc-prose thead th{border-bottom:2px solid var(--fg);text-align:left}.cc-prose th,.cc-prose td{border:1px solid var(--rule);vertical-align:top;padding:.45rem .65rem}.cc-prose tbody tr:nth-child(2n){background:var(--bone-100)}.cc-prose img{max-width:100%;height:auto}.cc-prose figure{text-align:center;margin:1.75rem auto}.cc-prose figure.cc-figure-soft{max-width:600px}.cc-prose figure.cc-figure-diagram{max-width:620px}.cc-prose figure.cc-figure-diagram img{border:1px solid var(--rule);background:var(--surface);display:block}.cc-prose figure figcaption{color:var(--fg-muted);margin-top:.5rem;font-size:.8rem;line-height:1.5}.cc-prose figure.cc-figure-float{float:right;text-align:left;width:300px;max-width:42%;margin:.25rem 0 1rem 1.75rem}.cc-prose figure.cc-figure-float img{border:1px solid var(--rule);background:var(--surface);width:100%;height:auto;display:block}@media (width<=640px){.cc-prose figure.cc-figure-float{float:none;text-align:center;width:100%;max-width:345px;margin:1.5rem auto}}.cc-prose pre.astro-code{font-family:var(--font-mono);border:1px solid var(--rule);margin:0 0 1.2rem;padding:1rem 1.1rem;font-size:.85rem;line-height:1.55;overflow-x:auto}.cc-prose pre.astro-code code{font-size:inherit;background:0 0;padding:0}.dark .cc-prose .astro-code,.dark .cc-prose .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.cc-post-bio{border-top:1px solid var(--rule);max-width:64ch;margin-top:2.5rem;padding-top:1.5rem}.cc-post-bio-label{font-family:var(--font-mono);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);margin:0 0 .5rem}.cc-post-bio p:last-child{color:var(--fg-soft);font-size:var(--fs-body);text-wrap:pretty;margin:0;line-height:1.6}.cc-post-bio a{color:var(--accent);text-underline-offset:2px;text-decoration:underline 1px}.cc-post-bio a:hover{color:var(--accent-hover)}.cc-404{text-align:center;padding:3rem 0}.cc-404 h1{font-family:var(--font-display);font-size:var(--fs-display-lg);color:var(--accent);margin:0;font-weight:500}.cc-404 p{color:var(--fg-muted);margin:.5rem 0 1.5rem}
