/* Shared styles. No external fonts, frameworks, or build tools required. */
:root{--ink:#202a33;--muted:#65707c;--accent:#173c56;--line:#e1e6e9;--surface:#f5f7f8;--serif:Georgia,'Times New Roman','Noto Serif SC',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,'Noto Sans SC',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #82a8c0;outline-offset:4px}p{margin:0 0 16px}h1,h2,h3{line-height:1.3;font-weight:600;margin:0;color:var(--ink)}h1,h2{font-family:var(--serif)}h1{font-size:46px;letter-spacing:-1.2px}h2{font-size:29px;letter-spacing:-.5px}h3{font-size:18px}[hidden]{display:none!important}.container{max-width:1100px;margin:0 auto;padding:0 40px}.site-header{border-bottom:1px solid var(--line);background:#fff}.header-inner{max-width:1100px;padding:23px 40px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-size:20px;font-weight:650;letter-spacing:-.5px;color:var(--ink);white-space:nowrap}.brand span{font-size:13px;color:var(--muted);font-weight:400;margin-left:12px;letter-spacing:0}nav{display:flex;gap:28px}nav a{font-size:14px;color:var(--muted)}nav a.active{color:var(--accent);font-weight:650;text-decoration:underline;text-underline-offset:9px;text-decoration-thickness:2px}.skip-link{position:absolute;left:10px;top:-100px;z-index:5;background:#fff;padding:10px}.skip-link:focus{top:10px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.hero{display:grid;grid-template-columns:1fr 232px;gap:70px;align-items:center;padding:66px 0 54px}.hero h1{margin-bottom:9px}.chinese-name{display:inline-block;font-family:var(--sans);font-size:25px;letter-spacing:1px;color:var(--muted);font-weight:400;margin-left:12px}.hero-degree{font-size:13px;color:var(--muted);margin-bottom:27px}.hero-summary{font-family:var(--serif);font-size:26px;line-height:1.45;letter-spacing:-.3px;margin-bottom:22px}.affiliation{font-size:14px;line-height:1.8}.profile-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}.button{display:inline-flex;gap:13px;align-items:center;font:500 12px/1.5 var(--sans);border:1px solid #d6dfe5;border-radius:4px;padding:10px 13px;color:var(--accent);background:#fff}.button:hover{background:var(--surface);text-decoration:none}.button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.button.primary:hover{background:#244d68}.email-line{font-size:12px;color:var(--muted);display:flex;gap:12px;align-items:center;margin-top:17px;flex-wrap:wrap}.email-image{vertical-align:middle;max-width:100%;height:auto;font-size:11px}.portrait-frame{position:relative;align-self:center}.portrait{width:232px;height:300px;object-fit:cover;display:block;border-radius:5px;position:relative;background:var(--surface)}.portrait-placeholder{position:absolute;inset:0 0 auto;height:300px;background:var(--surface);border:1px solid var(--line);border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--accent)}.portrait-placeholder span{font-family:var(--serif);font-size:60px}.portrait-placeholder small{color:var(--muted);font-size:12px}.portrait-caption{font-size:10px;line-height:1.6;letter-spacing:.2px;color:var(--muted);margin:12px 0 0;text-align:center}.section{border-top:1px solid var(--line);padding:37px 0 42px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.section-top .eyebrow{margin-bottom:8px}.section-label>span{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);display:block;margin-bottom:10px}.about,.awards-section{display:grid;grid-template-columns:220px 1fr;gap:40px}.about p{font-size:15px;line-height:1.9}.about p:last-child{margin-bottom:0}.text-link{font-size:13px;white-space:nowrap}.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.research-grid article{border-left:2px solid #d5dfe6;padding:0 0 0 18px}.research-number{font-family:var(--serif);font-size:15px;color:var(--muted);display:block;margin-bottom:14px}.research-grid h3{font-size:18px;line-height:1.45;margin-bottom:13px}.research-grid p{font-size:13px;color:var(--muted);line-height:1.8}.topic-links{display:flex;flex-wrap:wrap;gap:5px 14px;font-size:12px;font-weight:600}.topic-links span{color:var(--muted)}.publication{padding:23px 0;border-bottom:1px solid var(--line)}.publication:last-child{border-bottom:0;padding-bottom:0}.pub-meta{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted);margin-bottom:9px}.venue{font-weight:650;color:var(--accent);letter-spacing:.2px}.publication h3{font-size:18px;line-height:1.5;max-width:870px;margin-bottom:7px;font-weight:600}.authors{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:9px}.authors b{color:var(--ink);font-weight:650}.paper-links{display:flex;flex-wrap:wrap;gap:8px 19px;font-size:12px;font-weight:500}.paper-links span{font-size:10px;color:var(--muted)}.award{display:grid;grid-template-columns:54px 1fr;gap:13px;padding:9px 0;font-size:14px}.award time{font-size:12px;color:var(--muted);padding-top:3px}.award p{margin:0}.collaboration{background:var(--surface);border-radius:5px;padding:27px 30px;margin:0 0 48px;display:flex;align-items:center;justify-content:space-between;gap:25px}.collaboration .eyebrow{margin-bottom:6px}.collaboration h2{font-size:23px;margin-bottom:8px}.collaboration p:last-child{font-size:13px;color:var(--muted);margin:0}.collaboration .button{flex-shrink:0}.site-footer{border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;padding-bottom:22px}.page-heading{padding:58px 0 24px}.page-heading h1{margin-bottom:14px}.lede{font-size:16px;color:var(--muted);margin:0}.contribution-note{font-size:12px;color:var(--muted);margin-bottom:25px}.pub-controls{padding:23px;background:var(--surface);border:1px solid var(--line);border-radius:5px;margin-bottom:20px}.search-field{display:block}.search-field>span{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.search-field input{width:100%;border:1px solid #cdd7dd;border-radius:4px;background:#fff;padding:12px 14px;font:14px var(--sans);color:var(--ink)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.filters button{cursor:pointer;border:1px solid #d1dbe1;padding:7px 13px;border-radius:4px;font:12px var(--sans);background:#fff;color:var(--muted)}.filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.pub-controls>p{font-size:11px;color:var(--muted);margin:12px 0 0}.section-nav{gap:20px;padding:5px 0 24px}.section-nav a{font-size:12px}.pub-section{border-top:1px solid var(--line);padding:30px 0}.pub-section .section-top{margin-bottom:0}.section-count{font-size:11px;color:var(--muted)}.no-results{padding:35px 0;color:var(--muted)}.timeline{margin-top:28px}.timeline-item{display:grid;grid-template-columns:185px 1fr;gap:26px;padding:0 0 30px}.timeline-item:last-child{padding-bottom:0}.timeline-date{font-size:13px;color:var(--muted);margin:0;padding-top:2px}.timeline-item>div{border-left:2px solid var(--line);padding-left:26px}.timeline-item h3{font-size:18px;margin-bottom:5px}.timeline-subtitle{font-size:13px;color:var(--muted);margin-bottom:9px}.timeline-item>div>p:last-child{font-size:14px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 24px;margin-top:25px}.service-item{padding:17px 0;border-bottom:1px solid var(--line)}.service-item h3{font-size:16px;margin-bottom:5px}.service-item p{font-size:12px;color:var(--muted);margin:0}.journal-list{list-style:none;padding:0;margin:20px 0 0}.journal-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}.journal-list li:last-child{border-bottom:0}
@media(max-width:850px){.container,.header-inner{padding-left:28px;padding-right:28px}.hero{gap:30px;grid-template-columns:1fr 195px}.portrait{width:195px;height:260px}.portrait-placeholder{height:260px}h1{font-size:38px}.chinese-name{font-size:22px;margin-left:5px}.hero-summary{font-size:23px}.about,.awards-section{grid-template-columns:165px 1fr;gap:25px}.research-grid{gap:18px}.research-grid article{padding-left:13px}.service-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.container,.header-inner{padding-left:22px;padding-right:22px}.header-inner{align-items:flex-start;flex-direction:column;gap:14px;padding-top:18px;padding-bottom:17px}nav{gap:24px}nav a{font-size:12px}.hero{grid-template-columns:1fr;gap:30px;padding:36px 0}.hero-copy{min-width:0}.hero h1{font-size:38px}.chinese-name{font-size:23px}.hero-summary{font-size:25px}.hero-degree{font-size:12px}.portrait-frame{grid-row:1;justify-self:start;width:132px}.portrait{width:132px;height:174px}.portrait-placeholder{height:174px}.portrait-placeholder span{font-size:42px}.portrait-placeholder small{font-size:10px}.portrait-caption{display:none}.hero .eyebrow{font-size:10px;letter-spacing:1px}.hero .profile-links{gap:7px}.button{font-size:11px;padding:9px 11px}.section{padding:29px 0 33px}.about,.awards-section{display:block}.section-label{margin-bottom:22px}h2{font-size:26px}.research-grid{grid-template-columns:1fr;gap:27px}.research-grid h3 br{display:none}.research-grid p{margin-bottom:10px}.research-number{margin-bottom:7px}.section-top{align-items:flex-start;gap:14px}.text-link{font-size:11px;padding-top:5px}.publication h3{font-size:17px}.authors{font-size:12px}.collaboration{flex-direction:column;align-items:flex-start;padding:23px}.collaboration h2{font-size:22px}.footer-inner{align-items:flex-start;flex-direction:column;gap:5px}.page-heading{padding:36px 0 22px}.page-heading h1{font-size:36px}.lede{font-size:14px}.pub-controls{padding:17px}.section-nav{gap:16px;flex-wrap:wrap}.timeline-item{grid-template-columns:1fr;gap:8px}.timeline-item>div{padding-left:17px}.service-grid{grid-template-columns:repeat(2,1fr);gap:0 20px}.journal-list li{font-size:14px}.pub-section .section-count{padding-top:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.pub-controls,.section-nav,.collaboration,.site-footer,.skip-link{display:none!important}.container{max-width:none;padding:0}.hero{padding-top:0}.publication,.timeline-item{break-inside:avoid}body{font-size:11pt}.section{padding:20px 0}a{color:inherit}}
