Defines SeatBadgeTone enum for badge color intent and a readonly record struct SeatBadge containing Text and Tone for player-seat tags used in the players panel.
namespace CardGames;
/// <summary>Colour intent for a <see cref="SeatBadge"/> in the players panel.</summary>
public enum SeatBadgeTone
{
Neutral,
Good, // green - a positive state (ready, blackjack)
Bad, // red - a negative/locked state (all-in, bust)
Gold, // highlighted marker (dealer button)
}
/// <summary>
/// A small tag a game hangs on a seat in the generic players panel - e.g. a dealer "D", "ALL-IN",
/// "READY", a hand total. Games supply these from <see cref="CardGame.SeatBadges"/>; the panel renders
/// them the same way for every game. Build them from synced state only, since clients read them too.
/// </summary>
public readonly record struct SeatBadge( string Text, SeatBadgeTone Tone = SeatBadgeTone.Neutral );