*{margin:0;padding:0;box-sizing:border-box}html{background:#000;background-attachment:fixed;overscroll-behavior:none}html:before{content:"";position:fixed;inset:0;background:linear-gradient(to bottom,#0a0a15,#000);z-index:-10;pointer-events:none}body{margin:0;min-width:320px;min-height:100vh;background:transparent;isolation:isolate;color:#fff;font-family:"Press Start 2P",system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;position:relative;user-select:none;-webkit-user-select:none;-moz-user-select:none;overscroll-behavior:none}body:before{content:"";position:fixed;top:-50%;left:-50%;width:200%;height:200%;pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(233,69,96,.4) 50%,transparent 100%),radial-gradient(1px 1px at 40% 70%,rgba(255,255,255,.3) 50%,transparent 100%),radial-gradient(1.5px 1.5px at 60% 20%,rgba(255,214,0,.25) 50%,transparent 100%),radial-gradient(1px 1px at 80% 50%,rgba(255,255,255,.25) 50%,transparent 100%),radial-gradient(1px 1px at 10% 80%,rgba(233,69,96,.2) 50%,transparent 100%),radial-gradient(1.5px 1.5px at 70% 85%,rgba(255,255,255,.2) 50%,transparent 100%);background-size:200px 200px,160px 180px,220px 210px,180px 160px,250px 230px,190px 200px;opacity:.7;animation:driftStars 60s linear infinite;z-index:-2}body:after{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 20% 80%,rgba(233,69,96,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(22,33,62,.15) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(255,214,0,.03) 0%,transparent 60%);animation:auroraShift 20s ease-in-out infinite alternate;z-index:-1}#root{min-height:100vh;max-width:900px;margin:0 auto}button{font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0f0f23}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#555}::selection{background:#e94560;color:#fff}.shiny-star{position:absolute;color:gold;font-size:16px;animation:shinyStarAnim 1.5s ease-in-out infinite;text-shadow:0 0 8px rgba(255,215,0,.8);opacity:0}@keyframes shinyStarAnim{0%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(180deg);opacity:1}to{transform:scale(0) rotate(360deg);opacity:0}}.volume-slider{-webkit-appearance:none;appearance:none;width:100%;height:8px;background:linear-gradient(to right,#e94560 0%,#e94560 var(--volume-percent, 50%),rgba(233,69,96,.15) var(--volume-percent, 50%),rgba(233,69,96,.15) 100%);border-radius:4px;outline:none;cursor:pointer;margin:12px 0;border:1px solid rgba(233,69,96,.2)}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:#e94560;border:2px solid #fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0006;transition:transform .15s cubic-bezier(.175,.885,.32,1.275)}.volume-slider::-moz-range-thumb{width:16px;height:16px;background:#e94560;border:2px solid #fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0006}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.2);filter:brightness(1.1)}.volume-slider::-moz-range-progress{background-color:#e94560;height:8px;border-radius:4px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.95)}to{transform:scale(1)}}@keyframes hitShake{0%{transform:translate(0)}15%{transform:translate(-6px) rotate(-1deg)}30%{transform:translate(5px) rotate(1deg)}45%{transform:translate(-4px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}to{transform:translate(0)}}@keyframes flashFade{0%{opacity:1}to{opacity:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes hpDrain{0%{filter:brightness(1.5)}to{filter:brightness(1)}}@keyframes floatUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes pokeballShake{0%{transform:rotate(0)}20%{transform:rotate(15deg)}40%{transform:rotate(-15deg)}60%{transform:rotate(10deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0)}}@keyframes glow{0%,to{box-shadow:0 0 5px #e945604d}50%{box-shadow:0 0 15px #e9456099}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}button:hover:not(:disabled){filter:brightness(1.1)}button:active:not(:disabled){transform:translateY(1px);filter:brightness(.95)}button:disabled{cursor:not-allowed!important}img{transition:opacity .3s ease}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}to{transform:translate(0)}}@keyframes flash{0%{opacity:1}50%{opacity:0}to{opacity:1}}@keyframes attack-player{0%{transform:translate(0)}50%{transform:translate(20px,-20px)}to{transform:translate(0)}}@keyframes attack-enemy{0%{transform:translate(0)}50%{transform:translate(-20px,20px)}to{transform:translate(0)}}@keyframes driftStars{0%{transform:translate(0)}to{transform:translate(50%,-50%)}}@keyframes auroraShift{0%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}to{opacity:.6;transform:scale(1)}}.anim-shake{animation:shake .4s ease-in-out}.anim-flash{animation:flash .2s steps(2,start) infinite}.anim-attack-player{animation:attack-player .3s ease-out}.anim-attack-enemy{animation:attack-enemy .3s ease-out}.view-enter{animation:fadeIn .15s ease-out}
