.HeroScene_container__OQNp6{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0;pointer-events:none}.HeroScene_canvas__DCWC4{width:100%;height:100%}.Badge_badge__V4FiA{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.Badge_default__T0nEh{background:var(--color-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border)}.Badge_cvpr__rTwxV{background:rgba(239,68,68,.15);color:var(--color-cvpr);border:1px solid rgba(239,68,68,.3)}.Badge_iccv__i7Vpw{background:rgba(139,92,246,.15);color:var(--color-iccv);border:1px solid rgba(139,92,246,.3)}.Badge_eccv__6kcpo{background:rgba(16,185,129,.15);color:var(--color-eccv);border:1px solid rgba(16,185,129,.3)}.Badge_wacv__40D_0{background:rgba(245,158,11,.15);color:var(--color-wacv);border:1px solid rgba(245,158,11,.3)}.Badge_accv__GpJBA{background:rgba(236,72,153,.15);color:var(--color-accv);border:1px solid rgba(236,72,153,.3)}.Badge_miccai__n77Ow{background:rgba(6,182,212,.15);color:var(--color-miccai);border:1px solid rgba(6,182,212,.3)}.Badge_arxiv__LfqHh{background:rgba(107,114,128,.15);color:var(--color-arxiv);border:1px solid rgba(107,114,128,.3)}.Badge_journal__C2RC6{background:rgba(59,130,246,.15);color:var(--color-journal);border:1px solid rgba(59,130,246,.3)}.ProjectCard_card__A_dZh{display:flex;flex-direction:column;padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.ProjectCard_card__A_dZh:hover{border-color:var(--color-primary);box-shadow:var(--shadow-glow);transform:translateY(-2px);color:var(--color-text)}.ProjectCard_header__x83so{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.ProjectCard_stars__X3Gui{font-size:var(--text-xs);color:var(--color-accent);font-weight:500}.ProjectCard_stars__X3Gui:before{content:"\2605 "}.ProjectCard_title__if7wZ{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-sm)}.ProjectCard_description__KX_We{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;flex:1 1;margin-bottom:var(--space-md)}.ProjectCard_footer__r80TL{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.ProjectCard_tags__nF88v{display:flex;gap:var(--space-xs);flex-wrap:wrap}.ProjectCard_tag__m0mhB{font-size:11px;padding:2px 8px;background:var(--color-elevated);border-radius:var(--radius-full);color:var(--color-text-muted)}.ProjectCard_github__dW7z_{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.GitHubHeatmap_container__pQCFX{margin-top:var(--space-lg);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto}.GitHubHeatmap_header__xsx9E{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);gap:var(--space-md);flex-wrap:wrap}.GitHubHeatmap_link__35ay_{font-size:var(--text-sm);font-weight:600;color:var(--color-primary);text-decoration:none}.GitHubHeatmap_link__35ay_:hover{text-decoration:underline}.GitHubHeatmap_count__I3axb{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono)}.GitHubHeatmap_graphWrapper__5HJ23{display:flex;gap:4px}.GitHubHeatmap_dayLabels__sbJmL{display:flex;flex-direction:column;gap:3px;padding-top:18px}.GitHubHeatmap_dayLabel__fLMO3{height:11px;font-size:9px;line-height:11px;color:var(--color-text-muted);font-family:var(--font-mono);text-align:right;min-width:24px}.GitHubHeatmap_graphColumn__Y16Kg{display:flex;flex-direction:column;gap:2px}.GitHubHeatmap_monthLabels__1Y_LS{display:grid;grid-gap:3px;gap:3px;height:14px}.GitHubHeatmap_monthLabel__Tueay{font-size:9px;line-height:14px;color:var(--color-text-muted);font-family:var(--font-mono)}.GitHubHeatmap_grid__3Dse7{display:grid;grid-template-rows:repeat(7,11px);grid-auto-flow:column;grid-gap:3px;gap:3px;width:-moz-fit-content;width:fit-content}.GitHubHeatmap_cell__mLrPJ{width:11px;height:11px;border-radius:2px}.GitHubHeatmap_empty__jPUJt{background:transparent}.GitHubHeatmap_level0__P9G68{background:var(--color-border)}.GitHubHeatmap_level1__mS4aD{background:color-mix(in srgb,var(--color-primary) 25%,var(--color-border))}.GitHubHeatmap_level2__XfqHe{background:color-mix(in srgb,var(--color-primary) 50%,var(--color-border))}.GitHubHeatmap_level3__nRiAX{background:color-mix(in srgb,var(--color-primary) 75%,var(--color-border))}.GitHubHeatmap_level4__w9paY{background:var(--color-primary)}.GitHubHeatmap_legend__F7_FX{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin-top:var(--space-sm)}.GitHubHeatmap_legendLabel__qy_tf{font-size:9px;color:var(--color-text-muted);font-family:var(--font-mono);padding:0 2px}.page_page__ZU32B{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-xl)}.page_hero__SKW6o{position:relative;min-height:calc(100vh - var(--nav-height));display:flex;align-items:center;padding-top:var(--nav-height)}.page_heroContent__2lPR8{position:relative;z-index:1;max-width:720px}.page_role__kBGJa{font-size:var(--text-sm);font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-sm)}.page_name__eOmhd{font-size:var(--text-5xl);font-weight:700;margin-bottom:var(--space-lg);color:var(--color-text)}.page_tagline___8E6T{font-size:var(--text-lg);font-weight:600;color:var(--color-text);margin-bottom:var(--space-md);line-height:1.7}.page_interests__rzRBU{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-xl);font-family:var(--font-mono);letter-spacing:.02em}.page_stats__L5b4y{display:flex;gap:var(--space-2xl)}.page_stat__aEnCU{display:flex;flex-direction:column}.page_statValue__FXJDK{font-size:var(--text-3xl);font-weight:700;font-family:var(--font-mono);color:var(--color-text)}.page_statLabel__YuhHa{font-size:var(--text-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.page_intro__NrUPI{max-width:720px}.page_introText__kmJDf{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.8;margin-bottom:var(--space-md)}.page_introText__kmJDf:last-child{margin-bottom:0}.page_section__61PEw{padding:var(--space-3xl) 0}.page_sectionHeader__a4Fw5{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xl)}.page_sectionTitle__hzsAh{font-size:var(--text-2xl);font-weight:600}.page_seeAll__3h4fm{font-size:var(--text-sm);color:var(--color-primary);font-weight:500}.page_pubList___Q1K7{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.page_projectGrid__JR28b{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:var(--space-lg);gap:var(--space-lg)}@media (max-width:768px){.page_name__eOmhd{font-size:var(--text-3xl)}.page_tagline___8E6T{font-size:var(--text-lg)}.page_bio__fqC7V{font-size:var(--text-base)}.page_projectGrid__JR28b{grid-template-columns:1fr}.page_sectionHeader__a4Fw5{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}}.ProjectGrid_grid__ohdRH{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:var(--space-lg);gap:var(--space-lg)}@media (max-width:768px){.ProjectGrid_grid__ohdRH{grid-template-columns:1fr}}.page_container__iTHnK{max-width:var(--max-width);margin:0 auto;padding:calc(var(--nav-height) + var(--space-3xl)) var(--space-xl) var(--space-3xl)}.page_title__b5UrF{font-size:var(--text-4xl);font-weight:700;margin-bottom:var(--space-md)}.page_subtitle__o_lzw{font-size:var(--text-lg);color:var(--color-text-secondary)}.page_section__iMWWc,.page_subtitle__o_lzw{margin-bottom:var(--space-3xl)}.page_sectionTitle__awAW7{font-size:var(--text-2xl);font-weight:600;margin-bottom:var(--space-lg);color:var(--color-text-secondary)}.Button_button__hMNEn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);font-family:var(--font-body);font-weight:500;border:none;border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.Button_primary__oSpWt{background:var(--color-primary);color:#0A0A0F}.Button_primary__oSpWt:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-glow)}.Button_secondary__lRe7Q{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.Button_secondary__lRe7Q:hover{border-color:var(--color-primary);color:var(--color-primary)}.Button_ghost__mZ9vJ{background:transparent;color:var(--color-text-secondary)}.Button_ghost__mZ9vJ:hover{color:var(--color-text);background:rgba(255,255,255,.05)}.Button_sm__h9eWB{font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm)}.Button_md__exKk_{font-size:var(--text-sm);padding:var(--space-sm) var(--space-md)}.Button_lg__PdjsY{font-size:var(--text-base);padding:var(--space-md) var(--space-xl)}.page_container__68TSu{max-width:800px;margin:0 auto;padding:calc(var(--nav-height) + var(--space-3xl)) var(--space-xl) var(--space-3xl)}.page_header__TA3ej{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.page_date__mxvhT{font-size:var(--text-sm);color:var(--color-text-muted);font-family:var(--font-mono)}.page_title__HfHrf{font-size:var(--text-4xl);font-weight:700;margin-bottom:var(--space-lg)}.page_description__fVTRQ{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:1.8;margin-bottom:var(--space-lg)}.page_tags__fJy2q{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-xl)}.page_tag___ZPSw{font-size:var(--text-xs);padding:4px 12px;background:var(--color-elevated);border-radius:var(--radius-full);color:var(--color-text-muted)}.page_actions__La_Ko{display:flex;gap:var(--space-md);flex-wrap:wrap}.page_container__eSsIu{max-width:var(--max-width);margin:0 auto;padding:calc(var(--nav-height) + var(--space-3xl)) var(--space-xl) var(--space-3xl)}.page_titleRow___UQ7A{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.page_title__7_S0z{font-size:var(--text-4xl);font-weight:700}.page_intro__0UENd{margin-bottom:var(--space-3xl);max-width:720px}.page_introText__DyqJl{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:1.8;margin-bottom:var(--space-md)}.page_introText__DyqJl:last-child{margin-bottom:0}.page_section__yPW7u{margin-bottom:var(--space-3xl)}.page_sectionTitle__eC3_O{font-size:var(--text-2xl);font-weight:600;margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-border)}.page_timeline__eqfiT{display:flex;flex-direction:column;gap:var(--space-lg)}.page_entry__lQ03_{padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.page_entryHeader__eTJou{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-xs);flex-wrap:wrap}.page_entryTitle__l_zvQ{font-size:var(--text-lg);font-weight:600}.page_period__LI_w8{font-size:var(--text-sm);color:var(--color-text-muted);font-family:var(--font-mono);white-space:nowrap}.page_entryCompany__rmwxQ{font-size:var(--text-sm);color:var(--color-primary);margin-bottom:var(--space-sm)}.page_entryDescription__ff9Tu{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6}.page_skillsGrid__FvKh2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:var(--space-lg);gap:var(--space-lg)}.page_skillGroup__AJNMy{padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.page_skillGroupTitle__Pfp1T{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-md);color:var(--color-text-secondary)}.page_skillTags__nip1W{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.page_skillTag__Drdks{font-size:var(--text-sm);padding:4px 12px;background:var(--color-elevated);border-radius:var(--radius-full);color:var(--color-text)}.page_skillLevel__Rmgfm{color:var(--color-text-muted);font-size:var(--text-xs)}