*,:after,:before{margin:0;padding:0;box-sizing:border-box}:root{--bg:#0b0b0f;--border:#1f1f28;--text:#e8e6e3;--text2:#8c8b8a;--text3:#504f4e;--accent2:#7eb8ff;--pink:#ffadd6}body{font-family:Inter,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}::selection{background:rgba(255,214,165,.2);color:#fff}a{text-decoration:none}a,a:visited{color:inherit}.blog-nav{padding:0 clamp(1.5rem,5vw,4rem);height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.blog-nav a{color:var(--text);text-decoration:none;font-weight:700;font-size:.95rem;letter-spacing:-.02em;padding:.4rem .75rem;border-radius:6px;transition:all .2s ease}.blog-nav a:hover{color:var(--accent2);background:rgba(126,184,255,.08)}.blog-nav-links{display:flex;align-items:center;gap:.25rem}.blog-nav-links a{font-weight:500;font-size:.85rem;color:var(--text2)}.blog-nav-links a:hover{color:var(--accent2);background:rgba(126,184,255,.08)}.feed-container{max-width:720px;margin:0 auto;padding:4rem clamp(1.5rem,5vw,4rem) 6rem}.feed-header{margin-bottom:4rem}.feed-header h1{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.04em;margin-bottom:.5rem}.feed-header p{color:var(--text2);font-size:1rem}.feed{display:flex;flex-direction:column;gap:0}.feed-post{padding:3rem 0;border-bottom:1px solid var(--border)}.feed-post:first-child{padding-top:0}.feed-post:last-child{border-bottom:none}.feed-post-header{margin-bottom:2rem}.feed-post-meta{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text3);margin-bottom:.75rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.feed-post-meta .tags{margin-top:0}.feed-post-title{font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800;letter-spacing:-.04em;line-height:1.2;margin-bottom:.5rem}.feed-post-desc{color:var(--text2);font-size:1rem;line-height:1.6}.empty-state{color:var(--text3);font-size:.95rem;padding:2rem 0}.tags{display:flex;gap:.5rem;margin-top:.35rem;flex-wrap:wrap}.tag{font-family:JetBrains Mono,monospace;font-size:.65rem;color:var(--text3);background:var(--border);padding:.15rem .5rem;border-radius:3px;letter-spacing:.04em;text-transform:uppercase}.block-p{font-size:1rem;line-height:1.75;color:var(--text2);margin-bottom:1.25rem}.block-p a{color:var(--accent2);text-decoration:underline;text-underline-offset:2px}.block-h1{font-size:1.8rem;font-weight:700;letter-spacing:-.03em;margin:2.5rem 0 1rem}.block-h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin:2rem 0 .75rem}.block-h3{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;margin:1.5rem 0 .5rem}.block-li{font-size:1rem;line-height:1.75;color:var(--text2);margin-left:1.5rem;margin-bottom:.35rem}.block-quote{border-left:3px solid var(--border);padding:.5rem 1.25rem;font-style:italic}.block-callout,.block-quote{margin:1.5rem 0;color:var(--text2)}.block-callout{display:flex;gap:.75rem;padding:1rem 1.25rem;background:hsla(0,0%,100%,.03);border:1px solid var(--border);border-radius:6px;font-size:.95rem;line-height:1.6}.callout-icon{font-size:1.25rem;flex-shrink:0}.block-code{background:hsla(0,0%,100%,.03);border:1px solid var(--border);border-radius:6px;padding:1rem 1.25rem;margin:1.5rem 0;overflow-x:auto;font-size:.85rem;line-height:1.6;color:var(--text2)}.block-code,.inline-code{font-family:JetBrains Mono,monospace}.inline-code{font-size:.85em;background:hsla(0,0%,100%,.06);padding:.15em .4em;border-radius:3px;color:var(--pink)}.block-divider{border:none;border-top:1px solid var(--border);margin:2rem 0}.block-image{margin:2rem 0}.block-image img{max-width:100%;height:auto;border-radius:6px}.block-image figcaption{font-size:.8rem;color:var(--text3);text-align:center;margin-top:.5rem}.block-bookmark{display:block;color:var(--accent2);font-size:.9rem;word-break:break-all;margin:1rem 0}.block-toggle summary{cursor:pointer;color:var(--text);font-weight:500;margin:1rem 0 .5rem}.block-todo{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem;color:var(--text2);font-size:1rem}.block-todo input{accent-color:var(--accent2)}@media (max-width:600px){.blog-nav{padding:0 1.2rem;height:60px}.blog-nav a{font-size:.85rem;padding:.3rem .5rem}.blog-nav-links a{font-size:.75rem}.feed-container{padding:2.5rem 1.2rem 4rem}.feed-header{margin-bottom:2.5rem}.feed-header h1{font-size:1.8rem}.feed-post-title{font-size:1.3rem}.feed-post-meta{font-size:.65rem}.block-p,.feed-post-desc{font-size:.9rem}.block-h1{font-size:1.4rem}.block-h2{font-size:1.15rem}.block-h3{font-size:1rem}.block-code{font-size:.75rem;padding:.75rem 1rem}.block-callout{font-size:.85rem;padding:.75rem 1rem}}.resume-nav{padding:0 clamp(1.5rem,5vw,4rem);height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.resume-nav a{color:var(--text);text-decoration:none;font-weight:700;font-size:.95rem;letter-spacing:-.02em;padding:.4rem .75rem;border-radius:6px;transition:all .2s ease}.resume-nav a:hover{color:var(--accent2);background:rgba(126,184,255,.08)}.resume-nav-links{display:flex;align-items:center;gap:.25rem}.resume-nav-links a{font-weight:500;font-size:.85rem;color:var(--text2)}.resume-nav-links a:hover{color:var(--accent2);background:rgba(126,184,255,.08)}.resume-container{max-width:760px;margin:0 auto;padding:3rem clamp(1.5rem,5vw,4rem) 6rem}.resume-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:3rem;flex-wrap:wrap}.resume-header-info h1{font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800;letter-spacing:-.04em;margin-bottom:.35rem}.resume-header-info p{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text3);line-height:1.6}.resume-header-info p a{color:var(--text2);text-decoration:none;transition:color .15s ease}.resume-header-info p a:hover{color:var(--accent2)}.resume-download{display:inline-flex;align-items:center;gap:.5rem;font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text);background:var(--border);padding:.6rem 1.2rem;border-radius:6px;border:1px solid hsla(0,0%,100%,.06);cursor:pointer;text-decoration:none;transition:all .2s ease;flex-shrink:0}.resume-download:hover{background:rgba(126,184,255,.1);border-color:rgba(126,184,255,.2);color:var(--accent2)}.resume-section{margin-bottom:2.5rem}.resume-section-title{font-family:JetBrains Mono,monospace;font-size:.65rem;color:var(--text3);letter-spacing:.15em;text-transform:uppercase;padding-bottom:.75rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.resume-entry{margin-bottom:1.75rem}.resume-entry:last-child{margin-bottom:0}.resume-entry-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.25rem;flex-wrap:wrap}.resume-entry-title{font-size:1rem;font-weight:600;letter-spacing:-.01em}.resume-entry-title a{color:var(--text);text-decoration:none;transition:color .15s ease}.resume-entry-title a:hover{color:var(--accent2)}.resume-entry-sub{font-size:.85rem;color:var(--text2);margin-bottom:.15rem}.resume-entry-date{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text3);white-space:nowrap;flex-shrink:0}.resume-entry-detail{font-size:.85rem;color:var(--text2);line-height:1.7;margin-top:.5rem}.resume-entry-detail span{color:var(--text3);margin-right:.4rem}.resume-entry-tag{display:inline-block;font-family:JetBrains Mono,monospace;font-size:.6rem;color:var(--text3);background:var(--border);padding:.1rem .45rem;border-radius:3px;letter-spacing:.03em;margin-right:.25rem;margin-top:.5rem}.resume-skills{display:flex;flex-direction:column;gap:.75rem}.resume-skill-row{display:flex;gap:.75rem;align-items:baseline;font-size:.85rem}.resume-skill-label{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text3);min-width:100px;flex-shrink:0}.resume-skill-value{color:var(--text2);line-height:1.6}.resume-honors-list{display:flex;flex-direction:column;gap:.6rem}.resume-honor{font-size:.85rem;color:var(--text2);line-height:1.6}.resume-honor strong{color:var(--text);font-weight:500}@media (max-width:600px){.resume-nav{padding:0 1.2rem;height:60px}.resume-nav a{font-size:.85rem;padding:.3rem .5rem}.resume-nav-links a{font-size:.75rem}.resume-container{padding:2rem 1.2rem 4rem}.resume-header{flex-direction:column}.resume-header-info h1{font-size:1.4rem}.resume-header-info p{font-size:.65rem}.resume-download{font-size:.65rem;padding:.5rem 1rem}.resume-entry-header{flex-direction:column;gap:.15rem}.resume-entry-title{font-size:.9rem}.resume-entry-detail,.resume-entry-sub{font-size:.8rem}.resume-entry-date{font-size:.6rem}.resume-skill-row{flex-direction:column;gap:.15rem}.resume-skill-label{min-width:unset;font-size:.6rem}.resume-honor,.resume-skill-value{font-size:.8rem}}@media print{.resume-download,.resume-nav{display:none}body{background:#fff;color:#111}.resume-container{padding:0;max-width:100%}.resume-section-title{color:#666;border-color:#ddd}.resume-entry-title,.resume-entry-title a{color:#111}.resume-entry-detail,.resume-entry-sub,.resume-honor,.resume-skill-value{color:#333}.resume-entry-date,.resume-header-info p,.resume-skill-label{color:#666}.resume-entry-tag{color:#555;background:#eee}}