.navbar[data-v-3833f66f]{position:fixed;top:0;left:0;right:0;z-index:1000;background:#0a0a0aeb;border-bottom:1px solid var(--border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background var(--transition-fast),box-shadow var(--transition-fast)}.navbar.scrolled[data-v-3833f66f]{background:#0a0a0afa;box-shadow:0 2px 20px #00000080}.nav-container[data-v-3833f66f]{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:var(--space-md) var(--space-lg);gap:var(--space-md)}.nav-logo[data-v-3833f66f]{font-family:JetBrains Mono,monospace;font-size:1.1rem;font-weight:700;color:var(--text-primary);text-decoration:none;display:flex;align-items:center;gap:2px;transition:color var(--transition-fast);flex-shrink:0}.nav-logo[data-v-3833f66f]:hover{text-decoration:none;color:var(--accent)}.logo-bracket[data-v-3833f66f]{color:var(--accent)}.logo-subtext[data-v-3833f66f]{color:var(--text-muted);font-size:.78rem;margin-left:2px}.nav-menu[data-v-3833f66f]{display:flex;list-style:none;gap:var(--space-xs);align-items:center;margin-left:auto}.nav-link[data-v-3833f66f]{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-secondary);text-decoration:none;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);border:1px solid transparent;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);position:relative}.nav-link[data-v-3833f66f]:hover{color:var(--accent);background:var(--accent-dim);text-decoration:none}.nav-link.active[data-v-3833f66f]{color:var(--accent);border-color:#00ff414d;background:var(--accent-dim)}.nav-link.active[data-v-3833f66f]:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:60%;height:2px;background:var(--accent);border-radius:2px;box-shadow:0 0 6px var(--accent)}.lang-switcher[data-v-3833f66f]{display:flex;align-items:center;gap:var(--space-xs);font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:600;color:var(--accent);background:var(--accent-dim);border:1px solid rgba(0,255,65,.4);border-radius:var(--radius-md);padding:4px var(--space-sm);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);margin-left:var(--space-xs)}.lang-switcher[data-v-3833f66f]:hover{background:var(--accent);color:var(--bg-primary)}.lang-icon[data-v-3833f66f]{flex-shrink:0}.lang-code[data-v-3833f66f]{min-width:18px;text-align:center}.nav-toggle[data-v-3833f66f]{display:none;flex-direction:column;gap:5px;background:none;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;padding:var(--space-sm);transition:border-color var(--transition-fast)}.nav-toggle[data-v-3833f66f]:hover{border-color:var(--accent)}.nav-toggle span[data-v-3833f66f]{display:block;width:22px;height:2px;background:var(--text-primary);border-radius:2px;transition:transform var(--transition-normal),opacity var(--transition-normal),background var(--transition-fast)}.nav-toggle.active span[data-v-3833f66f]:nth-child(1){transform:rotate(45deg) translate(5px,5px);background:var(--accent)}.nav-toggle.active span[data-v-3833f66f]:nth-child(2){opacity:0}.nav-toggle.active span[data-v-3833f66f]:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);background:var(--accent)}@media(max-width:768px){.nav-container[data-v-3833f66f]{padding:12px var(--space-md)}.nav-logo[data-v-3833f66f]{font-size:1rem;min-width:0}.logo-subtext[data-v-3833f66f]{display:none}.nav-toggle[data-v-3833f66f]{display:flex;position:relative;z-index:1002;background:#141414f2}.nav-menu[data-v-3833f66f]{position:fixed;top:64px;right:0;z-index:1001;width:min(88vw,360px);max-height:calc(100vh - 76px);background:linear-gradient(180deg,rgba(0,255,65,.06),transparent 120px),#0a0a0afa;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(16px);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:var(--space-md) var(--space-md) var(--space-lg);gap:var(--space-sm);border-left:1px solid rgba(0,255,65,.18);border-bottom:1px solid rgba(0,255,65,.12);border-bottom-left-radius:18px;box-shadow:-16px 0 48px #0009;overflow-y:visible;transform:translate(100%);opacity:0;visibility:hidden;pointer-events:none;transition:transform var(--transition-normal),opacity var(--transition-normal),visibility var(--transition-normal)}.nav-menu.active[data-v-3833f66f]{transform:translate(0);opacity:1;visibility:visible;pointer-events:auto}.nav-menu li[role=none][data-v-3833f66f]{width:100%}.nav-link[data-v-3833f66f]{display:flex;align-items:center;width:100%;font-size:.95rem;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);background:#ffffff05}.nav-link.active[data-v-3833f66f]{border-color:#00ff4152;box-shadow:inset 0 0 0 1px #00ff4114}.nav-link.active[data-v-3833f66f]:after{display:none}.lang-switcher[data-v-3833f66f]{width:100%;margin-top:var(--space-md);justify-content:center;padding:.9rem 1rem;font-size:.82rem;border-radius:var(--radius-lg)}}.nav-backdrop[data-v-3833f66f]{display:none}@media(max-width:768px){.nav-backdrop[data-v-3833f66f]{display:block;position:fixed;inset:64px 0 0;background:#0000009e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000}}@media(max-width:420px){.nav-container[data-v-3833f66f]{padding-inline:.75rem}.nav-menu[data-v-3833f66f]{width:100vw;max-height:calc(100vh - 72px);padding-inline:.75rem;border-bottom-left-radius:0}.nav-link[data-v-3833f66f],.lang-switcher[data-v-3833f66f]{font-size:.9rem}}.hero[data-v-6c87b075]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding-top:80px;position:relative}.hero-content[data-v-6c87b075]{display:grid;grid-template-columns:minmax(300px,420px) minmax(300px,500px);gap:var(--space-3xl);align-items:start;justify-content:center;width:100%}.avatar-container[data-v-6c87b075]{position:relative;width:120px;height:120px;margin-bottom:var(--space-lg)}.avatar-glow[data-v-6c87b075]{position:absolute;inset:-8px;background:var(--accent);border-radius:50%;opacity:.3;filter:blur(20px);animation:avatarPulse-6c87b075 3s ease-in-out infinite}.avatar[data-v-6c87b075]{position:relative;width:100%;height:100%;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-card) 100%);border:3px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 0 30px #00ff414d,inset 0 0 20px #00ff411a;animation:avatarFloat-6c87b075 4s ease-in-out infinite}.avatar-img[data-v-6c87b075]{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.avatar-text[data-v-6c87b075]{font-family:JetBrains Mono,monospace;font-size:2rem;font-weight:700;color:var(--accent);text-shadow:0 0 20px var(--accent);-webkit-user-select:none;user-select:none}@keyframes avatarPulse-6c87b075{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.1);opacity:.5}}@keyframes avatarFloat-6c87b075{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.hero-terminal[data-v-6c87b075]{width:100%;max-width:420px;margin-top:calc(120px + var(--space-lg))}.hero-info[data-v-6c87b075]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-lg)}.hero-skeleton[data-v-6c87b075]{gap:0}.hero-title[data-v-6c87b075]{font-size:3rem;display:flex;flex-direction:column}.greeting[data-v-6c87b075]{font-size:1.25rem;color:var(--text-secondary);font-weight:400}.name[data-v-6c87b075]{color:var(--accent);text-shadow:0 0 30px rgba(0,255,65,.5)}.hero-subtitle[data-v-6c87b075]{font-size:1.125rem;color:var(--text-secondary);max-width:400px}.hero-cta[data-v-6c87b075]{display:flex;gap:var(--space-md)}.btn-glow[data-v-6c87b075]{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--accent) 0%,#00cc33 100%);box-shadow:0 0 20px #00ff4166,0 0 40px #00ff4133;transition:all .3s ease}.btn-glow[data-v-6c87b075]:hover{box-shadow:0 0 30px #00ff4199,0 0 60px #00ff414d;transform:translate(-2px,-2px)}.btn-outline[data-v-6c87b075]{position:relative;overflow:hidden;background:transparent;border:2px solid var(--border-light)}.btn-outline[data-v-6c87b075]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,255,65,.2),transparent);transition:left .5s ease}.btn-outline[data-v-6c87b075]:hover:before{left:100%}.btn-outline[data-v-6c87b075]:hover{border-color:var(--accent);box-shadow:0 0 20px #00ff414d}.btn-icon[data-v-6c87b075]{margin-right:var(--space-sm);font-size:.875rem}[data-v-6c87b075] .ripple{position:absolute;border-radius:50%;background:#fff6;transform:scale(0);animation:ripple-animation-6c87b075 .6s linear;pointer-events:none}@keyframes ripple-animation-6c87b075{to{transform:scale(4);opacity:0}}.terminal-group[data-v-6c87b075]{opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease}.terminal-group.active[data-v-6c87b075]{opacity:1;transform:translateY(0)}.typing-text[data-v-6c87b075]{color:var(--text-primary);min-height:1.6em}.typing-cursor[data-v-6c87b075]{color:var(--accent);animation:cursorBlink .8s infinite;font-weight:700}.scroll-indicator[data-v-6c87b075]{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:.75rem;animation:bounce-6c87b075 2s infinite}.scroll-arrow[data-v-6c87b075]{width:20px;height:20px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg)}@keyframes bounce-6c87b075{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}@media(max-width:1024px){.hero-content[data-v-6c87b075]{grid-template-columns:1fr;gap:var(--space-2xl);max-width:500px;margin:0 auto}.hero-terminal[data-v-6c87b075]{order:2;max-width:100%;margin-top:0}.hero-info[data-v-6c87b075]{order:1;text-align:center;align-items:center}.hero-title[data-v-6c87b075]{font-size:2.5rem}.scroll-indicator[data-v-6c87b075]{display:none}}@media(max-width:768px){.hero-cta[data-v-6c87b075]{flex-direction:column;width:100%}.hero-cta .btn[data-v-6c87b075]{width:100%}.hero-title[data-v-6c87b075]{font-size:2rem}.avatar-container[data-v-6c87b075]{width:100px;height:100px}.avatar-text[data-v-6c87b075]{font-size:1.5rem}}.about[data-v-157f07ba]{background:var(--bg-surface);opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;overflow:hidden}.about.visible[data-v-157f07ba]{opacity:1;transform:translateY(0)}.about-content[data-v-157f07ba]{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-2xl);align-items:start}.skeleton-card[data-v-157f07ba]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.skeleton-card-header[data-v-157f07ba]{padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:1px solid var(--border)}.skeleton-card-body[data-v-157f07ba]{padding:var(--space-lg)}.skeleton-stat[data-v-157f07ba]{display:flex;align-items:center;gap:var(--space-md);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg)}.glass-card[data-v-157f07ba]{background:#1a1a1acc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,255,65,.1);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d,inset 0 0 0 1px #ffffff0d;overflow:hidden;transition:all .3s ease}.glass-card[data-v-157f07ba]:hover{border-color:#00ff414d;box-shadow:0 8px 32px #0006,0 0 20px #00ff411a,inset 0 0 0 1px #ffffff14}.card-header[data-v-157f07ba]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#141414e6;border-bottom:1px solid var(--border)}.card-icon[data-v-157f07ba]{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.875rem}.card-label[data-v-157f07ba]{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted)}.card-body[data-v-157f07ba]{padding:var(--space-lg)}.card-body p[data-v-157f07ba]{color:var(--text-secondary);margin-bottom:var(--space-md);line-height:1.8}.card-body p[data-v-157f07ba]:last-of-type{margin-bottom:var(--space-lg)}.quote[data-v-157f07ba]{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-muted);padding:var(--space-md);margin-top:var(--space-lg);background:var(--bg-surface);border-left:3px solid var(--accent);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:normal;line-height:1.7}.about-stats[data-v-157f07ba]{display:flex;flex-direction:column;gap:var(--space-md)}.glass-stat[data-v-157f07ba]{position:relative;background:#1a1a1acc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,255,65,.15);border-radius:var(--radius-lg);padding:var(--space-lg);display:flex;align-items:center;gap:var(--space-md);overflow:hidden;transition:all .3s ease;opacity:0;transform:translate(20px)}.about.visible .glass-stat[data-v-157f07ba]{opacity:1;transform:translate(0);transition:opacity .5s ease calc(var(--delay)),transform .5s ease calc(var(--delay)),border-color .3s ease,box-shadow .3s ease,transform .3s ease}.glass-stat[data-v-157f07ba]:hover{border-color:var(--accent);transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--accent),0 0 30px #00ff4133}.stat-icon[data-v-157f07ba]{font-family:JetBrains Mono,monospace;font-size:1.1rem;color:var(--accent);font-weight:700;min-width:36px;text-align:center;flex-shrink:0}.stat-content[data-v-157f07ba]{display:flex;flex-direction:column}.stat-number[data-v-157f07ba]{font-family:JetBrains Mono,monospace;font-size:2rem;font-weight:700;color:var(--accent);line-height:1;text-shadow:0 0 20px rgba(0,255,65,.5)}.stat-label[data-v-157f07ba]{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:var(--space-xs)}.stat-glow[data-v-157f07ba]{position:absolute;top:50%;right:-20px;width:80px;height:80px;background:var(--accent);border-radius:50%;opacity:.08;filter:blur(30px);pointer-events:none;transition:all .3s ease}.glass-stat:hover .stat-glow[data-v-157f07ba]{opacity:.18;transform:scale(1.5)}.tech-marquee[data-v-157f07ba]{margin-top:var(--space-3xl);padding:var(--space-md) 0;background:#00ff410a;border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%)}.marquee-track[data-v-157f07ba]{display:flex;gap:var(--space-xl);width:max-content;animation:marquee-157f07ba 30s linear infinite;white-space:nowrap}.tech-marquee:hover .marquee-track[data-v-157f07ba]{animation-play-state:paused}.marquee-item[data-v-157f07ba]{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:2px}.marquee-item[data-v-157f07ba]:not(:last-child):after{content:" //";color:var(--accent);margin-left:var(--space-xl)}@keyframes marquee-157f07ba{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(max-width:1024px){.about-content[data-v-157f07ba]{grid-template-columns:1fr}.about-stats[data-v-157f07ba]{flex-direction:row;flex-wrap:wrap;justify-content:center}.glass-stat[data-v-157f07ba],.skeleton-stat[data-v-157f07ba]{flex:1;min-width:160px;max-width:220px}}@media(max-width:768px){.about-stats[data-v-157f07ba]{flex-direction:column}.glass-stat[data-v-157f07ba],.skeleton-stat[data-v-157f07ba]{max-width:none}.stat-number[data-v-157f07ba]{font-size:1.75rem}.tech-marquee[data-v-157f07ba]{margin-top:var(--space-2xl)}}.skills[data-v-06e852ca]{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.skills.visible[data-v-06e852ca]{opacity:1;transform:translateY(0)}.skills-grid[data-v-06e852ca]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-xl)}.skill-category[data-v-06e852ca]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-hard);opacity:0;transform:translateY(20px);transition:opacity .5s ease calc(var(--cat-delay, 0s)),transform .5s ease calc(var(--cat-delay, 0s))}.skills.visible .skill-category[data-v-06e852ca]{opacity:1;transform:translateY(0)}.skill-category-title[data-v-06e852ca]{font-size:1rem;margin-bottom:var(--space-lg);display:flex;align-items:center;gap:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.category-icon[data-v-06e852ca]{font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:700;color:var(--accent);min-width:28px}.skill-tags[data-v-06e852ca]{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.skill-tag[data-v-06e852ca]{font-family:JetBrains Mono,monospace;font-size:.75rem;padding:var(--space-xs) var(--space-sm);background:color-mix(in srgb,var(--skill-color) 12%,transparent);border:1px solid color-mix(in srgb,var(--skill-color) 60%,transparent);border-radius:var(--radius-sm);color:var(--skill-color);cursor:default;opacity:0;animation:fadeIn-06e852ca .3s ease forwards;animation-delay:var(--delay, 0s);transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.skills.visible .skill-tag[data-v-06e852ca]{opacity:1}.skill-tag[data-v-06e852ca]:hover{background:color-mix(in srgb,var(--skill-color) 90%,transparent);color:var(--bg-primary);transform:translateY(-2px);box-shadow:0 4px 12px color-mix(in srgb,var(--skill-color) 30%,transparent)}.skeleton-category[data-v-06e852ca]{opacity:1!important;transform:none!important}.skeleton-title-row[data-v-06e852ca]{padding-bottom:var(--space-sm);border-bottom:1px solid var(--border);margin-bottom:var(--space-md)}@keyframes fadeIn-06e852ca{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(max-width:1024px){.skills-grid[data-v-06e852ca]{grid-template-columns:1fr}}@media(max-width:768px){.skill-tags[data-v-06e852ca]{gap:var(--space-xs)}.skill-tag[data-v-06e852ca]{font-size:.7rem}}.projects[data-v-92999b47]{background:var(--bg-surface);opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.projects.visible[data-v-92999b47]{opacity:1;transform:translateY(0)}.section-title[data-v-92999b47]{display:flex;align-items:center;gap:var(--space-sm)}.project-count[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--bg-primary);background:var(--accent);padding:2px 8px;border-radius:var(--radius-sm);margin-left:var(--space-sm)}.filter-bar[data-v-92999b47]{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-2xl)}.filter-btn[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.7rem;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .15s ease}.filter-btn[data-v-92999b47]:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.filter-btn.active[data-v-92999b47]{border-color:var(--accent);color:var(--accent);background:var(--accent-dim);transform:translateY(-1px);box-shadow:0 0 8px #00ff4133}.no-results[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-muted);text-align:center;padding:var(--space-3xl) 0;border:1px dashed var(--border);border-radius:var(--radius-lg)}.featured-project[data-v-92999b47]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);margin-bottom:var(--space-2xl);padding:var(--space-xl);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hard);transition:border-color .3s ease,box-shadow .3s ease}.featured-project[data-v-92999b47]:hover{border-color:#00ff414d}.featured-badge[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:var(--space-sm);display:block}.featured-title[data-v-92999b47]{font-size:1.5rem;margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.featured-icon[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:700;color:var(--accent);background:var(--accent-dim);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border:1px solid rgba(0,255,65,.25)}.featured-desc[data-v-92999b47]{color:var(--text-secondary);margin-bottom:var(--space-lg);line-height:1.75;font-size:.95rem}.featured-tech[data-v-92999b47]{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-lg)}.featured-links[data-v-92999b47]{display:flex;gap:var(--space-md)}.project-btn[data-v-92999b47]{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:all .2s ease;text-decoration:none}.project-btn[data-v-92999b47]:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px);text-decoration:none}.project-btn-primary[data-v-92999b47]{background:var(--accent);color:var(--bg-primary);border-color:var(--accent)}.project-btn-primary[data-v-92999b47]:hover{background:#0c3;color:var(--bg-primary);box-shadow:0 0 20px #00ff4166}.featured-visual[data-v-92999b47]{display:flex;align-items:center}.terminal-preview[data-v-92999b47]{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.terminal-header[data-v-92999b47]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:1px solid var(--border)}.terminal-dot[data-v-92999b47]{width:10px;height:10px;border-radius:50%}.terminal-dot.red[data-v-92999b47]{background:var(--error)}.terminal-dot.yellow[data-v-92999b47]{background:var(--warning)}.terminal-dot.green[data-v-92999b47]{background:var(--success)}.terminal-title[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-muted);margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.terminal-body[data-v-92999b47]{padding:var(--space-md);font-family:JetBrains Mono,monospace;font-size:.8rem}.terminal-line[data-v-92999b47]{margin-bottom:var(--space-sm)}.prompt[data-v-92999b47]{color:var(--accent);margin-right:var(--space-sm)}.terminal-output[data-v-92999b47]{color:var(--text-secondary);padding-left:var(--space-md);margin-bottom:var(--space-xs)}.terminal-output.success[data-v-92999b47]{color:var(--success)}.cursor[data-v-92999b47]{color:var(--accent);animation:cursorBlink-92999b47 .8s infinite}@keyframes cursorBlink-92999b47{0%,50%{opacity:1}51%,to{opacity:0}}.tech-badge[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:.75rem;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease;cursor:default}.tech-badge[data-v-92999b47]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.tech-badge-sm[data-v-92999b47]{font-size:.625rem;padding:2px 6px}.projects-grid[data-v-92999b47]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.project-card[data-v-92999b47]{position:relative;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-hard);overflow:hidden;opacity:0;transform:translateY(16px);transition:opacity .5s ease calc(var(--delay, 0s)),transform .5s ease calc(var(--delay, 0s)),border-color .25s ease,box-shadow .25s ease}.projects.visible .project-card[data-v-92999b47]{opacity:1;transform:translateY(0)}.project-card[data-v-92999b47]:hover{border-color:var(--accent);transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--accent),0 0 30px #00ff411a}.project-header[data-v-92999b47]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md)}.project-icon[data-v-92999b47]{font-family:JetBrains Mono,monospace;font-size:1.1rem;font-weight:700;color:var(--accent);background:var(--accent-dim);padding:var(--space-sm);border-radius:var(--radius-md);border:1px solid rgba(0,255,65,.2)}.project-links[data-v-92999b47]{display:flex;gap:var(--space-sm)}.project-link[data-v-92999b47]{color:var(--text-muted);padding:var(--space-xs);transition:color .2s ease,background .2s ease;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.project-link[data-v-92999b47]:hover{color:var(--accent);background:var(--accent-dim)}.project-title[data-v-92999b47]{font-size:1.05rem;margin-bottom:var(--space-sm);line-height:1.4}.project-desc[data-v-92999b47]{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--space-md);line-height:1.65;flex:1}.project-tech[data-v-92999b47]{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:auto}.project-glow[data-v-92999b47]{position:absolute;top:0;right:0;width:100px;height:100px;background:var(--accent);border-radius:50%;opacity:0;filter:blur(50px);transition:opacity .3s ease;pointer-events:none}.project-glow.active[data-v-92999b47]{opacity:.12}.skeleton-card-inner[data-v-92999b47]{opacity:1!important;transform:none!important;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg)}.skeleton-featured[data-v-92999b47]{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-2xl);background:var(--bg-secondary)}.projects-more[data-v-92999b47]{margin-top:var(--space-2xl);text-align:center}.more-link[data-v-92999b47]{display:inline-flex;align-items:center;gap:var(--space-sm);font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-muted);padding:var(--space-sm) var(--space-lg);border:1px solid var(--border);border-radius:var(--radius-md);transition:color .2s ease,border-color .2s ease,box-shadow .2s ease;text-decoration:none}.more-link[data-v-92999b47]:hover{color:var(--accent);border-color:var(--accent);box-shadow:0 0 12px #00ff4126;text-decoration:none}.more-link svg[data-v-92999b47]{transition:transform .2s ease}.more-link:hover svg[data-v-92999b47]{transform:translate(4px)}@media(max-width:1024px){.featured-project[data-v-92999b47]{grid-template-columns:1fr}.featured-visual[data-v-92999b47]{order:-1}.projects-grid[data-v-92999b47]{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.filter-bar[data-v-92999b47]{gap:var(--space-xs)}.projects-grid[data-v-92999b47]{grid-template-columns:1fr}.featured-links[data-v-92999b47]{flex-direction:column}.project-btn[data-v-92999b47]{justify-content:center}}@media(max-width:480px){.filter-btn[data-v-92999b47]{font-size:.65rem;padding:3px 8px}}.experience[data-v-7c499d40]{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.experience.visible[data-v-7c499d40]{opacity:1;transform:translateY(0)}.timeline[data-v-7c499d40]{position:relative;padding-left:60px}.timeline-line[data-v-7c499d40]{position:absolute;left:20px;top:0;bottom:0;width:2px;background:var(--border)}.timeline-line-progress[data-v-7c499d40]{position:absolute;top:0;left:0;width:100%;height:0;background:linear-gradient(180deg,var(--accent),rgba(0,255,65,.2));transition:height 1.6s ease}.timeline-line-progress.animate[data-v-7c499d40]{height:100%}.timeline-item[data-v-7c499d40]{position:relative;padding-bottom:var(--space-2xl);opacity:0;transform:translate(-20px);transition:opacity .55s ease calc(var(--index, 0) * .15s),transform .55s ease calc(var(--index, 0) * .15s)}.timeline-item.visible[data-v-7c499d40]{opacity:1;transform:translate(0)}.timeline-item[data-v-7c499d40]:last-child{padding-bottom:0}.timeline-marker[data-v-7c499d40]{position:absolute;left:-47px;top:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.marker-dot[data-v-7c499d40]{width:14px;height:14px;background:var(--accent);border-radius:50%;border:3px solid var(--bg-primary);z-index:2;box-shadow:0 0 10px #00ff4180}.skeleton-dot[data-v-7c499d40]{background:var(--bg-surface)!important;box-shadow:none!important;border-color:var(--border)!important}.marker-pulse[data-v-7c499d40]{position:absolute;width:24px;height:24px;background:var(--accent);border-radius:50%;opacity:0;animation:markerPulse-7c499d40 2.5s ease-in-out infinite}.timeline-item:nth-child(2) .marker-pulse[data-v-7c499d40]{animation-delay:.4s}.timeline-item:nth-child(3) .marker-pulse[data-v-7c499d40]{animation-delay:.8s}.timeline-item:nth-child(4) .marker-pulse[data-v-7c499d40]{animation-delay:1.2s}@keyframes markerPulse-7c499d40{0%{transform:scale(1);opacity:.5}to{transform:scale(2);opacity:0}}.timeline-content[data-v-7c499d40]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-hard);transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.timeline-content[data-v-7c499d40]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent);opacity:0;transition:opacity .3s ease}.timeline-content[data-v-7c499d40]:hover:before{opacity:1}.timeline-content[data-v-7c499d40]:hover{border-color:var(--accent);transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--accent),0 0 30px #00ff4114}.skeleton-content[data-v-7c499d40]:hover{border-color:var(--border)!important;transform:none!important;box-shadow:var(--shadow-hard)!important}.exp-header[data-v-7c499d40]{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border)}.exp-company-icon[data-v-7c499d40]{font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:700;color:var(--accent);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-dim);border:1px solid rgba(0,255,65,.3);border-radius:var(--radius-md);flex-shrink:0;letter-spacing:0}.exp-meta[data-v-7c499d40]{flex:1;display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.exp-company[data-v-7c499d40]{font-family:JetBrains Mono,monospace;font-size:.95rem;color:var(--accent);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exp-date[data-v-7c499d40]{font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--text-muted);display:flex;align-items:center;gap:4px}.exp-status[data-v-7c499d40]{font-family:JetBrains Mono,monospace;font-size:.6rem;padding:3px var(--space-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:1px;background:var(--bg-surface);color:var(--text-muted);border:1px solid var(--border);white-space:nowrap;flex-shrink:0}.exp-status.current[data-v-7c499d40]{background:var(--accent-dim);color:var(--accent);border-color:var(--accent);animation:statusPulse-7c499d40 2.2s ease-in-out infinite}@keyframes statusPulse-7c499d40{0%,to{opacity:1}50%{opacity:.6}}.exp-title[data-v-7c499d40]{font-size:1.2rem;margin-bottom:var(--space-md);line-height:1.3}.exp-highlights[data-v-7c499d40]{list-style:none;padding:0;margin:0 0 var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.highlight-item[data-v-7c499d40]{display:flex;align-items:flex-start;gap:var(--space-sm);font-size:.875rem;color:var(--text-secondary);line-height:1.6}.highlight-item svg[data-v-7c499d40]{color:var(--accent);flex-shrink:0;margin-top:2px}.exp-desc[data-v-7c499d40]{font-size:.875rem;color:var(--text-secondary);line-height:1.75;margin-bottom:var(--space-md)}.exp-tech[data-v-7c499d40]{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border)}.tech-pill[data-v-7c499d40]{font-family:JetBrains Mono,monospace;font-size:.72rem;padding:3px 10px;background:color-mix(in srgb,var(--tech-color) 12%,transparent);color:var(--tech-color);border:1px solid;border-radius:999px;cursor:default;transition:background .2s ease,transform .2s ease}.tech-pill[data-v-7c499d40]:hover{background:color-mix(in srgb,var(--tech-color) 25%,transparent);transform:translateY(-2px)}@media(max-width:768px){.timeline[data-v-7c499d40]{padding-left:40px}.timeline-line[data-v-7c499d40]{left:10px}.timeline-marker[data-v-7c499d40]{left:-35px}.exp-header[data-v-7c499d40]{flex-wrap:wrap;gap:var(--space-sm)}.exp-company-icon[data-v-7c499d40]{display:none}.exp-status[data-v-7c499d40]{width:100%;text-align:center;margin-top:var(--space-xs)}.exp-title[data-v-7c499d40]{font-size:1.05rem}}@media(max-width:480px){.timeline[data-v-7c499d40]{padding-left:28px}.timeline-marker[data-v-7c499d40]{left:-24px}.marker-dot[data-v-7c499d40]{width:12px;height:12px}.tech-pill[data-v-7c499d40]{font-size:.65rem}}.contact[data-v-1705ca85]{background:var(--bg-surface);opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.contact.visible[data-v-1705ca85]{opacity:1;transform:translateY(0)}.contact-content[data-v-1705ca85]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);align-items:start}.contact-info[data-v-1705ca85]{display:flex;flex-direction:column;gap:var(--space-xl)}.contact-text[data-v-1705ca85]{font-size:1.125rem;color:var(--text-secondary);line-height:1.7}.contact-links[data-v-1705ca85]{display:flex;flex-direction:column;gap:var(--space-md)}.contact-link[data-v-1705ca85]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-primary);transition:all .3s ease;position:relative;overflow:hidden}.contact-link[data-v-1705ca85]:before{content:"";position:absolute;left:0;top:0;height:100%;width:3px;background:var(--accent);transform:scaleY(0);transition:transform .3s ease}.contact-link[data-v-1705ca85]:hover{border-color:var(--accent);transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--accent);text-decoration:none}.contact-link[data-v-1705ca85]:hover:before{transform:scaleY(1)}.contact-icon[data-v-1705ca85]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border-radius:var(--radius-md);color:var(--accent);transition:all .3s ease}.contact-link:hover .contact-icon[data-v-1705ca85]{background:var(--accent);color:var(--bg-primary)}.contact-label[data-v-1705ca85]{flex:1;font-family:JetBrains Mono,monospace;font-size:.875rem}.contact-arrow[data-v-1705ca85]{color:var(--text-muted);opacity:0;transform:translate(-10px);transition:all .3s ease}.contact-link:hover .contact-arrow[data-v-1705ca85]{opacity:1;transform:translate(0);color:var(--accent)}.download-cv[data-v-1705ca85]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:linear-gradient(135deg,var(--accent) 0%,#00cc33 100%);border-radius:var(--radius-lg);color:var(--bg-primary);font-family:JetBrains Mono,monospace;font-weight:600;transition:all .3s ease;box-shadow:0 0 20px #00ff414d,var(--shadow-hard-sm);animation:downloadPulse-1705ca85 3s ease-in-out infinite}@keyframes downloadPulse-1705ca85{0%,to{box-shadow:0 0 20px #00ff414d,var(--shadow-hard-sm)}50%{box-shadow:0 0 30px #00ff4180,var(--shadow-hard-sm)}}.download-cv[data-v-1705ca85]:hover{transform:translate(-2px,-2px);box-shadow:0 0 40px #00ff4180,var(--shadow-hard);text-decoration:none}.download-icon[data-v-1705ca85]{display:flex;animation:bounce-1705ca85 2s ease-in-out infinite}@keyframes bounce-1705ca85{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.download-text[data-v-1705ca85]{flex:1}.download-format[data-v-1705ca85]{font-size:.75rem;opacity:.7}.terminal-form[data-v-1705ca85]{display:flex;flex-direction:column;gap:var(--space-md)}.form-field[data-v-1705ca85]{display:flex;flex-direction:column;gap:var(--space-xs)}.field-label[data-v-1705ca85]{font-size:.875rem;color:var(--text-secondary)}.field-input-wrapper[data-v-1705ca85]{display:flex;align-items:flex-start;gap:var(--space-sm);position:relative}.input-prefix[data-v-1705ca85]{color:var(--accent);font-weight:700;line-height:1.5}.field-input[data-v-1705ca85]{flex:1;background:transparent;border:none;outline:none;font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-primary);padding:var(--space-xs) 0;border-bottom:1px solid var(--border);transition:border-color .3s ease}.field-input[data-v-1705ca85]:focus{border-bottom-color:var(--accent)}.field-input[data-v-1705ca85]::placeholder{color:var(--text-muted);opacity:.5}.field-textarea[data-v-1705ca85]{resize:none;min-height:60px}.input-cursor[data-v-1705ca85]{color:var(--accent);animation:cursorBlink .8s infinite;font-weight:700}.form-submit[data-v-1705ca85]{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-md)}.submit-btn[data-v-1705ca85]{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--accent);background:transparent;border:none;cursor:pointer;padding:var(--space-sm) 0;transition:all .2s ease}.submit-btn[data-v-1705ca85]:hover:not(:disabled){text-decoration:underline}.submit-btn[data-v-1705ca85]:disabled{cursor:not-allowed;opacity:.7}.loading-dots .dot[data-v-1705ca85]{animation:loadingDot-1705ca85 1.4s infinite}.loading-dots .dot[data-v-1705ca85]:nth-child(2){animation-delay:.2s}.loading-dots .dot[data-v-1705ca85]:nth-child(3){animation-delay:.4s}@keyframes loadingDot-1705ca85{0%,80%,to{opacity:0}40%{opacity:1}}.terminal-error[data-v-1705ca85]{display:flex;align-items:center;gap:var(--space-sm);color:var(--error);font-size:.875rem;padding:var(--space-sm);background:#ff3e3e1a;border-radius:var(--radius-sm)}.terminal-output.success[data-v-1705ca85]{display:flex;align-items:center;gap:var(--space-sm);color:var(--success)}.terminal-btn[data-v-1705ca85]{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;margin-top:var(--space-md);transition:all .2s ease}.terminal-btn[data-v-1705ca85]:hover{background:var(--accent);color:var(--bg-primary)}@media(max-width:1024px){.contact-content[data-v-1705ca85]{grid-template-columns:1fr}}.contact-error-banner[data-v-1705ca85]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#ff3e3e14;border:1px solid rgba(255,62,62,.35);border-radius:var(--radius-md);color:var(--error);font-family:JetBrains Mono,monospace;font-size:.8rem;margin-bottom:var(--space-xl);flex-wrap:wrap}.contact-error-banner code[data-v-1705ca85]{font-size:.75rem;opacity:.8}.banner-retry[data-v-1705ca85]{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--error);background:#ff3e3e1f;border:1px solid rgba(255,62,62,.4);border-radius:var(--radius-sm);padding:2px var(--space-sm);cursor:pointer;transition:background var(--transition-fast);white-space:nowrap}.banner-retry[data-v-1705ca85]:hover{background:#ff3e3e38}@media(max-width:768px){.contact-link[data-v-1705ca85]{padding:var(--space-sm) var(--space-md)}.contact-icon[data-v-1705ca85]{width:36px;height:36px}}.footer[data-v-3aa813f4]{background:var(--bg-primary);border-top:1px solid var(--border);padding:var(--space-xl) 0;position:relative}.footer[data-v-3aa813f4]:before{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%);width:40%;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent)}.prompt[data-v-3aa813f4]{color:var(--accent)}.footer-bottom[data-v-3aa813f4]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md)}.footer-copy[data-v-3aa813f4]{font-family:JetBrains Mono,monospace;font-size:.775rem;color:var(--text-muted);display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.heart[data-v-3aa813f4]{color:var(--error);animation:heartbeat-3aa813f4 2.4s ease-in-out infinite}@keyframes heartbeat-3aa813f4{0%,to{transform:scale(1)}14%{transform:scale(1.25)}28%{transform:scale(1)}42%{transform:scale(1.15)}56%{transform:scale(1)}}.footer-author[data-v-3aa813f4]{color:var(--accent);text-decoration:none;transition:text-shadow var(--transition-fast)}.footer-author[data-v-3aa813f4]:hover{text-shadow:0 0 10px var(--accent);text-decoration:none}.footer-stack[data-v-3aa813f4]{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-muted);display:flex;align-items:center;gap:var(--space-sm)}.stack-item[data-v-3aa813f4]{opacity:.6;transition:opacity var(--transition-fast)}.stack-item[data-v-3aa813f4]:hover{opacity:1;color:var(--accent)}.stack-sep[data-v-3aa813f4]{color:var(--accent);opacity:.5;font-size:.65rem}.back-to-top[data-v-3aa813f4]{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-md);cursor:pointer;display:flex;align-items:center;gap:var(--space-xs);transition:color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.back-to-top[data-v-3aa813f4]:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px);box-shadow:0 0 12px #00ff4133}@media(max-width:768px){.footer[data-v-3aa813f4]{padding:var(--space-lg) 0}.footer-bottom[data-v-3aa813f4]{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.back-to-top[data-v-3aa813f4]{align-self:flex-end}}@media(max-width:480px){.footer-stack[data-v-3aa813f4]{display:none}}.chatbot-toggle[data-v-8b26585c]{position:fixed;bottom:var(--space-xl);right:var(--space-xl);width:56px;height:56px;background:var(--accent);border:none;border-radius:50%;color:var(--bg-primary);cursor:pointer;box-shadow:var(--shadow-hard);transition:var(--transition-fast);z-index:999;display:flex;align-items:center;justify-content:center}.chatbot-toggle[data-v-8b26585c]:hover{transform:translate(-2px,-2px) scale(1.05);box-shadow:6px 6px #000c}.chatbot-toggle.hidden[data-v-8b26585c]{display:none}.chatbot-widget[data-v-8b26585c]{position:fixed;bottom:var(--space-xl);right:var(--space-xl);width:380px;height:560px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hard);overflow:hidden;z-index:1000;display:none;flex-direction:column;animation:slideUp-8b26585c .3s ease}.chatbot-widget.active[data-v-8b26585c]{display:flex}@keyframes slideUp-8b26585c{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chatbot-close[data-v-8b26585c]{position:absolute;top:8px;right:8px;z-index:10;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;padding:6px;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.chatbot-close[data-v-8b26585c]:hover{color:var(--text-primary);border-color:var(--accent)}.chatbot-iframe[data-v-8b26585c]{flex:1;width:100%;border:none;background:var(--bg-primary)}@media(max-width:768px){.chatbot-widget[data-v-8b26585c]{bottom:0;right:0;left:0;width:100%;height:100%;border-radius:0}.chatbot-toggle[data-v-8b26585c]{bottom:var(--space-md);right:var(--space-md)}}.app[data-v-a540b95f]{min-height:100vh;display:flex;flex-direction:column}.app.loading[data-v-a540b95f]{overflow:hidden;height:100vh}main[data-v-a540b95f]{flex:1;outline:none}.scroll-progress[data-v-a540b95f]{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--accent),#00ffff);z-index:9999;transition:width .1s ease;box-shadow:0 0 10px var(--accent);pointer-events:none}.loading-screen[data-v-a540b95f]{position:fixed;inset:0;z-index:10000;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.loading-terminal[data-v-a540b95f]{width:100%;max-width:600px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 0 60px #00ff4133;overflow:hidden}.loading-header[data-v-a540b95f]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:1px solid var(--border)}.loading-dot[data-v-a540b95f]{width:12px;height:12px;border-radius:50%}.loading-dot.red[data-v-a540b95f]{background:var(--error)}.loading-dot.yellow[data-v-a540b95f]{background:var(--warning)}.loading-dot.green[data-v-a540b95f]{background:var(--success)}.loading-title[data-v-a540b95f]{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted);margin-left:auto}.loading-body[data-v-a540b95f]{padding:var(--space-lg)}.loading-ascii[data-v-a540b95f]{display:block;font-family:JetBrains Mono,monospace;font-size:.5rem;line-height:1.2;color:var(--accent);white-space:pre;text-align:center;margin:0 0 var(--space-lg);text-shadow:0 0 10px var(--accent)}.loading-logo-mobile[data-v-a540b95f]{display:none;font-family:JetBrains Mono,monospace;font-size:2rem;font-weight:700;color:var(--accent);text-align:center;text-shadow:0 0 20px var(--accent);margin-bottom:var(--space-lg);letter-spacing:4px}.loading-lines[data-v-a540b95f]{font-family:JetBrains Mono,monospace;font-size:.875rem;margin-bottom:var(--space-lg)}.loading-line[data-v-a540b95f]{color:var(--text-secondary);margin-bottom:var(--space-xs);animation:fadeIn-a540b95f .2s ease}.loading-prompt[data-v-a540b95f]{color:var(--accent);margin-right:var(--space-sm)}.loading-cursor .cursor[data-v-a540b95f]{color:var(--accent);animation:cursorBlink-a540b95f .8s infinite}.loading-progress[data-v-a540b95f]{height:4px;background:var(--bg-card);border-radius:2px;overflow:hidden;margin-bottom:var(--space-sm)}.progress-bar[data-v-a540b95f]{height:100%;background:linear-gradient(90deg,var(--accent),#00ffff);transition:width .15s ease;box-shadow:0 0 10px var(--accent)}.loading-percent[data-v-a540b95f]{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--accent);text-align:right}@keyframes fadeIn-a540b95f{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes cursorBlink-a540b95f{0%,50%{opacity:1}51%,to{opacity:0}}.fade-enter-active[data-v-a540b95f],.fade-leave-active[data-v-a540b95f]{transition:opacity .4s ease}.fade-enter-from[data-v-a540b95f],.fade-leave-to[data-v-a540b95f]{opacity:0}@media(max-width:600px){.loading-ascii[data-v-a540b95f]{display:none}.loading-logo-mobile[data-v-a540b95f]{display:block}.loading-terminal[data-v-a540b95f]{max-width:100%}.loading-lines[data-v-a540b95f]{font-size:.75rem}}:root{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--bg-surface: #141414;--bg-card: #111111;--text-primary: #e5e5e5;--text-secondary: #a3a3a3;--text-muted: #737373;--accent: #00ff41;--accent-dim: rgba(0, 255, 65, .15);--accent-hover: rgba(0, 255, 65, .25);--accent-cyan: #00ffff;--accent-purple: #a855f7;--accent-blue: #3b82f6;--border: #333333;--border-light: #404040;--success: #00ff41;--error: #ff3e3e;--warning: #ffaa00;--info: #00bfff;--shadow-hard: 4px 4px 0 rgba(0, 0, 0, .8);--shadow-hard-accent: 4px 4px 0 var(--accent);--shadow-hard-sm: 2px 2px 0 rgba(0, 0, 0, .8);--shadow-glow: 0 0 20px rgba(0, 255, 65, .3);--shadow-glow-lg: 0 0 40px rgba(0, 255, 65, .4);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--radius-xl: 12px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:80px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;background-image:linear-gradient(rgba(0,255,65,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,65,.03) 1px,transparent 1px);background-size:20px 20px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}::selection{background:var(--accent);color:var(--bg-primary)}h1,h2,h3,h4,h5,h6{font-family:JetBrains Mono,monospace;font-weight:600;line-height:1.3}a{color:var(--accent);text-decoration:none;transition:var(--transition-fast)}a:hover{text-decoration:underline}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}section{padding:var(--space-3xl) 0}.section-title{font-size:1.75rem;margin-bottom:var(--space-2xl);display:flex;align-items:center;gap:var(--space-sm)}.title-prefix{color:var(--accent)}.terminal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hard);overflow:hidden}.terminal-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:1px solid var(--border)}.terminal-dot{width:12px;height:12px;border-radius:50%}.terminal-dot.red{background:var(--error)}.terminal-dot.yellow{background:var(--warning)}.terminal-dot.green{background:var(--success)}.terminal-title{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted);margin-left:auto}.terminal-body{padding:var(--space-lg);font-family:JetBrains Mono,monospace;font-size:.875rem}.terminal-line{margin-bottom:var(--space-sm)}.prompt{color:var(--accent);margin-right:var(--space-sm)}.terminal-output{color:var(--text-secondary);margin-bottom:var(--space-md);padding-left:var(--space-lg);min-height:1.6em}.output-name{color:var(--accent);font-weight:600}.status-online{color:var(--success);animation:blink 1s infinite}.cursor{color:var(--accent);animation:cursorBlink .8s infinite}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.btn{font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:500;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;transition:var(--transition-fast);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.btn-primary{background:var(--accent);color:var(--bg-primary);border-color:var(--accent);box-shadow:var(--shadow-hard-sm)}.btn-primary:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-hard);text-decoration:none}.btn-secondary{background:transparent;color:var(--text-primary);border-color:var(--border);box-shadow:var(--shadow-hard-sm)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);transform:translate(-2px,-2px);box-shadow:var(--shadow-hard);text-decoration:none}.card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hard);overflow:hidden;transition:var(--transition-normal)}.card:hover{border-color:var(--accent);transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--accent),0 0 20px #00ff411a}.card-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:1px solid var(--border)}.card-icon{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.875rem}.card-label{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted)}.card-body{padding:var(--space-lg)}.skill-tag{font-family:JetBrains Mono,monospace;font-size:.75rem;padding:var(--space-xs) var(--space-sm);background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent);transition:var(--transition-fast)}.skill-tag:hover{background:var(--accent);color:var(--bg-primary)}.glass{background:#1a1a1acc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,255,65,.1)}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 20px #00ff414d}50%{box-shadow:0 0 40px #00ff4180}}.text-accent{color:var(--accent)}.text-muted{color:var(--text-muted)}.text-center{text-align:center}.glow{box-shadow:var(--shadow-glow)}.glow-lg{box-shadow:var(--shadow-glow-lg)}@media(max-width:1024px){.container{padding:0 var(--space-lg)}}@media(max-width:768px){.container{padding:0 var(--space-md)}.section-title{font-size:1.5rem}.terminal-body{font-size:.75rem;padding:var(--space-md)}section{padding:var(--space-2xl) 0}}@media(max-width:480px){html{font-size:14px}section{padding:var(--space-xl) 0}.btn{padding:var(--space-sm) var(--space-lg);font-size:.8rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skip-link{position:fixed;top:-60px;left:var(--space-md);background:var(--accent);color:var(--bg-primary);padding:var(--space-sm) var(--space-lg);border-radius:0 0 var(--radius-md) var(--radius-md);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:600;z-index:10001;transition:top .3s ease;text-decoration:none}.skip-link:focus{top:0;outline:2px solid var(--bg-primary);outline-offset:-4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-surface) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.6s infinite;border-radius:var(--radius-md)}.skeleton-line{height:1em;margin-bottom:var(--space-sm)}.skeleton-line-full{width:100%}.skeleton-line-lg{width:75%}.skeleton-line-md{width:55%}.skeleton-line-sm{width:35%}.skeleton-box{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-surface) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.6s infinite;border-radius:var(--radius-lg);border:1px solid var(--border)}.skeleton-tag{display:inline-block;width:56px;height:24px;border-radius:var(--radius-sm)}.skeleton-circle{border-radius:50%}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-3xl) var(--space-lg);text-align:center}.error-icon{font-family:JetBrains Mono,monospace;font-size:2rem;color:var(--error);width:64px;height:64px;display:flex;align-items:center;justify-content:center;border:2px solid var(--error);border-radius:var(--radius-lg);background:#ff3e3e14}.error-message{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--text-secondary);max-width:400px;line-height:1.7}.error-message code{color:var(--error);font-size:.8rem}.error-retry{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-xl);cursor:pointer;transition:var(--transition-fast)}.error-retry:hover{background:var(--accent);color:var(--bg-primary)}
