.pub-row{display:flex;align-items:center}.social-icons a{display:inline-block;height:2.4rem;width:2.4rem;background-color:transparent;color:#043361 !important;border-radius:100%;text-align:center;font-size:1.15rem;line-height:2.5rem;margin-right:1rem}@media (prefers-color-scheme: dark){.social-icons a{color:#3eb7f0 !important}}.social-icons a:last-child{margin-right:0}.social-icons a:hover{background-color:white;color:black;transform:scale(1.2)}@media (prefers-color-scheme: dark){.social-icons a:last-child{margin-right:0}.social-icons a:hover{background-color:#20212b;color:black;transform:scale(1.2)}}.icon-button{background-color:white;border-radius:3.6rem;cursor:pointer;display:inline-block;font-size:2.0rem;height:3.6rem;line-height:3.6rem;margin:0 5px;position:relative;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:3.6rem}.icon-button span{border-radius:0;display:block;height:0;left:50%;margin:0;position:absolute;top:50%;-webkit-transition:all 0.3s;-moz-transition:all 0.3s;-o-transition:all 0.3s;transition:all 0.3s;width:0}.icon-button:hover span{width:3.6rem;height:3.6rem;border-radius:3.6rem;margin:-1.8rem}.twitter span{background-color:#4099ff}.facebook span{background-color:#4286f4}.linkedin span{background-color:#0077B5}.github span{background-color:#000}email{font-size:14px;font-family:"Ubuntu Mono"}.icon-button i{background:none;color:white;height:3.6rem;left:0;line-height:3.6rem;position:absolute;top:0;-webkit-transition:all 0.3s;-moz-transition:all 0.3s;-o-transition:all 0.3s;transition:all 0.3s;width:3.6rem;z-index:10}.icon-button .icon-twitter{color:#4099ff}.icon-button .icon-facebook{color:#4286f4}.icon-button .icon-github{color:#000}.icon-button .icon-linkedin{color:#0077B5}.icon-button:hover .icon-twitter,.icon-button:hover .icon-facebook,.icon-button:hover .icon-github,.icon-button:hover .icon-linkedin{color:white}autocolor{color:#595959}lightonly{visibility:visible}darkonly{visibility:hidden}education{font-weight:500;font-size:115%}papertitle{font-weight:600;font-size:100%}@media (prefers-color-scheme: dark){body{background-color:#20212b;color:#dadbdf}autocolor{color:#dadbdf}lightonly{visibility:hidden}darkonly{visibility:visible}papertitle{color:#eeeff0}}.image{border-radius:0.35em;border:0;display:inline-block;position:relative}.image:before{-moz-transition:opacity 0.2s ease-in-out;-webkit-transition:opacity 0.2s ease-in-out;-ms-transition:opacity 0.2s ease-in-out;transition:opacity 0.2s ease-in-out;border-radius:0.35em;content:'';display:block;height:100%;left:0;opacity:0.5;position:absolute;top:0;width:100%}.image.avatar{border-radius:100%}.image.avatar:before{display:none}.image.avatar img{border-radius:100%;width:45%;padding:20px}#header .image.avatar{margin:0 0 1em 0;width:8.00em}h3,h4,h5,h6{font-weight:600;color:#043361;margin:0 0 20px}h1{font-weight:500;color:#043361;margin:0 0 20px}h2{color:#043361;font-weight:500;margin:2px 0px 15px;font-size:157%}@media (prefers-color-scheme: dark){h1,h3,h4,h5,h6{color:#3eb7f0}h2{color:#3eb7f0}}p,ul,ol,table,pre,dl{margin:0 0 20px}h1,h2,h3{line-height:1.1}h1{font-size:28px}a{color:#39c;text-decoration:none}a:hover{color:#069}@media (prefers-color-scheme: dark){a{color:#3eb7f0}}a small{font-size:11px;color:#777;margin-top:-0.3em;display:block}a:hover small{color:#777}.wrapper{width:960px;margin:0 auto}blockquote{border-left:1px solid #e5e5e5;margin:0;padding:0 0 0 20px;font-style:italic}code,pre{font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;color:#333}pre{max-width:500px;padding:8px 15px;background:#f8f8f8;border-radius:5px;border:1px solid #e5e5e5;overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:5px 10px;border-bottom:1px solid #e5e5e5}dt{color:#444;font-weight:500}th{color:#444}@media (prefers-color-scheme: dark){th{color:#3eb7f0}dt{color:#3eb7f0}}img{max-width:100%}header{width:232px;float:left;position:fixed;-webkit-font-smoothing:subpixel-antialiased;padding-top:4.0em;text-align:center}header ul{list-style:none;height:40px;padding:0;background:#f4f4f4;border-radius:5px;border:1px solid #e0e0e0;width:270px}header li{width:89px;float:left;border-right:1px solid #e0e0e0;height:40px}header li:first-child a{border-radius:5px 0 0 5px}header li:last-child a{border-radius:0 5px 5px 0}header ul a{line-height:1;font-size:11px;color:#999;display:block;text-align:center;padding-top:6px;height:34px}header ul a:hover{color:#999}header ul a:active{background-color:#f0f0f0}strong{color:#222;font-weight:500}@media (prefers-color-scheme: dark){strong{color:#eeeff0}}header ul li+li+li{border-right:none;width:89px}header ul a strong{font-size:14px;display:block;color:#222}section{width:650px;float:right;padding-top:4.0em;padding-bottom:50px}small{font-size:11px}hr{border:0;background:#e5e5e5;height:1px;margin:0 0 20px}footer{width:232px;float:left;position:fixed;bottom:30px;-webkit-font-smoothing:subpixel-antialiased;text-align:center}@media print, screen and (max-width: 960px){.pub-row{display:flex;align-items:center}div.wrapper{width:auto;margin:0}header,section,footer{float:none;position:static;width:auto}header{padding-right:320px}section{border:1px solid #e5e5e5;border-width:1px 0;padding:20px 0;margin:0 0 20px}header a small{display:inline}header ul{position:absolute;right:50px;top:52px}.image.avatar img{border-radius:100%;width:117px;padding:20px}#head1o2{visibility:hidden}#head2o2{visibility:hidden}}@media print, screen and (max-width: 960px){body{word-wrap:break-word;padding:15px}.pub-row{display:flex;align-items:center}header{padding:0}pre,code{word-wrap:normal}}@media print, screen and (max-width: 480px){.pub-row{display:block;align-items:center}body{padding:15px}header ul{width:99%}header li,header ul li+li+li{width:33%}.image.avatar img{border-radius:100%;width:95px;padding:20px}#head1o2{visibility:hidden}#head2o2{visibility:hidden}}@media print{body{padding:0.4in;font-size:12pt;color:#444}}.biblink{text-decoration:none;display:inline;margin-right:0px}.fakelink{text-decoration:none;cursor:pointer}.bibref{font-size:70%;margin-top:10px;margin-left:0px;display:none;font-family:monospace}:root{color-scheme:light;--page-bg:#fff;--page-text:#454b55;--strong:#252b34;--heading:#043361;--link:#176591;--link-hover:#043361;--muted:#626b78;--rule:#d7dde5;--control-border:#788493;--surface:#edf3f8;--role:#ad4036;--image-shadow:0 2px 6px #17385816}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){color-scheme:dark;--page-bg:#20212b;--page-text:#d8dce4;--strong:#f2f4f8;--heading:#69c4ed;--link:#79c9ed;--link-hover:#b5e5fb;--muted:#adb7c7;--rule:#464d5d;--control-border:#8592a6;--surface:#2e3544;--role:#f0a297;--image-shadow:0 2px 6px #0005}}:root[data-theme="dark"]{color-scheme:dark;--page-bg:#20212b;--page-text:#d8dce4;--strong:#f2f4f8;--heading:#69c4ed;--link:#79c9ed;--link-hover:#b5e5fb;--muted:#adb7c7;--rule:#464d5d;--control-border:#8592a6;--surface:#2e3544;--role:#f0a297;--image-shadow:0 2px 6px #0005}body{margin:0;padding:0;background:var(--page-bg);color:var(--page-text)}h1,h2,h3,h4,h5,h6{color:var(--heading)}strong,dt,th{color:var(--strong)}a{color:var(--link)}a:hover{color:var(--link-hover)}code,pre{color:var(--page-text)}pre{background:var(--surface);border-color:var(--rule)}html{scroll-padding-top:24px}.wrapper{display:flow-root;width:calc(100% - 64px);max-width:1440px;margin:0 auto}.site-content{width:calc(100% - 296px);float:right;padding-top:4em;padding-bottom:30px}.site-content section{width:auto;float:none;padding:0;margin:0;border:0}.profile .image.avatar img{box-sizing:border-box;width:145px;height:145px;object-fit:cover}.profile h1{margin-bottom:12px}.profile-position{font-size:1.1rem;margin-bottom:2px}.profile-affiliation{margin-bottom:4px}.profile .email{font-size:13px}.profile-contact{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 10px}.profile-phd{margin:12px 0 0;font-size:14px;line-height:1.4}.profile-phd a{color:var(--heading)}.social-icons{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:16px}.social-icons a{flex:0 0 2.4rem;margin-right:0}.profile .social-icons a{color:var(--heading) !important}.profile .social-icons a:hover{background:var(--surface);color:var(--link-hover) !important}.social-icons svg{width:20px;height:20px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.profile-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 12px;margin-top:10px;font-size:14px}.profile-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px}.display-controls{box-sizing:border-box;display:flex;align-items:center;gap:5px;width:fit-content;max-width:100%;margin:16px auto 0;padding:3px;border:1px solid var(--rule);border-radius:6px;background:var(--page-bg);font:13px/1.3 system-ui,-apple-system,sans-serif}.language-switch,.theme-switch{display:flex;flex:none;align-items:center;gap:2px;margin:0;padding:0}.language-switch+.theme-switch{padding-left:5px;border-left:1px solid var(--rule)}.display-controls a,.display-controls button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:30px;height:34px;padding:0 7px;border:0;border-bottom:3px solid transparent;border-radius:3px;background:transparent;color:var(--muted);font:inherit;font-weight:500;text-decoration:none;white-space:nowrap}.display-controls a:hover,.display-controls button:hover{color:var(--strong);background:var(--surface)}.display-controls a[aria-current="page"],.display-controls button[aria-pressed="true"]{color:var(--strong);background:var(--surface);border-bottom-color:var(--strong);font-weight:600}.interests{padding-left:24px}.interests li{margin-bottom:4px}.phd-opportunities a{font-family:inherit}.phd-opportunities{padding:12px 15px;border-left:3px solid var(--link);background:var(--surface);line-height:1.5}.background-list{padding-left:24px}.background-list li{margin-bottom:12px}.experience-list{list-style:none;padding:0;margin:0 0 30px}.experience-list>li{display:grid;grid-template-columns:80px minmax(0, 1fr);column-gap:18px;align-items:start;margin:0 0 28px}.experience-list>li>:not(.experience-logo){grid-column:2}.experience-logo{box-sizing:border-box;grid-column:1;grid-row:1 / span 3;display:block;width:80px;height:80px;padding:8px;object-fit:contain;background:#fff;border:1px solid var(--rule);border-radius:5px}.experience-logo--wordmark{padding:5px}.experience-logo--shield{padding:1px}.experience-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 18px}.experience-heading strong{font-weight:600}.experience-dates,.education-dates{color:var(--muted);font-size:14px}.experience-dates{white-space:nowrap}.experience-list p{margin:3px 0 0;line-height:1.4}.experience-list .experience-role{color:var(--muted);font-style:italic;margin-bottom:5px}.experience-list .experience-supervisor{color:var(--muted);font-size:14px;margin-bottom:7px}.experience-points{margin:7px 0 0;padding-left:20px}.experience-points li{margin:5px 0;line-height:1.4}.theme-credit{margin-top:36px}.theme-credit small{font-size:12px}.skip-link{position:fixed;left:16px;top:-80px;z-index:10;background:var(--page-bg);padding:8px 14px;border:1px solid currentColor}.skip-link:focus{top:12px}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,video:focus-visible,.dialog-scroll:focus-visible{outline:2px solid var(--link);outline-offset:4px}[hidden]{display:none !important}.minimal-publications{margin-top:24px}.minimal-publications .bibliography .pub-item{min-height:0;margin-bottom:30px}.minimal-publications .pub-row{display:flex;align-items:center;gap:24px}.minimal-publications .pub-media{flex:0 0 180px;min-width:0;margin:0}.minimal-publications .pub-content{flex:1;min-width:0}.minimal-publications .pub-media>a{display:block}.publications.minimal-publications ol.bibliography li .pub-media img,.minimal-publications .pub-media video{box-sizing:border-box;display:block;width:180px;max-width:100%;height:auto;margin:0;object-fit:contain;border:1px solid var(--rule);border-radius:5px;box-shadow:var(--image-shadow);background:#fff}.minimal-publications .pub-media video{aspect-ratio:4/3;background:#111}.minimal-publications .title{font-size:16px;line-height:1.35;margin:0 0 4px}.minimal-publications .title a{display:block;color:var(--heading)}.minimal-publications .title a:hover{color:var(--link-hover)}.minimal-publications .author{line-height:1.35;margin-bottom:4px}.minimal-publications .author strong{font-weight:600}.minimal-publications .periodical{line-height:1.35;margin-bottom:5px}.minimal-publications .pub-role{color:var(--role);font-style:italic;font-size:14px}.minimal-publications .pub-summary{margin:5px 0 7px;line-height:1.4}.minimal-publications .pub-contribution{margin:6px 0 9px;line-height:1.4;font-size:14px}.pub-contribution strong,.project-contribution strong{font-weight:600}.minimal-publications .links{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:6px;width:330px;max-width:100%;align-items:stretch}.publications.minimal-publications ol.bibliography li .links .btn,.paper-links .btn{display:inline-block;color:var(--page-text);border:1px solid var(--control-border);padding:.1rem .5rem;font-size:12px;line-height:1.4;text-decoration:none;border-radius:2px;white-space:nowrap}.publications.minimal-publications ol.bibliography li .links .btn{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:34px;padding:3px 4px;text-align:center;white-space:normal}.minimal-publications .links--extended{width:442px;grid-template-columns:repeat(4, minmax(0, 1fr));grid-auto-rows:1fr}.publications.minimal-publications ol.bibliography li .links--extended .btn{display:grid;grid-template-rows:17px 12px;align-content:center;justify-items:center;row-gap:2px;min-height:40px}.minimal-publications .pub-resource-note{color:var(--muted);font-size:12px;line-height:1.4;margin:7px 0 0}.resource-label{display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}.resource-status{display:block;font-size:10px;line-height:1.2}.publications.minimal-publications ol.bibliography li .links a.btn:hover,.paper-links a.btn:hover{color:var(--heading);border-color:var(--heading);background:var(--surface)}.publications.minimal-publications ol.bibliography li .links .resource-pending,.paper-links .resource-pending{color:var(--muted);border-color:var(--rule);border-style:dashed}.minimal-publications .pub-row--text{padding-left:204px}.minimal-publications .pub-row--text .pub-summary{max-width:590px}.site-content .projects-section{margin:0 0 30px}.project-status-heading{font-size:20px;margin:24px 0 12px}.completed-projects-intro{color:var(--muted);font-size:14px;margin:0 0 8px}.completed-projects{list-style:none;padding:0;margin:0}.completed-projects li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 18px;padding:10px 0;border-bottom:1px solid var(--rule)}.completed-projects a{font-weight:600}.completed-project-status{color:var(--muted);font-size:13px}.project-card{margin:16px 0 24px;border:1px solid var(--rule);border-radius:10px;background:var(--page-bg)}.project-card-summary{display:block;list-style:none;padding:20px;cursor:pointer;border-radius:10px 10px 0 0}.project-card-summary::-webkit-details-marker{display:none}.project-card-summary:hover{background:var(--surface)}.project-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:5px}.project-card-name{color:var(--heading);font-size:22px;font-weight:600;line-height:1.3}.project-card-status{color:var(--heading);background:var(--surface);border:1px solid var(--rule);border-radius:20px;padding:2px 9px;font-size:12px}.project-card .project-focus{display:block}.project-card-description{display:block;line-height:1.4;margin-top:10px}.project-card-contribution{display:block;line-height:1.4;margin-top:8px;font-size:14px}.project-card-highlights{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;color:var(--muted);font-size:13px}.project-card-toggle{display:flex;align-items:center;gap:6px;width:fit-content;margin-top:16px;color:var(--link);font-size:14px;font-weight:600}.project-card-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.project-collapse-label,.project-disclosure[open] .project-expand-label{display:none}.project-disclosure[open] .project-collapse-label{display:inline}.project-disclosure[open] .project-card-toggle svg{transform:rotate(180deg)}.project-card-details{padding:0 20px 20px}.project-card-details h4{margin:18px 0 6px;font-size:16px}.project-card-details h4:first-child{margin-top:0}.project-card-resources{padding:0 20px 20px}.project-row{padding:0 0 22px;margin:24px 0 0;border-bottom:1px solid var(--rule)}.project-row--media{display:grid;grid-template-columns:180px minmax(0, 1fr);align-items:center;gap:24px}.project-row--text{padding-left:204px}.project-row--text:only-child{padding-left:0}.project-media{display:block}.project-media img{display:block;box-sizing:border-box;width:100%;height:auto;border:1px solid var(--rule);border-radius:5px;background:#fff;box-shadow:var(--image-shadow)}.project-content{min-width:0}.project-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}.project-heading h4{font-size:18px;line-height:1.35;margin:0 0 4px}.project-heading h4 a{color:var(--heading)}.project-focus{color:var(--muted);font-size:14px;font-style:italic;margin:0 0 6px}.project-summary,.project-contribution{margin:5px 0 8px;line-height:1.4}.project-links{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:6px;width:330px;max-width:100%}.project-links .btn{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:34px;padding:3px 4px;border:1px solid var(--control-border);border-radius:2px;color:var(--page-text);font-size:12px;line-height:1.4;text-align:center;text-decoration:none}.project-links--extended{width:554px;grid-template-columns:repeat(5, minmax(0, 1fr));grid-auto-rows:1fr}.project-links--extended .btn{display:grid;grid-template-rows:17px 12px;align-content:center;justify-items:center;row-gap:2px;min-height:40px}.project-links a.btn:hover{color:var(--heading);border-color:var(--heading);background:var(--surface)}.project-links .resource-pending{color:var(--muted);border-color:var(--rule);border-style:dashed}.project-code-note{max-width:580px;margin:9px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.project-code-note code{font-size:12px;overflow-wrap:anywhere}.resource-icon{display:block;width:16px;height:16px;flex:none}.resource-icon--outline{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.publication-detail h1{font-size:27px;line-height:1.2;margin:12px 0}.publication-detail h2{margin-top:26px}.publication-detail .eyebrow{font-style:italic;margin:18px 0 6px}.publication-detail .authors{line-height:1.5;margin-bottom:10px}.small-note{font-size:14px;line-height:1.4}.paper-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin:18px 0}.detail-figure{display:block;margin:22px 0}.detail-figure img,.paper-figure img{display:block;max-width:100%;height:auto;border-radius:4px;background:#fff}.zoom-label{display:block;font-size:13px;margin-top:5px}.paper-figure{margin:22px 0}.paper-figure figcaption{font-size:13px;margin-top:5px}.site-content .motion-section{margin-top:28px}.motion-section .eyebrow{font-size:14px}.motion-section h2{font-size:22px;margin:4px 0 12px}.motion-intro{margin:14px 0}.demo-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0}button,select{font:inherit;color:inherit;border:1px solid var(--rule);background:var(--page-bg);border-radius:3px;padding:5px 8px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}.demo-status{width:100%;font-size:13px}.video-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:12px}.video-grid figure{min-width:0;margin:0}.video-grid video{display:block;width:100%;aspect-ratio:4/3;background:#111;border-radius:4px}.video-label{line-height:1.3;margin-bottom:6px}.video-label strong{display:block;font-size:15px}.video-label>span:last-child{font-size:12px}.video-grid figcaption{margin-top:6px;font-size:13px;line-height:1.35}.video-note{margin-top:18px}.figure-dialog{box-sizing:border-box;width:min(1150px, 94vw);max-width:94vw;max-height:92vh;padding:16px;background:var(--page-bg);color:var(--page-text);border:1px solid var(--rule);border-radius:6px}.figure-dialog::backdrop{background:#0009}.dialog-toolbar{display:flex;align-items:center;gap:18px;justify-content:space-between;margin-bottom:12px}.dialog-toolbar p{margin:0}.dialog-toolbar button{flex-shrink:0}.dialog-scroll{max-height:70vh;overflow:auto;background:#fff}.dialog-scroll img{display:block;width:100%;min-width:900px;max-width:none;height:auto}.dialog-hint{margin:10px 0 0;font-size:13px}@media screen and (max-height: 620px) and (min-width: 961px){.profile{position:sticky;top:0;padding-top:18px}}@media screen and (max-width: 960px){body{padding:15px}div.wrapper{width:100%;max-width:900px;margin:0 auto !important}.site-content{width:auto;float:none;padding:24px 0}.profile{padding:10px 0 24px;border-bottom:1px solid var(--rule)}}@media screen and (max-width: 650px){.project-links--extended{width:330px;grid-template-columns:repeat(3, minmax(0, 1fr))}.minimal-publications .links--extended{width:218px;grid-template-columns:repeat(2, minmax(0, 1fr))}}@media screen and (max-width: 540px){.project-card-summary{padding:16px}.project-card-details,.project-card-resources{padding:0 16px 16px}.project-card .project-links--extended{width:100%;grid-template-columns:repeat(2, minmax(0, 1fr))}.profile{display:grid;grid-template-columns:72px minmax(0, 1fr);column-gap:14px;align-items:center;text-align:left;padding:8px 0 18px}.profile .image.avatar{grid-column:1;grid-row:1;margin:0;align-self:start}.profile .image.avatar img{width:72px;height:72px;padding:0}.profile-identity{grid-column:2;min-width:0}.profile h1{font-size:24px;margin:0 0 4px}.profile-position{font-size:14px}.profile-affiliation{font-size:13px;line-height:1.35}.profile-contact{justify-content:flex-start;gap:4px 10px}.profile .email{font-size:12px;overflow-wrap:anywhere}.profile-phd,.profile .social-icons,.profile-nav,.display-controls{grid-column:1 / -1}.profile-phd{text-align:center;margin-top:14px}.profile .social-icons{text-align:center;margin-top:5px}.profile-nav{margin-top:2px}.display-controls{margin-top:12px}.project-row--media{display:block}.project-row--text{padding-left:0}.project-media{width:min(270px, 100%);margin:0 0 14px}.experience-list>li{grid-template-columns:60px minmax(0, 1fr);column-gap:12px}.experience-logo{width:60px;height:60px;padding:6px}.experience-logo--wordmark{padding:3px}.experience-logo--shield{padding:0}.experience-list>li>.experience-points{grid-column:1 / -1;margin-top:10px}.minimal-publications .pub-row{display:block}.minimal-publications .pub-row--text{padding-left:0}.minimal-publications .pub-media{width:min(270px, 100%);margin:0 0 14px}.publications.minimal-publications ol.bibliography li .pub-media img,.minimal-publications .pub-media video{width:100%}.minimal-publications .bibliography .pub-item{margin-bottom:34px}.video-grid{grid-template-columns:1fr;gap:20px}.video-grid figure{max-width:360px}.publication-detail h1{font-size:24px}}.work-card{box-sizing:border-box;border:1px solid var(--rule);border-radius:10px;background:var(--page-bg);overflow-wrap:anywhere}.minimal-publications .pub-row.work-card{padding:20px;align-items:flex-start;gap:20px}.minimal-publications .pub-row--text.work-card{display:block}.minimal-publications .bibliography .pub-item{margin-bottom:20px}.minimal-publications .pub-media{flex-basis:160px}.publications.minimal-publications ol.bibliography li .pub-media img{width:160px}.minimal-publications .title{font-size:18px;line-height:1.4}.minimal-publications .pub-summary{margin:10px 0}.minimal-publications .links,.minimal-publications .links--extended{width:100%;grid-template-columns:repeat(3, minmax(0, 1fr))}.minimal-publications .links--extended{grid-template-columns:repeat(2, minmax(0, 1fr))}.site-content .selected-work-section .projects-section{margin-bottom:20px}.selected-work-section .project-card{margin:0}.selected-work-section .minimal-publications{margin-top:0}.full-publications-link{margin:6px 0 30px}html[lang="zh-CN"] .email,html[lang="zh-CN"] a[href^="mailto:"]{font-family:inherit}html[lang="zh-CN"] .project-focus{font-style:normal}html[lang="zh-CN"] .pub-summary,html[lang="zh-CN"] .pub-contribution,html[lang="zh-CN"] .project-card-description,html[lang="zh-CN"] .project-card-contribution{line-height:1.7}@media screen and (max-width: 540px){.minimal-publications .pub-row.work-card{padding:16px}.minimal-publications .pub-media{width:100%}.publications.minimal-publications ol.bibliography li .pub-media img{width:100%;max-height:210px}.minimal-publications .links,.minimal-publications .links--extended{grid-template-columns:repeat(2, minmax(0, 1fr))}.project-card .project-media{width:100%}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.work-tabs{display:flex;align-items:stretch;gap:8px;margin:0 0 20px;padding:0;border-bottom:1px solid var(--rule)}.work-tab{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-bottom:3px solid transparent;border-radius:6px 6px 0 0;color:var(--muted);font-size:23px;font-weight:600;line-height:1.3;text-decoration:none}.work-tab:hover{color:var(--heading);background:var(--surface)}.work-tab[aria-selected="true"]{color:var(--heading);background:var(--surface);border-bottom-color:var(--link)}.work-tab-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 3px;border:1px solid var(--rule);border-radius:12px;color:var(--muted);font:12px/1 system-ui,sans-serif}.work-panel .selected-work-cards{margin-top:0}.selected-work-cards{display:grid;gap:20px;margin:20px 0 24px}.work-entry{display:grid;grid-template-columns:minmax(220px, 32%) minmax(0, 1fr);align-items:center;gap:24px;padding:22px;overflow:hidden}.work-entry--text{grid-template-columns:minmax(0, 1fr)}.work-entry-image{display:block;padding:6px;border:1px solid var(--rule);border-radius:6px;background:#fff}.work-entry-image img{display:block;width:100%;max-width:100%;height:auto;margin:0;object-fit:contain}.work-entry-image:hover{box-shadow:inset 0 0 0 2px var(--link)}.work-entry-body{min-width:0;padding:0}.work-entry-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-bottom:8px}.work-entry-heading h3{margin:0;font-size:21px;line-height:1.3}.work-entry-heading h3 a{color:var(--heading)}.work-entry-heading h3 a:hover{color:var(--link-hover)}.work-entry-status{font-size:13px;color:var(--muted)}.work-entry-authors{margin:0 0 10px;font-size:14px;line-height:1.6;overflow-wrap:break-word}.work-entry-summary{margin:0 0 8px;font-size:15px;line-height:1.5}.work-entry-role{margin:0 0 5px;font-size:14px;color:var(--role)}.work-entry-contribution{margin:0 0 12px;font-size:14px;line-height:1.5}.work-entry-caption{margin:0 0 14px;font-size:12px;line-height:1.45;color:var(--muted)}.work-entry-links{display:grid;grid-template-columns:repeat(auto-fit, minmax(106px, 1fr));align-items:stretch;gap:6px;margin-top:12px;width:560px;max-width:100%}.work-entry-links .btn{min-height:40px}.work-entry-resource-note{margin:7px 0 0;font-size:12px;line-height:1.4;color:var(--muted)}.work-entry-cta{font-weight:600}.work-entry-cta span{display:inline-block;margin-left:5px}.project-detail-header{position:static;float:none;width:auto;padding:0;text-align:left}.project-detail-header h1{font-size:32px;line-height:1.2;margin:0 0 12px}.project-detail-subtitle{font-size:19px;line-height:1.4;color:var(--heading)}.project-detail .authors{color:var(--muted);font-size:14px}.project-detail-lede{font-size:18px;line-height:1.55}.project-detail-method{padding-left:22px}.project-detail-method li{margin:0 0 16px;line-height:1.6}.project-detail-figure{margin:24px 0}.project-detail-figure img{display:block;width:100%;max-width:100%;height:auto;background:#fff}.project-detail-figure figcaption,.project-detail-source{font-size:13px;line-height:1.5;color:var(--muted)}.project-page .wrapper{width:calc(100% - 48px);max-width:1000px;margin:0 auto !important}.project-page .profile{position:static;float:none;width:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:20px 0;border-bottom:1px solid var(--rule);text-align:left}.project-page .profile>:not(.profile-identity):not(.profile-nav):not(.display-controls),.project-page .profile-identity>:not(h1){display:none}.project-page .profile h1{font-size:20px;margin:0}.project-page .profile-nav,.project-page .display-controls{margin:0}.project-page .site-content{width:100%;float:none;padding:36px 0}.project-page .project-detail-header{text-align:center;max-width:920px;margin:28px auto 36px}.project-page .project-detail-header h1{font-size:42px}.project-page .project-detail-resources{justify-content:center}html[lang="zh-CN"] body{font-family:"Alibaba PuHuiTi 3.0","PingFang SC","Microsoft YaHei",sans-serif;font-size:18px;font-weight:400;line-height:1.8;font-synthesis:none}html[lang="zh-CN"] h1,html[lang="zh-CN"] h2,html[lang="zh-CN"] h3,html[lang="zh-CN"] h4,html[lang="zh-CN"] h5,html[lang="zh-CN"] h6,html[lang="zh-CN"] strong,html[lang="zh-CN"] b,html[lang="zh-CN"] dt,html[lang="zh-CN"] th,html[lang="zh-CN"] .work-tab,html[lang="zh-CN"] .work-entry-cta{font-weight:500}html[lang="zh-CN"] body:not(.project-page) .profile h1{font-size:30px;letter-spacing:.035em}html[lang="zh-CN"] #about{font-size:32px;line-height:1.3}html[lang="zh-CN"] .site-content>h2:not(#about){font-size:27px;line-height:1.4}html[lang="zh-CN"] .work-entry-heading h3{font-size:22px;line-height:1.4}html[lang="zh-CN"] .work-entry-summary{font-size:17px;line-height:1.8}html[lang="zh-CN"] .work-entry-contribution{font-size:16px;line-height:1.8}html[lang="zh-CN"] .project-detail-lede{line-height:1.75}html[lang="zh-CN"] .publications ol.bibliography li .title,html[lang="zh-CN"] .minimal-publications .author strong,html[lang="zh-CN"] .pub-contribution strong,html[lang="zh-CN"] .project-contribution strong,html[lang="zh-CN"] .experience-heading strong,html[lang="zh-CN"] .completed-projects a,html[lang="zh-CN"] .project-card-name,html[lang="zh-CN"] .project-card-toggle{font-weight:500}html[lang="zh-CN"] .display-controls,html[lang="zh-CN"] .work-tab-count{font-family:inherit}html[lang="zh-CN"] .display-controls a[aria-current="page"],html[lang="zh-CN"] .display-controls button[aria-pressed="true"]{font-weight:500}@media screen and (max-width: 700px){.work-entry{grid-template-columns:minmax(0, 1fr);gap:18px;padding:18px}.work-entry-image{box-sizing:border-box;width:100%;max-width:420px}html[lang="zh-CN"] body{font-size:16px}html[lang="zh-CN"] #about{font-size:28px}}@media screen and (max-width: 540px){.work-tabs{gap:4px}.work-tab{flex:1;min-width:0;gap:6px;padding:10px 8px;font-size:17px}.work-tab-count{flex-shrink:0;min-width:18px;height:18px;padding:0 2px;font-size:11px}.work-entry{padding:16px}.work-entry-heading h3{font-size:21px}.project-detail-header h1{font-size:28px}.project-page .wrapper{width:100%}.project-page .profile-nav{order:3;flex-basis:100%;justify-content:flex-start;font-size:13px}.project-page .site-content{padding-top:24px}.project-page .project-detail-header h1{font-size:34px}}@media print{:root,:root[data-theme]{color-scheme:light;--page-bg:#fff;--page-text:#454b55;--strong:#252b34;--heading:#043361;--link:#176591;--link-hover:#043361;--muted:#626b78;--rule:#d7dde5;--control-border:#788493;--surface:#edf3f8;--role:#ad4036;--image-shadow:0 2px 6px #17385816}.profile{position:static}.site-content{padding-top:0}.profile-nav,.display-controls,.social-icons,.demo-controls,dialog{display:none}.work-card{break-inside:avoid}}
