:root{--paper:#f5f3eb;--ink:#252b27;--muted:#73756b;--line:#d5d7cc;--accent:#853e2c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:10}.site-header{margin:0 5%;height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.brand{font-family:Georgia,serif;font-size:36px;white-space:nowrap;display:flex;align-items:center;gap:3px}.brand-star{font-size:30px;color:var(--accent)}.brand>span:last-child{font:11px Arial,sans-serif;letter-spacing:2px;margin-left:10px}.site-header nav{display:flex;gap:27px;font-size:13px}.site-header nav a{padding:8px 0}.site-header nav [aria-current]{border-bottom:1px solid var(--accent);color:var(--accent)}.contact{font-size:13px;border:1px solid var(--line);padding:8px 17px;border-radius:30px}.hero{margin:68px 7% 55px;display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:center}.eyebrow{font:10px/1.6 Arial,sans-serif;letter-spacing:2px;color:var(--muted)}h1,h2,h3,p,figure{margin-top:0}.hero h1{position:relative;font:clamp(80px,9.4vw,145px)/.95 Georgia,serif;font-weight:400;letter-spacing:-7px;margin:35px 0 28px}em{font-style:italic}.hero h1 em{font-weight:400}.hero-star{font:65px Georgia;position:absolute;top:0;right:8%;color:var(--accent)}.hero-deck{font-size:18px;line-height:1.6}.hero-links{display:flex;align-items:center;gap:27px;font-size:12px;margin-top:27px}.pill{display:inline-flex;gap:38px;background:var(--ink);color:var(--paper);border-radius:30px;padding:13px 22px}.pill:hover{background:var(--accent);color:white}.portrait{margin:0;transform:rotate(2deg);padding:12px 12px 0;background:#e9e7dd}.portrait img{display:block;width:100%;height:410px;object-fit:cover;object-position:50% 35%;filter:saturate(.78)}.portrait figcaption{font-size:8px;letter-spacing:1px;display:flex;justify-content:space-between;padding:13px 0;gap:12px}.now-strip{border-block:1px solid var(--line);padding:21px 7%;display:flex;justify-content:space-between;gap:20px;font-size:11px}.now-strip>span:first-child{letter-spacing:1px}.now-strip i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7d8d59;margin-right:9px}.now-strip>span:nth-child(2){color:var(--muted)}.about-layout{padding:85px 7%;display:grid;grid-template-columns:1fr 1.22fr;gap:10%}.about-layout h2{font:42px/1.16 Georgia,serif;letter-spacing:-1px;margin-top:30px}.socials{display:flex;gap:20px;font-size:11px;margin-top:35px}.prose{font-size:15px;line-height:1.95}.prose p{margin-bottom:24px}.prose h2{font:31px/1.25 Georgia,serif;margin:50px 0 25px;letter-spacing:-.4px}.prose h2:first-child{margin-top:0}.prose h3{font:24px Georgia,serif}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.prose ul{padding-left:22px}.prose li{margin-bottom:8px}.prose img{max-width:100%;height:auto}.about-layout .prose>h2:first-child{font:10px Arial;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:23px}.explore{padding:50px 7% 80px;background:#eaece2}.explore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:30px}.explore-grid>a{border-top:1px solid #bdc4b7;padding-top:25px}.explore-grid span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.explore-grid h2{font:27px Georgia,serif;margin:22px 0 15px}.explore-grid p{font-size:12px;color:var(--muted);max-width:270px}.page-heading{padding:65px 7% 55px;border-bottom:1px solid var(--line)}.page-heading h1{font:clamp(40px,5.2vw,78px)/1.1 Georgia,serif;letter-spacing:-2px;margin:24px 0 0}.document-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:65px;margin:60px 7% 100px}.toc{align-self:start;position:sticky;top:30px;font-size:11px}.toc a{display:block;margin:12px 0;line-height:1.5}.document{max-width:850px;min-width:0}.document>h2{border-top:1px solid var(--line);padding-top:27px;margin-top:55px}.document>h2:first-child{border:0;padding:0}.document.cv>p{border-top:1px solid var(--line);padding-top:20px;margin-bottom:12px}.document.cv>ul{margin-top:12px;margin-bottom:36px}.document blockquote{margin:0 0 45px;padding:30px;border-left:2px solid var(--accent);background:#eaece2;font-size:17px;line-height:2.1}.document blockquote p{margin:0}.progress-map{display:flex;gap:30px;align-items:center;padding:35px;background:#eaece2}.progress-map span:not(:nth-child(2)){border:1px solid var(--line);background:var(--paper);padding:10px 35px}.project{display:grid;grid-template-columns:35% 1fr;gap:30px;border-bottom:1px solid var(--line);padding:25px 0;align-items:start}.project-image img{width:100%;height:170px;object-fit:contain;background:#e6e8dd;display:block}.project-description{font-size:13px;line-height:1.8}.project-description strong{display:block;font:23px/1.25 Georgia,serif;margin-bottom:10px}.project-description br:first-of-type{display:none}.search-label{display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;margin-bottom:20px}input{display:block;width:100%;margin-top:12px;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:14px 0;font:17px Georgia;color:var(--ink);border-radius:0}#search-status{font-size:12px;color:var(--muted)}.booklist hr{border:0;border-top:1px solid var(--line);margin:40px 0}.booklist .book-row{border-bottom:1px solid var(--line);padding:18px 0;margin:0;font-size:14px;counter-increment:books}.booklist .book-row:before{content:counter(books,decimal-leading-zero);color:var(--muted);font-size:10px;display:inline-block;margin-right:17px}.cat-gallery{columns:2;column-gap:25px}.cat-gallery p{break-inside:avoid}.cat-gallery h2{font:22px Georgia;break-after:avoid;margin-top:0}.cat-gallery img{width:100%;display:block}.site-footer{margin:0 5%;padding:50px 2% 25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:25px}.footer-name{font:30px Georgia,serif}.footer-name span{color:var(--accent)}.site-footer p{font-size:11px;color:var(--muted);margin:15px 0}.site-footer>div:nth-child(2){display:flex;gap:25px;font-size:12px;align-items:center}.footer-bottom{width:100%;display:flex;gap:25px;border-top:1px solid var(--line);padding-top:22px;font-size:10px;color:var(--muted)}.footer-bottom span{margin-right:auto}.sitemap{margin:60px 7%;max-width:900px}.sitemap .archive__item{padding:15px 0;border-bottom:1px solid var(--line)}.sitemap h2{font-size:23px}.sitemap p{font-size:12px} [hidden]{display:none!important}
@media(min-width:1500px){body{max-width:1600px;margin:auto}}@media(max-width:1000px){.brand>span:last-child{display:none}.site-header nav{gap:17px}.hero{gap:6%;margin-inline:6%}.portrait img{height:350px}.hero-star{right:0;font-size:48px}.hero h1{letter-spacing:-4px}.about-layout{gap:6%}.document-layout{grid-template-columns:170px minmax(0,1fr);gap:35px}.project{grid-template-columns:1fr}.project-image img{height:220px}.now-strip>span:nth-child(2){display:none}}@media(max-width:650px){.site-header{height:auto;min-height:100px;flex-wrap:wrap;padding:15px 0;gap:7px}.site-header nav{order:3;overflow-x:auto;width:100%;justify-content:space-between;font-size:11px;gap:18px}.brand{font-size:28px}.brand>span:last-child{display:block;font-size:9px}.contact{font-size:11px;padding:6px 14px}.hero{display:flex;flex-direction:column;align-items:stretch;margin:40px 7%}.hero h1{font-size:93px;margin:25px 0;letter-spacing:-4px}.hero-star{right:10%}.hero-deck{font-size:16px}.portrait{margin-top:40px;max-width:430px}.portrait img{height:360px}.hero-links{gap:22px}.now-strip{font-size:9px;padding:17px 7%}.about-layout{display:block;padding:50px 7%}.about-layout>div:first-child{margin-bottom:45px}.about-layout h2{font-size:36px}.explore-grid{grid-template-columns:1fr;gap:15px}.explore-grid>a{padding:20px 0}.explore-grid h2{margin:12px 0}.explore{padding-bottom:35px}.page-heading{padding:40px 7%}.page-heading h1{letter-spacing:-1px}.document-layout{display:block;margin:30px 7% 65px}.toc{position:static;display:flex;flex-wrap:wrap;gap:5px 15px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:30px}.toc .eyebrow{width:100%;margin-bottom:2px}.toc a{margin:2px 0;font-size:10px}.document{font-size:14px}.document.cv span[style]{float:none!important;display:inline-block;margin-left:8px;font-size:12px;color:var(--muted)}.prose h2{font-size:27px}.document blockquote{padding:20px;font-size:15px}.cat-gallery{columns:1}.site-footer>div:nth-child(2){font-size:11px}.footer-bottom{flex-wrap:wrap;gap:12px 20px}.footer-bottom span{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Refined homepage sizing and simplified social navigation. */
.hero h1{font-size:clamp(66px,7.3vw,108px);letter-spacing:-4px}
.portrait{width:84%;max-width:350px;justify-self:center}
.portrait img{height:320px}
.portrait figcaption{justify-content:flex-end}
.socials{flex-wrap:wrap;gap:12px 20px}
.site-footer>div:nth-child(2){flex-wrap:wrap}
@media(max-width:1000px){.portrait img{height:280px}}
@media(max-width:650px){.hero h1{font-size:72px;letter-spacing:-3px}.portrait{width:78%;max-width:300px;align-self:center}.portrait img{height:290px}}

/* Keep the full name on one line at each layout size. */
.hero h1{white-space:nowrap;font-size:clamp(40px,5.4vw,80px);letter-spacing:-2px}
@media(max-width:650px){.hero h1{font-size:clamp(32px,9vw,58px);letter-spacing:-1.5px}}
/* Research publication index. */
.research{max-width:none}.research .publication-intro{margin:55px 0 24px}.publication-intro>p:last-child{font:24px/1.4 Georgia,serif;margin-bottom:0}.publication-year>h2{display:flex;align-items:baseline;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin:45px 0 0;font:35px Georgia,serif}.publication-year>h2 span{font:10px Arial,sans-serif;letter-spacing:1px;color:var(--muted)}.publication{display:grid;grid-template-columns:minmax(150px,29%) minmax(0,1fr);gap:28px;padding:35px 0;border-bottom:1px solid var(--line)}.publication .paper-visual{background:#e7e9de;aspect-ratio:4/3;align-self:start;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;text-decoration:none;border:1px solid var(--line);color:var(--ink)}.paper-visual img{width:100%;height:100%;object-fit:contain;display:block}.paper-visual.has-image .paper-visual-title{display:none}.paper-visual-title{padding:24px;font:25px/1.15 Georgia,serif;text-align:center}.text-visual:before{content:'';position:absolute;inset:12px;border:1px solid #c6ccbd;pointer-events:none}.paper-details .paper-venue{font:10px/1.4 Arial,sans-serif;letter-spacing:1.3px;color:var(--accent);margin:0 0 12px}.paper-details h3{font:24px/1.25 Georgia,serif;margin:0 0 13px}.paper-details .paper-authors{font:11px/1.8 Arial,sans-serif;color:var(--muted);margin:0 0 13px}.paper-authors strong{color:var(--ink)}.paper-details .paper-summary{font:13px/1.75 Arial,sans-serif;margin:0 0 17px}.paper-links{display:flex;flex-wrap:wrap;gap:10px 20px}.paper-links a{font:11px/1.5 Arial,sans-serif;text-decoration:none;border-bottom:1px solid #baab98;padding-bottom:2px}.paper-details .equal-note{font:10px Arial,sans-serif;color:var(--muted);margin:-5px 0 15px}.related-project{margin-top:24px;padding:15px 0 0;border-top:1px solid var(--line)}.related-project>span{display:block;font:9px Arial,sans-serif;letter-spacing:1.2px;color:var(--muted);margin-bottom:8px}.related-project>a{font:16px Georgia,serif;text-decoration:none}.related-project>p{font:11px Arial,sans-serif;color:var(--muted);margin:8px 0 0}
@media(min-width:1100px){body:has(.research) .document-layout{grid-template-columns:170px minmax(0,1fr);gap:55px}}@media(max-width:900px){.publication{grid-template-columns:1fr}.paper-visual{max-width:340px;width:100%}.paper-details h3{font-size:23px}}@media(max-width:650px){.publication{gap:22px;padding:28px 0}.publication .paper-visual{max-width:none;aspect-ratio:16/9}.publication-year>h2{margin-top:35px}.paper-details .paper-authors{font-size:12px}.paper-details .paper-summary{font-size:14px}.paper-links a{font-size:12px}}
.paper-visual img{position:absolute;inset:0;opacity:0}.paper-visual.image-ready img{opacity:1}.paper-visual.has-image:not(.image-ready) .paper-visual-title{display:block}
.paper-details .paper-date-note{font:10px/1.5 Arial,sans-serif;color:var(--muted);margin:0 0 12px}.publication-intro .publication-order-note{font:11px/1.8 Arial,sans-serif;color:var(--muted);max-width:600px;margin-top:15px}
/* Research uses a single reading column without a section index. */
body:has(.research) .research-layout{display:block;max-width:1140px;margin:60px auto 100px;padding:0 5%}.research-layout>.research{width:100%}.research-layout .publication{grid-template-columns:minmax(180px,30%) minmax(0,1fr);gap:35px}.research-layout #perspective{max-width:900px}.research-layout .publication-intro{margin-top:50px}
@media(max-width:650px){body:has(.research) .research-layout{margin:30px auto 60px;padding:0 7%}.research-layout .publication{grid-template-columns:1fr;gap:22px}}

/* Retain the left index without year, count, or publication-title links. */
body:has(.research) .research-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:55px;max-width:1400px;margin:60px auto 100px;padding:0 7%}
@media(max-width:1000px){body:has(.research) .research-layout{grid-template-columns:145px minmax(0,1fr);gap:30px}.research-layout .publication{grid-template-columns:1fr}}
@media(max-width:650px){body:has(.research) .research-layout{display:block;margin:30px auto 60px}.research-layout .toc{display:block}.research-layout .toc a{display:block;margin:10px 0}}
@media(min-width:801px){.research-layout .publication{grid-template-columns:minmax(150px,29%) minmax(0,1fr);gap:28px}}
@media(min-width:651px) and (max-width:800px){.research-layout .paper-visual{max-width:320px}}

#roboclaw .paper-visual.image-ready img,#agibot .paper-visual.image-ready img{object-fit:cover}
#roboclaw .paper-visual,#agibot .paper-visual{aspect-ratio:16/9}#roboclaw .paper-visual.image-ready img,#agibot .paper-visual.image-ready img{object-fit:contain}
#humanoid .paper-visual{aspect-ratio:16/9}#humanoid .paper-visual.image-ready img{object-fit:contain}

.research-layout .publication-intro:first-child{margin-top:0}
/* Media and Talks: a chronological editorial list. */
.media-intro{font:17px/1.7 Georgia,serif;color:var(--muted);margin:25px 0 0;max-width:650px}.media-list{max-width:1120px;margin:55px auto 90px;padding:0 7%}.media-entry{display:grid;grid-template-columns:145px minmax(0,1fr);gap:45px;padding:37px 0 42px;border-bottom:1px solid var(--line)}.media-entry:first-child{border-top:1px solid var(--line)}.media-date{font:10px/1.6 Arial,sans-serif;letter-spacing:1.3px;color:var(--muted);padding-top:3px}.media-meta{font:10px/1.7 Arial,sans-serif;letter-spacing:1px;color:var(--accent);margin:0 0 16px}.media-meta span{padding:0 7px}.media-details h2{font:28px/1.4 Georgia,'Songti SC',serif;letter-spacing:-.3px;margin:0 0 17px;font-weight:400}.media-summary{font:14px/1.9 Arial,'PingFang SC',sans-serif;color:var(--muted);margin:0 0 23px;max-width:700px}.media-action{font:11px/1.6 Arial,sans-serif;border-bottom:1px solid #baab98;padding-bottom:4px}.site-header nav{gap:20px}
@media(min-width:651px) and (max-width:1050px){.site-header{height:auto;min-height:100px;flex-wrap:wrap;padding:15px 0;gap:10px}.site-header nav{order:3;width:100%;justify-content:space-between;gap:15px;padding-top:8px}.site-header .brand{margin-right:auto}}
@media(max-width:650px){.site-header nav{justify-content:flex-start;overflow-x:auto;gap:20px;white-space:nowrap;padding-bottom:5px}.media-list{margin:30px auto 55px}.media-entry{grid-template-columns:1fr;gap:15px;padding:28px 0 33px}.media-details h2{font-size:24px}.media-intro{font-size:16px}.media-meta{font-size:9px}.media-date{font-size:10px}}

/* Shared sidebar for Media. */
.media-layout{grid-template-columns:170px minmax(0,1fr);gap:55px;max-width:1400px;margin:60px auto 100px;padding:0 7%}.media-layout .media-list{max-width:none;margin:0;padding:0;min-width:0}.media-layout .media-entry{grid-template-columns:110px minmax(0,1fr);gap:28px}.media-layout .media-entry:first-child{padding-top:25px}.media-layout .toc{padding-top:25px}
@media(max-width:1000px){.media-layout{grid-template-columns:145px minmax(0,1fr);gap:30px}.media-layout .media-entry{grid-template-columns:1fr;gap:14px}}
@media(max-width:650px){.media-layout{display:block;margin:30px auto 60px}.media-layout .toc{padding-top:0;display:block}.media-layout .media-list{margin:0}.media-layout .media-entry{grid-template-columns:1fr}}

/* Recent work on the homepage. */
.games-update{margin:0 7%;padding:70px 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:7%;align-items:center;border-bottom:1px solid var(--line)}.games-update figure{margin:0}.games-update img{display:block;width:100%;height:auto}.games-update figcaption{font:9px/1.6 Arial,sans-serif;letter-spacing:1px;color:var(--muted);margin-top:12px}.games-copy h2{font:36px/1.15 Georgia,serif;letter-spacing:-.7px;margin:20px 0 24px}.games-copy>p:not(.eyebrow){font:14px/1.9 Arial,sans-serif;margin-bottom:24px}.games-copy strong{font-weight:600}.games-press{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:11px}.games-press a{border-bottom:1px solid #baab98;padding-bottom:3px}@media(max-width:650px){.games-update{grid-template-columns:1fr;padding:45px 0;gap:30px}.games-copy h2{font-size:31px}.games-copy>p:not(.eyebrow){font-size:14px}}

.wechat-copy{appearance:none;background:none;border:0;padding:0;color:inherit;font:inherit;line-height:inherit;cursor:pointer}.wechat-copy:hover{color:var(--accent)}.wechat-copy:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
/* CV: institutions, experience and a concise year-based record. */
.cv-entry{display:grid;grid-template-columns:155px minmax(0,1fr);gap:28px;padding:25px 0;border-bottom:1px solid var(--line)}.cv-logo{height:90px;display:flex;align-items:center;justify-content:flex-start}.cv-logo img{width:100%;height:auto;max-height:85px;object-fit:contain}.cv-entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.cv-entry-copy h3{font:23px/1.4 Georgia,serif;margin:0 0 8px}.cv-year{white-space:nowrap;font:11px/1.7 Arial,sans-serif;color:var(--muted)}.cv-entry-copy .cv-role{font-size:14px;margin:0 0 5px}.cv-entry-copy .cv-location{font-size:11px;color:var(--muted);margin:0 0 12px}.cv-entry-copy>p:last-child{margin-bottom:0}.cv-entry-copy>ul{margin-bottom:0}.cv-entry-copy p,.cv-entry-copy li{font-size:13px}.cv-reorganized>h2{margin-top:55px}.cv-reorganized>h2:first-child{margin-top:0}.cv-service-item{display:flex;justify-content:space-between;align-items:baseline;gap:25px;padding:20px 0;border-bottom:1px solid var(--line)}.cv-service-item p{margin:0}.cv-reorganized>p{display:flex;justify-content:space-between;align-items:baseline;gap:18px}.cv-reorganized>p strong{font:21px/1.4 Georgia,serif}
@media(max-width:1000px){.cv-entry{grid-template-columns:1fr;gap:15px}.cv-logo{height:65px;max-width:190px}.cv-logo img{max-height:65px}}
@media(max-width:650px){.cv-entry-heading{display:block}.cv-entry-heading .cv-year{display:block;margin-bottom:8px}.cv-service-item{gap:15px}.cv-entry-copy h3{font-size:22px}.cv-reorganized>p{display:block}.cv-reorganized>p .cv-year{display:block}}
.cv-logo img[src$="cuhk-official.png"]{mix-blend-mode:multiply}
.competition-compact{font-size:14px;line-height:1.7}.competition-games{padding:12px 0 18px;border-bottom:1px solid var(--line)}.competition-games h3{font:21px/1.5 Georgia,serif;margin:0 0 12px}.competition-year{font:12px/1.7 Arial,sans-serif;color:var(--muted);font-variant-numeric:tabular-nums}.competition-games h3 .competition-year{display:inline-block;margin-right:14px}.competition-medals{list-style:none;padding:0!important;margin:0 0 0 49px!important}.competition-medals li{display:flex;justify-content:space-between;gap:20px;margin:3px 0!important;font-size:13px}.competition-medals strong{font-weight:400;white-space:nowrap}.competition-line{display:grid;grid-template-columns:35px minmax(0,1fr);gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.competition-line strong{font-weight:600;margin-left:8px}@media(max-width:650px){.competition-medals{margin-left:0!important}.competition-medals li{gap:12px;font-size:12px}.competition-line strong{display:block;margin-left:0}.competition-games h3{font-size:20px}}

.medal{font-weight:600}.medal-gold{color:#b38312}.medal-silver{color:#818c99}.medal-bronze{color:#b96f3a}
/* Pointer photo album */
.pointer-album{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px;margin-top:40px}.pointer-album .pointer-photo{margin:0;min-width:0}.pointer-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;background:#e7e5dc}.pointer-photo figcaption{display:flex;align-items:baseline;gap:13px;padding:12px 0 0;font:20px/1.4 Georgia,serif}.pointer-photo figcaption span{font:10px/1.5 Arial,sans-serif;letter-spacing:1px;color:var(--muted)}.pointer-album .pointer-photo-wide{grid-column:1/-1}.pointer-photo-wide img{aspect-ratio:16/10}.pointer-photo:first-child img{object-position:center 35%}@media(max-width:650px){.pointer-album{gap:25px 15px;margin-top:30px}.pointer-photo figcaption{font-size:17px;gap:8px;padding-top:9px}}@media(max-width:380px){.pointer-album{grid-template-columns:1fr}.pointer-photo-wide img{aspect-ratio:16/10}}
.now-strip>span:nth-child(2){display:block}.now-strip{flex-wrap:wrap}.now-strip>span:nth-child(2){flex:1;text-align:center}@media(max-width:650px){.now-strip>span:nth-child(2){order:3;flex-basis:100%;text-align:left;font-size:11px}.now-strip{row-gap:8px}}
.teleop-highlight{margin:0 7%;padding:60px 0 65px;border-bottom:1px solid var(--line)}.teleop-highlight-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:30px}.teleop-highlight-heading .eyebrow{margin:0}.teleop-overview{font-size:12px;border-bottom:1px solid #baab98;padding-bottom:3px;white-space:nowrap}.teleop-highlights{display:grid;grid-template-columns:1fr 1fr;gap:6%}.teleop-feature{display:block}.teleop-feature h2{font:32px/1.2 Georgia,serif;letter-spacing:-.5px;margin:0 0 22px}.teleop-feature h2 span{font:23px Arial,sans-serif;color:var(--accent);white-space:nowrap}.teleop-feature p{font-size:14px;line-height:1.95;margin:0;color:var(--muted)}.teleop-feature strong{color:var(--ink);font-weight:600}.teleop-feature:hover h2{color:var(--accent)}.teleop-press{margin-top:30px}@media(max-width:650px){.teleop-highlight{padding:40px 0}.teleop-highlight-heading{display:block;margin-bottom:25px}.teleop-overview{display:inline-block;margin-top:14px}.teleop-highlights{grid-template-columns:1fr;gap:30px}.teleop-feature h2{font-size:28px;margin-bottom:15px}}
.teleop-highlight-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:7%;align-items:center}.teleop-motion{display:block;background:#252b27;overflow:hidden}.teleop-motion video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.teleop-highlight-copy>.eyebrow{margin:0 0 20px}.teleop-highlight-copy>p:not(.eyebrow){font-size:14px;line-height:1.95;margin:0 0 18px;color:var(--muted)}.teleop-highlight-copy strong{color:var(--ink);font-weight:600}.teleop-highlight-copy .teleop-press{gap:12px 18px;margin-top:24px}@media(max-width:650px){.teleop-highlight-media{grid-template-columns:1fr;gap:28px}.teleop-motion video{aspect-ratio:16/9}}
.teleop-media-stack{min-width:0}.teleop-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.teleop-mini-grid figure{margin:0;min-width:0}.teleop-mini-grid video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#252b27}.teleop-mini-grid figcaption{font:10px/1.6 Arial,sans-serif;letter-spacing:.5px;color:var(--muted);margin-top:6px}

/* Consistent image corners on About. */
body:has(.hero) main img,body:has(.hero) main video{border-radius:8px}body:has(.hero) .portrait img{border-radius:8px;clip-path:none}body:has(.hero) .teleop-motion{border-radius:8px}

.teleop-media-caption{font:9px/1.6 Arial,sans-serif;letter-spacing:1px;color:var(--muted);margin:12px 0 0}

.teleop-highlight-copy>p.teleop-team-credit{font-size:12px;line-height:1.7;color:var(--ink);border-left:2px solid var(--accent);padding-left:13px;margin:0 0 24px}.engineering-cta{margin:26px 0 0}.engineering-cta .pill{display:inline-flex;align-items:center;gap:24px;padding:13px 21px;font-size:12px;background:var(--ink);color:var(--paper)}.engineering-cta .pill:hover{background:var(--accent)}.engineering-cta>p{font:10px/1.7 Arial,sans-serif;color:var(--muted);margin:10px 0 0}.teleop-mini-link{display:block;border-radius:8px;overflow:hidden}.teleop-mini-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.teleop-highlight-copy .teleop-press{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}
.project-image video{width:100%;height:170px;object-fit:contain;background:#e6e8dd;display:block}.paper-visual video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.paper-visual:has(video) .paper-visual-title{display:none}@media(max-width:1000px){.project-image video{height:220px}}

.hero h1 .hero-name-cn{display:block;margin-top:15px;font:22px/1.5 Arial,"PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:1px}.hero-position{margin:28px 0 30px}.hero-company{font-size:12px;letter-spacing:.8px;color:var(--muted);margin:0 0 10px}.hero-company i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7d8d59;margin-right:9px}.hero-role{font-size:21px;line-height:1.55;margin:0 0 16px}.hero-role span{font-size:17px;color:var(--muted)}.hero-research-link{display:inline-block;font-size:13px;border-bottom:1px solid #baab98;padding-bottom:3px}.hero-socials{margin-top:0}@media(max-width:650px){.hero h1 .hero-name-cn{font-size:19px;margin-top:12px}.hero-role{font-size:20px}.hero-role span{font-size:16px}}

/* Compact editorial identity and role hierarchy. */
.hero h1{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:16px;row-gap:5px;font-size:clamp(40px,5.1vw,76px);line-height:1.1;white-space:normal;margin:24px 0 25px}.hero h1 em{margin-left:-5px}.hero h1 .hero-name-cn{display:inline-block;font:16px/1.5 Arial,"PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:0;margin:0;color:var(--muted);white-space:nowrap}.hero-position{margin:0 0 30px;padding-left:17px;border-left:2px solid var(--line)}.hero-company{font-size:12px;letter-spacing:.3px;margin:0 0 8px}.hero-company i{display:none}.hero-role{font-size:18px;line-height:1.6;margin:0 0 10px}.hero-role span{font-size:16px;color:var(--ink)}.hero-role .role-divider{display:none}.hero-research-link{font-size:12px;padding-bottom:1px}.hero-socials{gap:10px 18px}.hero{padding-bottom:20px}@media(max-width:650px){.hero h1{font-size:clamp(34px,8.6vw,52px);column-gap:12px;margin-bottom:22px}.hero h1 .hero-name-cn{font-size:14px}.hero-position{margin-bottom:25px}.hero-role{font-size:17px}.hero-role span{font-size:15px}}

.hero-position{border-left:0;padding-left:0}.hero-role{display:flex;flex-direction:column;gap:3px;font:18px/1.5 Arial,Helvetica,sans-serif;margin:0 0 14px}.hero-role span{font:inherit;color:var(--ink)}@media(max-width:650px){.hero-role{font-size:17px}.hero-role span{font:inherit}}

.hero-position{display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:2px solid var(--line);padding-left:17px}.hero-position-copy{min-width:0}.hero h1 .hero-name-cn{font-size:20px}.teleop-home-button{display:block;flex-shrink:0;background:#202420;color:#fff;border-radius:7px;padding:13px 16px;font:12px/1.6 Arial,Helvetica,sans-serif}.teleop-home-button span{margin-left:9px}.teleop-home-button:hover{background:var(--accent);color:white}@media(max-width:650px){.hero h1 .hero-name-cn{font-size:18px}.hero-position{gap:12px;padding-left:13px}.teleop-home-button{font-size:11px;padding:11px 12px}.hero-role{font-size:15px}}@media(max-width:360px){.hero-position{flex-wrap:wrap}.teleop-home-button br{display:none}}

.hero-position{flex-wrap:wrap}.hero-position-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.hero-position-actions .teleop-home-button,.hero-position-actions .hero-research-link{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:43px;border-radius:999px;padding:10px 17px;font:12px/1.5 Arial,Helvetica,sans-serif;white-space:nowrap;border:1px solid #202420}.hero-position-actions .teleop-home-button span{margin:0}.hero-position-actions .hero-research-link{background:#fff;color:var(--ink);border-color:var(--line)}.hero-position-actions .hero-research-link:hover{border-color:var(--ink)}.hero-position-copy .hero-role{margin-bottom:0}.hero-position-actions{width:100%;margin-top:3px}@media(min-width:1400px){.hero-position-actions{width:100%;flex-direction:row;align-items:center}}

.hero-bio{font:14px/1.85 Arial,Helvetica,sans-serif;margin:28px 0;color:var(--ink);max-width:620px}.hero-bio p{margin:0 0 18px}.hero-bio p:last-child{margin-bottom:0}.hero-bio strong{font-weight:600}.hero:has(.hero-bio){align-items:start}.hero:has(.hero-bio) .portrait{position:sticky;top:35px;margin-top:0}@media(max-width:650px){.hero-bio{font-size:13px;line-height:1.8}.hero:has(.hero-bio) .portrait{position:static}}

.hero-position-actions{flex-direction:row;align-items:center}.hero:has(.hero-bio) h1{margin-top:0}
@media(min-width:1400px){.hero-position{flex-wrap:nowrap;justify-content:space-between}.hero-position-actions{width:auto;flex-wrap:nowrap;flex-direction:row;margin-top:0;margin-left:auto}.hero-position-copy{flex-shrink:0}.hero-position-actions .teleop-home-button,.hero-position-actions .hero-research-link{padding-inline:14px;gap:12px}}

/* Three peer groups, separated like an editorial role strip. */
@media(min-width:1001px){.hero:has(.hero-bio){grid-template-columns:minmax(0,1.65fr) minmax(0,.85fr);gap:4%;margin-inline:7%}.hero:has(.hero-bio) .portrait{width:100%;max-width:350px;justify-self:start}.hero-bio{max-width:none}.hero-position{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:0;border-left:0;padding-left:0;align-items:center}.hero-position-actions{display:contents}.hero-action-cell{border-left:1px solid var(--line);padding:16px 18px;align-self:stretch;display:flex;align-items:center}.hero-action-cell:last-child{padding-right:0}.hero-position-copy{padding-right:18px}.hero-position .teleop-home-button,.hero-position .hero-research-link{padding:10px 15px;gap:12px;font-size:11px}.hero-company{font-size:11px}.hero-role{font-size:17px}}
@media(min-width:651px) and (max-width:1000px){.hero-position{border-left:0;padding-left:0}.hero-position-actions{display:flex}.hero-action-cell+ .hero-action-cell{border-left:1px solid var(--line);padding-left:12px}.hero:has(.hero-bio) .portrait{justify-self:start;width:95%}.hero{gap:5%}}
@media(max-width:650px){.hero-action-cell{display:flex}.hero-action-cell+ .hero-action-cell{border-left:1px solid var(--line);padding-left:10px}}.games-title-arrow{font:22px Arial,sans-serif;color:var(--accent);white-space:nowrap}
@media(min-width:1001px){.hero-position{grid-template-columns:max-content max-content max-content;justify-content:start}.hero-position-copy{padding-right:32px}.hero-action-cell{padding-inline:22px}}

.hero h1 .hero-name-cn{font-size:clamp(23px,2.1vw,34px);line-height:1.3}.highlight-divider{margin:0 7%;padding:15px 0;border-block:1px solid var(--line);font:11px/1.5 Arial,Helvetica,sans-serif;letter-spacing:2px;color:var(--muted)}@media(max-width:650px){.hero h1 .hero-name-cn{font-size:21px}.highlight-divider{padding:12px 0;font-size:10px}}
[data-copy-lang][hidden]{display:none!important}.copy-language-switch{display:inline-flex;gap:3px;border:1px solid var(--line);border-radius:999px;padding:3px;margin-top:24px}.copy-language-switch button{border:0;border-radius:999px;background:transparent;color:var(--muted);padding:5px 12px;font:11px/1.5 Arial,sans-serif;cursor:pointer}.copy-language-switch button[aria-pressed="true"]{background:var(--ink);color:white}.copy-language-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.copy-language-switch+.hero-bio{margin-top:15px}.highlight-body{font:14px/1.9 Arial,Helvetica,sans-serif}.highlight-body p{margin:0 0 24px}.teleop-highlight-copy .highlight-body{color:var(--muted)}.highlight-body strong{font-weight:600;color:var(--ink)}

.site-header>.copy-language-switch{margin:0;flex-shrink:0}.hero-bio{margin-top:28px}@media(max-width:650px){.site-header>.copy-language-switch{margin-left:auto}}
