/* css/taymi.css — Тайми + мини-аркадная сцена (пиксельные циклы по экранам). */

/* Док внутри .main-with-taymi — над слоем CRT (контент в .ui-stack z-index выше). */
.taymi-layer {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  min-width: 0;
}

.main-with-taymi .taymi-layer {
  justify-self: stretch;
}

@media (min-width: 900px) {
  .main-with-taymi .taymi-layer {
    position: sticky;
    top: max(var(--space-4), env(safe-area-inset-top, 0px));
    align-self: start;
  }
}

@media (max-width: 899px) {
  .main-with-taymi .taymi-layer {
    order: 2;
    width: 100%;
    max-width: min(440px, 100%);
    margin-inline: auto;
    padding-top: var(--space-3);
  }

  .main-with-taymi .screens {
    order: 1;
  }
}

/* Переключение режимов: кабинет vs пиксельный уровень */
.taymi-mode--cabinet,
.taymi-mode--pix {
  display: none;
  flex-direction: column;
  width: 100%;
}

#app[data-screen="welcome"] .taymi-mode--cabinet,
#app[data-screen="boot"] .taymi-mode--cabinet {
  display: flex;
}

/* На финале правую колонку Тайми убираем — чек и кнопки шеринга на всю ширину
   (v3.2: фокус на виральности, всё видно без скролла). */
#app[data-screen="result"] .taymi-layer {
  display: none !important;
}

#app[data-screen="q1"] .taymi-mode--pix-chase {
  display: flex;
}

#app[data-screen="q2"] .taymi-mode--pix-blast {
  display: flex;
}

#app[data-screen="q3"] .taymi-mode--pix-lock {
  display: flex;
}

/* Пиксельные мини-сцены Q1–Q3 — корпус как у .taymi-arcade__cabinet (единый «второй автомат»). */
.taymi-mode--pix {
  position: relative;
  box-sizing: border-box;
  padding: var(--space-3);
  overflow: hidden;
  border: 4px solid var(--arcade-bezel-outer);
  background:
    repeating-linear-gradient(90deg, #161426 0 4px, #141328 4px 8px),
    radial-gradient(
      ellipse 120% 90% at 50% 30%,
      rgba(var(--color-brand-rgb), 0.14),
      transparent 55%
    ),
    #121018;
  box-shadow:
    inset 0 2px 0 var(--arcade-bezel-mid),
    inset 0 -40px 48px rgba(0, 0, 0, 0.35),
    0 0 0 1px rgba(var(--color-brand-rgb), 0.28),
    0 0 28px rgba(95, 255, 143, 0.06),
    6px 6px 0 rgba(0, 0, 0, 0.72);
  animation: pt-pix-cabinet-glow 4.5s ease-in-out infinite;
}

.taymi-mode--pix::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 8px;
  z-index: 0;
  opacity: 0.045;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.45) 0 2px,
    transparent 2px 5px
  );
}

.taymi-mode--pix > .pix-chase,
.taymi-mode--pix > .pix-blast,
.taymi-mode--pix > .pix-lock {
  position: relative;
  z-index: 1;
}

@keyframes pt-pix-cabinet-glow {
  0%,
  100% {
    box-shadow:
      inset 0 2px 0 var(--arcade-bezel-mid),
      inset 0 -40px 48px rgba(0, 0, 0, 0.35),
      0 0 0 1px rgba(var(--color-brand-rgb), 0.22),
      0 0 22px rgba(95, 255, 143, 0.05),
      6px 6px 0 rgba(0, 0, 0, 0.72);
  }
  50% {
    box-shadow:
      inset 0 2px 0 var(--arcade-bezel-mid),
      inset 0 -40px 48px rgba(0, 0, 0, 0.35),
      0 0 0 1px rgba(var(--color-brand-rgb), 0.38),
      0 0 36px rgba(var(--color-brand-rgb), 0.12),
      6px 6px 0 rgba(0, 0, 0, 0.72);
  }
}

@media (prefers-reduced-motion: reduce) {
  .taymi-mode--pix {
    animation: none !important;
  }
}

@media (max-width: 899px) {
  .taymi-mode--pix {
    padding: var(--space-2);
  }
}

/* --- Каркас «вторая аркада» справа --- */
.taymi-arcade {
  display: flex;
  flex-direction: column;
  gap: 0;
  image-rendering: pixelated;
}

.taymi-arcade__marquee {
  overflow: hidden;
  height: 26px;
  border: 3px solid #121018;
  background: #140818;
  box-shadow:
    inset 2px 2px 0 rgba(var(--color-brand-rgb), 0.25),
    3px 3px 0 #000;
}

/* Полноширинная бегущая строка над всем окном (только на экранах кабинета). */
.app__marquee {
  display: none;
  width: 100%;
  margin-bottom: 0;
}

#app[data-screen="welcome"] .app__marquee,
#app[data-screen="boot"] .app__marquee,
#app[data-screen="result"] .app__marquee {
  display: block;
}

.taymi-arcade__marquee-track {
  display: flex;
  width: max-content;
  min-height: 100%;
  align-items: center;
  animation: pt-taymi-marquee 14s linear infinite;
}

.taymi-arcade__marquee-track span {
  flex-shrink: 0;
  padding-inline-end: 3rem;
  font-family: var(--font-mono);
  font-size: 1.05rem;
  line-height: 26px;
  letter-spacing: 0.04em;
  color: #54ffc4;
  text-shadow: 1px 1px 0 #082018;
  white-space: nowrap;
}

.taymi-arcade__cabinet {
  position: relative;
  padding: var(--space-3) var(--space-3) 0;
  border: 4px solid var(--arcade-bezel-outer);
  border-top: none;
  background:
    repeating-linear-gradient(90deg, #161426 0 4px, #141328 4px 8px),
    #121018;
  box-shadow:
    inset 0 2px 0 var(--arcade-bezel-mid),
    6px 6px 0 rgba(0, 0, 0, 0.72);
}

.taymi-arcade__cabinet::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 8px 8px 0;
  opacity: 0.09;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.55) 0 2px,
    transparent 2px 4px
  );
}

.taymi-arcade__cabinet-glare {
  pointer-events: none;
  position: absolute;
  top: 6px;
  left: 10px;
  right: 28%;
  height: 40%;
  opacity: 0.03;
  background: linear-gradient(118deg, #ffffff 0%, transparent 58%);
}

.taymi-arcade__stage {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  min-height: 276px;
  padding-block: var(--space-2) var(--space-1);
}

/* Canvas-Тайми в кабинете (тот же спрайт, что и в мини-играх). */
.taymi-cabinet-canvas {
  display: block;
  width: 100%;
  height: 248px;
  margin-inline: auto;
}

@media (max-width: 480px) {
  .taymi-cabinet-canvas {
    height: 208px;
  }
}

/* Welcome: кабинет тянется на всю высоту колонки — две колонки одного размера. */
@media (min-width: 900px) {
  #app[data-screen="welcome"] .taymi-mode--cabinet {
    height: 100%;
  }
  #app[data-screen="welcome"] .taymi-arcade {
    flex: 1 1 auto;
  }
  #app[data-screen="welcome"] .taymi-arcade__cabinet {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
  }
  #app[data-screen="welcome"] .taymi-arcade__stage {
    flex: 1 1 auto;
  }
  #app[data-screen="welcome"] .taymi-cabinet-canvas {
    height: 100%;
    min-height: 260px;
  }
}

/*
 * «Старая школа»: спрайт низкого разрешения (≈56×64 логических px),
 * увеличенный ×2 без сглаживания — читаются крупные «железные» пиксели консоли/аркады.
 */
.taymi-pixel-frame {
  width: 112px;
  height: 128px;
  flex-shrink: 0;
  overflow: visible;
  transform: scale(2);
  transform-origin: bottom center;
  image-rendering: pixelated;
}

/* Кабинет без чёрной плашки: Тайми сидит на текстуре корпуса, без второй «коробки». */
.taymi-mode--cabinet .taymi-pixel-frame {
  position: relative;
  z-index: 0;
  background: transparent;
}

.taymi-mode--cabinet .taymi-pixel-frame .taymi-bot.taymi-bot--8bit {
  z-index: 1;
}

.taymi-arcade__floor {
  height: 28px;
  margin-inline: calc(-1 * var(--space-3));
  margin-top: -2px;
  border-top: 3px solid #121018;
  background-image:
    linear-gradient(90deg, #1e3828 50%, #162818 50%),
    linear-gradient(#243828 50%, #142418 50%);
  background-size:
    16px 16px,
    16px 16px;
  image-rendering: pixelated;
  opacity: 0.92;
  animation: pt-taymi-floor-shift 3s steps(6, end) infinite;
}

/* --- Джойстик-панель «контроллер» под кабинетом ---
 * Внимание: .taymi-layer имеет pointer-events:none (декоративный слой),
 * поэтому каждой интерактивной части нужно явно включить события указателя.
 */
.taymi-arcade__pad {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-4);
  margin-top: var(--space-2);
  padding: var(--space-4) var(--space-4);
  border: 3px solid #121018;
  border-top: 4px solid var(--arcade-bezel-outer);
  background:
    repeating-linear-gradient(90deg, #1c1a30 0 4px, #161426 4px 8px),
    #14122a;
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.04),
    inset 0 -3px 0 rgba(0, 0, 0, 0.45),
    3px 3px 0 #000;
  pointer-events: auto;
  user-select: none;
}

.taymi-btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: none;
  border: none;
  font-family: var(--font-mono);
  cursor: pointer;
  pointer-events: auto;
}

