.blogs-section{padding-top:var(--space-xl);margin-bottom:var(--space-2xl)}.timeline{display:flex;flex-direction:column;gap:0}.tl-item{display:grid;grid-template-columns:80px 1fr;gap:var(--space-lg);position:relative}.tl-left{display:flex;flex-direction:column;align-items:center;padding-top:1.6rem}.tl-rank{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.6rem}.tl-node{width:10px;height:10px;background:var(--obsidian-0);border:2px solid var(--border-mid);border-radius:2px;flex-shrink:0;transition:border-color var(--t-mid),box-shadow var(--t-mid);z-index:1}.tl-node.teal{border-color:var(--teal);box-shadow:0 0 10px var(--teal-glow-hard);background:#00adb526}.tl-node.pink{border-color:var(--pink);box-shadow:0 0 10px var(--pink-glow-hard);background:#ff2d7826}.tl-rail{flex:1;width:1px;background:var(--border-faint);margin-top:4px}.tl-item:last-child .tl-rail{display:none}.tl-content{display:block;text-decoration:none;padding:var(--space-xl);border-radius:2px;margin-bottom:var(--space-lg);transition:background var(--t-mid) var(--ease-in-out),border-color var(--t-mid) var(--ease-in-out),box-shadow var(--t-mid) var(--ease-in-out)}.tl-content.teal{border-color:var(--border-teal);box-shadow:0 0 20px var(--teal-glow)}.tl-content.pink{border-color:var(--border-pink);box-shadow:0 0 20px var(--pink-glow)}.tl-content:hover{background:var(--surface-2)}.tl-meta{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.tl-date{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.05em}.tl-title{font-family:var(--font-mono);font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700;color:var(--text-primary);margin-bottom:.75rem;line-height:1.3}.tl-desc{font-family:var(--font-body);font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-md)}.tl-tech{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:var(--space-md);border-top:1px solid var(--border-faint)}.tl-links{display:flex;gap:1rem;padding-top:var(--space-md);margin-top:var(--space-md)}.tl-blog-grid{display:grid;grid-template-columns:280px 1fr;gap:var(--space-xl);align-items:start}.tl-blog-image-wrapper{aspect-ratio:16/10;border:1px solid var(--border-dim);border-radius:4px;overflow:hidden;background:var(--obsidian-2);width:100%}.tl-blog-image{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(20%);transition:filter var(--t-fast),transform var(--t-mid)}.tl-content:hover .tl-blog-image{filter:grayscale(0%);transform:scale(1.03)}.tl-blog-info{display:flex;flex-direction:column}.post-container{max-width:920px;margin:0 auto;padding:var(--space-lg) var(--space-lg) var(--space-md)}.post-header{margin-bottom:var(--space-xl);text-align:center}.post-tags{display:flex;justify-content:center;gap:.5rem;margin-top:var(--space-md);flex-wrap:wrap}.post-back-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.75rem;color:var(--teal);text-decoration:none;margin-bottom:var(--space-xl);opacity:.7;transition:opacity var(--t-fast)}.post-back-link:hover{opacity:1}.post-title{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:var(--space-md);background:linear-gradient(135deg,var(--text-primary),var(--text-muted));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.post-meta-full{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted);letter-spacing:.1em}.post-hero-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin-bottom:var(--space-xl);border:1px solid var(--border-dim);box-shadow:0 0 40px #0006}.prose{font-family:var(--font-body);font-size:1.12rem;line-height:1.85;color:var(--text-primary)}.prose h2{font-size:1.9rem;margin-top:3rem;margin-bottom:1.2rem;color:var(--teal)}.prose h3{font-size:1.45rem;margin-top:2.5rem;margin-bottom:1rem;color:var(--text-secondary)}.prose p{margin-bottom:1.8rem;text-align:left;line-height:1.85}.prose img{display:block;margin:2.5rem auto;border-radius:4px;border:1px solid var(--border-dim);width:100%;height:auto}.prose strong,.prose b{color:var(--pink);font-weight:700}.prose em,.prose i{color:var(--teal);font-style:italic}.prose a{color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--teal);text-decoration-thickness:1.5px;text-underline-offset:4px;transition:text-decoration-color var(--t-fast)}.prose a:hover{text-decoration-color:var(--pink)}.prose a:after{content:"↗";color:var(--text-primary);margin-left:.25em;font-size:.8em;display:inline-block;transition:transform var(--t-fast)}.prose a:hover:after{transform:translate(2px,-2px)}.prose code{background:var(--surface-2);padding:.2em .4em;border-radius:3px;font-size:.9em;color:var(--teal)}.prose pre{background:var(--obsidian-1);padding:var(--space-lg);border-radius:4px;border:1px solid var(--border-faint);margin:2rem 0;overflow-x:auto}.prose hr{border:none;border-top:1px solid var(--border-dim);margin:var(--space-xl) 0}.prose blockquote{border-left:4px solid var(--teal);padding-left:var(--space-lg);margin:2.5rem 0;color:var(--text-secondary);font-style:italic;font-size:1.15rem;line-height:1.8}.prose blockquote p{margin-bottom:0}.prose ul,.prose ol{margin-left:2rem;margin-bottom:1.8rem;padding-left:0}.prose ul{list-style-type:disc!important}.prose ol{list-style-type:decimal!important}.prose li{margin-bottom:.75rem;line-height:1.8;color:var(--text-primary)}.prose ul ul,.prose ol ol,.prose ul ol,.prose ol ul{margin-top:.5rem;margin-bottom:.5rem;margin-left:1.5rem}@media (max-width: 850px){.tl-blog-grid{grid-template-columns:1fr;gap:var(--space-md)}}@media (max-width: 600px){.tl-item{grid-template-columns:48px 1fr;gap:var(--space-md)}.tl-rank{font-size:.45rem}.tl-content{padding:var(--space-lg)}}
