@keyframes navSlideIn{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes mobileMenuSlide{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes titleGlow{0%{text-shadow:0 0 5px rgba(var(--primary-color-rgb),.5),0 0 10px rgba(var(--primary-color-rgb),.3)}to{text-shadow:0 0 10px rgba(var(--primary-color-rgb),.8),0 0 20px rgba(var(--primary-color-rgb),.5),0 0 30px rgba(var(--primary-color-rgb),.3)}}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(2deg)}}@keyframes anchoredFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-15px) rotate(3deg)}}@keyframes blink{0%,to{opacity:.2}50%{opacity:1}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--accent-color-rgb),.7)}50%{transform:scale(1.2);box-shadow:0 0 0 10px rgba(var(--accent-color-rgb),0)}to{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--accent-color-rgb),0)}}@keyframes progressFill{0%{width:0}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes titleScreenExit{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100vh);opacity:0;visibility:hidden}}@keyframes slideInFromLeft{0%{transform:translateX(-50px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInFromRight{0%{transform:translateX(50px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInFromTop{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromBottom{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pixelate{0%,50%,to{filter:blur(0)}25%{filter:blur(1px)}75%{filter:blur(2px)}}@keyframes glitch{0%,to{transform:translate(0)}20%{transform:translate(-5px,5px)}40%{transform:translate(-5px,-5px)}60%{transform:translate(5px,5px)}80%{transform:translate(5px,-5px)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes shine{to{left:100%}}@keyframes loading-shine{to{left:100%}}:root{--primary-color-rgb:93, 52, 175;--secondary-color-rgb:62, 137, 72;--accent-color-rgb:255, 204, 0;--card-background-rgb:255, 255, 255}[data-theme=dark]{--primary-color-rgb:126, 87, 194;--secondary-color-rgb:76, 175, 80;--accent-color-rgb:255, 221, 0;--card-background-rgb:45, 50, 90}#main-navigation{animation:navSlideIn .5s ease-out}.nav-menu.active{animation:mobileMenuSlide .3s ease-out}.anchored-decoration{position:absolute;z-index:1;pointer-events:none;opacity:.7;width:30px;height:30px;background-size:contain;background-repeat:no-repeat}.anchored-decoration.animated{animation:anchoredFloat 6s ease-in-out infinite}.anchored-decoration.static{animation:none}.anchored-decoration.size-small{width:20px;height:20px}.anchored-decoration.size-medium{width:30px;height:30px}.anchored-decoration.size-large{width:40px;height:40px}.anchored-decoration.variant-1{animation-duration:5s;animation-delay:0s}.anchored-decoration.variant-2{animation-duration:7s;animation-delay:1.5s}.anchored-decoration.variant-3{animation-duration:6s;animation-delay:3s}.anchored-decoration.variant-4{animation-duration:8s;animation-delay:.8s}.fade-in{animation:fadeIn .5s ease-in-out forwards}.slide-in-left{animation:slideInFromLeft .5s ease-out forwards}.slide-in-right{animation:slideInFromRight .5s ease-out forwards}.slide-in-top{animation:slideInFromTop .5s ease-out forwards}.slide-in-bottom{animation:slideInFromBottom .5s ease-out forwards}.pixel-effect{animation:pixelate 2s infinite}.glitch-effect{animation:glitch .5s infinite}.rotate-animation{animation:rotate 5s linear infinite}.pulse-animation{animation:pulse 2s infinite alternate}.float-animation{animation:float 3s infinite ease-in-out}.section-enter{opacity:0;transform:translateY(20px);transition:opacity .5s ease-out,transform .5s ease-out}.section-enter-active{opacity:1;transform:translateY(0)}.section-exit{animation:titleScreenExit .5s ease-in forwards;animation-fill-mode:forwards}.game-section.section-exit,.section-exit{display:block!important}.section-exit-active{opacity:0;visibility:hidden}.hover-glow:hover{box-shadow:0 0 10px rgba(var(--primary-color-rgb),.7)}.hover-bounce:hover{animation:pulse .5s ease-in-out}.hover-shake:hover{animation:shake .5s ease-in-out}.back-button,.dialogue-option,.game-button,.menu-button{position:relative;overflow:hidden}.back-button::after,.dialogue-option::after,.game-button::after,.menu-button::after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .7s}.back-button:hover::after,.dialogue-option:hover::after,.game-button:hover::after,.menu-button:hover::after{left:100%}.character-avatar{transition:transform .3s}.character-avatar:hover{transform:scale(1.05)}.achievement-icon,.project-card{transition:transform .3s,box-shadow .3s}.achievement-icon:hover{transform:rotate(15deg);box-shadow:0 0 15px rgba(var(--accent-color-rgb),.7)}.project-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px rgba(0,0,0,.2)}.project-card:hover .project-image{transform:scale(1.05);transition:transform .5s}.skill-progress{position:relative;overflow:hidden}.loading-progress::after,.skill-progress::after{content:"";position:absolute;top:0;left:-100%;height:100%}.skill-progress::after{width:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shine 2s infinite}.page-transition{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--primary-color);z-index:9999;transform:translateY(100%);transition:transform .5s}.page-transition.active{transform:translateY(0)}.page-transition.exit{transform:translateY(-100%)}.pixel-art{image-rendering:pixelated;transition:all .3s}.pixel-art:hover{transform:scale(1.1)}#toggle-sound,#toggle-theme,.loading-progress{position:relative;overflow:hidden}.loading-progress::after{width:200%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:loading-shine 1.5s infinite}.custom-cursor{position:fixed;width:20px;height:20px;border-radius:50%;background-color:rgba(var(--accent-color-rgb),.5);transform:translate(-50%,-50%);pointer-events:none;z-index:9999;transition:width .3s,height .3s,background-color .3s;mix-blend-mode:difference}.custom-cursor.active{width:50px;height:50px;background-color:rgba(var(--primary-color-rgb),.3)}#toggle-sound,#toggle-theme{transition:transform .3s}#toggle-theme:hover{transform:rotate(45deg)}#toggle-sound:hover{transform:scale(1.2)}[data-animation=hidden]{opacity:0;transform:translateY(20px);transition:opacity .5s,transform .5s}[data-animation=visible]{opacity:1;transform:translateY(0)}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.delay-900{animation-delay:.9s}.delay-1000{animation-delay:1s}@media (max-width:768px){.project-card:hover{transform:translateY(-5px)}.character-avatar:hover{transform:scale(1.02)}.achievement-icon:hover{transform:rotate(5deg)}.glitch-effect,.pixel-effect{animation:none}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}