:root{--bg: #fbfaf8;--fg: #1c1917;--muted: #78716c;--border: #e7e5e4;--card: #ffffff;--accent: #9a3412;--radius: 12px;--max: 680px;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--serif: "Charter", "Georgia", "Times New Roman", serif;--mono: ui-monospace, SFMono-Regular, Menlo, monospace}[data-theme=dark]{--bg: #131110;--fg: #e7e5e4;--muted: #a8a29e;--border: #292524;--card: #1c1917;--accent: #fdba74}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #131110;--fg: #e7e5e4;--muted: #a8a29e;--border: #292524;--card: #1c1917;--accent: #fdba74}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);line-height:1.7;-webkit-font-smoothing:antialiased;transition:background .25s ease,color .25s ease}a{color:inherit}.wrap{max-width:var(--max);margin:0 auto;padding:0 1.4rem}header.nav{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:58px}.logo{font-family:var(--serif);font-style:italic;font-size:1.25rem;text-decoration:none}.logo:hover{color:var(--accent)}.nav-links{display:flex;gap:1.1rem;align-items:center}.nav-links a.plain{text-decoration:none;color:var(--muted);font-size:.88rem}.nav-links a.plain:hover{color:var(--fg);text-decoration:underline;text-underline-offset:4px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;height:30px;padding:0 .65rem;line-height:1;border:1px solid var(--border);background:var(--card);color:var(--fg);border-radius:999px;font-size:.82rem;cursor:pointer;text-decoration:none;flex:none}.icon-btn:hover{border-color:var(--muted)}.icon-btn .icon{width:15px;height:15px;flex:none;display:block}.burger,.mobile-menu,#menu-btn .close{display:none}header.menu-open #menu-btn .menu{display:none}header.menu-open #menu-btn .close{display:block}#theme-btn .sun{display:none}[data-theme=dark] #theme-btn .sun{display:block}[data-theme=dark] #theme-btn .moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) #theme-btn .sun{display:block}:root:not([data-theme=light]) #theme-btn .moon{display:none}}.hero{padding:3.5rem 0 2rem}.hero-head{display:flex;gap:1.1rem;align-items:center;margin-bottom:1.1rem}.avatar{width:76px;height:76px;border-radius:50%;border:1px solid var(--border);flex:none}.hero h1{font-family:var(--serif);font-weight:500;margin:0;font-size:2rem;letter-spacing:-.02em;line-height:1.15}.role{color:var(--muted);margin:.15rem 0 0;font-size:.92rem}.role b{color:var(--fg);font-weight:600}.lede{color:var(--muted);max-width:58ch;margin:0 0 1.3rem;font-size:1rem}.now{font-family:var(--mono);font-size:.8rem;color:var(--muted);margin:0 0 1.4rem}.now:before{content:"~/ ";color:var(--accent)}.btn-row{display:flex;flex-wrap:wrap;gap:.55rem}.btn{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.5rem 1.05rem;font-size:.88rem;text-decoration:none;background:var(--fg);color:var(--bg);border:1px solid var(--fg)}.btn:hover{opacity:.88}.btn.ghost{background:transparent;color:var(--fg);border-color:var(--border)}.btn.ghost:hover{border-color:var(--fg);opacity:1}.btn .icon{width:15px;height:15px;flex:none}section.block{padding:2rem 0;border-top:1px dashed var(--border)}h2.sec{font-family:var(--mono);font-weight:400;font-size:.8rem;color:var(--muted);margin:0 0 1.2rem}h2.sec span{color:var(--accent)}.grid{display:grid;gap:.85rem}@media(min-width:640px){.grid.two{grid-template-columns:1fr 1fr}}.card{border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.2rem;background:var(--card);text-decoration:none;display:block;transition:transform .15s ease,border-color .15s ease}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card h3{margin:0 0 .25rem;font-size:1.02rem;font-family:var(--mono);font-weight:600}.card h3 .arrow{color:var(--accent);font-weight:400}.card p{margin:0 0 .75rem;color:var(--muted);font-size:.9rem;min-height:2.6em}.card-meta{display:flex;gap:.7rem;align-items:center;font-family:var(--mono);font-size:.75rem;color:var(--muted);margin-bottom:.7rem}.tags{display:flex;flex-wrap:wrap;gap:.35rem}.tag{font-size:.74rem;border:1px solid var(--border);border-radius:6px;padding:.1rem .5rem;color:var(--muted);background:var(--bg)}.timeline{display:grid;gap:1.4rem}.job h3,.edu h3{margin:0;font-size:.98rem}.job h3 span,.edu h3 span{color:var(--muted);font-weight:400}.job .meta,.edu .meta{font-family:var(--mono);color:var(--muted);font-size:.78rem;margin:.2rem 0 .4rem}.job ul{margin:.4rem 0 0;padding-left:1.05rem;color:var(--muted);font-size:.9rem}.job li::marker{content:"• ";color:var(--accent)}.skills{display:flex;flex-wrap:wrap;gap:.45rem;max-width:58ch}.sign{font-family:var(--serif);font-style:italic;font-size:1.1rem;margin:0}footer{border-top:1px dashed var(--border);padding:1.8rem 0 3rem;color:var(--muted);font-size:.84rem}footer .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}footer a{text-underline-offset:3px}.fade{animation:fade .45s ease both}@keyframes fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}code.cmd{font-family:var(--mono);font-size:.78rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.3rem .55rem;display:inline-block}::selection{background:color-mix(in srgb,var(--accent) 30%,transparent)}img{max-width:100%}@media(max-width:620px){.nav-links a.plain{display:none}.nav-links{gap:.55rem}.hero{padding:2.5rem 0 1.5rem}.hero-head{gap:.85rem}.hero-head>div{min-width:0}.avatar{width:60px;height:60px}.hero h1{font-size:1.65rem}.role{font-size:.86rem}.btn{padding:.5rem .9rem;font-size:.85rem}section.block{padding:1.6rem 0}.burger{display:inline-flex}header.menu-open .mobile-menu{display:block;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--border);box-shadow:0 16px 28px -18px #00000059}.mobile-menu .wrap{display:flex;flex-direction:column;padding-top:.2rem;padding-bottom:.9rem}.mobile-menu a{text-decoration:none;color:var(--fg);font-size:1rem;padding:.65rem 0;border-top:1px dashed var(--border)}footer .wrap{flex-direction:column;align-items:center;text-align:center;gap:.25rem}}
