*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:#fff;font-feature-settings:"tnum" 1;background:radial-gradient(circle at 50% 50%,#0a0518,#000 70%);display:flex;align-items:stretch;justify-content:center}#app{position:relative;width:100%;max-width:500px;height:100vh;height:100dvh;overflow:hidden;background:#06030f;box-shadow:0 0 80px #ff2bb126}.neon-pink{color:#ff2bb1;text-shadow:0 0 8px rgba(255,43,177,.6),0 0 16px rgba(255,43,177,.4)}.neon-blue{color:#5cd6ff;text-shadow:0 0 8px rgba(58,175,255,.6),0 0 16px rgba(58,175,255,.4)}.neon-gold{color:#f5c542;text-shadow:0 0 8px rgba(245,197,66,.6),0 0 16px rgba(245,197,66,.4)}.neon-white{color:#fff;text-shadow:0 0 8px rgba(255,255,255,.6)}.glass{background:#0f081e8c;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:8px 12px;box-shadow:0 6px 24px #ff2bb126,inset 0 1px #ffffff14}.stat-label{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;opacity:.7;font-weight:700}.stat-value{font-size:22px;font-weight:900;line-height:1;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.splash{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:radial-gradient(ellipse at 50% 40%,#2a0d52,#06030f 70%)}.splash .logo{font-size:38px;font-weight:900;letter-spacing:-1px;line-height:.95;background:linear-gradient(135deg,#ff2bb1,#f5c542,#3aafff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 24px rgba(255,43,177,.6));text-align:center}.splash .loading{font-size:11px;opacity:.65;letter-spacing:3px;font-weight:700;text-transform:uppercase}.splash .error{color:#f57;font-size:13px;max-width:80%;text-align:center;padding:16px;border-radius:14px;background:#ff2bb114;border:1px solid rgba(255,43,177,.25)}.menu{position:absolute;inset:0;z-index:500;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 40%,#2a0d52,#06030f 70%);overflow:hidden}.menu .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5;filter:blur(2px) brightness(.7);transform:scale(1.1)}.menu .lights .lightLeft,.menu .lights .lightRight{position:absolute;top:-40px;width:320px;height:320px;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:pulse 4s ease-in-out infinite}.menu .lights .lightLeft{left:-80px;background:#ff2bb1}.menu .lights .lightRight{right:-80px;background:#3aafff;animation-delay:2s}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.75}}.menu .content{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:60px 24px 32px}.menu .top-row{display:flex;width:100%;justify-content:space-between;align-items:center;gap:8px}.menu .pill{padding:8px 14px;border-radius:999px;background:#0f081e8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);font-size:14px;font-weight:800;display:flex;align-items:center;gap:6px;cursor:pointer}.menu .pill .icon{font-size:14px}.menu .pill .plus{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#ff2bb1,#9333ea);display:flex;align-items:center;justify-content:center;font-weight:900;margin-left:4px}.menu .pill.muted{font-size:11px;opacity:.8;cursor:default}.menu .logo{text-align:center}.menu .logo .sub{font-size:11px;letter-spacing:4px;opacity:.65;font-weight:700}.menu .logo h1{font-size:46px;font-weight:900;letter-spacing:-1px;line-height:.95;margin:6px 0;background:linear-gradient(135deg,#ff2bb1,#f5c542,#3aafff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 24px rgba(255,43,177,.6))}.menu .logo .ver{font-size:9px;opacity:.4;letter-spacing:2px}.menu .cta{text-align:center}.tap-start{font-size:16px;font-weight:800;letter-spacing:3px;padding:18px 48px;border-radius:999px;background:linear-gradient(135deg,#ff2bb1,#9333ea);border:none;color:#fff;cursor:pointer;box-shadow:0 14px 40px #ff2bb180,inset 0 1px #ffffff4d;animation:tapPulse 2s ease-in-out infinite}.tap-start:active{transform:scale(.96)}@keyframes tapPulse{0%,to{transform:scale(1);box-shadow:0 14px 40px #ff2bb180,inset 0 1px #ffffff4d}50%{transform:scale(1.05);box-shadow:0 20px 56px #ff2bb1a6,inset 0 1px #fff6}}.menu .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;max-width:360px;margin-top:24px}.menu-icon{aspect-ratio:1;border-radius:14px;background:#0f081e8c;backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer}.menu-icon .em{font-size:20px}.menu-icon .lb{font-size:9px;letter-spacing:.5px;opacity:.75;font-weight:700}.packs{position:absolute;inset:0;padding:24px 16px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;background:radial-gradient(ellipse at 50% 40%,#2a0d52,#06030f 70%)}.packs h2{font-size:22px;font-weight:900;text-align:center;letter-spacing:2px;background:linear-gradient(135deg,#ff2bb1,#f5c542);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.packs .grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pack-card{position:relative;aspect-ratio:3 / 4;border-radius:16px;overflow:hidden;cursor:pointer;border:1px solid rgba(255,255,255,.08);background:#0f081e8c;backdrop-filter:blur(8px);box-shadow:0 8px 24px #0006;transition:transform .15s ease,box-shadow .2s ease}.pack-card:active{transform:scale(.96)}.pack-card:hover{box-shadow:0 12px 32px #ff2bb166}.pack-card img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.85)}.pack-card .name{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;font-size:13px;font-weight:800;letter-spacing:.5px;background:linear-gradient(0deg,rgba(0,0,0,.85),transparent)}.packs .back{align-self:center;margin-top:8px;padding:12px 28px;border-radius:999px;background:#0f081eb3;border:1px solid rgba(255,255,255,.12);color:#fff;font-size:12px;font-weight:800;letter-spacing:2px;cursor:pointer;backdrop-filter:blur(8px)}.packs .empty{grid-column:1/-1;text-align:center;opacity:.6;padding:20px}.game-scene{position:absolute;inset:0}.game-scene.shake{animation:shake .25s}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px,3px)}40%{transform:translate(7px,-2px)}60%{transform:translate(-4px,-3px)}80%{transform:translate(4px,2px)}}.bg-girl{position:absolute;inset:0;background-size:cover;background-position:center;transition:opacity .8s,transform .8s;opacity:0;filter:brightness(.65) saturate(1.2) contrast(1.1);transform:scale(1.08)}.bg-girl.show{opacity:1;transform:scale(1.04)}.bg-tint{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,#9333ea26,#ff2bb12e 30%,#06030fd9 75%);pointer-events:none;mix-blend-mode:screen}.bg-scanlines{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px);pointer-events:none;opacity:.6;mix-blend-mode:overlay}.bg-vignette{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 50%,rgba(0,0,0,.7) 100%);pointer-events:none}.light-left,.light-right{position:absolute;top:-40px;width:320px;height:320px;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:pulse 4s ease-in-out infinite}.light-left{left:-80px;background:#ff2bb1}.light-right{right:-80px;background:#3aafff;animation-delay:2s}.fever-overlay{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,#f5c54259,#f5c54200 60%);opacity:0;mix-blend-mode:screen;transition:opacity .4s}.fever-overlay.on{opacity:1;animation:feverPulse 1.2s ease-in-out infinite}@keyframes feverPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.4)}}.game-scene canvas#cv{position:absolute;inset:0;width:100%;height:100%;display:block}.hud-top{position:absolute;top:env(safe-area-inset-top,0);left:0;right:0;padding:12px;display:flex;flex-direction:column;gap:8px;z-index:20;pointer-events:none}.hud-top .row{display:flex;gap:8px;align-items:center}.hud-top .glass{pointer-events:auto}.hud-top .score-box{flex:1}.hud-top .combo-box{flex:0 0 auto;min-width:80px}.hud-top .lives-box{flex:0 0 auto}.hud-top .pause-box{flex:0 0 auto;pointer-events:auto}#pauseBtn{width:38px;height:38px;border-radius:50%;background:#0f081e8c;backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);color:#fff;font-size:12px;cursor:pointer;box-shadow:0 6px 18px #ff2bb12e}.lives-row{display:flex;gap:4px;margin-top:4px}.heart{width:18px;height:18px;position:relative;transition:opacity .3s,transform .3s}.heart:before{content:"♥";position:absolute;inset:0;text-align:center;line-height:18px;font-size:18px;color:#ff2bb1;text-shadow:0 0 8px rgba(255,43,177,.8)}.heart.lost:before{color:#2a1a3a;text-shadow:none}.heart.lost{transform:scale(.85)}.meter-box{padding:8px 14px;pointer-events:auto}.meter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.meter-bar{height:8px;background:#ffffff14;border-radius:6px;overflow:hidden;position:relative}.meter-fill{height:100%;width:0%;background:linear-gradient(90deg,#ff2bb1,#9333ea,#3aafff);border-radius:6px;transition:width .25s ease-out;box-shadow:0 0 12px #ff2bb180,0 0 24px #9333ea4d;position:relative}.meter-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 1.5s linear infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.float-score{position:absolute;pointer-events:none;font-weight:900;font-size:18px;opacity:0;z-index:25;text-shadow:0 0 10px currentColor;animation:floatUp .9s ease-out forwards}@keyframes floatUp{0%{opacity:0;transform:translate(-50%) scale(.6)}20%{opacity:1;transform:translate(-50%,-10px) scale(1.1)}to{opacity:0;transform:translate(-50%,-60px) scale(.9)}}.combo-popup{position:absolute;left:50%;top:35%;transform:translate(-50%,-50%) scale(.5);font-size:36px;font-weight:900;letter-spacing:2px;pointer-events:none;opacity:0;z-index:30;color:#ff2bb1;text-shadow:0 0 20px currentColor,0 0 40px currentColor;animation:comboBurst .9s ease-out forwards}@keyframes comboBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(-15deg)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.25) rotate(2deg)}to{opacity:0;transform:translate(-50%,-70%) scale(1) rotate(0)}}.fever-banner{position:absolute;top:38%;left:0;right:0;text-align:center;pointer-events:none;z-index:40;opacity:0;animation:feverIn 2.5s ease forwards}.fever-banner .text{display:inline-block;font-size:56px;font-weight:900;letter-spacing:6px;background:linear-gradient(135deg,#f5c542,#ff2bb1,#f5c542);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 40px rgba(245,197,66,.6);filter:drop-shadow(0 0 20px rgba(255,43,177,.5))}@keyframes feverIn{0%{opacity:0;transform:scale(.3) rotate(-10deg)}20%{opacity:1;transform:scale(1.15) rotate(2deg)}35%{transform:scale(1) rotate(0)}80%{opacity:1}to{opacity:0;transform:scale(1.2)}}.stage-unlock{position:absolute;top:32%;left:50%;transform:translate(-50%);pointer-events:none;z-index:35;opacity:0;animation:stagePop 1.6s ease forwards}.stage-unlock .badge{padding:14px 28px;border-radius:18px;background:linear-gradient(135deg,#f5c542f2,#ff2bb1f2);box-shadow:0 10px 40px #ff2bb180,0 0 0 1px #ffffff4d}.stage-unlock .label{font-size:10px;opacity:.8;letter-spacing:2px;font-weight:700}.stage-unlock .name{font-size:26px;font-weight:900;letter-spacing:-.5px;margin-top:2px}@keyframes stagePop{0%{opacity:0;transform:translate(-50%) scale(.4)}20%{opacity:1;transform:translate(-50%) scale(1.1)}35%{transform:translate(-50%) scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-30px) scale(.95)}}.result{position:absolute;inset:0;z-index:400;background:radial-gradient(ellipse at 50% 40%,#2a0d52f2,#06030ff7 80%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;gap:18px;backdrop-filter:blur(8px)}.result .title{font-size:36px;font-weight:900;letter-spacing:-1px;background:linear-gradient(135deg,#ff2bb1,#f5c542);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.result .stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:320px}.result .stat-card{padding:12px;border-radius:14px;background:#0f081e99;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);text-align:center}.result .stat-card .v{font-size:24px;font-weight:900}.result .stat-card .l{font-size:9px;letter-spacing:1.5px;opacity:.65;font-weight:700;margin-top:4px}.result .btns{display:flex;flex-direction:column;gap:10px;width:100%;max-width:320px;margin-top:8px}.pg-btn{padding:14px;border-radius:14px;border:none;font-size:14px;font-weight:800;letter-spacing:1px;cursor:pointer}.pg-btn:active{transform:scale(.97)}.pg-btn.primary{background:linear-gradient(135deg,#ff2bb1,#9333ea);color:#fff;box-shadow:0 10px 30px #ff2bb166}.pg-btn.share{background:linear-gradient(135deg,#3aafff,#5cd6ff);color:#06030f}.pg-btn.secondary{background:#0f081eb3;color:#fff;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px)}.pause-screen{position:absolute;inset:0;background:#06030fd9;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:350}.pause-screen .panel{padding:28px 40px;border-radius:22px;text-align:center;background:linear-gradient(135deg,#9333ea66,#ff2bb166);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(14px)}.pause-screen h2{font-size:28px;font-weight:900;margin-bottom:14px;letter-spacing:-.5px}.modal-overlay{position:absolute;inset:0;background:#06030fd9;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:600;padding:20px}.modal{max-width:320px;padding:24px;border-radius:18px;background:linear-gradient(135deg,#9333ea66,#ff2bb166);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center}.modal h3{font-size:22px;font-weight:900;letter-spacing:-.5px;background:linear-gradient(135deg,#ff2bb1,#f5c542);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal p{font-size:14px;opacity:.85;line-height:1.4}.modal .actions{display:flex;flex-direction:column;gap:10px;width:100%}.modal p.big{font-size:16px;font-weight:700;opacity:1}.modal p.cost-line{font-size:13px;opacity:.9}.modal p.muted{opacity:.5}.respawn-modal{gap:12px}.end-btn{position:absolute;top:14px;right:14px;z-index:50;padding:8px 18px;border-radius:12px;border:1px solid rgba(245,197,66,.6);background:linear-gradient(135deg,#f5c542b3,#ff2bb180);color:#fff;font-weight:900;letter-spacing:1px;font-size:13px;cursor:pointer;box-shadow:0 0 16px #f5c54280;animation:end-pulse 1.6s ease-in-out infinite}.end-btn:active{transform:scale(.95)}@keyframes end-pulse{0%,to{box-shadow:0 0 16px #f5c54280}50%{box-shadow:0 0 28px #f5c542e6}}.resume-hint{margin-top:12px;display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:1px;opacity:.85;text-transform:uppercase;color:#5cd6ff}.resume-hint .dot{width:7px;height:7px;border-radius:50%;background:#5cd6ff;box-shadow:0 0 8px #5cd6ff;animation:dot-blink 1s ease-in-out infinite}@keyframes dot-blink{0%,to{opacity:1}50%{opacity:.3}}
