body{min-height:100vh;display:flex;flex-direction:column}.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);padding-bottom:1.5rem;margin-bottom:2rem}.cc-blog-intro h1{font-family:var(--font-display);font-size:var(--fs-h1);font-weight:500;color:var(--fg);margin:0 0 .5rem}.cc-blog-intro p{color:var(--fg-muted);font-size:var(--fs-body);margin:0}.cc-post-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2rem}.cc-post-item{display:flex;flex-direction:column;gap:.4rem}.cc-post-item h2{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:500;margin:0;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{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.cc-tag{font-family:var(--font-mono);font-size:var(--fs-small);text-decoration:none;color:var(--fg-muted);border:1px solid var(--rule);padding:.1rem .5rem;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);padding-bottom:1.25rem;margin-bottom:2rem}.cc-post-header h1{font-family:var(--font-display);font-size:var(--fs-h1);font-weight:500;line-height:1.1;color:var(--fg);margin:.5rem 0}.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);font-weight:500;color:var(--fg);margin:2rem 0 .75rem;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-decoration:underline;text-underline-offset:2px}.cc-prose a:hover{color:var(--accent-hover)}.cc-prose code{font-family:var(--font-mono);font-size:.875em;background:var(--bone-200);padding:.1em .35em}.cc-prose blockquote{border-left:2px solid var(--accent);margin:1.1rem 0;padding-left:1rem;color:var(--fg-muted)}.cc-prose img{max-width:100%;height:auto}.cc-prose figure{margin:1.75rem auto;text-align:center}.cc-prose pre.astro-code{font-family:var(--font-mono);font-size:.85rem;line-height:1.55;padding:1rem 1.1rem;overflow-x:auto;margin:0 0 1.2rem;border:1px solid var(--rule)}.cc-prose pre.astro-code code{background:transparent;padding:0;font-size:inherit}.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-404{text-align:center;padding:3rem 0}.cc-404 h1{font-family:var(--font-display);font-size:var(--fs-display-lg);font-weight:500;color:var(--accent);margin:0}.cc-404 p{color:var(--fg-muted);margin:.5rem 0 1.5rem}
