body,html{margin:0;padding:0;overflow:hidden;background-color:#030303;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-user-select:none;user-select:none;color:#ccc;overscroll-behavior-y:none;touch-action:none}.crt-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(#05050500 50%,#0006 50%),linear-gradient(90deg,#ffffff05,#ffffff03,#ffffff05);background-size:100% 4px,3px 100%;pointer-events:none;z-index:9998;box-shadow:inset 0 0 150px #000000f2}#bg-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;transition:filter .3s ease;cursor:crosshair}.canvas-blurred{filter:blur(8px) brightness(.4)}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}#loading-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#030305;z-index:999999;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;text-align:center;transition:opacity .8s ease}.loading-bar-container{width:60%;max-width:300px;height:2px;background:#ffffff0d;margin-top:20px;border-radius:2px;overflow:hidden;border:none}#loading-bar{width:0%;height:100%;background:#fffc;transition:width .3s ease;box-shadow:0 0 10px #ffffff80}#loading-text{font-size:.85rem;letter-spacing:4px;font-weight:300;font-family:-apple-system,sans-serif;color:#889;text-transform:uppercase}#start-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at center,#0a0a0f,#000)!important;z-index:999999;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;text-align:center;transition:opacity 2.5s ease-in-out}.ethereal-float{display:flex;flex-direction:column;align-items:center;background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:none!important;box-shadow:none!important;transform-style:preserve-3d;perspective:1000px}.ethereal-float h1,.ethereal-float .start-title{display:inline-block;animation:driftText1 9s ease-in-out infinite alternate}.ethereal-float p,.ethereal-float span{display:inline-block;animation:driftText2 12s ease-in-out infinite alternate}#start-btn{animation:driftText3 7s ease-in-out infinite alternate}#skip-btn{animation:driftText4 10s ease-in-out infinite alternate}@keyframes driftText1{0%{transform:translateZ(0) rotate(0) rotateY(0)}to{transform:translate3d(15px,-25px,30px) rotate(1deg) rotateY(4deg)}}@keyframes driftText2{0%{transform:translateZ(0) rotate(0) rotateX(0)}to{transform:translate3d(-20px,15px,-40px) rotate(-1.5deg) rotateX(5deg)}}#start-btn,#skip-btn{position:relative;z-index:999999!important;pointer-events:auto!important}@keyframes driftText3{0%{transform:translateZ(0) rotate(0)}to{transform:translate3d(25px,20px,15px) rotate(2deg)}}@keyframes driftText4{0%{transform:translateZ(0) rotate(0)}to{transform:translate3d(-15px,-20px,20px) rotate(-1deg)}}@keyframes floatSlow{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}#start-screen h1,#start-screen .start-title{font-size:2.8rem;text-shadow:0 0 30px rgba(255,255,255,.1);margin:0 0 10px;letter-spacing:8px;font-weight:300;font-family:-apple-system,sans-serif;color:#fff}#start-screen span{display:block;font-size:1rem;color:#889!important;font-weight:300;letter-spacing:4px;margin-top:15px;font-family:-apple-system,sans-serif;animation:pulseGlow 4s infinite alternate}@keyframes pulseGlow{0%{opacity:.3;text-shadow:0 0 0px rgba(255,255,255,0)}to{opacity:1;text-shadow:0 0 15px rgba(255,255,255,.5)}}#start-btn{margin-top:50px;background:#ffffff05;border:1px solid rgba(255,255,255,.15);color:#ddd;font-size:.95rem;padding:15px 40px;cursor:pointer;font-family:-apple-system,sans-serif;font-weight:300;letter-spacing:3px;border-radius:30px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .5s ease;text-transform:uppercase}#start-btn:hover{background:#ffffff1a;color:#fff;border-color:#ffffff80;box-shadow:0 0 30px #ffffff1a;transform:scale(1.05)}#skip-btn{margin-top:25px;background:transparent;border:none;color:#556;font-family:-apple-system,sans-serif;font-weight:300;font-size:.75rem;letter-spacing:2px;cursor:pointer;transition:.4s;text-transform:uppercase;text-decoration:none}#skip-btn:hover{color:#aaa;text-shadow:0 0 10px rgba(255,255,255,.2)}#unified-hud{position:fixed;top:15px;left:50%;transform:translate(-50%);width:auto;min-width:400px;background:#1414194d;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:10px 40px;gap:40px;box-shadow:0 10px 30px #0000004d;-webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%);z-index:10000;display:flex;justify-content:space-around;align-items:center;transition:opacity .3s}.hud-label{font-size:.65rem;color:#889;letter-spacing:2px;font-family:-apple-system,sans-serif;text-transform:uppercase;font-weight:300}.hud-val{font-size:1rem;font-weight:300;color:#e0e0e0;font-family:-apple-system,sans-serif;letter-spacing:1px}#universe-legend{position:fixed;top:90px;left:10px;max-width:230px;padding:10px;background:#050505e6;border:1px solid rgba(255,255,255,.15);box-shadow:0 10px 30px #000c;z-index:10002;pointer-events:auto}#legend-header{cursor:pointer;white-space:nowrap;font-size:.75rem;font-family:Share Tech Mono,monospace;color:#ccc}#legend-content{position:relative;top:0;left:0;background:transparent;border:none;max-width:100%;font-family:-apple-system,sans-serif;font-size:.85rem;color:#ccc}#legend-content span{text-shadow:none!important}#side-menu{position:fixed;top:0;right:-350px;width:320px;height:100vh;background:#050505fa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid rgba(255,255,255,.1);z-index:999999;padding:40px 20px;transition:right .4s ease;display:flex;flex-direction:column;overflow-y:auto;box-sizing:border-box;box-shadow:-10px 0 30px #000c;overscroll-behavior:contain}#side-menu.open{right:0}#side-menu h2{color:#fff!important;font-weight:300;letter-spacing:3px;border-bottom:1px solid rgba(255,255,255,.2);font-family:Share Tech Mono,monospace;text-transform:uppercase}#side-menu ul{list-style:none;padding:0;margin-top:10px}#menu-close{background:none;border:none;color:#aaa;font-size:30px;cursor:pointer;align-self:flex-end;transition:.3s}#menu-close:hover{background:#fff;color:#000}.menu-item,.social-item{display:block;text-decoration:none;color:#999!important;padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.05);transition:all .1s ease;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-item:hover,.social-item:hover{color:#fff!important;background:linear-gradient(90deg,#ffffff26,#fff0);border-left:3px solid #ffffff;padding-left:23px}#modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10004;transition:opacity .3s}.modal-ui{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;background:#0f0f1473!important;-webkit-backdrop-filter:blur(16px) saturate(110%)!important;backdrop-filter:blur(16px) saturate(110%)!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 20px 50px #0006,inset 0 0 0 1px #ffffff0d!important;color:#eee!important;padding:40px!important;z-index:10005!important;width:90%!important;max-width:750px!important;max-height:85vh!important;overflow-y:auto!important;transition:max-width .4s ease!important;border-radius:16px!important;animation:modalFadeIn .4s cubic-bezier(.23,1,.32,1) forwards}@keyframes modalFadeIn{0%{opacity:0;transform:translate(-50%,-45%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}#project-title,.modal-ui h2,.modal-ui h1{color:#fff!important;text-shadow:none!important;font-weight:300!important;letter-spacing:3px!important;text-transform:uppercase!important;border-left:none!important;border-bottom:1px solid rgba(255,255,255,.1)!important;background:transparent!important;padding:0 0 15px!important;margin-bottom:25px!important;font-family:-apple-system,sans-serif!important}.close-btn{position:absolute!important;top:15px!important;right:15px!important;background:transparent!important;color:#888!important;border:none!important;border-radius:50%!important;width:35px!important;height:35px!important;font-size:1.2rem!important;font-weight:300!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;transition:.3s!important;font-family:-apple-system,sans-serif!important}.close-btn:hover{background:#ffffff1a!important;color:#fff!important;transform:rotate(90deg)!important}input,textarea{width:100%;background:#0003!important;border:1px solid rgba(255,255,255,.1)!important;color:#fff!important;padding:12px 15px;font-family:-apple-system,sans-serif;margin-bottom:15px;box-sizing:border-box;border-radius:8px!important;transition:.3s}input:focus,textarea:focus{border-color:#fff6!important;background:#0006!important;outline:none}textarea[name=mensaje]{white-space:pre-wrap;word-wrap:break-word;resize:vertical;overflow-y:auto}button,#project-link,.carousel-btn{font-family:-apple-system,sans-serif!important;font-weight:300!important;letter-spacing:1px!important;background:#ffffff08!important;color:#ccc!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:25px!important;text-transform:uppercase!important;cursor:pointer!important;transition:all .3s ease!important;padding:10px 20px!important;text-shadow:none!important}button:hover,#project-link:hover,.carousel-btn:hover{background:#ffffff1a!important;color:#fff!important;border-color:#ffffff80!important;box-shadow:0 4px 15px #ffffff0d!important}#project-media{position:relative;width:100%;height:250px;background:#0000004d;border:1px solid rgba(255,255,255,.05);margin-bottom:20px;display:flex;justify-content:center;align-items:center;overflow:hidden;border-radius:8px!important}#boss-ui{position:fixed;top:20px;left:50%;transform:translate(-50%);width:300px;text-align:center;z-index:10}#boss-title{color:#c00;font-size:20px;font-weight:700;margin-bottom:5px;letter-spacing:2px;font-family:Share Tech Mono,monospace}#boss-hp-bg{width:100%;height:15px;background:#c8000033;border:2px solid #cc0000}#boss-hp-fill{width:100%;height:100%;background:#c00;transition:width .2s ease}@keyframes levelUpPop{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}20%{transform:translate(-50%,-50%) scale(1.2);opacity:1}80%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}#level-up-anim{position:fixed;top:30%;left:50%;transform:translate(-50%,-50%);color:#c00!important;font-size:50px;font-weight:700;z-index:100;pointer-events:none;white-space:nowrap;opacity:0;text-shadow:none!important;font-family:Share Tech Mono,monospace}#level-up-anim.active{animation:levelUpPop 2s ease-out forwards}#onboarding-ui{position:fixed;bottom:15vh;width:100vw;text-align:center;color:#888!important;font-size:1rem;z-index:100;pointer-events:none;font-family:-apple-system,sans-serif;letter-spacing:1px;text-shadow:none!important}#scroll-hint{position:fixed;bottom:10vh;width:100vw;text-align:center;color:#888!important;font-size:1rem;z-index:100;pointer-events:none;font-family:-apple-system,sans-serif;letter-spacing:1px;text-shadow:none!important}#system-toast{position:fixed;top:25%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;font-weight:700;color:#c00!important;z-index:10000;pointer-events:none;transition:opacity .5s;font-family:-apple-system,sans-serif;text-transform:uppercase;text-shadow:none!important}body.inverted-mode{filter:invert(1) hue-rotate(180deg);background-color:#eee;width:100vw;height:100vh;position:absolute;top:0;left:0}body.inverted-mode img,body.inverted-mode video,body.inverted-mode iframe{filter:invert(1) hue-rotate(180deg)!important;border:2px solid #000!important}body.retro-mode #bg-canvas{filter:grayscale(100%) contrast(200%)}body.retro-mode #unified-hud,body.retro-mode .modal-ui,body.retro-mode #side-menu{background:#dfdfdf!important;border:2px solid #000!important;box-shadow:5px 5px #000!important;border-radius:0!important;color:#000!important}body.retro-mode .hud-val,body.retro-mode .hud-label,body.retro-mode h2,body.retro-mode p{color:#000!important}body.retro-mode button,body.retro-mode .control-btn{background:#fff!important;color:#000!important;border:2px solid #000!important;box-shadow:2px 2px #000!important}*:focus-visible{outline:2px dashed #ffffff!important;outline-offset:4px!important;box-shadow:none!important}::-webkit-scrollbar{width:5px!important}::-webkit-scrollbar-track{background:#0a0a0a!important}::-webkit-scrollbar-thumb{background:#444!important;border-radius:0!important}::-webkit-scrollbar-thumb:hover{background:#888!important}@media(min-width:769px){#portfolio-header{top:20px!important;left:20px!important;transform:none!important;text-align:left!important;width:auto!important}#menu-toggle,#lang-toggle-btn,#combat-toggle-btn,#ARButton,#VRButton{position:fixed!important;top:20px!important;bottom:auto!important;width:50px!important;min-width:50px!important;height:50px!important;padding:0!important;background:#0a0a0ab3!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:0!important;display:flex!important;align-items:center!important;justify-content:center!important;font-family:Share Tech Mono,monospace!important;color:#ccc!important;cursor:pointer!important;z-index:10001!important;-webkit-backdrop-filter:blur(5px)!important;backdrop-filter:blur(5px)!important;transition:all .3s ease!important;text-shadow:none!important}#menu-toggle:hover,#lang-toggle-btn:hover,#combat-toggle-btn:hover,#ARButton:hover,#VRButton:hover{background:#fff!important;color:#000!important;border-color:#fff!important}#ARButton,#VRButton{color:transparent!important;overflow:hidden!important;white-space:nowrap!important}#ARButton:after{content:"AR";color:#ccc!important;position:absolute;font-size:16px!important;font-weight:700!important;text-shadow:none!important}#VRButton:after{content:"VR";color:#ccc!important;position:absolute;font-size:16px!important;font-weight:700!important;text-shadow:none!important}#ARButton:hover:after,#VRButton:hover:after{color:#000!important}#menu-toggle{right:20px!important;left:auto!important}#lang-toggle-btn{right:80px!important;left:auto!important}#combat-toggle-btn{right:140px!important;left:auto!important}#VRButton{right:200px!important;left:auto!important}#ARButton{right:260px!important;left:auto!important}#btn-recenter,#helpBtn{position:fixed;right:25px;width:45px;height:45px;border-radius:0!important;background:#0a0a0ab3!important;color:#ccc!important;border:1px solid rgba(255,255,255,.2)!important;font-family:Share Tech Mono,monospace!important;font-size:20px!important;cursor:pointer;display:flex;justify-content:center;align-items:center;z-index:99900;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:.3s}#btn-recenter:hover,#helpBtn:hover{background:#fff!important;color:#000!important;border-color:#fff!important}#helpBtn{bottom:95px}#btn-recenter{bottom:150px}}@media(max-width:768px){#portfolio-header{top:5px!important;left:50%!important;transform:translate(-50%)!important;width:100%!important;font-size:.9rem!important}#unified-hud{top:25px!important;flex-wrap:nowrap!important;height:auto!important;min-height:45px!important;padding:5px!important;width:98%!important;justify-content:space-between!important;overflow-x:auto!important;border-radius:0 0 4px 4px!important}.hud-item{gap:2px!important}.hud-val{white-space:nowrap!important;font-size:.85rem!important}.hud-label{white-space:nowrap!important;font-size:.55rem!important}#universe-legend{top:80px!important;left:10px!important;width:auto!important;max-width:140px!important;padding:6px 8px!important}#legend-header,#legend-content{position:relative!important;top:0!important;left:0!important}#legend-header{white-space:nowrap!important;font-size:.65rem!important}#menu-toggle,#lang-toggle-btn,#combat-toggle-btn,#ARButton,#VRButton{position:fixed!important;top:80px!important;bottom:auto!important;left:auto!important;transform:none!important;width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;margin:0!important;border-radius:0!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#0a0a0acc!important;border:1px solid rgba(255,255,255,.2)!important;box-sizing:border-box!important;font-family:Share Tech Mono,monospace!important;color:#ccc!important;z-index:10001!important;text-shadow:none!important}.controls-container,#top-controls,.button-row,.hud-wrapper,div[style*="background: rgba(5, 5, 5, 0.9)"]{background:transparent!important;border:none!important;box-shadow:none!important}#unified-hud{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}#ARButton,#VRButton{color:transparent!important;overflow:hidden!important;white-space:nowrap!important}#ARButton:after{content:"AR";color:#fff!important;position:absolute;font-size:.8rem!important;font-weight:700!important;text-shadow:none!important}#VRButton:after{content:"VR";color:#fff!important;position:absolute;font-size:.8rem!important;font-weight:700!important;text-shadow:none!important}#menu-toggle{right:10px!important}#lang-toggle-btn{right:58px!important}#combat-toggle-btn{right:106px!important}#VRButton{right:154px!important}#ARButton{right:202px!important}#btn-recenter,#helpBtn{position:fixed;right:25px;width:40px!important;height:40px!important;border-radius:0!important;background:#0a0a0ab3!important;color:#ccc!important;border:1px solid rgba(255,255,255,.2)!important;font-family:Share Tech Mono,monospace!important;font-size:18px!important;cursor:pointer;display:flex;justify-content:center;align-items:center;z-index:99900;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}#helpBtn{bottom:125px!important}#btn-recenter{bottom:175px!important}#scroll-hint{bottom:140px!important;font-size:.8rem!important;width:100%!important;left:0!important;position:fixed!important}#system-toast{font-size:.85rem!important;width:90%!important;left:5%!important;padding:10px!important;top:22%!important;position:fixed!important;transform:translate(0)!important;text-align:center!important}.modal-ui{padding:20px 15px!important;width:95%!important;max-height:90vh!important}.close-btn{top:10px!important;right:10px!important;width:40px!important;height:40px!important;font-size:20px!important}.touch-btn{background:#0a0a0acc!important;border:1px solid #fff!important;color:#fff!important;border-radius:0!important}.touch-btn.shoot{background:#c80000cc!important;border-color:#c00!important}}#wip-banner{position:fixed!important;bottom:0!important;left:0!important;width:100%!important;background:#c8000026!important;border-top:1px solid #cc0000!important;color:#c00!important;text-align:center!important;padding:6px 0!important;font-family:Share Tech Mono,monospace!important;font-size:.8rem!important;letter-spacing:2px!important;z-index:1000000!important;pointer-events:none!important;text-transform:uppercase!important;animation:wipPulse 2s infinite!important}@keyframes wipPulse{0%{opacity:.8}50%{opacity:1;background:#c8000059!important}to{opacity:.8}}@media(max-width:768px){#wip-banner{font-size:.65rem!important;padding:4px 0!important;letter-spacing:1px!important}}.close-btn{z-index:100000!important;top:15px!important;right:15px!important;background:#000000e6!important;padding:5px 12px!important;border-radius:4px;border:1px solid #cc0000!important}.modal-ui h2{padding-right:50px!important;line-height:1.2!important}@media(max-width:600px){#portfolio-header{font-size:.75rem!important;padding:5px!important}.modal-ui{width:92%!important;max-height:80vh!important;padding:15px!important;overflow-y:auto!important}}body.ar-active,body.ar-active #bg-canvas,html.ar-active{background:transparent!important;background-color:transparent!important;background-image:none!important}body.ar-active{background:transparent!important;background-color:transparent!important}body.ar-active #bg-canvas{background:transparent!important;position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important}body.ar-active .crt-overlay,body.ar-active #unified-hud,body.ar-active #portfolio-header,body.ar-active #universe-legend,body.ar-active #menu-toggle,body.ar-active #lang-toggle-btn,body.ar-active #combat-toggle-btn,body.ar-active .control-btn:not(#ARButton):not(#VRButton){display:none!important}body.ar-active #ARButton,body.ar-active #VRButton{display:flex!important;z-index:100000!important}.water-ripple{position:fixed;border-radius:50%;border:1px solid rgba(255,255,255,.8);transform:translate(-50%,-50%);pointer-events:none;z-index:9999999;animation:rippleAnim .8s cubic-bezier(.1,.8,.3,1) forwards}@keyframes rippleAnim{0%{width:0;height:0;opacity:.8}to{width:90px;height:90px;opacity:0;border-width:2px}}#start-btn{position:relative}#start-btn:after{content:"";position:absolute;bottom:-45px;left:50%;transform:translate(-50%);width:1px;height:45px;background:linear-gradient(to bottom,rgba(255,255,255,.4),transparent);pointer-events:none}#wip-banner{background:#ffffff08!important;border-top:1px solid rgba(255,255,255,.1)!important;color:#aaa!important;font-family:-apple-system,sans-serif!important;font-weight:300!important;letter-spacing:4px!important;animation:wipPulse 4s infinite alternate!important}@keyframes wipPulse{0%{opacity:.4}to{opacity:1;text-shadow:0 0 10px rgba(255,255,255,.2)}}#side-menu{top:50%!important;height:85vh!important;left:-400px;border-radius:0 25px 25px 0!important;background:#08080c73!important;-webkit-backdrop-filter:blur(25px) saturate(120%)!important;backdrop-filter:blur(25px) saturate(120%)!important;border:1px solid rgba(255,255,255,.03)!important;border-right:1px solid rgba(255,255,255,.15)!important;box-shadow:30px 0 50px #0009,inset -1px 0 20px #ffffff05!important;transform:perspective(1000px) rotateY(15deg) translateY(-50%)!important;transform-origin:left center!important;transition:left .6s cubic-bezier(.1,.8,.3,1),transform .6s!important}#side-menu.open{left:0!important;transform:perspective(1000px) rotateY(4deg) translateY(-50%)!important;animation:menuFloat 6s ease-in-out infinite alternate!important}@keyframes menuFloat{0%{margin-top:0}to{margin-top:-15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}#side-menu:not(.open){visibility:hidden;transition:left .6s cubic-bezier(.1,.8,.3,1),transform .6s,visibility 0s linear .6s!important}#side-menu.open{visibility:visible;transition:left .6s cubic-bezier(.1,.8,.3,1),transform .6s,visibility 0s!important}
