:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0f0f0f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:#7ee8fa;text-decoration:inherit}a:hover{color:#5cc8dc}body{margin:0;min-width:320px;min-height:100vh;background-color:#0f0f0f}h1,h2,h3,h4{margin-top:0}main{min-height:calc(100vh - 60px)}.navbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:60px;background:#0f0f0f;border-bottom:1px solid #222;box-shadow:0 2px 12px #0006}.navbar-brand a{font-size:1.4rem;font-weight:700;color:#7ee8fa;text-decoration:none;letter-spacing:2px}.navbar-links{display:flex;gap:.25rem;list-style:none;margin:0;padding:0}.navbar-links li a{padding:.4rem .9rem;border-radius:6px;color:#ccc;text-decoration:none;font-size:.95rem;transition:background .2s,color .2s}.navbar-links li a:hover{background:#1e1e1e;color:#fff}.navbar-links li a.active{background:#1a3a4a;color:#7ee8fa}@media(max-width:600px){.navbar{flex-direction:column;height:auto;padding:.75rem 1rem;gap:.5rem}.navbar-links{flex-wrap:wrap;justify-content:center}}.badge-highlight{display:inline-block;padding:.2rem .75rem;background:linear-gradient(90deg,#1a3a4a,#0d2230);border:1px solid rgba(126,232,250,.33);border-radius:20px;color:#7ee8fa;font-size:.78rem;font-weight:600;letter-spacing:.02em;margin-bottom:.5rem}.page{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}.page-title{font-size:1.75rem;font-weight:800;color:#f0f0f0;margin:0 0 .4rem}.page-subtitle{color:#888;font-size:.97rem;margin:0 0 2rem}.card-list{display:flex;flex-direction:column;gap:1.5rem}.card{background:#141414;border:1px solid #222;border-radius:12px;overflow:hidden;transition:border-color .2s,transform .2s}.card:hover{border-color:#7ee8fa44;transform:translateY(-2px)}.card-body{padding:1.25rem 1.5rem}.card-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.4rem}.card-title{font-size:1.1rem;font-weight:700;color:#f0f0f0;margin:0}.card-year{font-size:.85rem;color:#888;white-space:nowrap;flex-shrink:0}.card-status{font-size:.85rem;white-space:nowrap;flex-shrink:0}.card-venue{font-size:.9rem;color:#7ee8fa;margin:0 0 .2rem}.card-authors{font-size:.85rem;color:#888;margin:0 0 .75rem;font-style:italic}.card-desc{font-size:.93rem;color:#bbb;line-height:1.6;margin:0 0 .75rem}.card-highlights{margin:0 0 .75rem 1.1rem;padding:0}.card-highlights li{font-size:.9rem;color:#aaa;margin-bottom:.3rem;line-height:1.5}.card-abstract{margin-bottom:.75rem}.card-abstract summary{font-size:.88rem;color:#7ee8fa;cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:.4rem}.card-abstract p{font-size:.88rem;color:#aaa;line-height:1.6;margin:.4rem 0 0;padding-left:.5rem;border-left:2px solid #2a2a2a}.tag-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.tag{font-size:.78rem;padding:.2rem .55rem;background:#1e1e1e;border:1px solid #2a2a2a;border-radius:4px;color:#aaa}.card-links{display:flex;gap:.6rem;flex-wrap:wrap}.link-btn{display:inline-block;padding:.35rem .85rem;background:#1a3a4a;color:#7ee8fa;border:1px solid #2a5a6a;border-radius:6px;text-decoration:none;font-size:.85rem;transition:background .2s,border-color .2s}.link-btn:hover{background:#1e4a5a;border-color:#7ee8fa}.home-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem;position:relative}.home-hero{display:flex;gap:2.5rem;align-items:flex-start;margin-bottom:3rem}.home-avatar-placeholder{flex-shrink:0;width:180px;height:10em;border-radius:16px;background:linear-gradient(135deg,#7ee8fa,#1a3a4a);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:#fff;overflow:hidden;box-shadow:0 4px 24px #0006}.home-avatar-placeholder img{width:100%;height:100%;object-fit:cover}.home-intro{flex:1}.home-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.home-intro h1{font-size:2rem;font-weight:800;margin:0 0 .25rem;color:#f0f0f0}.home-intro h2{font-size:1.1rem;font-weight:400;color:#7ee8fa;margin:0 0 .75rem}.home-tagline{font-size:1rem;font-style:italic;color:#aaa;margin:0 0 .75rem}.home-bio{font-size:.97rem;color:#bbb;line-height:1.7;margin:0 0 1rem}.home-meta{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem;font-size:.9rem;color:#999}.home-meta a{color:#7ee8fa;text-decoration:none}.home-social{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.25rem}.social-link{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:6px;color:#ccc;text-decoration:none;font-size:.88rem;transition:background .2s,color .2s,border-color .2s}.social-link:hover{background:#1a3a4a;color:#7ee8fa;border-color:#7ee8fa}.btn-resume{display:inline-block;padding:.55rem 1.3rem;background:#7ee8fa;color:#0a0a0a;border-radius:8px;text-decoration:none;font-weight:700;font-size:.95rem;opacity:.5}.home-highlights{margin-top:1rem}.home-highlights h3{font-size:1.3rem;color:#e0e0e0;margin-bottom:1.25rem;border-bottom:1px solid #222;padding-bottom:.5rem}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.highlight-card{background:#141414;border:1px solid #222;border-radius:10px;padding:1.5rem;text-align:center;transition:border-color .2s,transform .2s}.highlight-card:hover{border-color:#7ee8fa44;transform:translateY(-3px)}.highlight-icon{font-size:2rem;margin-bottom:.5rem}.highlight-card h4{font-size:1rem;color:#f0f0f0;margin:0 0 .5rem}.highlight-card p{font-size:.9rem;color:#888;margin:0}@media(max-width:600px){.home-hero{flex-direction:column;align-items:center;text-align:center}.home-avatar-placeholder{width:140px;height:170px}.home-badges,.home-social,.home-meta{justify-content:center}}.home-section-preview{margin-top:3rem}.section-preview-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #222;padding-bottom:.5rem;margin-bottom:1.25rem}.section-preview-header h3{font-size:1.3rem;color:#e0e0e0;margin:0}.see-all-link{font-size:.9rem;color:#7ee8fa;text-decoration:none;transition:opacity .2s}.see-all-link:hover{opacity:.75}.preview-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem}.preview-card{background:#141414;border:1px solid #222;border-radius:10px;overflow:hidden;transition:border-color .2s,transform .2s}.preview-card:hover{border-color:#7ee8fa44;transform:translateY(-3px)}.preview-card-body{padding:1.25rem}.preview-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.4rem}.preview-card-top h4{font-size:.97rem;color:#f0f0f0;margin:0;line-height:1.4}.resume-preview-block{background:#141414;border:1px solid #222;border-radius:10px;padding:1.5rem}.resume-dl-mini{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.resume-dl-mini span:first-child{font-size:2rem}.resume-dl-mini strong{color:#f0f0f0;display:block;margin-bottom:.2rem}.resume-dl-mini p{font-size:.88rem;color:#888;margin:0}.exp-company{font-size:.9rem;color:#999;margin:0 0 .4rem}.exp-location{color:#777}@media(max-width:480px){.resume-dl-mini{flex-direction:column;align-items:flex-start}.resume-dl-mini .btn-resume{margin-left:0!important}}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.media-carousel-wrapper{width:100%;margin-bottom:1rem;background:#111;border-radius:8px 8px 0 0;overflow:hidden;display:flex;flex-direction:column}.main-swiper{width:100%;height:280px;background:#000}.media-content{width:100%;height:100%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#000}.media-image-blur{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;filter:blur(20px) brightness(.6);transform:scale(1.2);z-index:0}.media-image,.media-youtube,.media-video{width:100%;height:100%;object-fit:contain;border:none;position:relative;z-index:1}@keyframes livePhoto{0%{transform:scale(1)}to{transform:scale(1.1)}}.swiper-slide-active .live-photo-effect{animation:livePhoto 6s ease-in-out infinite alternate;will-change:transform}.swiper-button-next,.swiper-button-prev{background:#00000080;padding:24px 16px;border-radius:8px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transform:scale(.6);transition:background .3s ease}.swiper-button-next:hover,.swiper-button-prev:hover{background:#000c}.thumbs-swiper{width:100%;padding:12px!important;background:#1a1a1a;box-sizing:border-box}.thumbs-swiper .swiper-slide{width:64px!important;height:64px!important;opacity:.5;transition:all .3s ease;cursor:pointer;border-radius:8px;overflow:hidden;border:2px solid transparent}.thumbs-swiper .swiper-slide-thumb-active{opacity:1;border-color:#4caf50;transform:scale(1.05)}.thumbnail-item{width:100%;height:100%;background:#333}.thumbnail-item img{width:100%;height:100%;object-fit:cover}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase}.timeline{position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:.6rem;top:0;bottom:0;width:2px;background:#222}.timeline-item{position:relative;margin-bottom:1.5rem}.timeline-dot{position:absolute;left:-1.7rem;top:1.2rem;width:12px;height:12px;border-radius:50%;background:#7ee8fa;border:2px solid #0f0f0f}.exp-company{font-size:.95rem;color:#7ee8fa;margin:.1rem 0 .5rem}.exp-location{color:#888;font-size:.9rem}.exp-dates{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.exp-type{font-size:.78rem;padding:.2rem .5rem;background:#1a3a4a;color:#7ee8fa;border-radius:4px}.resume-section{display:flex;flex-direction:column;gap:2rem}.resume-download-card{display:flex;align-items:center;gap:1.5rem;padding:1.75rem 2rem;background:linear-gradient(135deg,#1a3a4a,#0f2030);border:1px solid #2a4a5a;border-radius:12px}.resume-icon{font-size:3rem;flex-shrink:0}.resume-download-card h3{font-size:1.2rem;color:#f0f0f0;margin:0 0 .3rem}.resume-download-card p{font-size:.9rem;color:#999;margin:0 0 .75rem}.btn-resume-dl{display:inline-block;padding:.5rem 1.2rem;background:#7ee8fa;color:#0a0a0a;border-radius:8px;text-decoration:none;font-weight:700;font-size:.9rem;transition:background .2s}.btn-resume-dl:hover{background:#5cc8dc}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.skill-group{background:#141414;border:1px solid #222;border-radius:8px;padding:1rem}.skill-group h4{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:#7ee8fa;margin:0 0 .75rem}.edu-institution{color:#7ee8fa;margin:.25rem 0 0;font-size:.95rem}.resume-section-heading{font-size:1.1rem;color:#e0e0e0;margin:1.5rem 0 .75rem;border-bottom:1px solid #222;padding-bottom:.4rem}.resources-list{display:flex;flex-direction:column;gap:.6rem}.resource-item{display:block;padding:.6rem 1rem;background:#141414;border:1px solid #222;border-radius:6px;color:#ccc;text-decoration:none;font-size:.9rem;transition:background .2s,border-color .2s}.resource-item:hover{background:#1a3a4a;border-color:#7ee8fa44;color:#7ee8fa}.app-root{position:relative;min-height:100vh}.app-bg-overlay{position:fixed;inset:0;background:#0a0a0abf;z-index:0;pointer-events:none}.app-root>nav,.app-root>main{position:relative;z-index:1}
