{{-- Header --}}
N

{{ $state['show_title'] }}

{{ __('Episode') }} {{ $state['episode_number'] }} · {{ __('seq') }} {{ $state['sequence'] }} · {{ ucfirst($state['layout']) }} {{ __('layout') }}

@if($state['status'] === 'live')@endif {{ strtoupper($state['status']) }} @if (in_array($state['status'], ['draft', 'scheduled'])) @elseif ($state['status'] === 'live') @elseif ($state['status'] === 'paused') @endif {{ __('Studio Screen') }}
@if ($feedback)
{{ $feedback }}
@endif
{{-- Contestants + scoring --}}

{{ __('Contestants') }}

@forelse ($contestants as $contestant) @php $isCurrent = ($state['current_contestant']['id'] ?? null) === $contestant->id; @endphp @empty

{{ __('No contestants assigned.') }}

@endforelse

{{ __('Scoring') }}

@if ($state['current_contestant'] ?? null)

{{ $state['current_contestant']['full_name'] }} ({{ number_format($state['current_contestant']['points']) }} {{ __('pts') }})

@else

{{ __('No contestant selected.') }}

@endif
@if (($state['current_question'] ?? null))

{{ __('Question') }} {{ $state['current_question']['points'] }} {{ __('pts') }}

@endif @if ($currentEvaluation)

{{ __('Result') }} {{ $currentEvaluation->verdict === 'correct' ? __('Correct') : __('Incorrect') }}

{{ __('Points Earned') }} +{{ (int) $currentEvaluation->awarded_points }}

@elseif ($currentSubmission)

{{ __('Result') }} {{ __('Pending') }}

@else

{{ __('Waiting for the contestant to answer…') }}

@endif

{{ __('Manual Adjustment') }}

@error('adjustReason')

{{ $message }}

@enderror @error('adjustContestantId')

{{ $message }}

@enderror
{{-- Question + timer --}}

{{ __('Current Question') }}

@php $pending = $state['pending_questions'] ?? 0; @endphp @if ($pending > 0) {{ $pending }} {{ __('left') }} @endif @if (! $state['is_question_revealed']) @endif @if (($state['current_question'] ?? null)) @php $window = $state['answer_window'] ?? []; @endphp @if (($window['contestants_open'] ?? false)) @elseif (! $state['is_question_revealed']) @endif @endif
@if ($state['current_question'] ?? null) @php $window = $state['answer_window'] ?? []; @endphp
{{ ($window['contestants_open'] ?? false) ? __('Answers Open') : __('Answers Closed') }} {{ __('Contestants answered') }}: {{ $submissionCounts['contestants'] ?? 0 }} {{ __('Participants answered') }}: {{ $submissionCounts['participants'] ?? 0 }} {{ __('Pending') }}: {{ $submissionCounts['pending'] ?? 0 }} {{ __('Checked') }}: {{ $submissionCounts['checked'] ?? 0 }}
@endif @if ($state['current_question'] ?? null)

{{ $state['current_question']['question_text'] }}

{{ $state['current_question']['points'] }} {{ __('pts') }} {{ ucfirst(str_replace('_', ' ', $state['current_question']['question_type'])) }} {{ ucfirst($state['current_question']['difficulty']) }}
@if (count($state['current_question']['options'] ?? []))
@foreach ($state['current_question']['options'] as $option) @php $isCorrect = ($state['reveal']['correct_option_id'] ?? null) === $option['id']; @endphp
{{ $option['label'] }}{{ $option['option_text'] }}
@endforeach
@endif @if ($state['is_question_revealed'] && ($state['reveal']['correct_answer'] ?? null))
{{ __('Answer') }}: {{ $state['reveal']['correct_answer'] }}
@endif @else @if (($state['pending_questions'] ?? 0) > 0)

{{ __('No question displayed. Use "Next Question" to begin.') }}

@elseif (($state['total_questions'] ?? 0) > 0)

{{ __('All questions for this episode have been used. End the show when you are ready.') }}

@else

{{ __('No questions queued. Add questions to this episode to begin.') }}

@endif @endif
{{-- Contestant answer + evaluation --}}

{{ __('Contestant Answer') }}

@if ($currentEvaluation) {{ $currentEvaluation->verdict === 'correct' ? '✅ ' . __('Correct') : '❌ ' . __('Incorrect') }} @elseif ($currentSubmission) {{ __('Pending') }} @endif
@if (! ($state['current_contestant'] ?? null))

{{ __('No contestant selected.') }}

@elseif (! ($state['current_question'] ?? null))

{{ __('Display a question first.') }}