.taymi-btn__cap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 3px solid #0c0a14;
  border-radius: 50%;
  font-family: var(--font-display);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: #fff;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.45);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.32),
    inset 0 -3px 0 rgba(0, 0, 0, 0.42),
    3px 3px 0 #000,
    0 0 0 2px rgba(0, 0, 0, 0.28);
  transition:
    transform 0.12s steps(2, end),
    filter 0.16s ease,
    box-shadow 0.14s ease;
}

.taymi-btn--a .taymi-btn__cap {
  background: radial-gradient(circle at 32% 28%, #ff8090 0%, #ff4054 38%, #a01228 100%);
}

.taymi-btn--b .taymi-btn__cap {
  background: radial-gradient(circle at 32% 28%, #c8a4ff 0%, #9050ff 40%, #4a18b0 100%);
}

.taymi-btn--c .taymi-btn__cap {
  background: radial-gradient(circle at 32% 28%, #aaffd2 0%, #38e58c 40%, #0c8a45 100%);
}

.taymi-btn:hover .taymi-btn__cap {
  filter: brightness(1.12);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.4),
    inset 0 -3px 0 rgba(0, 0, 0, 0.42),
    3px 3px 0 #000,
    0 0 0 2px rgba(255, 255, 255, 0.18),
    0 0 16px rgba(var(--color-brand-rgb), 0.32);
}

.taymi-btn:active .taymi-btn__cap,
.taymi-btn[data-pressed="true"] .taymi-btn__cap {
  transform: translate(2px, 2px);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.18),
    inset 0 -2px 0 rgba(0, 0, 0, 0.55),
    1px 1px 0 #000;
  filter: brightness(0.92);
}

.taymi-btn:focus-visible {
  outline: none;
}

.taymi-btn:focus-visible .taymi-btn__cap {
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.4),
    3px 3px 0 #000,
    0 0 0 3px rgba(95, 255, 143, 0.65);
}

@media (max-width: 720px) {
  .taymi-arcade__pad {
    gap: var(--space-2);
    padding: var(--space-2) var(--space-3);
  }
  .taymi-btn__cap {
    width: 40px;
    height: 40px;
  }
}

.taymi-arcade__hud {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
  padding: var(--space-2) var(--space-3);
  border: 3px solid #121018;
  background: #080710;
  font-family: var(--font-mono);
  font-size: var(--fs-sm);
  letter-spacing: 0.06em;
  color: #9bdc78;
  text-shadow: none;
  box-shadow: 3px 3px 0 #000;
}

.taymi-arcade__hud-led {
  width: 10px;
  height: 10px;
  flex-shrink: 0;
  background: #2b5533;
  border: 2px solid #122818;
  animation: pt-taymi-hud-led 1.6s steps(2, end) infinite;
}

.taymi-arcade__hud-text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* --- Робот · 8-bit / аркада: ограниченная палитра, только «ступени», без неона --- */
.taymi-bot.taymi-bot--8bit {
  position: relative;
  width: 112px;
  height: 128px;
  flex-shrink: 0;
  filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, 0.92))
    drop-shadow(0 0 1px rgba(0, 0, 0, 0.4));
  animation: pt-taymi-body-idle 2.8s steps(6, end) infinite;
}

.taymi-bot__rig {
  position: absolute;
  inset: 0;
  animation: pt-taymi-rig-float 5s ease-in-out infinite;
}

/* без «неона» новой школы — только чёткий силуэт */
.taymi-bot__glow {
  display: none;
}

.taymi-bot__antenna {
  z-index: 5;
  position: absolute;
  left: 50%;
  top: 22px;
  width: 6px;
  height: 14px;
  margin-left: -3px;
  border-radius: 0;
  background: linear-gradient(90deg, #2a2838 0%, #5a5470 45%, #3a3848 100%);
  border: 2px solid #101018;
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.12);
  transform-origin: 50% 100%;
  animation: pt-taymi-antenna-bob 2.2s steps(4, end) infinite;
}

.taymi-bot__antenna::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -14px;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  border-radius: 0;
  background: linear-gradient(145deg, #d8b8ff 0%, var(--color-brand-soft) 42%, #7030c8 100%);
  border: 2px solid #101018;
  box-shadow:
    inset -2px -3px 0 rgba(0, 0, 0, 0.35),
    inset 1px 1px 0 rgba(255, 255, 255, 0.35);
  animation: pt-taymi-blink 4s steps(2, end) infinite;
}

.taymi-bot__head {
  z-index: 4;
  position: absolute;
  left: 50%;
  top: 38px;
  width: 72px;
  height: 40px;
  margin-left: -36px;
  border-radius: 0;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, transparent 28%),
    linear-gradient(180deg, #c4b8ec 0 52%, #7a6cb0 52% 78%, #4a3d78 78% 100%);
  border: 2px solid #101018;
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.18),
    inset 0 -4px 0 rgba(0, 0, 0, 0.22);
  transform-origin: 50% 85%;
}

.taymi-bot__cheek {
  position: absolute;
  bottom: 10px;
  width: 8px;
  height: 6px;
  background: var(--color-brand-soft);
  border: 2px solid #101018;
  opacity: 0.92;
}

.taymi-bot__cheek--l {
  left: 6px;
}

.taymi-bot__cheek--r {
  right: 6px;
}

.taymi-bot__mouth {
  position: absolute;
  left: 50%;
  bottom: 12px;
  width: 28px;
  height: 4px;
  margin-left: -14px;
  background: #101018;
  box-shadow: 0 2px 0 rgba(255, 255, 255, 0.06);
}

.taymi-bot__eye {
  position: absolute;
  top: 10px;
  width: 22px;
  height: 14px;
  border-radius: 0;
  background: linear-gradient(180deg, #0a3030 0%, #041818 100%);
  border: 2px solid #101018;
  box-shadow: inset 0 1px 0 rgba(0, 248, 120, 0.12);
  animation: pt-taymi-eye-blink 5.5s steps(2, start) infinite;
}

.taymi-bot__eye::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 3px;
  width: 14px;
  height: 8px;
  background: linear-gradient(180deg, #7cffb8 0%, #00c868 55%, #008850 100%);
  border: 2px solid #083838;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

/* зрачок; белый пиксель — через тень без второго слоя */
.taymi-bot__eye::after {
  content: "";
  position: absolute;
  right: 5px;
  bottom: 4px;
  width: 6px;
  height: 6px;
  background: #181818;
  border: 2px solid #101018;
  box-shadow: -8px -6px 0 #fcf8f8;
}

.taymi-bot__eye--l {
  left: 10px;
}

.taymi-bot__eye--r {
  right: 10px;
  animation-delay: 0.08s;
}

.taymi-bot__eye--r::before {
  left: 3px;
}

.taymi-bot__torso {
  z-index: 2;
  position: absolute;
  left: 50%;
  top: 78px;
  width: 56px;
  height: 38px;
  margin-left: -28px;
  border-radius: 0;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.22) 0%, transparent 22%, transparent 78%, rgba(0, 0, 0, 0.22) 100%),
    linear-gradient(180deg, #8c82c0 0 45%, #5c5088 45% 72%, #3a3060 72% 100%);
  border: 2px solid #101018;
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, 0.14),
    inset 0 -4px 0 rgba(0, 0, 0, 0.38);
}

.taymi-bot__torso::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 6px;
  width: 6px;
  height: 4px;
  background: #5fff8f;
  box-shadow:
    10px 0 0 #18d8f0,
    20px 0 0 var(--color-brand-soft);
  opacity: 0.8;
}

.taymi-bot__arm {
  z-index: 3;
  position: absolute;
  top: 82px;
  width: 10px;
  height: 26px;
  border-radius: 0;
  background: linear-gradient(90deg, #3a4468 0%, #586898 50%, #404c70 100%);
  border: 2px solid #101018;
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.08);
}

