:root{--max-width:720px;--text:#1d1d1f;--muted:#6e6e73;--link:#0a66c2;--bg:#fbfbfd;--rule:#e6e6e9;--thumb-bg:#f1f1f4}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,sans-serif;font-size:17px;line-height:1.65;color:var(--text);background:var(--bg);margin:0}.wrap{max-width:var(--max-width);margin:0 auto;padding:3rem 1.25rem 5rem}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.site-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:2.75rem}.site-header .name{font-family:"source serif 4",Georgia,serif;font-size:1.35rem;font-weight:600;color:var(--text)}.site-header .name:hover{text-decoration:none}.site-nav{display:flex;gap:1.25rem;font-size:.95rem}.site-nav a{color:var(--muted)}.site-nav a.active{color:var(--text);font-weight:600}h1{font-size:1.6rem;margin:0 0 1rem;letter-spacing:-.01em}h2{font-size:1.2rem;margin:3rem 0 1.25rem;padding-bottom:.4rem;border-bottom:1px solid var(--rule)}.intro{display:flex;gap:1.85rem;align-items:flex-start}.intro__text{flex:auto;min-width:0}.intro__photo{flex:0 0 150px;width:150px;height:150px;object-fit:cover;border-radius:12px;border:1px solid var(--rule)}.bio p{margin:0 0 1rem}.bio ul{padding-left:1.1rem}@media(max-width:620px){.intro{flex-direction:column-reverse;gap:1.1rem}.intro__photo{width:130px;height:130px}}.news{list-style:none;padding:0;margin:0}.news li{display:flex;gap:1rem;padding:.4rem 0}.news .date{flex:0 0 5.5rem;color:var(--muted);font-size:.9rem;font-variant-numeric:tabular-nums}@media(max-width:620px){.news li{flex-direction:column;gap:0}.news .date{flex-basis:auto}}.pub{display:flex;gap:1.5rem;align-items:flex-start;padding:1.4rem 0;border-bottom:1px solid var(--rule)}.pub:last-child{border-bottom:none}.pub__thumb{flex:0 0 170px;width:170px}.pub__thumb img{width:100%;height:auto;display:block;border-radius:8px;background:var(--thumb-bg);border:1px solid var(--rule)}.pub__body{flex:auto;min-width:0}.pub__title{font-weight:600;margin:0 0 .25rem}.pub__authors{margin:0 0 .15rem}.pub__venue{color:var(--muted);font-size:.92rem;margin:0 0 .45rem}.pub__links{font-size:.9rem;margin:0}.pub__links a{margin-right:.7rem}@media(max-width:620px){.pub{flex-direction:column;gap:.85rem}.pub__thumb{width:100%;flex-basis:auto}}.posts{list-style:none;padding:0;margin:1.5rem 0 0}.posts li{display:flex;gap:1.25rem;align-items:baseline;padding:.6rem 0;border-bottom:1px solid var(--rule)}.posts li:last-child{border-bottom:none}.posts .date{flex:0 0 6.5rem;color:var(--muted);font-size:.9rem;font-variant-numeric:tabular-nums}.prose h1{margin-bottom:.3rem}.post-meta{color:var(--muted);margin:0 0 2rem}.prose p{margin:0 0 1.15rem}.prose h2{border:none;padding:0;margin:2rem 0 .75rem}.prose img{max-width:100%;height:auto;border-radius:8px}.prose blockquote{margin:1.3rem 0;padding-left:1rem;border-left:3px solid var(--rule);color:var(--muted)}.prose pre{background:var(--thumb-bg);padding:1rem;border-radius:8px;overflow-x:auto;font-size:.9rem}.prose code{font-size:.9em}.back{margin-top:2.5rem}@media(max-width:620px){.posts li{flex-direction:column;gap:0}.posts .date{flex-basis:auto}}.site-footer{margin-top:4rem;padding-top:1.25rem;border-top:1px solid var(--rule);color:var(--muted);font-size:.9rem}