{{ t('cardsRemaining') }} {{ gameDeck.length }}
{{ initials(currentPlayer.name) }}
{{ currentPlayer.name }}
{{ t('passPhone') }} {{ currentPlayer.name }}. {{ t('tapWhenReady') }}
{{ currentPlayer.name }}
{{ formatDelta(turnScoreEarned) }}
{{ timeLeft }}
{{ difficultyName(currentCard.difficulty) }} +{{ currentCard.difficulty }}
{{ currentCard.word }}
- {{ w }}
{{ t('verifyAction') }}
{{ actionText }}
{{ t('breakMessage') }} {{ breakTimeLeft }}s…
{{ t('timesUp') }}
{{ t('endTurnText') }} {{ currentPlayer.name }} · {{ formatDelta(turnScoreEarned) }}
- {{ p.name }} {{ formatDelta(turnScoreEarned) }} {{ p.score }}
{{ t('gameOver') }}
{{ gameOverReason }}
- #{{ idx + 1 }} {{ p.name }} {{ p.score }}
{{ t(screen === 'turn_end' ? 'turnCards' : 'lastTurnCards') }} {{ turnHistory.length }}
-
{{ t('hiddenCard') }}{{ t('backInDeck') }}{{ resultText(entry) }}{{ entry.card.word }}{{ entry.card.taboo.join(' · ') }}
T{{ t('gameTitle') }}
{{ t('chooseDeck') }}
{{ t('noDecks') }}
{{ t('addPlayers') }}
- {{ initials(p.name) }} {{ p.name }}
{{ t('noPlayers') }}
{{ t('noDecksEditor') }}
{{ editorCards.length }} {{ t('cards') }}
-
{{ card.difficulty }}{{ card.word }}{{ card.taboo.join(' · ') }}
{{ searchQuery ? t('noMatches') : t('noCards') }}
{{ t('options') }}
{{ t('uiLanguage') }}
{{ t('data') }}
{{ t('dataStoredLocally') }}
{{ cardSheet.originalWord ? t('editCardTitle') : t('addNewCardTitle') }}
{{ preview.title }}
{{ t('cardOf', { n: preview.index + 1, total: preview.cards.length }) }}
{{ difficultyName(previewCard.difficulty) }} +{{ previewCard.difficulty }}
{{ previewCard.word }}
- {{ w }}
{{ t('shareTitle') }}
{{ toast }}