@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.start{inset-inline-start:var(--spacing)}.grid{display:grid}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#222024;--muted:#68636a;--paper:#fdfcfb;--white:#fff;--pink:#f7eaef;--rose:#8a5369;--lavender:#eeeaf6;--purple:#65587b;--line:#dedadd;--line-dark:#9d979c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{color:inherit}a,button{transition:color .16s,background-color .16s,border-color .16s}:focus-visible{outline:2px solid var(--rose);outline-offset:4px}.topbar{border-bottom:1px solid var(--line);z-index:20;background:#fdfcfbf2;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;min-height:72px;padding:0 5vw;display:grid;position:sticky;top:0}.brand{width:fit-content;font-size:1.12rem;font-weight:700}.tabs{align-items:center;gap:1.45rem;display:flex}.tabs a{color:var(--muted);padding:.4rem 0;font-size:.98rem}.tabs a:hover,.tabs a:focus-visible,.tabs a[aria-current=page]{color:var(--ink);text-underline-offset:.35rem;text-decoration:underline}.visitor-cloud{background:var(--lavender);color:var(--purple);white-space:nowrap;z-index:0;border-radius:999px;justify-self:end;align-items:center;min-height:34px;padding:.48rem .8rem;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;display:inline-flex;position:relative;box-shadow:0 7px 18px #65587b1f}.visitor-cloud:before,.visitor-cloud:after{background:var(--lavender);content:"";z-index:-1;border-radius:50%;position:absolute}.visitor-cloud:before{width:17px;height:17px;top:-7px;left:14px}.visitor-cloud:after{width:22px;height:22px;top:-10px;left:27px}.visitor-cloud strong{color:var(--rose)}.nav-toggle{cursor:pointer;background:0 0;border:0;width:34px;height:34px;padding:7px;display:none}.nav-toggle span{background:var(--ink);width:20px;height:1px;margin:5px 0;display:block}.profile-section,.section,.notebook-hero,.project-notes,.notebook-return{max-width:1220px;margin:0 auto;padding-left:5vw;padding-right:5vw}.profile-section{padding-top:clamp(4.5rem,8vw,7rem)}.profile-primary{border-bottom:1px solid var(--line-dark);grid-template-columns:minmax(0,1fr) minmax(250px,330px);align-items:start;gap:clamp(3rem,8vw,7.5rem);padding-bottom:clamp(3.5rem,7vw,6rem);display:grid}.profile-copy{max-width:750px}.eyebrow{color:var(--rose);letter-spacing:.08em;text-transform:uppercase;margin:0 0 1rem;font-family:Arial,Helvetica,sans-serif;font-size:.84rem;font-weight:600}h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.55rem,4.4vw,4.15rem);font-weight:400;line-height:1.02}.role-line{color:var(--rose);margin:1.45rem 0 0;font-size:clamp(1rem,1.45vw,1.2rem);font-weight:600}.lead{max-width:680px;margin:1.55rem 0 1rem;font-size:clamp(1.3rem,2vw,1.62rem);line-height:1.48}.profile-intro{max-width:700px;margin:1.65rem 0 0;padding:0;list-style:none}.profile-intro li{border-top:1px solid var(--line);padding:.85rem 0 .85rem 1.25rem;font-size:clamp(.96rem,1.2vw,1.08rem);line-height:1.55;position:relative}.profile-intro li:last-child{border-bottom:1px solid var(--line)}.profile-intro li:before{background:var(--rose);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:1.45rem;left:0}.bio{color:var(--muted);max-width:680px;margin:0;font-size:1.05rem;line-height:1.75}.profile-links,.timeline-links{flex-wrap:wrap;gap:1.25rem;margin-top:2rem;font-family:Arial,Helvetica,sans-serif;display:flex}.profile-links a,.timeline-links a,.project-link{border-bottom:1px solid var(--line-dark);padding-bottom:.18rem;font-size:.9rem}.profile-photo{margin:0}.profile-photo img{filter:saturate(.82);width:100%;height:auto;display:block}.profile-photo figcaption{color:var(--muted);margin-top:.65rem;font-size:.9rem}.profile-history{grid-template-columns:minmax(180px,.42fr) 1fr;gap:clamp(2rem,5vw,5rem);padding:clamp(3.2rem,6vw,5rem) 0;display:grid}.history-label>p:last-child{color:var(--muted);max-width:260px;margin:0;line-height:1.6}.profile-history ol{margin:0;padding:0;list-style:none}.profile-history li{border-top:1px solid var(--line);grid-template-columns:58px 125px 1fr;align-items:center;gap:1.2rem;padding:.95rem 0;display:grid}.profile-history li:last-child{border-bottom:1px solid var(--line)}.institution-logo{background:#ffffffad;border:1px solid #3e364b17;border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;padding:.42rem;display:flex;overflow:hidden}.institution-logo img{object-fit:contain;width:100%;height:100%;display:block}.institution-logo-cuhk,.institution-logo-sribd{background:#ffffffc7;padding:.22rem}.profile-history time,.profile-history span{color:var(--muted);font-size:.94rem}.profile-history strong{margin-bottom:.25rem;font-size:1.04rem;font-weight:600;display:block}.research-taste{border-top:1px solid var(--line-dark);max-width:1220px;margin:0 auto;padding:clamp(4rem,7vw,6rem) 5vw clamp(5rem,8vw,7rem)}.taste-heading{grid-template-columns:1fr;gap:2rem;display:grid}.taste-heading h2{letter-spacing:-.035em;max-width:780px;margin:0;font-size:clamp(1.7rem,3vw,2.8rem);font-weight:400;line-height:1.15}.taste-judgements{grid-template-columns:repeat(3,1fr);gap:0;margin-top:3.5rem;display:grid}.taste-judgements article{border:1px solid var(--line);border-right:0;min-height:190px;padding:1.4rem}.taste-judgements article:last-child{border-right:1px solid var(--line)}.taste-judgements span{color:var(--rose);font-size:.78rem}.taste-judgements p{margin:2.2rem 0 0;font-size:1rem;line-height:1.6}.taste-questions{border-bottom:1px solid var(--line-dark);border-top:1px solid var(--line-dark);grid-template-columns:repeat(4,1fr);margin-top:1.6rem;display:grid}.taste-questions p{border-right:1px solid var(--line);color:var(--purple);margin:0;padding:1rem;font-size:.92rem;line-height:1.45}.taste-questions p:last-child{border-right:0}.section{border-top:1px solid var(--line-dark);padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(5rem,9vw,8rem)}.page-section{border-top:0;min-height:calc(100vh - 180px);padding-top:clamp(4.5rem,8vw,7rem)}.page-section .section-heading h1{font-size:clamp(2.35rem,4.4vw,4rem)}.section-heading{max-width:720px}.section-heading h2,.everything-teaser h2,.project-note h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.9rem,3.3vw,3.15rem);font-weight:400;line-height:1.08}.section-heading>p:last-child{color:var(--muted);margin:1.2rem 0 0;font-size:.98rem;line-height:1.7}.timeline-section{max-width:1220px;margin:0 auto;padding-left:5vw;padding-right:5vw}.timeline-heading{justify-content:space-between;align-items:end;max-width:min(1120px,90vw);display:flex}.timeline-heading>a{border-bottom:1px solid var(--line-dark);color:var(--muted);margin-bottom:.25rem;padding-bottom:.18rem;font-family:Arial,Helvetica,sans-serif;font-size:.9rem}.timeline-explorer{margin-top:2.5rem}.timeline-toolbar{align-items:center;max-width:min(1120px,90vw);display:flex}.timeline-filters{align-items:center;gap:.4rem;font-family:Arial,Helvetica,sans-serif;display:flex}.timeline-filters button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:2px;padding:.42rem .65rem;font-family:inherit;font-size:.82rem}.timeline-filters button.active{border-color:var(--ink);color:var(--rose)}.timeline-track{gap:1.5rem;margin-top:1.5rem;padding-left:2.3rem;display:grid;position:relative}.timeline-track:before{background:var(--line-dark);content:"";width:1px;position:absolute;top:0;bottom:0;left:.55rem}.timeline-card{background:var(--white);border:1px solid var(--line);grid-template-columns:minmax(260px,.8fr) 1.2fr;min-height:0;display:grid;position:relative}.timeline-card:before{background:var(--paper);border:2px solid var(--rose);content:"";border-radius:50%;width:.75rem;height:.75rem;position:absolute;top:1.05rem;left:-2.18rem}.timeline-date{border-bottom:1px solid var(--line);grid-column:1/-1;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.75rem 1rem;font-family:Arial,Helvetica,sans-serif;display:grid}.timeline-date span{color:var(--rose)}.timeline-date small{color:var(--muted)}.timeline-date i{background:var(--line);height:1px}.timeline-card figure{border-right:1px solid var(--line);background:#fff;margin:0;padding:1.2rem}.timeline-card figure img{object-fit:contain;pointer-events:none;width:100%;height:100%;min-height:260px;display:block}.timeline-card figcaption{color:var(--muted);margin-top:.5rem;font-size:.8rem}.timeline-card-body{flex-direction:column;padding:1.5rem;display:flex}.work-classification{flex-wrap:wrap;gap:.5rem 1rem;font-family:Arial,Helvetica,sans-serif;display:flex}.work-classification span{color:var(--purple);font-size:.82rem}.timeline-card h3{margin:1.15rem 0 .8rem;font-size:clamp(1.15rem,1.7vw,1.4rem);font-weight:600;line-height:1.32}.work-authors,.work-venue{color:var(--muted);margin:0;font-size:.9rem;line-height:1.5}.work-venue{color:var(--ink);margin-top:.2rem;font-style:italic}.work-abstract{border-top:1px solid var(--line);color:var(--muted);margin:1.15rem 0 0;padding-top:1rem;font-size:.92rem;line-height:1.65}.timeline-links{margin-top:auto;padding-top:1.5rem}.patent-section{max-width:1220px}.patent-list{margin:3rem 0 0;padding:0;list-style:none}.patent-list li{border-top:1px solid var(--line);grid-template-columns:minmax(105px,.25fr) 1fr;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.2rem) 0;display:grid}.patent-list li:last-child{border-bottom:1px solid var(--line)}.patent-number{flex-direction:column;gap:.35rem;display:flex}.patent-number span{color:var(--rose)}.patent-number small{color:var(--muted)}.patent-copy{max-width:820px}.patent-copy h3{margin:0;font-size:clamp(1.18rem,1.8vw,1.55rem);font-weight:500;line-height:1.35}.patent-copy p{color:var(--muted);margin:1rem 0 0;line-height:1.65}.patent-copy .patent-inventors{color:var(--ink);margin-top:.75rem}.patent-copy .patent-id{color:var(--purple);margin-top:.25rem;font-size:.9rem}.patent-copy a{border-bottom:1px solid var(--line-dark);margin-top:1.1rem;padding-bottom:.15rem;font-size:.9rem;display:inline-block}.notes-section{max-width:960px}.interesting-nav{background:var(--lavender);border-bottom:1px solid var(--line);scrollbar-width:none;white-space:nowrap;justify-content:center;gap:1.7rem;padding:.75rem 5vw;display:flex;overflow-x:auto}.interesting-nav::-webkit-scrollbar{display:none}.interesting-nav a{color:var(--purple);flex:none;font-size:.86rem}.interesting-nav a:hover,.interesting-nav a:focus-visible{text-underline-offset:.3rem;text-decoration:underline}.interesting-hub{max-width:1120px}.interesting-hub>.interesting-nav{background:0 0;border:0;justify-content:flex-start;margin-top:2rem;padding:0}.interesting-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem;display:grid}.interesting-card{background:var(--white);border:1px solid var(--line);flex-direction:column;min-height:280px;padding:1.5rem;transition:border-color .16s,transform .16s;display:flex}.interesting-card:hover,.interesting-card:focus-visible{border-color:var(--rose);transform:translateY(-2px)}.interesting-card>span{color:var(--rose);font-size:.78rem}.interesting-card h2{margin:2.5rem 0 .8rem;font-size:1.45rem;font-weight:500}.interesting-card p{color:var(--muted);margin:0;line-height:1.65}.interesting-card small{color:var(--purple);margin-top:auto;padding-top:1.5rem}.daily-section{max-width:1220px}.daily-calendar{margin-top:3rem;padding-bottom:.5rem;overflow-x:auto}.calendar-toolbar{border-bottom:1px solid var(--line-dark);grid-template-columns:1fr auto 1fr;align-items:center;min-width:840px;padding:0 0 1rem;display:grid}.calendar-toolbar h2{text-align:center;margin:0;font-size:1.25rem;font-weight:500}.calendar-toolbar>div{justify-content:flex-end;gap:.4rem;display:flex}.calendar-toolbar button{background:var(--white);border:1px solid var(--line);cursor:pointer;min-height:32px;padding:.35rem .7rem;font-family:inherit;font-size:.82rem}.calendar-toolbar button:hover,.calendar-toolbar button:focus-visible{border-color:var(--rose);color:var(--rose)}.calendar-grid{border-left:1px solid var(--line);grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px;display:grid}.calendar-weekday{border-bottom:1px solid var(--line);border-right:1px solid var(--line);color:var(--muted);text-transform:uppercase;padding:.6rem;font-size:.75rem}.calendar-day{background:var(--white);border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:138px;padding:.55rem}.calendar-day>time{color:var(--ink);font-size:.76rem}.calendar-day.muted-day{background:#eeeaf647}.calendar-day.muted-day>time{color:#aaa4aa}.calendar-entries{margin-top:.65rem}.calendar-entries a{background:var(--pink);border-left:3px solid var(--rose);padding:.5rem;display:block}.calendar-entries a:hover,.calendar-entries a:focus-visible{background:var(--lavender)}.calendar-entries small{color:var(--rose);text-transform:uppercase;margin-bottom:.25rem;font-size:.62rem;display:block}.calendar-entries span{font-size:.72rem;line-height:1.35;display:block}.bilingual-post{max-width:1120px;margin:0 auto;padding:clamp(4rem,8vw,7rem) 5vw clamp(5rem,9vw,8rem)}.post-header{border-bottom:1px solid var(--line-dark);padding-bottom:2.5rem}.post-header h1{max-width:880px}.post-title-zh{color:var(--purple);margin:1rem 0;font-size:1.08rem}.post-header time{color:var(--muted);font-size:.82rem}.language-columns{grid-template-columns:repeat(2,1fr);gap:clamp(2rem,6vw,5rem);margin-top:3rem;display:grid}.language-columns section+section{border-left:1px solid var(--line);padding-left:clamp(2rem,5vw,4rem)}.language-columns h2{color:var(--rose);letter-spacing:.06em;text-transform:uppercase;margin:0 0 1.8rem;font-size:.86rem}.language-columns p{margin:0 0 1.35rem;font-size:1rem;line-height:1.8}.post-back{border-bottom:1px solid var(--line-dark);color:var(--muted);margin-top:2rem;padding-bottom:.2rem;font-size:.88rem;display:inline-block}.notes-timeline{max-width:760px;margin:3rem 0 0;padding:0 0 0 2.2rem;list-style:none;position:relative}.notes-timeline:before{background:var(--line-dark);content:"";width:1px;position:absolute;top:0;bottom:0;left:.5rem}.notes-timeline>li{margin-bottom:1rem;position:relative}.notes-timeline>li:before{background:var(--paper);border:2px solid var(--rose);content:"";border-radius:50%;width:.7rem;height:.7rem;position:absolute;top:1.15rem;left:-2.05rem}.note-card{background:var(--white);border:1px solid var(--line);padding:1.15rem 1.3rem}.note-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem 1rem;display:flex}.note-meta span{color:var(--rose);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:600}.note-meta time{color:var(--muted);font-size:.78rem}.note-card>p{margin:.85rem 0 0;font-size:.98rem;line-height:1.62}.everything-teaser{border-top:1px solid var(--line-dark);max-width:1220px;margin:0 auto;padding:clamp(4rem,8vw,7rem) 5vw}.everything-teaser>div{grid-template-columns:minmax(250px,.8fr) 1fr;align-items:start;gap:2rem;display:grid}.everything-teaser p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.7}.everything-teaser a{border-bottom:1px solid var(--line-dark);margin-top:1.3rem;padding-bottom:.2rem;font-family:Arial,Helvetica,sans-serif;font-size:.9rem;display:inline-block}.notebook-hero{border-bottom:1px solid var(--line-dark);padding-top:clamp(4.5rem,8vw,7rem);padding-bottom:clamp(3.5rem,7vw,6rem)}.notebook-hero h1{max-width:880px}.notebook-hero>p:last-child{color:var(--muted);max-width:720px;margin:1.5rem 0 0;font-size:1.05rem;line-height:1.7}.project-notes{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(4rem,8vw,7rem)}.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.project-card{background:var(--white);border:1px solid var(--line-dark);flex-direction:column;min-width:0;display:flex}.project-visual{background:var(--paper);border-bottom:1px solid var(--line);height:300px;padding:1.5rem;overflow:hidden}.project-card-content{flex-direction:column;flex:1;padding:clamp(1.5rem,3vw,2.25rem);display:flex}.project-card-meta{color:var(--rose);justify-content:space-between;align-items:center;margin-bottom:1.25rem;font-size:.86rem;display:flex}.project-card-meta small{color:var(--muted);font-size:.78rem}.project-question{color:var(--rose);margin:0 0 .8rem;font-style:italic}.project-card h2{letter-spacing:-.045em;margin:0 0 1rem;font-size:clamp(1.7rem,2.8vw,2.45rem);font-weight:400;line-height:1.08}.project-card-content>p:not(.project-question,.project-private-note){color:var(--muted);font-size:.96rem;line-height:1.7}.project-capabilities{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);margin:2rem 0;padding:0;list-style:none;display:grid}.project-capabilities li{border-bottom:1px solid var(--line);color:var(--purple);padding:.72rem .5rem;font-size:.8rem}.project-capabilities li:nth-child(odd){border-right:1px solid var(--line)}.project-capabilities li:nth-last-child(-n+2){border-bottom:0}.project-private-note{border-top:1px solid var(--line);color:var(--muted);margin:auto 0 0;padding-top:1rem;font-size:.82rem}.project-link{align-self:flex-start;margin-top:auto;padding-top:.8rem;display:inline-block}.literature-visual{grid-template-columns:.8fr auto 1fr auto 1fr;align-items:center;gap:.75rem;display:grid}.source-stack,.ranking-stack{flex-direction:column;gap:.45rem;display:flex}.source-stack span,.ranking-stack span{background:var(--white);border:1px solid var(--line);border-radius:2px;padding:.45rem .5rem;font-size:.7rem}.source-stack span:nth-child(2),.ranking-stack span:nth-child(2){border-color:var(--rose);color:var(--rose)}.visual-arrow{color:var(--line-dark)}.report-sheet{background:var(--white);border:1px solid var(--line-dark);flex-direction:column;min-height:190px;padding:1rem;display:flex}.report-sheet small{color:var(--rose);letter-spacing:.08em;font-size:.62rem}.report-sheet strong{margin:.55rem 0;font-size:1rem}.report-sheet i{background:var(--line);height:4px;margin:.28rem 0}.report-sheet i:nth-of-type(2){width:80%}.report-sheet i:nth-of-type(3){width:58%}.report-sheet span{color:var(--purple);margin-top:auto;font-size:.66rem}.tennis-visual{grid-template-columns:1.2fr .8fr;gap:1rem;display:grid}.tennis-court{background:var(--lavender);border:1px solid var(--purple);min-height:250px;position:relative;overflow:hidden}.tennis-court:before{content:"";border:1px solid #65587b6b;position:absolute;inset:16px}.court-line{background:#65587b52;position:absolute}.court-line-a{height:1px;top:50%;left:16px;right:16px}.court-line-b{width:1px;top:16px;bottom:16px;left:50%}.pose-figure{width:120px;height:155px;position:absolute;top:48px;left:20%}.pose-figure i{background:var(--purple);transform-origin:0;position:absolute}.pose-head{border-radius:50%;width:26px;height:26px;top:0;left:48px;background:var(--pink)!important}.pose-torso{width:67px;height:5px;top:31px;left:60px;transform:rotate(82deg)}.pose-arm-a{width:62px;height:4px;top:48px;left:60px;transform:rotate(-35deg)}.pose-arm-b{width:52px;height:4px;top:48px;left:60px;transform:rotate(205deg)}.pose-leg-a{width:67px;height:5px;top:95px;left:68px;transform:rotate(50deg)}.pose-leg-b{width:62px;height:5px;top:95px;left:68px;transform:rotate(125deg)}.joint{background:var(--pink);border:2px solid var(--white);border-radius:50%;width:12px;height:12px;position:absolute}.joint-a{top:42px;left:55px}.joint-b{top:11px;left:106px}.joint-c{top:125px;left:97px}.joint-d{top:129px;left:25px}.ball-trajectory{width:46%;height:100px;position:absolute;top:44px;right:5%}.ball-trajectory:after{border-top:2px dashed var(--rose);content:"";width:100%;position:absolute;top:55px;left:0;transform:rotate(-13deg)}.ball-trajectory i{background:var(--rose);z-index:1;border-radius:50%;width:9px;height:9px;position:absolute}.ball-trajectory i:first-child{bottom:18px;left:0}.ball-trajectory i:nth-child(2){bottom:29px;left:24%}.ball-trajectory i:nth-child(3){bottom:38px;left:48%}.ball-trajectory i:nth-child(4){bottom:50px;left:72%}.ball-trajectory i:nth-child(5){bottom:62px;left:96%}.tennis-readout{flex-direction:column;justify-content:center;gap:.55rem;display:flex}.tennis-readout span{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-bottom:.45rem;font-size:.7rem;display:flex}.tennis-readout strong{color:var(--rose);font-weight:400}.notebook-return{padding-top:2rem;padding-bottom:5rem}.notebook-return a{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.9rem}footer{border-top:1px solid var(--line);justify-content:space-between;align-items:end;max-width:1220px;margin:0 auto;padding:2.5rem 5vw 3.5rem;display:flex}footer p{margin:0 0 .35rem;font-weight:600}footer span,.footer-links a{color:var(--muted);font-size:.9rem}.footer-links{gap:1.3rem;display:flex}.not-found-page{flex-direction:column;justify-content:center;align-items:flex-start;min-height:100vh;padding:10vh 8vw;display:flex}.not-found-page h1{margin:1rem 0;font-size:clamp(2.2rem,6vw,4.8rem)}.not-found-page>p:not(.eyebrow){color:var(--muted);max-width:610px;font-size:1.08rem;line-height:1.75}.not-found-page a{border-bottom:1px solid var(--ink);margin-top:1.4rem;padding-bottom:.2rem}@media (max-width:900px){.topbar{grid-template-columns:1fr auto auto;gap:.6rem;padding:.75rem 4vw}.nav-toggle{display:block}.tabs{border-top:1px solid var(--line);flex-direction:column;grid-column:1/-1;gap:0;padding:.45rem 0 0;display:none}.tabs.is-open{display:flex}.tabs a{border-bottom:1px solid var(--line);padding:.75rem 0;font-size:.9rem}.profile-primary{grid-template-columns:1fr}.profile-photo{max-width:390px}.profile-history{grid-template-columns:1fr}.history-label>p:last-child{max-width:580px}.timeline-heading{flex-direction:column;align-items:start;gap:1.5rem}.everything-teaser>div,.project-card-grid,.taste-heading,.taste-judgements{grid-template-columns:1fr}.taste-judgements article{border-bottom:0;border-right:1px solid var(--line);min-height:150px}.taste-judgements article:last-child{border-bottom:1px solid var(--line)}.taste-judgements p{margin-top:1.4rem}.taste-questions{grid-template-columns:repeat(2,1fr)}.taste-questions p:nth-child(2){border-right:0}.taste-questions p:nth-child(-n+2){border-bottom:1px solid var(--line)}.interesting-grid{grid-template-columns:1fr}.interesting-card{min-height:220px}.language-columns{grid-template-columns:1fr}.language-columns section+section{border-left:0;border-top:1px solid var(--line);padding-top:2.5rem;padding-left:0}}@media (max-width:620px){body{font-size:15px}.topbar{min-height:0}.brand{font-size:.98rem}.visitor-cloud{min-height:30px;padding:.42rem .65rem;font-size:.68rem}.visitor-cloud:before{width:14px;height:14px;top:-5px;left:12px}.visitor-cloud:after{width:18px;height:18px;top:-8px;left:23px}.profile-section{padding-top:3.6rem}.profile-intro li{font-size:.95rem}.profile-section,.section,.notebook-hero,.project-notes,.notebook-return,.research-taste,.bilingual-post{padding-left:6vw;padding-right:6vw}.profile-history li{grid-template-columns:50px 1fr;align-items:start;gap:.35rem .85rem}.profile-history li time,.profile-history li>div{grid-column:2}.institution-logo{grid-area:1/1/span 2;width:46px;height:46px}.timeline-filters{flex-wrap:wrap}.timeline-track{padding-left:1.55rem}.timeline-track:before{left:.35rem}.timeline-card{grid-template-columns:1fr}.timeline-card:before{width:.65rem;height:.65rem;top:1.05rem;left:-1.55rem}.timeline-card figure{border-bottom:1px solid var(--line);border-right:0}.timeline-card figure img{height:210px;min-height:0}.patent-list li{grid-template-columns:1fr;gap:.8rem}.patent-number{flex-direction:row;justify-content:space-between}.notes-timeline{padding-left:1.55rem}.notes-timeline:before{left:.35rem}.notes-timeline>li:before{left:-1.55rem}.note-card{padding:1rem}.project-card-grid{grid-template-columns:1fr}.interesting-nav{justify-content:flex-start}.taste-questions{grid-template-columns:1fr}.taste-questions p{border-bottom:1px solid var(--line);border-right:0}.taste-questions p:last-child{border-bottom:0}.project-visual{height:280px}.tennis-visual{grid-template-columns:1fr;height:auto;min-height:430px}.tennis-court{min-height:250px}.tennis-readout{grid-template-columns:repeat(2,1fr);display:grid}footer{flex-direction:column;align-items:start;gap:1.8rem;padding-left:6vw;padding-right:6vw}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{scroll-behavior:auto!important;transition:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
