@import "https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;1,400&family=Noto+Sans+KR:wght@400;500;700&display=swap";:root{--primary:#6750a4;--on-primary:#fff;--primary-container:#eaddff;--on-primary-container:#4f378a;--secondary:#625b71;--secondary-container:#e8def8;--on-secondary-container:#4a4459;--tertiary:#7d5260;--tertiary-container:#ffd8e4;--on-tertiary-container:#633b48;--surface:#fff;--on-surface:#1d1b20;--on-surface-variant:#49454f;--outline:#79747e;--outline-variant:#cac4d0;--surface-container-lowest:#fff;--surface-container-low:#f8f8fa;--surface-container:#f3f3f6;--surface-container-high:#ececf0;--surface-container-highest:#e5e5ea;--corner-full:9999px;--font-plain:"Roboto", "Noto Sans KR", system-ui, sans-serif}[data-theme=dark]{--primary:#d0bcff;--on-primary:#381e72;--primary-container:#4f378b;--on-primary-container:#eaddff;--secondary:#ccc2dc;--secondary-container:#4a4458;--on-secondary-container:#e8def8;--tertiary:#efb8c8;--tertiary-container:#633b48;--on-tertiary-container:#ffd8e4;--surface:#141218;--on-surface:#e6e0e9;--on-surface-variant:#cac4d0;--outline:#938f99;--outline-variant:#49454f;--surface-container-lowest:#0f0d13;--surface-container-low:#1d1b20;--surface-container:#211f26;--surface-container-high:#2b2930;--surface-container-highest:#36343b}*,:before,:after{box-sizing:border-box}html{color-scheme:light dark}body{background:var(--surface);color:var(--on-surface);font-family:var(--font-plain);word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.container{max-width:1120px;margin:0 auto;padding:0 40px}.site-header{border-bottom:1px solid var(--outline-variant);background:var(--surface);z-index:10;position:sticky;top:0}.site-header .container{align-items:center;gap:8px;height:64px;display:flex}.site-header .brand{color:var(--on-surface);flex:1;font-size:16px;font-weight:500;text-decoration:none}.site-nav{gap:4px;display:flex}.site-nav a{border-radius:var(--corner-full);height:40px;color:var(--on-surface-variant);align-items:center;padding:0 12px;font-size:14px;font-weight:500;display:inline-flex}.site-nav a:hover{background:var(--surface-container-high);text-decoration:none}.header-divider{background:var(--outline-variant);width:1px;height:24px;margin:0 8px}.icon-btn,.pill-btn{border:1px solid var(--outline-variant);border-radius:var(--corner-full);height:40px;color:var(--on-surface-variant);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.theme-toggle{border-radius:var(--corner-full);width:48px;height:48px;color:var(--on-surface-variant);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:flex}.theme-toggle:hover,.icon-btn:hover{background:var(--surface-container-high)}.theme-toggle .icon-sun,[data-theme=dark] .theme-toggle .icon-moon{display:none}[data-theme=dark] .theme-toggle .icon-sun{display:block}.hero .container{padding:80px 40px 72px}.hero-grid{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:"namerow photo""roleline photo""intro photo""chips photo""actions photo";align-items:start;gap:8px 64px;display:grid}.hero-grid .hero-photo{grid-area:photo;align-self:center}.hero-namerow{flex-wrap:wrap;grid-area:namerow;align-items:baseline;gap:16px;display:flex}.hero-name{letter-spacing:-.25px;margin:0;font-size:57px;font-weight:400;line-height:64px}.hero-name-alt{color:var(--on-surface-variant);font-size:22px;line-height:28px}.hero-roleline{grid-area:roleline;margin-top:8px;font-size:16px;line-height:24px}.hero-roleline .role{color:var(--primary);font-weight:500}.hero-roleline .affil{color:var(--on-surface-variant)}.hero-intro{text-wrap:pretty;grid-area:intro;max-width:680px;margin:28px 0 0;font-size:28px;line-height:40px}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.hero-chips{grid-area:chips;margin-top:28px}.chip{border:1px solid var(--outline-variant);height:32px;color:var(--on-surface-variant);border-radius:8px;align-items:center;padding:0 12px;font-size:14px;font-weight:500;display:inline-flex}.chip.chip-tertiary{background:var(--tertiary-container);color:var(--on-tertiary-container);border:0}.hero-actions{flex-wrap:wrap;grid-area:actions;gap:12px;margin-top:28px;display:flex}.btn-row-2{gap:12px;display:flex}.btn{border-radius:var(--corner-full);align-items:center;gap:8px;height:56px;padding:0 28px;font-size:16px;font-weight:500;display:inline-flex}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-secondary{background:var(--secondary-container);color:var(--on-secondary-container);padding:0 24px}.btn-outline{border:1px solid var(--outline-variant);color:var(--primary);padding:0 24px}.btn:hover{filter:brightness(1.04);text-decoration:none}.hero-photo{object-fit:cover;object-position:50% 15%;border-radius:28px;width:280px;height:340px}.section-divider{background:var(--outline-variant);max-width:1040px;height:1px;margin:0 auto}section.band{padding:64px 0}section.band.alt{background:var(--surface-container-low)}.band-grid{grid-template-columns:240px minmax(0,1fr);gap:48px;display:grid}.band-grid.cols-3{grid-template-columns:240px minmax(0,1fr) 300px}.section-title{margin:0;font-size:28px;line-height:36px}.research-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px;display:grid}.research-item{border-top:1px solid var(--outline-variant);flex-direction:column;gap:8px;padding-top:16px;display:flex}.research-item .no{color:var(--primary);font-size:14px;font-weight:500}.research-item h3{margin:0;font-size:20px;font-weight:500;line-height:28px}.research-item p{color:var(--on-surface-variant);text-wrap:pretty;margin:0;font-size:15px;line-height:24px}.sector-legend{flex-direction:column;gap:10px;display:flex}.sector-legend span{color:var(--on-surface-variant);align-items:center;gap:8px;font-size:13px;display:inline-flex}.dot{border-radius:999px;flex:none;width:8px;height:8px}.timeline-row{grid-template-columns:100px 14px minmax(0,1fr);gap:0 14px;display:grid}.timeline-track{flex-direction:column;align-items:center;display:flex}.timeline-dot{border-radius:999px;flex:none;width:10px;height:10px;margin-top:7px}.timeline-line{background:var(--outline-variant);flex:1;width:1px}.timeline-period{color:var(--on-surface-variant);font-size:14px;line-height:24px}.timeline-body{flex-direction:column;gap:2px;padding-bottom:20px;display:flex}.timeline-body .org{font-size:16px;font-weight:500;line-height:24px}.timeline-body .role{color:var(--on-surface-variant);font-size:14px;line-height:20px}.timeline-subs{background:var(--surface-container-high);border-radius:8px;flex-direction:column;gap:6px;margin-top:8px;padding:10px 12px;display:flex}.timeline-subs .sub-row{grid-template-columns:72px minmax(0,1fr);gap:8px;font-size:12px;line-height:18px;display:grid}.timeline-subs .sub-row .p{color:var(--on-surface-variant)}.career-sub{color:var(--on-surface-variant);text-wrap:pretty;margin-top:4px;font-size:13px;line-height:20px}.edu-col{flex-direction:column;gap:16px;display:flex}.edu-card{background:var(--surface);border-radius:12px;flex-direction:column;gap:4px;padding:16px;display:flex}.edu-card .date{color:var(--primary);font-size:12px;font-weight:500}.edu-card .deg{font-size:16px;font-weight:500;line-height:24px}.edu-card .school{color:var(--on-surface-variant);font-size:14px;line-height:20px}.stats-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.stat-tile{background:var(--surface-container);border-radius:12px;flex-direction:column;gap:2px;padding:12px;display:flex}.stat-tile .n{font-size:28px;line-height:36px}.stat-tile .label{color:var(--on-surface-variant);font-size:12px}.pub-list{flex-direction:column;display:flex}.pub-row{border-bottom:1px solid var(--outline-variant);grid-template-columns:56px minmax(0,1fr);gap:16px;padding:18px 0;display:grid}.pub-row .year{color:var(--primary);font-size:14px;font-weight:500}.pub-row .title{text-wrap:pretty;margin:0;font-size:17px;font-weight:500;line-height:26px}.pub-row .venue{color:var(--on-surface-variant);font-size:14px;font-style:italic}.more-toggle{border-radius:var(--corner-full);height:40px;color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;margin-top:16px;padding:0 16px 0 12px;font-size:14px;font-weight:500;display:flex}.more-toggle:hover{background:var(--surface-container)}.more-toggle .icon{transition:transform .15s}details[open]>.more-toggle .icon,details.is-open .more-toggle .icon{transform:rotate(180deg)}details>summary.more-toggle{list-style:none}details>summary.more-toggle::-webkit-details-marker{display:none}.pub-year-group{flex-direction:column;gap:14px;margin-bottom:24px;display:flex}.pub-year-group .yhead{color:var(--primary);border-bottom:1px solid var(--outline-variant);padding-bottom:6px;font-size:14px;font-weight:500}.pub-detail{flex-direction:column;gap:4px;padding:10px 0;display:flex}.pub-detail .badges{flex-wrap:wrap;gap:6px;display:flex}.badge{background:var(--surface-container-high);height:20px;color:var(--on-surface-variant);border-radius:4px;align-items:center;padding:0 6px;font-size:11px;font-weight:500;display:inline-flex}.badge.award{background:var(--tertiary-container);color:var(--on-tertiary-container);gap:3px}.pub-detail .ptitle{color:var(--on-surface);text-wrap:pretty;font-size:15px;font-weight:500;line-height:22px}.pub-detail .pauthors{color:var(--on-surface-variant);text-wrap:pretty;font-size:13px;line-height:18px}.pub-detail .pvenue{color:var(--on-surface-variant);font-size:13px;font-style:italic;line-height:18px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;display:grid}.proj-ongoing{background:var(--surface);border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:12px;padding:14px 16px;display:flex}.tag-ongoing{background:var(--primary-container);height:24px;color:var(--on-primary-container);border-radius:6px;flex:none;align-items:center;margin-top:1px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.proj-ongoing .body{text-wrap:pretty;font-size:15px;line-height:24px}.proj-ongoing .meta{color:var(--on-surface-variant);margin-top:2px;font-size:13px;line-height:18px}.proj-past-row{color:var(--on-surface-variant);padding:6px 4px;font-size:14px;line-height:20px}.proj-past-row .title{color:var(--on-surface)}.proj-past-row .meta{font-size:12px;line-height:18px}.proj-rnd-note{color:var(--on-surface-variant);padding:0 4px;font-size:14px;line-height:20px}.intl-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:4px;display:flex}.intl-head>:first-child{white-space:nowrap}.intl-meta{color:var(--on-surface-variant);font-size:14px}.intl-roles{color:var(--on-surface-variant);text-wrap:pretty;margin-top:12px;font-size:15px;line-height:24px}.intl-row{border-bottom:1px solid var(--outline-variant);grid-template-columns:72px minmax(0,1fr);gap:12px;margin-top:12px;padding-bottom:12px;display:grid}.intl-row .year{color:var(--primary);font-size:13px;font-weight:500}.intl-row .title{color:var(--on-surface);text-wrap:pretty;font-size:14px;font-weight:500}.intl-row .role{color:var(--on-surface-variant);font-size:13px}.activities-grid{grid-template-columns:240px repeat(2,minmax(0,1fr));gap:48px;display:grid}.list-plain{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.list-plain li{border-bottom:1px solid var(--outline-variant);padding-bottom:12px;font-size:15px;line-height:22px}.contact-band{background:var(--surface-container)}.contact-band .container{flex-direction:column;gap:40px;padding:56px 40px 32px;display:flex}.contact-row{grid-template-columns:240px minmax(0,1fr) auto;align-items:center;gap:48px;display:grid}.contact-list{flex-wrap:wrap;gap:40px;display:flex}.contact-item{align-items:center;gap:12px;display:flex}.contact-item .icon{color:var(--on-surface-variant);width:24px;height:24px}.contact-item .label{color:var(--on-surface-variant);font-size:12px}.contact-item .value{font-size:16px}.footer-row{border-top:1px solid var(--outline-variant);color:var(--on-surface-variant);justify-content:space-between;gap:8px;padding-top:20px;font-size:12px;display:flex}.skip-link{background:var(--primary);color:var(--on-primary);z-index:100;border-radius:8px;padding:8px 16px;position:absolute;top:0;left:-9999px}.skip-link:focus{top:16px;left:16px}@media (width<=840px){.container{padding:0 20px}.site-header .container{padding:0 8px 0 16px}.site-nav,.header-divider{display:none}.hero .container{padding:24px 20px 32px}.hero-grid{grid-template-columns:88px minmax(0,1fr);grid-template-areas:"photo namerow""roleline roleline""intro intro""chips chips""actions actions";gap:4px 16px}.hero-grid .hero-photo{object-position:50% 20%;border-radius:999px;align-self:start;width:88px;height:88px}.hero-namerow{flex-direction:column;align-items:flex-start;gap:2px}.hero-name{font-size:28px;line-height:36px}.hero-name-alt{font-size:14px;line-height:20px}.hero-roleline{margin-top:16px;font-size:16px}.hero-intro{font-size:20px;line-height:30px}.hero-actions{flex-direction:column}.hero-actions .btn{justify-content:center;width:100%}.btn-row-2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.btn-row-2 .btn{height:48px;padding:0 12px;font-size:14px}.band-grid,.band-grid.cols-3,.activities-grid{grid-template-columns:1fr;gap:16px}.activities-grid>ul{margin-top:4px}section.band{padding:32px 0}.section-title{font-size:22px;line-height:28px}.research-grid{grid-template-columns:1fr;gap:4px}.research-item{border:0;grid-template-columns:32px 1fr;gap:4px 8px;padding:4px 0;display:grid}.research-item .no{grid-column:1}.research-item h3{grid-column:2;font-size:16px;line-height:24px}.research-item p{grid-column:2;font-size:14px}.sector-legend{flex-flow:wrap;gap:12px}.timeline-row{grid-template-columns:84px 12px 1fr}.timeline-period{padding-top:1px;font-size:12px}.timeline-body .org{font-size:15px}.timeline-body .role{font-size:13px}.stats-grid{grid-template-columns:repeat(4,1fr)}.stat-tile .n{font-size:24px;line-height:32px}.pub-row{border:1px solid var(--outline-variant);border-radius:12px;flex-direction:column;gap:6px;margin-bottom:8px;padding:16px;display:flex}.pub-row .year{display:none}.pub-row .venue:before{content:attr(data-year) ", "}.projects-grid{grid-template-columns:1fr;gap:32px}.contact-row{grid-template-columns:1fr;align-items:stretch;gap:20px}.contact-row .btn{justify-content:center}.contact-list{gap:16px 32px}}
