@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,:root[data-accent=blue]{--accent: #2456d6;--accent-soft: rgba(36, 86, 214, .1);--accent-2: #7c3aed;--accent-3: #0d9488}:root[data-theme=dark],:root[data-accent=blue][data-theme=dark]{--accent: #7ea6ff;--accent-soft: rgba(126, 166, 255, .12);--accent-2: #b195ff;--accent-3: #4fd1c5}:root[data-accent=orange]{--accent: #c8500c;--accent-soft: rgba(234, 88, 12, .1);--accent-2: #d92d20;--accent-3: #d98a06}:root[data-accent=orange][data-theme=dark]{--accent: #ff9a52;--accent-soft: rgba(255, 154, 82, .12);--accent-2: #ff6b6b;--accent-3: #ffc857}:root[data-accent=red]{--accent: #c81e1e;--accent-soft: rgba(220, 38, 38, .1);--accent-2: #d97706;--accent-3: #be123c}:root[data-accent=red][data-theme=dark]{--accent: #ff7b7b;--accent-soft: rgba(255, 123, 123, .12);--accent-2: #ffb454;--accent-3: #ff8fab}:root[data-accent=gold]{--accent: #a16207;--accent-soft: rgba(202, 138, 4, .1);--accent-2: #ea580c;--accent-3: #65a30d}:root[data-accent=gold][data-theme=dark]{--accent: #fcd34d;--accent-soft: rgba(252, 211, 77, .12);--accent-2: #ff9a52;--accent-3: #bef264}:root[data-accent=green]{--accent: #15803d;--accent-soft: rgba(22, 163, 74, .1);--accent-2: #0d9488;--accent-3: #65a30d}:root[data-accent=green][data-theme=dark]{--accent: #5fd68a;--accent-soft: rgba(95, 214, 138, .12);--accent-2: #4fd1c5;--accent-3: #bef264}:root[data-accent=teal]{--accent: #0f766e;--accent-soft: rgba(13, 148, 136, .1);--accent-2: #2563eb;--accent-3: #16a34a}:root[data-accent=teal][data-theme=dark]{--accent: #4fd1c5;--accent-soft: rgba(79, 209, 197, .12);--accent-2: #7ea6ff;--accent-3: #86efac}:root[data-accent=purple]{--accent: #6d28d9;--accent-soft: rgba(124, 58, 237, .1);--accent-2: #db2777;--accent-3: #2563eb}:root[data-accent=purple][data-theme=dark]{--accent: #b195ff;--accent-soft: rgba(177, 149, 255, .12);--accent-2: #f9a8d4;--accent-3: #7ea6ff}:root[data-accent=pink]{--accent: #be185d;--accent-soft: rgba(219, 39, 119, .1);--accent-2: #7c3aed;--accent-3: #ea580c}:root[data-accent=pink][data-theme=dark]{--accent: #f9a8d4;--accent-soft: rgba(249, 168, 212, .12);--accent-2: #c4b0ff;--accent-3: #ffb454}:root{--bg: #ffffff;--bg-soft: #f5f6f8;--text: rgba(10, 12, 16, .92);--text-soft: rgba(10, 12, 16, .62);--border: rgba(10, 12, 16, .12);--max-width: 72rem}:root[data-theme=dark]{--bg: #101216;--bg-soft: #181b21;--text: rgba(245, 246, 248, .92);--text-soft: rgba(245, 246, 248, .62);--border: rgba(245, 246, 248, .14)}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:4rem}.pub-card,.section,.timeline-item,.honors-list li{scroll-margin-top:4rem}body{font-family:Inter Variable,system-ui,sans-serif;background-color:var(--bg);background-image:radial-gradient(55rem 26rem at 15% 0%,var(--accent-soft),transparent 70%);background-repeat:no-repeat;color:var(--text);line-height:1.6;font-size:1.0625rem}main,.site-header>div,.site-footer>div{max-width:var(--max-width);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,2.5rem)}h1{font-size:clamp(2.5rem,7vw,4.75rem);line-height:1.05;letter-spacing:-.025em}h2{font-size:1.75rem;letter-spacing:-.01em;margin-bottom:1.5rem}h3{font-size:1.05rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%}.site-header{position:sticky;top:0;background:var(--bg);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);z-index:10}.site-header:before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3))}.site-header>div{display:flex;align-items:center;justify-content:space-between;padding-block:.6rem}.site-header nav{display:flex;gap:1rem;flex-wrap:wrap}.site-header nav a{color:var(--text-soft);font-size:.92rem}.site-header nav a:hover{color:var(--text);text-decoration:none}#theme-toggle{background:none;border:1px solid var(--border);border-radius:999px;color:var(--text);width:2rem;height:2rem;cursor:pointer}.section{padding-block:3.5rem 1rem}.hero{padding-block:clamp(4rem,12vh,7rem) 2.5rem}.hero h1{background:linear-gradient(100deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent;width:fit-content}.hero .tagline{font-size:clamp(1.15rem,2vw,1.4rem);color:var(--text-soft);margin-top:1rem;max-width:46rem}.hero .links{display:flex;gap:1.25rem;margin-top:1.75rem;flex-wrap:wrap}.news-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(26rem,100%),1fr));gap:0 2.5rem}.news-list>li{display:grid;grid-row:span 2;grid-template-rows:subgrid;align-content:start;padding-bottom:1.25rem}.news-list time{color:var(--text-soft);font-variant-numeric:tabular-nums;font-size:.9rem;margin-right:.6rem}.timeline{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(26rem,100%),1fr));gap:0 2.5rem}.timeline-item{display:grid;grid-template-columns:3rem 1fr;column-gap:1rem;grid-row:span 5;grid-template-rows:subgrid;align-content:start;padding-bottom:1.75rem}.timeline-item>*{grid-column:2}.timeline-item>img,.timeline-item>.logo-gap{grid-column:1;grid-row:1 / -1;align-self:start}.timeline-item img{width:3rem;height:3rem;object-fit:contain;border-radius:.5rem;background:#fff;padding:.25rem;border:1px solid var(--border)}.timeline-item .meta{color:var(--text-soft);font-size:.9rem}.timeline-item ul{margin:.4rem 0 0 1.1rem;padding:0;color:var(--text-soft);font-size:.95rem}.honors-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(26rem,100%),1fr));gap:0 2.5rem}.honors-list>li{display:grid;grid-row:span 2;grid-template-rows:subgrid;align-content:start;padding-bottom:1.25rem}.honors-list .date{color:var(--text-soft);font-variant-numeric:tabular-nums;font-size:.9rem;margin-right:.6rem}.honors-list .org{color:var(--text-soft)}.honors-list p{color:var(--text-soft);font-size:.95rem;margin-top:.25rem}.certs{margin-top:2rem}.certs h3{font-size:1rem;margin-bottom:.5rem}.certs ul{list-style:none;padding:0;display:grid;gap:.3rem}.certs .date{color:var(--text-soft);font-variant-numeric:tabular-nums;font-size:.9rem;margin-left:.4rem}.pub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(30rem,100%),1fr));gap:0 1rem}.pub-card{border:1px solid var(--border);border-radius:.75rem;padding:1.15rem 1.3rem;background:var(--bg-soft);display:grid;grid-row:span 4;grid-template-rows:subgrid;align-content:start;margin-bottom:1rem}.pub-card .authors{color:var(--text-soft);font-size:.95rem}.pub-card .links{display:flex;gap:.9rem;margin-top:.4rem;font-size:.92rem}.tag{display:inline-block;background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.1rem .7rem;font-size:.8rem;font-weight:600;margin-left:.5rem;vertical-align:middle;white-space:nowrap}.tag-1{background:#7c3aed1a;color:#7c3aed}.tag-2{background:#0d94881a;color:#0f766e}.tag-3{background:#d977061f;color:#b45309}.tag-4{background:#be123c17;color:#be123c}:root[data-theme=dark] .tag-1{background:#b195ff24;color:#c4b0ff}:root[data-theme=dark] .tag-2{background:#4fd1c521;color:#6fe3d6}:root[data-theme=dark] .tag-3{background:#fcd34d21;color:#fcd34d}:root[data-theme=dark] .tag-4{background:#fda4af21;color:#fda4af}h2{position:relative;padding-left:.9rem}h2:before{content:"";position:absolute;left:0;top:.3em;bottom:.3em;width:4px;border-radius:2px;background:linear-gradient(180deg,var(--accent),var(--accent-2))}.site-footer{border-top:1px solid var(--border);margin-top:4rem}.site-footer>div{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;padding-block:2.25rem 2.5rem;color:var(--text-soft);font-size:.92rem;flex-wrap:wrap}.site-footer>div>div:first-child{display:grid;gap:.9rem}.connect h2{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);margin-bottom:.6rem;padding-left:0}.connect h2:before{content:none}.connect ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,auto);gap:.45rem 2rem}.connect a{color:var(--text)}.connect a:hover{color:var(--accent);text-decoration:none}.accent-picker{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.accent-picker h2{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);margin:0 .4rem 0 0;padding-left:0}.accent-picker h2:before{content:none}.accent-picker button{width:1.25rem;height:1.25rem;border-radius:999px;border:2px solid transparent;background:var(--swatch);cursor:pointer;padding:0;box-shadow:0 0 0 1px var(--border);transition:transform .15s}.accent-picker button:hover{transform:scale(1.15)}.accent-picker button[aria-pressed=true]{border-color:var(--bg);box-shadow:0 0 0 2px var(--text)}
