body{--bg:#fafafa;--accent:#1e8449;--accent-strong:#145a32;--accent-soft:rgba(30, 132, 73, 0.08);--on-accent:#ffffff;--surface:#ffffff;--border:rgba(0, 0, 0, 0.08);--muted:#5f6368;--shadow:0 1px 2px rgba(0, 0, 0, 0.04), 0 4px 16px rgba(0, 0, 0, 0.06)}body.colorscheme-dark{--bg:#212121;--accent:#5fd393;--accent-strong:#8be3b2;--accent-soft:rgba(95, 211, 147, 0.12);--on-accent:#10261a;--surface:#2a2a2a;--border:rgba(255, 255, 255, 0.1);--muted:#a8a8a8;--shadow:0 1px 2px rgba(0, 0, 0, 0.4), 0 4px 16px rgba(0, 0, 0, 0.25)}@media(prefers-color-scheme:dark){body.colorscheme-auto{--bg:#212121;--accent:#5fd393;--accent-strong:#8be3b2;--accent-soft:rgba(95, 211, 147, 0.12);--on-accent:#10261a;--surface:#2a2a2a;--border:rgba(255, 255, 255, 0.1);--muted:#a8a8a8;--shadow:0 1px 2px rgba(0, 0, 0, 0.4), 0 4px 16px rgba(0, 0, 0, 0.25)}}body[class] a{color:var(--accent)}body[class] .title-link,body[class] .navigation a{color:inherit}::selection{background:var(--accent-soft)}.navigation{border-bottom:1px solid var(--border)}.navigation .navigation-title{letter-spacing:.02em}.navigation .navigation-list .navigation-item a{position:relative}.navigation .navigation-list .navigation-item a:hover,.navigation .navigation-list .navigation-item a:focus{color:var(--accent);text-decoration:none}.button{display:inline-flex;align-items:center;gap:.8rem;padding:1rem 2rem;border-radius:999px;border:2px solid var(--accent);background:var(--accent);color:var(--on-accent)!important;font-size:1.6rem;font-weight:600;line-height:1.4;text-decoration:none!important;transition:background .2s ease,border-color .2s ease,transform .2s ease}.button:hover,.button:focus{background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px)}.button-outline{background:0 0;color:var(--accent)!important}.button-outline:hover,.button-outline:focus{background:var(--accent-soft);border-color:var(--accent)}.button-small{padding:.5rem 1.4rem;font-size:1.4rem}.centered .about .avatar img{box-shadow:0 0 0 4px var(--bg,transparent),0 0 0 7px var(--accent)}.centered .about h2{color:var(--muted);font-weight:500}.centered .about .bio{max-width:60rem;margin:2rem auto;font-size:1.7rem;line-height:1.7}.centered .about ul li a{transition:color .2s ease,transform .2s ease}.centered .about ul li a:hover,.centered .about ul li a:focus{color:var(--accent);transform:translateY(-2px)}.centered .about .home-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem;margin-top:2.4rem}.content article header h1.title{margin-bottom:1rem}.content article h2{padding-bottom:.6rem;border-bottom:2px solid var(--accent-soft)}.contact-card,.publications .pub-item,.lecture{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.lecture{margin:0 0 2.4rem;padding:2rem 2.4rem;border-left:4px solid var(--accent)}.lecture .lecture-title{margin:0 0 .8rem;font-size:2rem}.lecture .lecture-description p{margin:0 0 1.4rem}.lecture .lecture-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.lecture .lecture-lang{color:var(--muted);font-size:1.5rem}.publications .pub-status{color:var(--muted);text-align:center}.publications .pub-year{color:var(--accent);margin-top:3.6rem}.publications .pub-list{display:grid;gap:1.2rem}.publications .pub-item{padding:1.4rem 1.8rem;transition:border-color .2s ease,transform .2s ease}.publications .pub-item:hover{border-color:var(--accent);transform:translateY(-1px)}.publications .pub-title{display:block;font-weight:600;line-height:1.45}.publications .pub-venue{display:block;margin-top:.4rem;color:var(--muted);font-size:1.5rem;font-style:italic;line-height:1.5}.cv-actions{text-align:center;margin:2.4rem 0}.cv-embed{display:block;width:100%;height:80vh;min-height:60rem;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(26rem,1fr));gap:2rem;margin-top:2rem}.contact-card{padding:.4rem 2.4rem 1.6rem}.contact-card h3{margin:2rem 0 1rem;font-size:1.9rem}.contact-card h3 i{color:var(--accent);margin-right:.6rem}.contact-card p{margin:0}.footer{color:var(--muted);font-size:1.4rem}