.app{min-height:100vh;position:relative}.navbar{z-index:1000;width:100%;transition:all var(--transition-base);background:0 0;position:fixed;top:0;left:0}.navbar.scrolled{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);background:#0a0f1ce6}.navbar-inner{max-width:var(--max-width);height:var(--nav-height);padding:0 var(--space-xl);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.navbar-logo{font-family:var(--font-mono);font-size:var(--fs-sm);align-items:center;font-weight:600;text-decoration:none;display:flex}.navbar-logo:hover{opacity:.85}.logo-prompt{color:var(--accent-primary)}.logo-name{color:var(--text-primary)}.logo-ext{color:var(--text-muted)}.navbar-links{align-items:center;gap:2px;list-style:none;display:flex}.nav-link{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-transform:lowercase;background:0 0;border:none;padding:6px 14px}.nav-link:hover{color:var(--text-primary);background:#ffffff0a}.nav-link.active{color:var(--accent-primary);background:#00ffc814}.navbar-toggle{color:var(--text-primary);cursor:pointer;padding:var(--space-sm);background:0 0;border:none;display:none}@media (width<=768px){.navbar-inner{padding:0 var(--space-md)}.navbar-links{top:var(--nav-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:var(--space-md);border-bottom:1px solid var(--border-subtle);background:#0a0f1cf2;flex-direction:column;display:none;position:fixed;left:0;right:0}.navbar-links.open{display:flex}.navbar-toggle{display:block}.nav-link{text-align:left;width:100%;font-size:var(--fs-sm);padding:10px 16px}}.hero{z-index:1;background:var(--gradient-hero);min-height:100vh;padding:var(--nav-height) 0 var(--space-2xl);justify-content:center;align-items:center;display:flex;position:relative}.hero-content{width:100%;max-width:820px;padding:0 var(--space-xl);gap:var(--space-md);flex-direction:column;display:flex}.hero-terminal{overflow:hidden}.hero-term-body{cursor:text;min-height:380px;max-height:520px;overflow-y:auto;padding:var(--space-md) var(--space-lg)!important}.term-line{font-size:var(--fs-xs);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);line-height:1.7}.boot-welcome{color:var(--text-primary);font-weight:600}.boot-dim{color:var(--text-muted)}.boot-stats{color:var(--accent-primary);font-weight:500}.boot-accent{color:var(--accent-secondary)}.term-cmd{color:var(--text-primary)}.term-output{color:var(--text-secondary);white-space:pre-wrap}.term-neofetch{color:var(--accent-primary);white-space:pre;font-size:.65rem;line-height:1.4}.term-error{color:#ff5f57}.term-input-row{align-items:center;gap:var(--space-sm);margin-top:2px;display:flex}.term-prompt{color:var(--accent-primary);font-size:var(--fs-xs);flex-shrink:0;font-weight:500}.term-input{color:var(--text-primary);font-family:inherit;font-size:var(--fs-xs);caret-color:var(--accent-primary);background:0 0;border:none;outline:none;flex:1;padding:0}.hero-hint{text-align:center;font-size:var(--fs-xs);color:var(--text-muted);opacity:0;animation:.5s .3s forwards fadeIn}.hero-hint code{color:var(--accent-primary);font-size:var(--fs-xs);background:#00ffc80f;border-radius:3px;padding:1px 6px}@keyframes fadeIn{to{opacity:1}}.btn{align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--fs-sm);cursor:pointer;transition:all var(--transition-base);border:none;padding:10px 24px;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent-primary);color:var(--bg-primary)}.btn-primary:hover{opacity:.9;color:var(--bg-primary);transform:translateY(-1px)}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border-subtle);background:0 0}.btn-ghost:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-1px)}@media (width<=768px){.hero-content{padding:0 var(--space-md)}.hero-term-body{min-height:320px;max-height:450px;padding:var(--space-sm) var(--space-md)!important}.term-line{font-size:.7rem}.term-neofetch{font-size:.55rem}}@media (width<=480px){.hero-content{padding:0 var(--space-sm)}.hero-term-body{min-height:280px}.term-line{font-size:.65rem}}.about-layout{max-width:var(--content-width);gap:var(--space-2xl);flex-direction:column;margin:0 auto;display:flex}.about-body{flex-direction:column;gap:0;display:flex}.about-code{font-family:var(--font-mono);font-size:clamp(.7rem, 2vw, var(--fs-sm));line-height:2;overflow-x:auto}.about-code p{white-space:nowrap}.about-bio-block{margin-top:var(--space-lg);padding:var(--space-md) var(--space-lg);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#c3e88d08;border-left:2px solid #c3e88d33}.bio-decorator{font-family:var(--font-mono);font-size:var(--fs-sm);color:#c3e88d;opacity:.5;line-height:1.2;display:block}.about-bio{gap:var(--space-md);padding:var(--space-md) 0;flex-direction:column;display:flex}.about-bio p{color:var(--text-secondary);line-height:1.8;font-size:var(--fs-sm)}.bio-highlight{color:var(--accent-primary);font-weight:500}.about-stats{gap:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.stat-card{text-align:center;padding:var(--space-lg) var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:border-color var(--transition-base);background:#11182766}.stat-card:hover{border-color:var(--border-accent)}.stat-number{font-family:var(--font-mono);font-size:var(--fs-2xl);color:var(--accent-primary);font-weight:700;display:block}.stat-label{font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--space-xs);display:block}@media (width<=768px){.about-stats{grid-template-columns:repeat(2,1fr)}.about-bio-block{padding:var(--space-sm) var(--space-md)}}@media (width<=480px){.about-stats{gap:var(--space-sm)}.stat-card{padding:var(--space-md) var(--space-sm)}.stat-number{font-size:var(--fs-xl)}}.exp-list{gap:var(--space-lg);max-width:var(--content-width);flex-direction:column;margin:0 auto;display:flex}.exp-card{transition:border-color var(--transition-base)}.exp-card:hover{border-color:var(--border-accent)}.exp-top{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.exp-role{font-size:clamp(var(--fs-base), 2.5vw, var(--fs-lg));color:var(--text-primary);margin-bottom:2px;font-weight:600}.exp-company{color:var(--accent-primary);font-size:var(--fs-sm);margin-bottom:4px;font-weight:500}.exp-meta{align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--fs-xs);flex-wrap:wrap;display:flex}.exp-sep{opacity:.4}.exp-type{font-family:var(--font-mono);font-size:var(--fs-xs);border-radius:var(--radius-sm);white-space:nowrap;color:var(--accent-primary);background:#00ffc80f;border:1px solid #00ffc81f;flex-shrink:0;padding:3px 10px}.exp-toggle{align-items:center;gap:var(--space-sm);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);cursor:pointer;padding:var(--space-sm) 0;margin-top:var(--space-md);transition:color var(--transition-fast);background:0 0;border:none;display:flex}.exp-toggle:hover{color:var(--accent-primary)}.exp-toggle svg{transition:transform var(--transition-base)}.exp-toggle svg.rotated{transform:rotate(180deg)}.exp-details{max-height:0;transition:max-height .4s;overflow:hidden}.exp-details.open{max-height:600px}.exp-details ul{padding-top:var(--space-sm);gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.exp-details li{padding-left:var(--space-lg);color:var(--text-secondary);font-size:var(--fs-sm);line-height:1.6;position:relative}.exp-details li:before{content:"▸";color:var(--accent-primary);font-size:var(--fs-xs);position:absolute;left:0}@media (width<=768px){.exp-top{flex-direction:column}.exp-type{align-self:flex-start}.exp-details li{font-size:var(--fs-xs)}}.projects-grid{gap:var(--space-lg);grid-template-columns:repeat(2,1fr);max-width:860px;margin:0 auto;display:grid}.project-card{transition:border-color var(--transition-base), transform var(--transition-base)}.project-card:hover{border-color:var(--border-accent);transform:translateY(-3px)}.project-body{gap:var(--space-sm);flex-direction:column;display:flex}.project-index{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);opacity:.5;margin-left:auto}.project-title{font-size:clamp(var(--fs-sm), 2vw, var(--fs-base));color:var(--text-primary);font-weight:600}.project-desc-block{padding:var(--space-sm) var(--space-md);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#c3e88d08;border-left:2px solid #c3e88d26;flex:1}.project-desc{color:var(--text-secondary);font-size:var(--fs-xs);line-height:1.7}.project-footer{gap:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.project-tags{gap:var(--space-xs);flex-wrap:wrap;display:flex}.project-tag{color:var(--text-muted);background:#ffffff08;border-radius:4px;padding:2px 8px;font-size:.65rem}.project-links{gap:var(--space-sm);display:flex}.project-link{font-size:var(--fs-xs);color:var(--accent-primary);border:1px solid var(--border-accent);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.project-link:hover{color:var(--accent-primary);background:#00ffc814}@media (width<=768px){.projects-grid{max-width:var(--content-width);grid-template-columns:1fr}}.skills-terminal{max-width:var(--content-width);margin:0 auto}.skills-list{gap:var(--space-xl);flex-direction:column;display:flex}.skill-group-title{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--accent-primary);margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.skill-items{gap:var(--space-sm);flex-wrap:wrap;display:flex}.skill-chip{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-primary);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);transition:all var(--transition-fast);cursor:default;background:#ffffff0a;padding:6px 14px}.skill-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#00ffc80f}@media (width<=768px){.skills-list{gap:var(--space-lg)}.skill-chip{font-size:var(--fs-xs);padding:5px 10px}}@media (width<=480px){.skill-items{gap:var(--space-xs)}.skill-chip{padding:4px 8px;font-size:.7rem}}.edu-list{gap:var(--space-lg);max-width:var(--content-width);grid-template-columns:repeat(2,1fr);margin:0 auto;display:grid}.edu-card{transition:border-color var(--transition-base)}.edu-card.current,.edu-card:hover{border-color:var(--border-accent)}.edu-running{font-family:var(--font-mono);font-size:var(--fs-xs);color:#28c840;margin-left:auto}.edu-degree{font-size:clamp(var(--fs-sm), 2vw, var(--fs-base));color:var(--text-primary);margin-bottom:4px;font-weight:600}.edu-institution{color:var(--accent-primary);font-size:var(--fs-sm);margin-bottom:4px;font-weight:500}.edu-meta{color:var(--text-muted);font-size:var(--fs-xs);margin-bottom:var(--space-sm)}.edu-details{color:var(--text-secondary);font-size:var(--fs-sm);line-height:1.6}.edu-cursor{margin-top:var(--space-sm);font-family:var(--font-mono);display:inline-block}@media (width<=768px){.edu-list{grid-template-columns:1fr}.edu-institution{font-size:var(--fs-xs)}}.achievements-layout{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);max-width:900px;margin:0 auto;display:grid}.achievement-group-title{align-items:center;gap:var(--space-sm);font-size:var(--fs-sm);color:var(--accent-primary);margin-bottom:var(--space-md);font-weight:500;display:flex}.achievement-card{padding:var(--space-lg);margin-bottom:var(--space-sm)}.achievement-title{font-size:var(--fs-sm);color:var(--text-primary);margin-bottom:4px;font-weight:600}.achievement-venue{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--accent-secondary);margin-bottom:var(--space-sm);line-height:1.5;display:block}.achievement-period{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:var(--space-sm);display:block}.achievement-desc{color:var(--text-secondary);font-size:var(--fs-xs);line-height:1.6}.achievement-link{font-size:var(--fs-xs);color:var(--accent-primary);margin-top:var(--space-sm);transition:opacity var(--transition-fast);align-items:center;gap:4px;display:inline-flex}.achievement-link:hover{opacity:.8;color:var(--accent-primary)}@media (width<=768px){.achievements-layout{gap:var(--space-lg);grid-template-columns:1fr}.achievement-card{padding:var(--space-md)}}.contact-layout{gap:var(--space-2xl);max-width:var(--content-width);grid-template-columns:1fr 1.2fr;align-items:start;margin:0 auto;display:grid}.contact-text{color:var(--text-secondary);font-size:clamp(var(--fs-base), 2vw, var(--fs-lg));margin-bottom:var(--space-xl);line-height:1.7}.contact-links{gap:var(--space-md);flex-direction:column;display:flex}.contact-link{align-items:center;gap:var(--space-sm);color:var(--text-secondary);font-size:var(--fs-sm);transition:color var(--transition-fast);word-break:break-all;text-decoration:none;display:flex}.contact-link:hover{color:var(--accent-primary)}.contact-link svg{color:var(--accent-primary);flex-shrink:0}.contact-form{gap:var(--space-md);flex-direction:column;display:flex}.form-field{flex-direction:column;gap:4px;display:flex}.form-label{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);text-transform:lowercase}.form-input{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--fs-sm);color:var(--text-primary);transition:border-color var(--transition-fast);resize:vertical;background:#00000040;outline:none;width:100%;padding:10px 14px}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:var(--accent-primary)}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-btn{justify-content:center;width:100%}.btn-success{color:#fff;background:#28c840}.btn-error{color:#fff;background:#ff5f57}.spinner{border:2px solid #0003;border-top-color:var(--bg-primary);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=768px){.contact-layout{gap:var(--space-xl);grid-template-columns:1fr}}@media (width<=480px){.contact-text{margin-bottom:var(--space-md)}}.footer{border-top:1px solid var(--border-subtle);padding:var(--space-2xl) var(--space-xl);z-index:1;position:relative}.footer-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.footer-brand{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-secondary)}.footer-prompt{color:var(--accent-primary)}.footer-copy{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.footer-socials{gap:var(--space-md);display:flex}.footer-socials a{color:var(--text-muted);transition:color var(--transition-fast)}.footer-socials a:hover{color:var(--accent-primary)}@media (width<=480px){.footer-inner{gap:var(--space-md);text-align:center;flex-direction:column}}:root{--bg-primary:#0a0f1c;--bg-secondary:#111827;--bg-card:#1a2236;--bg-card-hover:#1f2a42;--bg-glass:#111827b3;--bg-glass-border:#00ffc814;--accent-primary:#00ffc8;--accent-secondary:#00b4d8;--accent-tertiary:#7c3aed;--accent-glow:#00ffc826;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--border-subtle:#94a3b81a;--border-accent:#00ffc833;--gradient-accent:linear-gradient(135deg, #00ffc8 0%, #00b4d8 50%, #7c3aed 100%);--gradient-hero:radial-gradient(ellipse at 20% 50%, #00ffc814 0%, transparent 50%), radial-gradient(ellipse at 80% 20%, #7c3aed0f 0%, transparent 50%);--font-mono:"JetBrains Mono", "Fira Code", "Consolas", monospace;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-lg:1.125rem;--fs-xl:1.25rem;--fs-2xl:1.5rem;--fs-3xl:1.875rem;--fs-4xl:2.25rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--content-width:760px;--max-width:1100px;--nav-height:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 4px #00000040;--shadow-md:0 4px 16px #00000059;--shadow-lg:0 8px 32px #00000073;--shadow-glow:0 0 16px #00ffc81f;--transition-fast:.15s ease;--transition-base:.25s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-height)}body{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;line-height:1.7;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-card);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}::selection{color:var(--accent-primary);background:#00ffc833}h1,h2,h3,h4{font-family:var(--font-mono);color:var(--text-primary);font-weight:600;line-height:1.3}a{color:var(--accent-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-secondary)}.section{padding:var(--space-2xl) var(--space-xl);max-width:var(--max-width);margin:0 auto}.section-header{margin-bottom:var(--space-2xl);max-width:var(--content-width);margin-left:auto;margin-right:auto}.section-label{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:var(--space-sm);letter-spacing:.06em;text-transform:uppercase;display:block}.section-title{font-size:clamp(var(--fs-2xl), 3.5vw, var(--fs-3xl));color:var(--text-primary);margin-bottom:var(--space-xs);display:block}.section-divider{background:var(--accent-primary);width:40px;height:2px;margin-top:var(--space-sm);border-radius:2px}.terminal-window{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#0a0f1cd9;overflow:hidden}.terminal-header{border-bottom:1px solid var(--border-subtle);background:#00000040;align-items:center;gap:8px;padding:10px 16px;display:flex}.terminal-dot{border-radius:50%;width:10px;height:10px}.terminal-dot.red{background:#ff5f57}.terminal-dot.yellow{background:#febc2e}.terminal-dot.green{background:#28c840}.terminal-title{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-left:6px;overflow:hidden}.terminal-body{padding:var(--space-lg)}.glass-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:border-color var(--transition-base), box-shadow var(--transition-base);background:#11182780}.glass-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.code-keyword{color:#c792ea}.code-class{color:#ffcb6b}.code-func{color:#82aaff}.code-string{color:#c3e88d}.code-paren{color:var(--text-muted)}.code-self{color:#f07178;font-style:italic}.code-comment{color:var(--text-muted);font-style:italic}.cursor{color:var(--accent-primary)}.cursor.hidden{display:none}.cursor.blink{animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (width<=768px){:root{--nav-height:56px}.section{padding:var(--space-xl) var(--space-md)}.section-header{margin-bottom:var(--space-lg)}.terminal-body{padding:var(--space-md)}.terminal-header{padding:8px 12px}.terminal-dot{width:8px;height:8px}}@media (width<=480px){.section{padding:var(--space-lg) var(--space-sm)}.terminal-body{padding:var(--space-sm)}}
