:root{--bg: #fff;--text: #000;--muted: #000;--border: #d8d8d8;--profile-link: #0969da;--opportunity: #c62828;--line-height: 1.65}html[data-theme="dark"]{--bg: #000;--text: #fff;--muted: #fff;--border: #333;--profile-link: #58a6ff;--opportunity: #ff6b6b}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px;font-size:18px}body{margin:0;padding-top:60px;color:var(--text);background:var(--bg);font-family:"Lato", "Microsoft YaHei", "PingFang SC", sans-serif;font-size:1rem;line-height:var(--line-height)}button,input,textarea,select{font:inherit}a{color:var(--profile-link);text-decoration:none}a:hover{text-decoration:underline;opacity:1}h1,h2,h3,p,ul,dl{margin-top:0}h1,h2,h3{line-height:var(--line-height)}h1{font-weight:700}h2,h3,strong,b{font-weight:400}:focus-visible{outline:3px solid var(--text);outline-offset:4px}[hidden]{display:none !important}.masthead{position:fixed;inset:0 0 auto;z-index:20;height:60px;background:var(--bg);border-bottom:1px solid var(--border)}.masthead__inner{position:relative;display:flex;align-items:center;width:min(1160px, 100%);height:100%;margin:0 auto;padding:0 30px}.nav-links,.mobile-menu{display:flex;align-items:center;gap:2rem;margin:0;padding:0;list-style:none}.nav-links a,.mobile-menu a{color:var(--text);font-size:0.9rem;text-decoration:none}.nav-links a:hover,.mobile-menu a:hover{color:var(--profile-link);text-decoration:none}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:0;color:var(--text);background:transparent;cursor:pointer;line-height:1}.theme-icon,.menu-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.theme-icon img,.menu-icon img{display:block;width:100%;height:100%;object-fit:contain}.theme-icon img,.menu-icon img{filter:none}html[data-theme="dark"] .theme-icon img,html[data-theme="dark"] .menu-icon img{filter:invert(1)}html[data-theme="dark"] .theme-icon__sun,html:not([data-theme="dark"]) .theme-icon__moon{display:none}.menu-toggle{display:none}.mobile-menu{position:absolute;top:calc(100% + 1px);right:22px;display:none;width:180px;padding:0.75rem;border:1px solid var(--border);background:var(--bg);flex-direction:column;align-items:stretch;gap:0}.mobile-menu a{display:block;padding:0.55rem 0.7rem}.skip-link{position:fixed;top:-100px;left:1rem;z-index:100;padding:0.65rem 1rem;color:var(--profile-link);background:var(--bg);border:1px solid var(--profile-link)}.skip-link:focus{top:0.5rem}.profile-layout{width:min(960px, 100%);margin:0 auto;padding:3.2rem 30px 0}.profile-overview{display:grid;grid-template-columns:210px minmax(0, 1fr);align-items:start;gap:1.5rem;margin-bottom:1.25rem}.profile-photo{display:block;width:210px;height:252px;margin-top:1.5rem;overflow:hidden;border-radius:4px}.profile-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 34%}.profile-identity{min-width:0}.profile-name{margin-bottom:0.35rem;font-size:1.8rem;font-weight:400}.profile-chinese-name{margin:-0.1rem 0 0.65rem;color:var(--muted);font-family:"Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif;font-size:1rem;font-weight:400}.profile-bio{max-width:620px;margin:0.8rem 0 0;font-size:0.98rem;line-height:var(--line-height)}.profile-links{display:flex;flex-wrap:wrap;gap:0.5rem 1.25rem;margin-top:0.45rem;font-size:0.95rem}.profile-links a{display:inline-flex;gap:0.45rem;color:var(--profile-link);text-decoration:none}.profile-links a:hover{text-decoration:underline}.opportunity-note{margin:0;color:var(--opportunity);font-size:1rem;line-height:var(--line-height)}.profile-content{min-width:0;font-size:1rem}.profile-content p{margin-bottom:1rem}.profile-section{margin-top:3.4rem}.section-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0.5rem 1rem;margin-bottom:1.15rem}.section-heading h2{margin:0;font-size:1.45rem;font-weight:700}.eyebrow{color:var(--text);font-size:0.8rem;font-weight:400;letter-spacing:0.1em;text-transform:uppercase}.project-entry,.education-entry,.recognition-list li{display:grid;grid-template-columns:145px minmax(0, 1fr);align-items:baseline;gap:1.25rem}.project-entry{padding:1.3rem 0}.project-entry:first-child{padding-top:0.35rem}.project-entry:last-child{padding-bottom:0}.entry-date{font-size:1rem}.entry-content{min-width:0}.entry-title{margin:0 0 0.75rem;font-size:1.12rem;font-weight:400}.project-entry p{margin-bottom:0.75rem}.entry-summary{line-height:var(--line-height)}.text-link{display:inline;margin:0;font-size:inherit;font-weight:400}.muted{color:var(--muted)}.skills-list{margin:0}.skills-list div{display:grid;grid-template-columns:155px 1fr;gap:1rem;margin-bottom:0.85rem}.skills-list dt{font-weight:400}.skills-list dd{margin:0}.recognition-list{margin:0;padding:0;list-style:none}.recognition-list li{padding:0.16rem 0;font-size:1rem;line-height:var(--line-height)}.page-footer{display:flex;justify-content:space-between;width:min(960px, calc(100% - 60px));margin:5rem auto 0;padding:1.5rem 0 2.5rem;color:var(--muted);font-size:0.88rem}.page-footer p{margin:0}.page-footer a{color:var(--profile-link)}.not-found{width:min(720px, calc(100% - 44px));min-height:65vh;margin:0 auto;padding-top:5rem}.not-found h1{font-size:2.2rem}@media (max-width: 900px){.profile-layout{padding-right:24px;padding-left:24px}.profile-overview{grid-template-columns:175px minmax(0, 1fr)}.profile-photo{width:175px;height:210px}}@media (max-width: 650px){html{scroll-padding-top:75px;font-size:16px}.masthead__inner{padding:0 15px}.nav-links{width:100%;gap:0.8rem}.nav-links a{font-size:0.82rem}.nav-links li:nth-last-child(2){margin-left:auto}.nav-links>.nav-link{display:none !important}.menu-toggle{display:inline-grid}.mobile-menu:not([hidden]){display:flex}.profile-layout{padding:2rem 22px 0}.profile-overview{grid-template-columns:114px minmax(0, 1fr);gap:1rem;margin-bottom:1.25rem}.profile-photo{width:114px;height:143px}.profile-name{margin-bottom:0;font-size:1.45rem}.profile-bio{margin-top:0.55rem;font-size:0.95rem}.profile-links{gap:0.35rem;font-size:0.82rem}.profile-content{font-size:1rem}.profile-section{margin-top:2.7rem}.section-heading h2{font-size:1.4rem}.project-entry,.education-entry,.recognition-list li{grid-template-columns:115px minmax(0, 1fr);gap:0.75rem}.skills-list div{grid-template-columns:1fr;gap:0.2rem}.page-footer{display:block;width:calc(100% - 44px)}.page-footer p+p{margin-top:0.4rem}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none !important}}
