.blog-layout{background:var(--bg);min-height:100vh;color:var(--fg)}.blog-header{z-index:40;-webkit-backdrop-filter:blur(16px);background:color-mix(in srgb, var(--bg) 85%, transparent);border-bottom:1px solid var(--border-subtle);position:sticky;top:0}.blog-header-inner{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:.875rem 1.5rem;display:flex}.blog-back-link{color:#fff9;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .2s;display:flex}.blog-back-link:hover{color:var(--fg)}.blog-back-link svg{width:16px;height:16px;transition:transform .2s}.blog-back-link:hover svg{transform:translate(-2px)}.blog-title-header{color:#ffffffe6;letter-spacing:-.01em;font-size:.875rem;font-weight:600}.blog-listing{max-width:800px;margin:0 auto;padding:3rem 1.5rem 6rem}.blog-listing-title{font-size:2.5rem;font-weight:700;font-family:var(--font-display);letter-spacing:-.03em;color:var(--fg);margin-bottom:.5rem}.blog-listing-subtitle{color:#ffffff80;margin-bottom:2.5rem;font-size:1rem;line-height:1.6}.blog-tags-filter{flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem;display:flex}.blog-tag-btn{color:#fff9;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:9999px;padding:.3125rem .75rem;font-size:.75rem;font-weight:500;transition:all .2s}.blog-tag-btn:hover{border-color:var(--fg);color:var(--fg)}.blog-tag-btn.active{background:var(--fg);border-color:var(--fg);color:var(--bg)}.blog-cards{flex-direction:column;gap:1.25rem;display:flex}.blog-card{border:1px solid var(--border-subtle);background:var(--surface);color:inherit;border-radius:1rem;padding:1.5rem;text-decoration:none;transition:all .25s;display:block}.blog-card:hover{border-color:var(--border);background:var(--surface-hover);transform:translateY(-2px);box-shadow:0 8px 32px #0003}.blog-card-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg);margin-bottom:.5rem;font-size:1.25rem;font-weight:600;transition:color .2s}.blog-card:hover .blog-card-title{color:var(--fg)}.blog-card-desc{color:#ffffff8c;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1rem;font-size:.875rem;line-height:1.6;display:-webkit-box;overflow:hidden}.blog-card-meta{color:#fff6;flex-wrap:wrap;align-items:center;gap:.75rem;font-size:.75rem;display:flex}.blog-card-meta-dot{background:#ffffff40;border-radius:50%;width:3px;height:3px}.blog-card-tags{flex-wrap:wrap;gap:.375rem;display:flex}.blog-card-tag{background:var(--surface-hover);color:var(--fg-muted);border:1px solid var(--border);border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem}.blog-post-container{max-width:720px;margin:0 auto;padding:3rem 1.5rem 6rem}.blog-post-header{border-bottom:1px solid var(--border-subtle);margin-bottom:3rem;padding-bottom:2rem}.blog-post-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--fg);margin-bottom:1rem;font-size:2.25rem;font-weight:700;line-height:1.2}.blog-post-meta{color:#ffffff73;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.8125rem;display:flex}.blog-post-tags{flex-wrap:wrap;gap:.375rem;display:flex}.blog-post-tag{background:var(--surface);color:var(--fg-muted);border:1px solid var(--border-subtle);border-radius:9999px;padding:.1875rem .625rem;font-size:.75rem;font-weight:500}.prose{color:#ffffffd1;letter-spacing:-.003em;font-size:1.0625rem;line-height:1.8}.prose>*+*{margin-top:1.5rem}.prose h2{font-family:var(--font-display);letter-spacing:-.03em;color:var(--fg);margin-top:3rem;margin-bottom:.75rem;scroll-margin-top:5rem;font-size:1.5rem;font-weight:650;line-height:1.3}.prose h3{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg);margin-top:2.5rem;margin-bottom:.5rem;scroll-margin-top:5rem;font-size:1.25rem;font-weight:600;line-height:1.4}.prose h4{letter-spacing:-.01em;color:#fffffff2;margin-top:2rem;margin-bottom:.375rem;scroll-margin-top:5rem;font-size:1.0625rem;font-weight:600}.prose p{margin-top:1.25rem;margin-bottom:0}.prose strong{color:var(--fg);font-weight:600}.prose a{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;transition:text-decoration-color .2s}.prose a:hover{-webkit-text-decoration-color:var(--fg);text-decoration-color:var(--fg)}.prose ul,.prose ol{margin-top:1.25rem;padding-left:1.5rem}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose li{margin-top:.5rem;padding-left:.25rem}.prose li::marker{color:var(--fg-dim)}.prose blockquote{border-left:3px solid var(--fg-muted);background:var(--surface);color:#ffffffb3;border-radius:0 .5rem .5rem 0;margin-top:1.75rem;margin-bottom:1.75rem;padding:1rem 1.25rem;font-style:italic}.prose blockquote p{margin-top:0}.prose code{color:#ffffffe6;background:#ffffff14;border-radius:.25rem;padding:.125em .375em;font-size:.875em;font-weight:500}.prose pre{-webkit-overflow-scrolling:touch;border:1px solid #ffffff0f;border-radius:.75rem;margin-top:1.75rem;margin-bottom:1.75rem;padding:1.25rem 1.5rem;font-size:.8125rem;line-height:1.7;overflow-x:auto;background:#00000059!important}.prose pre code{font-size:inherit;color:inherit;background:0 0;padding:0;font-weight:400}.prose table{border-collapse:collapse;width:100%;margin-top:1.75rem;font-size:.875rem}.prose thead{border-bottom:2px solid #ffffff1a}.prose th{text-align:left;color:var(--foreground);text-transform:uppercase;letter-spacing:.05em;padding:.625rem 1rem;font-size:.8125rem;font-weight:600}.prose td{color:#ffffffb3;border-bottom:1px solid #ffffff0d;padding:.625rem 1rem}.prose tr:last-child td{border-bottom:none}.prose hr{background:#ffffff14;border:none;height:1px;margin:3rem 0}.prose img{border-radius:.75rem;max-width:100%;margin-top:1.75rem;margin-bottom:1.75rem}.blog-post-footer{text-align:center;border-top:1px solid #ffffff0f;margin-top:4rem;padding-top:2rem}.blog-post-footer p{color:#ffffff80;font-size:.9375rem}.blog-post-footer a{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;font-weight:500;transition:text-decoration-color .2s}.blog-post-footer a:hover{-webkit-text-decoration-color:var(--fg);text-decoration-color:var(--fg)}.blog-toc{width:220px;max-height:calc(100vh - 8rem);display:none;position:fixed;top:5rem;right:max(1rem,50vw - 620px);overflow-y:auto}@media (min-width:1200px){.blog-toc{display:block}}.blog-toc-title{text-transform:uppercase;letter-spacing:.08em;color:#ffffff59;margin-bottom:.75rem;font-size:.6875rem;font-weight:600}.blog-toc ul{margin:0;padding:0;list-style:none}.blog-toc li{margin:0}.blog-toc a{color:#fff6;border-left:2px solid #0000;padding:.25rem 0 .25rem .75rem;font-size:.75rem;line-height:1.5;text-decoration:none;transition:color .2s;display:block}.blog-toc a:hover{color:#ffffffb3}.blog-toc a.active{color:var(--fg);border-left-color:var(--fg)}.blog-toc a[data-level="3"]{padding-left:1.5rem}.blog-toc a[data-level="4"]{padding-left:2.25rem}.blog-empty{text-align:center;color:#ffffff59;padding:4rem 1rem}.blog-empty p{margin-bottom:.5rem;font-size:1rem}@media (max-width:640px){.blog-listing{padding:2rem 1rem 4rem}.blog-listing-title{font-size:1.625rem}.blog-card{padding:1.25rem}.blog-card-title{font-size:1.125rem}.blog-post-container{padding:2rem 1rem 4rem}.blog-post-title{font-size:1.75rem}.prose{font-size:1rem}.prose h2{font-size:1.3125rem}.prose h3{font-size:1.125rem}.prose pre{border-radius:0;margin-left:-1rem;margin-right:-1rem;padding:1rem;font-size:.75rem}}
