.cv-page{padding-block:64px 96px}.cv-intro{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:88px;padding-bottom:54px;display:grid}.cv-kicker{color:var(--accent);margin-bottom:18px;font-size:15px;font-weight:600}.cv-intro h1{font-family:var(--sans);letter-spacing:-.05em;font-size:clamp(44px,5.5vw,68px);font-weight:600;line-height:1.1}.cv-intro h1 span{color:var(--accent)}.cv-intro-role{margin-top:12px;font-size:21px;font-weight:500;line-height:1.5}.cv-intro-description{max-width:650px;color:var(--muted);text-wrap:pretty;margin-top:22px;font-size:18px;line-height:1.8}.cv-actions{flex-wrap:wrap;align-items:center;gap:26px;margin-top:29px;display:flex}.cv-portrait img{aspect-ratio:1;object-fit:cover;object-position:center;border-radius:5px;width:100%;height:auto}.cv-layout{grid-template-columns:230px minmax(0,1fr);gap:88px;padding-top:48px;display:grid}.cv-sidebar-sticky{position:sticky;top:32px}.cv-sidebar-title{font-family:var(--sans);letter-spacing:0;color:var(--muted);margin-bottom:12px;font-size:14px;font-weight:600;line-height:1.5}.cv-section-nav a{justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding-block:9px;font-size:15px;display:flex}.cv-section-nav a span{color:var(--muted)}.cv-section-nav a:hover{color:var(--accent)}.cv-sidebar-detail{border-top:1px solid var(--line);margin-top:25px;padding-top:21px}.cv-languages{margin:0;padding:0;list-style:none}.cv-languages li{justify-content:space-between;gap:12px;padding-block:4px;font-size:14px;line-height:1.6;display:flex}.cv-languages li span:last-child{color:var(--muted)}.cv-email{overflow-wrap:anywhere;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;font-size:14px;line-height:1.7}.cv-email:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.cv-section{margin-bottom:62px;scroll-margin-top:36px}.cv-section-heading{border-bottom:1px solid var(--line);margin-bottom:29px;padding-bottom:19px}.cv-section-heading h2{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(32px,3vw,39px);font-weight:500;line-height:1.15}.cv-experience-item{border-left:1px solid var(--line);margin-left:4px;padding:0 0 34px 25px;position:relative}.cv-experience-item:last-child{border-color:#0000;padding-bottom:0}.cv-experience-item:before{content:"";background:var(--line);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;left:-4px}.cv-current:before{background:var(--accent)}.cv-item-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 20px;font-size:14px;line-height:1.6;display:flex}.cv-experience-item h3,.cv-education-item h3{letter-spacing:-.025em;text-wrap:pretty;margin-top:10px;font-size:23px;font-weight:600;line-height:1.4}.cv-organization-heading{align-items:center;gap:16px;margin-bottom:19px;display:flex}.cv-organization-logo{object-fit:contain;background:#fff;border:1px solid #e6e8eb;border-radius:5px;flex-shrink:0;width:52px;height:52px}.cv-organization-heading>div{min-width:0}.cv-organization-heading h3{margin-top:0}.cv-company-title{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.cv-organization-location{color:var(--muted);margin-top:3px;font-size:14px;line-height:1.6}.cv-role-history{gap:15px;margin-bottom:18px;display:grid}.cv-position{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:3px 20px;display:flex}.cv-position h4{letter-spacing:-.015em;font-size:18px;font-weight:600;line-height:1.5}.cv-position-date{color:var(--muted);font-size:14px;line-height:1.6}.cv-current-label{color:var(--accent);font-size:14px;font-weight:400}.cv-current-label:before{content:"·";color:var(--muted);padding-right:12px}.cv-description{color:var(--muted);text-wrap:pretty;font-size:17px;line-height:1.8}.cv-description-list{margin:0;padding-left:20px}.cv-description-list li+li{margin-top:8px}.cv-description-list li::marker{color:#8995a2}.cv-technologies{flex-wrap:wrap;gap:3px 13px;margin:13px 0 0;padding:0;list-style:none;display:flex}.cv-technologies li{color:var(--muted);font-size:14px;line-height:1.7}.cv-technologies li:not(:last-child):after{content:"·";margin-left:13px}.cv-education-item{border-bottom:1px solid var(--line);margin-bottom:27px;padding-bottom:27px}.cv-education-item:last-child{border:0;margin:0;padding:0}.cv-degree{margin-block:7px 10px;font-size:17px;line-height:1.6}.cv-education-notes{margin-top:15px}.cv-education-notes p+p{margin-top:6px}.cv-courses{margin-top:12px;font-size:15px;line-height:1.75}.cv-courses summary{color:var(--accent);cursor:pointer;width:fit-content;min-height:44px;padding-block:9px}.cv-courses summary:hover{text-underline-offset:4px;text-decoration:underline}.cv-courses ul{color:var(--muted);margin:6px 0 5px;padding-left:21px}.cv-courses li+li{margin-top:5px}.cv-section-lede{color:var(--muted);margin:-10px 0 25px;font-size:17px;line-height:1.75}.cv-project{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:28px;padding-block:29px;display:grid}.cv-project:first-child{padding-top:0}.cv-project:last-child{border-bottom:0;padding-bottom:0}.cv-project-year{color:var(--muted);font-size:14px}.cv-project h3{font-family:var(--serif);letter-spacing:-.02em;margin-block:10px;font-size:30px;font-weight:500;line-height:1.15}.cv-project-kind{color:var(--muted);font-size:14px;line-height:1.6}.cv-project-link{margin-top:17px;font-size:15px}.cv-credential-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding-block:19px;display:grid}.cv-credential-row h3{font-size:17px;font-weight:500;line-height:1.5}.cv-credential-row p{color:var(--muted);margin-top:5px;font-size:14px;line-height:1.7}.cv-credential-row>a{color:var(--accent);text-underline-offset:4px;justify-content:flex-end;align-items:center;gap:8px;min-height:44px;font-size:14px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;display:inline-flex}.cv-credential-row>a:hover{text-decoration-color:currentColor}.cv-certification-group{color:var(--muted);margin-top:29px;font-size:15px;font-weight:600}.cv-endnote{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:18px 28px;padding-top:25px;display:flex}.cv-endnote p{max-width:430px;font-size:17px;line-height:1.75}.cv-endnote a{flex-shrink:0}html[lang=zh-CN] .cv-intro h1{line-height:1.1}html[lang=zh-CN] .cv-section-heading h2{font-family:var(--sans);letter-spacing:0;font-size:29px;font-weight:500}html[lang=zh-CN] .cv-description,html[lang=zh-CN] .cv-intro-description{line-height:1.9}@media (max-width:1050px){.cv-intro{grid-template-columns:minmax(0,1fr) 210px;gap:48px}.cv-layout{grid-template-columns:205px minmax(0,1fr);gap:45px}.cv-project{grid-template-columns:1fr;gap:14px}.cv-project h3{margin-top:6px}}@media (max-width:760px){.cv-page{padding-block:40px 64px}.cv-intro{grid-template-columns:minmax(0,1fr) 160px;align-items:start;gap:28px;padding-bottom:34px}.cv-intro h1{font-size:45px}.cv-intro-role{font-size:18px}.cv-intro-description{font-size:17px}.cv-portrait{margin-top:40px}.cv-layout{padding-top:28px;display:block}.cv-sidebar{margin-bottom:43px}.cv-sidebar-sticky{grid-template-columns:1fr 1.2fr;gap:0 34px;display:grid;position:static}.cv-section-nav{flex-wrap:wrap;grid-column:1/-1;gap:0 22px;display:flex}.cv-section-nav .cv-sidebar-title{width:100%;margin-bottom:3px}.cv-section-nav a{gap:9px;font-size:15px}.cv-sidebar-detail{margin-top:19px}.cv-section{margin-bottom:47px}.cv-section-heading{margin-bottom:25px;padding-bottom:16px}.cv-project{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:26px}}@media (max-width:520px){.cv-intro{flex-direction:column;gap:28px;display:flex}.cv-kicker{margin-bottom:15px}.cv-intro h1{font-size:clamp(42px,11vw,54px)}.cv-intro-description{margin-top:18px}.cv-portrait{align-items:center;gap:20px;margin:0;display:flex}.cv-portrait img{flex-shrink:0;width:104px;height:104px}.cv-actions{gap:20px;margin-top:24px}.cv-sidebar-sticky{grid-template-columns:1fr}.cv-sidebar-detail{grid-template-columns:95px minmax(0,1fr);gap:0 20px;display:grid}.cv-sidebar-detail .cv-sidebar-title{margin:3px 0 0}.cv-email{font-size:14px}.cv-section-heading h2{font-size:33px}.cv-experience-item{padding-bottom:31px;padding-left:20px}.cv-experience-item h3,.cv-education-item h3{font-size:21px}.cv-description{font-size:16px}.cv-item-meta{gap:1px 15px}.cv-item-meta span{width:100%}.cv-organization-heading{gap:13px;margin-bottom:17px}.cv-organization-logo{width:44px;height:44px}.cv-position{display:block}.cv-position h4{font-size:17px}.cv-position-date{margin-top:3px}.cv-degree{font-size:16px}.cv-project{grid-template-columns:1fr;gap:14px}.cv-project-heading h3{font-size:30px}.cv-project-kind{font-size:14px}.cv-credential-row{gap:12px}.cv-credential-row h3{font-size:16px}.cv-credential-row>a{gap:4px}.cv-endnote p{font-size:16px}}
