@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.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}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f9d625bba3a10f71-s.283562-kfm0pv.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0cdb645d767d445c-s.2336ijw7y_ets.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0fcab32fcfb2da9d-s.p.01npz8736q7k4.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}@font-face{font-family:Kalam Fallback;src:local(Arial);ascent-override:108.94%;descent-override:54.42%;line-gap-override:0.0%;size-adjust:97.58%}.kalam_7648a7c7-module__zTThjG__className{font-family:Kalam,Kalam Fallback;font-style:normal;font-weight:400}.kalam_7648a7c7-module__zTThjG__variable{--font-kalam:"Kalam", "Kalam Fallback"}
@font-face{font-family:nobelBook;src:url(../media/Nobel_Book-s.p.2p5f0kxzz7ux0.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:nobelBook;src:url(../media/Nobel_BookItalic-s.p.14d8k0i7yc9uf.ttf)format("truetype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:nobelBook Fallback;src:local(Arial);ascent-override:111.67%;descent-override:22.86%;line-gap-override:0.0%;size-adjust:83.1%}.nobelbook_51f18534-module__DB0wNa__className{font-family:nobelBook,nobelBook Fallback}.nobelbook_51f18534-module__DB0wNa__variable{--font-nobel-book:"nobelBook", "nobelBook Fallback"}
@font-face{font-family:elidoBook;src:url(../media/Elido_Book-s.p.1_l43u0c-gl7n.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:elidoBook Fallback;src:local(Arial);ascent-override:111.0%;descent-override:28.64%;line-gap-override:0.0%;size-adjust:89.73%}.elidobook_d5b65d4a-module__0BaZaa__className{font-family:elidoBook,elidoBook Fallback;font-style:normal;font-weight:400}.elidobook_d5b65d4a-module__0BaZaa__variable{--font-elido-book:"elidoBook", "elidoBook Fallback"}
:root{--color-paper:#f5f4f0;--color-paper-cream:#fcfbf9;--color-paper-stone:#e6e4de;--color-ink:#1a1a1a;--color-muted:#545454;--color-accent:#a41034;--color-accent-ink:#7d0c28;--color-divider:#d8d5cd;--color-navigation-surface:var(--color-paper-cream);--color-hover-surface:var(--color-paper-stone);--color-focus:#1f5f8b;--color-sketch-ink:#232220;--sketch-lit:.5;--font-terminal:var(--font-geist-mono), "SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-display:var(--font-nobel-book), "Avenir Next", Arial, sans-serif;--font-body:var(--font-elido-book), "Segoe UI", Arial, sans-serif;--font-navigation-handwritten:var(--font-kalam), "Segoe Print", cursive;--text-display:clamp(1.875rem, 1.45rem + 1.25vw, 2.5rem);--text-title:clamp(1.3rem, 1.2rem + .4vw, 1.55rem);--text-lede:clamp(1.0625rem, 1rem + .3vw, 1.1875rem);--text-body:clamp(1rem, .96rem + .16vw, 1.0625rem);--text-prose:clamp(1.125rem, 1.08rem + .2vw, 1.1875rem);--text-meta:clamp(.875rem, .86rem + .06vw, .9rem);--text-nav:clamp(1.0625rem, 1.02rem + .25vw, 1.15rem);--prompt-indent:4ch;--content-width:51.25rem;--site-shell-max:73.75rem;--rail-width:13.75rem;--shell-gap:clamp(3rem, 6vw, 5.5rem);--page-gutter:clamp(1.75rem, 8vw, 7.5rem);--terminal-top:clamp(4.5rem, 12vh, 8.5rem);--space-2xs:.3rem;--space-xs:.55rem;--space-sm:.9rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--space-2xl:clamp(5rem, 2rem + 6vw, 8.25rem);--ease-out-soft:cubic-bezier(.33, 1, .68, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-out-cubic:cubic-bezier(.215, .61, .355, 1);--motion-fast:.2s;--motion-fill:.32s;--motion-reveal:.42s;--motion-stage:.65s;--motion-ambient:14s}*,:before,:after{box-sizing:border-box}html{background:var(--color-paper);min-width:20rem;color:var(--color-ink);scroll-behavior:smooth;cursor:default;scroll-padding-top:2rem}body{min-height:100vh;color:var(--color-ink);font-family:var(--font-terminal);font-size:var(--text-body);text-rendering:optimizelegibility;cursor:default;margin:0;line-height:1.65;overflow-x:clip}::selection{background:color-mix(in srgb, var(--color-accent) 20%, var(--color-paper))}a,button{font:inherit}a{color:inherit}button{appearance:none;color:inherit;padding:0}h1,h2,h3,h4,h5,p,dl,dd{margin-top:0}h1,h2,h3,h4,h5{font-family:var(--font-display);letter-spacing:-.01em;font-weight:400}h4,h5{margin:0 0 var(--space-xs);font-size:var(--text-title);letter-spacing:-.005em;font-weight:400;line-height:1.2}:where(.terminal,.site-shell,.transcript,.command-block,.profile-output,.command-output,.paper-entry,.paper-actions,.paper-collection,.command-suggestions,.suggestion-actions,.command-rail,.compact-navigation,.compact-navigation-panel,.navigation-list,.rail-list,.rail-fields,.paper-field-index,.paper-recovery-actions,.lab-state,.lab-rule){cursor:default}:where(h1,h2,h3,h4,h5,p,dt,dd,li,small,strong,code,pre,blockquote,.command-menu>span,.teaching-entry>span,.token-swatch>span){cursor:auto}:where(.terminal-glyph,.prompt-line>span,.paper-metadata>span,.affiliation>span){cursor:text}:where(a[href],button:not(:disabled)),:where(a[href],button:not(:disabled)) *{cursor:pointer}:where(button:disabled,[aria-disabled=true]){cursor:not-allowed}:where(input,textarea,[contenteditable=true]){cursor:text}h1{font-size:var(--text-title);margin-bottom:0;line-height:1.2}h2{margin-bottom:var(--space-md);font-size:var(--text-title);line-height:1.2}h3{margin-bottom:var(--space-xs);font-size:var(--text-title);letter-spacing:-.005em;font-weight:400;line-height:1.2}.paper-metadata,.paper-updated,.paper-coauthors,.paper-subtitle,.paper-venue,.paper-match,.paper-field-count,.paper-note,.paper-result-count,.suggestion-kind,.teaching-entry>span,.teaching-entry small,.command-menu>span,.output-label,.rail-label,.lab-kicker,.lab-state>small,.token-swatch{font-size:var(--text-meta);letter-spacing:.015em;line-height:1.5}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.terminal{width:100%;padding:var(--terminal-top) 0 8rem;padding-bottom:calc(8rem + env(safe-area-inset-bottom))}.site-shell{width:min(var(--content-width), calc(100vw - (2 * var(--page-gutter))));cursor:default;grid-template-columns:minmax(0,1fr);align-items:start;margin-inline:auto;display:grid}.transcript{width:100%;min-width:0}.standalone-transcript{width:min(var(--content-width), calc(100vw - (2 * var(--page-gutter))));margin-inline:auto}.command-block{margin:0 0 var(--space-2xl);scroll-margin-top:2rem;position:relative}.whoami-block>.prompt-line{margin-bottom:var(--space-lg)}.command-block:focus-visible{outline:2px solid var(--color-focus);outline-offset:.35rem}.command-block.is-active>.prompt-line span:last-child{color:var(--color-accent);animation:underline-draw .48s var(--ease-out-soft) .26s both;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;font-weight:500}@keyframes underline-draw{0%{background-size:0% 1px}to{background-size:100% 1px}}[data-reveal=pending]{opacity:0!important;transform:translateY(14px)!important}[data-reveal=in]{opacity:1;transition:opacity var(--motion-stage) var(--ease-out-soft), transform var(--motion-stage) var(--ease-out-soft);transform:none}[data-reveal=in]:nth-child(2){transition-delay:70ms}[data-reveal=in]:nth-child(3){transition-delay:.14s}[data-reveal=in]:nth-child(n+4){transition-delay:.21s}.prompt-line{margin:0 0 var(--space-md);color:var(--color-muted);overflow-wrap:anywhere}.command-form{cursor:default;align-items:baseline;min-width:0;min-height:2.75rem;margin:0;display:flex;position:relative}.command-form:after{background:var(--color-focus);content:"";transform-origin:0;height:2px;transition:transform var(--motion-fill) var(--ease-out-soft), background-color var(--motion-fast) var(--ease-out-cubic);position:absolute;inset:auto 0 0;transform:scaleX(0)}.prompt-prefix{min-height:2.75rem;color:var(--color-muted);cursor:text;transition:color var(--motion-fast) ease, font-weight var(--motion-fast) ease;flex:none;align-items:center;padding:.55rem 0;display:inline-flex}.command-input{min-width:0;min-height:2.75rem;color:var(--color-ink);caret-color:var(--color-accent);cursor:text;font:inherit;line-height:inherit;background:0 0;border:0;border-radius:0;outline:0;flex:auto;padding:.55rem .45rem}.command-input::placeholder{color:var(--color-ink);opacity:1;animation:1.1s step-end infinite prompt-blink}.command-input:focus::placeholder{opacity:0;animation:none}@keyframes prompt-blink{0%,54%{opacity:1}55%,to{opacity:0}}.command-form:focus-within .prompt-prefix{color:var(--color-focus);font-weight:500}.command-form:has(.command-input:focus-visible):after{transform:scaleX(1)}.current-command{margin:calc(var(--space-2xl) * -.35) 0 0;cursor:default}.command-suggestions{padding-left:var(--prompt-indent);margin-top:var(--space-2xs);transition:opacity var(--motion-fast) ease, visibility var(--motion-fast)}.current-command[data-empty=true]:not(:focus-within) .command-suggestions{visibility:hidden;opacity:0}.suggestion-label{max-width:100%;margin-bottom:var(--space-2xs);color:var(--color-muted);cursor:text;display:table}.suggestion-actions,.invalid-command-actions,.paper-recovery-actions{cursor:default;flex-wrap:wrap;align-items:baseline;gap:.15rem 1.15rem;display:flex}.suggestion-action[data-kind=paper],.suggestion-action[data-kind=field],.suggestion-action[data-kind=query]{color:var(--color-ink)}.suggestion-kind{color:var(--color-muted)}.command-rail{font-family:var(--font-navigation-handwritten);display:none}.navigation-list,.rail-fields{margin:0;padding:0;list-style:none}.compact-navigation{z-index:20;top:max(1rem, env(safe-area-inset-top));right:max(1rem, env(safe-area-inset-right));font-family:var(--font-navigation-handwritten);display:block;position:fixed}.compact-navigation-trigger{border:1px solid var(--color-divider);background:var(--color-navigation-surface);width:2.75rem;height:2.75rem;color:var(--color-ink);transition:border-color var(--motion-fast) ease, color var(--motion-fast) ease, background-color var(--motion-fast) ease;border-radius:50%;place-items:center;display:grid;position:relative}.compact-navigation-trigger:hover{border-color:var(--color-ink);background:var(--color-hover-surface);color:var(--color-ink)}.compact-navigation-trigger:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.compact-navigation-mark{width:1rem;height:.75rem;cursor:inherit;display:block;position:relative}.compact-navigation-mark>span{transform-origin:50%;width:1rem;height:1px;transition:top var(--motion-fast) ease, transform var(--motion-fast) ease;background:currentColor;position:absolute;left:0}.compact-navigation-mark>span:first-child{top:.2rem}.compact-navigation-mark>span:last-child{top:.55rem}.compact-navigation-mark[data-open=true]>span:first-child{top:.375rem;transform:rotate(45deg)}.compact-navigation-mark[data-open=true]>span:last-child{top:.375rem;transform:rotate(-45deg)}.compact-navigation-panel{width:min(15rem,100vw - 2rem);max-block-size:calc(100dvh - 5.5rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--color-divider);overscroll-behavior:contain;background:var(--color-navigation-surface);animation:compact-navigation-reveal var(--motion-fill) var(--ease-out-soft);border-radius:1.25rem;padding:.75rem .65rem;position:absolute;top:calc(100% + .65rem);right:0;overflow-y:auto}.compact-navigation-list{margin:0;padding:0;list-style:none}@keyframes compact-navigation-reveal{0%{clip-path:inset(0 0 100% round 1.25rem);opacity:0;transform:translateY(-.3rem)}to{clip-path:inset(0 round 1.25rem);opacity:1;transform:translateY(0)}}.compact-navigation-list>li{animation:stage-rise .4s var(--ease-out-soft) both}.compact-navigation-list>li:first-child{animation-delay:80ms}.compact-navigation-list>li:nth-child(2){animation-delay:.12s}.compact-navigation-list>li:nth-child(3){animation-delay:.16s}.compact-navigation-list>li:nth-child(4){animation-delay:.2s}.compact-navigation-list>li:nth-child(5){animation-delay:.24s}.compact-navigation-list>li:nth-child(6){animation-delay:.28s}.compact-navigation-list>li:nth-child(7){animation-delay:.32s}.rail-label{margin-bottom:var(--space-sm);color:var(--color-muted);padding-left:.85rem}.rail-label:after{width:2rem;height:1px;margin-top:var(--space-xs);background:var(--color-divider);content:"";display:block}.rail-action{min-height:2.75rem;color:var(--color-ink);font-size:var(--text-nav);background-image:linear-gradient(var(--color-paper-cream), var(--color-paper-cream));transition:background-size var(--motion-fill) var(--ease-out-soft), color var(--motion-fast) var(--ease-out-cubic);background-position:0 100%;background-repeat:no-repeat;background-size:100% 0%;border-radius:9999px;grid-template-columns:1rem minmax(0,1fr);align-items:center;padding:.4rem .85rem;line-height:1.3;text-decoration:none;display:grid}.rail-action:hover,.rail-action.is-hovered{color:var(--color-accent);background-size:100% 100%}.rail-action:hover .rail-marker,.rail-action.is-hovered .rail-marker{color:var(--color-accent)}.compact-navigation-panel .rail-action:hover,.compact-navigation-panel .rail-action.is-hovered{background-image:linear-gradient(var(--color-paper-stone), var(--color-paper-stone))}.rail-action.is-focused{outline:2px solid var(--color-focus);outline-offset:3px;background-color:color-mix(in srgb, var(--color-focus) 9%, transparent)}.rail-action[data-active=true]{color:var(--color-ink);background-image:linear-gradient(var(--color-paper-stone), var(--color-paper-stone));background-size:100% 100%;font-weight:400}.rail-marker{color:var(--color-divider);cursor:inherit}.rail-action[data-opened=true] .rail-marker{color:var(--color-muted)}.rail-action[data-active=true] .rail-marker{color:var(--color-accent)}.rail-fields{padding-left:1.6rem}.prompt-line span:last-child{color:var(--color-ink);transition:color var(--motion-fast) ease, font-weight var(--motion-fast) ease}.profile-output,.command-output{padding-left:var(--prompt-indent)}.chinese-name{width:clamp(8.125rem,13vw,10.9375rem);height:auto;margin:var(--space-xs) 0 var(--space-lg);opacity:.9;display:block}.profile-identity{align-items:baseline;column-gap:var(--space-lg);row-gap:var(--space-xs);margin:0 0 var(--space-md);font-size:var(--text-display);flex-wrap:wrap;display:flex}.profile-identity .chinese-name{width:3.33em;margin:0;translate:0 19.2%}html[data-hero-stage=pending] .whoami-block>.prompt-line>span:last-child{white-space:nowrap;vertical-align:bottom;animation:.36s steps(6,end) both hero-type;display:inline-block;overflow:hidden}html[data-hero-stage=pending] .whoami-block .profile-identity h1{animation:stage-wipe .7s var(--ease-out-soft) .32s both}html[data-hero-stage=pending] .whoami-block .chinese-name{animation:stage-fade .6s var(--ease-out-soft) .36s both}html[data-hero-stage=pending] .whoami-block .profile-photo{animation:stage-photo .8s var(--ease-in-out) .7s both}html[data-hero-stage=pending] .whoami-block .role{animation:stage-rise .6s var(--ease-out-soft) .88s both}html[data-hero-stage=pending] .whoami-block .affiliation{animation:stage-rise .6s var(--ease-out-soft) .96s both}html[data-hero-stage=pending] .whoami-block .profile-bio{animation:stage-rise .6s var(--ease-out-soft) 1.08s both}html[data-hero-stage=pending] .whoami-block .profile-bio+.profile-bio{animation-delay:1.16s}html[data-hero-stage=pending] .whoami-block .priority-actions{animation:stage-rise .6s var(--ease-out-soft) 1.32s both}html[data-hero-stage=pending] .whoami-block .command-menu{animation:stage-rise .6s var(--ease-out-soft) 1.42s both}@keyframes sketch-breathe{0%,to{opacity:.62}50%{opacity:.74}}@keyframes stage-fade{0%{opacity:0}to{opacity:.9}}@keyframes hero-type{0%{width:0}to{width:6ch}}@keyframes stage-wipe{0%{clip-path:inset(-.1em 0 100%);transform:translateY(.12em)}to{clip-path:inset(-.1em 0 -.2em);transform:none}}@keyframes stage-photo{0%{clip-path:inset(-.5rem -.5rem 100%);opacity:.6}to{clip-path:inset(-.5rem);opacity:1}}@keyframes stage-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.role,.affiliation,.profile-bio{margin-bottom:var(--space-md)}.profile-identity h1{letter-spacing:-.015em;text-wrap:balance;font-size:1em;line-height:.96}.role{margin-bottom:var(--space-2xs);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-prose);font-weight:400;line-height:1.5}.affiliation{margin-bottom:var(--space-lg);font-family:var(--font-body);font-size:var(--text-prose);font-weight:400;line-height:1.6}.profile-bio,.paper-summary,.paper-abstract-inner,.paper-detail-group>.dash-list,.teaching-entry p,.paper-zero-state>p,.lab-type-body,.lab-intro>p:not(.lab-kicker){font-family:var(--font-body);font-size:var(--text-prose);font-weight:400;line-height:1.75}.profile-bio{max-width:68ch}.profile-output{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.profile-main{min-width:0}.profile-photo{aspect-ratio:2/3;object-fit:cover;object-position:50% 18%;width:clamp(7.5rem,17vw,11rem);height:auto;box-shadow:0 0 0 .4rem var(--color-paper-stone);background:var(--color-paper-cream);filter:saturate(.9);border:0;grid-area:1/2;margin:.6rem .4rem 0 clamp(1.9rem,3.4vw,2.9rem)}.site-sketch-frame{display:none}.site-sketch-plate{position:relative}.site-sketch{width:100%;height:auto;display:block}.site-sketch-plate:after{content:"";opacity:0;pointer-events:none;background:url(/assets/harper-center-sketch.png) 50%/100% 100% no-repeat;position:absolute;inset:0}.lab-profile-photo-preview{display:flow-root}.lab-profile-photo-preview .profile-photo{float:right;margin:.6rem .4rem calc(var(--space-md) + .4rem) calc(var(--space-md) + .4rem)}.affiliation,.paper-coauthors,.paper-note{color:var(--color-muted)}.priority-actions,.command-menu div,.paper-actions{flex-wrap:wrap;align-items:baseline;gap:.15rem 1.15rem;display:flex}.priority-actions{margin:var(--space-lg) 0 var(--space-lg);align-items:center}.command-menu>span{margin-bottom:var(--space-sm);color:var(--color-muted);display:block}.text-action{min-height:2.75rem;color:var(--color-accent);text-align:left;transition:background-size var(--motion-fast) var(--ease-out-cubic), color var(--motion-fast) var(--ease-out-cubic);background:linear-gradient(currentColor,currentColor) 0 calc(100% - .45rem)/0% 1px no-repeat;border:0;border-radius:0;align-items:center;padding:.55rem 0;text-decoration:none;display:inline-flex}.text-action:hover,.text-action.is-hovered{background-size:100% 1px}.email-icon-action{background-image:none;flex:0 0 2.75rem;justify-content:center;padding:0}.text-action.is-active,.text-action[data-active=true]{color:var(--color-accent-ink);background-size:100% 1px;font-weight:500}.text-action:focus-visible,.text-action.is-focused,.not-found-output a:focus-visible,.rail-action:focus-visible,.paper-coauthors a:focus-visible,.paper-venue a:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;background-color:color-mix(in srgb, var(--color-focus) 9%, transparent)}.pending-link{min-height:2.75rem;color:var(--color-muted);cursor:not-allowed;align-items:center;padding:.55rem 0;text-decoration:none;display:inline-flex}.pending-link *,.pending-output,.pending-output *{cursor:not-allowed}.inline-text-action{min-height:2.75rem;padding-block:.45rem}.current-prompt{margin:calc(var(--space-2xl) * -.35) 0 0}.command-output{overflow-wrap:anywhere}.command-output>:last-child,.paper-abstract-inner>:last-child{margin-bottom:0}.output-label{margin-top:var(--space-lg);margin-bottom:var(--space-xs);color:var(--color-muted)}.dash-list{margin:0;padding:0;list-style:none}.dash-list li{padding-left:1.5rem;position:relative}.dash-list li:before{content:"—";color:var(--color-muted);position:absolute;left:0}.paper-entry{margin-bottom:clamp(3.25rem,5vw,4.5rem)}.paper-entry:last-child{margin-bottom:0}.paper-metadata{color:var(--color-muted);margin-bottom:0}.paper-updated{margin:var(--space-2xs) 0 0;color:var(--color-muted)}.paper-coauthors,.paper-subtitle,.paper-venue,.paper-match{color:var(--color-muted)}.paper-coauthors{margin:var(--space-2xs) 0 0}.paper-coauthors a,.paper-venue a,.not-found-output a{color:var(--color-accent);cursor:pointer;transition:background-size var(--motion-fast) var(--ease-out-cubic);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;text-decoration:none}.paper-coauthors a:hover,.paper-venue a:hover,.not-found-output a:hover{background-size:100% 1px}.paper-summary{max-width:68ch;margin:1rem 0 0}.paper-actions{margin-top:1.1rem}.paper-field-index,.command-examples{margin:0;padding:0;list-style:none}.paper-field-index{gap:.25rem;width:min(100%,44rem);display:grid}.paper-field-index>li{width:100%}.paper-field-action{grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;width:100%;text-decoration:none;display:grid}.paper-field-name{min-width:0}.paper-field-count{color:var(--color-muted);white-space:nowrap}.command-examples{color:var(--color-muted)}.command-examples li:before{content:"~ $ ";color:var(--color-muted)}.paper-result-count,.paper-search-correction,.search-result-header p{color:var(--color-muted)}.paper-result-count,.search-result-header{margin-bottom:var(--space-lg)}.search-result-header h2,.search-result-header p{margin-bottom:var(--space-2xs)}.paper-collection>.paper-entry{margin-bottom:clamp(3.25rem,5vw,4.5rem)}.paper-collection[data-variant=compact]>.paper-entry{margin-bottom:clamp(2.25rem,3.5vw,3rem)}.paper-title{font-size:var(--text-title);letter-spacing:-.005em;text-wrap:pretty;margin-bottom:.9rem;font-weight:400;line-height:1.2}.paper-entry[data-variant=compact] .paper-title{margin-bottom:.45rem}.paper-entry[data-variant=compact] .paper-actions{margin-top:.6rem}.paper-recovery-actions{margin-top:var(--space-lg)}.show-more-action{margin-top:0}.paper-overflow>summary{cursor:pointer;list-style:none;display:inline-block}.paper-overflow>summary::-webkit-details-marker{display:none}.paper-overflow[open]>summary{display:none}.abstract-control{flex:none}.paper-abstract{width:100%;color:var(--color-muted);flex:0 0 100%;overflow:hidden}.paper-details{width:100%;color:var(--color-muted);flex:0 0 100%}.paper-abstract,.paper-details{order:1}.paper-abstract:not([hidden]),.paper-details:not([hidden]){opacity:0;transition:grid-template-rows var(--motion-reveal) var(--ease-out-soft), opacity var(--motion-reveal) var(--ease-out-soft);grid-template-rows:0fr;display:grid}.paper-abstract[data-expanded],.paper-details[data-expanded]{opacity:1;grid-template-rows:1fr}.paper-abstract>.paper-abstract-inner,.paper-details>.paper-details-content{min-height:0;transition:transform var(--motion-reveal) var(--ease-out-soft);overflow:hidden;transform:translateY(-6px)}.paper-abstract[data-expanded]>.paper-abstract-inner,.paper-details[data-expanded]>.paper-details-content{transform:none}.paper-abstract-inner,.paper-details-content{width:100%;max-width:44rem;margin-top:var(--space-sm);background:var(--color-paper-cream);padding:1.1rem 1.35rem}.paper-abstract-inner p{margin-bottom:var(--space-md);color:var(--color-ink)}.paper-details-content>:last-child{margin-bottom:0}.paper-detail-line,.paper-detail-label,.paper-detail-group{margin-bottom:var(--space-sm)}.paper-detail-label{color:var(--color-ink)}.paper-detail-actions{flex-wrap:wrap;gap:.15rem 1.15rem;display:flex}.paper-note{margin-top:var(--space-sm);margin-bottom:0}.teaching-list{gap:var(--space-lg);display:grid}.teaching-entry{grid-template-columns:4rem minmax(0,1fr);align-items:baseline;gap:1rem;display:grid}.teaching-entry>span{color:var(--color-muted)}.teaching-entry p{margin-bottom:0}.teaching-entry small{margin-top:var(--space-2xs);color:var(--color-muted);font:inherit;font-size:var(--text-meta);letter-spacing:.015em;line-height:1.5;display:block}.contact-output dl,.help-output dl{margin-bottom:0}.contact-output dl>div,.help-output dl>div{align-items:baseline;gap:1rem;display:grid}.contact-output dl>div{grid-template-columns:7.25rem minmax(0,1fr)}.help-output dl>div{grid-template-columns:7.5rem minmax(0,1fr)}.contact-output dt,.help-output dd{color:var(--color-muted)}.contact-output dd,.help-output dd{margin-bottom:0}.placeholder-text,.command-not-found{color:var(--color-muted)}.command-not-found span{color:var(--color-ink)}.not-found-output h1{margin-bottom:var(--space-md)}.design-lab{width:min(68rem, calc(100vw - (2 * var(--page-gutter))));margin-inline:auto}.lab-intro,.lab-section{margin-bottom:var(--space-xl)}.lab-kicker{margin-bottom:var(--space-xs);color:var(--color-muted)}.lab-section>h2{margin-bottom:var(--space-lg)}.token-list{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));margin:0;display:grid}.token-swatch{border:1px solid var(--color-divider);background:var(--swatch);min-height:5rem;color:var(--swatch-text,var(--color-ink));padding:.8rem}.lab-samples{gap:var(--space-lg);display:grid}.lab-layout-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));display:grid}.lab-layout-state{gap:var(--space-xs);display:grid}.lab-layout-state>small{color:var(--color-muted)}.lab-shell-specimen{border:1px solid var(--color-divider);cursor:default;align-items:stretch;gap:.6rem;min-height:6rem;padding:.7rem;display:grid}.lab-shell-specimen span{background:color-mix(in srgb, var(--color-divider) 28%, transparent);color:var(--color-muted);cursor:text;text-align:center;place-items:center;padding:.5rem;font-size:.75em;display:grid}.lab-shell-wide{grid-template-columns:minmax(0,4fr) minmax(4.5rem,1fr)}.lab-shell-tablet{grid-template-columns:minmax(0,1fr);padding-inline:12%}.lab-shell-mobile{grid-template-columns:1fr;width:min(100%,10rem)}.lab-rail-preview{width:min(100%,15rem)}.lab-rail-preview .command-rail{border:0;max-height:none;padding:0;display:block;position:static;overflow:visible}.lab-rail-state-list{width:min(100%,18rem);margin-top:var(--space-lg);font-family:var(--font-navigation-handwritten);display:grid}.lab-navigation-specimens{align-items:start;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));display:grid}.lab-compact-navigation-state{min-height:5rem;position:relative}.lab-compact-navigation-state[data-open=true]{min-height:22rem}.compact-navigation[data-specimen=true]{width:2.75rem;display:block;position:relative;inset:auto}.lab-signature-grid{align-items:start;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));display:grid}.lab-signature-lockup{width:100%;padding:var(--space-md);border-left:1px solid var(--color-divider)}.lab-signature-lockup h3,.lab-signature-lockup .chinese-name{margin-bottom:0}.lab-signature-mobile{width:min(100%,20rem)}.lab-signature-mobile .chinese-name{width:8.125rem}.lab-navigation-type{font-family:var(--font-navigation-handwritten);font-size:var(--text-nav)}.lab-deprecated{opacity:.72}.current-command[data-state=focused] .command-form:after,.current-command[data-state=completion] .command-form:after{transform:scaleX(1)}.current-command[data-state=invalid] .command-form:after{background:var(--color-accent);transform:scaleX(1)}.lab-state-row{flex-wrap:wrap;gap:.4rem 1.2rem;display:flex}.lab-state{gap:.2rem;display:grid}.lab-state>small{color:var(--color-muted)}.lab-type-sample{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:0;font-weight:400}.lab-type-name{font-size:var(--text-display);letter-spacing:-.015em;line-height:.96}.lab-type-section,.lab-type-paper,.lab-type-paper-compact{font-size:var(--text-title);font-weight:400;line-height:1.2}.lab-type-body,.lab-type-meta,.lab-type-nav{margin:0}.lab-type-meta{color:var(--color-muted);font-size:var(--text-meta);letter-spacing:.015em}.lab-type-nav{font-family:var(--font-navigation-handwritten);font-size:var(--text-nav)}.lab-motion-list{gap:var(--space-sm);margin:0 0 var(--space-md);display:grid}.lab-motion-list>div{gap:.15rem;display:grid}.lab-motion-list dt{color:var(--color-ink)}.lab-motion-list dd{color:var(--color-muted);font-size:var(--text-meta);margin:0}.lab-rail-italic .rail-action{font-family:var(--font-display);font-size:var(--text-lede);font-style:italic;font-weight:400}.lab-rule{border-left:1px solid var(--color-divider);padding-left:1.2rem}.narrow-sample{width:min(100%,20rem)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}@media (min-width:68.75rem){.site-shell{width:min(var(--site-shell-max), calc(100vw - 3rem));grid-template-columns:minmax(0, var(--content-width)) minmax(10rem, var(--rail-width));justify-content:center;column-gap:clamp(2rem, 4vw, var(--shell-gap))}.command-rail{overscroll-behavior:contain;border-left:0;grid-area:1/2;align-self:start;max-height:calc(100vh - 4rem);padding-left:0;display:block;position:sticky;top:clamp(2rem,8vh,6rem);overflow-y:auto}.site-sketch-frame{z-index:-1;pointer-events:none;width:clamp(22rem,26vw,26rem);display:block;position:fixed;bottom:-2.5rem;right:0}.site-sketch{opacity:.68;animation:sketch-breathe var(--motion-ambient) var(--ease-in-out) infinite}.site-sketch-plate:after{transition:opacity var(--motion-stage) var(--ease-in-out);-webkit-mask-image:radial-gradient(46% 48% at 46%,#000 20%,#0000 100%);mask-image:radial-gradient(46% 48% at 46%,#000 20%,#0000 100%)}.compact-navigation:not([data-specimen=true]){display:none}}@media (min-width:68.75rem) and (hover:hover) and (pointer:fine){.site-sketch-frame[data-lit=true] .site-sketch-plate:after{opacity:var(--sketch-lit);transition-duration:var(--motion-reveal);transition-timing-function:var(--ease-out-soft)}}@media (max-width:42rem){:root{--page-gutter:clamp(1.125rem, 5.5vw, 1.4rem)}.terminal{padding-top:clamp(5rem,12vh,6.5rem);padding-bottom:5rem;padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.current-command[data-empty=true]:not(:focus-within) .command-suggestions{display:none}.profile-output,.command-output,.command-suggestions{padding-left:0}.profile-output{display:block}.command-block{margin-bottom:clamp(4rem,12vh,5.5rem)}.profile-photo{float:right;width:clamp(6.5rem,30vw,8rem);margin:.6rem .4rem calc(var(--space-md) + .4rem) calc(var(--space-md) + .4rem)}.affiliation{clear:right}.priority-actions,.command-menu div,.paper-actions,.suggestion-actions,.invalid-command-actions,.paper-recovery-actions{column-gap:1rem}.paper-field-action{gap:.85rem}.paper-abstract-inner,.paper-details-content{padding:.9rem 1rem}}@media (max-width:25rem){:root{--page-gutter:1.125rem}.teaching-entry,.contact-output dl>div,.help-output dl>div{grid-template-columns:1fr;gap:.1rem}.contact-output dl>div,.help-output dl>div{margin-bottom:var(--space-sm)}.teaching-entry{gap:var(--space-2xs)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.command-input::placeholder{animation:none}html[data-hero-stage] .whoami-block *{opacity:1;clip-path:none;animation:none;transform:none;-webkit-mask-image:none;mask-image:none}html[data-hero-stage] .whoami-block>.prompt-line>span:last-child{width:auto;display:inline}.command-block.is-active>.prompt-line span:last-child{background-size:100% 1px;animation:none}[data-reveal]{transition:none;opacity:1!important;transform:none!important}.site-sketch{opacity:.68;animation:none}.site-sketch-plate:after{opacity:0;transition:none}}@media (forced-colors:active){.current-command[data-state=focused] .command-form,.current-command[data-state=completion] .command-form{outline-offset:3px;box-shadow:none;outline:2px solid canvastext}.command-form:has(.command-input:focus-visible){outline-offset:3px;box-shadow:none;outline:2px solid canvastext}.command-form:after{display:none}.text-action:focus-visible,.command-block:focus-visible,.rail-action:focus-visible,.rail-action.is-focused,.compact-navigation-trigger:focus-visible{outline-color:canvastext}.compact-navigation-trigger,.compact-navigation-panel{border-color:canvastext}}