.taymi-bot__arm::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 50%;
  width: 12px;
  height: 10px;
  margin-left: -6px;
  background: linear-gradient(180deg, #a8b8e8 0%, #7080b8 100%);
  border: 2px solid #101018;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

.taymi-bot__arm--l {
  left: 22px;
  transform-origin: 50% 8px;
  animation: pt-taymi-arm-l 7s ease-in-out infinite;
}

.taymi-bot__arm--r {
  right: 22px;
  transform-origin: 50% 8px;
  animation: pt-taymi-arm-r 7s ease-in-out infinite;
}

.taymi-bot__core {
  position: absolute;
  left: 50%;
  top: 58%;
  width: 14px;
  height: 14px;
  margin: -7px 0 0 -7px;
  border-radius: 0;
  transform: rotate(45deg);
  background: linear-gradient(135deg, #e8d0ff 0%, var(--color-brand-soft) 45%, #6020a8 100%);
  border: 2px solid #f0e8ff;
  box-shadow:
    inset -2px -2px 0 rgba(0, 0, 0, 0.35),
    inset 1px 1px 0 rgba(255, 255, 255, 0.45);
  animation: pt-taymi-core-pulse 2.8s steps(4, end) infinite;
}

.taymi-bot__leg {
  z-index: 2;
  position: absolute;
  bottom: 8px;
  width: 14px;
  height: 14px;
  border-radius: 0;
  background: linear-gradient(180deg, #484860 0%, #282830 100%);
  border: 2px solid #101018;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transform-origin: 50% 0%;
}

.taymi-bot__leg--l {
  left: 38px;
  animation: pt-taymi-leg-l 0.65s steps(2, end) infinite;
}

.taymi-bot__leg--r {
  right: 38px;
  animation: pt-taymi-leg-r 0.65s steps(2, end) infinite;
}

.taymi-bot__base {
  z-index: 1;
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 88px;
  height: 8px;
  margin-left: -44px;
  border-radius: 0;
  background:
    repeating-linear-gradient(90deg, #3a3448 0 6px, #4a4460 6px 12px),
    linear-gradient(180deg, #585068 0%, #383040 100%);
  border: 2px solid #101018;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.taymi-layer__caption {
  margin: var(--space-2) 0 0;
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-mono);
  font-size: var(--fs-xs);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #c4bde8;
  border: 2px solid rgba(var(--color-brand-rgb), 0.35);
  border-radius: 0;
  background: linear-gradient(180deg, #141020 0%, #0b0a10 100%);
  box-shadow:
    2px 2px 0 #000,
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  text-align: center;
}

.taymi-layer__model {
  color: var(--color-brand-soft);
  margin-right: var(--space-2);
}

/* ========== Игровые режимы по экранам ========== */

/* Приветствие: походка + более живой пол */
#app[data-screen="welcome"] .taymi-bot {
  animation: pt-taymi-walk-body 0.75s steps(4, end) infinite;
}

#app[data-screen="welcome"] .taymi-bot__rig {
  animation: pt-taymi-walk-rig 0.75s steps(4, end) infinite;
}

#app[data-screen="welcome"] .taymi-arcade__floor {
  animation-duration: 1.8s;
}

/* Boot: дрожь корпуса + сумасшедшие руки и быстрое ядро */
#app[data-screen="boot"] .taymi-bot {
  animation: pt-taymi-boot-shake 0.35s steps(3, end) infinite;
  filter: drop-shadow(5px 6px 0 rgba(0, 0, 0, 0.92))
    drop-shadow(0 0 8px rgba(var(--color-brand-rgb), 0.28));
}

#app[data-screen="boot"] .taymi-bot__rig {
  animation: pt-taymi-boot-bounce 0.55s steps(3, end) infinite;
}

#app[data-screen="boot"] .taymi-bot__core {
  animation-duration: 0.85s;
}

#app[data-screen="boot"] .taymi-bot__arm--l {
  animation: pt-taymi-arm-panic-l 0.28s steps(2, end) infinite;
}

#app[data-screen="boot"] .taymi-bot__arm--r {
  animation: pt-taymi-arm-panic-r 0.28s steps(2, end) infinite;
}

#app[data-screen="boot"] .taymi-bot__head {
  animation: pt-taymi-head-wobble 0.65s steps(4, end) infinite;
}

#app[data-screen="boot"] .taymi-arcade__floor {
  animation-duration: 1s;
}

/* Финал: победа — руки вверх, спокойное покачивание */
#app[data-screen="result"] .taymi-bot {
  animation: pt-taymi-body-celebrate 2s steps(6, end) infinite;
  filter: drop-shadow(4px 5px 0 rgba(0, 0, 0, 0.88))
    drop-shadow(0 0 6px rgba(var(--color-brand-rgb), 0.18));
}

#app[data-screen="result"] .taymi-bot__rig {
  animation: pt-taymi-rig-celebrate 3s ease-in-out infinite;
}

#app[data-screen="result"] .taymi-bot__core {
  animation-duration: 3s;
}

#app[data-screen="result"] .taymi-bot__arm--l {
  animation: pt-taymi-arm-win-l 1s ease-in-out infinite alternate;
}

#app[data-screen="result"] .taymi-bot__arm--r {
  animation: pt-taymi-arm-win-r 1s ease-in-out infinite alternate;
}

#app[data-screen="result"] .taymi-bot__leg--l,
#app[data-screen="result"] .taymi-bot__leg--r {
  animation: none;
}

/* ========== Keyframes ========== */

/* =====================================================================
 * One-shot реакции Тайми по кнопкам джойстика
 *
 * A — МАХ:    правая рука поднимается над головой, машет 3 раза, опускается;
 *             голова чуть наклоняется, левая рука придерживает позу;
 *             сбоку «вылетает» пиксельная искра в подтверждение жеста.
 * B — МИГ:    антенна стробит цветами через hue-rotate, шарик пульсирует
 *             в размере, расходятся 3 концентрических кольца-«радар»,
 *             глаза на доли секунды загораются ярче.
 * C — ПРЫГ:   два подскока со squash & stretch, руки «взмах», пыль у ног,
 *             ядро и голова реагируют на удар о «пол».
 * ===================================================================== */

/* --- A · МАХ ----------------------------------------------------- */

.taymi-bot.is-action-wave .taymi-bot__arm--r {
  animation: pt-taymi-action-wave-arm 1.5s cubic-bezier(0.34, 1.2, 0.5, 1) 1 both !important;
  transform-origin: 50% 8px;
  z-index: 6 !important;
}

.taymi-bot.is-action-wave .taymi-bot__arm--l {
  animation: pt-taymi-action-wave-arm-l 1.5s ease-out 1 both !important;
}

.taymi-bot.is-action-wave .taymi-bot__head {
  animation: pt-taymi-action-wave-head 1.5s ease-in-out 1 both !important;
}

.taymi-bot.is-action-wave .taymi-bot__leg--l,
.taymi-bot.is-action-wave .taymi-bot__leg--r {
  animation-play-state: paused !important;
}

