:root{--ink:#494e52;--muted:#737b80;--blue:#347e99;--line:#edf0f2;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',Arial,sans-serif;--body:Georgia,'Times New Roman','Songti SC',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:26px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65}a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}a:hover{color:#205971}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button{font-family:var(--sans);cursor:pointer;color:var(--ink)}.masthead{border-bottom:1px solid var(--line);font-family:var(--sans);background:#fff}.masthead-inner{max-width:1280px;padding:23px 34px;display:flex;align-items:center;gap:34px;margin:0 auto;min-height:73px}.site-title{font-size:16px;font-weight:700;color:#5c6367;text-decoration:none;white-space:nowrap;margin-right:16px}.site-title span{font-weight:600;font-size:14px}.desktop-nav{display:flex;align-items:center;gap:32px;font-size:14px}.desktop-nav a,.mobile-nav a{color:#6d7378;text-decoration:none;position:relative}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:#343a3e}.desktop-nav a[aria-current=page]:after{content:'';position:absolute;left:0;right:0;bottom:-25px;height:2px;background:#7b939d}#language-toggle{border:0;background:transparent;color:#737b80;margin-left:auto;font-size:12px;padding:4px 6px}#menu-toggle{display:none;border:0;background:transparent;font-size:20px;padding:0 4px}.mobile-nav{padding:0 24px 18px;font-size:14px;gap:20px;flex-wrap:wrap}.mobile-nav:not([hidden]){display:flex}.page-layout{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:200px minmax(0,1fr);gap:55px;padding:38px 34px 70px;min-height:calc(100vh - 151px);align-items:start}.sidebar{font-family:var(--sans);font-size:13px;position:sticky;top:30px}.portrait-link{display:block;width:178px;margin:0 0 18px}.portrait{display:block;width:178px;height:178px;object-fit:cover;object-position:50% 33%;border-radius:50%;padding:4px;border:1px solid #eff0ee;background:#fff}.sidebar h2{font-family:var(--sans);font-size:20px;line-height:1.5;margin:0 0 7px;font-weight:700;letter-spacing:-.25px}.sidebar h2 span{display:block;font-size:16px;font-weight:400;letter-spacing:2px;color:#6b7378;margin-top:2px}.profile-role{font-size:12px;margin:0 0 9px;color:#5c6267}.profile-interests{font-size:12px;line-height:1.8;color:#697278;margin:0 0 20px;max-width:180px}.profile-links{margin:0;padding:0;list-style:none;font-size:12px}.profile-links li{display:flex;align-items:center;gap:9px;line-height:1.6;margin:0 0 12px}.profile-links svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.profile-links a{color:var(--ink);text-decoration:none}.profile-links a:hover{color:var(--blue);text-decoration:underline}.page-content{min-width:0;padding-top:0;max-width:930px}h1,h2,h3{color:#43494d;line-height:1.3}h1{font-size:29px;letter-spacing:-.4px;margin:0 0 16px;font-weight:700}h2{font-size:25px;margin:33px 0 16px;padding-bottom:7px;border-bottom:1px solid var(--line)}h3{font-size:19px;margin:0 0 6px}p{margin:0 0 18px}strong{font-weight:700}ul{padding-left:24px;margin:0 0 20px}li{padding-left:2px;margin-bottom:10px}.inline-contact{font-size:16px}.research-list li{margin-bottom:12px}.news-list{font-size:16px}.news-list li{margin-bottom:11px}.page-intro{color:var(--muted);font-size:15px;margin-bottom:24px}.dated-entry{display:grid;grid-template-columns:157px minmax(0,1fr);gap:20px;padding:9px 0 23px}.entry-date{font-family:var(--sans);font-size:12px;color:var(--muted);padding-top:3px}.dated-entry h3{font-size:17px;font-weight:600;margin:0 0 4px}.dated-entry h3 a{color:var(--ink);text-decoration:none}.dated-entry h3 a:hover{color:var(--blue)}.dated-entry p{font-size:15px;margin:0 0 4px}.dated-entry .entry-detail{font-size:14px;color:var(--muted)}.publication-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:16px;font-family:var(--sans)}.filters{display:flex;gap:5px}.filter{background:transparent;border:1px solid transparent;border-radius:3px;padding:5px 11px;font-size:12px;color:#6b7479}.filter:hover{border-color:#c9d8df}.filter.active{background:#e9f2f6;border-color:#c7dce5;color:#2e708a}.publication-toolbar>span{font-size:11px;color:var(--muted)}h2.year-heading{font-size:22px;margin:24px 0 7px;padding-bottom:8px}.publication{padding:18px 0 23px;border-bottom:1px solid var(--line)}.publication[hidden]{display:none}.publication h3{font-size:20px;line-height:1.45;margin:0 0 8px;font-weight:700;max-width:880px}.authors{font-size:15px;margin:0 0 4px;line-height:1.7}.venue{font-size:14px;font-style:italic;margin:0 0 8px;color:#6b7479}.venue strong{font-style:normal;color:#535b60;font-family:var(--sans);font-size:12px}.pub-summary{font-size:15px;color:var(--muted);margin:0 0 8px}.publication-links{display:flex;align-items:center;gap:15px;font-family:var(--sans);font-size:12px}.publication-links a,.publication-links button{font-size:12px;color:var(--blue);padding:0;border:0;background:transparent;text-decoration:underline;text-underline-offset:3px}.project-entry h2{font-size:23px;margin-bottom:7px}.project-entry p{font-size:16px;margin-bottom:12px}.project-entry .entry-meta{font-size:12px;font-family:var(--sans);color:var(--muted);margin-bottom:11px}.project-link{font-size:13px!important}.small-button{font-size:11px;border:1px solid #d7dfe3;background:#f7f9fa;padding:5px 10px;border-radius:3px;color:#57656c;margin-left:8px;vertical-align:middle}.small-button:hover{background:#eaf3f7}.site-footer{background:#f3f4f4;border-top:1px solid #e6e8e9;font-family:var(--sans);font-size:11px;color:#778086}.site-footer>div{max-width:1280px;padding:23px 34px;margin:auto;display:flex;gap:7px;align-items:center}.site-footer a{margin-left:auto;color:#67757d;text-decoration:none}.skip-link{position:fixed;top:-60px;left:15px;padding:10px;background:#fff;border:1px solid var(--blue);z-index:50;font-family:var(--sans);font-size:13px}.skip-link:focus{top:10px}dialog{border:1px solid #cedbe1;border-radius:5px;background:#fff;color:var(--ink);width:calc(100% - 32px);max-width:720px;padding:25px;box-shadow:0 15px 70px #28363d3d}dialog::backdrop{background:#28363d77}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:23px;border:0;margin:0;padding:0}.close-dialog{border:0;background:transparent;font-size:28px;padding:0 5px;line-height:1}dialog pre{background:#f3f6f7;padding:18px;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}dialog .small-button{margin-left:0}#citation-status{font-family:var(--sans);font-size:12px;color:var(--blue);min-height:1.6em}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#3b4c56;color:white;padding:10px 18px;font:12px var(--sans);opacity:0;pointer-events:none;transition:opacity .2s;z-index:50;border-radius:3px;max-width:90vw}.toast.visible{opacity:1}body:has(dialog[open]){overflow:hidden}html[lang=zh-Hans] .page-content{font-family:'Songti SC','SimSun',var(--body);line-height:1.9}html[lang=zh-Hans] h1,html[lang=zh-Hans] h2{line-height:1.5}html[lang=zh-Hans] .entry-date{font-family:var(--sans)}
@media(min-width:1450px){.page-layout{grid-template-columns:220px minmax(0,1fr);gap:70px}}
@media(max-width:1000px){.masthead-inner{gap:24px;padding:21px 26px}.desktop-nav{gap:22px}.page-layout{padding:33px 26px 60px;grid-template-columns:180px minmax(0,1fr);gap:32px}.portrait,.portrait-link{width:160px}.portrait{height:160px}.site-title{font-size:15px;margin-right:0}.dated-entry{grid-template-columns:125px minmax(0,1fr);gap:18px}.entry-date{font-size:11px}.site-footer>div{padding-left:26px;padding-right:26px}}
@media(max-width:760px){body{font-size:16px}.masthead-inner{padding:17px 22px;min-height:64px;gap:15px}.desktop-nav{display:none}#menu-toggle{display:block}.site-title{font-size:15px}.site-title span{font-size:13px}.page-layout{display:block;padding:24px 22px 46px}.sidebar{position:static;display:grid;grid-template-columns:95px 1fr;column-gap:20px;row-gap:0;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:27px;align-items:center}.portrait-link{width:95px;grid-row:1/3;margin:0}.portrait{width:95px;height:95px;padding:3px}.sidebar h2{font-size:20px;line-height:1.35}.sidebar h2 span{display:inline-block;font-size:14px;letter-spacing:1px;margin-left:8px;margin-top:0}.profile-role{font-size:12px;margin-bottom:4px}.profile-interests{max-width:none;font-size:11px;margin:0}.profile-links{grid-column:2;display:flex;gap:15px;flex-wrap:wrap;font-size:11px;margin-top:9px}.profile-links li{margin:0;gap:5px}.profile-links li:first-child{display:none}.profile-links svg{width:12px;height:12px}h1{font-size:27px}h2{font-size:23px;margin-top:29px}.page-content{max-width:none}.dated-entry{grid-template-columns:140px 1fr;gap:15px}.publication h3{font-size:19px}.publication{padding-bottom:21px}.project-entry h2{font-size:22px}.site-footer>div{padding:20px 22px;font-size:10px;flex-wrap:wrap}.site-footer a{margin-left:auto}html[lang=zh-Hans] .sidebar h2 span{display:none}}
@media(max-width:440px){.masthead-inner{padding:16px 18px;gap:10px}.site-title{font-size:14px}.site-title span{font-size:12px}.page-layout{padding:22px 18px 40px}.sidebar{grid-template-columns:83px 1fr;gap:0 16px}.portrait-link,.portrait{width:83px}.portrait{height:83px}.sidebar h2{font-size:18px}.sidebar h2 span{font-size:13px;margin-left:5px}.profile-links{font-size:10px;gap:12px;margin-top:8px}.profile-interests{font-size:10px}.profile-links svg{display:none}.profile-links li{gap:0}.profile-role{font-size:11px}.dated-entry{grid-template-columns:1fr;gap:5px;padding-top:4px}.entry-date{font-size:11px}.dated-entry h3{font-size:17px}.authors{font-size:14px}.pub-summary{font-size:14px}.publication h3{font-size:19px}.publication-toolbar{gap:10px}.filter{font-size:11px;padding:5px 9px}.publication-toolbar>span{font-size:10px}.site-footer>div{padding-left:18px;padding-right:18px}.project-entry p{font-size:15px}.mobile-nav{font-size:13px;gap:20px;padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
