body {
  margin: 0;
  font-family: system-ui, Arial;
  background: radial-gradient(circle, #0b1220, #02040a);
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  overflow: hidden;
  touch-action: manipulation;
  user-select: none;
}

/* SOFT SCREEN IMPACT (NOT HARSH FLASH) */
.flash {
  animation: flash 0.15s ease-out;
}

@keyframes flash {
  0% { filter: brightness(1.6); }
  100% { filter: brightness(1); }
}

/* LIGHT SHAKE (MOBILE FRIENDLY) */
.shake {
  animation: shake 0.12s;
}

@keyframes shake {
  0% { transform: translate(0,0); }
  50% { transform: translate(2px,-2px); }
  100% { transform: translate(0,0); }
}

/* GAME */
.game {
  text-align: center;
}

/* HUD */
.hud {
  display: flex;
  justify-content: space-between;
  width: 360px;
  margin: 10px auto;
  font-size: 14px;
  opacity: 0.9;
}

/* BUTTON */
#startBtn {
  padding: 10px 20px;
  border-radius: 12px;
  border: none;
  background: linear-gradient(90deg, #22c55e, #16a34a);
  color: white;
  font-weight: bold;
}

/* GRID */
.grid {
  display: grid;
  grid-template-columns: repeat(3, 90px);
  gap: 12px;
  justify-content: center;
}

/* HOLE */
.hole {
  width: 90px;
  height: 90px;
  background: #0f172a;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 0 12px #000;
}

/* MOLE (FAST + RESPONSIVE FEEL) */
.mole {
  width: 75px;
  height: 75px;
  border-radius: 50%;
  position: absolute;
  bottom: -85px;
  left: 8px;
  transition: bottom 0.08s ease-out, transform 0.08s;
  will-change: transform, bottom;
}

/* NORMAL MOLE */
.mole {
  background: radial-gradient(circle, #8b5e3c, #4b2c16);
}

/* POP */
.hole.up .mole {
  bottom: 8px;
}

/* HIT FEEL */
.hit {
  transform: scale(1.35);
  filter: brightness(1.8);
}

/* GOLD MOLE */
.mole.gold {
  background: radial-gradient(circle, #fde047, #f59e0b);
  box-shadow: 0 0 18px gold;
}

/* COMBO GLOW (GETS STRONGER) */
#combo {
  color: #fbbf24;
  font-weight: bold;
  transition: 0.15s;
  text-shadow: 0 0 10px rgba(255,200,0,0.3);
}

.combo-pop {
  animation: comboPop 0.15s ease;
}

@keyframes comboPop {
  0% { transform: scale(1.4); }
  100% { transform: scale(1); }
}