.taymi-bot.is-action-wave .taymi-bot__rig::after {
  content: "";
  position: absolute;
  top: 56px;
  right: 0px;
  width: 14px;
  height: 14px;
  background:
    linear-gradient(45deg, transparent 39%, #fff 39% 61%, transparent 61%),
    linear-gradient(135deg, transparent 39%, #fff 39% 61%, transparent 61%);
  background-color: transparent;
  filter: drop-shadow(0 0 8px rgba(255, 240, 140, 0.85));
  pointer-events: none;
  animation: pt-taymi-action-wave-spark 1.5s ease-out 1 both;
}

/* Правая рука: подъём вверх-в-сторону → «привет!» 3 махами → плавный спуск.
   Отрицательное вращение для arm--r уводит ладонь ВПРАВО ОТ КОРПУСА вверх,
   а не через тело — выглядит как настоящий жест приветствия. */
@keyframes pt-taymi-action-wave-arm {
  0%   { transform: rotate(14deg); }
  9%   { transform: rotate(-90deg); }
  16%  { transform: rotate(-130deg); }
  24%  { transform: rotate(-108deg); }
  32%  { transform: rotate(-152deg); }
  40%  { transform: rotate(-108deg); }
  48%  { transform: rotate(-152deg); }
  56%  { transform: rotate(-108deg); }
  64%  { transform: rotate(-152deg); }
  72%  { transform: rotate(-130deg); }
  84%  { transform: rotate(-130deg); }
  100% { transform: rotate(14deg); }
}

/* Левая рука: короткая поза «упёр в бок» для баланса корпуса. */
@keyframes pt-taymi-action-wave-arm-l {
  0%   { transform: rotate(-14deg); }
  16%  { transform: rotate(-46deg); }
  84%  { transform: rotate(-46deg); }
  100% { transform: rotate(-14deg); }
}

@keyframes pt-taymi-action-wave-head {
  0%, 100% { transform: rotate(0deg) translateX(0); }
  20%, 80% { transform: rotate(-4deg) translateX(-1px); }
}

@keyframes pt-taymi-action-wave-spark {
  0%   { opacity: 0; transform: translate(0, 0) scale(0.3) rotate(0deg); }
  10%  { opacity: 0; transform: translate(0, 0) scale(0.3) rotate(0deg); }
  18%  { opacity: 1; transform: translate(4px, -6px) scale(1.4) rotate(45deg); }
  32%  { opacity: 0.95; transform: translate(8px, -18px) scale(1) rotate(120deg); }
  52%  { opacity: 0.8; transform: translate(12px, -30px) scale(1.2) rotate(220deg); }
  74%  { opacity: 0.4; transform: translate(16px, -42px) scale(0.85) rotate(320deg); }
  100% { opacity: 0; transform: translate(22px, -54px) scale(0.2) rotate(420deg); }
}

/* --- B · МИГ ----------------------------------------------------- */

.taymi-bot.is-action-antenna .taymi-bot__antenna {
  animation: pt-taymi-action-antenna-stick 0.16s ease-in-out 7 both !important;
  transform-origin: 50% 100%;
}

.taymi-bot.is-action-antenna .taymi-bot__antenna::after {
  animation: pt-taymi-action-antenna-bulb 1.3s linear 1 both !important;
  transform-origin: 50% 50%;
  z-index: 6;
}

/* Концентрические кольца-«радар» — рисуем через ::before антенны */
.taymi-bot.is-action-antenna .taymi-bot__antenna::before {
  content: "";
  position: absolute;
  top: -14px;
  left: 50%;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  border: 2px solid #5fff8f;
  background: transparent;
  pointer-events: none;
  animation: pt-taymi-action-antenna-ripple 0.55s ease-out 3 both;
  animation-delay: 0.05s;
}

.taymi-bot.is-action-antenna .taymi-bot__head {
  animation: pt-taymi-action-antenna-shake 0.16s ease-in-out 7 both !important;
}

.taymi-bot.is-action-antenna .taymi-bot__eye--l,
.taymi-bot.is-action-antenna .taymi-bot__eye--r {
  animation: pt-taymi-action-antenna-eye 0.32s ease-out 4 both !important;
}

@keyframes pt-taymi-action-antenna-stick {
  0%, 100% { transform: rotate(0deg); }
  50%      { transform: rotate(18deg); }
}

@keyframes pt-taymi-action-antenna-bulb {
  0%   { transform: scale(1);   filter: hue-rotate(0deg)   brightness(1)   drop-shadow(0 0 4px rgba(168, 92, 242, 0.6)); }
  10%  { transform: scale(1.55); filter: hue-rotate(60deg)  brightness(1.7) drop-shadow(0 0 12px rgba(168, 92, 242, 0.95)); }
  20%  { transform: scale(0.9);  filter: hue-rotate(140deg) brightness(0.7) drop-shadow(0 0 0 transparent); }
  30%  { transform: scale(1.55); filter: hue-rotate(220deg) brightness(1.8) drop-shadow(0 0 14px #5fff8f); }
  40%  { transform: scale(0.9);  filter: hue-rotate(260deg) brightness(0.7); }
  50%  { transform: scale(1.55); filter: hue-rotate(310deg) brightness(1.8) drop-shadow(0 0 14px #ff5070); }
  60%  { transform: scale(0.9);  filter: hue-rotate(350deg) brightness(0.7); }
  70%  { transform: scale(1.55); filter: hue-rotate(40deg)  brightness(1.8) drop-shadow(0 0 14px #ffd23f); }
  80%  { transform: scale(0.9);  filter: hue-rotate(80deg)  brightness(0.7); }
  90%  { transform: scale(1.4);  filter: hue-rotate(140deg) brightness(1.6) drop-shadow(0 0 10px rgba(168, 92, 242, 0.8)); }
  100% { transform: scale(1);   filter: hue-rotate(0deg)   brightness(1); }
}

@keyframes pt-taymi-action-antenna-ripple {
  0% {
    width: 12px;
    height: 12px;
    margin-left: -6px;
    margin-top: 0;
    opacity: 0.95;
    border-width: 3px;
    border-color: #5fff8f;
  }
  100% {
    width: 80px;
    height: 80px;
    margin-left: -40px;
    margin-top: -34px;
    opacity: 0;
    border-width: 1px;
    border-color: rgba(95, 255, 143, 0.2);
  }
}

@keyframes pt-taymi-action-antenna-shake {
  0%, 100% { transform: translate(0, 0); }
  50%      { transform: translate(-2px, -1px); }
}

@keyframes pt-taymi-action-antenna-eye {
  0%   { filter: brightness(1)   drop-shadow(0 0 0 transparent); }
  30%  { filter: brightness(2.4) drop-shadow(0 0 6px #5fff8f); }
  100% { filter: brightness(1); }
}

/* --- C · ПРЫГ ---------------------------------------------------- */

.taymi-bot.is-action-jump .taymi-bot__rig {
  animation: pt-taymi-action-jump-rig 1.55s cubic-bezier(0.33, 0.9, 0.25, 1) 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__arm--l {
  animation: pt-taymi-action-jump-arm-l 1.55s ease-out 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__arm--r {
  animation: pt-taymi-action-jump-arm-r 1.55s ease-out 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__leg--l {
  animation: pt-taymi-action-jump-leg-l 1.55s steps(3, end) 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__leg--r {
  animation: pt-taymi-action-jump-leg-r 1.55s steps(3, end) 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__head {
  animation: pt-taymi-action-jump-head 1.55s ease-out 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__core {
  animation: pt-taymi-action-jump-core 1.55s steps(4, end) 1 both !important;
}

.taymi-bot.is-action-jump .taymi-bot__base {
  overflow: visible;
}

.taymi-bot.is-action-jump .taymi-bot__base::before,
.taymi-bot.is-action-jump .taymi-bot__base::after {
  content: "";
  position: absolute;
  bottom: -2px;
  width: 22px;
  height: 8px;
  pointer-events: none;
  background: radial-gradient(ellipse 100% 100% at 50% 50%, rgba(200, 190, 220, 0.45) 0%, transparent 72%);
  border: 2px solid rgba(95, 255, 143, 0.22);
  opacity: 0;
  z-index: 2;
}

.taymi-bot.is-action-jump .taymi-bot__base::before {
  left: -6px;
  animation: pt-taymi-jump-dust-l 1.55s ease-out 1 both;
}

.taymi-bot.is-action-jump .taymi-bot__base::after {
  right: -6px;
  animation: pt-taymi-jump-dust-r 1.55s ease-out 1 both;
}

@keyframes pt-taymi-action-jump-rig {
  0% {
    transform: translateY(0) scaleY(1) scaleX(1);
  }
  5% {
    transform: translateY(4px) scaleY(0.9) scaleX(1.05);
  }
  14% {
    transform: translateY(-32px) scaleY(1.08) scaleX(0.94);
  }
  20% {
    transform: translateY(-38px) scaleY(1.1) scaleX(0.92);
  }
  26% {
    transform: translateY(-30px) scaleY(1.02) scaleX(0.98);
  }
  32% {
    transform: translateY(0) scaleY(0.82) scaleX(1.1);
  }
  38% {
    transform: translateY(-8px) scaleY(0.96) scaleX(1.03);
  }
  44% {
    transform: translateY(0) scaleY(0.9) scaleX(1.05);
  }
  48% {
    transform: translateY(3px) scaleY(0.88) scaleX(1.06);
  }
  56% {
    transform: translateY(-34px) scaleY(1.08) scaleX(0.93);
  }
  62% {
    transform: translateY(-40px) scaleY(1.12) scaleX(0.9);
  }
  68% {
    transform: translateY(-32px) scaleY(1.03) scaleX(0.97);
  }
  74% {
    transform: translateY(0) scaleY(0.78) scaleX(1.12);
  }
  82% {
    transform: translateY(-5px) scaleY(0.95) scaleX(1.04);
  }
  90% {
    transform: translateY(0) scaleY(1.02) scaleX(0.99);
  }
  100% {
    transform: translateY(0) scaleY(1) scaleX(1);
  }
}

@keyframes pt-taymi-action-jump-arm-l {
  0% {
    transform: rotate(-14deg);
  }
  8% {
    transform: rotate(-118deg);
  }
  18% {
    transform: rotate(-132deg);
  }
  32% {
    transform: rotate(-40deg);
  }
  48% {
    transform: rotate(-118deg);
  }
  60% {
    transform: rotate(-128deg);
  }
  74% {
    transform: rotate(-36deg);
  }
  100% {
    transform: rotate(-14deg);
  }
}

@keyframes pt-taymi-action-jump-arm-r {
  0% {
    transform: rotate(14deg);
  }
  8% {
    transform: rotate(118deg);
  }
  18% {
    transform: rotate(132deg);
  }
  32% {
    transform: rotate(40deg);
  }
  48% {
    transform: rotate(118deg);
  }
  60% {
    transform: rotate(128deg);
  }
  74% {
    transform: rotate(36deg);
  }
  100% {
    transform: rotate(14deg);
  }
}

@keyframes pt-taymi-action-jump-leg-l {
  0% {
    transform: rotate(-8deg) scaleY(1);
  }
  6% {
    transform: rotate(-8deg) scaleY(0.88);
  }
  18% {
    transform: rotate(-8deg) scaleY(1.05);
  }
  32% {
    transform: rotate(-8deg) scaleY(0.92);
  }
  50% {
    transform: rotate(-8deg) scaleY(0.88);
  }
  62% {
    transform: rotate(-8deg) scaleY(1.06);
  }
  74% {
    transform: rotate(-8deg) scaleY(0.85);
  }
  100% {
    transform: rotate(-8deg) scaleY(1);
  }
}

@keyframes pt-taymi-action-jump-leg-r {
  0% {
    transform: rotate(8deg) scaleY(1);
  }
  6% {
    transform: rotate(8deg) scaleY(0.88);
  }
  18% {
    transform: rotate(8deg) scaleY(1.05);
  }
  32% {
    transform: rotate(8deg) scaleY(0.92);
  }
  50% {
    transform: rotate(8deg) scaleY(0.88);
  }
  62% {
    transform: rotate(8deg) scaleY(1.06);
  }
  74% {
    transform: rotate(8deg) scaleY(0.85);
  }
  100% {
    transform: rotate(8deg) scaleY(1);
  }
}

@keyframes pt-taymi-action-jump-head {
  0%,
  100% {
    transform: rotate(0deg);
  }
  12% {
    transform: rotate(-5deg);
  }
  22% {
    transform: rotate(4deg);
  }
  32% {
    transform: rotate(-3deg);
  }
  58% {
    transform: rotate(-5deg);
  }
  70% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-2deg);
  }
}

@keyframes pt-taymi-action-jump-core {
  0%,
  100% {
    filter: brightness(1);
  }
  10%,
  52% {
    filter: brightness(1.35);
  }
  32%,
  74% {
    filter: brightness(1.65);
  }
}

@keyframes pt-taymi-jump-dust-l {
  0%,
  14% {
    opacity: 0;
    transform: translate(0, 0) scale(0.4);
  }
  33% {
    opacity: 0.85;
    transform: translate(-10px, -2px) scale(1);
  }
  50% {
    opacity: 0;
    transform: translate(-22px, 1px) scale(1.15);
  }
  52%,
  68% {
    opacity: 0;
    transform: translate(0, 0) scale(0.4);
  }
  76% {
    opacity: 0.9;
    transform: translate(-12px, -1px) scale(1.05);
  }
  94% {
    opacity: 0;
    transform: translate(-24px, 2px) scale(1.2);
  }
  100% {
    opacity: 0;
    transform: translate(-24px, 2px) scale(1.2);
  }
}

@keyframes pt-taymi-jump-dust-r {
  0%,
  14% {
    opacity: 0;
    transform: translate(0, 0) scale(0.4);
  }
  33% {
    opacity: 0.85;
    transform: translate(10px, -2px) scale(1);
  }
  50% {
    opacity: 0;
    transform: translate(22px, 1px) scale(1.15);
  }
  52%,
  68% {
    opacity: 0;
    transform: translate(0, 0) scale(0.4);
  }
  76% {
    opacity: 0.9;
    transform: translate(12px, -1px) scale(1.05);
  }
  94% {
    opacity: 0;
    transform: translate(24px, 2px) scale(1.2);
  }
  100% {
    opacity: 0;
    transform: translate(24px, 2px) scale(1.2);
  }
}

@media (prefers-reduced-motion: reduce) {
  .taymi-bot.is-action-wave .taymi-bot__arm--r,
  .taymi-bot.is-action-wave .taymi-bot__arm--l,
  .taymi-bot.is-action-wave .taymi-bot__head,
  .taymi-bot.is-action-wave .taymi-bot__rig::after,
  .taymi-bot.is-action-antenna .taymi-bot__antenna,
  .taymi-bot.is-action-antenna .taymi-bot__antenna::before,
  .taymi-bot.is-action-antenna .taymi-bot__antenna::after,
  .taymi-bot.is-action-antenna .taymi-bot__head,
  .taymi-bot.is-action-antenna .taymi-bot__eye--l,
  .taymi-bot.is-action-antenna .taymi-bot__eye--r,
  .taymi-bot.is-action-jump .taymi-bot__rig,
  .taymi-bot.is-action-jump .taymi-bot__arm--l,
  .taymi-bot.is-action-jump .taymi-bot__arm--r,
  .taymi-bot.is-action-jump .taymi-bot__leg--l,
  .taymi-bot.is-action-jump .taymi-bot__leg--r,
  .taymi-bot.is-action-jump .taymi-bot__head,
  .taymi-bot.is-action-jump .taymi-bot__core,
  .taymi-bot.is-action-jump .taymi-bot__base::before,
  .taymi-bot.is-action-jump .taymi-bot__base::after {
    animation-duration: 0.55s !important;
    animation-iteration-count: 1 !important;
  }
}

@keyframes pt-taymi-cabinet-scan {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(4px);
  }
}

@keyframes pt-taymi-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@keyframes pt-taymi-floor-shift {
  0%,
  100% {
    background-position:
      0 0,
      8px 8px;
  }
  50% {
    background-position:
      -16px 0,
      -8px 8px;
  }
}

@keyframes pt-taymi-hud-led {
  0%,
  49% {
    background: #3dff73;
    box-shadow: 0 0 8px rgba(95, 255, 143, 0.45);
  }
  50%,
  100% {
    background: #2b5533;
    box-shadow: none;
  }
}

@keyframes pt-taymi-body-idle {
  0%,
  100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-3px);
  }
}

@keyframes pt-taymi-rig-float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}

@keyframes pt-taymi-walk-body {
  0% {
    transform: translateX(-6px);
  }
  25% {
    transform: translateX(8px);
  }
  50% {
    transform: translateX(-4px);
  }
  75% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(-6px);
  }
}

@keyframes pt-taymi-walk-rig {
  0% {
    transform: translateY(-4px) rotate(-2deg);
  }
  50% {
    transform: translateY(-12px) rotate(2deg);
  }
  100% {
    transform: translateY(-4px) rotate(-2deg);
  }
}

@keyframes pt-taymi-leg-l {
  0%,
  49% {
    transform: rotate(-8deg) translateY(0);
  }
  50%,
  100% {
    transform: rotate(-8deg) translateY(-5px);
  }
}

@keyframes pt-taymi-leg-r {
  0%,
  49% {
    transform: rotate(8deg) translateY(-5px);
  }
  50%,
  100% {
    transform: rotate(8deg) translateY(0);
  }
}

@keyframes pt-taymi-body-scan {
  0%,
  100% {
    transform: translateX(0);
  }
  33% {
    transform: translateX(-5px);
  }
  66% {
    transform: translateX(5px);
  }
}

@keyframes pt-taymi-head-scan {
  0%,
  100% {
    transform: translateX(0) rotate(0deg);
  }
  33% {
    transform: translateX(-6px) rotate(-5deg);
  }
  66% {
    transform: translateX(6px) rotate(5deg);
  }
}

@keyframes pt-taymi-leg-tap-l {
  0%,
  49% {
    transform: rotate(-6deg) scaleY(1);
  }
  50%,
  100% {
    transform: rotate(-10deg) scaleY(0.92);
  }
}

@keyframes pt-taymi-leg-tap-r {
  0%,
  49% {
    transform: rotate(6deg) scaleY(0.92);
  }
  50%,
  100% {
    transform: rotate(10deg) scaleY(1);
  }
}

@keyframes pt-taymi-arm-meter {
  0%,
  100% {
    transform: rotate(-35deg);
  }
  50% {
    transform: rotate(-62deg);
  }
}

@keyframes pt-taymi-boot-shake {
  0% {
    transform: translate(1px, -2px);
  }
  33% {
    transform: translate(-5px, 3px);
  }
  66% {
    transform: translate(4px, 1px);
  }
  100% {
    transform: translate(1px, -2px);
  }
}

@keyframes pt-taymi-boot-bounce {
  0%,
  100% {
    transform: translateY(0) scaleY(1);
  }
  50% {
    transform: translateY(-5px) scaleY(0.94);
  }
}

@keyframes pt-taymi-head-wobble {
  0% {
    transform: rotate(-8deg);
  }
  50% {
    transform: rotate(8deg);
  }
  100% {
    transform: rotate(-8deg);
  }
}

@keyframes pt-taymi-arm-panic-l {
  0%,
  49% {
    transform: rotate(-54deg);
  }
  50%,
  100% {
    transform: rotate(28deg);
  }
}

@keyframes pt-taymi-arm-panic-r {
  0%,
  49% {
    transform: rotate(48deg);
  }
  50%,
  100% {
    transform: rotate(-36deg);
  }
}

@keyframes pt-taymi-body-celebrate {
  0%,
  100% {
    transform: translateY(0) translateX(0);
  }
  33% {
    transform: translateY(-6px) translateX(-4px);
  }
  66% {
    transform: translateY(-8px) translateX(4px);
  }
}

@keyframes pt-taymi-rig-celebrate {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

@keyframes pt-taymi-arm-win-l {
  0% {
    transform: rotate(-132deg);
  }
  100% {
    transform: rotate(-118deg);
  }
}

@keyframes pt-taymi-arm-win-r {
  0% {
    transform: rotate(132deg);
  }
  100% {
    transform: rotate(118deg);
  }
}

@keyframes pt-taymi-glow-pulse {
  0%,
  100% {
    opacity: 0.55;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.04);
  }
}

@keyframes pt-taymi-eye-blink {
  0%,
  92%,
  100% {
    opacity: 1;
    transform: scaleY(1);
  }
  96% {
    opacity: 0.35;
    transform: scaleY(0.18);
  }
}

@keyframes pt-taymi-blink {
  0%,
  70%,
  100% {
    opacity: 1;
  }
  75%,
  78% {
    opacity: 0.25;
  }
}

@keyframes pt-taymi-antenna-bob {
  0%,
  100% {
    transform: rotate(-7deg);
  }
  50% {
    transform: rotate(7deg);
  }
}

@keyframes pt-taymi-core-pulse {
  0%,
  100% {
    transform: rotate(45deg) scale(1);
    filter: brightness(1);
  }
  50% {
    transform: rotate(45deg) scale(1.08);
    filter: brightness(1.2);
  }
}

@keyframes pt-taymi-arm-l {
  0%,
  100% {
    transform: rotate(-14deg);
  }
  50% {
    transform: rotate(8deg);
  }
}

@keyframes pt-taymi-arm-r {
  0%,
  100% {
    transform: rotate(14deg);
  }
  50% {
    transform: rotate(-8deg);
  }
}

@media (max-width: 1180px) and (min-width: 900px) {
  .taymi-arcade__stage {
    min-height: 218px;
  }
}

@media (max-width: 899px) and (min-width: 720px) {
  .taymi-arcade__stage {
    min-height: 218px;
  }
}

@media (max-width: 720px) {
  .taymi-arcade__marquee {
    height: 22px;
  }

  .taymi-arcade__marquee-track span {
    font-size: 0.95rem;
    line-height: 22px;
  }

  .taymi-arcade__floor {
    height: 22px;
  }

  .taymi-arcade__hud {
    font-size: var(--fs-xs);
    padding-inline: var(--space-2);
  }

  .taymi-layer__caption {
    font-size: var(--fs-xs);
  }
}

@media (prefers-reduced-motion: reduce) {
  .taymi-mode--cabinet .taymi-pixel-frame::before {
    animation: none;
  }
}

/* =====================================================================
 * TAYMI TM-90 / reference rebuild
 * Полный CSS-only персонаж по референсу: крупная голова-экран, жёлтые
 * боковые модули, фиолетовая антенна, корпус с часами, короткие руки/ноги.
 * DOM-фрагмент: snippets/index-taymi-layer.html
 * Контракты проекта сохранены: .taymi-bot--8bit, is-action-*, data-taymi-*.
 * ===================================================================== */

.taymi-mode--cabinet {
  --tm90-ink: #090812;
  --tm90-outline: #020208;
  --tm90-cream-hi: #fff8df;
  --tm90-cream: #f4e8c9;
  --tm90-cream-shade: #cfc1a4;
  --tm90-purple-hi: #b56cff;
  --tm90-purple: #8c26ea;
  --tm90-purple-deep: #42126f;
  --tm90-yellow-hi: #ffff5b;
  --tm90-yellow: #eeff2d;
  --tm90-yellow-dark: #8b8c12;
  --tm90-cyan: #18d8f0;
  --tm90-cyan-deep: #087078;
  --tm90-green: #5fff8f;
  --tm90-screen: #061016;
  --tm90-metal-hi: #eee7ff;
  --tm90-metal: #7f789d;
  --tm90-metal-dark: #302941;
  --tm90-pixel-shadow: 4px 4px 0 rgba(0, 0, 0, 0.92);
}

.taymi-arcade__stage {
  min-height: 300px;
}

.taymi-pixel-frame {
  width: 128px;
  height: 144px;
  transform: scale(1.9);
  transform-origin: bottom center;
}

.taymi-bot.taymi-bot--reference {
  position: relative;
  width: 128px;
  height: 144px;
  filter:
    drop-shadow(var(--tm90-pixel-shadow))
    drop-shadow(0 0 8px rgba(140, 38, 234, 0.2));
  animation: tm90-shell-idle 2.8s steps(6, end) infinite;
}

.taymi-bot--reference .tm90 {
  position: absolute;
  inset: 0;
  animation: tm90-rig-idle 2.8s steps(6, end) infinite;
}

.taymi-bot--reference .tm90,
.taymi-bot--reference .tm90 * {
  box-sizing: border-box;
  image-rendering: pixelated;
}

.tm90__shadow {
  position: absolute;
  left: 23px;
  right: 23px;
  bottom: 3px;
  height: 8px;
  background:
    linear-gradient(90deg, transparent 0 7px, rgba(0, 0, 0, 0.86) 7px calc(100% - 7px), transparent calc(100% - 7px));
  animation: tm90-shadow-idle 2.8s steps(6, end) infinite;
}

.tm90__antenna {
  position: absolute;
  left: 50%;
  top: 2px;
  z-index: 8;
  width: 28px;
  height: 30px;
  margin-left: -14px;
  transform-origin: 50% 100%;
  animation: tm90-antenna-idle 3.4s steps(5, end) infinite;
}

.tm90__antenna-stem {
  position: absolute;
  left: 11px;
  top: 15px;
  width: 6px;
  height: 15px;
  border: 2px solid var(--tm90-ink);
  background:
    linear-gradient(90deg, var(--tm90-metal-hi) 0 2px, var(--tm90-metal) 2px 4px, var(--tm90-metal-dark) 4px 6px);
}

.tm90__antenna-orb {
  position: absolute;
  left: 7px;
  top: 3px;
  width: 14px;
  height: 14px;
  border: 2px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, #efdcff 0 3px, var(--tm90-purple-hi) 3px 7px, var(--tm90-purple) 7px 11px, var(--tm90-purple-deep) 11px);
  box-shadow:
    2px 2px 0 rgba(0, 0, 0, 0.75),
    0 0 10px rgba(181, 108, 255, 0.35);
  animation: tm90-orb-blink 4.4s steps(2, end) infinite;
}

.tm90__signal {
  position: absolute;
  top: 0;
  width: 11px;
  height: 20px;
  opacity: 0;
  border-block: 3px solid var(--tm90-yellow);
}

.tm90__signal--l {
  left: -10px;
  border-left: 3px solid var(--tm90-yellow);
}

.tm90__signal--r {
  right: -10px;
  border-right: 3px solid var(--tm90-yellow);
}

.tm90__ear {
  position: absolute;
  z-index: 3;
  top: 44px;
  width: 13px;
  height: 28px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(90deg, var(--tm90-yellow-hi) 0 6px, var(--tm90-yellow) 6px 10px, var(--tm90-yellow-dark) 10px);
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.68);
}

.tm90__ear--l {
  left: 22px;
}

.tm90__ear--r {
  right: 22px;
  transform: scaleX(-1);
}

.tm90__head {
  position: absolute;
  left: 50%;
  top: 31px;
  z-index: 5;
  width: 78px;
  height: 49px;
  margin-left: -39px;
  border: 4px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, var(--tm90-cream-hi) 0 10px, var(--tm90-cream) 10px 35px, var(--tm90-cream-shade) 35px 49px);
  box-shadow:
    -4px 5px 0 var(--tm90-outline),
    inset 0 3px 0 rgba(255, 255, 255, 0.65),
    inset -6px -5px 0 rgba(99, 67, 150, 0.24);
  animation: tm90-head-idle 2.8s steps(6, end) infinite;
}

.tm90__head::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 6px;
  width: 10px;
  height: 10px;
  background:
    linear-gradient(90deg, #fff 0 5px, transparent 5px),
    linear-gradient(180deg, #fff 0 5px, transparent 5px);
  opacity: 0.9;
}

.tm90__screen {
  position: absolute;
  left: 13px;
  top: 12px;
  width: 52px;
  height: 25px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, #081b22 0 5px, var(--tm90-screen) 5px 25px);
  box-shadow:
    inset 0 2px 0 rgba(95, 255, 143, 0.12),
    0 3px 0 rgba(96, 54, 150, 0.45);
}

.tm90__eye {
  position: absolute;
  top: 7px;
  width: 6px;
  height: 12px;
  background:
    linear-gradient(180deg, #9ffff1 0 2px, #18eed2 2px 10px, #0ea391 10px 12px);
  box-shadow: 0 0 7px rgba(24, 238, 210, 0.44);
  animation: tm90-eye-blink 5s steps(2, end) infinite;
}

.tm90__eye--l {
  left: 14px;
}

.tm90__eye--r {
  right: 14px;
}

.tm90__smile {
  position: absolute;
  left: 15px;
  bottom: 5px;
  display: none;
  width: 22px;
  height: 8px;
  border-bottom: 3px solid var(--tm90-cyan);
  border-inline: 3px solid transparent;
}

.tm90__neck {
  position: absolute;
  left: 50%;
  top: 78px;
  z-index: 2;
  width: 18px;
  height: 10px;
  margin-left: -9px;
  border: 3px solid var(--tm90-ink);
  background: var(--tm90-metal);
}

.tm90__body {
  position: absolute;
  left: 50%;
  top: 81px;
  z-index: 4;
  width: 58px;
  height: 44px;
  margin-left: -29px;
  border: 4px solid var(--tm90-ink);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.7) 0 9px, transparent 9px calc(100% - 9px), rgba(61, 31, 104, 0.28) calc(100% - 9px)),
    linear-gradient(180deg, var(--tm90-cream-hi) 0 11px, var(--tm90-cream) 11px 33px, var(--tm90-cream-shade) 33px);
  clip-path: polygon(8px 0, calc(100% - 8px) 0, 100% 100%, 0 100%);
  box-shadow:
    -4px 4px 0 var(--tm90-outline),
    inset 0 3px 0 rgba(255, 255, 255, 0.6);
}

.tm90__clock {
  position: absolute;
  left: 50%;
  top: 8px;
  width: 30px;
  height: 30px;
  margin-left: -15px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, #b66dff 0 5px, var(--tm90-purple) 5px 22px, var(--tm90-purple-deep) 22px);
  box-shadow:
    inset 3px 2px 0 rgba(255, 255, 255, 0.35),
    0 0 8px rgba(140, 38, 234, 0.28);
}

.tm90__clock::before {
  content: "";
  position: absolute;
  inset: 6px;
  border: 2px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
}

.tm90__clock-hand {
  position: absolute;
  left: 14px;
  top: 8px;
  width: 3px;
  height: 11px;
  background: #fff8dc;
  transform-origin: 50% 100%;
}

.tm90__clock-hand--h {
  height: 8px;
  transform: rotate(0deg);
}

.tm90__clock-hand--m {
  transform: rotate(90deg);
}

.tm90__joint {
  position: absolute;
  z-index: 5;
  top: 84px;
  width: 13px;
  height: 13px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, #83fff7 0 4px, var(--tm90-cyan) 4px 9px, var(--tm90-cyan-deep) 9px);
  box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.7);
}

.tm90__joint--l {
  left: 29px;
}

.tm90__joint--r {
  right: 29px;
}

.tm90__arm {
  position: absolute;
  z-index: 3;
  top: 92px;
  width: 13px;
  height: 25px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, var(--tm90-metal-hi) 0 8px, var(--tm90-metal) 8px 18px, var(--tm90-metal-dark) 18px);
  transform-origin: 50% 4px;
  box-shadow: 2px 3px 0 rgba(0, 0, 0, 0.76);
}

.tm90__arm--l {
  left: 26px;
  transform: rotate(12deg);
  animation: tm90-arm-l-idle 3.2s steps(5, end) infinite;
}

.tm90__arm--r {
  right: 26px;
  transform: rotate(-12deg);
  animation: tm90-arm-r-idle 3.2s steps(5, end) infinite;
}

.tm90__hand {
  position: absolute;
  left: 50%;
  bottom: -10px;
  width: 17px;
  height: 14px;
  margin-left: -8px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, #fff9e8 0 5px, var(--tm90-cream) 5px 10px, var(--tm90-metal) 10px);
  box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.72);
}

.tm90__leg {
  position: absolute;
  z-index: 2;
  bottom: 15px;
  width: 13px;
  height: 17px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, var(--tm90-metal-hi) 0 5px, var(--tm90-metal) 5px 12px, var(--tm90-metal-dark) 12px);
  transform-origin: 50% 0;
}

.tm90__leg--l {
  left: 47px;
  animation: tm90-leg-l-idle 0.92s steps(2, end) infinite;
}

.tm90__leg--r {
  right: 47px;
  animation: tm90-leg-r-idle 0.92s steps(2, end) infinite;
}

.tm90__foot {
  position: absolute;
  z-index: 3;
  bottom: 7px;
  width: 24px;
  height: 11px;
  border: 3px solid var(--tm90-ink);
  background:
    linear-gradient(180deg, #fffbe8 0 4px, var(--tm90-cream) 4px 7px, var(--tm90-purple-hi) 7px 11px);
  box-shadow: 2px 2px 0 var(--tm90-outline);
}

.tm90__foot--l {
  left: 36px;
}

.tm90__foot--r {
  right: 36px;
}

#app[data-screen="welcome"] .taymi-bot--reference {
  animation: tm90-welcome-shell 0.92s steps(4, end) infinite;
}

#app[data-screen="welcome"] .taymi-bot--reference .tm90 {
  animation: tm90-welcome-rig 0.92s steps(4, end) infinite;
}

#app[data-screen="boot"] .taymi-bot--reference {
  animation: tm90-boot-shell 0.34s steps(3, end) infinite;
  filter:
    drop-shadow(4px 5px 0 rgba(0, 0, 0, 0.94))
    drop-shadow(0 0 8px rgba(140, 38, 234, 0.26));
}

#app[data-screen="boot"] .taymi-bot--reference .tm90 {
  animation: tm90-boot-rig 0.48s steps(3, end) infinite;
}

