:root{--bg: #ffffff;--text: #24292f;--heading: #1a1a1a;--muted: #656d76;--line: #d1d9e0;--accent: #0969da;--accent-hover: #0550ae;--maxw: 720px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}p{margin:0 0 1rem}ul,ol{padding-left:1.5rem;margin:0 0 1rem}li+li{margin-top:.25rem}strong{color:var(--heading)}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:#f6f8fa;padding:.15em .4em;border-radius:4px}pre{overflow-x:auto;padding:1rem;background:#f6f8fa;border-radius:6px;margin:0 0 1rem}pre code{background:none;padding:0}hr{border:0;border-top:1px solid var(--line);margin:2rem 0}table{width:100%;border-collapse:collapse;margin:0 0 1rem}th,td{padding:.5rem .75rem;border-bottom:1px solid var(--line);text-align:left}th{font-weight:600}blockquote{margin:0 0 1rem;padding:.5rem 1rem;border-left:3px solid var(--line);color:var(--muted)}h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;color:var(--heading);line-height:1.3;font-weight:600}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1rem}small,.muted{color:var(--muted)}.shell{width:min(100% - 2rem,var(--maxw));margin:0 auto}.site-header{border-bottom:1px solid var(--line)}.site-header-inner{width:min(100% - 2rem,var(--maxw));margin:0 auto;height:56px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-brand{font-weight:600;color:var(--heading);font-size:1rem}.site-brand:hover{color:var(--heading);text-decoration:none}.header-right{display:flex;align-items:center;gap:1.25rem;font-size:.9rem}.header-right a{color:var(--muted)}.header-right a:hover{color:var(--accent);text-decoration:none}.header-right a.is-active{color:var(--heading);font-weight:600}.lang-sep{color:var(--line)}.main-panel{width:min(100% - 2rem,var(--maxw));margin:0 auto;padding:2.5rem 0 4rem}.profile-name{font-size:1.75rem;font-weight:700;margin-bottom:.75rem}.profile-bio{margin-bottom:1.5rem}.profile-bio p:last-child{margin-bottom:0}.profile-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.9rem;color:var(--muted);margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}.profile-meta a{color:var(--accent)}.section{margin-bottom:2.5rem}.section:last-child{margin-bottom:0}.section-heading{font-size:1.1rem;font-weight:600;color:var(--heading);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--line)}.keywords{display:flex;flex-wrap:wrap;gap:.4rem}.keyword{display:inline-block;padding:.2rem .6rem;background:#f6f8fa;border-radius:999px;font-size:.85rem;color:var(--text)}.simple-list{list-style:none;padding:0;margin:0}.simple-list li{padding:.4rem 0}.simple-list li+li{margin-top:0}.simple-list .label{display:block}.simple-list .meta{font-size:.85rem;color:var(--muted)}.pub-list{list-style:none;padding:0;margin:0}.pub-item{padding:.75rem 0}.pub-item+.pub-item{border-top:1px solid #eee}.pub-title{font-weight:600;margin-bottom:.2rem}.pub-authors{font-size:.9rem;color:var(--muted);margin-bottom:.15rem}.pub-venue{font-size:.9rem;color:var(--muted);margin-bottom:.3rem}.pub-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.85rem}.pub-meta .date{color:var(--muted)}.pub-meta .badge{background:#ddf4ff;color:#0969da;padding:.1rem .45rem;border-radius:999px;font-size:.8rem}.pub-links{display:inline-flex;gap:.75rem;margin-left:.5rem}.pub-links a{font-size:.85rem;font-weight:500}.talk-list{list-style:none;padding:0;margin:0}.talk-item{padding:.5rem 0;font-size:.95rem}.talk-item+.talk-item{border-top:1px solid #f0f0f0}.talk-title{font-weight:500}.talk-detail{font-size:.85rem;color:var(--muted);margin-top:.1rem}.article-shell{width:min(100% - 2rem,var(--maxw));margin:0 auto;padding:2.5rem 0 4rem}.article-header{margin-bottom:2rem}.article-title{font-size:1.5rem;margin-bottom:.5rem}.article-meta{color:var(--muted);font-size:.9rem}.article-content h2,.article-content h3,.article-content h4{margin-top:2rem}.article-content a{word-break:break-word}.article-content .katex-display{overflow-x:auto;overflow-y:hidden;padding:.2rem 0}.article-content .footnotes{margin-top:2rem;color:var(--muted);font-size:.9rem}.blog-list{list-style:none;padding:0;margin:0}.blog-list li{padding:.75rem 0}.blog-list li+li{border-top:1px solid var(--line)}.blog-list a{color:var(--heading);font-weight:500}.blog-list .desc{font-size:.9rem;color:var(--muted);margin-top:.15rem}.blog-list .date{font-size:.85rem;color:var(--muted)}.footer{width:min(100% - 2rem,var(--maxw));margin:0 auto;padding:1.5rem 0 2rem;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:640px){.main-panel{padding-top:1.5rem}.profile-meta{flex-direction:column;gap:.3rem}}
