/* ══════════ MASCOT — fixed bottom-left companion ══════════ */
.mascot {
  /* پیوسته ریسپانسیو: با ویوپورت اسکیل میشه، سقفش هم به ترمینال وسط‌چین (620px) نمی‌خوره */
  position: fixed; left: clamp(8px, 1.5vmin, 12px); bottom: clamp(8px, 1.5vmin, 12px);
  width: max(140px, min(44vmin, (100vw - 668px) / 2, 360px));
  aspect-ratio: 1 / 1; z-index: 9;
  pointer-events: none; /* never block page clicks except on the mascot itself */
  filter: drop-shadow(0 8px 24px rgba(0, 200, 255, .30));
}
.mascot-puppet { position: absolute; inset: 0; }
.mascot-grp { position: absolute; inset: 0; will-change: transform; }
.mascot-grp img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  display: block; user-select: none; -webkit-user-drag: none; pointer-events: none;
}
.mascot-hit {
  position: absolute; inset: 0; width: 100%; height: 100%;
  background: transparent; border: none; padding: 0; cursor: pointer; z-index: 2;
  pointer-events: auto;
}
/* موبایل: جزئی از صفحه، دقیقاً زیر نقل‌قول — وسط‌چین */
@media (max-width: 760px) {
  .mascot { position: static; width: 200px; margin: 1.5rem auto 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .mascot { filter: none; }
}
