.portfolio-container{min-height:100vh;position:relative}.pixel-navigation{position:fixed;top:50%;right:var(--pixel-6x);transform:translateY(-50%);z-index:100;opacity:0;visibility:hidden;transition:all .3s ease}.pixel-navigation.visible{opacity:1;visibility:visible}.nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--pixel-2x)}.nav-button{display:flex;align-items:center;gap:var(--pixel-2x);padding:var(--pixel-2x) var(--pixel-3x);background:var(--color-bg-secondary);border:2px solid var(--color-primary);color:var(--color-primary);font-family:"Press Start 2P",Courier New,Lucida Console,monospace;font-size:.6rem;cursor:pointer;transition:all .2s ease;min-width:120px;justify-content:flex-start;box-shadow:var(--shadow-pixel)}.nav-button:hover,.nav-button.active{background:var(--color-primary);color:var(--color-bg-primary);transform:translate(-2px,-2px);box-shadow:6px 6px #2dd4bf4d}.nav-icon{font-size:.8rem}.nav-label{font-size:.5rem}.section-container{max-width:1200px;margin:0 auto;padding:var(--pixel-8x) var(--pixel-6x)}.section-title{text-align:center;margin-bottom:var(--pixel-8x);position:relative}.section-title:after{content:"";display:block;width:100px;height:3px;background:var(--color-primary);margin:var(--pixel-4x) auto;box-shadow:var(--shadow-pixel)}.loading-content{text-align:center}.loading-status{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:var(--pixel-8x) 0}.loading-percent{margin-top:var(--pixel-4x);color:var(--color-primary)}.loading-sprites{margin-top:var(--pixel-8x);display:flex;justify-content:center;gap:var(--pixel-4x)}.pixel-sprite{font-size:2rem;animation:bounce 1.5s infinite ease-in-out}.sprite-1{animation-delay:0s;color:var(--color-primary)}.sprite-2{animation-delay:.3s;color:var(--color-secondary)}.sprite-3{animation-delay:.6s;color:var(--color-tertiary)}.sprite-4{animation-delay:.9s;color:var(--color-quaternary)}@keyframes bounce{0%,80%,to{transform:scale(1)}40%{transform:scale(1.2)}}.hero-section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;padding:var(--pixel-8x) var(--pixel-6x)}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--pixel-8x);align-items:center;max-width:1200px;width:100%}.hero-text{text-align:left}.hero-title{font-size:clamp(2rem,5vw,4rem);margin-bottom:var(--pixel-6x)}.hero-subtitle{font-size:clamp(1rem,2.5vw,1.5rem);color:var(--color-tertiary);margin-bottom:var(--pixel-6x);display:flex;align-items:baseline;line-height:1.2}.typing-prefix{color:var(--color-primary);margin-right:var(--pixel-2x)}.typing-text{display:inline-block;min-width:1ch}.cursor{width:.75ch;height:1em;background:var(--color-primary);display:inline-block;margin-left:2px;animation:blink 1s steps(1) infinite;vertical-align:baseline}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-description{font-size:clamp(.8rem,1.5vw,1rem);margin-bottom:var(--pixel-8x);line-height:1.8}.hero-buttons{display:flex;gap:var(--pixel-4x);flex-wrap:wrap}.hero-avatar{display:flex;justify-content:center;align-items:center;position:relative}.pixel-avatar{position:relative;z-index:2}.avatar-container{width:200px;height:200px;border:4px solid var(--color-primary);background:var(--color-bg-secondary);box-shadow:var(--shadow-pixel);display:flex;flex-direction:column;align-items:center;justify-content:center}.avatar-face{margin-bottom:var(--pixel-4x)}.avatar-eyes{display:flex;gap:var(--pixel-4x);margin-bottom:var(--pixel-3x)}.eye{width:var(--pixel-4x);height:var(--pixel-4x);background:var(--color-primary);animation:blink-eyes 3s infinite}@keyframes blink-eyes{0%,90%,to{height:var(--pixel-4x)}95%{height:2px}}.avatar-mouth{width:var(--pixel-6x);height:2px;background:var(--color-primary)}.shirt{width:60px;height:40px;background:var(--color-secondary);border:2px solid var(--color-primary)}.floating-icons{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.floating-icon{position:absolute;font-size:1.5rem;color:var(--color-tertiary);animation:float 3s ease-in-out infinite}.icon-1{top:10%;left:10%;animation-delay:0s}.icon-2{top:20%;right:10%;animation-delay:.5s}.icon-3{bottom:30%;left:15%;animation-delay:1s}.icon-4{bottom:10%;right:20%;animation-delay:1.5s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.scroll-indicator{position:absolute;bottom:var(--pixel-8x);left:50%;transform:translate(-50%);text-align:center;animation:bounce-arrow 2s infinite}.scroll-arrow{font-size:1.5rem;color:var(--color-primary);margin-bottom:var(--pixel-2x)}@keyframes bounce-arrow{0%,20%,50%,80%,to{transform:translateY(0) translate(-50%)}40%{transform:translateY(-10px) translate(-50%)}60%{transform:translateY(-5px) translate(-50%)}}.about-section{padding:var(--pixel-8x) 0;background:var(--color-bg-accent)}.about-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--pixel-8x);margin-top:var(--pixel-6x)}.system-info{font-family:monospace;font-size:.8rem}.info-label{color:var(--color-primary);font-weight:700}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--pixel-4x);margin-bottom:var(--pixel-6x)}.stat-card{border:2px solid;padding:var(--pixel-4x);text-align:center;background:var(--color-bg-secondary)}.stat-primary{border-color:var(--color-primary)}.stat-secondary{border-color:var(--color-secondary)}.stat-tertiary{border-color:var(--color-tertiary)}.stat-quaternary{border-color:var(--color-quaternary)}.stat-value{font-size:2rem;font-weight:700;display:block;margin-bottom:var(--pixel-2x)}.stat-primary .stat-value{color:var(--color-primary)}.stat-secondary .stat-value{color:var(--color-secondary)}.stat-tertiary .stat-value{color:var(--color-tertiary)}.stat-quaternary .stat-value{color:var(--color-quaternary)}.achievements{display:flex;flex-direction:column;gap:var(--pixel-2x)}.achievement{font-size:.8rem;padding:var(--pixel-2x);background:var(--color-bg-primary);border:1px solid var(--color-primary)}.skills-section{padding:var(--pixel-8x) 0}.skills-navigation{display:flex;justify-content:center;gap:var(--pixel-2x);margin-bottom:var(--pixel-8x);flex-wrap:wrap}.nav-btn{font-family:"Press Start 2P",Courier New,Lucida Console,monospace;font-size:.7rem;padding:var(--pixel-3x) var(--pixel-4x);border:2px solid var(--color-primary);background:transparent;color:var(--color-primary);cursor:pointer;transition:all .2s ease}.nav-btn:hover,.nav-btn.active{background:var(--color-primary);color:var(--color-bg-primary);transform:translate(2px,2px)}.category-title{text-align:center;margin-bottom:var(--pixel-6x)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--pixel-6x);margin-bottom:var(--pixel-8x)}.skill-card{background:var(--color-bg-secondary);border:2px solid var(--color-primary);padding:var(--pixel-4x)}.skill-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--pixel-3x)}.skill-icon{font-size:1.2rem;margin-right:var(--pixel-2x)}.skill-name{flex:1;font-size:.8rem}.skill-level{color:var(--color-tertiary);font-size:.7rem}.skill-bar{width:100%}.skill-bar-bg{width:100%;height:var(--pixel-2x);background:var(--color-bg-primary);border:1px solid var(--color-primary);position:relative}.skill-bar-fill{height:100%;background:var(--color-primary);animation:fillBar 1s ease-out forwards;width:0%}@keyframes fillBar{to{width:var(--skill-width, 0%)}}.specializations{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--pixel-4x)}.spec-item{display:flex;align-items:center;gap:var(--pixel-3x);padding:var(--pixel-3x);background:var(--color-bg-primary);border:1px solid var(--color-primary)}.spec-icon{font-size:1.2rem}.projects-section{padding:var(--pixel-8x) 0;background:var(--color-bg-accent)}.projects-filter{display:flex;justify-content:center;gap:var(--pixel-2x);margin-bottom:var(--pixel-8x);flex-wrap:wrap}.filter-btn{font-family:"Press Start 2P",Courier New,Lucida Console,monospace;font-size:.6rem;padding:var(--pixel-2x) var(--pixel-4x);border:2px solid var(--color-secondary);background:transparent;color:var(--color-secondary);cursor:pointer;transition:all .2s ease}.filter-btn:hover,.filter-btn.active{background:var(--color-secondary);color:var(--color-text-primary);transform:translate(2px,2px)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--pixel-6x);margin-bottom:var(--pixel-8x)}.project-card{background:var(--color-bg-secondary);border:3px solid var(--color-primary);box-shadow:var(--shadow-pixel);padding:var(--pixel-6x);display:flex;flex-direction:column;height:100%}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--pixel-4x)}.project-icon{font-size:2rem}.status-badge{font-size:.6rem;padding:var(--pixel-1x) var(--pixel-2x);border:1px solid;background:transparent}.status-badge.live{color:var(--color-primary);border-color:var(--color-primary)}.status-badge.development{color:var(--color-tertiary);border-color:var(--color-tertiary)}.project-content{flex:1;margin-bottom:var(--pixel-4x)}.project-title{font-size:1.1rem;margin-bottom:var(--pixel-3x);color:var(--color-quaternary)}.project-description{font-size:.8rem;line-height:1.6;margin-bottom:var(--pixel-4x)}.project-tech{display:flex;flex-wrap:wrap;gap:var(--pixel-2x);margin-bottom:var(--pixel-4x)}.tech-tag{font-size:.6rem;padding:var(--pixel-1x) var(--pixel-2x);background:var(--color-bg-primary);border:1px solid var(--color-primary);color:var(--color-primary)}.project-actions{display:flex;gap:var(--pixel-3x)}.projects-stats .stats-row{display:flex;justify-content:space-around;text-align:center}.stat{display:flex;flex-direction:column;gap:var(--pixel-2x)}.stat-number{font-size:2rem;color:var(--color-primary)}.stat-label{font-size:.7rem;color:var(--color-text-secondary)}.contact-section{padding:var(--pixel-8x) 0}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--pixel-8x);margin-top:var(--pixel-6x)}.status-indicators{display:flex;flex-direction:column;gap:var(--pixel-3x)}.status-item{display:flex;align-items:center;gap:var(--pixel-3x);font-size:.8rem}.status-dot{width:var(--pixel-2x);height:var(--pixel-2x);background:var(--color-secondary);border-radius:50%}.status-dot.online{background:var(--color-primary);animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.social-links{display:flex;flex-direction:column;gap:var(--pixel-3x)}.social-link{display:flex;align-items:center;gap:var(--pixel-3x);padding:var(--pixel-3x);background:var(--color-bg-primary);border:2px solid var(--color-primary);color:var(--color-text-primary);text-decoration:none;transition:all .2s ease}.social-link:hover{background:var(--color-primary);color:var(--color-bg-primary);transform:translate(2px,2px)}.interests-list{list-style:none;padding:0}.interests-list li{padding:var(--pixel-2x) 0;font-size:.8rem;color:var(--color-text-secondary)}.contact-form{display:flex;flex-direction:column;gap:var(--pixel-4x)}.form-group{display:flex;flex-direction:column;gap:var(--pixel-2x)}.form-group label{font-size:.7rem;color:var(--color-primary)}.form-input,.form-textarea{font-family:"Press Start 2P",Courier New,Lucida Console,monospace;font-size:.7rem;padding:var(--pixel-3x);border:2px solid var(--color-primary);background:var(--color-bg-primary);color:var(--color-text-primary)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:var(--shadow-pixel-red)}.form-textarea{resize:vertical;min-height:120px}.form-submit{align-self:flex-start}.form-submit.loading{opacity:.7;cursor:not-allowed}.form-success{padding:var(--pixel-4x);background:var(--color-bg-primary);border:2px solid var(--color-primary);color:var(--color-primary);margin-bottom:var(--pixel-4x)}.portfolio-footer{margin-top:var(--pixel-8x);padding-top:var(--pixel-8x);border-top:2px solid var(--color-primary);text-align:center}.footer-text{font-size:.8rem;margin-bottom:var(--pixel-2x)}.footer-subtext{font-size:.6rem;color:var(--color-text-secondary)}@media (max-width: 1024px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-text{text-align:center}.about-content,.contact-content{grid-template-columns:1fr}}@media (max-width: 768px){.section-container,.hero-section{padding:var(--pixel-6x) var(--pixel-4x)}.hero-buttons{justify-content:center}.skills-grid,.projects-grid,.stats-grid,.specializations{grid-template-columns:1fr}}@media (max-width: 480px){.hero-buttons{flex-direction:column;align-items:center}.projects-stats .stats-row{flex-direction:column;gap:var(--pixel-4x)}.skills-navigation,.projects-filter{flex-direction:column;align-items:center}}@font-face{font-family:"Press Start 2P";src:url(/fonts/press-start-2p.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--color-bg-primary: #0d1117;--color-bg-secondary: #161b22;--color-bg-accent: #21262d;--color-primary: #2dd4bf;--color-secondary: #8b5cf6;--color-tertiary: #06b6d4;--color-quaternary: #a855f7;--color-text-primary: #f0f6fc;--color-text-secondary: #8b949e;--color-text-accent: #2dd4bf;--shadow-pixel: 4px 4px 0px rgba(45, 212, 191, .2);--shadow-pixel-red: 4px 4px 0px rgba(139, 92, 246, .2);--shadow-pixel-gold: 4px 4px 0px rgba(6, 182, 212, .2);--pixel-unit: 4px;--pixel-1x: 4px;--pixel-2x: 8px;--pixel-3x: 12px;--pixel-4x: 16px;--pixel-6x: 24px;--pixel-8x: 32px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:"Press Start 2P",Courier New,Lucida Console,monospace;background:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;overflow-x:hidden;image-rendering:-moz-crisp-edges;image-rendering:-webkit-crisp-edges;image-rendering:pixelated;image-rendering:crisp-edges}::-webkit-scrollbar{width:var(--pixel-4x)}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-primary);border:2px solid var(--color-bg-primary)}::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}h1,h2,h3,h4,h5,h6{font-family:"Press Start 2P",Courier New,Lucida Console,monospace;line-height:1.2;margin-bottom:var(--pixel-4x)}h1{font-size:clamp(1.5rem,4vw,3rem);color:var(--color-primary);text-shadow:var(--shadow-pixel)}h2{font-size:clamp(1.2rem,3vw,2rem);color:var(--color-tertiary);text-shadow:var(--shadow-pixel-gold)}h3{font-size:clamp(1rem,2.5vw,1.5rem);color:var(--color-quaternary)}p{font-size:clamp(.7rem,1.5vw,.9rem);line-height:1.8;margin-bottom:var(--pixel-4x);color:var(--color-text-secondary)}.btn{font-family:"Press Start 2P",Courier New,Lucida Console,monospace;font-size:.75rem;padding:var(--pixel-3x) var(--pixel-6x);border:3px solid;background:transparent;cursor:pointer;transition:all .1s ease;text-decoration:none;display:inline-block;text-align:center;position:relative;text-transform:uppercase}.btn-primary{color:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--shadow-pixel)}.btn-primary:hover{background:var(--color-primary);color:var(--color-bg-primary);transform:translate(2px,2px);box-shadow:2px 2px #2dd4bf4d}.btn-secondary{color:var(--color-secondary);border-color:var(--color-secondary);box-shadow:var(--shadow-pixel-red)}.btn-secondary:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:translate(2px,2px);box-shadow:2px 2px #8b5cf64d}.pixel-container{border:3px solid var(--color-primary);background:var(--color-bg-secondary);box-shadow:var(--shadow-pixel);padding:var(--pixel-6x);margin:var(--pixel-4x) 0}.glitch{position:relative;animation:glitch 2s infinite}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch:before{animation:glitch-1 .5s infinite;color:var(--color-secondary);z-index:-1}.glitch:after{animation:glitch-2 .5s infinite;color:var(--color-quaternary);z-index:-2}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}@keyframes glitch-1{0%{transform:translate(0)}20%{transform:translate(2px,2px)}40%{transform:translate(2px,-2px)}60%{transform:translate(-2px,2px)}80%{transform:translate(-2px,-2px)}to{transform:translate(0)}}@keyframes glitch-2{0%{transform:translate(0)}20%{transform:translate(-2px,-2px)}40%{transform:translate(2px,2px)}60%{transform:translate(-2px,-2px)}80%{transform:translate(2px,2px)}to{transform:translate(0)}}.pixel-grid{position:fixed;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(45,212,191,.0125) 1px,transparent 1px),linear-gradient(90deg,rgba(45,212,191,.0125) 1px,transparent 1px);background-size:var(--pixel-8x) var(--pixel-8x);z-index:-10;animation:grid-move 20s linear infinite}@keyframes grid-move{0%{transform:translate(0)}to{transform:translate(var(--pixel-8x),var(--pixel-8x))}}@media (max-width: 768px){:root{--pixel-unit: 3px;--pixel-1x: 3px;--pixel-2x: 6px;--pixel-3x: 9px;--pixel-4x: 12px;--pixel-6x: 18px;--pixel-8x: 24px}.btn{font-size:.6rem;padding:var(--pixel-2x) var(--pixel-4x)}p{font-size:.6rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(var(--pixel-8x))}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeInUp .6s ease forwards}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-bg-primary);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1000}.loading-bar{width:300px;height:var(--pixel-4x);border:3px solid var(--color-primary);background:var(--color-bg-secondary);position:relative;margin-top:var(--pixel-6x)}.loading-fill{height:100%;background:var(--color-primary);width:0%;animation:loading 3s ease-in-out forwards}@keyframes loading{to{width:100%}}
