*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #0a0a0f;--color-surface: #12121a;--color-text: #f0f0f5;--color-text-muted: #8a8a9a;--color-border: rgba(255, 255, 255, .1);--color-accent: #6366f1;--color-accent-hover: #818cf8;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--max-width: 1100px;--content-width: 680px}html{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}img{max-width:100%;height:auto;display:block}body{min-height:100vh;display:flex;flex-direction:column}main{flex:1;width:100%;max-width:var(--max-width);margin:0 auto;padding:3rem 1.5rem}header{border-bottom:1px solid var(--color-border);position:sticky;top:0;background:#0a0a0fd9;backdrop-filter:blur(12px);z-index:50}header nav{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem;height:56px;display:flex;align-items:center;gap:1.5rem}header nav a:first-child{font-weight:600;color:var(--color-text);margin-right:auto;font-size:.95rem}header nav a:not(:first-child){color:var(--color-text-muted);font-size:.875rem}header nav a:not(:first-child):hover{color:var(--color-text)}footer{border-top:1px solid var(--color-border);margin-top:auto}footer>*{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}footer p{padding-top:2rem;font-size:.8rem;color:var(--color-text-muted)}footer nav{display:flex;gap:1.5rem;padding-bottom:2rem;padding-top:.5rem}footer nav a{font-size:.8rem;color:var(--color-text-muted)}footer nav a:hover{color:var(--color-text)}.blog-hero{margin-bottom:2.5rem}.blog-hero h1{font-size:2rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem}.blog-hero p{color:var(--color-text-muted);font-size:1.05rem}.category-filter{display:flex;gap:.25rem;margin-bottom:2.5rem;flex-wrap:wrap}.category-filter a{padding:.4rem .85rem;border-radius:9999px;font-size:.825rem;color:var(--color-text-muted);border:1px solid var(--color-border);transition:all .15s}.category-filter a:hover{color:var(--color-text);border-color:#fff3}.category-filter a[aria-current=page]{color:var(--color-text);background:var(--color-surface);border-color:#fff3}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.75rem}.blog-card{border:1px solid var(--color-border);border-radius:.75rem;overflow:hidden;transition:border-color .15s}.blog-card:hover{border-color:#fff3}.blog-card img{width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--color-surface)}.blog-card .card-body{padding:1.25rem}.blog-card .card-meta{font-size:.8rem;color:var(--color-text-muted);margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem}.blog-card .card-meta .badge{text-transform:capitalize}.blog-card h2{font-size:1.1rem;font-weight:600;line-height:1.35;margin-bottom:.5rem}.blog-card h2 a{color:var(--color-text)}.blog-card h2 a:hover{color:var(--color-accent)}.blog-card p{font-size:.875rem;color:var(--color-text-muted);line-height:1.5}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:3rem;font-size:.875rem;color:var(--color-text-muted)}.post-header{max-width:var(--content-width);margin-bottom:2.5rem}.post-meta{display:flex;align-items:center;gap:.75rem;font-size:.825rem;color:var(--color-text-muted);margin-bottom:1rem;flex-wrap:wrap}.post-meta .badge{background:var(--color-surface);border:1px solid var(--color-border);padding:.2rem .6rem;border-radius:9999px;text-transform:capitalize;font-size:.75rem}.post-header h1{font-size:2.25rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-bottom:1.25rem}.post-header .featured-image{border-radius:.75rem;overflow:hidden;border:1px solid var(--color-border)}.post-header .featured-image img{width:100%;aspect-ratio:16 / 9;object-fit:cover}.post-layout{display:grid;grid-template-columns:var(--content-width) 1fr;gap:3rem;align-items:start}@media(max-width:960px){.post-layout{grid-template-columns:1fr}.post-layout aside{display:none}}.prose{font-size:1rem;line-height:1.75;color:var(--color-text-muted)}.prose h2{font-size:1.35rem;font-weight:700;color:var(--color-text);margin-top:2.5rem;margin-bottom:.75rem}.prose h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin-top:2rem;margin-bottom:.5rem}.prose p{margin-bottom:1.25rem}.prose strong{color:var(--color-text);font-weight:600}.prose ul,.prose ol{margin-bottom:1.25rem;padding-left:1.25rem}.prose li{margin-bottom:.4rem}.prose a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.prose code{font-family:var(--font-mono);font-size:.85em;background:var(--color-surface);padding:.15em .35em;border-radius:.25rem}.prose pre{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;padding:1rem;overflow-x:auto;margin-bottom:1.5rem}.prose pre code{background:none;padding:0;font-size:.85rem;line-height:1.6}.prose blockquote{border-left:3px solid var(--color-accent);padding-left:1rem;margin-bottom:1.25rem;color:var(--color-text-muted);font-style:italic}.prose hr{border:none;border-top:1px solid var(--color-border);margin:2rem 0}.toc{position:sticky;top:80px}.toc h2{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.75rem}.toc ul{list-style:none}.toc li{margin-bottom:.35rem}.toc a{font-size:.8rem;color:var(--color-text-muted);display:block;padding:.15rem 0}.toc a:hover{color:var(--color-text)}.toc .toc-indent{padding-left:.75rem}.related-posts{max-width:var(--content-width);margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border)}.related-posts h2{font-size:1rem;font-weight:600;margin-bottom:1rem}.related-posts ul{list-style:none;display:flex;flex-direction:column;gap:.75rem}.related-posts a{display:block;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:.5rem;transition:border-color .15s}.related-posts a:hover{border-color:#fff3}.related-posts strong{display:block;font-size:.9rem;color:var(--color-text);margin-bottom:.25rem}.related-posts p{font-size:.8rem;color:var(--color-text-muted);margin:0}.post-cta{max-width:var(--content-width);margin-top:2.5rem;padding:1.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.75rem;text-align:center}.post-cta p{color:var(--color-text-muted);font-size:.9rem;margin-bottom:.75rem}.post-cta a{display:inline-block;padding:.5rem 1.25rem;background:var(--color-text);color:var(--color-bg);border-radius:.5rem;font-weight:500;font-size:.875rem}.post-cta a:hover{opacity:.9}
