:root{--color-slate-dark: #141413;--color-ivory-light: #faf9f5;--color-ivory-medium: #f0eee6;--color-ivory-dark: #e8e6dc;--color-oat: #e3dacc;--color-cloud-medium: #b0aea5;--color-clay: #d97757;--color-clay-hover: #c6613f;--color-olive: #788c5d;--color-sky: #6a9bcc;--color-fig: #c46686;--color-cactus: #bcd1ca;--bg-primary: var(--color-ivory-light);--bg-secondary: var(--color-ivory-medium);--bg-card: #ffffff;--text-primary: var(--color-slate-dark);--text-secondary: #5c5a52;--text-muted: var(--color-cloud-medium);--accent: var(--color-clay);--accent-hover: var(--color-clay-hover);--border: var(--color-ivory-dark);--font-serif: "Noto Serif SC", "Source Han Serif SC", "Georgia", serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--radius: 8px;--radius-lg: 16px;--radius-xl: 24px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.7;min-height:100vh}.blog-layout{display:grid;grid-template-columns:280px 1fr;gap:3rem;max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh}.sidebar{position:sticky;top:2rem;height:fit-content;padding:2rem 1.5rem;border-right:1px solid var(--border)}.sidebar-avatar{width:64px;height:64px;border-radius:50%;background:var(--color-slate-dark);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin-bottom:1.2rem}.sidebar h1{font-family:var(--font-serif);font-size:1.4rem;font-weight:700;margin-bottom:.3rem;color:var(--text-primary)}.sidebar .bio{font-size:.85rem;color:var(--text-muted);margin-bottom:2rem;line-height:1.7}.sidebar-nav{display:flex;flex-direction:column;gap:.15rem}.sidebar-nav a{color:var(--text-secondary);text-decoration:none;padding:.45rem 0;font-size:.9rem;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.02em;transition:color .15s;display:flex;align-items:center;gap:.5rem}.sidebar-nav a:hover{color:var(--text-primary)}.sidebar-nav a.active{color:var(--accent);font-weight:600}.main-content{min-width:0}.post-list{display:flex;flex-direction:column;gap:0}.post-card{padding:1.8rem 0;border-bottom:1px solid var(--border);transition:all .2s ease;cursor:pointer}.post-card:last-child{border-bottom:none}.post-card h2{font-family:var(--font-serif);font-size:1.35rem;font-weight:600;margin-bottom:.5rem;line-height:1.4}.post-card h2 a{color:var(--text-primary);text-decoration:none}.post-card h2 a:hover{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:4px;text-decoration-color:var(--accent)}.post-meta{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);margin-bottom:.6rem;display:flex;gap:1rem;align-items:center;letter-spacing:.02em;text-transform:uppercase}.post-tags{display:flex;gap:.4rem;flex-wrap:wrap}.tag{font-family:var(--font-mono);font-size:.7rem;padding:.1rem .5rem;border:1px solid var(--color-ivory-dark);color:var(--text-secondary);text-decoration:none;text-transform:uppercase;letter-spacing:.03em;transition:all .15s}.tag:hover{border-color:var(--accent);color:var(--accent)}.post-excerpt{font-size:.92rem;color:var(--text-secondary);line-height:1.65}.article{max-width:720px}.article-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.article-header h1{font-family:var(--font-serif);font-size:2.4rem;font-weight:700;line-height:1.25;margin-bottom:1rem;color:var(--text-primary)}.article-header .post-meta{font-size:.8rem}.article-content{font-family:var(--font-sans);font-size:1.05rem;line-height:1.85;color:var(--text-primary)}.article-content h2{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.article-content h3{font-size:1.15rem;font-weight:600;margin:2rem 0 .6rem}.article-content p{margin-bottom:1.2rem}.article-content a{color:var(--text-primary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--accent);transition:color .15s}.article-content a:hover{color:var(--accent)}.article-content code{font-family:var(--font-mono);font-size:.85em;background:var(--color-ivory-medium);padding:.15em .4em;border-radius:3px}.article-content pre{background:var(--color-slate-dark);color:var(--color-ivory-light);border-radius:var(--radius);padding:1.2rem;overflow-x:auto;margin:1.5rem 0;font-size:.85rem;line-height:1.6}.article-content pre code{background:none;padding:0;border-radius:0;color:inherit}.article-content blockquote{border-left:3px solid var(--accent);padding-left:1.2rem;margin:1.5rem 0;color:var(--text-secondary);font-style:italic}.article-content img{max-width:100%;border-radius:var(--radius);margin:1.5rem 0}.article-content ul,.article-content ol{margin:1rem 0 1rem 1.5rem}.article-content li{margin-bottom:.4rem}.section-title{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.footer{text-align:left;padding:2rem 0 1rem;border-top:1px solid var(--border);margin-top:3rem;color:var(--text-muted);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.02em}.footer a{color:var(--text-secondary);text-decoration:none}.footer a:hover{color:var(--accent)}.post-nav{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}.post-nav-inner{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.post-nav-link{display:flex;flex-direction:column;gap:.3rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;transition:all .2s ease}.post-nav-link:hover{border-color:var(--accent)}.post-nav-next{text-align:right}.post-nav-label{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase}.post-nav-title{font-size:.92rem;color:var(--text-primary);line-height:1.4}.related-posts{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.related-title{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--text-muted);letter-spacing:.08em;margin-bottom:1rem;text-transform:uppercase}.related-list{display:flex;flex-direction:column;gap:0}.related-card{display:flex;flex-direction:column;gap:.2rem;padding:.8rem 0;border-bottom:1px solid var(--border);text-decoration:none;transition:color .15s}.related-card:last-child{border-bottom:none}.related-card:hover{color:var(--accent)}.related-card-title{font-size:.92rem;color:var(--text-primary);font-weight:500}.related-card:hover .related-card-title{color:var(--accent)}.related-card-desc{font-size:.78rem;color:var(--text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.about-content{line-height:1.85;font-size:1.05rem}.about-content p{margin-bottom:1.2rem}@media(max-width:768px){.blog-layout{grid-template-columns:1fr;padding:1.5rem 1rem}.sidebar{position:static;margin-bottom:1.5rem;padding:1.5rem 0;border-right:none;border-bottom:1px solid var(--border)}.article-header h1{font-size:1.8rem}.post-nav-inner{grid-template-columns:1fr}}
