:root{font-family:PingFang SC,Microsoft YaHei,sans-serif;color:#202c49;background:#f1f3f9;font-synthesis:none;font-size:16px;line-height:1.75;--ink: #202c49;--muted: #66728a;--blue: #3457bf;--line: #e0e5f0;--paper: #fff;--serif: "Songti SC","STSong","SimSun",serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit;border:0}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}::selection{background:#dae4ff}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a481db;outline-offset:5px;border-radius:4px}main:focus{outline:none}[id]{scroll-margin-top:100px}.skip-link{position:fixed;top:8px;left:12px;transform:translateY(-160%);z-index:100;padding:10px 20px;background:var(--ink);color:#fff}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:40;background:#ffffffed;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid #e4e8f1}.header-inner{height:76px;max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.wordmark{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700}.wordmark-note{display:block;font-size:10px;font-weight:400;color:var(--muted);letter-spacing:1px;line-height:1.5}.stone-mark{width:32px;height:32px;position:relative;display:block;flex-shrink:0}.stone-mark i{position:absolute;width:14px;height:14px;border-radius:4px 1px;background:var(--blue)}.stone-mark i:first-child{top:0;left:9px}.stone-mark i:nth-child(2){bottom:0;left:1px;background:#7292d8}.stone-mark i:nth-child(3){bottom:0;right:0;background:#a5ace3}.header-links{display:flex;gap:32px;font-size:13px;color:#53617a}.header-links a{min-height:44px;display:flex;align-items:center}.header-links a:hover{color:var(--blue)}.header-end{display:flex;align-items:center;gap:15px}.header-resume{display:flex;align-items:center;justify-content:center;gap:9px;background:#eaf0ff;color:var(--blue);border-radius:7px;min-height:42px;padding:9px 17px;font-size:12px;font-weight:600}.menu-toggle{display:none;background:transparent;width:44px;height:44px;align-items:center;justify-content:center}.mobile-directory{display:none}.reading-progress{position:absolute;height:2px;bottom:-1px;left:0;background:#7192dd;pointer-events:none}.profile-cover{max-width:1320px;margin:32px auto 0;border-radius:20px;background:#2e4fba;color:#fff;display:grid;grid-template-columns:1fr 270px;gap:0 70px;padding:44px 62px 0;position:relative;overflow:hidden;isolation:isolate}.cover-copy{position:relative;z-index:2;padding-bottom:32px}.graduate-status{display:inline-flex;align-items:center;gap:9px;font-size:12px;color:#e1e9ff}.graduate-status>span{width:7px;height:7px;border-radius:50%;background:#bde4d5;box-shadow:0 0 0 4px #bde4d51c}.cover-name{display:flex;align-items:baseline;gap:23px;margin:14px 0 17px}.cover-name h1{font-size:66px;font-weight:700;letter-spacing:4px;line-height:1.28}.cover-name>span{font-size:23px;font-weight:350;letter-spacing:.4px;color:#e1e7ff}.cover-education{font-size:16px;line-height:1.9;color:#fff}.cover-intro{font-size:13px;line-height:1.9;max-width:600px;color:#d7e2ff;margin-top:16px}.cover-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:45px;padding:11px 21px;border-radius:7px;font-size:13px;font-weight:600;line-height:1.5;transition:background .18s,box-shadow .18s}.button-light{background:#fff;color:var(--blue);box-shadow:0 3px 9px #14266412}.button-light:hover{background:#e5edff}.button-outline{border:1px solid #ffffff60;color:#fff;background:#ffffff08}.button-outline:hover{background:#ffffff18}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:#254295;box-shadow:0 5px 15px #3457bf25}.cover-about{font-size:12px;display:flex;align-items:center;gap:6px;color:#e1e7ff;padding:10px;margin-left:5px}.cover-about:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}.cover-portrait{position:relative;z-index:2;align-self:center;padding:0 15px 15px}.portrait-frame{position:relative;padding:9px;background:#ffffffed;border-radius:12px 12px 50px;transform:rotate(3deg);box-shadow:16px 18px #153da44a}.portrait-frame:after{content:"";width:68px;height:24px;background:#d4e2ffb8;position:absolute;top:-9px;left:calc(50% - 34px);transform:rotate(-7deg)}.portrait-frame img{width:100%;height:245px;object-fit:cover;object-position:50% 30%;border-radius:6px 6px 42px}.portrait-caption{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;color:#e3eaff;margin-top:24px}.cover-pattern{position:absolute;right:-30px;top:-80px;width:510px;height:480px;z-index:-1;transform:rotate(-12deg)}.cover-pattern i{width:240px;height:240px;border:1px solid #ffffff23;background:#ffffff04;position:absolute;border-radius:46px 8px}.cover-pattern i:first-child{left:145px;top:0}.cover-pattern i:nth-child(2){left:0;bottom:0}.cover-pattern i:nth-child(3){right:0;bottom:0}.cover-footer{grid-column:1/-1;display:flex;align-items:center;gap:23px;border-top:1px solid #ffffff29;min-height:65px}.cover-footer>span{font-size:11px;color:#cfdbfc;flex-shrink:0}.cover-footer>div{display:flex;flex-wrap:wrap;gap:12px 26px;font-size:12px;font-weight:500}.cover-footer>a{margin-left:auto;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0b}.cover-footer>a:hover{background:#ffffff20}.resume-shell{max-width:1320px;margin:36px auto 0;display:grid;grid-template-columns:194px minmax(0,1fr);gap:36px;align-items:start}.profile-rail{position:sticky;top:106px;padding:12px 0;max-height:calc(100dvh - 122px);overflow-y:auto;scrollbar-width:thin}.rail-heading{display:flex;align-items:center;gap:11px;font-size:14px;font-weight:650;margin:0 0 21px}.rail-heading .stone-mark{transform:scale(.63);transform-origin:left center;width:23px}.rail-nav{display:flex;flex-direction:column;gap:6px}.rail-nav a{padding:11px 15px;border-radius:7px;font-size:13px;color:#66728a;display:flex;align-items:center;justify-content:space-between;transition:background .15s}.rail-nav svg{opacity:0}.rail-nav a:hover{background:#e5eaf7;color:var(--blue)}.rail-nav a[aria-current]{background:#dfe7fb;color:var(--blue);font-weight:650}.rail-nav a[aria-current] svg{opacity:1}.rail-note{margin:24px 0 19px;padding:22px 12px 0;border-top:1px solid #d9e1ef;font-size:12px;color:var(--muted)}.rail-note strong{display:block;color:var(--ink);font-size:12px;margin-bottom:8px}.rail-note span{display:block}.rail-actions{display:flex;flex-direction:column;gap:7px}.rail-actions>.button{font-size:12px;padding:11px 13px}.rail-actions>.text-link{justify-content:center}.resume-updated{display:block;font-size:10px;color:#66728a;margin:18px 0;text-align:center}.resume-main{min-width:0}.resume-section{padding:34px 38px;background:#fff;border:1px solid #e4e8f1;border-radius:14px;margin-bottom:26px;box-shadow:0 3px 18px #24386003}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.section-heading>div{display:flex;align-items:center;gap:14px}.section-heading h2{font-size:23px;letter-spacing:.6px;font-weight:650}.section-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:12px;background:#e8edfc;color:var(--blue)}.section-heading>span{font-size:11px;color:var(--muted)}.education-section{padding:0;background:transparent;border:0;box-shadow:none}.education-section>.section-heading{padding:9px 0 0;margin-bottom:22px}.education-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.education-entry{background:#e6edf9;border:1px solid #dbe4f5;border-radius:12px;padding:27px 28px}.education-entry:nth-child(2){background:#eeebf7;border-color:#e5dff2}.school-heading{display:flex;align-items:center;gap:12px}.school-heading h3{font-size:23px;font-weight:650}.school-badge{font-size:10px;color:var(--blue);border:1px solid #bdcceb;border-radius:4px;padding:0 5px;line-height:1.65}.entry-role{color:var(--blue);font-size:14px;margin:8px 0 15px;line-height:1.8}.entry-role>span{display:inline-block;margin-left:14px;padding-left:14px;border-left:1px solid #ccd6e8;color:var(--muted);font-size:12px;line-height:1.4}.education-entry .entry-role{margin:8px 0}.education-entry .entry-role span{display:block;margin:4px 0 0;padding:0;border:0}.date{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.education-detail{font-size:13px;margin-top:18px;line-height:1.9;color:#435574}.education-courses{margin-top:16px;padding-top:15px;border-top:1px solid #cbd6e680}.education-courses strong{font-size:11px;font-weight:650;color:#455a7d}.education-courses p{font-size:12px;color:#5a6883;line-height:1.9;margin-top:5px}.entry-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.entry-heading h3{font-size:19px;line-height:1.65;font-weight:650}.entry-heading .date{flex-shrink:0}.company-tag{display:inline-block;font-size:11px;background:#edf1fa;color:#3457bf;border-radius:4px;padding:3px 9px;margin-bottom:10px}.company-dramabox{background:#eee9f8;color:#765a9d}.company-research-institute{background:#e6f2ed;color:#367263}.company-hunan-tv{background:#fff0df;color:#9a601c}.company-hunan-daily{background:#f9e9ee;color:#985c6d}.experience-entry{position:relative;padding:0 0 30px 25px;margin:0 0 30px 4px;border-bottom:1px solid #e7ebf2;border-left:1px solid #dce4f0}.experience-entry:before{content:"";position:absolute;left:-5px;top:11px;width:9px;height:9px;border-radius:50%;background:#6985c9;box-shadow:0 0 0 5px #fff}.experience-entry:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.resume-points{list-style:none;padding:0;margin:16px 0 0}.resume-points li{margin:16px 0 0}.resume-points li>strong{display:block;font-size:14px;color:#293f67;font-weight:650;line-height:1.8;margin-bottom:5px}.resume-points li>p{font-size:14px;line-height:1.95;color:#53617a;overflow-wrap:break-word}.supplemental-points{padding:13px 17px;border-radius:7px;background:#f5f7fb;margin-top:20px}.supplemental-points li{margin:0}.supplemental-points li+li{margin-top:12px}.supplemental-points li>strong{font-size:12px}.supplemental-points li>p{font-size:13px;color:#61708a}.text-link{display:inline-flex;align-items:center;gap:7px;min-height:40px;font-size:13px;font-weight:550;color:var(--blue)}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.case-link{margin-top:15px;padding:0 13px;border:1px solid #dce5f6;border-radius:5px;background:#f9fbff}.case-link:hover{background:#edf2fc;text-decoration:none}.project-entry{margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid #e7ebf2}.project-entry:last-child{margin-bottom:0;border:0}.project-heading{display:grid;grid-template-columns:174px minmax(0,1fr);gap:25px;align-items:center;background:#f1f4fb;padding:20px;border-radius:10px}.project-entry:nth-child(2) .project-heading{background:#f2eef9}.project-entry:nth-child(3) .project-heading{background:#edf5f2}.project-image{background:#fff;border:1px solid #dfe5ef;border-radius:6px;aspect-ratio:4/3;overflow:hidden;box-shadow:0 6px 12px #253a6110;transition:transform .18s}.project-image:hover{transform:translateY(-3px)}.project-image img{width:100%;height:100%;object-fit:cover;object-position:top}.project-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:#63748e;margin-bottom:7px}.project-meta>span:first-child{color:var(--blue);font-weight:550}.project-copy h3{font-size:18px;line-height:1.7;font-weight:650}.project-copy h3 a:hover{color:var(--blue)}.project-copy .date{display:block;margin:7px 0}.project-copy .text-link{font-size:12px;min-height:34px}.project-entry>.resume-points{padding:0 4px}.project-entry>.supplemental-points{padding:13px 17px}.all-works{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 25px;border:1px dashed #b9c9ed;background:#f3f6ff;border-radius:8px;color:var(--blue)}.all-works strong{display:block;font-size:15px;font-weight:600}.all-works span{font-size:12px;color:var(--muted);display:block;margin-top:4px}.all-works:hover{background:#e9effd}.campus-section .section-icon{background:#e2f1eb;color:#357969}.research-entry+.research-entry{margin-top:30px;padding-top:27px;border-top:1px solid var(--line)}.research-entry>.text-link{margin-top:15px}.skills-section .section-icon{background:#eeebfa;color:#7959a6}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.skill-entry{padding:23px;background:#f0f3fb;border-radius:9px;border:1px solid #e4e9f5}.skill-entry:nth-child(2){background:#f1edf7;border-color:#e9e1f0}.skill-entry:nth-child(3){grid-column:1/-1;display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:15px;background:#edf4f1;border-color:#e0ece6}.skill-entry h3{font-size:15px;font-weight:650;margin-bottom:12px}.skill-entry p{font-size:14px;color:#53617a;line-height:1.95}.skill-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:17px}.skill-tags span{font-size:10px;line-height:1.8;background:#ffffffa8;border:1px solid #ffffff;border-radius:4px;padding:3px 8px;color:#536384}.skill-entry:nth-child(3) h3,.skill-entry:nth-child(3) .skill-tags{margin:0}.additional-skills{padding:25px 0 13px}.additional-skills h3{font-size:14px;font-weight:600}.additional-skills ul{list-style:none;display:flex;flex-wrap:wrap;gap:9px 18px;padding:0;margin:13px 0;font-size:12px;color:var(--muted)}.additional-skills li:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:#8496b3;vertical-align:middle;margin-right:8px}.honors-section .section-icon{background:#fff0da;color:#a17531}.honor-summary{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.honor-summary li{display:flex;align-items:baseline;gap:10px;font-size:13px;color:#53617a;line-height:1.9}.honor-summary svg{align-self:flex-start;margin-top:5px;color:#ad844a}.certificate-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:28px 0 17px}.certificate-strip a>div{aspect-ratio:4/3;background:#f2f1ec;border:1px solid #e7e6df;padding:10px;border-radius:5px}.certificate-strip img{width:100%;height:100%;object-fit:contain}.certificate-strip a>span{font-size:11px;color:var(--muted);display:block;margin-top:9px;line-height:1.65}.certificate-strip a:hover>span{color:var(--blue)}.contact-section{position:relative;background:#202f55;border-radius:14px;color:#fff;padding:34px 38px;overflow:hidden}.contact-intro h2{font-size:29px;font-weight:600;letter-spacing:.4px}.contact-intro>p:last-child{font-size:13px;color:#c5cee1;margin-top:9px}.contact-section .section-kicker{color:#adbee5;font-size:11px;margin-bottom:9px}.contact-details{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}.contact-row{display:flex;align-items:center;gap:13px;min-width:0;padding:11px 0;border-bottom:1px solid #ffffff20}.contact-row>div{flex:1;min-width:0;font-size:15px;overflow-wrap:anywhere}.contact-row>svg{color:#bbcbee;width:22px;height:22px}.contact-label{display:block;font-size:11px;color:#b3c1de;margin-bottom:2px}.contact-value{-webkit-user-select:all;user-select:all}.contact-row a:hover{text-decoration:underline}.wechat-icon{width:22px;height:22px;flex-shrink:0;filter:brightness(0) invert(1);opacity:.85}.icon-button{background:transparent;width:44px;height:44px;flex-shrink:0;border-radius:5px;display:flex;align-items:center;justify-content:center;color:#b9c7e4}.icon-button:hover{background:#ffffff15;color:#fff}.copy-status{font-size:12px;min-height:24px;margin:10px 0;color:#d4e2ff}.contact-section>.button{background:#e7eeff;color:#253f82}.contact-section>.button:hover{background:#fff}.button-file{font-size:10px;padding-left:10px;border-left:1px solid #adbee1}.site-footer{max-width:1320px;margin:42px auto 0;padding:0 0 35px;display:flex;align-items:center;justify-content:space-between;gap:25px}.site-footer .wordmark{font-size:16px}.site-footer>span{font-size:11px;color:var(--muted)}.site-footer>a:last-child{font-size:12px;display:flex;align-items:center;gap:7px;color:var(--muted)}.mobile-actions{display:none}.detail-main{min-height:70vh}.detail-article{margin:0 auto;background:#fff;border:1px solid #e0e6ed}.back-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);min-height:36px;margin-bottom:30px}.back-link:hover{color:var(--blue)}.detail-heading h1{line-height:1.5;font-weight:650;letter-spacing:-.5px}.detail-lead{color:var(--muted);line-height:1.9;margin-top:20px}.detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.detail-tags span{font-size:11px;color:var(--blue);padding:3px 9px;background:#edf3f8;border-radius:3px}.detail-cover{margin:30px 0;border:1px solid var(--line);background:#f4f6f8}.detail-cover img{width:100%;height:auto;max-height:470px;object-fit:contain}.detail-stats{display:flex;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0 35px;gap:22px}.detail-stats>div{flex:1;min-width:160px}.detail-stats strong{font-size:27px;color:var(--blue);font-weight:600;line-height:1.5}.detail-stats p{font-size:12px;color:var(--muted);margin-top:6px}.detail-section{margin-top:34px}.detail-section h2{font-weight:650;margin-bottom:16px}.detail-section p{color:#53657a;line-height:2;margin:12px 0}.detail-section strong{font-weight:600;color:var(--ink)}.detail-section blockquote{border-left:3px solid #7293bb;margin:22px 0;padding:12px 20px;background:#f3f6fa;font-size:15px;line-height:1.9;color:#3f5876}.detail-section ul{padding-left:20px;color:#53657a;line-height:2}.detail-section li{padding-left:4px;margin:8px 0}.workflow{background:#edf3f8;padding:24px;margin-top:25px;border-radius:5px}.workflow h3{font-size:15px;margin-bottom:20px;font-weight:600}.workflow ol{display:flex;gap:18px;list-style:none;counter-reset:steps;padding:0;margin:0}.workflow li{counter-increment:steps;font-size:12px;flex:1;position:relative;padding:0;margin:0;line-height:1.8}.workflow li:before{content:counter(steps);display:flex;align-items:center;justify-content:center;width:25px;height:25px;background:#dce7f3;color:var(--blue);border-radius:50%;margin-bottom:9px}.workflow li:not(:last-child):after{content:"";position:absolute;left:34px;right:0;top:12px;height:1px;background:#c6d6e7}.workflow figcaption{font-size:10px;color:var(--muted);margin-top:22px}.solution-figure{margin:30px 0}.solution-figure img{margin:auto;max-height:620px;object-fit:contain;border:1px solid var(--line)}.solution-figure figcaption{display:flex;flex-direction:column;gap:4px;margin-top:14px;font-size:12px;color:var(--muted)}.solution-figure figcaption small{font-size:10px}.reflection{background:#f5f7fa;padding:23px 27px;border-radius:4px}.reflection h2{font-size:18px}.demo-panel{padding:24px 0;margin-top:30px;display:flex;justify-content:space-between;align-items:center;gap:25px}.demo-panel h2{font-size:17px}.demo-panel p{font-size:12px;color:var(--muted);margin-top:7px}.demo-panel .button{flex-shrink:0}.detail-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;margin-top:25px;gap:20px}.data-note{font-size:11px;color:var(--muted)}.filter-list{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.filter-list button{font-size:12px;background:#edf2f7;padding:10px 15px;min-height:44px}.filter-list button[aria-pressed=true]{color:#fff}.works-list{margin-top:28px}.work-item{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;border-top:1px solid var(--line)}.work-image{aspect-ratio:4/3;border:1px solid var(--line);background:#eef3f8;overflow:hidden}.work-image img{width:100%;height:100%;object-fit:cover;object-position:top}.work-symbol{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;color:#6580a0}.work-symbol span{font-size:12px}.work-item h2{font-size:18px;font-weight:650;line-height:1.6}.work-item p{font-size:13px;color:var(--muted);line-height:1.9;margin:8px 0}.work-item:hover h2{color:var(--blue)}.work-item .section-kicker{font-size:11px;display:block;margin-bottom:5px}.honors-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.honor-card{border:1px solid var(--line);overflow:hidden}.honor-image{height:200px;padding:16px}.honor-image img{width:100%;height:100%;object-fit:contain}.honor-card-copy{padding:20px}.honor-meta{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted);margin-bottom:9px}.honor-card h2{font-size:15px;line-height:1.7}.honor-card p{font-size:11px;color:var(--muted);margin:8px 0}.honor-description{margin:30px 0;font-size:14px;color:var(--muted);line-height:1.9}.certificate{margin-top:30px}.certificate img{width:100%;height:auto}.certificate figcaption{margin-top:18px;text-align:center}.not-found h1{font-size:30px}.not-found p{margin-bottom:20px}.not-found .button{margin-top:15px}.detail-main{padding:35px 24px}.detail-article{max-width:1040px;padding:38px 64px 45px;border-radius:14px;border-color:#e1e7f1;box-shadow:0 8px 30px #22345304}.detail-heading{position:relative;background:#edf1fd;border-radius:10px;padding:28px;margin:0 -12px 28px;border-left:4px solid #5274cb}.detail-heading h1{font-size:31px}.detail-lead{font-size:15px}.detail-stats{background:#f2f5fc;padding:24px;border:0;border-radius:9px}.detail-section h2{font-size:22px}.detail-section p,.detail-section ul{font-size:15px}.detail-section>p>strong:first-child{display:block}.filter-list button{border-radius:6px}.filter-list button[aria-pressed=true]{background:var(--blue)}.honor-card{border-radius:9px;transition:box-shadow .18s,transform .18s}.honor-card:hover{box-shadow:0 8px 22px #20324a0b;transform:translateY(-2px)}.honor-image{background:#f0f2f8}.work-image{border-radius:7px}.work-item{padding:27px 0}.capabilities-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.capabilities-grid>div{padding:24px;background:#f0f3fb;border-radius:9px}.capabilities-grid svg{color:var(--blue);margin-bottom:13px}.capabilities-grid h3{font-size:17px}.about-story p{margin-bottom:22px}.capabilities-grid p{font-size:14px}.project-insights figure{margin:0 0 22px}.project-insights figcaption{color:var(--muted);font-size:13px;padding-left:20px}@media(max-width:1400px){.header-inner,.profile-cover,.resume-shell,.site-footer{margin-left:40px;margin-right:40px}.profile-cover{padding-left:46px;padding-right:46px;gap:0 50px;grid-template-columns:1fr 245px}.resume-shell{grid-template-columns:176px minmax(0,1fr);gap:28px}.resume-section{padding:30px}.education-section{padding:0}.contact-section{padding:32px}.entry-heading h3{font-size:18px}.entry-heading{gap:15px}.entry-heading .date{font-size:11px}.project-heading{grid-template-columns:154px minmax(0,1fr)}}@media(max-width:1100px){.header-inner{margin:0 28px}.header-links{gap:20px}.profile-cover{margin:26px 28px 0;padding:34px 35px 0;grid-template-columns:1fr 200px;gap:0 26px}.cover-name{gap:16px}.cover-name h1{font-size:54px}.cover-name>span{font-size:19px}.cover-portrait{padding:0 4px 16px}.portrait-frame img{height:224px}.cover-intro{max-width:460px}.cover-footer>div{gap:9px 17px;font-size:11px}.resume-shell{margin:28px 28px 0;display:block}.profile-rail{display:none}.resume-section{padding:32px}.education-section{padding:0}.education-list{gap:22px}.education-entry{padding:25px}.entry-heading h3{font-size:20px}.entry-heading .date{font-size:12px}.resume-points li>p{font-size:15px}.supplemental-points li>p{font-size:14px}.entry-role{font-size:15px}.menu-toggle{display:flex}.mobile-directory{display:block;position:fixed;right:28px;top:76px;background:#fff;z-index:50;padding:18px;border:1px solid var(--line);border-radius:0 0 12px 12px;box-shadow:0 18px 35px #20324a18;max-height:calc(100dvh - 95px);overflow:auto}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;gap:45px;font-size:14px;padding:8px 14px;min-height:44px;border-radius:5px}.mobile-nav a[aria-current]{background:#eaf0fc;color:var(--blue)}.mobile-nav svg{color:#8795b1}.mobile-secondary{display:flex;gap:18px;font-size:12px;padding:13px 14px 0;margin-top:12px;border-top:1px solid var(--line);color:var(--muted)}.mobile-secondary a{min-height:40px;display:flex;align-items:center}.site-footer{margin-left:28px;margin-right:28px}.detail-article{padding:30px 40px}.detail-heading{margin-left:0;margin-right:0}}@media(max-width:760px){.header-inner{height:66px;margin:0 22px}.header-links{display:none}.profile-cover{margin:20px 20px 0;padding:30px 29px 0;grid-template-columns:1fr 155px;gap:0 20px;border-radius:15px}.cover-name{display:block;margin:12px 0 15px}.cover-name h1{font-size:47px}.cover-name>span{display:block;font-size:18px;margin-top:7px}.cover-education{font-size:14px}.cover-intro{font-size:13px;max-width:430px}.cover-actions{gap:9px;margin-top:20px}.cover-actions .button{font-size:12px;padding:11px 13px}.cover-about{margin-left:0;padding-left:0}.cover-portrait{align-self:start;margin-top:30px}.portrait-frame{padding:6px;border-radius:8px 8px 32px;box-shadow:9px 12px #153da44a}.portrait-frame img{height:172px;border-radius:4px 4px 27px}.portrait-caption{font-size:10px}.cover-footer{gap:15px;padding:14px 0}.cover-footer>div{gap:8px 14px;font-size:10px}.cover-footer>a{flex-shrink:0;width:34px;height:34px}.resume-shell{margin:25px 20px 0}.resume-section{padding:27px 25px;margin-bottom:20px}.education-section{padding:0}.education-list{gap:15px}.education-entry{padding:22px}.school-heading{gap:8px}.school-heading h3{font-size:20px}.education-detail{font-size:13px}.section-heading h2{font-size:22px}.section-heading>span{display:none}.entry-heading{display:block}.entry-heading .date{display:block;margin-top:7px}.entry-role>span{font-size:12px}.entry-heading h3{font-size:19px}.experience-entry{padding-left:20px}.project-heading{grid-template-columns:135px minmax(0,1fr);gap:20px;padding:18px}.project-copy h3{font-size:17px}.skills-grid{gap:15px}.skill-entry{padding:20px}.skill-entry:nth-child(3){display:block}.skill-entry:nth-child(3) h3{margin-bottom:10px}.skill-entry:nth-child(3) .skill-tags{margin-top:13px}.honor-summary{grid-template-columns:1fr;gap:12px}.certificate-strip{grid-template-columns:1fr 1fr;gap:18px}.contact-section{padding:30px}.contact-details{grid-template-columns:1fr}.mobile-directory{top:66px;right:20px}.site-footer{margin:30px 22px 0}.site-footer .wordmark{display:none}.detail-main{padding:20px}.detail-article{padding:25px}.detail-heading{padding:22px}.detail-heading h1{font-size:27px}}@media(max-width:480px){.header-inner{margin:0 18px;height:62px;gap:12px}.wordmark{font-size:16px;gap:8px}.wordmark-note{font-size:9px;letter-spacing:.5px}.stone-mark{transform:scale(.85);transform-origin:left center;width:29px}.header-resume{font-size:11px;padding:8px 11px;min-height:38px;gap:6px}.header-resume svg{width:14px}.header-end{gap:5px}.menu-toggle{width:38px}.profile-cover{margin:14px 14px 0;padding:26px 22px 0;grid-template-columns:minmax(0,1fr) 100px;gap:0 13px;border-radius:13px}.cover-copy{display:contents}.graduate-status{grid-column:1/-1;font-size:11px;margin-bottom:15px}.cover-name{grid-column:1;grid-row:2;margin:0 0 13px}.cover-name h1{font-size:44px;letter-spacing:2px}.cover-name>span{font-size:17px;margin-top:5px}.cover-education{grid-column:1;grid-row:3;font-size:12px;line-height:1.95;margin-bottom:8px}.cover-portrait{grid-column:2;grid-row:2/4;align-self:center;margin:0;padding:0 0 0 4px}.portrait-frame{padding:4px;box-shadow:7px 8px #183da640}.portrait-frame img{height:125px;border-radius:3px 3px 22px}.portrait-frame:after{width:38px;left:calc(50% - 19px);height:14px;top:-6px}.portrait-caption{font-size:9px;margin-top:15px;gap:3px}.portrait-caption svg{width:11px}.cover-intro{grid-column:1/-1;font-size:13px;line-height:1.9;margin-top:16px;max-width:none;position:relative;z-index:2}.cover-actions{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:10px;margin-top:22px;margin-bottom:20px;position:relative;z-index:2}.cover-actions .button{min-height:44px;font-size:12px;padding:10px 8px;gap:7px}.cover-about{grid-column:1/-1;justify-content:center;min-height:32px;padding:3px;margin:0;font-size:11px}.cover-footer{grid-column:1/-1;display:grid;grid-template-columns:1fr 28px;gap:7px 12px;min-height:0;padding:15px 0 18px}.cover-footer>span{grid-column:1;font-size:10px}.cover-footer>div{grid-column:1;font-size:11px;gap:8px 15px}.cover-footer>a{grid-column:2;grid-row:1/3;width:28px;height:36px;background:none}.cover-pattern{right:-150px;top:-140px;opacity:.7}.resume-shell{margin:24px 14px 0}.resume-section{padding:25px 20px;margin-bottom:18px;border-radius:12px}.education-section{padding:0}.section-heading{margin-bottom:23px;gap:10px}.section-heading>div{gap:11px}.section-heading h2{font-size:21px;letter-spacing:.2px}.section-icon{width:38px;height:38px;border-radius:10px}.section-icon svg{width:21px}.education-section>.section-heading{padding:2px 4px;margin-bottom:18px}.education-list{grid-template-columns:1fr;gap:14px}.education-entry{padding:23px}.school-heading h3{font-size:22px}.education-entry .entry-role{font-size:14px}.education-entry .entry-role span{display:inline-block;margin-left:12px;font-size:12px}.education-detail{font-size:14px;margin-top:15px}.education-courses p{font-size:13px;line-height:1.9}.education-courses strong{font-size:12px}.experience-entry{padding-left:0;border-left:0;margin-left:0;padding-bottom:26px;margin-bottom:27px}.experience-entry:before{display:none}.entry-heading h3{font-size:18px;line-height:1.75}.entry-heading .date{font-size:12px;margin-top:8px}.company-tag{font-size:11px;margin-bottom:10px}.entry-role{font-size:14px;margin:8px 0 15px}.entry-role>span{display:block;border:0;padding:0;margin:4px 0;font-size:12px;line-height:1.8}.resume-points li{margin-top:20px}.resume-points li>strong{font-size:14px;margin-bottom:6px;color:#294b85}.resume-points li>p{font-size:15px;line-height:1.95}.supplemental-points{padding:14px;margin-top:20px}.supplemental-points li{margin:0}.supplemental-points li>strong{font-size:13px}.supplemental-points li>p{font-size:14px;line-height:1.9}.text-link{font-size:12px;min-height:44px}.case-link{padding:5px 10px;gap:6px}.project-heading{grid-template-columns:1fr;padding:0;background:transparent!important;gap:17px}.project-image{aspect-ratio:16/8;max-height:175px;border-radius:7px;box-shadow:none;background:#eef2f9;padding:9px}.project-image img{object-fit:contain;object-position:center}.project-copy h3{font-size:18px;line-height:1.75}.project-meta{font-size:11px;margin-bottom:7px}.project-copy .date{font-size:12px}.project-copy .text-link{min-height:38px}.project-entry>.resume-points{padding:0}.project-entry>.supplemental-points{padding:14px}.project-entry{margin-bottom:25px;padding-bottom:25px}.all-works{padding:18px;gap:13px}.all-works strong{font-size:14px}.all-works span{font-size:11px}.all-works svg{width:21px}.research-entry+.research-entry{margin-top:25px;padding-top:25px}.skills-grid{grid-template-columns:1fr;gap:14px}.skill-entry{padding:20px}.skill-entry h3,.skill-entry p{font-size:15px}.skill-tags{margin-top:15px}.skill-tags span{font-size:11px}.additional-skills ul{font-size:13px;gap:12px;display:grid;grid-template-columns:1fr}.honor-summary li{font-size:14px;line-height:1.9}.honor-summary svg{width:16px}.certificate-strip{gap:16px 12px;margin-top:25px}.certificate-strip a>div{padding:7px}.certificate-strip a>span{font-size:11px}.contact-section{padding:28px 23px;border-radius:12px}.contact-intro h2{font-size:27px}.contact-intro>p:last-child{font-size:13px}.contact-row{gap:11px}.contact-row>div{font-size:15px}.contact-label{font-size:11px}.contact-section>.button{width:100%;min-height:46px}.site-footer{font-size:10px;margin:25px 20px 0;padding-bottom:calc(85px + env(safe-area-inset-bottom));gap:15px}.site-footer>span{font-size:10px}.site-footer>a:last-child{font-size:11px}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:35;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid #dce3f1;padding:9px 18px calc(9px + env(safe-area-inset-bottom));gap:12px;box-shadow:0 -5px 25px #263d7010}.mobile-actions a{min-height:43px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;color:var(--blue);border-radius:6px}.mobile-actions a:first-child{background:var(--blue);color:#fff}.mobile-directory{top:62px;right:15px;padding:14px}.detail-main{padding:15px 12px}.detail-article{padding:20px 19px 30px;border-radius:11px}.back-link{min-height:44px;margin-bottom:18px;font-size:12px}.detail-heading{padding:21px 18px;margin-bottom:23px}.detail-heading h1{font-size:25px;line-height:1.55}.detail-lead{font-size:14px;line-height:1.9;margin-top:16px}.detail-tags{gap:6px;margin:16px 0 0}.detail-tags span{font-size:10px;padding:3px 7px}.detail-stats{padding:20px;margin:24px 0;gap:22px}.detail-stats>div{min-width:110px}.detail-stats strong{font-size:24px}.detail-stats p{font-size:13px}.detail-section{margin-top:27px}.detail-section h2{font-size:20px}.detail-section p{font-size:15px;line-height:1.95}.detail-section blockquote{padding:14px;font-size:14px}.detail-section ul{padding-left:18px;font-size:15px}.workflow{padding:18px}.workflow ol{display:block}.workflow li{display:flex;align-items:center;gap:12px;min-height:55px;font-size:13px}.workflow li:before{margin:0;flex-shrink:0}.workflow li:not(:last-child):after{width:1px;height:20px;top:41px;left:12px;right:auto}.workflow figcaption{font-size:11px}.reflection{padding:20px}.solution-figure figcaption{font-size:12px}.demo-panel{display:block}.demo-panel p{font-size:13px}.demo-panel .button{margin-top:16px;width:100%}.detail-bottom{gap:12px;flex-wrap:wrap}.filter-list{gap:7px;margin:22px 0}.filter-list button{font-size:11px;padding:10px;min-height:44px}.work-item{grid-template-columns:76px minmax(0,1fr);gap:15px;padding:24px 0}.work-image{aspect-ratio:1/1}.work-symbol{gap:6px}.work-symbol svg{width:28px}.work-symbol span{font-size:10px}.work-item h2{font-size:16px}.work-item p{font-size:13px}.honors-grid{grid-template-columns:1fr;gap:22px}.honor-image{height:210px}.honor-card h2{font-size:16px}.honor-card p{font-size:13px}.honor-meta{font-size:11px}.honor-description{font-size:15px}.certificate{margin-top:23px}.capabilities-grid{grid-template-columns:1fr;gap:15px}.capabilities-grid>div{padding:20px}.data-note{font-size:11px}[id]{scroll-margin-top:82px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{body{background:#fff;font-size:10pt}.site-header,.profile-rail,.site-footer,.mobile-actions,.mobile-directory,.skip-link,.icon-button,.copy-status,.cover-actions,.cover-footer,.cover-pattern,.portrait-caption,.contact-section>.button,.back-link,.filter-list,.detail-bottom,.case-link,.all-works{display:none!important}.profile-cover{display:block;margin:0;padding:0 0 20pt;background:#fff;color:#000;border:0;border-radius:0}.cover-copy{display:block;padding:0}.graduate-status,.cover-intro,.cover-education,.cover-name>span{color:#000}.cover-name h1{font-size:30pt}.cover-name{margin:8pt 0}.cover-education{font-size:10pt}.cover-portrait{position:absolute;right:0;top:0;width:90pt;margin:0;padding:0}.portrait-frame{transform:none;box-shadow:none;padding:0}.portrait-frame:after{display:none}.portrait-frame img{height:110pt}.cover-intro{max-width:80%;font-size:10pt}.resume-shell{display:block;margin:0;padding:0}.resume-section{border:0;border-radius:0;margin:0;padding:16pt 0;box-shadow:none}.section-heading{break-after:avoid;margin-bottom:12pt}.section-heading h2{font-size:16pt}.education-entry{padding:12pt;border:1px solid #ddd;background:#fff!important}.education-list{gap:12pt}.experience-entry,.research-entry,.project-entry,.skill-entry{break-inside:avoid}.experience-entry{padding-left:0;border-left:0}.experience-entry:before{display:none}.resume-points li>p{font-size:10pt}.resume-points li>strong{font-size:10pt}.project-heading{padding:12pt}.supplemental-points{background:#fafafa}.contact-section{color:#000;background:#fff;padding:18pt 0}.contact-label,.contact-intro>p:last-child{color:#555}.contact-details{grid-template-columns:1fr 1fr}.contact-row{border-color:#ddd}.wechat-icon{filter:none}.detail-main,.detail-article{padding:0;border:0;box-shadow:none}.detail-heading{background:#fff}.certificate-strip a,.detail-cover,.solution-figure,.workflow{break-inside:avoid}}
