@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;line-height:1.6}img,picture,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}}@layer tokens{:root{color-scheme:light;--ink:#131c28;--ink-soft:#3d4756;--muted:#68738a;--accent:#1d4fd7;--accent-ink:#163ca8;--accent-soft:#eef3fd;--bg:#fff;--bg-band:#f5f7fa;--line:#e3e8ef;--line-strong:#cbd3dd;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro SC", system-ui, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--mono:"Google Sans Code", ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--container:68rem;--gutter:1.25rem;--deck-arrow-lane:4.5rem;--radius:10px;--shadow:0 1px 2px #131c280d, 0 8px 24px -12px #131c281f;--footer-h:3.5rem;--topbar-h:4.2rem}html[data-theme=dark]{color-scheme:dark;--ink:#f4f7fc;--ink-soft:#d5dce8;--muted:#aeb8ca;--accent:#a8c2ff;--accent-ink:#d7e3ff;--accent-soft:#243352;--bg:#10161f;--bg-band:#1a222f;--line:#3a465a;--line-strong:#556378;--shadow:0 1px 2px #00000073, 0 14px 36px -16px #000000b3}}@layer base{@font-face{font-family:Google Sans Code;font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/gsc-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Google Sans Code;font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/gsc-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--bg);font-size:1rem;transition:color .28s,background-color .28s}html[data-theme=dark] body{background:radial-gradient(1100px 520px at 8% -8%, #6e91d212, transparent 55%), radial-gradient(900px 480px at 92% 0%, #4664a00d, transparent 50%), radial-gradient(700px 420px at 50% 110%, #2846780a, transparent 55%), var(--bg)}html[data-theme=dark] ::selection{background:var(--accent);color:#10161f}html[data-theme=dark] .hero-grid .bio,html[data-theme=dark] .research-card p,html[data-theme=dark] .project-card .desc,html[data-theme=dark] .pub-card-authors,html[data-theme=dark] .pub-card-meta,html[data-theme=dark] .writer-body{line-height:1.72}html[data-theme=dark] .hero-grid .bio,html[data-theme=dark] .research-card p,html[data-theme=dark] .project-card .desc,html[data-theme=dark] .pub-card-authors,html[data-theme=dark] .patent-table td:first-child{color:var(--ink-soft)}html[data-theme=dark] .pub-card-meta .venue,html[data-theme=dark] .pub-card-meta .year,html[data-theme=dark] .book-list .book-meta,html[data-theme=dark] .section-head .en,html[data-theme=dark] .pub-group h3,html[data-theme=dark] .fact-list dt,html[data-theme=dark] .table-note{color:var(--muted)}html[data-theme=dark] a{text-decoration-color:color-mix(in srgb, var(--ink) 45%, transparent)}html[data-theme=dark] a:hover{text-decoration-color:var(--ink)}h1,h2,h3{text-wrap:balance;line-height:1.25}a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}a:hover{color:var(--ink)}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}}@layer layout{.container{box-sizing:border-box;width:min(100% - (var(--gutter) * 2), var(--container));overflow-wrap:break-word;max-width:100%;margin-inline:auto}body{height:100dvh;overflow:hidden}body:has(.analytics-page){height:auto;min-height:100dvh;overflow:auto}.deck{height:calc(100dvh - var(--footer-h));overscroll-behavior:contain;scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.deck.is-programmatic-scrolling{scroll-snap-type:none}.deck::-webkit-scrollbar{display:none}.panel{box-sizing:border-box;width:100%;min-width:100%;max-width:100%;padding-inline:max(var(--gutter), var(--deck-arrow-lane));scroll-snap-align:start;scroll-snap-stop:always;flex-direction:column;flex:0 0 100%;justify-content:safe center;height:100%;display:flex;overflow:hidden auto}.panel>.container{width:min(100%, var(--container));padding-block:3rem;padding-top:max(3rem, calc(var(--topbar-h) + .75rem));flex:none;min-width:0;max-width:100%;margin-block:0;margin-inline:auto}.panel.band{background:var(--bg-band)}.deck-footer{inset-inline:0;z-index:50;height:var(--footer-h);background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(12px);border-top:none;justify-content:center;align-items:center;padding-inline:1rem;display:flex;position:fixed;bottom:0}.deck-footer:has(.deck-visitors){flex-direction:column;justify-content:center;align-items:center;gap:.05rem;height:4.35rem;padding:.2rem 1rem .3rem}.footer-nav{scrollbar-width:none;gap:.15rem;max-width:100%;display:flex;overflow-x:auto}.footer-nav::-webkit-scrollbar{display:none}.footer-nav a{color:var(--ink-soft);white-space:nowrap;border-radius:0;padding:.42rem .75rem;font-size:.86rem;text-decoration:none}.footer-nav a:hover{color:var(--ink);text-decoration:none}.footer-nav a[aria-current=true]{background:var(--ink);color:var(--bg)}.deck-visitors,.deck-visitors-status{justify-content:center;align-items:baseline;gap:.3rem;display:inline-flex}.deck-visitors{color:var(--muted);white-space:nowrap;text-decoration:none;position:static}.deck-visitors:hover{color:var(--ink);text-decoration:none}.deck-visitors-value{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink);font-size:.7rem}.deck-visitors-label{letter-spacing:.02em;font-size:.58rem}.deck-visitors-separator{color:var(--muted);font-size:.58rem}.nav-arrow{z-index:40;color:var(--muted);padding:.75rem .4rem;font-size:2.4rem;font-weight:300;line-height:1;text-decoration:none;position:fixed;top:50%;translate:0 -50%}.nav-arrow.prev{left:1rem}.nav-arrow.next{right:1rem}.nav-arrow:hover{color:var(--ink);text-decoration:none}.nav-arrow[hidden]{display:none}.top-bar{z-index:60;height:var(--topbar-h);pointer-events:none;justify-content:space-between;align-items:center;padding-inline:1rem;display:flex;position:fixed;inset:0 0 auto}.top-bar>*{pointer-events:auto}.top-bar-left{flex:none;align-items:center;gap:.15rem;display:inline-flex}.top-bar-right{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;pointer-events:none;flex-direction:row;flex:auto;justify-content:flex-end;align-items:center;gap:.55rem;min-width:0;display:flex;overflow-x:auto;container:topright/inline-size}.top-bar-right::-webkit-scrollbar{display:none}.top-bar-right>*{pointer-events:auto}.top-bar-benches{--bench-chip-h:2.55rem;flex:none}.bench-reel{flex-direction:row;align-items:center;gap:.55rem;display:inline-flex}.top-bar-right>.pen-chip:not(.bench-chip){flex:none;margin-inline-start:.15rem}.top-bar-right .pen-chip{scroll-snap-align:end}@container topright (width<=40rem){.top-bar-benches{height:var(--bench-chip-h);overflow:hidden}.bench-reel{flex-direction:column;align-items:stretch;gap:0;animation:12s ease-in-out infinite bench-reel-cycle;display:flex}.bench-reel .bench-chip{flex:0 0 var(--bench-chip-h);height:var(--bench-chip-h);white-space:nowrap;display:flex}.top-bar-benches:hover .bench-reel,.top-bar-benches:focus-within .bench-reel{animation-play-state:paused}}@keyframes bench-reel-cycle{0%,22%{transform:translateY(0)}25%,47%{transform:translateY(-25%)}50%,72%{transform:translateY(-50%)}75%,97%{transform:translateY(-75%)}97.01%,to{transform:translateY(0)}}.lang-switch,.layout-switch,.theme-switch{width:2.7rem;height:2.7rem;color:var(--ink);cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;line-height:1;text-decoration:none;transition:color .15s,transform .15s,opacity .15s;display:inline-flex}.lang-switch:hover,.layout-switch:hover,.theme-switch:hover{color:var(--ink-soft);text-decoration:none;transform:scale(1.06)}.lang-switch:active,.layout-switch:active,.theme-switch:active{transform:scale(.96)}.theme-switch .icon-sun,html[data-theme=dark] .theme-switch .icon-moon{display:none}html[data-theme=dark] .theme-switch .icon-sun{display:block}.theme-switch svg,.layout-switch svg{width:22px;height:22px;transition:transform .35s,opacity .2s}.theme-switch:hover .icon-moon{transform:rotate(-18deg)}.theme-switch:hover .icon-sun{transform:rotate(24deg)}.layout-switch .icon-deck-layout,html[data-layout=scroll] .layout-switch .icon-scroll-layout{display:none}html[data-layout=scroll] .layout-switch .icon-deck-layout{display:block}.layout-switch:hover .icon-scroll-layout{transform:translateY(1px)scaleY(1.06)}.layout-switch:hover .icon-deck-layout{transform:translate(1px)}html[data-layout=scroll] body:has(.deck){height:auto;min-height:100dvh;overflow:hidden auto}html[data-layout=scroll] .deck{scroll-snap-type:none;width:100%;height:auto;display:block;overflow:visible}html[data-layout=scroll] .deck .panel,html[data-layout=scroll] .deck .panel.band{width:100%;min-width:0;max-width:none;height:auto;min-height:0;padding-inline:max(var(--gutter), 1.25rem);scroll-margin-top:var(--topbar-h);scroll-snap-align:none;scroll-snap-stop:normal;border-bottom:1px solid var(--line);display:block;overflow:visible}html[data-layout=scroll] .deck .panel:last-of-type{border-bottom:0}html[data-layout=scroll] .deck .panel>.container{width:min(100%, var(--container));padding-block:clamp(3rem,6vw,5rem)}html[data-layout=scroll] .deck .panel#about{flex-direction:column;justify-content:safe center;min-height:100dvh;display:flex}html[data-layout=scroll] .deck .panel#about>.container{padding-block:3rem;padding-top:max(3rem, calc(var(--topbar-h) + .75rem));flex:none;margin-block:auto}html[data-layout=scroll] .deck .panel:after{content:none!important;display:none!important}html[data-layout=scroll] body:has(.deck) .panel--wrap-sentinel,html[data-layout=scroll] body:has(.deck) .nav-arrow{display:none!important}html[data-layout=scroll] body:has(.deck) .deck-footer{z-index:auto;width:100%;height:auto;min-height:4.5rem;padding:1.25rem var(--gutter) 1.5rem;background:var(--bg);border-top:1px solid var(--line);-webkit-backdrop-filter:none;position:static;inset:auto;display:flex!important}html[data-layout=scroll] body:has(.deck) .footer-nav{display:none}html[data-layout=scroll] body:has(.deck) .deck-visitors-value{font-size:.78rem}html[data-layout=scroll] body:has(.deck) .deck-visitors-label{font-size:.64rem}html[data-layout=scroll] body:has(.deck) .top-bar{background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent);-webkit-backdrop-filter:blur(14px)}.pen-chip{background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow);color:inherit;border-radius:16px;align-items:center;gap:.65rem;padding:.4rem .85rem .4rem .4rem;text-decoration:none;transition:box-shadow .2s,transform .2s;display:inline-flex}.pen-chip:hover{color:inherit;box-shadow:0 4px 16px color-mix(in srgb, var(--ink) 12%, transparent);text-decoration:none;transform:translateY(-1px)}.bench-chip{flex:none;gap:.55rem;padding:.35rem .75rem .35rem .35rem}.bench-chip-logo{background:var(--bg-band);border-radius:10px;flex:none;place-items:center;width:2rem;height:2rem;display:grid;overflow:hidden}.bench-chip-logo img{object-fit:contain;width:1.2rem;height:1.2rem;display:block}.bench-chip[href*=analog-design-bench] .bench-chip-logo{background:#0a0d13}.bench-chip[href*=analog-canvas] .bench-chip-logo{background:#1e3d36}.bench-chip[href*=analog-design-bench] .bench-chip-logo img,.bench-chip[href*=analog-canvas] .bench-chip-logo img,.bench-chip[href*=razavi-bench] .bench-chip-logo img,.bench-chip[href*=circuits-and-systems] .bench-chip-logo img{width:100%;height:100%}.pen-chip-media{flex:none;align-items:center;gap:.35rem;display:inline-flex}.pen-chip-text{text-align:left;flex-direction:column;gap:.08rem;min-width:0;line-height:1.15;display:flex}.bench-chip .pen-chip-text{gap:0}.pen-chip-text .zh{color:var(--ink);letter-spacing:.02em;font-size:.95rem;font-weight:650}.pen-chip-text .en{font-family:var(--mono);color:var(--muted);letter-spacing:.04em;font-size:.66rem;font-weight:500}.pen-chip-logos{background:var(--bg-band);border-radius:12px;flex:none;width:2.45rem;height:2.45rem;position:relative;overflow:hidden}.pen-chip-logos .logo{opacity:0;background:color-mix(in srgb, var(--brand) 16%, var(--bg));place-items:center;animation:12s ease-in-out infinite pen-logo-cycle;display:grid;position:absolute;inset:0}.pen-chip-logos .logo:before{content:"";background-color:var(--brand);width:1.35rem;height:1.35rem;-webkit-mask:var(--logo) center / contain no-repeat;mask:var(--logo) center / contain no-repeat;filter:drop-shadow(0 1px 1px #00000014)}.pen-chip-logos .logo:first-child{animation-delay:0s}.pen-chip-logos .logo:nth-child(2){animation-delay:3s}.pen-chip-logos .logo:nth-child(3){animation-delay:6s}.pen-chip-logos .logo:nth-child(4){animation-delay:9s}@keyframes pen-logo-cycle{0%{opacity:0;transform:translateY(10px)scale(.86)}6%,19%{opacity:1;transform:translateY(0)scale(1)}25%,to{opacity:0;transform:translateY(-10px)scale(.86)}}.pen-chip-dots{flex-direction:column;justify-content:center;align-items:center;gap:.22rem;width:.55rem;display:flex}.pen-chip-dots i{background:var(--line-strong);border-radius:999px;width:.3rem;height:.3rem;animation:12s ease-in-out infinite pen-dot-cycle;display:block}.pen-chip-dots i:first-child{animation-delay:0s}.pen-chip-dots i:nth-child(2){animation-delay:3s}.pen-chip-dots i:nth-child(3){animation-delay:6s}.pen-chip-dots i:nth-child(4){animation-delay:9s}@keyframes pen-dot-cycle{0%,19%{background:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand) 22%, transparent);transform:scale(1.35)}25%,to{background:var(--line-strong);box-shadow:none;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.pen-chip-logos .logo,.pen-chip-dots i{animation:none}.pen-chip-logos .logo:first-child{opacity:1;transform:none}.pen-chip-dots i:first-child{background:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand) 22%, transparent);transform:scale(1.35)}.lang-switch:hover,.theme-switch:hover{transform:none}.top-bar-benches{height:auto;overflow:visible}.bench-reel{flex-direction:row;align-items:center;gap:.55rem;animation:none;display:inline-flex;transform:none}}html.wechat-browser .top-bar-benches{height:auto;overflow:visible}html.wechat-browser .bench-reel{flex-direction:row;align-items:center;animation:none;display:inline-flex;transform:none}}@layer components{.hero-grid{grid-template-columns:1fr auto;grid-template-areas:"title photo""copy photo";align-items:start;gap:0 3rem;display:grid}.hero-grid>h1{grid-area:title}.hero-copy{grid-area:copy;min-width:0}.hero-aside{grid-area:photo}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.8rem;font-weight:600}.hero-grid h1{letter-spacing:-.02em;margin-top:0;font-size:clamp(2.4rem,5vw,3.4rem);font-weight:700}.hero-grid h1 .name-line{align-items:flex-end;gap:.45em;display:inline-flex}.hero-grid h1 .deg{color:var(--muted);letter-spacing:.04em;font-size:.42em;font-weight:500;line-height:1;transform:translateY(-.22em)}.hero-grid h1 .en{color:var(--muted);letter-spacing:.06em;font-size:.42em;font-weight:500;font-family:var(--sans);margin-top:.4rem;display:block}.hero-grid h1 .en .name-line{gap:.55em}.hero-grid h1 .en .deg{letter-spacing:.08em;font-size:.78em;font-weight:500}.hero-grid .role{color:var(--ink-soft);margin-top:.9rem;font-size:1.06rem}.hero-grid .bio{max-width:46rem;color:var(--ink-soft);margin-top:.85rem}.hero-grid .bio+.bio{margin-top:.65rem}.about-research{margin-top:2.75rem}.hero-aside{flex-direction:column;align-items:center;gap:.85rem;display:flex}.hero-photo{aspect-ratio:3/4;object-fit:cover;border:1px solid var(--line);width:210px;height:auto;box-shadow:var(--shadow);border-radius:16px}.hero-links{justify-content:center;align-items:center;gap:.85rem;display:flex}.hero-link{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:opacity .15s,transform .15s;display:inline-flex;position:relative}.hero-link--orcid{color:#a6ce39}.hero-link--github{color:#181717}.hero-link--linkedin{color:#0a66c2}.hero-link--email{color:#d93025}html[data-theme=dark] .hero-link--github{color:#e6edf3}html[data-theme=dark] .hero-link--email{color:#ff8a80}.hero-link svg{width:1.55rem;height:1.55rem;display:block}a.hero-link:hover,button.hero-link:hover{color:inherit;opacity:.78;text-decoration:none;transform:translateY(-1px)}.hero-link[data-tip]:after,.hero-link .hero-tip{content:attr(data-tip);background:var(--ink);color:var(--bg);font-family:var(--mono);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;opacity:0;pointer-events:none;z-index:40;max-width:min(72vw,22rem);box-shadow:var(--shadow);border-radius:6px;padding:.28rem .55rem;font-size:.68rem;line-height:1.3;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + .55rem);left:50%;overflow:hidden;transform:translate(-50%)translateY(4px)}.hero-link .hero-tip{content:none;display:none}.hero-link .hero-tip.is-on{opacity:1;display:block;transform:translate(-50%)translateY(0)}.hero-link[data-tip]:hover:after,.hero-link[data-tip]:focus-visible:after{opacity:1;transform:translate(-50%)translateY(0)}.fact-list{gap:.45rem;margin-top:1.6rem;padding:0;font-size:.95rem;list-style:none;display:grid}.fact-list li{grid-template-columns:7.5rem 1fr;gap:1rem;display:grid}.fact-list dt{color:var(--muted)}.fact-list dd{color:var(--ink);margin:0}.section-head{border-bottom:2px solid var(--ink);flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:2rem;padding-bottom:.7rem;display:flex}.section-head h2{letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.section-head-meta{align-items:center;gap:.55rem;margin-left:auto;display:inline-flex}.section-head .en{color:var(--muted);font-size:.8rem;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase}.project-stars-total{color:var(--ink);font-family:var(--mono);align-items:center;gap:.4rem;line-height:1;display:inline-flex}.project-stars-total svg{flex-shrink:0;display:block}.project-stars-total-n,.project-forks-total-n{letter-spacing:.02em;font-size:1.35rem;font-weight:700}.pub-mode-toggle{width:1.7rem;height:1.7rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:0;transition:color .15s,background .15s;display:inline-flex}.pub-mode-toggle:hover{color:var(--accent);background:var(--accent-soft)}.pub-mode-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pub-mode-ico{width:1.05rem;height:1.05rem;display:none}#publications[data-pub-mode=all] .ico-show-when-all,#publications[data-pub-mode=role] .ico-show-when-role{display:block}#publications[data-pub-mode=role] .pub-mode-toggle{color:var(--accent-ink)}.pub-search{flex:12rem;min-width:10rem;max-width:22rem}.pub-search-input{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--ink);font:inherit;padding:.4rem .7rem;font-size:.86rem;transition:border-color .15s,box-shadow .15s}.pub-search-input::placeholder{color:var(--muted)}.pub-search-input:hover{border-color:var(--line-strong)}.pub-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.pub-search-empty{color:var(--muted);margin:-.75rem 0 1.25rem;font-size:.92rem}.research-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.research-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:1.5rem}.research-card h3{margin-bottom:.55rem;font-size:1.05rem}.research-card p{color:var(--ink-soft);font-size:.92rem}.pub-group+.pub-group{margin-top:2.25rem}.pub-group h3{color:var(--muted);letter-spacing:.04em;align-items:center;gap:.6rem;margin-bottom:.9rem;font-size:.95rem;font-weight:600;display:flex}.pub-group h3 .count{font-family:var(--mono);background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;padding:.1rem .55rem;font-size:.78rem}.pub-list{counter-reset:pub;gap:0;padding:0;list-style:none;display:grid}.pub-card{color:var(--ink-soft);border-bottom:1px solid var(--line);gap:.2rem;padding:.7rem 0 .7rem 2.1rem;font-size:.9rem;display:grid;position:relative}.pub-card[hidden],.pub-group[hidden],.pub-view[hidden],.pub-search-empty[hidden]{display:none}.pub-card:last-child{border-bottom:none}.pub-card:before{counter-increment:pub;content:counter(pub, decimal-leading-zero);font-family:var(--mono);color:var(--muted);font-size:.72rem;position:absolute;top:.85rem;left:0}.pub-card-title{flex-wrap:wrap;align-items:baseline;gap:.35rem .45rem;min-width:0;line-height:1.35;display:flex}.pub-card-title .title{color:var(--ink);overflow-wrap:anywhere;word-break:break-word;font-size:1.05rem;font-weight:600}mark.pub-mark{color:inherit;box-decoration-break:clone;background:#f6e2a8;border-radius:2px;padding:0 .12em}.pub-card-authors{color:var(--ink-soft);font-size:.84rem;line-height:1.4}.pub-card-authors strong{color:var(--ink);font-weight:650}.pub-card-meta{color:var(--ink-soft);margin-top:.15rem;font-size:.84rem;line-height:1.4;display:block}.pub-card-meta .venue{font-style:italic}.pub-card-note{color:var(--ink);font-weight:600}.pub-card-year{white-space:nowrap}.pub-card-meta .sep{color:var(--muted);margin:0 .35rem}.pub-card-icons{flex-wrap:wrap;align-items:center;gap:.35rem .85rem;margin-top:.3rem;display:flex;position:relative}.pub-card-links{letter-spacing:.01em;flex-wrap:wrap;align-items:center;gap:.35rem .85rem;font-size:.86rem;font-weight:550;display:inline-flex}.pub-card-links a.pub-ext{color:var(--ink);text-underline-offset:3px;align-items:center;gap:.35rem;text-decoration:underline;display:inline-flex;position:static}.pub-card-links a.pub-ext[data-tip]:after{content:attr(data-tip);background:var(--ink);color:var(--bg);font-family:var(--mono);letter-spacing:.01em;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;opacity:0;pointer-events:none;z-index:40;width:max-content;max-width:min(100vw - 2rem,28rem);box-shadow:var(--shadow);border-radius:6px;padding:.28rem .55rem;font-size:.68rem;line-height:1.35;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + .4rem);left:0;transform:translateY(4px)}.pub-card-links a.pub-ext[data-tip]:hover:after,.pub-card-links a.pub-ext[data-tip]:focus-visible:after{opacity:1;transform:translateY(0)}.pub-ico{color:currentColor;flex-shrink:0;width:1em;height:1em;display:inline-flex}.pub-ico svg,.pub-ico-aaai img{width:100%;height:100%;display:block}.pub-ico-arxiv{width:.73em}.pub-ico-arxiv img{width:100%;height:100%;display:block}.pub-ico-nature{width:3.55em;height:.86em}.pub-ico-nature img{width:100%;height:100%;display:block}.pub-card-actions{flex-shrink:0;align-items:center;gap:.35rem;margin-left:auto;display:inline-flex}.pub-action{width:1.85rem;height:1.85rem;color:var(--ink-soft);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;text-decoration:none;transition:color .15s,transform .15s;display:inline-flex}.pub-action:hover{color:var(--ink);text-decoration:none;transform:translateY(-1px)}.pub-action svg{display:block}.project-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;width:100%;min-width:0;display:grid}.project-card{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex-direction:column;gap:.55rem;min-width:0;max-width:100%;padding:1.35rem 1.4rem 1.25rem;transition:border-color .15s;display:flex;position:relative}.project-card:hover{border-color:var(--ink)}.project-card.featured{border-color:var(--ink);background:var(--bg);grid-column:1/-1}.project-card-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.55rem 1rem;min-width:0;display:flex}.project-card h3{color:var(--ink);overflow-wrap:anywhere;word-break:break-word;flex:12rem;min-width:0;margin:0;font-size:1.12rem;font-weight:700}.project-card h3 a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.project-stats{font-family:var(--mono);color:var(--ink);flex:none;align-items:center;gap:.85rem;margin-inline-start:auto;font-size:1.05rem;font-weight:600;line-height:1;display:inline-flex}.project-stat{align-items:center;gap:.3rem;display:inline-flex}.project-stat svg{opacity:.85;display:block}.project-card .tagline{color:var(--ink);font-size:.93rem;font-weight:600}.project-card .desc{color:var(--ink-soft);font-size:.92rem}.card-links{flex-wrap:wrap;gap:.85rem 1.15rem;font-size:.88rem;font-weight:600;display:flex}.card-links a.project-link{color:var(--ink);align-items:center;gap:.4rem;text-decoration:none;display:inline-flex}.card-links a.project-link:hover{color:var(--ink);opacity:.72;text-decoration:none}.project-link-ico{flex-shrink:0;display:block}.project-card-bottom{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1rem;min-width:0;margin-top:auto;padding-top:.55rem;display:flex}.topic-row{flex-wrap:wrap;gap:.35rem;min-width:0;display:flex}.topic{font-family:var(--mono);color:var(--ink-soft);border:1px solid var(--line);background:0 0;border-radius:3px;padding:.12rem .45rem;font-size:.7rem}.project-lang{font-family:var(--mono);color:var(--ink);letter-spacing:.02em;white-space:nowrap;flex-shrink:0;font-size:.82rem;font-weight:600}.book-list,.plain-list{gap:1rem;padding:0;list-style:none;display:grid}.book-list li{gap:.2rem;display:grid}.book-list .book-title{font-weight:600}.book-list .book-meta{color:var(--muted);font-size:.88rem}.role-badge{font-size:.72rem;font-family:var(--mono);color:var(--accent-ink);background:var(--accent-soft);border-radius:4px;margin-right:.5rem;padding:.08rem .45rem}.patent-table{border-collapse:collapse;width:100%;font-size:.92rem}.patent-table th,.patent-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.6rem .75rem}.patent-table th{color:var(--muted);letter-spacing:.04em;font-size:.8rem;font-weight:600}.patent-table td:first-child{color:var(--ink-soft)}.patent-table .mono{font-family:var(--mono);overflow-wrap:anywhere;font-size:.85em}.zh-tip[data-tip]{cursor:help;max-width:100%;display:inline-block;position:relative}.zh-tip[data-tip]:after{content:attr(data-tip);background:var(--ink);color:var(--bg);font-family:var(--sans,inherit);letter-spacing:0;white-space:normal;word-break:keep-all;text-align:left;opacity:0;pointer-events:none;z-index:40;width:max-content;max-width:min(80vw,24rem);box-shadow:var(--shadow);border-radius:6px;padding:.3rem .55rem;font-size:.78rem;font-weight:400;line-height:1.4;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + .35rem);left:0;transform:translateY(4px)}.zh-tip[data-tip]:hover:after,.zh-tip[data-tip]:focus-visible:after{opacity:1;transform:translateY(0)}.table-note{color:var(--muted);margin-top:.9rem;font-size:.88rem}.status-badge{white-space:nowrap;border:1px solid var(--line-strong);color:var(--ink-soft);border-radius:999px;padding:.15rem .65rem;font-size:.75rem}.status-badge.pub{color:#146c43;background:#e9f7ef;border-color:#c3e6d2}.status-badge.pre{background:var(--accent-soft);color:var(--accent-ink);border-color:#cfddfb}html[data-theme=dark] .status-badge.pub{color:#9ee0b8;background:#184032;border-color:#2a5f45}html[data-theme=dark] .status-badge.pre{color:var(--accent-ink);border-color:#4a648c}html[data-theme=dark] .pub-ico-nature img{filter:invert()brightness(1.05)}html[data-theme=dark] .pub-ico-arxiv img{filter:invert()}html[data-theme=dark] .panel,html[data-theme=dark] .panel.band,html[data-theme=dark] .deck-footer{transition:background-color .28s,border-color .28s,color .28s}html[data-theme=dark] .deck-footer{background:color-mix(in srgb, var(--bg) 88%, transparent)}html[data-theme=dark] .footer-nav a{color:var(--muted)}html[data-theme=dark] .footer-nav a:hover{color:var(--ink)}html[data-theme=dark] .footer-nav a[aria-current=true]{background:var(--ink);color:var(--bg);font-weight:600}html[data-theme=dark] .research-card,html[data-theme=dark] .project-card,html[data-theme=dark] .edu-card{background:var(--bg-band);border-color:var(--line)}html[data-theme=dark] .pub-search-input{background:var(--bg-band);color:var(--ink)}html[data-theme=dark] .pub-search-input::placeholder{color:color-mix(in srgb, var(--muted) 85%, var(--bg))}html[data-theme=dark] .pub-ext,html[data-theme=dark] .pub-action{color:var(--ink-soft)}html[data-theme=dark] .pub-ext:hover,html[data-theme=dark] .pub-action:hover{color:var(--ink)}.edu-timeline{--edu-spine-x:.7rem;--edu-spine-w:2px;--edu-col:1.4rem;--edu-gap:1rem;--edu-visit-indent:1.35rem;--edu-visit-gap:.85rem;gap:0;width:100%;min-width:0;margin:.35rem 0 0;padding:0;list-style:none;display:grid;position:relative}.edu-timeline:before{content:"";left:var(--edu-spine-x);width:var(--edu-spine-w);background:var(--ink);border-radius:999px;position:absolute;top:.55rem;bottom:.85rem;transform:translate(-50%)}.edu-timeline:after{content:"";left:var(--edu-spine-x);border-left:5px solid #0000;border-right:5px solid #0000;border-bottom:8px solid var(--ink);z-index:1;width:0;height:0;position:absolute;top:.15rem;transform:translate(-50%)}.edu-item{min-width:0;padding:.55rem 0 .95rem;position:relative;overflow-x:clip}.edu-degree-row,.edu-visit-row{grid-template-columns:var(--edu-col) minmax(0, 1fr);gap:var(--edu-gap);align-items:center;min-width:0;display:grid}.edu-visit-row{margin-top:var(--edu-visit-gap);align-items:stretch}.edu-rail{z-index:2;justify-content:center;align-self:stretch;align-items:center;display:flex;position:relative}.edu-rail--spacer{pointer-events:none}.edu-marker{z-index:2;background:var(--ink);border:2px solid var(--bg);width:.9rem;height:.9rem;box-shadow:0 0 0 2px var(--ink);border-radius:50%;flex-shrink:0;position:relative}.edu-branch{top:var(--edu-branch-top,50%);left:var(--edu-branch-left,var(--edu-spine-x));width:var(--edu-branch-width,3rem);height:var(--edu-branch-height,5rem);color:var(--ink);pointer-events:none;z-index:1;opacity:var(--edu-branch-ready,0);position:absolute;overflow:visible}.edu-card{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);min-width:0;max-width:100%;box-shadow:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.9rem 1rem;padding:.95rem 1.1rem 1.05rem 1.15rem;transition:border-color .15s;display:grid}.edu-card-body{min-width:0}.edu-logo{object-fit:contain;object-position:center;flex-shrink:0;width:4.25rem;height:4.25rem;display:block}.edu-card--logo-wide .edu-logo{width:7.5rem;height:1.65rem}.edu-card--degree:hover{border-color:var(--line-strong)}.edu-card--visit{width:min(calc(100% - var(--edu-visit-indent)), 26.5rem);margin-left:var(--edu-visit-indent);background:var(--bg);box-shadow:none;border-color:var(--line);padding:.75rem .95rem .8rem 1rem}.edu-card--visit .edu-logo{width:3.5rem;height:3.5rem}.edu-card--visit.edu-card--logo-wide .edu-logo{width:6.75rem;height:1.4rem}.edu-school a,.edu-department a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.edu-school a:hover,.edu-department a:hover{color:var(--ink)}.edu-period{font-family:var(--mono);color:var(--muted);letter-spacing:.02em;margin:0 0 .35rem;font-size:.78rem}.edu-card--visit .edu-period{margin-bottom:.2rem;font-size:.72rem}.edu-school{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:1.12rem;font-weight:650;line-height:1.3}.edu-card--visit .edu-school{font-size:.95rem;font-weight:600}.edu-department{color:var(--ink-soft);margin:.2rem 0 0;font-size:.88rem;line-height:1.35}.edu-degree{color:var(--ink-soft);margin:.3rem 0 0;font-size:.92rem}.edu-card--visit .edu-degree{color:var(--muted);margin-top:.15rem;font-size:.82rem}.edu-supervisor{color:var(--ink-soft);margin:.45rem 0 0;font-size:.88rem}.edu-supervisor-label{color:var(--muted);margin-right:.4em}.edu-supervisor-label:after{content:" ·"}.edu-supervisor a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.edu-supervisor a:hover{color:var(--ink)}.honor-list{grid-template-columns:1fr;gap:.8rem;padding:0;list-style:none;display:grid}.honor-list li{padding-left:1.1rem;font-size:.95rem;position:relative}.honor-list li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.62em;left:0}.honor-list .intl:before{background:#d97706}.honor-list .detail{color:var(--muted);font-size:.84rem;display:block}.talks-view-toggle{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 88%, var(--bg-band));border-radius:999px;align-items:center;gap:.15rem;padding:.15rem;display:inline-flex}.talks-view-btn{appearance:none;color:var(--muted);font:inherit;letter-spacing:.02em;cursor:pointer;background:0 0;border:0;border-radius:999px;margin:0;padding:.28rem .75rem;font-size:.78rem;font-weight:600;transition:color .15s,background .15s}.talks-view-btn:hover{color:var(--ink)}.talks-view-btn.is-active{background:var(--accent-soft);color:var(--accent-ink)}.talks-view-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.talks-list-toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.talks-legend{flex-wrap:wrap;align-items:center;gap:.4rem .9rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.talks-legend-item{--talk-tag:var(--muted);color:var(--muted);align-items:center;gap:.32rem;font-size:.72rem;line-height:1.25;display:inline-flex}.talks-legend-swatch{background:var(--talk-tag);width:.62rem;height:.62rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--talk-tag) 13%, transparent);border-radius:50%}.talks-layout-toggle{appearance:none;border:1px solid var(--line);background:var(--bg);width:2rem;height:2rem;color:var(--muted);cursor:pointer;border-radius:.5rem;flex:none;place-items:center;margin:0;padding:0;display:inline-grid}.talks-layout-toggle:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));background:var(--accent-soft);color:var(--accent-ink)}.talks-layout-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.talks-layout-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.05rem;height:1.05rem}.talks-layout-icon--grouped,#talks[data-talks-layout=chronological] .talks-layout-icon--chronological{display:none}#talks[data-talks-layout=chronological] .talks-layout-icon--grouped{display:block}.talk-series-list{gap:1.1rem;margin:0;padding:0;list-style:none;display:grid}.talk-series-card{border-bottom:1px solid var(--line);min-width:0;padding:0 .1rem 1.15rem}.talk-series-card:last-child{border-bottom:0;padding-bottom:0}.talk-series-details{min-width:0}.talk-series-summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.52rem;min-width:0;list-style:none;display:grid}.talk-series-summary::-webkit-details-marker{display:none}.talk-series-summary:before{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform-origin:58% 58%;width:.42rem;height:.42rem;transition:transform .15s;transform:rotate(-45deg)}.talk-series-details[open]>.talk-series-summary{margin-bottom:.65rem}.talk-series-details[open]>.talk-series-summary:before{transform:rotate(45deg)}.talk-series-summary:hover .talk-series-title{color:var(--accent-ink)}.talk-series-summary:focus-visible{outline:2px solid var(--accent);outline-offset:.25rem;border-radius:.2rem}.talk-series-title{min-width:0;font-family:var(--sans);color:var(--ink);text-wrap:balance;margin:0;font-size:1.2rem;font-weight:700;line-height:1.35}.talk-series-stats{flex:none;justify-content:flex-end;align-items:center;gap:.3rem;display:inline-flex}.talk-series-stat{--talk-tag:var(--muted);border:1px solid color-mix(in srgb, var(--talk-tag) 24%, var(--line));background:color-mix(in srgb, var(--talk-tag) 8%, var(--bg));min-width:1.72rem;height:1.46rem;color:color-mix(in srgb, var(--talk-tag) 78%, var(--ink));font-family:var(--mono);border-radius:999px;justify-content:center;align-items:center;gap:.24rem;padding-inline:.36rem;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex}.talk-series-stat-swatch{background:var(--talk-tag);border-radius:50%;width:.43rem;height:.43rem}.talk-occurrences{flex-wrap:wrap;align-items:flex-start;gap:.45rem;display:flex}.talk-occurrence{--talk-tag:var(--muted);border:1px solid color-mix(in srgb, var(--talk-tag) 26%, var(--line));border-left:3px solid color-mix(in srgb, var(--talk-tag) 76%, var(--line));background:color-mix(in srgb, var(--talk-tag) 6%, var(--bg));min-width:0;max-width:100%;color:var(--ink);border-radius:.55rem;align-items:center;padding:.42rem .62rem .42rem .48rem;font-size:.79rem;line-height:1.35;text-decoration:none;transition:border-color .15s,background .15s,transform .15s;display:inline-flex}a.talk-occurrence:hover{border-color:color-mix(in srgb, var(--talk-tag) 52%, var(--line));background:color-mix(in srgb, var(--talk-tag) 11%, var(--bg));transform:translateY(-1px)}a.talk-occurrence:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.talk-occurrence--academic-conference,.talk-chronological-item--academic-conference,.talks-map-popover-item--academic-conference,.talks-legend-item--academic-conference,.talk-series-stat--academic-conference{--talk-tag:#7c3aed}.talk-occurrence--university,.talk-chronological-item--university,.talks-map-popover-item--university,.talks-legend-item--university,.talk-series-stat--university{--talk-tag:var(--accent)}.talk-occurrence--company,.talk-chronological-item--company,.talks-map-popover-item--company,.talks-legend-item--company,.talk-series-stat--company{--talk-tag:#d97706}.talk-occurrence--industry-event,.talk-chronological-item--industry-event,.talks-map-popover-item--industry-event,.talks-legend-item--industry-event,.talk-series-stat--industry-event{--talk-tag:#0f766e}.talk-appearance-contents{flex-wrap:wrap;align-items:center;gap:.28rem .42rem;min-width:0;max-width:100%;display:inline-flex}.talk-host-logos{flex:none;align-items:center;gap:.18rem;display:inline-flex}.talk-host-logo-frame,.talk-host-logo-fallback{background:#fff;border:0;border-radius:.25rem;place-items:center;width:1.75rem;height:1.75rem;padding:.05rem;display:inline-grid;overflow:hidden}.talk-host-logo-frame--wide{width:3rem}.talk-host-logo{object-fit:contain;width:100%;height:100%;display:block}.talk-host-logo--color-on-light{background:var(--talk-logo-color);-webkit-mask:var(--talk-logo-image) center / contain no-repeat;mask:var(--talk-logo-image) center / contain no-repeat}.talk-host-logo--rotate{width:1.65rem;max-width:none;height:2.9rem;transform:rotate(90deg)}.talk-host-logo-fallback{background:color-mix(in srgb, var(--talk-tag) 12%, var(--bg));color:color-mix(in srgb, var(--talk-tag) 78%, var(--ink));font-family:var(--mono);font-size:.72rem;font-weight:750}.talk-occurrence-host{overflow-wrap:anywhere;font-weight:650}.talk-appearance-meta{flex-wrap:wrap;align-items:center;gap:.25rem .55rem;display:inline-flex}.talk-occurrence .talk-appearance-contents{width:100%}.talk-occurrence .talk-appearance-meta,.talk-chronological-venue .talk-appearance-meta{text-align:right;justify-content:flex-end;margin-left:auto}.talk-occurrence-place,.talk-occurrence-date{white-space:nowrap;color:var(--ink-soft);align-items:center;gap:.2rem;display:inline-flex}.talk-occurrence-place svg,.talk-occurrence-date svg{width:.82rem;height:.82rem;color:color-mix(in srgb, var(--talk-tag) 68%, var(--muted));flex:none}.talk-occurrence-date{font-family:var(--mono);letter-spacing:.01em;font-size:.72rem}.talk-chronological-list{counter-reset:talk-item;margin:0;padding:0;list-style:none}.talk-chronological-item{--talk-tag:var(--muted);counter-increment:talk-item;border-bottom:1px solid var(--line);min-width:0;box-shadow:inset 3px 0 color-mix(in srgb, var(--talk-tag) 74%, var(--line));grid-template-columns:minmax(11rem,1fr) minmax(0,1.55fr) minmax(0,auto);align-items:center;gap:.65rem 1rem;padding:.6rem .2rem .6rem 2.55rem;display:grid;position:relative}.talk-chronological-item:last-child{border-bottom:0}.talk-chronological-item:before{content:counter(talk-item, decimal-leading-zero);color:color-mix(in srgb, var(--talk-tag) 72%, var(--muted));font-family:var(--mono);font-size:.7rem;font-weight:700;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.talk-chronological-title{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;min-width:0;color:var(--ink);margin:0;font-size:.95rem;font-weight:680;line-height:1.35;overflow:visible}.talk-chronological-venue{min-width:0;max-width:100%;color:var(--ink-soft);font-size:.8rem;text-decoration:none;display:flex}.talk-chronological-venue .talk-appearance-contents{flex-wrap:nowrap;width:100%}.talk-chronological-venue .talk-occurrence-host{text-overflow:ellipsis;overflow-wrap:normal;white-space:nowrap;min-width:0;overflow:hidden}.talk-chronological-venue .talk-appearance-meta{flex-wrap:nowrap;flex:none}a.talk-chronological-venue:hover .talk-occurrence-host{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline}.talk-chronological-note{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);margin:0;font-size:.74rem;overflow:hidden}.talks-map{gap:.65rem;display:grid}.talks-map-frame{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:var(--bg-band);aspect-ratio:3600/1420;touch-action:none;cursor:grab;width:100%;min-height:min(58vh,34rem);max-height:min(70vh,40rem);position:relative;overflow:hidden}.talks-map-controls{z-index:4;border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);backdrop-filter:blur(8px);box-shadow:0 3px 12px color-mix(in srgb, var(--ink) 10%, transparent);pointer-events:auto;border-radius:999px;display:inline-flex;position:absolute;top:.65rem;right:.65rem;overflow:hidden}.talks-map-control{appearance:none;border:0;border-left:1px solid var(--line);width:2.15rem;height:2.15rem;color:var(--ink-soft);cursor:pointer;background:0 0;place-items:center;margin:0;padding:0;display:inline-grid}.talks-map-control:first-child{border-left:0}.talks-map-control svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.talks-map-control:hover{color:var(--accent-ink);background:var(--accent-soft)}.talks-map-control:focus-visible{z-index:1;outline-offset:-2px;position:relative}.talks-map-frame.is-panning{cursor:grabbing;user-select:none}.talks-map-svg{user-select:none;width:100%;height:100%;display:block}.talks-map-ocean{fill:#b7c9de}.talks-map-land path{fill:#e8eef6;stroke:#7f95b0;stroke-width:.45px;stroke-linejoin:round}html[data-theme=dark] .talks-map-ocean{fill:#1a283a}html[data-theme=dark] .talks-map-land path{fill:#2a3648;stroke:#6b7f99}.talks-map-node{cursor:pointer;outline:none}.talks-map-hit{fill:#0000}.talks-map-pulse{fill:color-mix(in srgb, var(--talk-city,var(--accent)) 22%, transparent);opacity:0;transform-origin:50%;transition:opacity .2s}.talks-map-dot{fill:var(--talk-city,var(--accent));stroke:none}.talks-map-count{fill:#fff;font-family:var(--mono);font-size:var(--talks-zoom-count,8.75px);text-anchor:middle;pointer-events:none;font-weight:700}.talks-map-label{fill:var(--ink);font-size:var(--talks-zoom-label,10px);pointer-events:none;font-weight:600}.talks-map-svg[data-zoom-mode=size] .talks-map-count{display:none}.talks-map-svg[data-zoom-mode=size] .talks-map-label{opacity:.8}.talks-map-node:hover .talks-map-pulse,.talks-map-node:focus-visible .talks-map-pulse,.talks-map-node.is-active .talks-map-pulse{opacity:1}.talks-map-node:hover .talks-map-dot,.talks-map-node:focus-visible .talks-map-dot,.talks-map-node.is-active .talks-map-dot{filter:brightness(.9)}.talks-map-popover{z-index:3;border:1px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb, var(--bg) 96%, transparent);backdrop-filter:blur(10px);width:min(22rem,100% - 1rem);max-height:min(18rem,56%);box-shadow:var(--shadow);overscroll-behavior:contain;touch-action:pan-y;flex-direction:column;padding:.75rem .35rem .75rem .85rem;display:flex;position:absolute;overflow:hidden}.talks-map-popover[hidden]{display:none}.talks-map-popover-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.55rem;padding:0 .5rem .45rem 0;display:flex}.talks-map-popover-head strong{font-size:1rem}.talks-map-popover-count{font-family:var(--mono);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;margin-left:auto;font-size:.72rem}.talks-map-popover-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;gap:.55rem;min-height:0;margin:0;padding:0 .5rem 0 0;list-style:none;display:grid;overflow:hidden auto}.talks-map-popover-list li,.talks-map-popover-item{text-align:center;border-radius:6px;grid-template-columns:minmax(0,1fr);grid-template-areas:"title""date""venue""meta";gap:.28rem;padding:.5rem .6rem;display:grid}.talks-map-popover-item--academic-conference{background:#7c3aed1a}.talks-map-popover-item--university{background:color-mix(in srgb, var(--accent) 10%, transparent)}.talks-map-popover-item--company{background:#d977061a}.talks-map-popover-item--industry-event{background:#0f766e1a}.talks-map-popover-date{font-family:var(--mono);color:var(--muted);grid-area:date;justify-self:center;font-size:.72rem}.talks-map-popover-host,.talks-map-popover-venue{color:var(--ink);font-size:.86rem;line-height:1.35}.talks-map-popover-talk-title{color:var(--ink);text-align:center;grid-area:title;justify-self:center;margin:0;font-size:.82rem;line-height:1.35;display:block}.talks-map-popover-host{white-space:normal;overflow-wrap:anywhere;min-width:0;color:var(--ink-soft);text-align:center;overflow:visible}.talks-map-popover-venue{grid-area:venue;justify-content:center;align-items:center;gap:.25rem .42rem;width:100%;min-width:0;display:flex}.talks-map-popover-venue .talk-host-logos{flex:none}.talks-map-popover-meta{color:var(--muted);grid-area:meta;margin-top:.15rem;font-size:.76rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.analytics-page{min-height:100dvh;padding:calc(var(--topbar-h) + .5rem) 0 4rem}.analytics-container{gap:2.5rem;display:grid}.analytics-head h1{letter-spacing:-.02em;font-size:clamp(2rem,4vw,2.75rem);font-weight:700}.analytics-sub{max-width:40rem;color:var(--muted);margin-top:.55rem;font-size:.92rem}.analytics-home{color:var(--ink-soft);white-space:nowrap;padding:.35rem .2rem;font-size:.9rem;text-decoration:none}.analytics-home:hover{color:var(--ink)}.analytics-error{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);color:var(--ink-soft);margin:-1rem 0 0;padding:.65rem 0;font-size:.92rem}.analytics-error code{font-family:var(--mono);font-size:.86em}.analytics-metrics{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 1.5rem;padding:.15rem 0 .35rem;display:grid}.analytics-metrics>div{gap:.35rem;min-width:0;display:grid}.analytics-metrics dt{color:var(--muted);font-size:.8rem}.analytics-metrics dd{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink);margin:0;font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:650;line-height:1.15}.analytics-section .section-head{margin-bottom:1.15rem}.analytics-note{color:var(--muted);font-size:.8rem;font-family:var(--mono);margin:0}.analytics-range{flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem;margin:-.35rem 0 1rem;display:flex}.analytics-range-field{color:var(--muted);gap:.25rem;font-size:.78rem;display:grid}.analytics-range-input{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);min-width:9.5rem;color:var(--ink);font:inherit;font-family:var(--mono);color-scheme:inherit;padding:.35rem .55rem;font-size:.84rem}.analytics-range-input:hover{border-color:var(--line-strong)}.analytics-range-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.analytics-range-reset{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;padding:.35rem .55rem;font-size:.82rem}.analytics-range-reset:hover{border-color:var(--line-strong);color:var(--ink)}.analytics-range-hint{color:var(--muted);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;align-self:center;margin-left:auto;font-size:.74rem}html[data-theme=dark] .analytics-range-input{background:var(--bg-band)}.analytics-legend{color:var(--muted);font-size:.78rem;font-family:var(--mono);gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.analytics-legend li{align-items:center;gap:.35rem;display:inline-flex}.analytics-swatch{background:var(--accent);width:.55rem;height:.55rem;display:inline-block}.analytics-swatch--pv{opacity:.3}.analytics-swatch--uv{opacity:1}.analytics-chart{width:100%;height:auto;display:block}.chart-bar-pv{fill:var(--accent);opacity:.28}.chart-bar-uv{fill:var(--accent)}.chart-axis{stroke:var(--line-strong);stroke-width:1px}.chart-tick{fill:var(--muted);font-family:var(--mono);font-size:11px}.analytics-map-frame{border:1px solid var(--line);overflow:hidden}.analytics-map-svg{width:100%;height:auto;display:block}.analytics-map-ocean{fill:#b7c9de}.analytics-map-land path{fill:#dde7f1}html[data-theme=dark] .analytics-map-ocean{fill:#16202e}html[data-theme=dark] .analytics-map-land path{fill:#2a3547}#analytics-heat-gradient stop{stop-color:var(--accent)}.heat-blob{fill:url(#analytics-heat-gradient)}.heat-core{fill:var(--accent);opacity:.8}.analytics-cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:2.5rem 3rem;display:grid}.analytics-section--wide{grid-column:1/-1}.analytics-table-scroll{overflow-x:auto}.analytics-table{border-collapse:collapse;width:100%;min-width:23rem;font-size:.92rem}.analytics-table th,.analytics-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .35rem}.analytics-table th{color:var(--muted);letter-spacing:.04em;font-size:.8rem;font-weight:600}.analytics-table td{color:var(--ink-soft)}.analytics-table tr:last-child td{border-bottom:0}.analytics-table .num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}.analytics-table .mono{font-family:var(--mono);font-size:.84rem}.analytics-metric{white-space:nowrap}.analytics-metric-distribution{color:var(--muted);margin-left:.32rem;font-size:.72em;font-weight:500}.analytics-empty{color:var(--muted)}@media (width<=52rem){.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-cols{grid-template-columns:1fr;gap:2.25rem}}@media (width<=28rem){.analytics-metrics{grid-template-columns:1fr 1fr;gap:.85rem 1rem}}}@layer utilities{@media (width<=72rem){.research-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.project-grid{gap:1rem}.hero-grid{column-gap:2rem}.hero-photo{width:180px}.nav-arrow{font-size:2rem}.nav-arrow.prev{left:.45rem}.nav-arrow.next{right:.45rem}.talk-series-title{font-size:1.14rem}.talks-map-frame{min-height:min(52vh,28rem);max-height:min(62vh,34rem)}.talks-map-popover{width:min(20rem,100% - 1rem)}}@media (width<=56rem){:root{--gutter:1rem;--footer-h:3.25rem;--topbar-h:3.75rem}.nav-arrow{padding:.45rem .15rem;font-size:1.7rem}.nav-arrow.prev{left:.1rem}.nav-arrow.next{right:.1rem}.panel>.container{padding-block:2rem;padding-top:max(2rem, calc(var(--topbar-h) + .85rem))}.section-head{gap:.55rem .75rem;margin-bottom:1.5rem;padding-bottom:.6rem}.section-head h2{font-size:1.4rem}.pub-search{flex:100%;order:3;min-width:0;max-width:none}.section-head-meta{margin-left:auto}.hero-grid{grid-template-columns:1fr;grid-template-areas:"title""copy""photo";justify-items:stretch;row-gap:1rem}.hero-aside{justify-self:center;align-items:center;width:fit-content}.hero-photo{width:148px}.hero-links{justify-content:center}.hero-grid h1{font-size:clamp(2rem,7vw,2.6rem)}.about-research{margin-top:2rem}.edu-timeline{--edu-spine-x:.5rem;--edu-col:1rem;--edu-gap:.55rem;--edu-visit-indent:0;--edu-visit-gap:.7rem;box-sizing:border-box;width:100%;max-width:100%}.edu-item,.edu-degree-row,.edu-visit-row{box-sizing:border-box;width:100%;max-width:100%}.edu-card,.edu-card--degree,.edu-card--visit{box-sizing:border-box;grid-template-columns:minmax(0,1fr) auto;gap:.65rem .7rem;width:100%;max-width:100%;margin-left:0;padding:.8rem .85rem}.edu-logo,.edu-card--visit .edu-logo{width:2.6rem;max-width:2.6rem;height:2.6rem}.edu-card--logo-wide .edu-logo,.edu-card--visit.edu-card--logo-wide .edu-logo{width:4.5rem;max-width:4.5rem;height:1.05rem}.research-grid,.project-grid,.honor-list{grid-template-columns:1fr}.research-card{padding:1.15rem}.project-card{padding:1.05rem 1rem}.project-stats{gap:.65rem;font-size:.95rem}.project-card-top{gap:.45rem .75rem}.fact-list li{grid-template-columns:5.25rem 1fr;gap:.75rem}.patent-table{font-size:.9rem}.patent-table thead{display:none}.patent-table,.patent-table tbody,.patent-table tr,.patent-table td{width:100%;display:block}.patent-table tr{border-bottom:1px solid var(--line);padding:.85rem 0}.patent-table tr:last-child{border-bottom:none}.patent-table td{overflow-wrap:anywhere;word-break:break-word;border:none;padding:.15rem 0}.patent-table td+td{margin-top:.35rem}.patent-table td:before{content:attr(data-label);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.12rem;font-size:.68rem;font-weight:600;display:block}.patent-table td:nth-child(2){order:-1}.patent-table tr{flex-direction:column;display:flex}.patent-table td:nth-child(2) a{color:var(--ink);font-size:.98rem;font-weight:600}.footer-nav a{padding:.36rem .55rem;font-size:.8rem}.top-bar{padding-inline:.65rem}.talk-series-list{gap:.9rem}.talk-series-card{padding-bottom:.95rem}.talk-occurrence{flex:100%;font-size:.76rem}.talk-occurrence .talk-appearance-contents,.talk-chronological-venue .talk-appearance-contents{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"host logos""meta meta";align-items:center;width:100%;display:grid}.talk-occurrence .talk-host-logos,.talk-chronological-venue .talk-host-logos{grid-area:logos}.talk-occurrence .talk-occurrence-host,.talk-chronological-venue .talk-occurrence-host{text-align:left;grid-area:host;justify-self:start}.talk-occurrence .talk-appearance-meta,.talk-chronological-venue .talk-appearance-meta{text-align:right;flex-wrap:nowrap;grid-area:meta;justify-content:flex-end;justify-self:end}.talks-map-frame{aspect-ratio:3600/1420;min-height:18rem;max-height:none}.talks-map-popover{width:calc(100% - .75rem);max-height:min(15rem,50%);left:.375rem!important}.talks-map-popover-list li,.talks-map-popover-item{grid-template-columns:5.5rem minmax(0,1fr);gap:.35rem .55rem}}@media (width>=40.001rem) and (width<=56rem){.top-bar-right>.pen-chip{gap:.45rem;padding:.35rem .65rem .35rem .35rem}.top-bar-right>.pen-chip .pen-chip-text .en,.top-bar-right>.pen-chip .pen-chip-dots{display:none}}@media (width<=40rem){:root{--gutter:.85rem;--deck-arrow-lane:0rem;--footer-h:3.1rem;--topbar-h:3.75rem}.nav-arrow{display:none}.panel:not(:last-child):after{content:"→";flex:0 0 var(--mobile-edge-hint-height,0px);width:100%;height:var(--mobile-edge-hint-height,0px);min-height:0;color:var(--muted);opacity:var(--mobile-edge-hint-opacity,0);transform:translateY(var(--mobile-edge-hint-offset,8px));justify-content:center;align-items:center;font-size:1.65rem;line-height:1;transition:flex-basis .18s,height .18s,opacity .18s,transform .18s;display:flex;overflow:hidden}.panel.is-pulling-next:after{transition:none}.panel>.container{padding-block:1.5rem 1.75rem;padding-top:calc(var(--topbar-h) + 1rem)}.section-head h2{font-size:1.28rem}.section-head-meta{justify-content:flex-start;width:100%;margin-left:0}#talks .section-head{flex-wrap:nowrap;gap:.55rem;margin-bottom:1rem}#talks .section-head h2{white-space:nowrap;flex:none}#talks .section-head-meta{justify-content:flex-end;gap:.4rem;width:auto;min-width:0;margin-left:auto}#talks .section-head .en{flex:none;font-size:.75rem}.project-stars-total-n,.project-forks-total-n{font-size:1.15rem}.hero-grid h1{font-size:clamp(1.85rem,8.5vw,2.25rem)}.hero-grid .role{font-size:.98rem}.hero-grid .bio{font-size:.95rem}.hero-photo{border-radius:12px;width:128px}.hero-link svg{width:1.4rem;height:1.4rem}.hero-links{gap:.7rem}.fact-list li{grid-template-columns:1fr;gap:.15rem}.fact-list dt{font-size:.8rem}.edu-school{font-size:1.02rem}.edu-card,.edu-card--degree,.edu-card--visit{grid-template-columns:minmax(0,1fr) auto;justify-items:stretch;padding:.75rem .8rem}.edu-logo,.edu-card--visit .edu-logo,.edu-card--logo-wide .edu-logo,.edu-card--visit.edu-card--logo-wide .edu-logo{justify-self:end;width:2.5rem;max-width:2.5rem;height:2.5rem}.edu-card--logo-wide .edu-logo,.edu-card--visit.edu-card--logo-wide .edu-logo{width:5rem;max-width:5rem;height:1.1rem}.pub-card{padding-left:1.75rem;font-size:.88rem}.pub-card-title .title{font-size:.98rem}.pub-card-actions{justify-content:flex-start;width:auto;margin-left:0}.pub-card-title,.pub-card-authors,.pub-card-meta,.honor-list li,.project-card .tagline,.project-card .desc,.edu-school,.edu-degree,.edu-department{overflow-wrap:anywhere;word-break:break-word}.honor-list{gap:.7rem}.honor-list li{font-size:.9rem}.talk-series-card{padding-left:.1rem}.talk-series-details[open]>.talk-series-summary{margin-bottom:.55rem}.talk-series-title{font-size:1.08rem}.talk-series-summary{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"toggle title"".stats";gap:.35rem .42rem}.talk-series-summary:before{grid-area:toggle}.talk-series-title{grid-area:title}.talk-series-stats{grid-area:stats;justify-self:end;gap:.22rem}.talk-series-stat{min-width:1.55rem;height:1.36rem;padding-inline:.3rem;font-size:.64rem}.talk-occurrences{gap:.38rem}.talk-occurrence{padding:.4rem .52rem .4rem .48rem}.talk-chronological-item{grid-template-columns:minmax(0,1fr);gap:.35rem}.talk-chronological-title,.talk-chronological-note{white-space:normal}.talks-view-btn{padding:.28rem .65rem;font-size:.75rem}.talks-map-frame{aspect-ratio:auto;border-radius:calc(var(--radius) + 2px);touch-action:pan-y;height:clamp(22rem,65dvh,28rem);min-height:22rem;max-height:28rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--line) 55%, transparent)}.talks-map-controls{border-radius:.75rem;top:.5rem;right:.5rem}.talks-map-control{width:2.5rem;height:2.5rem}.talks-map-popover{background:color-mix(in srgb, var(--bg) 98%, transparent);width:auto;max-height:min(15rem,58%);box-shadow:0 12px 34px color-mix(in srgb, var(--ink) 20%, transparent);border-radius:.9rem;padding:.6rem .3rem .55rem .7rem;inset:auto .5rem .5rem!important}.talks-map-popover-head{gap:.4rem;margin-bottom:.4rem;padding:0 .35rem .4rem 0}.talks-map-popover-head strong{font-size:.95rem}.talks-map-popover-list{gap:.42rem;padding-right:.35rem}.talks-map-popover-list li,.talks-map-popover-item{box-shadow:inset 3px 0 color-mix(in srgb, var(--talk-tag) 72%, var(--line));border-radius:.65rem;grid-template-columns:minmax(0,1fr);grid-template-areas:"title""date""venue""meta";gap:.25rem;padding:.55rem}.talks-map-popover-date{white-space:nowrap;grid-area:date;justify-self:center}.talks-map-popover-talk-title{grid-area:title;justify-self:center;margin:0}.talks-map-popover-venue{grid-area:venue;justify-content:center;align-items:center;min-width:0;display:flex}.talks-map-popover-venue .talk-host-logos{flex:none}.talks-map-popover-host{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;text-align:center;overflow:visible}.talks-map-popover-meta{grid-area:meta;margin:0}.topic{overflow-wrap:anywhere;max-width:100%}.top-bar{align-items:center;padding-top:0}.top-bar-benches{--bench-chip-h:2.25rem}.pen-chip{border-radius:12px;gap:.45rem;padding:.3rem .6rem .3rem .3rem}.pen-chip-logos,.bench-chip-logo{border-radius:8px;width:1.8rem;height:1.8rem}.pen-chip-logos .logo:before{width:1.1rem;height:1.1rem}.bench-chip-logo img{width:1.05rem;height:1.05rem}.bench-chip[href*=analog-design-bench] .bench-chip-logo img,.bench-chip[href*=analog-canvas] .bench-chip-logo img,.bench-chip[href*=razavi-bench] .bench-chip-logo img,.bench-chip[href*=circuits-and-systems] .bench-chip-logo img{width:100%;height:100%}.pen-chip-text .zh{font-size:.82rem}.pen-chip-text .en{font-size:.58rem}.bench-chip .pen-chip-text .en{display:none}.lang-switch,.layout-switch,.theme-switch{width:2.35rem;height:2.35rem}.footer-nav{gap:.05rem;max-width:100%}.deck-footer:has(.deck-visitors){height:3.85rem;padding-inline:.4rem}.deck-visitors{bottom:auto;right:auto}.deck-visitors-status{gap:.25rem}.deck-visitors-value{font-size:.66rem}.deck-visitors-label{white-space:nowrap;max-width:none;font-size:.54rem;line-height:1.15}.deck-visitors-separator{font-size:.54rem}.writer-main{padding-block:5rem 3rem}html.wechat-browser .top-bar{padding-inline:.5rem}html.wechat-browser .top-bar-right{gap:.25rem;overflow:visible}html.wechat-browser .top-bar-benches{height:auto;overflow:visible}html.wechat-browser .top-bar-right .bench-reel{flex-direction:row;align-items:center;gap:.2rem;animation:none;display:inline-flex;transform:none}html.wechat-browser .top-bar-right .bench-chip{padding:.25rem}html.wechat-browser .top-bar-right .bench-chip .pen-chip-text{display:none}html.wechat-browser .top-bar-right>.pen-chip{gap:.3rem;padding:.25rem .4rem .25rem .25rem}html.wechat-browser .top-bar-right>.pen-chip .pen-chip-text .en,html.wechat-browser .top-bar-right>.pen-chip .pen-chip-dots{display:none}html.wechat-browser .top-bar-right .pen-chip-logos .logo{animation:none}html.wechat-browser .top-bar-right .pen-chip-logos .logo:first-child{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.panel:not(:last-child):after{transition:none}}}@media print{@page{margin:12mm 14mm 14mm}:root{--ink:#111;--ink-soft:#333;--muted:#5f6368;--accent:#1a4b9b;--accent-ink:#173f80;--accent-soft:#eef3fa;--bg:#fff;--bg-band:#fff;--line:#d5d9df;--line-strong:#aeb4bd;--gutter:0rem;--shadow:none;color-scheme:light!important}html{scroll-behavior:auto;color-scheme:light!important}body{height:auto;color:var(--ink);print-color-adjust:economy;font-size:9.5pt;line-height:1.45;overflow:visible;background:#fff!important}a{color:var(--ink);text-decoration:none!important}p,li{orphans:3;widows:3}h1,h2,h3{break-after:avoid;page-break-after:avoid}html[data-theme=dark] .pub-ico-arxiv img,html[data-theme=dark] .pub-ico-nature img{filter:none}.deck{scroll-snap-type:none;width:auto;height:auto;display:block;overflow:visible}.panel,.panel.band{break-before:auto;break-after:auto;break-inside:auto;page-break-before:auto;page-break-after:auto;page-break-inside:auto;background:0 0;flex:none;width:auto;min-width:0;max-width:none;height:auto;min-height:0;padding:0;display:block;overflow:visible}.panel>.container{width:100%;max-width:none;margin:0;padding:0 0 1.5rem}.panel:not(#about)>.container{padding-top:1rem}.panel:after{content:none!important;display:none!important}.panel--wrap-sentinel{display:none}.top-bar,.deck-footer,.nav-arrow,.pub-search,.pub-mode-toggle,.talks-view-toggle,.pub-search-empty{display:none!important}#publications [data-pub-view=all]{display:block!important}#publications [data-pub-view=role]{display:none!important}#publications [data-pub-view=all] .pub-card{display:grid!important}#talks [data-talks-panel=list]{display:block!important}#talks [data-talks-panel=map],#talks .talks-list-toolbar,#talks [data-talks-layout-panel=grouped]{display:none!important}#talks [data-talks-layout-panel=chronological]{display:block!important}#talks .talk-chronological-item{box-shadow:none;break-inside:avoid;page-break-inside:avoid;grid-template-columns:minmax(14rem,1.05fr) minmax(0,1.65fr) auto;align-items:center;gap:.5rem .8rem;padding-block:.5rem}#talks .talk-host-logos{display:none!important}#talks .talk-chronological-title{text-overflow:ellipsis;white-space:nowrap;font-size:9.5pt;overflow:hidden}#talks .talk-chronological-venue{font-size:8pt}#talks .talk-chronological-venue .talk-appearance-contents{flex-wrap:nowrap;align-items:center;width:100%;display:flex}#talks .talk-chronological-venue .talk-occurrence-host{flex:auto;min-width:0;line-height:1.3}#talks .talk-chronological-venue .talk-appearance-meta{text-align:left;flex-wrap:nowrap;flex:none;justify-content:flex-start;justify-self:auto;margin-left:auto;display:inline-flex}#talks .talk-chronological-note{white-space:nowrap}.section-head{break-after:avoid;page-break-after:avoid;border-bottom-width:1px;margin-bottom:.9rem;padding-bottom:.35rem}.section-head h2{font-size:15pt}.section-head-meta{width:auto;margin-left:auto}.about-research{margin-top:1.4rem}.pub-group+.pub-group{margin-top:1.25rem}.pub-group h3{break-after:avoid;page-break-after:avoid;margin-bottom:.45rem}.hero-grid{grid-template-columns:minmax(0,1fr) 32mm;grid-template-areas:"title photo""copy photo";place-items:start stretch;gap:.7rem 8mm}.hero-grid h1{font-size:24pt}.hero-grid .bio{margin-top:0;line-height:1.5}.hero-aside{justify-self:stretch;width:auto}.hero-photo{width:32mm;box-shadow:none;border-radius:3mm}.hero-links{display:none!important}.hero-link svg{width:1.15rem;height:1.15rem}.hero-link[data-tip]:after,.hero-link .hero-tip,.zh-tip[data-tip]:after,.pub-card-links a.pub-ext[data-tip]:after{display:none!important}.research-grid{grid-template-columns:1fr;gap:0}.research-card{background:0 0;border:0;border-radius:0;padding:.7rem 0}.research-card+.research-card{border-top:1px solid var(--line)}.edu-timeline{margin-top:0;display:block}.edu-timeline:before,.edu-timeline:after,.edu-rail,.edu-branch{display:none!important}.edu-item{break-inside:auto;page-break-inside:auto;padding:0;overflow:visible}.edu-item+.edu-item{border-top:1px solid var(--line-strong);margin-top:.5rem;padding-top:.5rem}.edu-degree-row,.edu-visit-row{width:100%;margin:0;display:block}.edu-visit-row{border-top:1px solid var(--line)}.edu-card,.edu-card--degree,.edu-card--visit{width:100%;max-width:none;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:25mm minmax(0,1.35fr) minmax(0,1fr) 22mm;grid-template-areas:"period school degree logo""period department supervisor logo";align-items:start;gap:.18rem .8rem;margin:0;padding:.5rem 0;display:grid}.edu-card-body{display:contents}.edu-period{grid-area:period;margin:0;font-size:8pt}.edu-school{grid-area:school;margin:0;font-size:9.5pt}.edu-department{grid-area:department;margin:0;font-size:8.5pt}.edu-degree{grid-area:degree;margin:0;font-size:8.5pt}.edu-supervisor{grid-area:supervisor;margin:0;font-size:8.5pt}.edu-logo,.edu-card--visit .edu-logo{grid-area:logo;place-self:center end;width:12mm;max-width:12mm;height:12mm}.edu-card--logo-wide .edu-logo,.edu-card--visit.edu-card--logo-wide .edu-logo{width:22mm;max-width:22mm;height:auto}.project-grid{display:block}.project-card,.project-card.featured{background:0 0;border:0;border-radius:0;grid-column:auto;padding:.75rem 0}.project-card+.project-card{border-top:1px solid var(--line)}.project-card .card-links,.project-card-bottom{display:none!important}.honor-list{grid-template-columns:1fr;gap:.45rem}.pub-card{padding-block:.48rem;break-inside:avoid;page-break-inside:avoid;padding-left:1.8rem;font-size:8.5pt}.pub-card:before{top:.58rem}.pub-card-title .title{font-size:9.5pt}.pub-card-icons{display:none!important}.research-card,.project-card,.edu-card,.book-list li,.honor-list li,.plain-list li{break-inside:avoid;page-break-inside:avoid}.patent-table{width:100%;font-size:8.5pt;display:table}.patent-table thead{display:table-header-group}.patent-table tbody{display:table-row-group}.patent-table tr{break-inside:avoid;page-break-inside:avoid;border:0;padding:0;display:table-row}.patent-table th,.patent-table td{border-bottom:1px solid var(--line);word-break:normal;width:auto;padding:.35rem .45rem;display:table-cell}.patent-table td+td{margin-top:0}.patent-table td:before{content:none;display:none}.patent-table td:nth-child(2) a{font-size:inherit;font-weight:inherit}.writer-main{min-height:auto;padding-block:0}}}
