*{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:dark;--bg:#0a0a0a;--bg-alt:#0f0f0f;--text:#e0e0e0;--text-muted:silver;--accent:#aaa;--accent-hover:#d0d0d0;--border:#1a1a1a;--code-bg:#0d0d0d}body{background-color:var(--bg);color:var(--text);font-family:Fira Code,monospace;font-size:1rem;line-height:1.7}a{color:var(--text);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}.hero,.stats,.about,.projects,.blogs{opacity:0;animation:.8s cubic-bezier(.2,.8,.2,1) forwards fadeSlideUp;transform:translateY(20px)}.hero{animation-delay:.1s}.stats{animation-delay:.15s}.about{animation-delay:.4s}.projects{animation-delay:.5s}.blogs{animation-delay:.6s}@keyframes fadeSlideUp{to{opacity:1;transform:translateY(0)}}nav{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 3rem;font-family:Fira Code,monospace;display:flex}.nav-brand{letter-spacing:2px;flex-shrink:0;font-size:.95rem;font-weight:600}.nav-brand a{color:var(--text)}.nav-links{flex:1;justify-content:center;gap:2rem;list-style:none;display:flex}.nav-links a{color:var(--text-muted);font-size:.85rem;transition:color .2s}.nav-links a:hover{color:var(--accent-hover)}.nav-social{flex-shrink:0;gap:1.2rem;display:flex}.nav-social a{align-items:center;font-size:1rem;transition:opacity .2s;display:inline-flex}.nav-social a:hover{opacity:.75}.nav-social .fab,.nav-social .fas{font-size:1.2rem}.nav-back{color:var(--text-muted);font-size:.85rem;transition:color .2s}.nav-back:hover{color:var(--accent-hover)}.hero{max-width:800px;margin:0 auto;padding:2rem 3rem 1.5rem}.hero-inner{align-items:center;gap:1.5rem;display:flex}.hero-pfp{object-fit:cover;border-radius:50%;flex-shrink:0;width:72px;height:72px}.hero-body{text-align:left}.hero-name{letter-spacing:-1.5px;margin-bottom:.3rem;font-size:2.8rem;font-weight:700;line-height:1.1}.hero-social{flex-wrap:wrap;gap:1.5rem;display:flex}.hero-social a{align-items:center;gap:.4rem;font-size:.85rem;text-decoration:none;transition:opacity .2s;display:inline-flex}.hero-social a:hover{opacity:.75}.hero-social a span{text-underline-offset:3px;text-decoration:underline}.hero-social .fab,.hero-social .fas{font-size:.95rem}.section-title{margin-bottom:1rem;font-size:1.5rem;font-weight:600}.stats{border-top:none;max-width:800px;margin:0 auto;padding:0 3rem 2rem}.github-section{width:100%;margin-top:1rem}.github-link-wrapper{opacity:.7;flex-direction:column;justify-content:center;align-items:center;width:100%;text-decoration:none;transition:opacity .2s;display:flex}.github-link-wrapper:hover{opacity:1}.github-chart-wide{object-fit:contain;filter:invert()hue-rotate(180deg);width:100%;max-width:800px;height:auto;min-height:40px;margin-bottom:.5rem}.about{border-top:1px solid var(--border);max-width:800px;margin:0 auto;padding:2.5rem 3rem}.about-content{margin-bottom:0}.about-text{color:var(--text-muted);max-width:700px;margin-bottom:.5rem;font-size:.95rem;line-height:1.7}.projects{border-top:1px solid var(--border);max-width:800px;margin:0 auto;padding:2.5rem 3rem}.project-list{flex-direction:column;gap:1.2rem;list-style:none;display:flex}.project-item{border-bottom:1px solid var(--border);padding-bottom:1.2rem}.project-item:last-child{border-bottom:none;padding-bottom:0}.project-meta-row{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.3rem;display:flex}.project-date{color:var(--text-muted);white-space:nowrap;font-family:Fira Code,monospace;font-size:.8rem}.project-title{font-family:Fira Code,monospace;font-size:1.05rem;font-weight:600}.project-title a{color:var(--text);text-underline-offset:3px;text-decoration:underline}.project-title a:hover{color:var(--accent-hover)}.project-desc{color:var(--text-muted);margin-bottom:.5rem;font-size:.88rem;line-height:1.6}.project-desc a{color:var(--text-muted);text-underline-offset:3px;align-items:center;gap:.3rem;text-decoration:underline;display:inline-flex}.project-desc a i{text-decoration:none}.project-desc a:hover{color:var(--accent-hover)}.section-footer{margin-top:.8rem;font-family:Fira Code,monospace;font-size:.85rem}.section-footer a{color:var(--text-muted);text-underline-offset:3px;text-decoration:underline}.section-footer a:hover{color:var(--accent-hover)}.project-tags{flex-wrap:wrap;gap:.4rem;display:flex}.tag{color:var(--accent);border:1px solid var(--border);background-color:#8888880d;border-radius:2px;padding:.2rem .4rem;font-family:Fira Code,monospace;font-size:.7rem;transition:all .2s}.tag-deprecated{text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:#f44!important;background-color:#ff44441a!important;border-color:#f44!important;border-radius:4px!important;padding:.1rem .4rem!important;font-size:.6rem!important}.blogs{border-top:1px solid var(--border);max-width:800px;margin:0 auto;padding:2.5rem 3rem}.blog-list{flex-direction:column;gap:1rem;list-style:none;display:flex}.blog-item{border-bottom:1px solid var(--border);padding-bottom:1rem}.blog-item:last-child{border-bottom:none;padding-bottom:0}.blog-meta-row{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.3rem;display:flex}.blog-title{font-family:Fira Code,monospace;font-size:.95rem;font-weight:600}.blog-title a{color:var(--text);text-underline-offset:3px;text-decoration:underline}.blog-title a:hover{color:var(--accent-hover)}.blog-date{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;font-family:Fira Code,monospace;font-size:.75rem}.blog-desc{color:var(--text-muted);font-size:.88rem;line-height:1.6}.webring{text-align:center;border-top:1px solid var(--border);max-width:720px;margin:0 auto;padding:2rem 3rem 1rem}.webring h2{color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:.8rem;font-size:.8rem;font-weight:400}.webring-row{justify-content:center;align-items:center;gap:1.2rem;display:flex}.webring-row a{color:var(--text-muted);font-size:1.1rem;line-height:1;transition:color .2s}.webring-row a:hover{color:var(--accent-hover)}.webring-row img{width:88px;height:31px;image-rendering:pixelated;opacity:.8;transition:opacity .2s;display:block}.webring-row a:hover img{opacity:1}footer{text-align:center;border-top:1px solid var(--border);color:var(--text-muted);padding:1.5rem 3rem;font-size:.8rem}.footer-text{letter-spacing:.5px;font-family:Fira Code,monospace}@media (width<=768px){nav{flex-direction:column;gap:.6rem;padding:.8rem 1.2rem}.nav-links{justify-content:center;gap:.8rem}.nav-social{gap:.6rem}.hero{padding:1.5rem 1.2rem 1rem}.hero-name{font-size:2.2rem}.hero-pfp{width:64px;height:64px}.about,.projects,.blogs,.stats{padding:2rem 1.2rem}}.md-content{max-width:700px;margin:0 auto;padding:3rem 1.5rem;font-family:Fira Code,monospace}.md-content h1{letter-spacing:-.5px;color:var(--text);margin-bottom:1.5rem;font-size:2.2rem;font-weight:700;line-height:1.25}.md-content h2{letter-spacing:-.3px;color:var(--text);border-bottom:1px solid var(--border);margin-top:2.5rem;margin-bottom:1rem;padding-bottom:.4rem;font-size:1.45rem;font-weight:600}.md-content h3{color:var(--text);margin-top:1.8rem;margin-bottom:.8rem;font-size:1.15rem;font-weight:600}.md-content p{color:#b0b0b0;margin-bottom:1.25rem;font-size:.96rem;line-height:1.8}.md-content strong{color:var(--text);font-weight:600}.md-content ul,.md-content ol{margin-bottom:1.25rem;margin-left:1.5rem}.md-content li{color:#b0b0b0;margin-bottom:.5rem;font-size:.96rem;line-height:1.7}.md-content a{color:var(--text);text-underline-offset:4px;text-decoration:underline 1px}.md-content a:hover{color:var(--accent-hover)}.md-content img{border:1px solid var(--border);border-radius:6px;width:100%;margin:2rem 0 .5rem}.md-content img+em,.md-content img+p em{color:#888;text-align:center;margin-top:.5rem;margin-bottom:1.5rem;font-size:.85rem;display:block}.md-content pre{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:6px;margin:1.5rem 0;padding:1.25rem 1.25rem 1.25rem 1rem;position:relative;overflow-x:auto;background:#121212!important}.md-content pre .copy-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border-radius:4px;padding:.25rem .5rem;font-family:Fira Code,monospace;font-size:.7rem;line-height:1;transition:opacity .2s,color .2s,border-color .2s;position:absolute;top:.5rem;right:.5rem}.md-content pre:hover .copy-btn{opacity:1}.md-content pre .copy-btn:hover{color:var(--accent-hover);border-color:var(--accent-hover)}.md-content pre .copy-btn.copied{color:#2ea043;border-color:#2ea043}.md-content code{color:#e0e0e0;background:#0d0d0d;border:1px solid #ffffff0d;border-radius:4px;padding:.2rem .4rem;font-family:Fira Code,monospace;font-size:.85rem}.md-content pre code{background:0 0;border:none;border-radius:0;padding:0}.md-content hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}.md-content blockquote{border-left:3px solid var(--accent);margin:1.5rem 0;padding:.2rem 0 .2rem 1.2rem;font-style:italic}.md-content blockquote p{color:#888;margin-bottom:0}.md-content table{border-collapse:collapse;width:100%;margin:2rem 0;font-family:Fira Code,monospace}.md-content th,.md-content td{border:1px solid var(--border);text-align:left;padding:.6rem .8rem;font-size:.82rem}.md-content th{color:var(--text);background:#0e0e0e;font-weight:600}.md-content td{color:#a0a0a0}.md-content .note{border:1px solid var(--border);border-left:3px solid var(--accent);background:#0e0e0e;border-radius:4px;margin:2rem 0;padding:1.2rem}.md-content .note p{color:#a0a0a0;margin-bottom:0}.math-inline{font-family:inherit;display:inline}.math-block{text-align:center;margin:1.8rem 0;display:block;overflow-x:auto}
