/* Объявление «ваш ход» по центру экрана. Показывается классом on, вся
   хореография — одна анимация: появление, пауза, уход (render/turncallbox).
   Палитра — от табло (переменные из board.css): латунь на тёмной полосе,
   как гравировка на борту стола, а не всплывающее окно. */

#turncall {
  position: fixed;
  left: 0;
  right: 0;
  /* Чуть выше середины: центр экрана — это центр стола, там биток и прицел. */
  top: 36%;
  transform: translateY(-50%);
  /* Над канвой и чатом, под табло, пультом и любыми окнами. */
  z-index: 9;
  display: grid;
  justify-items: center;
  gap: 12px;
  padding: 22px 0 24px;
  /* Объявление не кнопка: клик сквозь него идёт на стол, прицел не теряется. */
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  /* Полоса гаснет к краям — у неё нет границ, которые читались бы плашкой. */
  background: linear-gradient(
    90deg,
    rgba(6, 8, 7, 0) 0%,
    rgba(6, 8, 7, 0.82) 24%,
    rgba(6, 8, 7, 0.82) 76%,
    rgba(6, 8, 7, 0) 100%
  );
}

#turncall.on {
  visibility: visible;
  animation: tc-life 1900ms ease-out both;
}

#turncall .tc-line {
  height: 1px;
  width: min(560px, 72vw);
  background: linear-gradient(90deg, transparent, var(--brass, #c9a227) 50%, transparent);
  transform: scaleX(0);
}

#turncall.on .tc-line { animation: tc-line 1900ms cubic-bezier(0.2, 0.7, 0.2, 1) both; }

#turncall .tc-title {
  font: 600 clamp(26px, 5.4vw, 58px) / 1 Rubik, system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.34em;
  /* Разрядка добавляет пустоту после последней буквы — без поправки надпись
     стоит левее линий на полбуквы, и глаз это ловит. */
  text-indent: 0.34em;
  color: var(--brass, #c9a227);
  text-shadow:
    0 0 28px rgba(201, 162, 39, 0.35),
    0 2px 0 rgba(0, 0, 0, 0.6);
  white-space: nowrap;
}

#turncall.on .tc-title { animation: tc-title 1900ms cubic-bezier(0.2, 0.7, 0.2, 1) both; }

#turncall .tc-sub {
  font: 400 clamp(11px, 1.5vw, 14px) / 1 Rubik, system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
  color: var(--chalk-mute, #8a8478);
}

@keyframes tc-life {
  0% { opacity: 0; }
  12% { opacity: 1; }
  70% { opacity: 1; }
  100% { opacity: 0; }
}

/* Линии расходятся от центра и остаются: они рамка, а не вспышка. */
@keyframes tc-line {
  0% { transform: scaleX(0); }
  30% { transform: scaleX(1); }
  100% { transform: scaleX(1); }
}

/* Надпись собирается: из широкой разрядки — в свою. Уходит без движения,
   одним затуханием полосы: уезжающий текст тянул бы взгляд за собой со стола. */
@keyframes tc-title {
  0% { letter-spacing: 0.6em; text-indent: 0.6em; }
  30% { letter-spacing: 0.34em; text-indent: 0.34em; }
  100% { letter-spacing: 0.34em; text-indent: 0.34em; }
}

/* Кому движение мешает — тому только появление и уход. */
@media (prefers-reduced-motion: reduce) {
  #turncall.on .tc-line { animation: none; transform: scaleX(1); }
  #turncall.on .tc-title { animation: none; }
}

/* В лобби стола не видно и хода нет — объявлять нечего, даже если снимок
   прежней комнаты догнал нас уже после выхода. */
body.lobby #turncall { display: none; }
