@keyframes shake1{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes shake2{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@keyframes shake3{0%,to{transform:translate(0)}10%{transform:translate(-8px)}20%{transform:translate(8px)}30%{transform:translate(-6px)}40%{transform:translate(6px)}50%{transform:translate(-4px)}60%{transform:translate(4px)}}@keyframes cardFlipIn{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(90deg) scale(1.05)}to{transform:rotateY(0) scale(1)}}@keyframes cardRevealPulse{0%{box-shadow:0 0 #ffc80099}70%{box-shadow:0 0 30px 10px #ffc80000}to{box-shadow:0 0 #ffc80000}}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes bigHeart{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.25)}}@keyframes pulseBtn{0%,to{opacity:1}50%{opacity:.7}}@keyframes dmgNum{0%{opacity:0;transform:scale(.5)}20%{opacity:1;transform:scale(1.2)}40%{transform:scale(1)}to{opacity:0;transform:scale(1) translateY(-30px)}}@keyframes slashFlash{0%{background:#ff000040}to{background:transparent}}@keyframes trapFlash{0%{background:#a855f733}to{background:transparent}}@keyframes heartCrack{0%{transform:scale(1) rotate(0)}15%{transform:scale(1.3) rotate(-5deg)}30%{transform:scale(1.1) rotate(5deg)}50%{transform:scale(1.2)}to{opacity:0;transform:scale(.5)}}@keyframes shieldPulse{0%{transform:scale(.5);opacity:0}30%{transform:scale(1.3);opacity:1}50%{transform:scale(1)}80%{transform:scale(1.1);opacity:.8}to{transform:scale(1.5);opacity:0}}@keyframes sdFlash{0%{background:#3b82f626}to{background:transparent}}@keyframes bubble{0%{opacity:0;transform:scale(0) translateY(0)}30%{opacity:1;transform:scale(1) translateY(-10px)}to{opacity:0;transform:scale(.5) translateY(-70px)}}@keyframes powerUp{0%{transform:scale(.3);opacity:0}20%{transform:scale(1.4);opacity:1}40%{transform:scale(1)}60%{transform:scale(1.1)}to{transform:scale(1.3);opacity:0}}@keyframes gearAbsorbFlash{0%{background:#e2e8f033}to{background:transparent}}@keyframes gearAbsorbShield{0%{transform:scale(.7);opacity:0}20%{transform:scale(1.2);opacity:1}35%{transform:scale(.95)}50%{transform:scale(1.05)}to{transform:scale(1.1);opacity:0}}@keyframes armoryFlash{0%{background:#fbbf2426}to{background:transparent}}@keyframes armoryIcon{0%{transform:scale(.5);opacity:0}30%{transform:scale(1.3);opacity:1}60%{transform:scale(1)}to{transform:scale(1.2);opacity:0}}@keyframes coinBurst{0%{opacity:0;transform:scale(0) translateY(0)}30%{opacity:1;transform:scale(1.2) translateY(-20px)}to{opacity:0;transform:scale(.8) translateY(-80px)}}@keyframes coinText{0%{opacity:0;transform:scale(.5)}25%{opacity:1;transform:scale(1.15)}50%{transform:scale(1)}to{opacity:0;transform:scale(1) translateY(-30px)}}@keyframes healFlash{0%{background:#4ade8026}to{background:transparent}}@keyframes healFloat{0%{opacity:0;transform:translateY(0) scale(.5)}30%{opacity:1;transform:translateY(-20px) scale(1)}to{opacity:0;transform:translateY(-70px) scale(.6)}}@keyframes healPop{0%{opacity:1;transform:scale(.8)}30%{transform:scale(1.1)}60%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}@keyframes gearFlyOut{0%{transform:scale(1) translate(0);opacity:1}60%{transform:scale(.35) translate(var(--gear-dx),var(--gear-dy));opacity:.9}to{transform:scale(.1) translate(var(--gear-dx),var(--gear-dy));opacity:0}}@keyframes gearSlotPop{0%{box-shadow:0 0 #63b3ed00;transform:scale(1)}30%{box-shadow:0 0 0 8px #63b3ed80;transform:scale(1.25)}60%{box-shadow:0 0 0 14px #63b3ed33;transform:scale(1.1)}to{box-shadow:0 0 8px #3b82f64d;transform:scale(1)}}@keyframes spikesShoot{0%{transform:translateY(100%)}60%{transform:translateY(-10px)}75%{transform:translateY(5px)}to{transform:translateY(0)}}@keyframes dodgeFlash{0%{background:transparent}15%{background:#8b5cf61f}to{background:transparent}}@keyframes dodgePhase{0%{transform:translate(0) scale(1);opacity:1}30%{transform:translate(-20px) scale(1.1);opacity:.4}50%{transform:translate(20px) scale(.9);opacity:.2}70%{transform:translate(0) scale(1.15);opacity:.8}to{transform:translate(0) scale(1);opacity:1}}@keyframes caltropDrop{0%{transform:translateY(0) rotate(0);opacity:0}20%{opacity:1}70%{transform:translateY(70vh) rotate(180deg);opacity:1}85%{transform:translateY(65vh) rotate(200deg);opacity:.8}to{transform:translateY(70vh) rotate(220deg);opacity:.4}}@keyframes curseGlyphFlash{0%{background:transparent}15%{background:#7e22ce33}40%{background:#7e22ce1a}to{background:transparent}}@keyframes curseGlyphPulse{0%{transform:scale(.3);opacity:0}30%{transform:scale(1.3);opacity:1}50%{transform:scale(1)}70%{transform:scale(1.15);opacity:.9}to{transform:scale(1);opacity:0}}@keyframes curseGlyphText{0%{opacity:0;transform:translateY(10px)}30%{opacity:1;transform:translateY(0)}70%{opacity:1}to{opacity:0}}@keyframes peekSlide{0%{transform:rotate(0) translate(0)}to{transform:rotate(-8deg) translate(-30px) translateY(-15px);opacity:.7}}@keyframes peekReveal{0%{transform:translate(20px) rotate(3deg);opacity:0}to{transform:translate(0) rotate(0);opacity:1}}@keyframes potionNegateFlash{0%{background:transparent}15%{background:#a855f71f}to{background:transparent}}@keyframes potionCrumble{0%{transform:scale(1) rotate(0);opacity:1;filter:grayscale(0)}30%{transform:scale(1.1) rotate(-5deg);opacity:1;filter:grayscale(0)}50%{transform:scale(1.05) rotate(3deg);opacity:.9;filter:grayscale(.4)}70%{transform:scale(.8) rotate(-8deg);opacity:.5;filter:grayscale(.8)}to{transform:scale(.3) rotate(-15deg);opacity:0;filter:grayscale(1)}}@keyframes ashDrift{0%{opacity:0;transform:translate(0) scale(1)}30%{opacity:.8}to{opacity:0;transform:translate(var(--ash-dx),30px) scale(.3)}}@keyframes poisonWisp{0%{opacity:0;transform:translate(-50%) scale(.5)}40%{opacity:.6;transform:translate(-50%) scale(1.5)}to{opacity:0;transform:translate(-50%) scale(2.5) translateY(-20px)}}@keyframes negateText{0%{opacity:0;transform:scale(.5)}30%{opacity:1;transform:scale(1.15)}50%{transform:scale(1)}to{opacity:.7;transform:scale(1)}}@keyframes eyeAwaken{0%{transform:scale(0);opacity:0;filter:brightness(1)}30%{transform:scale(1.4);opacity:1;filter:brightness(2.5)}50%{transform:scale(.9);filter:brightness(1.8)}70%{transform:scale(1.1);filter:brightness(1.3)}to{transform:scale(1);opacity:1;filter:brightness(1)}}@keyframes killerCardReveal{0%{transform:scale(.3) rotateY(180deg);opacity:0}40%{transform:scale(1.1) rotateY(0);opacity:1}60%{transform:scale(.95)}80%{transform:scale(1.03)}to{transform:scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes floatMsgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes floatMsgOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes floorTransition{0%{opacity:1}60%{opacity:1}to{opacity:0}}@keyframes floorTextPulse{0%{opacity:0;transform:scale(.7) translateY(20px)}25%{opacity:1;transform:scale(1.05) translateY(0)}60%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95) translateY(-10px)}}@keyframes particleBurst{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--px),var(--py)) scale(0)}}@keyframes monsterSway{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-2px) rotate(-2deg)}75%{transform:translate(2px) rotate(2deg)}}@keyframes treasureShimmer{0%,to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) brightness(1)}50%{filter:drop-shadow(0 2px 8px rgba(251,191,36,.6)) brightness(1.15)}}@keyframes trapPulse{0%,to{transform:scale(1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}50%{transform:scale(1.06);filter:drop-shadow(0 2px 8px rgba(168,85,247,.5))}}@keyframes potionBubble{0%,to{transform:translateY(0)}33%{transform:translateY(-3px)}66%{transform:translateY(1px)}}@keyframes gearGlow{0%,to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 3px rgba(59,130,246,.3))}50%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 8px rgba(59,130,246,.6))}}@keyframes roomFlicker{0%,to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) brightness(1)}20%{filter:drop-shadow(0 2px 6px rgba(99,102,241,.4)) brightness(1.1)}40%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) brightness(.95)}60%{filter:drop-shadow(0 2px 7px rgba(99,102,241,.5)) brightness(1.12)}80%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) brightness(1)}}@keyframes vaultArcane{0%,to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 4px rgba(34,84,61,.4))}50%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 10px rgba(34,84,61,.7));transform:rotate(5deg)}}@keyframes dragonFire{0%,to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 4px rgba(220,38,38,.3));transform:scale(1)}30%{filter:drop-shadow(0 2px 8px rgba(220,38,38,.6)) drop-shadow(0 0 12px rgba(251,191,36,.4));transform:scale(1.05)}60%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 6px rgba(220,38,38,.4));transform:scale(1.02)}}*{margin:0;padding:0;box-sizing:border-box}body{background:#030712;font-family:monospace;color:#e5e7eb;-webkit-font-smoothing:antialiased}button{font-family:monospace}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:#0a0f1a}::-webkit-scrollbar-thumb{background:#374151;border-radius:2px}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}
