@charset "UTF-8";
.section-summary{font-size:14px;color:#576775;margin:-13px 0 22px}.pub-type{display:inline-block;font-family:"Segoe UI","Microsoft YaHei",sans-serif;letter-spacing:0;background:#edf2f4;color:#40596b;padding:3px 8px;margin-right:8px}.pub-reference{font-size:14px;color:#576775;margin-top:10px;line-height:1.8}.pub-doi{display:inline-block;font-size:14px;color:#24679d;line-height:1.8;margin-top:12px;overflow-wrap:anywhere}.publication>div{min-width:0}.experience-subheading{font-size:22px;font-weight:550;line-height:1.5;margin:34px 0 18px}.experience-subheading>span{font:12px Consolas,monospace;letter-spacing:.09em;color:#576775;margin-left:14px}
:root{--ink:#102438;--muted:#576775;--line:#dce3e8;--paper:#fff;--soft:#f4f7f8;--accent:#dafa68;--sidebar:220px;color-scheme:light;font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:38px}body{margin:0}p,h1,h2,h3{margin:0}p{line-height:1.85}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:3px solid #708e27;outline-offset:6px}::selection{background:var(--accent);color:var(--ink)}.skip{position:fixed;top:-80px;left:10px;background:var(--ink);color:white;padding:12px;z-index:100}.skip:focus{top:12px}
.header{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:44px 30px 30px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#fff;z-index:5}.wordmark{display:block}.wordmark:hover{text-decoration:none}.monogram{display:block;font-size:47px;font-weight:800;letter-spacing:-4px;line-height:1}.mark-dot{color:#7f9f1d}.wordmark-name{font-size:18px;display:block;font-weight:600;margin-top:25px}.wordmark-name small{display:block;font-size:12px;letter-spacing:.04em;margin-top:8px;color:var(--muted);font-weight:500}nav{display:flex;flex-direction:column;gap:5px;margin-top:54px}nav a{font-size:14px;padding:13px 10px;display:flex;gap:17px;align-items:center;color:var(--muted);transition:background .2s,color .2s}nav a>span{font:12px "Cascadia Code",Consolas,monospace;color:#738490}nav a:hover,nav a[aria-current="location"]{background:var(--soft);color:var(--ink);text-decoration:none}nav a[aria-current="location"]{box-shadow:inset 3px 0 #91ac39}.sidebar-note{margin-top:auto;padding-top:38px;font-size:12px;line-height:1.8;color:var(--muted)}.sidebar-note>span{letter-spacing:.09em;font-size:12px;font-weight:650}.sidebar-note p{margin-top:16px}.sidebar-note a{display:inline-block;font-size:14px;margin-top:16px;color:var(--ink)}
main{margin-left:var(--sidebar);padding:32px 44px 0;max-width:1560px}.hero{background:#fff;color:var(--ink);padding:28px 0 0;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(265px,1fr);gap:26px 44px;position:relative}.eyebrow{font-size:12px;letter-spacing:.1em;font-weight:600;line-height:1.7}.hero .eyebrow{color:#526c7c}.hero h1{font-size:clamp(36px,3.6vw,58px);font-weight:550;letter-spacing:-.045em;line-height:1.18;margin:22px 0 17px}.name-cn{display:block;letter-spacing:.13em;font-size:23px;font-weight:450;line-height:1.5;margin-top:12px;color:#5c707f}.hero-line{font-size:19px;line-height:1.6;font-weight:550;letter-spacing:0}.hero-line span{color:var(--accent)}.intro{color:var(--muted);font-size:16px;margin-top:14px;max-width:640px;line-height:1.95}.intro strong{color:var(--ink);font-weight:550}.profile-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:23px;font-size:14px}.profile-links a{color:#24679d;border-bottom:1px solid #bfd2df;padding-bottom:4px}.profile-note{align-self:start;min-width:0;padding:25px 26px 28px;background:var(--ink);color:#fff;border:0;margin-top:4px}.note-top{display:flex;justify-content:space-between;gap:12px;font-size:12px;letter-spacing:.04em;color:#aabac7;margin-bottom:9px}.focus-item{display:flex;gap:17px;padding:19px 0;border-bottom:1px solid #334857}.focus-index{font:12px Consolas,monospace;color:var(--accent);padding-top:5px}.focus-item h2{font-size:20px;letter-spacing:-.025em;font-weight:500;line-height:1.4}.focus-item p{color:#b4c4d1;font-size:14px;margin-top:6px}.learning-loop{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:8px;margin-top:25px;text-align:center}.learning-loop>div{display:flex;flex-direction:column;gap:8px}.learning-loop>div span{font:12px Consolas,monospace;color:#afbfcc}.learning-loop b{font-size:14px;font-weight:450}.learning-loop>span{font-size:14px;color:#9bafbe}.learning-loop p{grid-column:1/-1;font-size:12px;color:#a8bdcc;border:1px solid #3b5264;border-top:0;margin:8px 9px 0;padding:8px 0 0}.current-position{grid-column:1/-1;display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:8px}.current-position>div{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.current-label{font:12px Consolas,monospace;color:#61732e;letter-spacing:.03em}.current-position strong{font-size:18px;letter-spacing:-.02em}.current-position>div>span:last-child{font-size:12px;color:var(--muted)}.current-position p{font-size:14px;color:var(--muted)}.current-position>a{margin-left:auto;font-size:14px;white-space:nowrap}.current-position>a span{margin-left:16px;color:#61732e}
.section{padding:55px 0 0;scroll-margin-top:10px}.section-heading{display:flex;justify-content:space-between;gap:22px;align-items:end;margin-bottom:32px}.section-heading>.eyebrow{align-self:center}.section-heading .eyebrow{color:var(--muted)}h2{font-size:30px;font-weight:550;letter-spacing:-.035em;line-height:1.5}.section-heading>div>h2{margin-top:14px}.heading-period{color:#7c9c1d}.section-intro{font-size:14px;color:var(--muted);flex-shrink:0}.projects{display:grid;grid-template-columns:1fr 1fr;gap:20px}.project{display:flex;flex-direction:column;border:1px solid var(--line);padding:29px 30px;position:relative;min-width:0;background:#fff;transition:border-color .25s,transform .25s}.project:hover{border-color:#7b919f;transform:translateY(-3px)}.project.featured{background:var(--soft);border-top:3px solid #a6c944;padding-top:27px}.project-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.tag{font:12px "Cascadia Code",Consolas,monospace;letter-spacing:.01em;color:#40596b}.year{font-size:12px;color:var(--muted)}.project-copy{position:relative}.project-number{position:absolute;right:0;top:28px;font:42px Georgia,serif;color:#a6b7c3;letter-spacing:-.08em}.project h3{font-size:29px;line-height:1.55;font-weight:550;letter-spacing:-.03em;margin:29px 40px 16px 0}.project p{font-size:16px;color:var(--muted);line-height:1.85}.project-method{border-top:1px solid var(--line);padding-top:19px;margin-top:22px}.method-label{font-size:12px;color:#284657;font-weight:650;letter-spacing:.1em}.project-method p{font-size:14px;margin-top:7px;line-height:1.9}.project-bottom{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:24px}.project-bottom span{font-size:12px;line-height:1.4;background:#edf2f4;color:#4c6372;padding:6px 9px}.featured .project-bottom span{background:#e3eaed}
.timeline{border-top:1px solid var(--line)}.timeline-row{display:grid;grid-template-columns:155px minmax(0,1fr);gap:22px;padding:33px 0;border-bottom:1px solid var(--line)}.date{font:14px/1.9 "Cascadia Code",Consolas,monospace;color:var(--muted);font-variant-numeric:tabular-nums}.timeline-row>.date{padding-top:5px}.timeline h3{font-size:23px;line-height:1.6;font-weight:600}.timeline h3 span{font-weight:400;font-size:14px;color:var(--muted);margin-left:12px}.timeline p:not(.date){font-size:16px;color:var(--muted)}.timeline .job{color:var(--ink)!important;margin:5px 0 13px}.career-details{list-style:none;padding:14px 20px;margin:22px 0 0;background:var(--soft);font-size:14px;line-height:2.2;color:var(--muted)}.career-details span{display:inline-block;min-width:160px;font-size:12px;font-family:Consolas,monospace}.publication{display:grid;grid-template-columns:45px 1fr;gap:22px;padding:29px 30px;border:1px solid var(--line);margin-top:16px;transition:background .2s}.publication:hover{background:var(--soft)}.pub-number{font:24px/1.5 Georgia,serif;color:#8195a3}.pub-venue{font:12px/1.7 "Cascadia Code",Consolas,monospace;letter-spacing:.025em;color:#506b7e}.publication h3{font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:400;line-height:1.45;letter-spacing:-.015em;margin:10px 0 14px}.publication h3 span{font-family:Arial,sans-serif;font-size:19px;white-space:nowrap}.authors{font-size:14px;color:var(--muted)}.authors strong{font-weight:600;color:var(--ink)}
.background-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.school{padding:24px 0;border-top:1px solid var(--line)}.school h3{font-size:26px;font-weight:550;line-height:1.5;margin:12px 0}.school h3 span{display:block;font-size:12px;letter-spacing:.04em;color:#6c7e8c;font-weight:500;margin-top:5px}.school p{font-size:16px}.school .date{font-size:14px}.school .muted{font-size:14px;color:var(--muted);margin-top:4px}.honors{padding:28px 30px;background:var(--soft);position:relative;border-top:3px solid #d6e2b2}.honors>.eyebrow{color:var(--muted);margin-bottom:26px}.honors h3{font-size:22px;line-height:1.5;font-weight:550;margin-bottom:7px}.award-mark{float:right;color:#718e1e;font-size:35px;font-weight:400}.honors p:not(.eyebrow){font-size:14px;color:var(--muted)}.honor-rule{height:1px;background:var(--line);margin:22px 0}.patents strong{font-size:23px;font-weight:550;color:var(--ink);margin-right:4px}.contact{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:end;padding:47px 0 42px;border-top:1px solid var(--ink);margin-top:68px}.contact .eyebrow{color:var(--muted)}.contact h2{font-size:clamp(25px,2.6vw,39px);line-height:1.5;margin-top:18px}.contact h2 span{color:#83a128}.contact p:last-child{font-size:14px;color:var(--muted);margin-top:18px}.contact>a{display:block;font-size:16px;border-bottom:1px solid #9dadb7;padding-bottom:13px;overflow-wrap:anywhere}.mail-label{display:block;font:12px Consolas,monospace;letter-spacing:.08em;color:var(--muted);margin-bottom:16px}.mail-arrow{font-size:24px;display:inline-block;margin-left:9px}footer{margin-left:var(--sidebar);max-width:1560px;display:flex;justify-content:space-between;gap:22px;border-top:1px solid var(--line);padding:24px 44px 30px;color:var(--muted);font-size:12px}
@media(min-width:1800px){main,footer{margin-left:calc(var(--sidebar) + (100vw - 1800px)/2)}.hero{padding-top:40px}}
@media(max-width:1200px){:root{--sidebar:180px}.header{padding:32px 20px}.hero{padding:24px 0 0;gap:28px}.hero h1{font-size:43px}main{padding:24px 30px 0}.profile-note{padding-left:21px}.focus-item{gap:12px}.focus-item h2{font-size:18px}.section-intro{font-size:14px}.section-heading h2{font-size:27px}.project{padding:25px}.project.featured{padding-top:23px}.project h3{font-size:27px}.project-number{font-size:35px}.current-position p{order:3;flex-basis:100%;margin-top:-14px}.contact{grid-template-columns:1fr}.contact>a{justify-self:start}footer{padding-left:30px;padding-right:30px}}
@media(max-width:960px){:root{--sidebar:0px}.header{position:sticky;inset:0 0 auto 0;width:100%;padding:15px 25px;flex-direction:row;align-items:center;justify-content:space-between;border-right:0;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:13px}.monogram{font-size:31px;letter-spacing:-2px}.wordmark-name{margin:0;font-size:14px}.wordmark-name small{display:none}nav{flex-direction:row;gap:4px;margin:0}nav a{padding:9px 10px;font-size:14px}nav a>span{display:none}.sidebar-note{display:none}nav a[aria-current="location"]{box-shadow:inset 0 -2px #91ac39}main{padding:25px 26px 0}.hero{gap:26px}.hero h1{font-size:44px}html{scroll-padding-top:95px}.section{padding-top:56px}.section-intro{display:none}.timeline-row{grid-template-columns:135px 1fr}footer{padding:24px 26px}}
@media(max-width:680px){.header{padding:14px 20px;display:block}.wordmark{justify-content:space-between}.monogram{font-size:30px}.wordmark-name{font-size:14px}nav{justify-content:space-between;margin-top:13px;gap:0}nav a{padding:9px 3px;font-size:14px}main{padding:16px 16px 0}.hero{grid-template-columns:1fr;padding:23px 7px 0;gap:25px}.hero .eyebrow{font-size:12px;letter-spacing:.03em}.hero h1{font-size:42px;line-height:1.12;margin-top:23px;margin-bottom:18px}.name-cn{display:block;margin:12px 0 0;font-size:22px;letter-spacing:.1em}.hero-line{font-size:19px}.intro{font-size:16px}.profile-note{border:0;padding:24px;display:grid;grid-template-columns:1fr;gap:0}.note-top{margin:0 0 9px}.focus-item{padding:16px 0;align-items:center}.focus-item>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex:1;flex-wrap:wrap}.focus-item h2{font-size:17px}.focus-item p{font-size:14px;margin-top:0}.focus-index{font-size:12px}.learning-loop{margin-top:26px;margin-bottom:7px}.current-position{padding:23px 0;gap:15px}.current-position>div{gap:9px}.current-position p{font-size:14px;order:2;margin:0;flex-basis:100%}.current-position>a{order:3;margin-left:0}.section{padding-top:48px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:26px;margin-top:12px}.section-heading .eyebrow{font-size:12px}.projects{grid-template-columns:1fr;gap:17px}.project{padding:25px}.project h3{font-size:27px;margin-top:25px}.project-number{font-size:42px}.tag{font-size:12px}.timeline-row{display:block;padding:27px 0}.timeline-row>.date{margin-bottom:10px}.timeline h3{font-size:23px}.timeline h3 span{display:block;margin:3px 0 0;font-size:14px}.timeline p:not(.date){font-size:16px}.career-details{padding:13px 17px;font-size:14px}.career-details span{display:block;margin-top:6px}.publication{grid-template-columns:22px 1fr;gap:14px;padding:24px 20px}.publication h3{font-size:23px}.pub-venue{font-size:12px}.pub-number{font-size:20px}.background-grid{grid-template-columns:1fr;gap:15px}.school h3{font-size:25px}.honors{padding:27px}.contact{margin-top:46px;padding:35px 7px 33px;gap:29px}.contact h2{font-size:29px}.contact>a{font-size:15px}.mail-arrow{margin-left:4px}footer{padding:22px 20px;flex-wrap:wrap;font-size:12px;gap:15px}footer a{margin-left:auto}html{scroll-padding-top:130px}}
@media(max-width:360px){.hero h1{font-size:36px}.name-cn{font-size:21px;margin-left:0}.hero{padding-left:4px;padding-right:4px}.project{padding:22px}.contact>a{font-size:14px}.focus-item>div{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.project:hover{transform:none}}
@media print{.header,.skip{display:none}main,footer{margin-left:0;padding:0}.hero{background:#fff;color:var(--ink);padding:20px;border:1px solid var(--line)}.hero p,.hero .eyebrow,.hero h2,.name-cn,.focus-item p,.current-position p{color:var(--ink)}.section{padding-top:28px}.project,.publication,.timeline-row,.school{break-inside:avoid}.hero h1{font-size:60px}.contact{margin-top:30px}.project:hover{transform:none}}
