:root{--paper:#ffffff;--ink:#1a1a1a;--muted:#62666c;--accent:#285779;--accent-dark:#163a54;--accent-soft:#f0f2ff;--surface:#f8fafc;--line:#e7ecf2;--line-strong:#d8e0e9;--content-width:960px;--header-height:70px;--radius-sm:8px;--radius-md:3px;--radius-lg:3px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 28px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{text-decoration:none}a,button{color:inherit}button{font:inherit}img{display:block;max-width:100%}::selection{background:#dfeafb;color:var(--accent-dark)}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:8px 12px;border-radius:var(--radius-sm);background:var(--accent);color:white;font-weight:700;transform:translateY(-160%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.site-shell{min-height:100vh}.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(231,236,242,.9);background:#fff}.header-inner{position:relative;width:min(var(--content-width),calc(100% - 40px));min-height:var(--header-height);margin:0 auto;display:flex;align-items:center;gap:24px}.wordmark{display:inline-flex;align-items:baseline;color:var(--accent);white-space:nowrap}.wordmark strong{font-size:20px;font-weight:600;letter-spacing:-.02em}.main-nav{margin-left:auto;display:flex;align-self:stretch;align-items:center;gap:22px}.main-nav a{position:relative;display:inline-flex;height:100%;align-items:center;color:var(--muted);font-size:14px;font-weight:700;white-space:nowrap;transition:color .16s ease}.main-nav a.is-active,.main-nav a:focus-visible,.main-nav a:hover{color:var(--accent)}.main-nav a.is-active:after{position:absolute;right:0;bottom:13px;left:0;height:2px;background:var(--accent);content:""}.language-switcher{position:static;display:inline-flex;flex:0 0 auto;gap:2px;padding:0}.language-switcher,.language-switcher button{border:0;border-radius:999px;background:transparent}.language-switcher button{min-width:28px;padding:4px 6px;color:var(--muted);cursor:pointer;font-size:12px;font-weight:700;line-height:1.4}.language-switcher button[aria-pressed=true]{background:transparent;color:var(--accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.home-main{width:min(var(--content-width),calc(100% - 40px));margin:0 auto;padding:56px 0 72px}.profile-hero{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:50px}.portrait-frame{width:180px;height:230px;overflow:hidden;border-radius:var(--radius-lg);background:#eef3f7}.profile-photo{width:100%;height:100%;object-fit:cover;object-position:50% 38%}.identity-block h1{margin:0 0 5px;color:var(--ink);font-size:42px;font-weight:600;letter-spacing:-.045em;line-height:1.2}.position{margin:0;color:var(--muted);font-size:18px;line-height:1.45}.institution{margin:15px 0 0;color:var(--muted);font-size:17px;line-height:1.55}.institution a{transition:color .16s ease}.institution a:focus-visible,.institution a:hover{color:var(--accent)}.location{margin:8px 0 0;color:var(--muted);font-size:14px}.identity-links{margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;list-style:none}.identity-links a{display:inline-flex;align-items:center;min-height:36px;color:var(--accent);font-size:14px;text-decoration:underline;text-decoration-color:#b5c6d1;text-underline-offset:4px}.identity-links{gap:20px}.identity-links a:hover{text-decoration-color:currentColor}.content-section{margin-top:42px}.section-title{margin-bottom:19px;display:flex;align-items:center;gap:15px}.section-title:after{min-width:32px;height:1px;flex:1 1;background:var(--line);content:""}.section-title h2{margin:0;padding-left:0;color:var(--ink);font-size:23px;font-weight:600;letter-spacing:-.025em;line-height:1.7}.prose p,.section-intro{margin:0 0 15px;color:var(--ink);font-size:16px;line-height:1.72}.prose p:last-child,.section-intro:last-child{margin-bottom:0}.recruitment-note{margin-top:26px;padding:16px 0 0;border-top:1px solid var(--line)}.recruitment-note h3{margin:0 0 7px;color:var(--ink);font-size:16px;font-weight:600;line-height:1.5}.recruitment-note p{margin:0;color:var(--muted);font-size:15px;line-height:1.72}.recruitment-note .recruitment-contact{margin-top:7px}.recruitment-note a{color:var(--accent);font-weight:700}.recruitment-note a:focus-visible,.recruitment-note a:hover{text-decoration:underline;text-underline-offset:3px}.research-list{margin-top:25px}.research-list article{padding:0 0 20px}.research-list article:last-child{padding-bottom:0}.item-index{color:var(--accent);font-size:12px;font-weight:600;letter-spacing:.08em}.research-list h3{margin:-4px 0 4px;font-size:17px;font-weight:600;line-height:1.55}.research-list p{margin:0;color:var(--muted);font-size:15px;line-height:1.65}.publication-record{position:relative;display:grid;grid-template-columns:92px minmax(0,1fr);gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.publication-meta{display:flex;flex-direction:column;gap:2px}.publication-meta strong{color:var(--accent);font-size:17px;font-weight:600;line-height:1.4}.publication-meta span{color:var(--muted);font-size:12px;font-weight:700;line-height:1.45}.publication-copy h3{margin:0;font-size:17px;font-weight:600;line-height:1.48}.authors{margin:7px 0 0;color:var(--muted);font-size:13.5px;line-height:1.6}.publication-links{margin-top:9px;display:flex;flex-wrap:wrap;gap:16px}.paper-link{display:inline-flex;align-items:center;padding:0;color:var(--accent);font-size:13.5px;font-weight:700;line-height:1.5}.paper-link:focus-visible,.paper-link:hover{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.publication-footer{padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.publication-footer a{white-space:nowrap}.list-toggle,.publication-footer a{color:var(--accent);font-size:13.5px;font-weight:700}.list-toggle{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:5px 0;border:0;background:transparent;cursor:pointer;line-height:1.5}.list-toggle:focus-visible,.list-toggle:hover{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.updates-list{border-left:0}.updates-list article{display:grid;grid-template-columns:92px minmax(0,1fr);gap:20px;padding:0 0 14px}.updates-list article:last-child{padding-bottom:0}.updates-list time{color:var(--accent);font-size:12px;font-weight:600;letter-spacing:.04em}.updates-list p{margin:-4px 0 0;color:var(--ink);font-size:15px;line-height:1.6}.updates-list p a:focus-visible,.updates-list p a:hover{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.updates-toggle{margin:10px 0 0}.contact-panel{margin-top:58px;padding:24px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.contact-panel div{min-width:0}.contact-panel span{display:block;margin-bottom:4px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.contact-panel a,.contact-panel strong{color:var(--ink);font-size:13px;font-weight:700;overflow-wrap:anywhere}.profile-extra-links{margin:0;font-size:13px}.contact-panel a:focus-visible,.contact-panel a:hover{color:var(--accent)}.site-footer{width:min(var(--content-width),calc(100% - 40px));margin:0 auto;padding:26px 0 34px;border-top:1px solid var(--line);justify-content:space-between;gap:24px;color:var(--muted);font-size:12px}.site-footer,.site-footer div{display:flex;align-items:center}.site-footer div{gap:8px}.site-footer strong{color:var(--muted);font-weight:700}.site-footer p{margin:0}.site-footer>a{color:var(--accent);font-weight:700;white-space:nowrap}.article-main,.blog-main{width:min(var(--content-width),calc(100% - 40px));margin:0 auto}.blog-main{padding:80px 0 112px}.blog-intro{padding-bottom:34px;border-bottom:1px solid var(--line-strong)}.blog-intro h1{margin:0;color:var(--ink);font-size:44px;font-weight:600;letter-spacing:-.04em;line-height:1.2}.blog-intro p{max-width:620px;margin:12px 0 0;color:var(--muted);font-size:16px}.blog-archive{margin-top:47px}.blog-archive>h2{margin:0;color:var(--accent);font-size:16px;font-weight:600;line-height:1.5}.blog-entry{margin-top:13px;padding:27px 0 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.article-header time,.blog-entry time{color:var(--muted);font-size:13px;font-weight:700}.blog-entry h3{max-width:760px;margin:8px 0 9px;font-size:23px;font-weight:600;letter-spacing:-.02em;line-height:1.48}.blog-entry h3 a:focus-visible,.blog-entry h3 a:hover{color:var(--accent)}.blog-entry p{max-width:740px;margin:0;color:var(--muted);font-size:15px;line-height:1.72}.blog-back-link,.blog-read-link{display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-weight:700}.blog-read-link{margin-top:14px;font-size:14px}.blog-back-link:focus-visible,.blog-back-link:hover,.blog-read-link:focus-visible,.blog-read-link:hover{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.article-main{max-width:780px;padding:61px 0 118px}.blog-back-link{margin-bottom:45px;font-size:14px}.article-header{padding-bottom:30px;border-bottom:1px solid var(--line-strong)}.article-header h1{margin:12px 0 0;color:var(--ink);font-size:clamp(34px,5vw,48px);font-weight:600;letter-spacing:-.04em;line-height:1.3}.article-summary{padding:34px 0 4px}.article-summary p{margin:0 0 18px;color:var(--ink);font-size:17px;line-height:1.85}.article-full-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:14px;padding:9px 19px;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:14px;font-weight:600;transition:background .16s ease,color .16s ease}.article-full-link:focus-visible,.article-full-link:hover{background:var(--accent);color:white}.blog-footer{margin-top:0}a:focus-visible,button:focus-visible{outline:3px solid rgba(0,84,153,.26);outline-offset:3px}@media (max-width:1100px) and (min-width:821px){.language-switcher{position:static}.main-nav{gap:20px}}@media (max-width:820px){:root{--header-height:112px}.header-inner{min-height:auto;padding:14px 0 10px;flex-wrap:wrap;gap:10px 16px}.main-nav{order:3;width:100%;height:38px;margin-left:0;gap:24px;overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.main-nav a{height:38px;font-size:14px}.main-nav a.is-active:after{bottom:0}.language-switcher{position:static;margin-left:auto}.home-main{padding-top:56px}.profile-hero{grid-template-columns:160px minmax(0,1fr);gap:32px}.portrait-frame{width:160px;height:205px}.identity-block h1{font-size:40px}.institution,.position{font-size:17px}.identity-links{gap:7px}.identity-links a{padding:0;font-size:12px}.contact-panel{grid-template-columns:1fr 1fr}}@media (max-width:620px){.article-main,.blog-main,.header-inner,.home-main,.site-footer{width:min(100% - 28px,var(--content-width))}.blog-main{padding-top:55px}.blog-intro h1{font-size:38px}.blog-entry h3{font-size:21px}.article-main{padding-top:43px}.blog-back-link{margin-bottom:32px}.article-header h1{font-size:34px}.profile-hero{grid-template-columns:1fr;gap:24px}.portrait-frame{width:150px;height:188px}.identity-block h1{font-size:38px}.content-section{margin-top:48px}.section-title h2{font-size:22px}.publication-footer,.site-footer{align-items:flex-start;flex-direction:column}.publication-record{grid-template-columns:1fr;gap:9px;padding:22px 0}.publication-meta{flex-direction:row;align-items:baseline;gap:9px}.research-list article{padding-left:0}.updates-list article{grid-template-columns:72px minmax(0,1fr);gap:12px;padding-left:0}.contact-panel{grid-template-columns:1fr}.site-footer div{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}.service-group{margin-top:18px}.service-group h3{margin:0 0 5px;font-size:15px;font-weight:600}.service-list{margin:0;padding-left:22px;font-size:15px}.service-list li+li{margin-top:3px}.service-year{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.journal-service{margin:0;font-size:15px}.journal-service abbr{text-decoration:none}.publication-meta .accepted-status{color:#426448;font-weight:600}.authors strong{color:var(--ink);font-weight:600}.profile-extra-links span{display:inline}@media (max-width:820px){.main-nav{gap:22px}}@media (max-width:620px){.identity-links{gap:18px}}