/*
 * O filtro vermelho de aviso (#201). Cobre a tela inteira mas NÃO recebe
 * clique — o jogo continua jogável durante o segundo em que ele aparece.
 */
#boss-aviso {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  pointer-events: none;
  background: radial-gradient(ellipse at center, rgb(120 0 0 / 0.12) 0%, rgb(150 0 0 / 0.55) 100%);
  animation: bav-entra 0.18s ease-out, bav-sai 0.3s ease-in 0.7s forwards;
}

.bav__texto {
  display: grid;
  justify-items: center;
  gap: 4px;
  animation: bav-pulso 1s ease-out;
}

.bav__alerta {
  color: #ffd0d0;
  font: 800 13px/1 inherit;
  letter-spacing: 0.35em;
  text-shadow: 0 2px 8px #000;
}

.bav__titulo {
  color: #fff;
  font: 900 clamp(28px, 7vw, 56px)/1 inherit;
  letter-spacing: 0.12em;
  text-shadow: 0 0 18px #ff2d2d, 0 3px 10px #000;
}

@keyframes bav-entra { from { opacity: 0 } to { opacity: 1 } }
@keyframes bav-sai { to { opacity: 0 } }
@keyframes bav-pulso {
  0% { transform: scale(0.86); opacity: 0 }
  22% { transform: scale(1.06); opacity: 1 }
  40% { transform: scale(1) }
  100% { transform: scale(1); opacity: 1 }
}

@media (prefers-reduced-motion: reduce) {
  #boss-aviso { animation: bav-entra 0.18s ease-out, bav-sai 0.3s ease-in 0.7s forwards }
  .bav__texto { animation: none }
}
