@keyframes clearPop {
  0% { transform:translate(-50%,-50%) scale(0.5) rotate(-10deg); filter:drop-shadow(0 0 0 #fff0) brightness(0.7); }
  60% { transform:translate(-50%,-50%) scale(1.15) rotate(8deg); filter:drop-shadow(0 0 64px #fff8) brightness(1.4); }
  80% { transform:translate(-50%,-50%) scale(0.95) rotate(-4deg); filter:drop-shadow(0 0 32px #fff4) brightness(1.1); }
  100% { transform:translate(-50%,-50%) scale(1) rotate(0deg); filter:drop-shadow(0 0 48px #fff6) brightness(1.2); }
}

/* ゲームオーバー画面用の画像とボタンの配置を調整 */
#gameOverOverlay {
  position: fixed;
  top: 0; left: 0; width: 100vw; height: 100vh;
  background: transparent;
  display: none;
  z-index: 2000;
  pointer-events: none;
}
#gameOverImage {
  position: absolute;
  top: 0; left: 0; width: 100vw; height: 100vh;
  object-fit: cover;
  z-index: 2001;
  margin: 0;
  pointer-events: auto;
  animation: shock 0.4s cubic-bezier(.36,2.5,.64,-1.5) 1;
}
#backToHomeBtn {
  position: absolute;
  left: 50%;
  bottom: 7vh;
  transform: translateX(-50%);
  font-size: 2em;
  padding: 20px 60px;
  background: rgba(34,34,34,0.85);
  color: #fff;
  border: none;
  border-radius: 12px;
  cursor: pointer;
  z-index: 2100;
  box-shadow: 0 4px 24px rgba(0,0,0,0.4);
  pointer-events: auto;
}
#shockEffect {
  position: absolute;
  top: 0; left: 0; width: 100vw; height: 100vh;
  z-index: 2105;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255,255,255,0.7) 0%, rgba(255,0,0,0.2) 60%, rgba(0,0,0,0) 100%);
  opacity: 0;
  animation: shockFlash 0.3s linear 1;
}

@keyframes shock {
  0% { transform: scale(1) rotate(0deg); filter: brightness(1); }
  20% { transform: scale(1.15) rotate(-6deg); filter: brightness(1.2); }
  40% { transform: scale(0.95) rotate(4deg); filter: brightness(0.9); }
  60% { transform: scale(1.08) rotate(-2deg); filter: brightness(1.1); }
  80% { transform: scale(0.98) rotate(2deg); filter: brightness(0.95); }
  100% { transform: scale(1) rotate(0deg); filter: brightness(1); }
}
@keyframes shockFlash {
  0% { opacity: 0.7; }
  80% { opacity: 0.3; }
  100% { opacity: 0; }
}
#backToHomeBtn:hover {
  background: #d90000;
}
#gameOverMsg {
  font-size: 4em;
  margin-bottom: 24px;
  color: #d90000;
  font-weight: bold;
  font-family: 'Comic Sans MS', 'Impact', 'Arial Black', cursive, sans-serif;
  text-shadow: 2px 2px 8px #000, 0 0 8px #fff;
  letter-spacing: 0.1em;
  text-align: center;
}