#app[data-screen="boot"] .tm90__arm--l {
  animation: tm90-boot-arm-l 0.34s steps(3, end) infinite;
}

#app[data-screen="boot"] .tm90__arm--r {
  animation: tm90-boot-arm-r 0.34s steps(3, end) infinite;
}

#app[data-screen="boot"] .tm90__clock {
  animation: tm90-boot-clock 0.5s steps(4, end) infinite;
}

#app[data-screen="result"] .taymi-bot--reference {
  animation: tm90-result-shell 2s steps(6, end) infinite;
  filter:
    drop-shadow(4px 5px 0 rgba(0, 0, 0, 0.88))
    drop-shadow(0 0 6px rgba(140, 38, 234, 0.16));
}

#app[data-screen="result"] .taymi-bot--reference .tm90 {
  animation: tm90-result-rig 2s steps(6, end) infinite;
}

#app[data-screen="result"] .tm90__arm--l {
  animation: tm90-result-arm-l 1.2s steps(4, end) infinite;
}

#app[data-screen="result"] .tm90__arm--r {
  animation: tm90-result-arm-r 1.2s steps(4, end) infinite;
}

#app[data-screen="result"] .tm90__smile {
  display: block;
}

#app[data-screen="result"] .tm90__eye {
  height: 6px;
  transform: translateY(3px);
}

