/* ============================================
   RADAR GROUP — Робот-маскот v6.0
   Следит за мышью · Моргает при наведении
   ============================================ */

#radar-mascot {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 80px;
  height: 102px;
  z-index: 90;
  cursor: pointer;
  opacity: 0;
  transform: translateY(20px) scale(0.95);
  pointer-events: none;
  transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  filter: drop-shadow(0 0 12px rgba(34, 211, 238, 0.35));
  will-change: transform;
}

#radar-mascot.visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

#radar-mascot:hover {
  transform: translateY(-2px) scale(1.03);
  filter: drop-shadow(0 0 18px rgba(34, 211, 238, 0.5));
}

#radar-mascot .mascot-svg {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

/* ===== ПАРЕНИЕ ===== */
#radar-mascot .body-group {
  transform-origin: 60px 70px;
  animation: mascotFloat 3.6s ease-in-out infinite;
}

@keyframes mascotFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

/* ===== ГОЛОВА (лёгкое покачивание) ===== */
#radar-mascot .head-group {
  transform-origin: 60px 55px;
  animation: headSway 4.5s ease-in-out infinite;
}

@keyframes headSway {
  0%, 100% { transform: rotate(-1deg); }
  50% { transform: rotate(1deg); }
}

/* ===== ГЛАЗА ===== */

/* Состояние по умолчанию — открыты, зрачки видны */
#radar-mascot .eye-open { opacity: 1; }
#radar-mascot .eye-pupil { opacity: 1; }
#radar-mascot .eye-closed { opacity: 0; }

/* Анимация моргания — резкая, 0.15 сек */
#radar-mascot .eye-open,
#radar-mascot .eye-pupil,
#radar-mascot .eye-closed {
  transition: opacity 0.12s ease;
}

/* Класс blink — веко закрывает глаз */
#radar-mascot.blink .eye-open { opacity: 0; }
#radar-mascot.blink .eye-pupil { opacity: 0; }
#radar-mascot.blink .eye-closed { opacity: 1; }

/* Плавное движение зрачков (слежение за мышью) */
#radar-mascot .eye-pupil {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ===== РУКИ ===== */
#radar-mascot .arm-left {
  transform-origin: 28px 78px;
  animation: armWaveLeft 3.5s ease-in-out infinite;
}

#radar-mascot .arm-right {
  transform-origin: 92px 78px;
  animation: armWaveRight 3.5s ease-in-out infinite;
}

@keyframes armWaveLeft {
  0%, 100% { transform: rotate(0deg) translateY(0); }
  25% { transform: rotate(-10deg) translateY(-1px); }
  50% { transform: rotate(0deg) translateY(0); }
  75% { transform: rotate(-4deg) translateY(-1px); }
}

@keyframes armWaveRight {
  0%, 100% { transform: rotate(0deg) translateY(0); }
  25% { transform: rotate(10deg) translateY(-1px); }
  50% { transform: rotate(0deg) translateY(0); }
  75% { transform: rotate(4deg) translateY(-1px); }
}

/* ===== ИМПУЛЬС ПО СЕТКЕ ===== */
#radar-mascot .mesh-pulse {
  animation: meshPulse 4s ease-in-out infinite;
  transform-origin: 60px 98px;
}

@keyframes meshPulse {
  0%, 70%, 100% { opacity: 0.08; transform: scale(0.7); }
  35% { opacity: 0.5; transform: scale(1.1); }
}

/* ===== ПРИЗЫВ (рука вверх) ===== */
#radar-mascot .callout-hand {
  animation: callout 8s ease-in-out infinite;
  transform-origin: 92px 78px;
}

@keyframes callout {
  0%, 60%, 100% { transform: rotate(0deg); }
  66% { transform: rotate(-30deg) translateY(-5px); }
  72% { transform: rotate(-26deg) translateY(-4px); }
  78% { transform: rotate(-32deg) translateY(-6px); }
  84% { transform: rotate(0deg); }
}

/* ===== АУРА ===== */
#radar-mascot .aura {
  animation: auraPulse 4s ease-in-out infinite;
  transform-origin: 60px 65px;
}

@keyframes auraPulse {
  0%, 100% { opacity: 0.15; transform: scale(1); }
  50% { opacity: 0.3; transform: scale(1.1); }
}

/* ===== МОБИЛЬНЫЕ ===== */
@media (max-width: 900px) {
  #radar-mascot {
    width: 56px;
    height: 72px;
    bottom: 16px;
    right: 12px;
    filter: drop-shadow(0 0 8px rgba(34, 211, 238, 0.3));
  }
}

@media (prefers-reduced-motion: reduce) {
  #radar-mascot .body-group,
  #radar-mascot .head-group,
  #radar-mascot .arm-left,
  #radar-mascot .arm-right,
  #radar-mascot .mesh-pulse,
  #radar-mascot .callout-hand,
  #radar-mascot .aura {
    animation: none !important;
  }
}