@elseif ($currentSubmission) @php $verdict = $currentEvaluation?->verdict; $answerText = $currentSubmission->selectedOption ? $currentSubmission->selectedOption->label . '. ' . $currentSubmission->selectedOption->option_text : ($currentSubmission->answer ?: __('No answer text provided.')); $correctText = $currentQuestionModel?->correctAnswerText(); $answerBorder = match ($verdict) { 'correct' => 'border-emerald-500/60 bg-emerald-500/10', 'incorrect' => 'border-red-500/60 bg-red-500/10', default => 'border-white/10', }; $resultBadge = match ($verdict) { 'correct' => ['badge-green', __('Correct')], 'incorrect' => ['badge-red', __('Incorrect')], default => ['badge-amber', __('Pending')], }; @endphp
{{ __('Question') }}
{{ $state['current_question']['question_text'] }}
{{ __('Contestant') }}
{{ $currentSubmission->contestant?->full_name ?? $state['current_contestant']['full_name'] }}
{{ __('Contestant Answer') }}
{{ $answerText }}
@if ($verdict === 'incorrect' && $correctText)
{{ __('Correct answer') }}
{{ $correctText }}
@endif
{{ __('Result') }}
{{ $resultBadge[1] }}
{{ __('Points Earned') }}
{{ $currentEvaluation ? '+' . (int) $currentEvaluation->awarded_points : '—' }}
{{ __('Total Score') }}
{{ number_format($state['current_contestant']['points']) }} {{ __('pts') }}
@if ($currentSubmission->submitted_at)

{{ __('Submitted at :time', ['time' => $currentSubmission->submitted_at->format('H:i:s')]) }}

@endif
@if ($currentEvaluation) @endif
@else

{{ __('Waiting for the contestant to answer…') }}

@endif @if (! $currentSubmission || $showManualEntry)

{{ __('Enter the answer manually') }}

@php $questionForManual = $state['current_question'] ?? null; $hasOptions = $questionForManual && count($questionForManual['options'] ?? []) > 0; @endphp @if ($hasOptions)
@foreach ($questionForManual['options'] as $option) @endforeach
@error('manualOptionId')

{{ $message }}

@enderror @else @error('manualAnswer')

{{ $message }}

@enderror @endif
@if ($currentSubmission) @endif
@endif
{{-- All submissions (contestants + online participants) --}}

{{ __('Submissions') }}

{{ $submissions->count() }} {{ __('total') }} @if (($submissionCounts['pending'] ?? 0) > 0) @endif
@if (! ($state['current_question'] ?? null))

{{ __('Display a question first.') }}

@elseif ($submissions->isEmpty())

{{ __('No answers submitted yet.') }}

@else
@foreach ($submissions as $submission) @php $evaluation = $submission->evaluations->sortByDesc('id')->first(); $verdict = $evaluation?->verdict; $isContestantRow = $submission->account_type === \App\Models\AnswerSubmission::ACCOUNT_TYPE_CONTESTANT; $rowName = $submission->contestant?->full_name ?? $submission->user?->name ?? __('Unknown'); $rowAnswer = $submission->selectedOption ? $submission->selectedOption->label . '. ' . $submission->selectedOption->option_text : ($submission->answer ?: __('No answer text provided.')); $rowBadge = match ($verdict) { 'correct' => ['badge-green', __('Correct')], 'incorrect' => ['badge-red', __('Incorrect')], default => ['badge-amber', __('Pending')], }; @endphp
{{ $isContestantRow ? __('Contestant') : __('Participant') }} {{ $rowName }}
{{ $rowBadge[1] }} @if ($evaluation) +{{ (int) $evaluation->awarded_points }} @else @endif

{{ $rowAnswer }}

@if ($submission->submitted_at)

{{ $submission->submitted_at->format('H:i:s') }}

@endif
@endforeach
@endif
{{-- Timer --}}

{{ __('Timer') }}

{{ gmdate('i:s', (int) $state['timer']['remaining']) }}

{{-- Layout + participation --}}

{{ __('Studio Layout') }}

@foreach (\App\Services\ShowStateService::LAYOUTS as $layout) @endforeach

{{ __('Online Participation') }}

{{-- Queue + announcements --}}

{{ __('Question Queue') }}

@forelse ($questions as $eq) @empty

{{ __('No questions queued.') }}

@endforelse

{{ __('AI Voice Narration') }}

{{ strtoupper($narrationProvider ?? 'browser') }}

{{ __('Voice') }}

@foreach ((array) config('narration.voices') as $key => $voice) @endforeach
{{ __('Speaking…') }}

{{ __('Somali narration is generated from the active question and its options.') }}

{{ __('Announcements') }}

@error('announcementMessage')

{{ $message }}

@enderror
@foreach ($activeAnnouncements as $announcement)
{{ $announcement->message }}
@endforeach