:root,:root[data-theme=dark]{--bg:#0e1116;--surface:#151a22;--text:#e6e9ef;--muted:#9aa4b2;--border:#262d38;--accent:#7fb0ff;--accent-soft:#7fb0ff1f;color-scheme:dark}:root[data-theme=light]{--bg:#fcfcfa;--surface:#f3f3ef;--text:#1b1f27;--muted:#5b6573;--border:#dedfd8;--accent:#1f5fbf;--accent-soft:#1f5fbf17;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:72px}body{-webkit-font-smoothing:antialiased;background:#0e1116;background:var(--bg);color:#e6e9ef;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.65;transition:background .2s ease,color .2s ease}a{color:#7fb0ff;color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{border-radius:3px;outline:2px solid #7fb0ff;outline:2px solid var(--accent);outline-offset:2px}.skip{background:#7fb0ff;background:var(--accent);border-radius:4px;color:#0e1116;color:var(--bg);left:-999px;padding:6px 12px;position:absolute;top:8px;z-index:20}.skip:focus{left:8px}.topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in srgb,#0e1116 88%,#0000);background:color-mix(in srgb,var(--bg) 88%,#0000);border-bottom:1px solid #262d38;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar-inner{align-items:center;display:flex;gap:20px;height:56px;margin:0 auto;max-width:1040px;padding:0 20px}.brand{color:#e6e9ef;color:var(--text);flex:none;font-family:Newsreader,Georgia,serif;font-size:1.15rem;font-weight:600;letter-spacing:.04em;white-space:nowrap}.brand:hover{color:#7fb0ff;color:var(--accent);text-decoration:none}.topbar nav{display:flex;gap:18px;margin-left:auto;min-width:0;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a{color:#9aa4b2;color:var(--muted);font-size:.9rem}.topbar nav a:hover{color:#e6e9ef;color:var(--text);text-decoration:none}.theme-toggle{background:#0000;border:1px solid #262d38;border:1px solid var(--border);border-radius:8px;color:#9aa4b2;color:var(--muted);cursor:pointer;display:grid;flex:none;height:36px;place-items:center;width:36px}.theme-toggle:hover{border-color:#9aa4b2;border-color:var(--muted);color:#e6e9ef;color:var(--text)}.theme-toggle svg{height:18px;width:18px}.page{margin:0 auto;max-width:1040px;padding:0 20px 40px}.hero{align-items:center;display:flex;gap:32px;padding:56px 0 24px}.portrait{border:1px solid #262d38;border:1px solid var(--border);border-radius:50%;flex:none;height:180px;object-fit:cover;object-position:50% 22%;width:180px}h1{font-family:Newsreader,Georgia,serif;font-size:2.6rem;font-weight:600;letter-spacing:-.01em;line-height:1.15}.tagline{font-size:1.1rem;margin-top:8px}.meta{color:#9aa4b2;color:var(--muted);font-size:.9rem}.links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px}.links a{font-size:.95rem}.section{padding-top:40px}.section h2{border-bottom:1px solid #262d38;border-bottom:1px solid var(--border);font-family:Newsreader,Georgia,serif;font-size:1.6rem;font-weight:600;margin-bottom:20px;padding-bottom:8px}.subhead{color:#9aa4b2;color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.1em;margin:32px 0 14px;text-transform:uppercase}.prose{margin-bottom:12px}.news{list-style:none}.news li{grid-gap:12px;display:grid;gap:12px;grid-template-columns:84px 1fr;padding:6px 0}.date{font-feature-settings:"tnum";color:#9aa4b2;color:var(--muted);font-size:.88rem;font-variant-numeric:tabular-nums;padding-top:2px}.show-all{background:none;border:0;color:#7fb0ff;color:var(--accent);cursor:pointer;font:inherit;font-size:.93rem;margin-top:10px;padding:2px 0}.show-all:hover{text-decoration:underline}.cards{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,1fr)}.card,.group{background:#151a22;background:var(--surface);border:1px solid #262d38;border:1px solid var(--border);border-radius:10px;padding:16px 18px}.card h3{color:#7fb0ff;color:var(--accent);font-size:.98rem;margin-bottom:6px}.card p{color:#9aa4b2;color:var(--muted);font-size:.9rem;line-height:1.55}.groups{grid-gap:12px;display:grid;gap:12px}.group h4{font-size:1rem}.group .meta{margin-bottom:6px}.group p:last-child{font-size:.95rem}.entry{margin-bottom:26px}.entry-head{align-items:baseline;display:flex;gap:16px;justify-content:space-between}.entry h3{font-size:1.02rem}.role{color:#9aa4b2;color:var(--muted);font-size:.93rem;font-style:italic;margin-bottom:4px}.entry-head>.meta{flex:none;text-align:right}.bullets{margin:6px 0 0 1.1rem}.bullets li{font-size:.95rem;margin-bottom:4px}.bullets li::marker{color:#9aa4b2;color:var(--muted)}.company{margin-bottom:8px}.company-name{color:#7fb0ff;color:var(--accent);font-family:Newsreader,Georgia,serif;font-size:1.15rem;margin-bottom:10px}.company .entry{border-left:2px solid #262d38;border-left:2px solid var(--border);padding-left:14px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tags span{background:#7fb0ff1f;background:var(--accent-soft);border-radius:999px;color:#7fb0ff;color:var(--accent);font-size:.78rem;padding:2px 10px}.projects,.pubs{list-style:none}.projects>li,.pubs>li{grid-gap:22px;align-items:start;display:grid;gap:22px;grid-template-columns:220px 1fr;margin-bottom:26px}.thumb{background:#fff;border:1px solid #262d38;border:1px solid var(--border);border-radius:8px;display:block;height:150px;object-fit:cover;object-position:50% 30%;width:220px}.thumb.placeholder{background:#151a22;background:var(--surface);color:#9aa4b2;color:var(--muted);display:grid;place-items:center}.thumb.placeholder svg{height:44px;width:44px}.thumb.contain{object-fit:contain;object-position:center;padding:6px}.projects h3{font-size:1.02rem}.venue{background:#7fb0ff1f;background:var(--accent-soft);border-radius:999px;color:#7fb0ff;color:var(--accent);display:inline-block;font-size:.75rem;font-weight:600;margin-bottom:4px;padding:2px 10px}.pubs{list-style:none}.pub-title{font-weight:600}.authors{color:#9aa4b2;color:var(--muted);font-size:.93rem}.authors b{color:#e6e9ef;color:var(--text)}.plain{list-style:none}.plain li{margin-bottom:14px}.plain p{color:#9aa4b2;color:var(--muted);font-size:.93rem}.skills div{grid-gap:12px;display:grid;gap:12px;grid-template-columns:190px 1fr;padding:6px 0}.skills dt{font-size:.93rem;font-weight:600}.skills dd{font-size:.93rem}.footer,.skills dd{color:#9aa4b2;color:var(--muted)}.footer{border-top:1px solid #262d38;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;font-size:.88rem;gap:8px;justify-content:space-between;margin:24px auto 0;max-width:1040px;padding:24px 20px 48px}@media (max-width:700px){.hero{flex-direction:column;padding-top:36px;text-align:center}.links{justify-content:center}h1{font-size:2.1rem}.cards,.news li,.skills div{grid-template-columns:1fr}.news li,.skills div{gap:2px}.projects>li,.pubs>li{gap:10px;grid-template-columns:1fr}.thumb{height:190px;width:100%}.entry-head{flex-direction:column;gap:0}.entry-head>.meta{text-align:left}.topbar nav{gap:14px}.brand{font-size:.95rem;letter-spacing:0}.topbar-inner{gap:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body{transition:none}}
/*# sourceMappingURL=main.b739499b.css.map*/