.taymi-bot--reference.is-action-wave .tm90__arm--r {
  z-index: 8;
  animation: tm90-action-wave-r 1.65s steps(9, end) 1 both !important;
}

.taymi-bot--reference.is-action-wave .tm90__arm--l {
  animation: tm90-action-wave-l 1.65s steps(4, end) 1 both !important;
}

.taymi-bot--reference.is-action-wave .tm90__head {
  animation: tm90-action-wave-head 1.65s steps(5, end) 1 both !important;
}

.taymi-bot--reference.is-action-wave .tm90::after {
  content: "";
  position: absolute;
  top: 43px;
  right: 13px;
  width: 6px;
  height: 6px;
  background: var(--tm90-yellow);
  box-shadow:
    10px -10px 0 #fff9a8,
    18px 4px 0 var(--tm90-cyan),
    3px -23px 0 var(--tm90-green);
  animation: tm90-wave-sparks 1.65s steps(7, end) 1 both;
}

.taymi-bot--reference.is-action-antenna .tm90__antenna {
  animation: tm90-action-antenna 0.18s steps(2, end) 9 both !important;
}

.taymi-bot--reference.is-action-antenna .tm90__antenna-orb {
  animation: tm90-action-orb 1.7s steps(8, end) 1 both !important;
}

.taymi-bot--reference.is-action-antenna .tm90__signal {
  animation: tm90-action-signal 1.7s steps(6, end) 1 both;
}

