@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Orbitron:wght@400;700;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Orbitron:wght@400;700;900&family=VT323&display=swap";@import"https://fonts.googleapis.com/css2?family=VT323&display=swap";body{font-family:Courier New,monospace;background-color:#000;color:#00ff41;font-size:clamp(12px,2.5vw,18px)}#root{width:100%;height:100vh;min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}.app{min-height:100vh;background:#000;display:flex;align-items:center;justify-content:center;padding:0;margin:0}.app__computer-screen{width:100vw;height:100vh;background:#000;border:8px solid #333333;border-radius:12px;position:relative;box-sizing:border-box;overflow:hidden;cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAz0lEQVR4nOWXQQ7CIBBF4bR0g/ncuXgMMRiwSkro1GFGI8lftIvO45UO1JhvH/DuBu+SJkAqAFYVABuIOoBVAYjrmq4xyptAKZiL54TLImsCDUCNmAl0AMRMoAMgZgIDgOkmMACYbgIHAaaZwEGAaSZABGA3ASIAuwmcBGAzAcIifA3bLgriV9DLaRPY2YxyBsr3wmMglELifQDePYrUGdVrsT6A5l2K7ZJ4L/x8qBaA2jnB9u6LrYWfOzGFvwFo10LNxx3QEIf6H1QZ5N5/B0fwWMPMbRztAAAAAElFTkSuQmCC) 8 8,auto}.app__computer-screen:before{content:"";position:absolute;inset:8px;background:#0a0a0a;border-radius:4px;border:2px solid #00ff41}.app__computer-screen:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,65,.02) 2px,rgba(0,255,65,.02) 4px);pointer-events:none;z-index:1}.app__content{position:relative;z-index:20;height:100%;display:flex;flex-direction:column;color:#00ff41;box-sizing:border-box;padding:32px}.app__system-header{text-align:center;margin-bottom:24px;color:#00ff41;font-family:"Press Start 2P",monospace;font-size:19px;text-shadow:0 0 10px #00ff41;animation:glow 2s ease-in-out infinite alternate}.app__projects-header{color:#00ff41;font-family:"Press Start 2P",monospace;font-size:14px;margin-bottom:24px;text-align:center}.app__portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;height:100%;flex:1;min-height:0}.app__portfolio-section{background:#00ff410d;border:2px solid #00ff41;border-radius:4px;padding:24px;height:100%;max-height:100%;overflow-y:auto}.app__projects-section{background:#00ff410d;border:2px solid #00ff41;border-radius:4px;padding:24px;overflow:hidden;max-height:100%;position:relative;display:flex;flex-direction:column;height:100%}.app__projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;align-items:start;justify-items:center;margin-bottom:4px;overflow-y:auto;padding-right:8px;max-height:100%}.app__project-carousel{display:flex;flex-direction:column;height:100%;gap:16px}.app__project-navigation{display:flex;justify-content:space-between;align-items:center;padding:0 20px;flex-shrink:0}.app__nav-button{background:#00ff411a;border:2px solid #00ff41;border-radius:4px;color:#00ff41;font-family:"Press Start 2P",monospace;font-size:10px;padding:8px 16px;cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA0ElEQVR4nO2W0QrDIAxF9Wu7F8f1n6ufMUeGhRHaTWNUCgbuWyXHmzTGmLsF3PaC29JMgJQB7JSbh31PMYQPxFAnkBNScpJ/PsY6gQXgzgGG9QL+A9gpAIH9Fd0cwQXAMEdQCNDNERQCqDkCNvOlAOLJCUYuBaieG7iY+RygVjUA6VcthwPErOkAntW0G0AOSx/TIWnCVgDTavkCiK0A2r0gXmCg5MQC8I07pJX2Ap0h5cTyJQVCJ9S2Z3w9SMetSqS2ooE9y7XS2hGPOkp0Gm8KbqvqyXW45gAAAABJRU5ErkJggg==) 8 8,pointer;transition:all .3s ease;text-shadow:0 0 8px #00ff41}.app__nav-button:hover:not(:disabled){background:#00ff4133;border-color:#0f8;color:#0f8;text-shadow:0 0 12px #00ff88;box-shadow:0 0 15px #00ff414d}.app__nav-button:disabled{opacity:.3;cursor:not-allowed}.app__project-counter{color:#00ff41;font-family:"Press Start 2P",monospace;font-size:12px;text-shadow:0 0 8px #00ff41}.app__project-display{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:20px;min-height:0}.app__projects-grid::-webkit-scrollbar{width:8px}.app__projects-grid::-webkit-scrollbar-track{background:#00ff411a;border-radius:4px}.app__projects-grid::-webkit-scrollbar-thumb{background:#00ff41;border-radius:4px;opacity:.7}.app__projects-grid::-webkit-scrollbar-thumb:hover{background:#0f8}.app__project-container{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:16px}.app__tech-list{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;width:400px}.app__tech-item{font-family:VT323,Courier New,monospace;font-size:13px;padding:4px 8px;background:#00ff411a;border:1px solid #00ff41;border-radius:2px;color:#00ff41;letter-spacing:.5px}@keyframes glow{0%{text-shadow:0 0 10px #00ff41}to{text-shadow:0 0 20px #00ff41,0 0 30px #00ff41}}@media (max-width: 768px){.app__computer-screen{border:4px solid #333333;border-radius:8px}.app__content{padding:20px}.app__system-header{font-size:16px;margin-bottom:16px}.app__portfolio-grid{grid-template-columns:1fr;gap:20px}.app__portfolio-section,.app__projects-section{padding:16px}.app__projects-header{font-size:12px;margin-bottom:16px}.app__nav-button{font-size:8px;padding:6px 12px}.app__project-counter{font-size:10px}.app__tech-list{width:100%}.app__tech-item{font-size:11px;padding:3px 6px}}@media (max-width: 480px){.app__computer-screen{border:2px solid #333333;border-radius:4px}.app__content{padding:12px}.app__system-header{font-size:14px;margin-bottom:12px}.app__portfolio-grid{gap:12px}.app__portfolio-section,.app__projects-section{padding:12px}.app__projects-header{font-size:10px;margin-bottom:12px}.app__project-navigation{padding:0 10px}.app__nav-button{font-size:7px;padding:4px 8px}.app__project-counter{font-size:8px}.app__project-display{padding:10px}.app__tech-item{font-size:9px;padding:2px 4px}}@media (max-width: 320px){.app__content{padding:8px}.app__system-header{font-size:12px;margin-bottom:8px}.app__portfolio-section,.app__projects-section{padding:8px}.app__projects-header{font-size:8px}.app__nav-button{font-size:6px;padding:3px 6px}.app__project-counter{font-size:7px}.app__tech-item{font-size:8px;padding:2px 3px}}.project-card{background:#000;border:2px solid #00ff41;border-radius:4px;padding:14px;cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA0ElEQVR4nO2W0QrDIAxF9Wu7F8f1n6ufMUeGhRHaTWNUCgbuWyXHmzTGmLsF3PaC29JMgJQB7JSbh31PMYQPxFAnkBNScpJ/PsY6gQXgzgGG9QL+A9gpAIH9Fd0cwQXAMEdQCNDNERQCqDkCNvOlAOLJCUYuBaieG7iY+RygVjUA6VcthwPErOkAntW0G0AOSx/TIWnCVgDTavkCiK0A2r0gXmCg5MQC8I07pJX2Ap0h5cTyJQVCJ9S2Z3w9SMetSqS2ooE9y7XS2hGPOkp0Gm8KbqvqyXW45gAAAABJRU5ErkJggg==) 8 8,pointer;transition:all .3s ease;position:relative;font-family:Courier New,monospace;-webkit-user-select:none;user-select:none;width:400px;min-height:250px;height:auto;display:flex;flex-direction:column;justify-content:center;box-shadow:0 0 10px #00ff414d,inset 0 0 10px #00ff411a}.project-card:hover{border-color:#0f8;box-shadow:0 0 20px #00ff4180,inset 0 0 15px #00ff4133;cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA0ElEQVR4nO2W0QrDIAxF9Wu7F8f1n6ufMUeGhRHaTWNUCgbuWyXHmzTGmLsF3PaC29JMgJQB7JSbh31PMYQPxFAnkBNScpJ/PsY6gQXgzgGG9QL+A9gpAIH9Fd0cwQXAMEdQCNDNERQCqDkCNvOlAOLJCUYuBaieG7iY+RygVjUA6VcthwPErOkAntW0G0AOSx/TIWnCVgDTavkCiK0A2r0gXmCg5MQC8I07pJX2Ap0h5cTyJQVCJ9S2Z3w9SMetSqS2ooE9y7XS2hGPOkp0Gm8KbqvqyXW45gAAAABJRU5ErkJggg==) 8 8,pointer}.project-card__title{font-family:"Press Start 2P",monospace;font-size:12px;margin-bottom:2px;color:#00ff41;transition:color .3s ease;text-shadow:0 0 8px #00ff41;line-height:1.3;text-align:center}.project-card:hover .project-card__title{color:#0f8;text-shadow:0 0 12px #00ff88}.project-card__description{font-family:VT323,Courier New,monospace;font-size:20px;color:#00ff41;line-height:1.5;opacity:.9;text-align:left;flex:1;padding:12px 16px;letter-spacing:.5px;word-wrap:break-word}@media (max-width: 768px){.project-card{width:350px;min-height:220px;padding:12px}.project-card__title{font-size:11px;margin-bottom:8px}.project-card__description{font-size:18px;padding:10px 14px}}@media (max-width: 480px){.project-card{width:100%;max-width:300px;min-height:180px;padding:10px}.project-card__title{font-size:10px;margin-bottom:6px;line-height:1.2}.project-card__description{font-size:16px;padding:8px 12px;line-height:1.4}}@media (max-width: 320px){.project-card{max-width:280px;min-height:160px;padding:8px}.project-card__title{font-size:9px;margin-bottom:4px}.project-card__description{font-size:14px;padding:6px 10px}}.portfolio{height:100%;color:#00ff41;font-family:Courier New,monospace;display:flex;flex-direction:column}.portfolio__terminal{background:#000;border:1px solid #00ff41;border-radius:4px;height:100%;overflow-y:auto;display:flex;flex-direction:column;flex:1}.portfolio__header{background:#00ff41;color:#000;padding:12px;font-size:16px;font-weight:700;text-align:center;flex-shrink:0}.portfolio__content{padding:24px;flex:1;display:flex;flex-direction:column;justify-content:space-evenly;overflow:hidden}.portfolio__section{margin-bottom:0;flex:1;display:flex;flex-direction:column;justify-content:center}.portfolio__section-title{font-size:18px;margin-bottom:8px;color:#00ff41;font-family:"Press Start 2P",monospace;text-shadow:0 0 8px #00ff41;text-align:center}.portfolio__data{font-family:VT323,Courier New,monospace;font-size:20px;line-height:1.4;color:#00ff41;opacity:.9;margin-left:0;text-align:center}.portfolio__link{color:#0ff;text-decoration:none;transition:color .3s ease}.portfolio__link:hover{color:#fff;text-shadow:0 0 5px #00ffff}.portfolio__email-button{background:transparent!important;border:none!important;cursor:pointer;padding:0;margin:0;font-family:inherit;font-size:inherit;line-height:inherit;text-decoration:none}.prompt{color:#000}.portfolio__cursor{animation:blink 1s infinite}@media (max-width: 768px){.portfolio__terminal{margin:10px;border-radius:2px}.portfolio__header{padding:8px;font-size:14px}.portfolio__content{padding:15px}.portfolio__section{margin-bottom:15px}.portfolio__section-title{font-size:14px;margin-bottom:8px}.portfolio__data{font-size:12px;line-height:1.4}}@media (max-width: 480px){.portfolio__terminal{margin:2px;height:calc(100vh - 4px);border:none}.portfolio__header{padding:4px;font-size:11px}.portfolio__content{padding:6px}.portfolio__section{margin-bottom:6px}.portfolio__section-title{font-size:11px;margin-bottom:3px}.portfolio__data{font-size:12px;line-height:1.2;word-break:break-word}.portfolio__data a,.portfolio__email-button{display:inline-block;margin:0 2px;font-size:12px!important;min-height:28px;line-height:28px;padding:0 6px;border:none;background:transparent;text-decoration:none;color:#0ff;font-family:inherit}.portfolio__section:nth-child(3) .portfolio__data,.portfolio__section:last-of-type .portfolio__data{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:4px!important;margin-top:2px}.portfolio__section:nth-child(3) .portfolio__data a,.portfolio__section:nth-child(3) .portfolio__email-button,.portfolio__section:last-of-type .portfolio__data a,.portfolio__section:last-of-type .portfolio__email-button{display:inline-block!important;width:auto;text-align:center;margin:0!important;font-weight:400;color:#0ff!important;background:transparent!important;border:none!important}}@media (max-width: 320px){.portfolio__terminal{margin:1px;border:none}.portfolio__content{padding:4px}.portfolio__section{margin-bottom:4px}.portfolio__data{font-size:11px;line-height:1.1}.portfolio__section-title{font-size:9px;margin-bottom:2px}.portfolio__data a,.portfolio__email-button{font-size:11px!important;min-height:24px!important;line-height:24px!important;padding:0 4px!important;margin:0!important;border:none!important}.portfolio__section:nth-child(3) .portfolio__data,.portfolio__section:last-of-type .portfolio__data{gap:2px!important;margin-top:1px!important}}@media (max-width: 400px) and (min-width: 350px){.portfolio__data a,.portfolio__email-button{font-size:14px!important;min-height:36px!important;line-height:36px!important;padding:0 12px!important;width:auto!important;border:1px solid #00ffff!important;background:transparent!important;font-weight:400;color:#0ff!important;margin:0!important}.portfolio__section:nth-child(3) .portfolio__data,.portfolio__section:last-of-type .portfolio__data{flex-direction:row!important;gap:10px!important;margin-top:6px!important}.portfolio__section:nth-child(3) .portfolio__data a,.portfolio__section:nth-child(3) .portfolio__email-button,.portfolio__section:last-of-type .portfolio__data a,.portfolio__section:last-of-type .portfolio__email-button{display:inline-block!important;font-family:inherit!important;text-decoration:none!important}}@media (max-height: 500px) and (orientation: landscape){.portfolio__terminal{height:calc(100vh - 5px)}.portfolio__content{padding:8px}.portfolio__section{margin-bottom:8px}}.bootup{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000;color:#00ff41;font-family:"Press Start 2P",VT323,monospace;padding:32px;overflow:hidden;z-index:9999;display:flex;flex-direction:column;justify-content:flex-start}.bootup__text{font-size:14px;line-height:1.4;margin:0;opacity:0;animation:fadeIn .1s ease-in forwards}.bootup__cursor{display:inline-block;background:#00ff41;width:8px;height:1em;animation:blink 1s infinite;margin-left:2px}.bootup__line{margin-bottom:8px}.bootup__memory-bar{display:inline-block;width:200px;height:2px;background:#333;margin-left:16px;position:relative;vertical-align:middle}.bootup__memory-progress{height:100%;background:#00ff41;width:0%;animation:progressBar 2s ease-in-out forwards}.bootup__loading-dots{animation:loadingDots 1.5s infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes progressBar{0%{width:0%}to{width:100%}}@keyframes loadingDots{0%,20%{content:""}25%,45%{content:"."}50%,70%{content:".."}75%,to{content:"..."}}.bootup__skip-message{position:absolute;bottom:16px;right:16px;font-size:11px;font-family:VT323,monospace;color:#666}.bootup__skip-message--active{color:#00ff41;animation:pulse 1s infinite}
