:root{--bg-primary:#FAFAF8;--bg-secondary:#F5F5F3;--text-primary:#1A1A1A;--text-secondary:#5A5A5A;--text-light:#999999;--accent:#C45A3B;--accent-light:#E8D5D0;--border:#E0E0DD;--font-serif:'Georgia', 'Times New Roman', serif;--font-sans:'Helvetica Neue', 'Helvetica', Arial, sans-serif;--content-width:1400px;--gutter:80px;--space-xs:0.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:6rem}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:19px;line-height:1.75}body{font-family:var(--font-serif);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:var(--content-width);margin:0 auto;padding:0 var(--gutter)}.site-header{padding:var(--space-sm)var(--gutter);font-family:var(--font-sans);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-light);border-bottom:1px solid var(--border)}.site-header a{color:var(--text-light);text-decoration:none}.site-header a:hover{color:var(--text-primary)}.post-list{max-width:var(--content-width);margin:var(--space-xl)auto;padding:0 var(--gutter)}.post-item{display:block;padding:var(--space-lg)0;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;transition:background .15s ease}.post-item:first-child{padding-top:0}.post-item:last-child{border-bottom:none}.post-item:hover h2{color:var(--accent)}.post-item .post-meta{display:block;font-family:var(--font-sans);font-size:.75rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-xs)}.post-item h2{font-size:1.6rem;font-weight:400;line-height:1.3;margin-bottom:var(--space-xs);transition:color .15s ease}.post-item .post-description{color:var(--text-secondary);font-size:1rem;line-height:1.6}.post{max-width:var(--content-width);margin:0 auto;padding:0 var(--gutter)}.post-header{margin:var(--space-xl)0 var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border)}.post-meta-top{font-family:var(--font-sans);font-size:.75rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-md)}.post-meta-top .post-reading-time::before{content:"·";margin:0 .5em}.post-title{font-size:3.2rem;font-weight:400;line-height:1.15;letter-spacing:-.03em;margin-bottom:var(--space-sm)}.post-subtitle{font-size:1.3rem;color:var(--text-secondary);line-height:1.5;font-style:italic}.post-content{font-size:1.05rem;line-height:1.8}.post-content>p:first-of-type::first-letter{float:left;font-size:3.8em;line-height:.8;margin:.05em .12em 0 0;color:var(--accent);font-weight:400}.post-content h2{font-size:1.8rem;font-weight:400;line-height:1.3;margin-top:var(--space-xl);margin-bottom:var(--space-sm);letter-spacing:-.02em;padding-top:var(--space-md);border-top:1px solid var(--border)}.post-content h3{font-size:1.35rem;font-weight:400;line-height:1.3;margin-top:var(--space-lg);margin-bottom:var(--space-xs)}.post-content h4{font-family:var(--font-sans);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-top:var(--space-md);margin-bottom:var(--space-xs);color:var(--text-secondary)}.post-content p{margin-bottom:var(--space-sm);text-align:justify;hyphens:auto}.post-content a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent-light);transition:border-color .2s ease}.post-content a:hover{border-bottom-color:var(--accent)}blockquote{margin:var(--space-lg)0;padding:var(--space-md)var(--space-lg);border-left:3px solid var(--accent);background:var(--bg-secondary);font-size:1.25rem;font-style:italic;line-height:1.55;color:var(--text-primary)}blockquote p{text-align:left}blockquote p:last-child{margin-bottom:0}blockquote strong{color:var(--accent);font-style:normal}table{width:100%;border-collapse:collapse;margin:var(--space-md)0;font-size:.95rem}th{font-family:var(--font-sans);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:var(--space-xs)var(--space-sm);border-bottom:2px solid var(--text-primary);color:var(--text-secondary)}td{padding:var(--space-xs)var(--space-sm);border-bottom:1px solid var(--border);vertical-align:top}pre,code{font-family:sf mono,monaco,inconsolata,fira code,monospace;font-size:.85em}code{padding:.15em .35em;background:var(--bg-secondary);border-radius:3px}pre{padding:var(--space-md);background:#2d2d2d;color:#e0e0e0;overflow-x:auto;border-radius:4px;margin:var(--space-md)0;line-height:1.5}pre code{padding:0;background:0 0;color:inherit;border-radius:0}.post-content ul,.post-content ol{margin:var(--space-sm)0;padding-left:var(--space-md)}.post-content li{margin-bottom:var(--space-xs)}.post-content li>strong:first-child{color:var(--accent)}hr{border:none;margin:var(--space-xl)auto;width:60px;height:1px;background:var(--border)}img{max-width:100%;height:auto;display:block;margin:var(--space-lg)0}figure{margin:var(--space-lg)0}figcaption{font-family:var(--font-sans);font-size:.8rem;color:var(--text-light);text-align:center;margin-top:var(--space-xs)}.toc{margin:0 0 var(--space-lg);padding:var(--space-md);background:var(--bg-secondary);border-radius:4px}.toc-title{font-family:var(--font-sans);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-light);margin-bottom:var(--space-sm)}.toc nav,.toc ul{list-style:none;padding-left:0;margin:0}.toc li{margin-bottom:.3em}.toc a{font-family:var(--font-sans);font-size:.85rem;color:var(--text-secondary);text-decoration:none;border-bottom:none}.toc a:hover{color:var(--accent)}.toc ul ul{padding-left:var(--space-sm)}.toc ul ul a{font-size:.8rem;color:var(--text-light)}.site-footer{margin-top:var(--space-xl);padding:var(--space-md)var(--gutter);border-top:1px solid var(--border);font-family:var(--font-sans);font-size:.7rem;color:var(--text-light);letter-spacing:.05em}@media(max-width:1024px){:root{--gutter:60px}}@media(max-width:768px){:root{--gutter:24px}html{font-size:17px}.post-title{font-size:2.2rem}.post-content>p:first-of-type::first-letter{font-size:3em}blockquote{padding:var(--space-sm)var(--space-md);font-size:1.1rem}}