:root{--color-primary: #0D0D0D;--color-surface: #1A1A1A;--color-accent-brand: #B11226;--color-accent-hover: #E63946;--color-highlight-muted: #F2C94C;--color-highlight-micro: #FFD166;--color-text-main: #F5F5F5;--color-text-secondary: #A6A6A6;--font-family: "Inter", sans-serif}body{margin:0;padding:0;background-color:var(--color-primary);color:var(--color-text-main);font-family:var(--font-family);overflow-x:hidden;overflow-y:auto}.App-container{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100vw;background-color:var(--color-primary);margin:0;padding:3rem 0;box-sizing:border-box;position:relative}.lang-toggle{position:absolute;top:2.5rem;right:3rem;z-index:10;animation:fadeIn 2s cubic-bezier(.16,1,.3,1) forwards}.lang-link{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:400;font-size:.9rem;letter-spacing:.15em;text-decoration:none;opacity:.8;transition:all .3s ease;display:inline-block;border:1px solid var(--color-surface);padding:.4rem .9rem;border-radius:20px;background-color:transparent}.lang-link:hover{opacity:1;color:var(--color-accent-hover);border-color:var(--color-accent-hover);transform:translateY(-1px)}.profile-card{display:flex;flex-direction:row;align-items:center;gap:4rem;max-width:950px;width:85%;box-sizing:border-box;padding:2rem}.photo-container{flex-shrink:0;width:260px;height:260px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center;border:1px solid var(--color-surface);opacity:0;animation:fadeInPhoto 2s cubic-bezier(.16,1,.3,1) forwards}.profile-photo{width:100%;height:100%;object-fit:cover;user-select:none}.info-container{flex:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left}.name-title{font-family:var(--font-family);font-style:italic;font-weight:600;font-size:4rem;letter-spacing:.05em;margin:0;user-select:none;line-height:1.1;animation:fadeInName 2s cubic-bezier(.16,1,.3,1) forwards}.first-name{color:var(--color-text-main)}.last-name{color:var(--color-accent-brand)}.divider-line{width:70%;height:2px;background:linear-gradient(to right,var(--color-highlight-muted),transparent);margin:1.5rem 0;opacity:0;animation:fadeInLine 2s cubic-bezier(.16,1,.3,1) .3s forwards}.about-text{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:200;font-size:1.1rem;line-height:1.85;letter-spacing:.015em;text-align:justify;margin:0;opacity:0;animation:fadeInBodyText 2.5s cubic-bezier(.16,1,.3,1) .6s forwards}.social-links{display:flex;gap:1.2rem;margin-top:2rem;opacity:0;animation:fadeIn 2.5s cubic-bezier(.16,1,.3,1) .9s forwards}.social-link{display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--color-text-secondary);color:var(--color-text-main);transition:all .3s ease;background-color:transparent}.social-link:hover{color:var(--color-accent-hover);border-color:var(--color-accent-hover);transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInPhoto{0%{opacity:0;transform:scale(.9) translate(-20px);filter:blur(10px)}to{opacity:1;transform:scale(1) translate(0);filter:blur(0)}}@keyframes fadeInName{0%{opacity:0;transform:translateY(20px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes fadeInLine{0%{opacity:0;width:0%}to{opacity:1;width:70%}}@keyframes fadeInBodyText{0%{opacity:0;transform:translateY(15px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes fadeInLineMobile{0%{opacity:0;width:0%}to{opacity:1;width:60%}}.App-container.about-page,.App-container.experience-page,.App-container.media-page,.App-container.story-page,.App-container.story-post-page{align-items:center;justify-content:center;padding:120px 0}.about-card{max-width:900px}.about-title{color:var(--color-text-main);font-weight:500;font-size:3.8rem}.about-card .divider-line{max-width:250px;margin:.5rem 0 2.5rem}.about-card .about-text{text-align:left;font-weight:300;color:var(--color-text-main)}.about-text p{margin-top:0;margin-bottom:1.6rem}.about-text p:last-child{margin-bottom:0}.navbar-container{position:absolute;top:0;left:0;width:100%;height:80px;background-color:var(--color-primary);display:flex;align-items:center;z-index:100}.navbar-content{width:100%;padding:0 4rem;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center}.navbar-left{display:flex;align-items:center;gap:1rem}.navbar-logo{text-decoration:none;font-family:var(--font-family);font-style:italic;font-weight:600;font-size:1.8rem;letter-spacing:.05em;display:flex;gap:.4rem}.navbar-logo .first-name{color:var(--color-text-main)}.navbar-logo .last-name{color:var(--color-accent-brand)}.navbar-separator{color:var(--color-highlight-muted);font-size:1.4rem;font-weight:200;user-select:none}.navbar-subtitle{color:var(--color-text-secondary);font-family:var(--font-family);font-size:1rem;font-weight:400;letter-spacing:.05em}.navbar-right{display:flex;align-items:center;gap:2.5rem}.navbar-links{display:flex;align-items:center;gap:1.8rem}.navbar-link{font-family:var(--font-family);font-size:.95rem;letter-spacing:.05em;text-transform:none;text-decoration:none;color:var(--color-text-secondary);transition:all .3s ease;display:flex;align-items:center}.navbar-link:not(.disabled):hover{color:var(--color-accent-hover)}.navbar-link.active{color:var(--color-text-main);font-style:italic;font-weight:600}.navbar-link.active:before{content:"";display:inline-block;width:7px;height:7px;background-color:var(--color-accent-brand);border-radius:50%;margin-right:8px}.navbar-link.disabled{opacity:.4;cursor:not-allowed;user-select:none}.navbar-lang{display:flex;align-items:center;border-left:1px solid var(--color-surface);padding-left:1.5rem}.navbar-lang-link{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:400;font-size:.85rem;letter-spacing:.1em;text-decoration:none;opacity:.8;transition:all .3s ease;border:1px solid var(--color-surface);padding:.3rem .7rem;border-radius:20px}.navbar-lang-link:hover{opacity:1;color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.navbar-toggle{display:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;background:transparent;border:none;cursor:pointer;padding:0;z-index:101}.navbar-toggle:focus{outline:none}.hamburger-bar{width:100%;height:2px;background-color:var(--color-text-main);border-radius:2px;transition:all .3s cubic-bezier(.16,1,.3,1)}.navbar-toggle.open .hamburger-bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.navbar-toggle.open .hamburger-bar:nth-child(2){opacity:0}.navbar-toggle.open .hamburger-bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.experience-list{margin-top:3rem;width:100%;display:flex;flex-direction:column;gap:2.5rem}.experience-item{display:flex;flex-direction:column;gap:.8rem;padding-bottom:2rem;border-bottom:1px solid var(--color-surface)}.experience-item:last-child{border-bottom:none}.experience-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.experience-title-area{display:flex;align-items:center;gap:.8rem}.experience-number{color:var(--color-highlight-muted);font-family:var(--font-family);font-weight:600;font-size:1.15rem;letter-spacing:.05em;display:inline-block;min-width:1.5rem}.experience-dot{color:var(--color-accent-brand);font-size:.7rem;vertical-align:middle}.experience-role{color:var(--color-text-main);font-family:var(--font-family);font-weight:600;font-size:1.25rem;letter-spacing:.015em;margin:0}.experience-date{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.95rem}.experience-company{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:400;font-size:1.1rem;margin-left:0}.experience-location{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.9rem;display:flex;align-items:center;gap:.4rem;margin-left:0;opacity:.85}.experience-location-icon{color:var(--color-text-secondary);opacity:.7}.experience-description{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:1.05rem;line-height:1.7;margin:0;text-align:left}.experience-show-more-btn{background:none;border:none;color:var(--color-highlight-muted);font-family:var(--font-family);font-weight:400;font-size:.95rem;cursor:pointer;padding:0;margin-left:.4rem;text-decoration:underline;transition:color .3s ease;display:inline}.experience-show-more-btn:hover{color:var(--color-highlight-micro)}.experience-tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-left:0}.experience-tag{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.9rem;opacity:.55;transition:opacity .3s ease}.experience-tag:hover{opacity:.95;color:var(--color-highlight-micro)}.research-list{margin-top:3rem;width:100%;display:flex;flex-direction:column;gap:3rem}.research-item{display:flex;flex-direction:row;align-items:flex-start;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--color-surface)}.research-item:last-child{border-bottom:none}.research-cover{width:220px;height:120px;object-fit:cover;flex-shrink:0;border-radius:4px;border:1px solid var(--color-surface);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.research-cover:hover{transform:translateY(-2px);border-color:var(--color-highlight-muted);box-shadow:0 4px 12px #f2c94c26}.research-details{display:flex;flex-direction:column;gap:.6rem;flex:1;text-align:left}.research-title{font-family:var(--font-family);font-weight:600;font-size:1.25rem;letter-spacing:.015em;margin:0;line-height:1.35}.research-title-link{color:var(--color-text-main);text-decoration:none;transition:color .3s ease}.research-title-link:hover{color:var(--color-accent-hover)}.research-venue-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.research-venue{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:400;font-size:.95rem;opacity:.9}.research-dot{color:var(--color-accent-brand);font-size:.7rem;vertical-align:middle}.research-date{color:var(--color-highlight-muted);font-family:var(--font-family);font-weight:400;font-size:.95rem}.research-description{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:1.05rem;line-height:1.7;margin:0;text-align:justify}.research-show-more-btn{background:none;border:none;color:var(--color-highlight-muted);font-family:var(--font-family);font-weight:400;font-size:.95rem;cursor:pointer;padding:0;margin-left:.4rem;text-decoration:underline;transition:color .3s ease}.research-show-more-btn:hover{color:var(--color-highlight-micro)}.research-actions{display:flex;gap:1rem;margin-top:.6rem}.research-action-btn{background-color:transparent;border:1px solid var(--color-surface);color:var(--color-text-secondary);font-family:var(--font-family);font-size:.85rem;padding:.4rem .9rem;border-radius:20px;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center}.research-action-btn:hover{color:var(--color-text-main);border-color:var(--color-text-main);background-color:#ffffff0d}.research-action-btn.active{color:var(--color-accent-hover);border-color:var(--color-accent-hover);background-color:#b112261a}.research-bibtex-box{background-color:#121212;border:1px solid var(--color-surface);border-radius:6px;padding:1rem;font-family:Courier New,Courier,monospace;font-size:.85rem;color:#b2ccd6;overflow-x:auto;margin-top:.8rem;text-align:left;line-height:1.5;white-space:pre-wrap;width:100%;box-sizing:border-box}.research-tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.2rem}.research-tag{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.9rem;opacity:.55;transition:opacity .3s ease,color .3s ease}.research-tag:hover{opacity:.95;color:var(--color-highlight-micro)}@media(max-width:850px){.App-container,.App-container.about-page,.App-container.experience-page,.App-container.research-page,.App-container.media-page,.App-container.story-page,.App-container.story-post-page{flex-direction:column;justify-content:flex-start;align-items:center;padding:0 0 3rem;min-height:100vh;height:auto;width:100%}.profile-card{flex-direction:column;gap:2.5rem;padding:1.5rem 1rem;width:90%}.photo-container{width:180px;height:180px}.info-container{align-items:center;text-align:center}.about-card .info-container{align-items:flex-start;text-align:left}.name-title{font-size:2.8rem;text-align:center}.about-title{font-size:2.8rem;text-align:left}.about-card .about-title{text-align:left}.divider-line{width:60%;background:linear-gradient(to right,transparent,var(--color-highlight-muted),transparent);margin:1.2rem auto;animation:fadeInLineMobile 2s cubic-bezier(.16,1,.3,1) .3s forwards}.about-card .divider-line{margin:.5rem 0 2rem;width:100%;max-width:250px;background:linear-gradient(to right,var(--color-highlight-muted),transparent);animation:fadeInLineMobileLeft 2s cubic-bezier(.16,1,.3,1) .3s forwards}.about-text{font-size:.98rem;line-height:1.7;text-align:center}.about-card .about-text{text-align:left}.social-links{margin-top:1.5rem;justify-content:center}.navbar-container{position:relative;height:80px;display:flex;align-items:center;width:100%;z-index:100}.navbar-content{flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding:0 2rem;box-sizing:border-box;position:relative}.navbar-left{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.8rem;text-align:left}.navbar-logo{font-size:1.5rem}.navbar-separator{display:inline}.navbar-subtitle{font-size:.9rem}.navbar-toggle{display:flex}.navbar-right{position:absolute;top:100%;left:0;width:100%;background-color:var(--color-primary);border-bottom:1px solid var(--color-surface);flex-direction:column;align-items:center;padding:0;gap:1.2rem;z-index:99;box-shadow:0 10px 15px #00000080;max-height:0;opacity:0;overflow:hidden;transition:all .35s cubic-bezier(.16,1,.3,1);pointer-events:none;display:flex}.navbar-right.open{max-height:320px;opacity:1;padding:1.8rem 0;pointer-events:auto}.navbar-links{flex-direction:column;align-items:center;gap:1.2rem;width:100%}.navbar-lang{border-left:none;padding-left:0;margin-top:.5rem;width:100%;display:flex;justify-content:center}.experience-list{margin-top:2rem;gap:2rem}.experience-item{padding-bottom:1.5rem}.experience-header{flex-direction:column;align-items:flex-start;gap:.3rem}.experience-date{margin-left:2.5rem;font-size:.9rem}.research-list{margin-top:2rem;gap:2.5rem}.research-item{flex-direction:column;align-items:center;gap:1.5rem;padding-bottom:2rem}.research-details{align-items:center;text-align:center}.research-venue-row{justify-content:center}.research-description{text-align:center}.research-tags{justify-content:center}}@media(max-width:500px){.profile-card{padding:1rem .5rem;width:95%;gap:1.8rem}.photo-container{width:150px;height:150px}.name-title,.about-title{font-size:2.2rem}.navbar-content{padding:0 1.2rem}.navbar-left{flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left}.navbar-separator{display:none}.navbar-logo{font-size:1.4rem}.navbar-subtitle{font-size:.85rem}.navbar-right,.navbar-links{gap:1rem}.navbar-lang{border-left:none;padding-left:0}.experience-company,.experience-location,.experience-description,.experience-tags,.experience-date{margin-left:0}.experience-title-area{gap:.6rem}.experience-role{font-size:1.15rem}.research-cover{width:100%;max-width:280px;height:auto;aspect-ratio:11 / 6}}@keyframes fadeInLineMobileLeft{0%{opacity:0;width:0%}to{opacity:1;width:100%}}.media-list{margin-top:3rem;width:100%;display:flex;flex-direction:column;gap:3rem}.media-item{display:flex;flex-direction:row;align-items:flex-start;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--color-surface)}.media-item:last-child{border-bottom:none}.media-cover-link{flex-shrink:0;display:block}.media-cover{width:220px;height:120px;object-fit:cover;border-radius:4px;border:1px solid var(--color-surface);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;background-color:#e0e0e0}.media-cover:hover{transform:translateY(-2px);border-color:var(--color-highlight-muted);box-shadow:0 4px 12px #f2c94c26}.media-details{display:flex;flex-direction:column;gap:.6rem;flex:1;text-align:left}.media-type{color:var(--color-text-secondary);font-family:var(--font-family);font-size:.85rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase}.media-title{font-family:var(--font-family);font-weight:600;font-size:1.25rem;letter-spacing:.015em;margin:0;line-height:1.35;display:flex;align-items:center;gap:.6rem}.media-title-bullet{color:var(--color-accent-brand);font-size:.7rem}.media-title-link{color:var(--color-text-main);text-decoration:none;transition:color .3s ease}.media-title-link:hover{color:var(--color-accent-hover)}.media-description{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:1.05rem;line-height:1.7;margin:0;text-align:justify}.media-metadata{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.4rem}.media-website-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);text-decoration:none;transition:color .3s ease}.media-website-link:hover{color:var(--color-text-main)}.media-website-logo{max-height:16px;width:auto;object-fit:contain;opacity:.85;transition:opacity .3s ease}.media-website-link:hover .media-website-logo{opacity:1}.media-metadata-separator{color:var(--color-accent-brand);font-size:.7rem}.media-date{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.95rem;opacity:.85}@media(max-width:768px){.media-item{flex-direction:column;gap:1.5rem}.media-cover{width:100%;height:auto;aspect-ratio:16/9}}.story-list{margin-top:3rem;width:100%;display:flex;flex-direction:column;gap:2.5rem}.story-item{display:flex;flex-direction:column;gap:.8rem;padding-bottom:2rem;border-bottom:1px solid var(--color-surface)}.story-item:last-child{border-bottom:none}.story-header{display:flex;align-items:center;gap:.8rem}.story-number{color:var(--color-highlight-muted);font-family:var(--font-family);font-weight:600;font-size:1.15rem;letter-spacing:.05em;min-width:1.5rem}.story-dot{color:var(--color-accent-brand);font-size:.7rem;vertical-align:middle}.story-date{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.95rem}.story-title{font-family:var(--font-family);font-weight:600;font-size:1.25rem;letter-spacing:.015em;margin:0;line-height:1.35}.story-title-link{color:var(--color-text-main);text-decoration:none;transition:color .3s ease}.story-title-link:hover{color:var(--color-accent-hover)}.story-description{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:1.05rem;line-height:1.7;margin:0;text-align:left}.story-tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.2rem}.story-tag{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.9rem;opacity:.55;transition:opacity .3s ease,color .3s ease}.story-tag:hover{opacity:.95;color:var(--color-highlight-micro)}.story-post-container{width:100%;display:flex;flex-direction:column;gap:1.5rem;text-align:left}.story-back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-highlight-muted);text-decoration:none;font-family:var(--font-family);font-size:.95rem;font-weight:400;margin-bottom:1rem;transition:color .3s ease,transform .2s ease}.story-back-link:hover{color:var(--color-highlight-micro);transform:translate(-3px)}.story-post-header{border-bottom:1px solid var(--color-surface);padding-bottom:1.5rem;display:flex;flex-direction:column;gap:.8rem}.story-post-title{font-family:var(--font-family);font-size:2.2rem;font-weight:600;color:var(--color-text-main);margin:0;line-height:1.25}.story-post-meta{display:flex;align-items:center;gap:.8rem}.story-post-content{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:1.05rem;line-height:1.8;text-align:justify}.story-post-content p{margin-top:0;margin-bottom:1.5rem}.story-post-content p:last-child{margin-bottom:0}.story-post-content blockquote{border-left:3px solid var(--color-accent-brand);padding:.5rem 0 .5rem 1.5rem;margin:1.8rem 0;font-style:italic;color:var(--color-text-main)}.story-post-content a{color:var(--color-highlight-muted);text-decoration:none;border-bottom:1px dashed var(--color-highlight-muted);transition:all .3s ease}.story-post-content a:hover{color:var(--color-highlight-micro);border-bottom-style:solid}.story-post-tags{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.8rem;border-top:1px solid var(--color-surface);padding-top:1.5rem}.story-post-tag{color:var(--color-text-secondary);font-family:var(--font-family);font-weight:300;font-size:.9rem;opacity:.55;transition:opacity .3s ease,color .3s ease}.story-post-tag:hover{opacity:.95;color:var(--color-highlight-micro)}@media(max-width:850px){.story-post-title{font-size:1.8rem}}
