:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#222;background:#f5f5f5;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.email-row{align-items:center;gap:16px;margin:0;display:flex}.topbar{color:#fff;z-index:1000;background:#a9a9a9;padding:0;position:fixed;top:0;left:0;right:0}.topbar-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:6px 30px;display:flex}.topbar-left{align-items:center;gap:36px;display:flex}.brand{color:#fff;letter-spacing:.5px;font-family:Arial,Helvetica,sans-serif;font-size:30px;font-weight:700}.nav{gap:5px;display:flex}.nav a,.topbar-right a{color:#fff;font-size:18px;font-weight:600}.topbar-right{gap:10px;display:flex}.icon-link{color:#fff;justify-content:center;align-items:center;font-size:34px;transition:color .2s;display:inline-flex}.icon-link:hover{color:orange}.icon-link:hover .header-icon{filter:brightness(0)invert()}.header-icon{object-fit:contain;width:34px;height:34px;display:block}.container{max-width:1400px;margin:0 auto;padding:110px 34px 70px}.hero{grid-template-columns:320px 1fr;align-items:start;gap:70px;display:grid}.hero-image img{width:100%;max-width:320px;height:auto;display:block}.image-contact{margin-top:18px}.image-contact p{color:#222;margin:6px 0;font-size:18px}.hero-text h1{color:#000;margin:0 0 20px;font-size:40px;font-weight:800}.hero-text p{margin:0 0 28px;font-size:15px;line-height:1.7}.banner-section{width:100%;margin:-80px 0 30px}.banner-wrap{width:100%;max-width:700px;margin:0 0 0 360px}.banner-video{border-radius:8px;width:100%;height:auto;display:block}.banner-controls{justify-content:center;align-items:center;gap:5px;margin-top:12px;display:flex}.banner-arrow{color:#888;cursor:pointer;background:0 0;border:none;padding:0 5px;font-size:24px;font-weight:700;transition:color .2s;position:relative;top:6px}.banner-arrow:hover{color:orange}.banner-arrow-space{width:10px}.banner-dots{justify-content:center;align-items:center;gap:10px;margin-top:12px;display:flex}.banner-dot{cursor:pointer;background:#bdbdbd;border:none;border-radius:999px;width:18px;height:3px;padding:0;transition:background-color .2s}.banner-dot:hover,.banner-dot.active{background:orange}.section{text-align:left;margin-top:80px}.section p,.section ul,.section li,.section a,.section:not(#publications),.section:not(#publications) p,.section:not(#publications) ul,.section:not(#publications) li,.section:not(#publications) a{text-align:left}#publications .publication-content,#publications .publication-authors,#publications .publication-venue,#publications .publication-description,#publications .publication-links{text-align:center}.section h2{color:#000;text-align:left;border-bottom:1px solid #cfcfcf;margin-bottom:16px;padding-bottom:12px;font-size:34px}#cv a{color:#000;font-weight:700}.brand,.nav a,.icon-link{color:#fff;border-radius:6px;padding:6px 10px;transition:background-color .2s,color .2s}.brand:hover,.nav a:hover,.icon-link:hover{color:#fff;opacity:1;background-color:orange}#publications{margin-top:20px}.publication-item{grid-template-columns:210px 1fr;align-items:start;gap:1px;padding:15px 0;display:grid}.publication-image img{width:100%;max-width:210px;height:auto;display:block}.publication-content h3{color:#222;margin:0 0 8px;font-size:18px;line-height:1.35}.publication-content .publication-authors{margin:0 0 4px;font-size:14px;line-height:1.5}.publication-content .publication-venue{margin:0 0 12px;font-size:14px;line-height:1.5}.publication-content .publication-description{margin:0;font-size:14px;line-height:1.6}.publication-links{margin:4px 0 0;font-size:12px}.doi-button{color:#fff;background:#bfbfbf;border-radius:8px;padding:1px 10px;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .2s;display:inline-block}.doi-button:hover{background:orange}.mentored-students{margin:10px 0 0;padding-left:20px}.mentored-students li{text-align:left;margin-bottom:2px;line-height:1.3}.student-date{margin-top:1px;font-size:14px;display:inline-block}.student-description{margin-top:1px;font-size:13px;display:inline-block}.bottombar{color:#fff;text-align:center;background:#a9a9a9;width:100vw;margin-top:10px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:20px}.bottombar p{margin:0;font-size:16px}#book-chapters{margin-top:20px}.book-chapter-list{margin:20px 0 0;padding-left:28px}.book-chapter-item{margin-bottom:16px;padding-left:6px}.book-chapter-item h3{color:#222;text-align:left;margin:0 0 8px;font-size:18px;line-height:1.5}.book-chapter-item .publication-authors,.book-chapter-item .publication-venue{text-align:left;margin:0 0 6px;font-size:14px;line-height:1.6}.news-title{margin-top:-70px}.news-item{grid-template-columns:220px 1fr;align-items:start;gap:40px;margin-bottom:50px;display:grid}.news-date{color:#000;font-size:26px;font-weight:700}.news-content h3{margin:0 0 10px;font-size:20px}.news-content p{margin:0 0 15px;font-size:16px;line-height:1.6}.news-image{border-radius:6px;width:auto;max-width:400px;height:auto}.news-images{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:10px;display:grid}.news-images img{border-radius:6px;width:100%}.inline-link{color:#000;text-underline-offset:4px;text-decoration-line:underline;text-decoration-style:dotted;transition:color .2s}.inline-link:hover{color:orange}.award-text{font-size:16px}@media (width<=1000px){.topbar{flex-direction:column;align-items:flex-start;gap:10px;width:auto;padding:10px 14px;left:10px;right:10px}.topbar-left{flex-direction:column;align-items:flex-start;gap:10px;width:100%}.nav{flex-wrap:wrap;gap:8px;display:flex}.nav a{padding:4px 6px}.topbar-right{align-items:center;gap:8px;display:flex}.container{padding:190px 20px 40px}.hero{grid-template-columns:1fr;gap:32px}.hero-image img{max-width:100%}.hero-text h1{font-size:44px}.hero-text p{font-size:18px}.publication-item{grid-template-columns:1fr;gap:20px}.publication-image img{max-width:100%}.publication-content h3{font-size:20px}.publication-content .publication-authors,.publication-content .publication-venue,.publication-content .publication-description{font-size:16px}.book-chapter-list{padding-left:22px}.book-chapter-item h3{font-size:20px}.book-chapter-item .publication-authors,.book-chapter-item .publication-venue{font-size:16px}}
