:root{--accent:#4fc1ff;--muted:#64748b}*{box-sizing:border-box}body{margin:0;font-family:Sora,system-ui,sans-serif;color:#e2e8f0;background:#0a0e14;line-height:1.5;background-image:radial-gradient(50rem 30rem at 80% -10%,rgba(124,92,255,.18),transparent),radial-gradient(45rem 26rem at -10% 30%,rgba(49,230,201,.12),transparent);background-attachment:fixed}.nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(8px);background:#0a0e1499;border-bottom:1px solid #ffffff12}.nav-in{max-width:1100px;margin:0 auto;padding:0 1.5rem;height:4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.brand{font-weight:700;color:#fff;text-decoration:none}.brand span{color:var(--accent)}.nav-links{display:flex;gap:1.2rem;font-size:.85rem}.nav-links a{color:#94a3b8;text-decoration:none}.nav-links a:hover{color:var(--accent)}.toolbar{display:flex;gap:.6rem;justify-content:center;align-items:center;padding:1.2rem 1rem;flex-wrap:wrap}.btn{font:inherit;font-weight:600;border:0;border-radius:9999px;padding:.55rem 1.2rem;cursor:pointer;text-decoration:none;font-size:.85rem}.btn-primary{background:var(--accent);color:#0a0e14}.btn-ghost{background:transparent;color:#e2e8f0;border:1px solid #ffffff2a}.switch{display:inline-flex;border:1px solid #ffffff2a;border-radius:9999px;overflow:hidden}.seg{font:inherit;font-weight:600;padding:.5rem 1.1rem;text-decoration:none;color:#94a3b8;font-size:.85rem}.seg-on{background:var(--accent);color:#0a0e14}.sheet{max-width:840px;margin:1rem auto 3rem;background:#0f1622;border:1px solid #ffffff12;border-radius:1rem;padding:2.6rem 3rem}h1{font-size:2rem;margin:0;letter-spacing:-.02em;color:#fff}.role{color:var(--accent);font-weight:600;margin:.25rem 0 .5rem}.contact{font-size:.82rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:.25rem 1rem}.contact a{color:var(--muted);text-decoration:none}.contact a:hover{color:var(--accent)}h2{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);border-bottom:1px solid #ffffff14;padding-bottom:.35rem;margin:1.8rem 0 .9rem}.lead{color:#cbd5e1;font-size:.95rem}.job{margin-bottom:1rem}.job-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.job-title{font-weight:600;color:#f1f5f9}.job-meta{font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--muted);white-space:nowrap}.job p{margin:.3rem 0 0;font-size:.87rem;color:#94a3b8}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 2rem}.skillrow{font-size:.85rem;margin:.35rem 0;color:#cbd5e1}.skillrow b{color:#f1f5f9}ul.tight{margin:.3rem 0;padding-left:1.1rem}ul.tight li{font-size:.85rem;color:#94a3b8;margin:.15rem 0}.proj{font-size:.85rem;margin:.3rem 0;color:#94a3b8}.proj b{color:#f1f5f9}.hidden{display:none!important}.theme-btn{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:9999px;border:1px solid #ffffff1a;color:#cbd5e1;background:transparent;cursor:pointer}.theme-btn:hover{color:var(--accent);border-color:var(--accent)}.theme-btn svg{width:1rem;height:1rem}.site-footer{border-top:1px solid #ffffff0d;padding:2.5rem 1rem;text-align:center;font-size:.85rem;color:#64748b}.site-footer .stack{font-family:JetBrains Mono,monospace;font-size:.72rem;color:#94a3b8}.site-footer .stack b{color:var(--accent);font-weight:600}.fx-heart,.fx-cup{display:inline-block;font-size:1.6em;vertical-align:-.3em;margin:0 .1em}@keyframes heartbeat{0%,to{transform:scale(1)}12%{transform:scale(1.35)}24%{transform:scale(1)}36%{transform:scale(1.22)}50%{transform:scale(1)}}@keyframes cupbob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-12deg)}}@keyframes huecycle{to{filter:hue-rotate(360deg)}}.fx-heart{animation:heartbeat 1.6s ease-in-out infinite,huecycle 6s linear infinite}.fx-cup{animation:cupbob 2.4s ease-in-out infinite,huecycle 8s linear infinite;transform-origin:bottom center}html.theme-transition,html.theme-transition *{transition:background-color .55s ease,color .55s ease,border-color .55s ease!important}:root[data-theme=light] body{background:#f1f5f9;color:#334155;background-image:none}:root[data-theme=light] .nav{background:#f8fafcc7;border-color:#0f172a1a}:root[data-theme=light] .brand{color:#0f172a}:root[data-theme=light] .nav-links a{color:#475569}:root[data-theme=light] .theme-btn{color:#475569;border-color:#0f172a26}:root[data-theme=light] .sheet{background:#fff;border-color:#0f172a1a}:root[data-theme=light] h1,:root[data-theme=light] .job-title,:root[data-theme=light] .skillrow b,:root[data-theme=light] .proj b{color:#0f172a}:root[data-theme=light] .role,:root[data-theme=light] h2,:root[data-theme=light] .contact a:hover{color:#1d4ed8}:root[data-theme=light] h2{border-color:#e2e8f0}:root[data-theme=light] .lead{color:#334155}:root[data-theme=light] .job p,:root[data-theme=light] ul.tight li,:root[data-theme=light] .proj,:root[data-theme=light] .skillrow,:root[data-theme=light] .contact,:root[data-theme=light] .job-meta,:root[data-theme=light] .contact a,:root[data-theme=light] .site-footer,:root[data-theme=light] .seg{color:#475569}:root[data-theme=light] .btn-ghost,:root[data-theme=light] .switch,:root[data-theme=light] .seg{border-color:#0f172a26}@media(prefers-reduced-motion:reduce){.fx-heart,.fx-cup{animation:none}}@media print{.nav,.toolbar,.site-footer{display:none!important}body{background:#fff!important;background-image:none!important;color:#0f172a}.sheet{border:0;margin:0;max-width:none;padding:0;background:#fff}h1,.job-title,.skillrow b,.proj b{color:#0f172a}.role,h2,.contact a:hover{color:#1d4ed8}h2{border-color:#e2e8f0}.lead{color:#334155}.job p,ul.tight li,.proj,.skillrow,.contact,.job-meta,.contact a{color:#475569}}@media(max-width:640px){.sheet{padding:1.75rem 1.25rem}.grid2{grid-template-columns:1fr}.nav-links{display:none}}