.taymi-bot--reference.is-action-antenna .tm90__eye {
  animation: tm90-action-signal-eye 0.42s steps(2, end) 4 both !important;
}

.taymi-bot--reference.is-action-jump .tm90 {
  animation: tm90-action-jump 1.72s steps(10, end) 1 both !important;
}

.taymi-bot--reference.is-action-jump .tm90__arm--l {
  animation: tm90-action-jump-arm-l 1.72s steps(7, end) 1 both !important;
}

.taymi-bot--reference.is-action-jump .tm90__arm--r {
  animation: tm90-action-jump-arm-r 1.72s steps(7, end) 1 both !important;
}

.taymi-bot--reference.is-action-jump .tm90__shadow {
  animation: tm90-action-jump-shadow 1.72s steps(10, end) 1 both !important;
}

.taymi-bot--reference.is-action-jump .tm90::before {
  content: "";
  position: absolute;
  left: 27px;
  bottom: 4px;
  width: 10px;
  height: 5px;
  background: rgba(244, 232, 201, 0.68);
  box-shadow:
    55px 0 0 rgba(244, 232, 201, 0.68),
    -8px 2px 0 rgba(244, 232, 201, 0.34),
    65px 2px 0 rgba(244, 232, 201, 0.34);
  animation: tm90-action-jump-dust 1.72s steps(8, end) 1 both;
}

