.profile-column{z-index:3;position:relative}.profile{isolation:isolate;grid-template-columns:minmax(160px,1fr) 288px;gap:15px 54px;width:min(820px,100%);margin:auto;padding:100px 54px 72px;display:grid;position:relative}.profile>[data-flight]{transform-origin:0 0;grid-column:2;position:relative}.terminal-shell{z-index:-1;border:1px solid var(--line);pointer-events:none;font-family:var(--mono);color:var(--muted);background:#fff;border-radius:9px;position:absolute;inset:0;overflow:hidden;box-shadow:0 16px 60px #30394308,0 2px 5px #30394304}.terminal-titlebar{border-bottom:1px solid var(--line);letter-spacing:.025em;background:#fff;justify-content:space-between;align-items:center;height:40px;padding:0 18px;font-size:.75rem;display:flex}.terminal-lights{gap:6px;display:flex}.terminal-lights i{background:#b5bdc5;border-radius:50%;width:7px;height:7px}.terminal-lights i:nth-child(2){background:#d0cec6}.terminal-lights i:nth-child(3){background:#a5adb8}.terminal-session{color:var(--muted);font-size:.6875rem}.terminal-command{font-size:.875rem;position:absolute;top:60px;left:32px}.terminal-footer{justify-content:space-between;align-items:center;font-size:.8125rem;display:flex;position:absolute;bottom:23px;left:32px;right:32px}.terminal-input{align-items:baseline;gap:8px;min-width:0;display:flex}.terminal-prompt{white-space:nowrap}.terminal-message{white-space:nowrap;min-width:27ch;min-height:1.7em}.terminal-footer .cursor{animation-iteration-count:infinite}.terminal-palette{gap:4px;display:flex}.terminal-palette i{background:#465362;border-radius:1px;width:16px;height:12px}.terminal-palette i:nth-child(2){background:#7e8da0}.terminal-palette i:nth-child(3){background:#aebac5}.terminal-palette i:nth-child(4){background:#cfccc2}.terminal-palette i:nth-child(5){background:#a69bb5}.terminal-palette i:nth-child(6){background:#d1d4d6}.profile>.portrait-frame{grid-area:1/1/6;place-self:center;width:220px;height:220px}.portrait-frame img{object-fit:cover;object-position:center;border:6px solid var(--bg);width:100%;height:100%;box-shadow:0 0 0 1px var(--line);filter:saturate(.72);border-radius:50%}.portrait-orbit{background:var(--ornament);border:4px solid var(--bg);border-radius:50%;width:17px;height:17px;position:absolute;bottom:13px;right:14px}.profile-eyebrow{letter-spacing:.08em;align-items:center;gap:7px;margin-bottom:10px;font-size:.6875rem;display:flex}.profile h1{letter-spacing:-.055em;white-space:nowrap;font-size:2.625rem;font-weight:550}.name-dot{color:var(--ornament)}.profile-role{font-size:.9375rem;line-height:1.9}.profile-role>span{color:var(--ink)}.profile-location{color:var(--muted);align-items:center;gap:6px;font-size:.8125rem;display:flex}.profile-research{font-family:var(--mono);font-size:.8125rem;line-height:1.9}.fetch-label{color:var(--purple);margin-bottom:5px;font-size:.75rem}.profile-research ul{color:var(--text);margin:0;padding:0 0 0 13px;list-style:none}.profile-research li:before{content:"-";color:var(--ornament);margin-right:8px}.profile-links{gap:23px;font-size:.8125rem;display:flex}.profile-links a{min-height:32px;color:var(--text);align-items:center;gap:7px;display:inline-flex}.profile-links a:hover{color:var(--accent)}.profile-links svg:last-child{color:var(--ornament)}.prompt{color:var(--accent);margin-right:3px}.command{color:var(--purple)}.terminal-flag{color:var(--muted)}.cursor{background:var(--ornament);vertical-align:-1px;width:5px;height:11px;margin-left:6px;animation:1.15s step-end 4 blink;display:inline-block}@media (width>=1100px) and (height>=760px) and (prefers-reduced-motion:no-preference){.js .profile-column{align-self:start;width:288px;position:sticky;top:124px}.js .profile{width:820px;margin-left:var(--welcome-x,calc((min(1120px, 100vw - 80px) - 820px) / 2));transform:translateY(var(--welcome-y,36px))}.js .flight-layout .profile{width:fit-content;max-width:288px;margin-left:0;padding:0;display:block;transform:none}.flight-layout [data-flight]{will-change:transform}.js .flight-layout .portrait-frame{--portrait-optical-offset:-2px;width:124px;height:124px;margin:0 0 27px;margin-left:calc(var(--portrait-dock-x,0px) + var(--portrait-optical-offset));place-self:start}.js:lang(zh) .flight-layout .portrait-frame{--portrait-optical-offset:0px}.flight-layout .portrait-orbit{width:14px;height:14px;bottom:7px;right:8px}.flight-layout .profile-facts{margin-top:13px}.flight-layout .profile-location{margin-top:10px}.flight-layout .profile-research{margin-top:22px}.flight-layout .profile-links{margin-top:18px}.flight-layout .terminal-shell{inset:auto;left:var(--shell-x);top:var(--shell-y);width:var(--shell-width);height:var(--shell-height);opacity:var(--shell-opacity,1);transform:scale(var(--shell-scale,1));transform-origin:50%}}@media (width<=1099px),(height<=759px),(prefers-reduced-motion:reduce){.profile{grid-template-columns:minmax(130px,1fr) minmax(0,288px);column-gap:30px;padding-inline:32px}.profile>.portrait-frame{width:160px;height:160px}}@media (width<=699px){.profile{--mobile-portrait-size:clamp(88px, 26vw, 156px);grid-template-columns:var(--mobile-portrait-size) minmax(0, 1fr);gap:14px 16px;padding:92px 20px 112px;display:grid}.profile>[data-flight]{grid-column:1/-1;min-width:0}.profile>.portrait-frame{width:var(--mobile-portrait-size);height:var(--mobile-portrait-size);grid-area:1/1/4;place-self:center start;margin:0}.profile>.profile-heading{grid-area:1/2;align-self:center}.profile>.profile-facts{grid-area:2/2}.profile>.profile-location{grid-area:3/2}.profile-location svg{flex-shrink:0}.portrait-frame img{border-width:3px}.portrait-orbit{border-width:3px;width:11px;height:11px;bottom:3px;right:4px}.profile h1{letter-spacing:-.04em;font-size:clamp(1.7rem,5.8vw,2.2rem)}.profile-eyebrow{letter-spacing:.02em;margin-bottom:6px;font-size:.625rem;line-height:1.5}.profile-role{font-size:.875rem}.profile-research{font-size:.75rem}.profile-links{gap:22px;font-size:.875rem}.profile-links a{min-height:44px}.terminal-command{font-size:.8125rem;top:52px;left:20px}.terminal-footer{flex-direction:column;align-items:flex-start;gap:12px;font-size:.75rem;bottom:20px;left:20px;right:20px}.terminal-input{flex-wrap:wrap;gap:4px 8px;width:100%}.terminal-palette i{width:12px;height:10px}.terminal-titlebar{padding-inline:14px;font-size:.6875rem}}@media (width<=359px){.profile{column-gap:12px}.profile h1{font-size:1.5rem}}.home{--hero-opacity:1;position:relative}.home-grid{max-width:1120px;margin:auto;padding:56px 0 108px}.content-column{outline:none;min-width:0;max-width:720px;margin:auto;padding-top:80px}.hero-notes,.scroll-cue{display:none}.section{border-bottom:1px solid var(--line);margin-bottom:50px;padding:0 0 52px;scroll-margin-top:0}.section-kicker{align-items:center;gap:18px;margin-bottom:24px;display:flex}.section-number{color:var(--ornament);letter-spacing:0;flex-shrink:0;font-size:.75rem;line-height:2}.intro-title{letter-spacing:-.045em;margin-bottom:27px;font-size:2.5rem;font-weight:500;line-height:1.25}.intro-section>p:not(.eyebrow){margin-top:18px;font-size:1.0625rem;line-height:1.95}.intro-section .intro-lead{color:#46515c}.intro-signoff{color:var(--ornament);align-items:center;gap:12px;margin-top:32px;display:flex}.intro-signoff .mono{letter-spacing:.02em;font-size:.6875rem}.fine-rule{background:var(--line);width:34px;height:1px}.section-heading{align-items:baseline;gap:18px;margin-bottom:30px;display:flex}.section-heading h2{letter-spacing:-.035em;font-size:1.625rem;font-weight:550}.section-heading p{color:var(--muted);margin-top:8px;font-size:.875rem}.interest{border-bottom:1px solid var(--line);align-items:baseline;gap:20px;padding:19px 0;display:flex}.interest:first-child{padding-top:0}.interest:last-child{border-bottom:0;padding-bottom:0}.interest-index{font-family:var(--mono);color:var(--ornament);font-size:.6875rem}.interest h3{letter-spacing:-.015em;font-size:1.0625rem}.interest p{max-width:430px;margin-top:7px;font-size:.9375rem;line-height:1.8}.interest-symbol{color:var(--ornament);align-self:center;margin-left:auto;font-size:1.4375rem}.paper{border-bottom:1px solid var(--line);padding:28px 0}.paper:first-child{padding-top:0}.paper:last-child{border-bottom:0;padding-bottom:0}.paper-meta{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.paper-status{font-family:var(--mono);letter-spacing:.01em;color:#6f7487;background:#edf0f2;border-radius:3px;padding:3px 7px;font-size:.6875rem}.paper-status.published{color:#536781;background:#e1e6ec}.paper-status.preprint{color:#80708c;background:#f0ecf3}.paper-number{font-family:var(--mono);color:var(--ornament);font-size:.75rem}.paper h3{letter-spacing:-.02em;font-size:1.25rem;font-weight:550;line-height:1.5}.paper h3 a:hover{color:var(--accent)}.paper h3 svg{vertical-align:-3px;color:var(--ornament);margin-left:7px;display:inline}.paper-venue{color:var(--muted);margin-top:10px;font-size:.8125rem}.paper-summary{margin:14px 0;font-size:.9375rem;line-height:1.85}.education-entry{grid-template-columns:18px 1fr;gap:17px;padding-bottom:29px;display:grid;position:relative}.education-entry:last-child{padding-bottom:0}.education-track{position:relative}.education-track:after{content:"";background:var(--line);width:1px;position:absolute;top:15px;bottom:-6px;left:4px}.education-entry:last-child .education-track:after{display:none}.timeline-dot{z-index:1;background:var(--bg);border:1px solid #a5aeb8;border-radius:50%;width:9px;height:9px;display:block;position:relative;top:6px}.timeline-dot.current{box-shadow:0 0 0 4px var(--surface);background:#7e8da0;border-color:#7e8da0}.education-period{font-family:var(--mono);color:var(--muted);margin-bottom:8px;font-size:.75rem}.education-entry h3{letter-spacing:-.02em;font-size:1.125rem}.education-degree{margin-top:6px;font-size:.9375rem}.education-detail{color:var(--muted);margin-top:4px;font-size:.8125rem}.skill-group+.skill-group{margin-top:24px}.skill-group h3{letter-spacing:0;align-items:center;gap:8px;font-size:.875rem;font-weight:500;display:flex}.skill-group ul{flex-wrap:wrap;gap:7px;margin:12px 0 0;padding:0;list-style:none;display:flex}.skill-group li{font-family:var(--mono);border:1px solid var(--line);color:var(--text);background:#f4f4f1;border-radius:3px;padding:4px 9px;font-size:.75rem}.awards-list{gap:18px;margin:0;padding:0;list-style:none;display:grid}.awards-list li{color:var(--text);align-items:baseline;gap:14px;font-size:.9375rem;display:flex}.awards-list svg{color:var(--ornament);align-self:flex-start;margin-top:3px}.contact-section{padding:4px 0 0}.contact-section h2{margin:15px 0;font-size:2.5rem;font-weight:500}.contact-section>p:not(.eyebrow){max-width:400px;font-size:.9375rem}.contact-link{color:var(--accent);border-bottom:1px solid #b7c1cc;align-items:center;gap:16px;margin-top:23px;padding-bottom:5px;font-size:1.1875rem;display:inline-flex}.secondary-emails{margin-top:26px}.secondary-emails ul{margin:8px 0 0;padding:0;list-style:none}.secondary-emails .text-link{min-height:44px;font-size:.9375rem;font-weight:400}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (width>=1100px) and (height>=760px) and (prefers-reduced-motion:no-preference){.js .home-grid{grid-template-columns:288px minmax(0,1fr);align-items:start;column-gap:112px;padding-top:48px;display:grid}.js .content-column{width:100%;padding-top:calc(100svh + 96px)}.js .hero-notes{width:min(1120px,100% - 80px);font-family:var(--mono);color:var(--ornament);letter-spacing:.11em;opacity:var(--hero-opacity);pointer-events:none;justify-content:space-between;font-size:.6875rem;display:flex;position:absolute;top:30px;left:50%;transform:translate(-50%)}.js .scroll-cue{font-family:var(--mono);letter-spacing:.14em;color:var(--muted);opacity:var(--hero-opacity);align-items:center;gap:13px;font-size:.6875rem;display:flex;position:absolute;top:calc(100svh - 128px);left:50%;transform:translate(-50%)}.js .scroll-cue:hover{color:var(--accent)}}@media (width>=1600px){.js .home-grid{column-gap:140px}}@media (width<=1199px){.home-grid{margin-inline:40px}.js .home-grid{column-gap:64px}}@media (width<=1099px),(height<=759px){.home-grid{max-width:720px;margin:auto;padding:32px 28px 72px;display:block}.content-column{padding-top:56px!important}.hero-notes,.scroll-cue{display:none!important}.section{margin-bottom:40px;padding-bottom:40px}.intro-title{font-size:2.375rem}}@media (width<=699px){.home-grid{padding:24px 16px 56px}.content-column{padding-top:48px!important}.intro-title{font-size:2rem}.intro-section>p:not(.eyebrow){font-size:1rem;line-height:1.95}.section-kicker{margin-bottom:20px}.section-heading{gap:13px;margin-bottom:26px}.section-heading h2{font-size:1.5rem}.section-heading p{font-size:.8125rem}.intro-signoff{gap:9px}.intro-signoff .mono{font-size:.625rem}.interest{gap:14px}.interest h3{font-size:1.0625rem}.interest p{font-size:.875rem}.interest-symbol{font-size:1.25rem}.paper h3{font-size:1.1875rem}.paper-summary{font-size:.875rem}.paper-status{font-size:.625rem}.paper-venue{font-size:.75rem}.education-entry h3{font-size:1.0625rem}.education-degree{font-size:.875rem}.contact-section h2{font-size:2.25rem}.contact-link{font-size:1.125rem}.awards-list li{font-size:.875rem}}:root{--bg:#eeede8;--surface:#e5e5e0;--ink:#303943;--text:#535b64;--muted:#6f767c;--accent:#536781;--line:#d3d3cf;--ornament:#8e959b;--purple:#7c6b97;--mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;color-scheme:light;font-size:110%;font-family:var(--sans);color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;font-size:1.0625rem;line-height:1.7}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:2px}::selection{color:var(--ink);background:#dce2e9}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;font-weight:550;line-height:1.3}p{color:var(--text)}svg{vertical-align:middle;flex-shrink:0}img{max-width:100%;display:block}.mono,.eyebrow,.section-number{font-family:var(--mono)}.eyebrow{letter-spacing:.13em;color:var(--muted);font-size:.75rem;line-height:1.6}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:10px 20px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:14px}.site-header{z-index:20;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#eeede8f0;height:76px;position:sticky;top:0}.header-inner{align-items:center;gap:42px;max-width:1200px;height:100%;margin:auto;padding:0 40px;display:flex}.wordmark{align-items:center;gap:13px;margin-right:auto;display:flex}.brand-mark{font-family:var(--mono);letter-spacing:-3px;font-size:1.6875rem;font-weight:600;line-height:1}.brand-mark>span{color:var(--accent)}.brand-name{letter-spacing:-.02em;font-size:.9375rem;font-weight:550}.site-header nav{align-items:center;gap:30px;height:100%;display:flex}.nav-link{height:100%;color:var(--muted);white-space:nowrap;align-items:center;font-size:.875rem;transition:color .2s;display:flex;position:relative}.nav-link:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .2s;position:absolute;bottom:19px;left:0;right:0;transform:scaleX(0)}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}.language-switch{border-left:1px solid var(--line);min-height:44px;font-size:.8125rem;font-family:var(--mono);color:var(--muted);white-space:nowrap;align-items:center;gap:7px;padding:6px 0 6px 24px;display:flex}.language-switch .selected{color:var(--ink);font-weight:600}.language-divider{color:#a8adb0}.site-footer{border-top:1px solid var(--line);max-width:1120px;color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding:28px 0 32px;font-size:.8125rem;display:flex}.site-footer>div,.footer-signature,.site-footer>a{align-items:center;gap:10px;display:flex}.footer-dot,.status-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.site-footer>a:hover{color:var(--accent)}.footer-signature{font-family:var(--mono)}.text-link{color:var(--accent);align-items:center;gap:8px;font-size:.875rem;font-weight:550;display:inline-flex}.text-link svg,.profile-links svg:last-child,.contact-link svg{transition:transform .2s}.text-link:hover svg,.profile-links a:hover svg:last-child,.contact-link:hover svg{transform:translate(2px,-2px)}.text-link:hover{text-underline-offset:4px;text-decoration:underline}.collection-page{max-width:1000px;min-height:calc(100svh - 160px);margin:auto;padding:104px 40px 80px}.collection-path{letter-spacing:.03em;align-items:center;gap:10px;margin-bottom:24px;font-size:.875rem;display:flex}.collection-page h1{letter-spacing:-.05em;font-size:clamp(2.25rem,4.84vw,3.5rem);font-weight:500}.collection-description{margin-top:18px;font-size:1.125rem}.empty-state{text-align:center;border-block:1px solid var(--line);background:radial-gradient(ellipse at center, var(--surface) 0, transparent 65%);margin:64px 0 32px;padding:58px 24px 42px}.empty-art{color:var(--ornament);justify-content:center;align-items:center;gap:36px;margin-bottom:28px;display:flex}.empty-bracket{font-size:3.125rem;font-weight:200;font-family:var(--mono);color:#c2c5c7}.empty-state h2{font-size:1.4375rem;font-weight:500}.empty-state>p{margin-top:12px;font-size:1rem}.empty-status{color:var(--muted);align-items:center;gap:8px;margin-top:32px;font-size:.75rem;display:inline-flex}.return-link{margin-top:8px}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.reveal.revealed,.reveal:target{opacity:1;transform:none}@media (width>=1600px){.header-inner{max-width:1280px}.home-grid,.site-footer{max-width:1200px}}@media (width<=1199px){.site-footer{margin-inline:40px}}@media (width<=699px){body{font-size:1rem}.site-header{height:66px}.header-inner{gap:18px;padding:0 22px}.brand-name{display:none}.brand-mark{font-size:1.625rem}.site-header nav{gap:16px}.nav-link{font-size:.75rem}.nav-link:after{bottom:14px}.language-switch{gap:5px;padding-left:14px;font-size:.6875rem}.site-footer{flex-wrap:wrap;margin-inline:24px;padding:24px 0;font-size:.75rem}.footer-signature{display:none}.collection-page{padding:68px 24px 56px}.collection-description{max-width:30em;font-size:1rem}.empty-state{margin-top:44px;padding:44px 12px 36px}.empty-state h2{font-size:1.25rem}.empty-state>p{font-size:.9375rem}.collection-page h1{font-size:2.25rem}.collection-path{font-size:.8125rem}}@media (width<=370px){.header-inner{gap:12px;padding-inline:16px}.site-header nav{gap:10px}.language-switch{padding-left:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
