*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0a0a0f;--bg-secondary:#111118;--bg-card:#16161f;--border:#2a2a3a;--text-primary:#f0f0f5;--text-secondary:#9090a8;--text-muted:#5a5a72;--accent:#6c63ff;--accent-light:#8b84ff;--accent-dim:#6c63ff1f;--green:#22c55e;--green-dim:#22c55e1f;--radius:12px;--radius-sm:8px}html{scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}#app{min-height:100vh}.container{max-width:1100px;margin:0 auto;padding:0 24px}.section{padding:96px 0}.section-label{letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:12px;font-weight:600}.section-title{color:var(--text-primary);margin-bottom:16px;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.2}.section-desc{color:var(--text-secondary);max-width:540px;font-size:16px;line-height:1.7}.badge{border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-flex}.badge-green{background:var(--green-dim);color:var(--green);border:1px solid #22c55e33}.badge-purple{background:var(--accent-dim);color:var(--accent-light);border:1px solid #6c63ff33}.btn{border-radius:var(--radius-sm);align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-light);transform:translateY(-1px)}.btn-outline{color:var(--text-primary);border:1px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--accent);color:var(--accent-light);transform:translateY(-1px)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s,transform .2s}.card:hover{border-color:#6c63ff66;transform:translateY(-2px)}.dot{background:var(--green);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.6s forwards fadeInUp}.divider{background:var(--border);height:1px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.navbar[data-v-17e25afc]{z-index:100;border-bottom:1px solid #0000;transition:background .3s,border-color .3s;position:fixed;top:0;left:0;right:0}.navbar.scrolled[data-v-17e25afc]{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom-color:var(--border);background:#0a0a0feb}.nav-inner[data-v-17e25afc]{align-items:center;gap:32px;height:72px;display:flex}.logo[data-v-17e25afc]{color:var(--accent-light);letter-spacing:-.5px;cursor:pointer;margin-right:auto;font-size:20px;font-weight:800}.nav-links[data-v-17e25afc]{gap:4px;list-style:none;display:flex}.nav-links button[data-v-17e25afc]{color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:8px 14px;font-size:14px;transition:color .2s,background .2s}.nav-links button[data-v-17e25afc]:hover{color:var(--text-primary);background:var(--bg-card)}.hire-btn[data-v-17e25afc]{padding:8px 20px;font-size:13px}.burger[data-v-17e25afc]{flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;display:none}.burger span[data-v-17e25afc]{background:var(--text-secondary);transform-origin:50%;border-radius:2px;height:2px;transition:all .3s;display:block}.mobile-menu[data-v-17e25afc]{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);background:#0a0a0ff5;flex-direction:column;gap:8px;padding:16px 24px 24px;display:none}.mobile-menu.active[data-v-17e25afc]{display:flex}.mobile-menu ul[data-v-17e25afc]{flex-direction:column;gap:4px;list-style:none;display:flex}.mobile-menu button[data-v-17e25afc],.mobile-menu a[data-v-17e25afc]{color:var(--text-secondary);cursor:pointer;border-bottom:1px solid var(--border);text-align:left;width:100%;padding:10px 4px;font-size:15px;display:block}.mobile-menu button[data-v-17e25afc]:hover,.mobile-menu a[data-v-17e25afc]:hover{color:var(--text-primary)}@media (width<=768px){.nav-links[data-v-17e25afc],.hire-btn[data-v-17e25afc]{display:none}.burger[data-v-17e25afc]{display:flex}}.hero-section[data-v-8b2b4b6f]{align-items:center;min-height:100vh;padding-top:72px;display:flex;position:relative;overflow:hidden}.hero-bg[data-v-8b2b4b6f]{pointer-events:none;background:radial-gradient(60% 50% at 70%,#6c63ff14 0%,#0000 70%),radial-gradient(40% 40% at 20% 80%,#22c55e0d 0%,#0000 60%);position:absolute;inset:0}.container[data-v-8b2b4b6f]{grid-template-columns:1fr 400px;align-items:center;gap:64px;padding-top:32px;padding-bottom:32px;display:grid}.hero-content[data-v-8b2b4b6f]{flex-direction:column;gap:28px;display:flex}.hero-top[data-v-8b2b4b6f]{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.location[data-v-8b2b4b6f]{color:var(--text-muted);font-size:13px}.hero-title[data-v-8b2b4b6f]{letter-spacing:-2px;color:var(--text-primary);font-size:clamp(40px,5.5vw,68px);font-weight:800;line-height:1.08}.accent-text[data-v-8b2b4b6f]{background:linear-gradient(135deg, var(--accent), var(--accent-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.hero-sub[data-v-8b2b4b6f]{color:var(--text-secondary);max-width:520px;font-size:17px;line-height:1.7}.hero-actions[data-v-8b2b4b6f]{flex-wrap:wrap;gap:12px;display:flex}.hero-meta[data-v-8b2b4b6f]{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:24px;padding-top:16px;display:flex}.meta-item[data-v-8b2b4b6f]{flex-direction:column;gap:2px;display:flex}.meta-value[data-v-8b2b4b6f]{color:var(--text-primary);font-size:24px;font-weight:700}.meta-label[data-v-8b2b4b6f]{color:var(--text-muted);font-size:12px}.meta-divider[data-v-8b2b4b6f]{background:var(--border);width:1px;height:36px}.hero-card[data-v-8b2b4b6f]{justify-content:flex-end;display:flex}.profile-card[data-v-8b2b4b6f]{text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;padding:32px;display:flex}.avatar[data-v-8b2b4b6f]{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:4px;font-size:28px;font-weight:800;display:flex}.profile-card h2[data-v-8b2b4b6f]{color:var(--text-primary);margin:0;font-size:20px;font-weight:700}.profile-card>p[data-v-8b2b4b6f]{color:var(--text-secondary);font-size:13px}.profile-links[data-v-8b2b4b6f]{flex-direction:column;gap:8px;width:100%;display:flex}.profile-link[data-v-8b2b4b6f]{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);word-break:break-all;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;transition:border-color .2s,color .2s;display:flex}.profile-link[data-v-8b2b4b6f]:hover{border-color:var(--accent);color:var(--accent-light)}.stack-chips[data-v-8b2b4b6f]{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.chip[data-v-8b2b4b6f]{background:var(--accent-dim);color:var(--accent-light);border:1px solid #6c63ff33;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:500}@media (width<=900px){.container[data-v-8b2b4b6f]{grid-template-columns:1fr;gap:40px}.hero-card[data-v-8b2b4b6f]{justify-content:center}.profile-card[data-v-8b2b4b6f]{max-width:400px;margin:0 auto}}@media (width<=600px){.hero-title[data-v-8b2b4b6f]{letter-spacing:-1px}.hero-meta[data-v-8b2b4b6f]{gap:16px}.meta-divider[data-v-8b2b4b6f]{display:none}}.section-header[data-v-f2a2e40d]{margin-bottom:48px}.projects-grid[data-v-f2a2e40d]{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.project-card[data-v-f2a2e40d]{flex-direction:column;gap:16px;padding:28px;display:flex}.project-card.featured[data-v-f2a2e40d]{background:linear-gradient(135deg, var(--bg-card), #6c63ff0a);border-color:#6c63ff4d}.project-header[data-v-f2a2e40d]{justify-content:space-between;align-items:center;display:flex}.project-icon[data-v-f2a2e40d]{font-size:28px}.project-title[data-v-f2a2e40d]{color:var(--text-primary);font-size:18px;font-weight:700}.project-link[data-v-f2a2e40d]{width:fit-content;text-decoration:none}.project-link:hover .project-title[data-v-f2a2e40d]{color:var(--accent-light)}.project-link[data-v-f2a2e40d]:focus-visible{outline:2px solid var(--accent-light);outline-offset:3px;border-radius:4px}.project-link:focus-visible .project-title[data-v-f2a2e40d]{color:var(--accent-light)}.project-desc[data-v-f2a2e40d]{color:var(--text-secondary);flex:1;font-size:14px;line-height:1.7}.project-tags[data-v-f2a2e40d]{flex-wrap:wrap;gap:6px;display:flex}.project-points[data-v-f2a2e40d]{color:var(--text-secondary);flex-direction:column;gap:10px;padding-left:18px;font-size:14px;line-height:1.65;display:flex}.project-points li[data-v-f2a2e40d]::marker{color:var(--accent-light)}.tag[data-v-f2a2e40d]{background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;padding:3px 10px;font-size:11px;font-weight:500}@media (width<=700px){.projects-grid[data-v-f2a2e40d]{grid-template-columns:1fr}}.skills-bg[data-v-21fadaa1]{background:linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 50%, var(--bg-primary) 100%)}.skills-layout[data-v-21fadaa1]{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.skill-bars[data-v-21fadaa1]{flex-direction:column;gap:20px;margin-top:32px;display:flex}.skill-row[data-v-21fadaa1]{flex-direction:column;gap:8px;display:flex}.skill-info[data-v-21fadaa1]{justify-content:space-between;align-items:center;display:flex}.skill-name[data-v-21fadaa1]{color:var(--text-primary);font-size:14px;font-weight:600}.skill-meta[data-v-21fadaa1]{align-items:center;gap:12px;display:flex}.skill-years[data-v-21fadaa1]{color:var(--text-muted);font-size:12px}.skill-level[data-v-21fadaa1]{font-size:12px;font-weight:500}.skill-bar-track[data-v-21fadaa1]{background:var(--bg-card);border:1px solid var(--border);border-radius:3px;height:6px;overflow:hidden}.skill-bar-fill[data-v-21fadaa1]{opacity:.85;border-radius:3px;height:100%;transition:width 1s}.skills-right[data-v-21fadaa1]{flex-direction:column;gap:16px;padding-top:80px;display:flex}.cat-card[data-v-21fadaa1]{padding:20px 24px}.cat-header[data-v-21fadaa1]{align-items:center;gap:10px;margin-bottom:14px;display:flex}.cat-icon[data-v-21fadaa1]{font-size:20px}.cat-title[data-v-21fadaa1]{color:var(--text-primary);font-size:14px;font-weight:700}.cat-chips[data-v-21fadaa1]{flex-wrap:wrap;gap:6px;display:flex}.chip[data-v-21fadaa1]{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-size:11px;font-weight:500;transition:border-color .2s,color .2s}.chip[data-v-21fadaa1]:hover{border-color:var(--accent);color:var(--accent-light)}@media (width<=840px){.skills-layout[data-v-21fadaa1]{grid-template-columns:1fr;gap:48px}.skills-right[data-v-21fadaa1]{padding-top:0}}.exp-header[data-v-d32eeead]{margin-bottom:48px}.timeline[data-v-d32eeead]{flex-direction:column;gap:0;display:flex;position:relative}.timeline[data-v-d32eeead]:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:0;left:19px}.timeline-item[data-v-d32eeead]{gap:32px;padding-bottom:28px;display:flex;position:relative}.timeline-dot[data-v-d32eeead]{background:var(--bg-card);border:2px solid var(--border);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;display:flex;position:relative}.timeline-dot.active[data-v-d32eeead]{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 4px #6c63ff1a}.job-card[data-v-d32eeead]{flex-direction:column;flex:1;gap:14px;padding:24px;display:flex}.job-top[data-v-d32eeead]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.job-role[data-v-d32eeead]{color:var(--text-primary);margin-bottom:4px;font-size:17px;font-weight:700}.job-meta[data-v-d32eeead]{align-items:center;gap:8px;display:flex}.company[data-v-d32eeead]{color:var(--accent-light);font-size:13px;font-weight:600}.sep[data-v-d32eeead]{color:var(--text-muted)}.location[data-v-d32eeead]{color:var(--text-muted);font-size:13px}.job-right[data-v-d32eeead]{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.period[data-v-d32eeead]{color:var(--text-muted);white-space:nowrap;font-size:12px}.current-badge[data-v-d32eeead]{font-size:11px}.job-desc[data-v-d32eeead]{color:var(--text-secondary);font-size:14px;line-height:1.7}.job-points[data-v-d32eeead]{color:var(--text-secondary);flex-direction:column;gap:10px;padding-left:18px;font-size:14px;line-height:1.65;display:flex}.job-points li[data-v-d32eeead]::marker{color:var(--accent-light)}.highlights[data-v-d32eeead]{flex-wrap:wrap;gap:6px;display:flex}.highlight-chip[data-v-d32eeead]{background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;padding:3px 10px;font-size:11px;font-weight:500}@media (width<=600px){.timeline[data-v-d32eeead]:before{left:15px}.timeline-dot[data-v-d32eeead]{width:32px;min-width:32px;height:32px}.timeline-item[data-v-d32eeead]{gap:20px}.job-top[data-v-d32eeead]{flex-direction:column}.job-right[data-v-d32eeead]{align-items:flex-start}}.section-header[data-v-a4cf3783]{margin-bottom:48px}.education-bg[data-v-a4cf3783]{background:linear-gradient(180deg, var(--bg-primary) 0%, #111118e6 100%)}.education-grid[data-v-a4cf3783]{grid-template-columns:1.1fr .9fr;align-items:stretch;gap:20px;display:grid}.education-card[data-v-a4cf3783]{flex-direction:column;gap:12px;padding:28px;display:flex}.education-card h3[data-v-a4cf3783]{color:var(--text-primary);font-size:20px;line-height:1.35}.institution[data-v-a4cf3783]{color:var(--accent-light);font-weight:600}.location[data-v-a4cf3783],.supporting-copy[data-v-a4cf3783]{color:var(--text-secondary);line-height:1.7}.methods-card[data-v-a4cf3783]{gap:20px}.group[data-v-a4cf3783]{flex-direction:column;gap:10px;display:flex}.group-title[data-v-a4cf3783]{letter-spacing:1.4px;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:700}.chip-wrap[data-v-a4cf3783]{flex-wrap:wrap;gap:8px;display:flex}.chip[data-v-a4cf3783]{color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:999px;padding:5px 10px;font-size:12px}@media (width<=820px){.education-grid[data-v-a4cf3783]{grid-template-columns:1fr}}.contact-bg[data-v-f2eb226d]{background:radial-gradient(50% 60% at 50% 100%,#6c63ff0f 0%,#0000 70%)}.contact-layout[data-v-f2eb226d]{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.contact-cards[data-v-f2eb226d]{flex-direction:column;gap:12px;margin-top:32px;display:flex}.contact-item[data-v-f2eb226d]{align-items:center;gap:14px;padding:16px 20px;transition:border-color .2s;display:flex}.contact-item[data-v-f2eb226d]:hover{border-color:var(--accent)}.ci-icon[data-v-f2eb226d]{background:var(--accent-dim);width:40px;height:40px;color:var(--accent-light);border:1px solid #6c63ff33;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ci-label[data-v-f2eb226d]{color:var(--text-muted);margin-bottom:2px;font-size:11px;display:block}.ci-value[data-v-f2eb226d]{color:var(--text-secondary);word-break:break-all;font-size:13px;display:block}.form-card[data-v-f2eb226d]{padding:32px}.form-card h3[data-v-f2eb226d]{color:var(--text-primary);margin-bottom:24px;font-size:18px;font-weight:700}.form[data-v-f2eb226d]{flex-direction:column;gap:18px;display:flex}.form-group[data-v-f2eb226d]{flex-direction:column;gap:6px;display:flex}label[data-v-f2eb226d]{color:var(--text-secondary);font-size:12px;font-weight:600}input[data-v-f2eb226d],textarea[data-v-f2eb226d]{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);resize:vertical;border-radius:8px;outline:none;padding:11px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}input[data-v-f2eb226d]::placeholder,textarea[data-v-f2eb226d]::placeholder{color:var(--text-muted)}input[data-v-f2eb226d]:focus,textarea[data-v-f2eb226d]:focus{border-color:var(--accent)}.form-error[data-v-f2eb226d]{color:#f87171;font-size:13px}.form-success[data-v-f2eb226d]{color:var(--green);font-size:13px}.submit-btn[data-v-f2eb226d]{justify-content:center;width:100%;padding:14px}.submit-btn[data-v-f2eb226d]:disabled{opacity:.7;cursor:wait}@media (width<=840px){.contact-layout[data-v-f2eb226d]{grid-template-columns:1fr;gap:40px}}.footer[data-v-6aef0cb5]{background:var(--bg-secondary)}.footer-inner[data-v-6aef0cb5]{grid-template-columns:2fr 1fr 1.5fr;gap:48px;padding-top:56px;padding-bottom:40px;display:grid}.footer-logo[data-v-6aef0cb5]{color:var(--accent-light);margin-bottom:8px;font-size:22px;font-weight:800;display:block}.footer-tagline[data-v-6aef0cb5]{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.footer-copy[data-v-6aef0cb5]{color:var(--text-muted);font-size:12px}.footer-nav-title[data-v-6aef0cb5]{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:16px;font-size:11px;font-weight:700;display:block}.footer-links ul[data-v-6aef0cb5],.footer-contact ul[data-v-6aef0cb5]{flex-direction:column;gap:10px;list-style:none;display:flex}.footer-links a[data-v-6aef0cb5],.footer-contact a[data-v-6aef0cb5]{color:var(--text-secondary);cursor:pointer;font-size:13px;transition:color .2s}.footer-links a[data-v-6aef0cb5]:hover,.footer-contact a[data-v-6aef0cb5]:hover{color:var(--accent-light)}.footer-bottom[data-v-6aef0cb5]{border-top:1px solid var(--border);width:100%;max-width:1100px;color:var(--text-muted);justify-content:space-between;align-items:center;margin:0 auto;padding:16px 24px;font-size:12px;display:flex}.status-chip[data-v-6aef0cb5]{background:var(--green-dim);color:var(--green);border:1px solid #22c55e33;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:500;display:flex}@media (width<=768px){.footer-inner[data-v-6aef0cb5]{grid-template-columns:1fr 1fr}.footer-left[data-v-6aef0cb5]{grid-column:1/-1}}@media (width<=480px){.footer-inner[data-v-6aef0cb5]{grid-template-columns:1fr}}
