html, body { margin: 0; padding: 0; background: #07090c; overflow: hidden; }

/* ---- keyframes (verbatim from the original) ---- */
@keyframes pop        { 0% { transform: scale(.9); opacity: 0 } 100% { transform: scale(1); opacity: 1 } }
@keyframes fadeIn     { 0% { opacity: 0 } 100% { opacity: 1 } }
@keyframes fadeOut    { 0% { opacity: 1 } 100% { opacity: 0 } }
@keyframes winOut     { 0% { transform: scale(1); opacity: 1 } 100% { transform: scale(1.12); opacity: 0 } }
@keyframes winPop     { 0% { transform: scale(.4); opacity: 0 } 65% { transform: scale(1.1) } 100% { transform: scale(1); opacity: 1 } }
@keyframes markerPulse{ 0%, 100% { opacity: .95 } 50% { opacity: .55 } }
@keyframes winGlow    { 0%, 100% { filter: brightness(1) } 50% { filter: brightness(1.35) } }
@keyframes raySpin    { 0% { transform: rotate(0deg) } 100% { transform: rotate(360deg) } }
@keyframes shrineOut  { 0% { opacity: 1; transform: scale(1) rotate(0deg); filter: blur(0) } 100% { opacity: 0; transform: scale(.5) rotate(9deg); filter: blur(10px) } }
@keyframes shrineIn   { 0% { opacity: 0; transform: scale(.35) rotate(-11deg); filter: blur(9px) } 60% { opacity: 1; transform: scale(1.07) rotate(2deg); filter: blur(0) } 100% { opacity: 1; transform: scale(1) rotate(0deg) } }
@keyframes cardFlash  { 0% { filter: brightness(3.2) saturate(2.2) } 100% { filter: brightness(1) } }
@keyframes killerSlam { 0% { transform: scale(3.4) rotate(-16deg); opacity: 0 } 55% { transform: scale(.9) rotate(2deg); opacity: 1 } 75% { transform: scale(1.07) rotate(-1deg) } 100% { transform: scale(1) rotate(0deg) } }
@keyframes screenShake{ 0%, 100% { transform: translate(0,0) } 12% { transform: translate(-16px,9px) } 25% { transform: translate(13px,-11px) } 38% { transform: translate(-10px,-8px) } 52% { transform: translate(9px,10px) } 66% { transform: translate(-7px,5px) } 80% { transform: translate(4px,-4px) } }
@keyframes redFlash   { 0% { opacity: 0 } 15% { opacity: 1 } 100% { opacity: 0 } }
@keyframes coinPulse  { 0% { transform: scale(1) } 35% { transform: scale(1.3) } 100% { transform: scale(1) } }
@keyframes floatUp    { 0% { opacity: 0; transform: translateY(34px) scale(.7) } 20% { opacity: 1; transform: translateY(0) scale(1.15) } 75% { opacity: 1 } 100% { opacity: 0; transform: translateY(-100px) scale(1) } }
@keyframes slashIn    { 0% { transform: translateX(-130%) skewX(-25deg); opacity: 0 } 35% { opacity: 1 } 100% { transform: translateX(130%) skewX(-25deg); opacity: 0 } }
@keyframes glowPulse  { 0%, 100% { box-shadow: 0 0 16px rgba(238,207,122,.10), inset 0 0 34px rgba(0,0,0,.55) } 50% { box-shadow: 0 0 34px rgba(238,207,122,.24), inset 0 0 34px rgba(0,0,0,.55) } }
@keyframes titleGlow  { 0%, 100% { filter: drop-shadow(0 0 6px rgba(238,207,122,.3)) } 50% { filter: drop-shadow(0 0 16px rgba(238,207,122,.75)) } }
@keyframes curtainDown{ 0% { transform: translateY(-102%) } 100% { transform: translateY(0) } }
@keyframes curtainUp  { 0% { transform: translateY(0) } 100% { transform: translateY(-102%) } }
@keyframes stampIn    { 0% { transform: rotate(-45deg) scale(3); opacity: 0 } 60% { transform: rotate(-8deg) scale(.9); opacity: 1 } 100% { transform: rotate(-12deg) scale(1) } }

/* ---- hover / active states (were inline style-hover / style-active) ---- */
.debug-btn:hover     { background: #152028; color: #aeb9c2; }
.buy-btn:hover       { filter: brightness(1.4); transform: translateY(-3px); }
.buy-btn:active      { transform: translateY(1px) scale(.96); }
.shrine-refresh:hover{ filter: brightness(1.4); transform: translateY(-2px); }
.shrine-refresh:active { transform: scale(.95); }
.shrine-card:hover   { background: rgba(238,207,122,.045); transform: translateY(-4px); }
.surv-icon:hover     { filter: brightness(1.25); }
.slot:hover          { filter: brightness(1.3); }
.give-btn:hover      { filter: brightness(1.5); transform: translateY(-3px); }
.give-btn:active     { transform: scale(.95); }
.side-btn:hover      { background: #241416; border-color: #a34a3e; }
.move-target:hover   { border-color: #5fb0d9; background: #18222a; }
.icon-opt:hover      { filter: brightness(1.35); }
.killer-icon:hover   { border-color: #c07a72; filter: brightness(1.2); }
.ghost-btn:hover     { color: #dbe2e8; }
.pop-btn:hover       { filter: brightness(1.2); }
