:root{--navy:#142b43;--navy-light:#1b3854;--ink:#203249;--body:#516073;--accent:#9b3f47;--line:#e3e8ee;--soft:#f4f7fa;--sidebar:300px;color:var(--body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,PingFang SC,Microsoft YaHei,sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.75}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}p,h1,h2,h3,h4{margin-top:0}p{margin-bottom:1rem}h1,h2,h3,h4{color:var(--ink);font-weight:500;line-height:1.3}.skip-link{z-index:20;color:var(--navy);background:#fff;padding:.7rem 1rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}.identity{width:var(--sidebar);background:var(--navy);color:#e9eef5;flex-direction:column;justify-content:space-between;padding:48px 36px 28px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.identity-main{min-height:0;overflow-y:auto}.portrait-frame{background:#93a6b2;border:5px solid #ffffff12;border-radius:50%;width:156px;height:156px;margin:0 0 27px;display:block;overflow:hidden;box-shadow:0 0 0 1px #ffffff26}.portrait{object-fit:cover;transform-origin:50% 27%;width:100%;height:100%;display:block;transform:translate(2%,8%)scale(1.48)}.eyebrow{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.6rem;font-size:.75rem;font-weight:600;line-height:1.5}.identity-eyebrow{color:#91a7bf;letter-spacing:.16em;font-size:.72rem}.identity h1{letter-spacing:-.025em;color:#fff;margin-bottom:.2rem;font-family:Georgia,Times New Roman,Noto Serif SC,serif;font-size:2rem}.second-name{color:#c4d0df;margin:0 0 1.2rem;font-size:1rem}.identity h1+.identity-role{margin-top:1rem}.identity-role{color:#fff;font-size:.875rem;line-height:1.7}.identity-role span{color:#a7bacd;margin-top:.25rem;font-size:.8125rem;display:inline-block}.section-nav{flex-direction:column;gap:3px;margin-top:35px;display:flex}.section-nav a{color:#a7bacd;align-items:baseline;gap:14px;padding:8px 0;font-size:.875rem;text-decoration:none;transition:color .15s;display:flex}.section-nav a:hover,.section-nav a.active{color:#fff}.nav-number{color:#6e87a0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem}.section-nav a.active .nav-number{color:#e7b3ab}.identity-bottom{flex-shrink:0;padding-top:25px}.contact-links{border-top:1px solid #ffffff1c;flex-wrap:wrap;gap:20px;padding:20px 0;display:flex}.contact-links a{color:#c6d3df;font-size:.8125rem;text-decoration:none}.contact-links a:hover{color:#fff;text-decoration:underline}.language-switch{color:#7f99b1;align-items:center;gap:12px;font-size:.8125rem;display:flex}.language-switch a{color:#9fb3c7;padding:3px 0;text-decoration:none}.language-switch a[aria-current]{color:#fff;border-bottom:1px solid #d49b94}.identity a:focus-visible{outline-color:#e6b6ae}main{margin-left:var(--sidebar);min-height:100vh}.content-wrap{max-width:1090px;margin:0 auto;padding:70px 76px 0}section{border-bottom:1px solid var(--line);padding:45px 0 48px;scroll-margin-top:35px}.about-section{padding-top:0;padding-bottom:54px}.section-heading{align-items:baseline;gap:15px;margin-bottom:24px;display:flex}.section-heading h2{letter-spacing:-.02em;margin:0;font-family:Georgia,Times New Roman,Noto Serif SC,serif;font-size:2rem}.section-index{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;font-weight:600}.about-section .section-heading{margin-bottom:32px}.about-section .section-heading h2{font-size:2.65rem}.intro{color:var(--ink);letter-spacing:-.01em;max-width:760px;margin-bottom:1.1rem;font-size:1.35rem;line-height:1.6}.about-section>p:not(.intro){max-width:770px}.intro-contact{align-items:center;gap:24px;margin-top:23px;display:flex}.email-link{color:var(--accent);font-size:.9375rem;font-weight:500;text-decoration:none}.email-link:hover{text-decoration:underline}.research-intro{border-left:3px solid var(--navy);margin:4px 0 28px;padding-left:22px}.research-intro h3{max-width:640px;margin-bottom:12px;font-size:1.25rem;font-weight:600}.research-intro p{margin-bottom:0;font-size:.9375rem}.research-grid{grid-template-columns:1fr 1fr;gap:34px;display:grid}.research-grid article{background:var(--soft);padding:22px 23px 18px}.research-grid h4{margin-bottom:10px;font-size:.9375rem;font-weight:600}.research-grid p{margin-bottom:0;font-size:.875rem;line-height:1.75}.research-methods{letter-spacing:.025em;color:#65778c;margin-top:23px;margin-bottom:0;font-size:.75rem}.publication{grid-template-columns:45px 1fr;gap:20px;display:grid}.publication-year{color:var(--accent);padding-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem}.publication h3{margin-bottom:12px;font-size:1.0625rem;font-weight:600;line-height:1.55}.publication h3 a{text-decoration:none}.publication h3 a:hover{text-decoration:underline}.authors{color:#65758a;margin-bottom:3px;font-size:.875rem}.authors strong{color:var(--ink);font-weight:500}.venue{margin-bottom:10px;font-size:.875rem}.publication-note{color:#697a8e;margin-bottom:16px;font-size:.875rem}.resource-links{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.resource-links a,.resource-link{color:var(--accent);border-bottom:1px solid #d8b5b9;font-size:.8125rem;font-weight:600;line-height:1.8;text-decoration:none}.resource-links a:hover,.resource-link:hover{color:var(--navy);border-color:var(--navy)}.project{border-bottom:1px solid var(--line);grid-template-columns:.85fr 1.4fr;gap:35px;padding:25px 0;display:grid}.project:first-child{padding-top:7px}.project:last-child{border-bottom:0;padding-bottom:5px}.project .eyebrow{color:#708098;margin-bottom:8px;font-size:.6875rem}.project h3{letter-spacing:-.02em;margin-bottom:13px;font-size:1.2rem;font-weight:600}.tags{flex-wrap:wrap;gap:5px 6px;margin:0;padding:0;list-style:none;display:flex}.tags li{background:var(--soft);color:#617085;border:1px solid #e6ebf0;border-radius:3px;padding:3px 7px;font-size:.6875rem;line-height:1.5}.project-description p{margin-bottom:13px;font-size:.875rem}.more-projects{color:#687d94;margin-top:25px;font-size:.8125rem;text-decoration:underline;display:inline-block}.experience-grid{grid-template-columns:.85fr 1.4fr;gap:40px;display:grid}.column-label{text-transform:uppercase;letter-spacing:.08em;color:#718299;margin-bottom:24px;font-size:.7rem;font-weight:600}.timeline article{border-left:1px solid #d7e0e9;margin-bottom:28px;padding-left:17px}.timeline article:last-child{margin-bottom:0}.date{color:#7b899b;font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:.75rem}.timeline h4{margin-bottom:7px;font-size:.9375rem;font-weight:600}.timeline-role{color:var(--ink);margin-bottom:7px;font-size:.8125rem}.timeline-note{color:#6b7b8e;margin-bottom:0;font-size:.8125rem;line-height:1.75}footer{color:#7c8b9c;justify-content:space-between;gap:20px;padding:30px 0;font-size:.75rem;display:flex}footer p{margin:0}footer a{text-decoration:none}html[lang=zh-CN] .section-heading h2,.identity h1[lang=zh-CN]{letter-spacing:.025em;font-family:Songti SC,Noto Serif SC,Source Han Serif SC,serif}html[lang=zh-CN] body{line-height:1.9}html[lang=zh-CN] .intro{line-height:1.7}html[lang=zh-CN] .eyebrow{letter-spacing:.08em}@media (width>=1600px){.content-wrap{padding-top:86px}.identity{padding-top:64px}}@media (width>=901px) and (height<=820px){.identity{padding-top:28px;padding-bottom:20px}.portrait-frame{width:126px;height:126px;margin-bottom:20px}.identity h1{font-size:1.85rem}.second-name{margin-bottom:1rem}.section-nav{gap:1px;margin-top:22px}.section-nav a{padding-top:6px;padding-bottom:6px}.identity-bottom{padding-top:18px}.contact-links{padding-top:14px;padding-bottom:14px}}@media (width<=1150px){:root{--sidebar:270px}.identity{padding-left:30px;padding-right:30px}.content-wrap{padding:52px 44px 0}.research-grid{gap:20px}.project,.experience-grid{gap:25px}}@media (width<=900px){.identity{width:100%;padding:30px 32px 20px;position:relative;overflow:visible}.identity-main{grid-template-columns:104px 1fr;align-items:start;gap:0 24px;display:grid;overflow:visible}.portrait-frame{border-width:3px;width:104px;height:104px;margin:5px 0 0}.identity h1{font-size:1.8rem}.identity-eyebrow{margin-bottom:6px;font-size:.65rem}.second-name{margin-bottom:9px;font-size:.875rem}.identity h1+.identity-role{margin-top:.65rem}.identity-role{margin-bottom:0;font-size:.8125rem}.identity-role span{font-size:.75rem}.section-nav{border-top:1px solid #ffffff20;flex-flow:wrap;grid-column:1/-1;gap:3px 24px;margin-top:25px;padding-top:13px;display:flex}.section-nav a{gap:6px;padding:4px 0;font-size:.8125rem}.nav-number{display:none}.identity-bottom{justify-content:space-between;align-items:center;gap:16px;padding-top:16px;display:flex}.contact-links{border:0;gap:20px;padding:0}.language-switch{flex-shrink:0}main{margin-left:0}.content-wrap{max-width:850px;padding:40px 32px 0}.about-section .section-heading h2{font-size:2.2rem}section{scroll-margin-top:25px}}@media (width<=600px){.identity{padding:26px 24px 20px}.identity-main{grid-template-columns:90px 1fr;gap:0 20px}.portrait-frame{width:90px;height:90px}.identity h1{font-size:1.65rem}.identity-role span{max-width:180px}.section-nav{gap:5px 18px}.contact-links{gap:16px}.contact-links a,.language-switch{font-size:.75rem}.content-wrap{padding:34px 24px 0}section{padding-top:34px;padding-bottom:35px}.about-section{padding-top:0;padding-bottom:37px}.section-heading{gap:12px;margin-bottom:22px}.section-heading h2{font-size:1.65rem}.about-section .section-heading{margin-bottom:24px}.about-section .section-heading h2{font-size:2rem}.intro{font-size:1.15rem}.research-intro{padding-left:16px}.research-intro h3{font-size:1.1rem}.research-grid{grid-template-columns:1fr;gap:14px}.research-grid article{padding:20px}.publication{grid-template-columns:1fr;gap:10px}.publication h3{font-size:1rem}.project{grid-template-columns:1fr;gap:17px;padding:25px 0}.project h3{margin-bottom:10px}.experience-grid{grid-template-columns:1fr;gap:32px}.research-methods{font-size:.75rem;line-height:1.9}}@media (width<=360px){.identity{padding-left:20px;padding-right:20px}.identity-main{grid-template-columns:74px 1fr;gap:16px}.portrait-frame{width:74px;height:74px}.identity h1{font-size:1.4rem}.identity-bottom{gap:8px}.contact-links{gap:12px}.language-switch{gap:8px}.content-wrap{padding-left:20px;padding-right:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
