*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}:root{--bg:#0a0a0a;--bg-surface:#111111;--text:#b8b8b8;--text-muted:#555555;--text-faint:#333333;--accent:#6b7b6b;--accent-hover:#8a9a8a;--font-body:'Newsreader', Georgia, 'Times New Roman', serif;--font-ui:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;--font-mono:'JetBrains Mono', 'Fira Code', monospace;--max-width:680px;--transition:0.4s cubic-bezier(0.25, 0.1, 0.25, 1)}::selection{background:var(--accent);color:var(--bg)}html{font-size:17px;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.85;font-weight:300;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;animation:fadeIn 1s ease forwards}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem;min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent-hover);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--text)}.site-header{padding:3rem 0 2rem;animation:slideDown .8s ease forwards}@keyframes slideDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.site-header nav{display:flex;justify-content:space-between;align-items:center}.site-name{font-family:var(--font-ui);font-size:.85rem;font-weight:400;letter-spacing:.08em;text-transform:lowercase;color:var(--text-muted)}.site-name:hover{color:var(--text)}.nav-links{display:flex;gap:2rem}.nav-links a{font-family:var(--font-ui);font-size:.8rem;font-weight:300;letter-spacing:.05em;color:var(--text-muted);transition:color var(--transition)}.nav-links a:hover{color:var(--text)}.content{flex:1}.home{padding:4rem 0 2rem}.home-intro{margin-bottom:4rem;animation:fadeUp 1s ease .2s forwards;opacity:0}@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.home-title{font-family:var(--font-body);font-size:2.4rem;font-weight:300;color:var(--text);letter-spacing:-.02em;margin-bottom:.8rem}.home-subtitle{font-family:var(--font-body);font-size:1.05rem;font-weight:300;color:var(--text-muted);line-height:1.7;font-style:italic}.posts-list{animation:fadeUp 1s ease .4s forwards;opacity:0}.post-item{display:flex;align-items:baseline;gap:1.5rem;padding:.9rem 0;border-bottom:1px solid var(--text-faint);transition:padding-left var(--transition)}.post-item:hover{padding-left:.5rem}.post-item time{font-family:var(--font-mono);font-size:.72rem;font-weight:300;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.post-item a{font-family:var(--font-body);font-size:1rem;font-weight:400;color:var(--text);transition:color var(--transition)}.post-item a:hover{color:var(--accent-hover)}.list-page{padding:3rem 0 2rem}.list-title{font-family:var(--font-ui);font-size:.85rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2.5rem}.post{padding:3rem 0 2rem;animation:fadeUp .8s ease forwards;opacity:0;animation-delay:.1s}.post-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--text-faint)}.post-title{font-family:var(--font-body);font-size:1.9rem;font-weight:300;color:var(--text);letter-spacing:-.01em;line-height:1.3;margin-bottom:1rem}.post-meta{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.post-meta time{font-family:var(--font-mono);font-size:.75rem;font-weight:300;color:var(--text-muted)}.post-tags{display:flex;gap:.5rem;flex-wrap:wrap}.tag{font-family:var(--font-ui);font-size:.68rem;font-weight:300;letter-spacing:.04em;color:var(--accent);padding:.15rem .6rem;border:1px solid var(--text-faint);border-radius:2px;transition:all var(--transition)}.tag:hover{border-color:var(--accent);color:var(--accent-hover)}.post-content{animation:fadeUp .8s ease .3s forwards;opacity:0}.post-content h1,.post-content h2,.post-content h3,.post-content h4{font-family:var(--font-body);font-weight:400;color:var(--text);margin-top:2.8rem;margin-bottom:1rem;line-height:1.3}.post-content h1{font-size:1.6rem}.post-content h2{font-size:1.3rem}.post-content h3{font-size:1.1rem}.post-content h4{font-size:1rem}.post-content p{margin-bottom:1.4rem}.post-content strong{font-weight:400;color:var(--text)}.post-content em{font-style:italic}.post-content blockquote{border-left:2px solid var(--text-faint);padding-left:1.5rem;margin:2rem 0;color:var(--text-muted);font-style:italic}.post-content ul,.post-content ol{margin-bottom:1.4rem;padding-left:1.5rem}.post-content li{margin-bottom:.4rem}.post-content img{max-width:100%;height:auto;border-radius:2px;margin:2rem 0;filter:brightness(.9)}.post-content a{color:var(--accent-hover);border-bottom:1px solid var(--text-faint);transition:border-color var(--transition)}.post-content a:hover{border-color:var(--accent-hover)}.post-content code{font-family:var(--font-mono);font-size:.82rem;font-weight:300;background:var(--bg-surface);padding:.15rem .4rem;border-radius:2px;color:var(--accent-hover)}.post-content pre{background:var(--bg-surface);padding:1.5rem;border-radius:3px;overflow-x:auto;margin:2rem 0;border:1px solid var(--text-faint)}.post-content pre code{background:0 0;padding:0;font-size:.8rem;line-height:1.7;color:var(--text)}.post-content hr{border:none;border-top:1px solid var(--text-faint);margin:3rem 0}.post-content table{width:100%;border-collapse:collapse;margin:2rem 0}.post-content th,.post-content td{font-family:var(--font-ui);font-size:.82rem;font-weight:300;padding:.6rem 1rem;text-align:left;border-bottom:1px solid var(--text-faint)}.post-content th{color:var(--text-muted);font-weight:400}.post-nav{display:flex;justify-content:space-between;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--text-faint)}.post-nav a{font-family:var(--font-ui);font-size:.78rem;font-weight:300;color:var(--text-muted);transition:color var(--transition)}.post-nav a:hover{color:var(--text)}.site-footer{padding:3rem 0;text-align:center}.site-footer p{font-family:var(--font-ui);font-size:.7rem;font-weight:300;letter-spacing:.05em;color:var(--text-faint)}@media(max-width:600px){html{font-size:16px}.container{padding:0 1.5rem}.site-header{padding:2rem 0 1.5rem}.home{padding:2.5rem 0 1.5rem}.home-intro{margin-bottom:2.5rem}.home-title{font-size:1.8rem}.post-item{flex-direction:column;gap:.3rem}.post-title{font-size:1.5rem}.nav-links{gap:1.2rem}}