/* Turn visibility only. No table, seating, hand or chat geometry overrides. */
.player.active, .my-person.turn-active {
  background: #176b45;
  color: #fffbea;
}
.my-person.turn-active { border-radius: 8px; box-shadow: 0 0 0 3px #176b45; }
.table-metrics.my-turn { background: #176b45; }
.table-metrics.my-turn .metric small { color: #e0f6e6; }
.table-metrics.my-turn .metric strong { color: #fff5ce; }
/* Keep the information panel centred just inside the lower felt border. */
.table-felt .table-metrics { top: auto; bottom: 32px; }
@media (max-width: 350px) {
  .table-felt .table-metrics { bottom: 56px; }
}
/* Only the six-player spectator seating layout has a bottom seat. */
.table-felt:has(#players > .seat-bottom) .table-metrics { top: 6%; bottom: auto; }
@media (max-width: 700px) {
  .table-felt:has(#players > .seat-bottom) .table-metrics { top: 3%; }
}
.turn-badge {
  background: #ffdf58;
  color: #20331d;
  font-size: 12px;
  line-height: 1;
  padding: 7px 10px;
  font-weight: 900;
  flex: 0 0 auto;
  animation: nobtekGlow 1.8s ease-in-out infinite;
}
.my-person-info { flex-shrink: 1; }
.my-person.turn-active + .hand-actions { flex-shrink: 0; }
.player-card-line { display: flex; align-items: center; gap: 4px; min-width: 0; }
.remote-turn-badge { font-size: 9px; padding: 3px 4px; letter-spacing: .1px; }
@keyframes nobtekGlow {
  0%, 100% { box-shadow: 0 0 2px #ffdf5840; }
  50% { box-shadow: 0 0 10px #ffdf5880; }
}
@media (max-width: 700px) {
  .turn-badge { font-size: 10px; padding: 6px 7px; letter-spacing: .3px; }
  .remote-turn-badge { font-size: 8px; padding: 2px 3px; letter-spacing: 0; }
  .player.active .player-details { gap: 2px; }
}
@media (prefers-reduced-motion: reduce) {
  .turn-badge { animation: none; }
}
