.blog-hero{text-align:left;padding:5rem 0 3rem;max-width:900px;margin:0 auto}.blog-hero .section-tag{font-family:var(--font-mono);font-size:.78rem;color:#c084fc;letter-spacing:.02em;margin-bottom:1rem;display:block}.blog-hero h1{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:.25rem}.blog-hero .hero-sub{font-size:.95rem;color:var(--text-secondary);max-width:800px;line-height:1.7}.blog-list{display:flex;flex-direction:column;gap:1.25rem;padding-bottom:12rem;max-width:900px;margin:0 auto}.blog-card{display:flex;flex-direction:row;background:var(--bg-secondary);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);text-decoration:none;transition:filter .2s}.blog-card:hover{filter:brightness(1.08);text-decoration:none}.blog-card-image{width:220px;min-height:100%;object-fit:cover;display:block;flex-shrink:0}.blog-card-image-placeholder{width:220px;min-height:100%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.blog-card-image-placeholder svg{width:40px;height:40px;color:var(--text-tertiary);opacity:.3}.blog-card-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;flex:1;min-width:0}.blog-card-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.blog-card-date{font-family:var(--font-mono);font-size:.72rem;color:var(--text-tertiary);letter-spacing:.02em}.blog-card-tags{display:flex;gap:.4rem;flex-wrap:wrap}.blog-card-tag{font-family:var(--font-mono);font-size:.65rem;color:#c084fc;background:#c084fc14;padding:.15rem .5rem;clip-path:polygon(0 0,calc(100% - 5px) 0,100% 5px,100% 100%,5px 100%,0 calc(100% - 5px))}.blog-card-title{font-family:var(--font-heading);font-size:1.1rem;font-weight:600;color:var(--text-color);line-height:1.35;margin-bottom:.4rem}.blog-card-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.6;flex:1}.blog-card-author{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.6rem;border-top:1px solid var(--border-color)}.blog-card-avatar{width:16px;height:16px;border-radius:50%;object-fit:cover}.blog-card-author-name{font-size:.78rem;color:var(--text-tertiary)}.blog-card-author .blog-card-avatar{margin-left:auto}.blog-empty{text-align:center;padding:4rem 0 6rem;color:var(--text-tertiary);font-size:.9rem}.article-header{max-width:900px;margin:0 auto;padding:4rem 0 2rem}.article-breadcrumb{font-family:var(--font-mono);font-size:.75rem;color:var(--text-tertiary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.4rem}.article-breadcrumb a{color:#c084fc;text-decoration:none}.article-breadcrumb a:hover{text-decoration:underline}.article-breadcrumb .sep{color:var(--text-tertiary);opacity:.5}.article-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}.article-tag{font-family:var(--font-mono);font-size:.65rem;color:#c084fc;background:#c084fc14;padding:.15rem .5rem;clip-path:polygon(0 0,calc(100% - 5px) 0,100% 5px,100% 100%,5px 100%,0 calc(100% - 5px))}.article-title{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.25;margin-bottom:1rem}.article-description{font-size:1.05rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1.5rem}.article-meta{display:flex;align-items:center;gap:.75rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.article-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.article-meta-text{display:flex;flex-direction:column}.article-author-name{font-size:.85rem;color:var(--text-color);font-weight:500}.article-date{font-family:var(--font-mono);font-size:.72rem;color:var(--text-tertiary);letter-spacing:.02em}.article-cover{max-width:900px;margin:0 auto 2.5rem}.article-cover img{width:100%;display:block;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%)}.article-content{max-width:900px;margin:0 auto;padding-bottom:4rem;overflow-wrap:break-word;word-break:break-word}.article-content h2{font-size:1.4rem;font-weight:700;margin-top:2.5rem;margin-bottom:1rem;line-height:1.3}.article-content h3{font-size:1.1rem;font-weight:600;margin-top:2rem;margin-bottom:.75rem;line-height:1.35}.article-content p{font-size:.925rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1.25rem}.article-content a{color:#c084fc;text-decoration:underline;text-underline-offset:2px}.article-content a:hover{color:var(--text-color)}.article-content ul,.article-content ol{padding-left:1.5rem;margin-bottom:1.25rem}.article-content li{font-size:.925rem;line-height:1.75;color:var(--text-secondary);margin-bottom:.35rem}.article-content strong{color:var(--text-color);font-weight:600}.article-content blockquote{border-left:3px solid #c084fc;padding:.75rem 1.25rem;margin:1.5rem 0;background:var(--bg-secondary)}.article-content blockquote p{color:var(--text-secondary);margin-bottom:0}.article-content .code-block{background:var(--bg-tertiary);overflow-x:auto;margin:1.5rem 0;filter:drop-shadow(0 0 1px rgba(192,132,252,.15))}.article-content .code-block-header{padding:.5rem 1.5rem;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between}.article-content .code-block-lang{font-family:var(--font-mono);font-size:.7rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.article-content .code-block pre{margin:0;padding:1.25rem 1.5rem;clip-path:none;background:none;overflow-x:auto;font-family:var(--font-mono);font-size:.82rem;line-height:1.7}.article-content>pre{background:var(--bg-tertiary);padding:1.25rem 1.5rem;margin:1.5rem 0;overflow-x:auto;font-family:var(--font-mono);font-size:.82rem;line-height:1.65;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}.article-content code{font-family:var(--font-mono);font-size:.84rem;background:var(--bg-tertiary);padding:.15rem .4rem;border-radius:var(--radius-sm)}.article-content pre code{background:none;padding:0;font-size:inherit}.article-content .t-key{color:#ddd0ff}.article-content .t-str{color:#4ade80}.article-content .t-num{color:#fbbf24}.article-content .t-bool{color:#fb7dbe}.article-content .t-comment{color:#9990b0}.article-content .t-brace,.article-content .t-punct{color:#8a8499}.article-content .t-keyword{color:#c084fc}.article-content img{max-width:100%;display:block;margin:1.5rem 0;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}.article-content .image-placeholder{width:100%;aspect-ratio:16 / 9;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;margin:1.5rem 0;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);color:var(--text-tertiary);font-family:var(--font-mono);font-size:.78rem}.article-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.85rem;background:var(--bg-tertiary);filter:drop-shadow(0 0 1px rgba(192,132,252,.15))}.article-content th{text-align:left;padding:.6rem .75rem;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-tertiary);font-family:var(--font-mono);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.article-content td{padding:.5rem .75rem;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-secondary)}.article-content hr{border:none;height:1px;background:var(--border-color);margin:2rem 0}.section-cta{text-align:center;padding:8rem 0;position:relative;overflow:hidden;background:transparent}.cta-texture{position:absolute;inset:0;background:url(/gears.png) center center / cover no-repeat;background:image-set(url(/gears.avif) type("image/avif"),url(/gears.png) type("image/png")) center center / cover no-repeat;background-attachment:fixed;filter:brightness(.2) saturate(.6);opacity:.35;pointer-events:none}.cta-inner{position:relative;z-index:1}.cta-headline{font-size:clamp(2rem,4vw,3.2rem);font-weight:700;letter-spacing:0;line-height:1.15;margin-bottom:1rem}.cta-sub{font-size:.95rem;color:var(--text-secondary);max-width:460px;margin:0 auto 2rem;line-height:1.7}.cta-actions{display:flex;align-items:center;justify-content:center;gap:.75rem}.btn-hero{padding:.75rem 1.75rem;font-size:.9rem;font-family:var(--font-mono);font-weight:500;letter-spacing:-.02em}.btn-outline{display:inline-block;padding:.75rem 1.75rem;color:#ffffffe6;text-decoration:none;clip-path:var(--clip-corner-btn);filter:drop-shadow(0 0 1px rgba(255,255,255,.28));font-family:var(--font-mono);font-weight:500;font-size:.9rem;letter-spacing:-.02em;transition:all .15s;background:#ffffff0f}.btn-outline:hover{color:#fff;background:#ffffff1a;filter:drop-shadow(0 0 1px rgba(255,255,255,.45));text-decoration:none}@media(max-width:768px){.blog-card{flex-direction:column}.blog-card-image,.blog-card-image-placeholder{width:100%;min-height:auto;aspect-ratio:16 / 9}.article-header,.article-cover,.article-content{padding-left:0;padding-right:0;max-width:100%}.article-content p,.article-content li{font-size:1rem;line-height:1.8}.article-content h2{font-size:1.35rem}.article-content h3{font-size:1.1rem}.article-content>pre,.article-content .code-block pre{font-size:.78rem}.article-content code{font-size:.8rem}.article-content table{font-size:.8rem;display:block;overflow-x:auto}.article-content .code-block{margin-left:-12px;margin-right:-12px}}@media(max-width:640px){.blog-hero{padding:3.5rem 0 2rem}.section-cta{padding:4rem 0}.cta-actions{flex-direction:column}.article-header{padding-top:2.5rem}}
