/* =========================================================
   АНИМАЦИИ TMNTTheme
   ========================================================= */

/* --- Бросок ниндзя-звезды через шапку ---
   Звезда пролетает слева направо, вращаясь, затем исчезает
   и ждёт до следующего броска (цикл 7 секунд). */
.shuriken-fly {
  position: absolute; top: 26px; left: -80px;
  width: 48px; height: 48px;
  background: url('../img/shuriken.svg') center / contain no-repeat;
  filter: drop-shadow(3px 3px 0 rgba(0,0,0,.6));
  pointer-events: none;
  z-index: 2;
  animation: throw-star 7s linear infinite;
}
@keyframes throw-star {
  0%    { transform: translate(0, 0) rotate(0deg); opacity: 1; }
  7%    { transform: translate(calc(50vw + 80px), 50px) rotate(720deg); }
  14%   { transform: translate(calc(100vw + 160px), 0) rotate(1440deg); opacity: 1; }
  14.1%, 100% { transform: translate(calc(100vw + 160px), 0) rotate(1440deg); opacity: 0; }
}

/* --- Вращение звезды на кнопке --- */
@keyframes spin-star {
  to { transform: rotate(360deg); }
}
.btn-pizza:hover .btn-star { animation: spin-star .5s linear infinite; }

/* --- Звезда «втыкается» в карточку при наведении --- */
.turtle-card::after {
  content: '';
  position: absolute; top: -16px; right: -16px;
  width: 38px; height: 38px;
  background: url('../img/shuriken.svg') center / contain no-repeat;
  opacity: 0;
  pointer-events: none;
  z-index: 3;
}
.turtle-card:hover::after { animation: star-stick .35s ease-out forwards; }
@keyframes star-stick {
  0%   { opacity: 1; transform: translate(70px, -70px) rotate(720deg) scale(1.5); }
  80%  { transform: translate(0, 0) rotate(-30deg) scale(1); }
  100% { opacity: 1; transform: translate(0, 0) rotate(-20deg) scale(1); }
}

/* --- Капля слизи под трубой меню --- */
.sewer-menu li:hover::after { animation: drip 1s ease-in infinite; }
@keyframes drip {
  0%   { height: 0;    opacity: 1; transform: translateY(0); }
  60%  { height: 16px; opacity: 1; transform: translateY(0); }
  100% { height: 16px; opacity: 0; transform: translateY(18px); }
}

/* --- Покачивание логотипа (ступенчатое, «пиксельное») --- */
.logo-main { animation: pixel-bob 2s steps(2) infinite; }
@keyframes pixel-bob {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-4px); }
}

/* --- Уважаем настройку «уменьшить движение» --- */
@media (prefers-reduced-motion: reduce) {
  .shuriken-fly, .logo-main,
  .btn-pizza:hover .btn-star,
  .sewer-menu li:hover::after,
  .turtle-card:hover::after { animation: none; }
  .shuriken-fly { display: none; }
}
