:root{color-scheme:light;--bg: #ffffff;--fg: #1a1a1a;--secondary: #6b6b6b;--accent: #0066cc;--accent-hover: #0052a3;--border: #e5e5e5;--code-bg: #f5f5f5}:root[data-theme=dark]{color-scheme:dark;--bg: #0d1117;--fg: #e6edf3;--secondary: #8b949e;--accent: #58a6ff;--accent-hover: #79c0ff;--border: #30363d;--code-bg: #161b22}*{box-sizing:border-box;margin:0;padding:0}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:16px;line-height:1.6;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable}body{max-width:800px;margin:0 auto;padding:1rem 1rem 2rem;overflow-wrap:break-word}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid var(--border);margin-bottom:2rem}.logo{display:inline-flex;align-items:center;min-height:2.25rem;font-size:1.25rem;font-weight:600;line-height:1.2;white-space:nowrap;color:var(--fg);text-decoration:none}.header-actions,.site-preferences{display:flex;align-items:center}.header-actions{gap:1.25rem;font-size:.95rem;line-height:1.4}.site-preferences{gap:.5rem}.header-actions a{display:inline-flex;align-items:center;min-height:2.25rem}.language-switch{color:var(--secondary)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;flex-shrink:0;padding:0;border:0;border-radius:6px;color:var(--secondary);background:transparent;font:inherit;cursor:pointer}.theme-toggle:hover{color:var(--accent)}.theme-sun{display:none}[data-theme=dark] .theme-sun{display:block}[data-theme=dark] .theme-moon{display:none}nav{display:flex;align-items:center;gap:1.25rem}nav a{color:var(--secondary);text-decoration:none;transition:color .2s}nav a:hover{color:var(--accent)}nav a[aria-current=page]{color:var(--fg)}h1{font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:.75rem}h2{font-size:1.5rem;font-weight:600;line-height:1.3;margin:2rem 0 .75rem}h3{font-size:1.25rem;font-weight:600;line-height:1.4;margin:1.5rem 0 .5rem}p{margin-bottom:1rem}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}.about-section{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.profile-header{display:flex;align-items:center;gap:2rem}.profile-image{width:120px;height:120px;border-radius:8px;object-fit:cover;flex-shrink:0}.profile-info{min-width:0;max-width:100%}.profile-info h1{margin-bottom:.25rem}.profile-info .tagline{color:var(--secondary);font-size:1rem;margin-bottom:.5rem}.social-links{display:flex;flex-wrap:wrap;gap:.375rem 1rem;margin-top:.5rem}.social-links a{color:var(--secondary);font-size:.9rem;transition:color .2s;white-space:nowrap}.social-links a:hover{color:var(--accent)}.about-section ul{list-style:none;padding:0;margin:0}.about-section h2{margin-top:0}.about-section p:last-child{margin-bottom:0}.about-section li{margin-bottom:.75rem;line-height:1.6}.about-section li:last-child{margin-bottom:0}table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border)}th{font-weight:600;color:var(--fg);background:var(--code-bg)}tr:last-child td{border-bottom:none}.publication{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.publication:last-child{border-bottom:none}.publication-title{font-weight:600;margin-bottom:.25rem}.publication-authors{color:var(--secondary);font-size:.95rem;margin-bottom:.25rem}.publication-journal{font-style:italic;font-size:.95rem;color:var(--secondary)}.publication-status{font-style:normal}@media(max-width:600px){body{padding:.75rem .75rem 2rem}header{display:grid;grid-template-columns:1fr auto;gap:.375rem 1rem;padding:1rem 0}.header-actions{display:contents}nav{grid-column:1 / -1;grid-row:2;gap:1rem}.site-preferences{grid-column:2;grid-row:1;font-size:.95rem;line-height:1.4}.profile-header{flex-direction:column;text-align:center}.social-links{justify-content:center}.profile-image{width:100px;height:100px}h1{font-size:1.75rem}h2{font-size:1.35rem}table{font-size:.85rem}th,td{padding:.5rem}}