.taymi-btn--a .taymi-btn__cap {
  background: radial-gradient(circle at 32% 28%, #ff9a9a 0%, #ff4054 42%, #9d1028 100%);
}

.taymi-btn--b .taymi-btn__cap {
  background: radial-gradient(circle at 32% 28%, #d8b9ff 0%, var(--tm90-purple-hi) 42%, var(--tm90-purple-deep) 100%);
}

.taymi-btn--c .taymi-btn__cap {
  background: radial-gradient(circle at 32% 28%, #aaffd2 0%, #38e58c 42%, #0c8a45 100%);
}

@keyframes tm90-shell-idle {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-2px); }
}

@keyframes tm90-rig-idle {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

@keyframes tm90-shadow-idle {
  0%, 100% { transform: scaleX(1); opacity: 0.72; }
  50% { transform: scaleX(0.86); opacity: 0.48; }
}

@keyframes tm90-antenna-idle {
  0%, 100% { transform: rotate(-4deg); }
  50% { transform: rotate(4deg); }
}

@keyframes tm90-orb-blink {
  0%, 78%, 100% { filter: brightness(1); }
  82%, 86% { filter: brightness(1.8); }
}

@keyframes tm90-head-idle {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(1px); }
}

@keyframes tm90-eye-blink {
  0%, 90%, 100% { transform: scaleY(1); opacity: 1; }
  94% { transform: scaleY(0.24); opacity: 0.6; }
}

@keyframes tm90-arm-l-idle {
  0%, 100% { transform: rotate(12deg); }
  50% { transform: rotate(2deg); }
}

@keyframes tm90-arm-r-idle {
  0%, 100% { transform: rotate(-12deg); }
  50% { transform: rotate(-2deg); }
}

@keyframes tm90-leg-l-idle {
  0%, 49% { transform: translateY(0); }
  50%, 100% { transform: translateY(-2px); }
}

@keyframes tm90-leg-r-idle {
  0%, 49% { transform: translateY(-2px); }
  50%, 100% { transform: translateY(0); }
}

@keyframes tm90-welcome-shell {
  0%, 100% { transform: translateX(-3px); }
  50% { transform: translateX(3px); }
}

@keyframes tm90-welcome-rig {
  0%, 100% { transform: translateY(-1px) rotate(-1deg); }
  50% { transform: translateY(-6px) rotate(1deg); }
}

@keyframes tm90-boot-shell {
  0%, 100% { transform: translate(1px, -1px); }
  50% { transform: translate(-2px, 1px); }
}

@keyframes tm90-boot-rig {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}

@keyframes tm90-boot-arm-l {
  0%, 100% { transform: rotate(52deg); }
  50% { transform: rotate(-26deg); }
}

@keyframes tm90-boot-arm-r {
  0%, 100% { transform: rotate(-52deg); }
  50% { transform: rotate(26deg); }
}

@keyframes tm90-boot-clock {
  0%, 100% { filter: brightness(1.1); transform: scale(1); }
  50% { filter: brightness(1.7) drop-shadow(0 0 8px rgba(238, 255, 45, 0.45)); transform: scale(1.08); }
}

@keyframes tm90-result-shell {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes tm90-result-rig {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes tm90-result-arm-l {
  0%, 100% { transform: rotate(-120deg); }
  50% { transform: rotate(-96deg); }
}

@keyframes tm90-result-arm-r {
  0%, 100% { transform: rotate(120deg); }
  50% { transform: rotate(96deg); }
}

@keyframes tm90-action-wave-r {
  0%, 100% { transform: rotate(-12deg); }
  12% { transform: rotate(-98deg); }
  24% { transform: rotate(-138deg); }
  36% { transform: rotate(-104deg); }
  48% { transform: rotate(-146deg); }
  60% { transform: rotate(-106deg); }
  72% { transform: rotate(-138deg); }
  84% { transform: rotate(-104deg); }
}

@keyframes tm90-action-wave-l {
  0%, 100% { transform: rotate(12deg); }
  20%, 82% { transform: rotate(38deg); }
}

@keyframes tm90-action-wave-head {
  0%, 100% { transform: rotate(0); }
  24%, 78% { transform: rotate(-3deg) translateX(-1px); }
}

@keyframes tm90-wave-sparks {
  0%, 14%, 100% { opacity: 0; transform: translate(0, 0); }
  24% { opacity: 1; transform: translate(3px, -8px); }
  44% { opacity: 0.86; transform: translate(8px, -19px); }
  64% { opacity: 0.62; transform: translate(14px, -31px); }
  82% { opacity: 0.3; transform: translate(18px, -41px); }
}

@keyframes tm90-action-antenna {
  0%, 100% { transform: rotate(-12deg); }
  50% { transform: rotate(12deg); }
}

@keyframes tm90-action-orb {
  0%, 100% { transform: scale(1); filter: brightness(1); }
  12%, 38%, 64% { transform: scale(1.45); filter: brightness(1.9) drop-shadow(0 0 12px rgba(238, 255, 45, 0.7)); }
  25%, 51%, 77% { transform: scale(0.9); filter: brightness(0.72); }
}

@keyframes tm90-action-signal {
  0%, 100% { opacity: 0; transform: scale(0.7); }
  16%, 72% { opacity: 1; transform: scale(1); }
}

@keyframes tm90-action-signal-eye {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(2.1) drop-shadow(0 0 8px var(--tm90-cyan)); }
}

@keyframes tm90-action-jump {
  0%, 100% { transform: translateY(0) scaleX(1) scaleY(1); }
  8% { transform: translateY(4px) scaleX(1.08) scaleY(0.9); }
  18% { transform: translateY(-35px) scaleX(0.94) scaleY(1.08); }
  30% { transform: translateY(-39px) scaleX(0.93) scaleY(1.12); }
  42% { transform: translateY(0) scaleX(1.12) scaleY(0.8); }
  54% { transform: translateY(3px) scaleX(1.08) scaleY(0.9); }
  66% { transform: translateY(-27px) scaleX(0.96) scaleY(1.06); }
  76% { transform: translateY(-31px) scaleX(0.94) scaleY(1.1); }
  88% { transform: translateY(0) scaleX(1.08) scaleY(0.86); }
}

@keyframes tm90-action-jump-arm-l {
  0%, 100% { transform: rotate(12deg); }
  14%, 70% { transform: rotate(-118deg); }
  42%, 88% { transform: rotate(36deg); }
}

@keyframes tm90-action-jump-arm-r {
  0%, 100% { transform: rotate(-12deg); }
  14%, 70% { transform: rotate(118deg); }
  42%, 88% { transform: rotate(-36deg); }
}

@keyframes tm90-action-jump-shadow {
  0%, 100% { transform: scaleX(1); opacity: 0.72; }
  20%, 76% { transform: scaleX(0.52); opacity: 0.26; }
  42%, 88% { transform: scaleX(1.16); opacity: 0.82; }
}

@keyframes tm90-action-jump-dust {
  0%, 18%, 100% { opacity: 0; transform: translateY(0); }
  42%, 88% { opacity: 0.85; transform: translateY(-2px); }
  54%, 96% { opacity: 0; transform: translateY(2px); }
}

@media (max-width: 720px) {
  .taymi-pixel-frame {
    transform: scale(1.55);
  }

  .taymi-arcade__stage {
    min-height: 250px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .taymi-bot--reference,
  .taymi-bot--reference .tm90,
  .tm90__shadow,
  .tm90__antenna,
  .tm90__antenna-orb,
  .tm90__head,
  .tm90__eye,
  .tm90__arm--l,
  .tm90__arm--r,
  .tm90__leg--l,
  .tm90__leg--r {
    animation-duration: 1.2s !important;
  }

  .taymi-bot--reference.is-action-wave .tm90__arm--r,
  .taymi-bot--reference.is-action-wave .tm90__arm--l,
  .taymi-bot--reference.is-action-wave .tm90__head,
  .taymi-bot--reference.is-action-antenna .tm90__antenna,
  .taymi-bot--reference.is-action-antenna .tm90__antenna-orb,
  .taymi-bot--reference.is-action-antenna .tm90__signal,
  .taymi-bot--reference.is-action-jump .tm90,
  .taymi-bot--reference.is-action-jump .tm90__arm--l,
  .taymi-bot--reference.is-action-jump .tm90__arm--r {
    animation-duration: 0.72s !important;
    animation-iteration-count: 1 !important;
  }
}
