@php $badgeClass = match ($p->status) { 'On Track' => 'g', 'At Risk' => 'r', 'Completed' => 's', 'On Hold' => 'v', default => 'a', }; $barClass = match ($p->status) { 'At Risk' => 'bg-red-400', 'Completed' => 'bg-slate-400', 'On Hold' => 'bg-violet-400', default => 'bg-emerald-500', }; $inc = (float) ($p->agg_income ?? 0); $exp = (float) ($p->agg_expense ?? 0); $pl = $inc - $exp; $margin = $inc > 0 ? round(($pl / $inc) * 100, 1) : 0; $budgetUsed = (float) ($p->budget ?? 0) > 0 ? round(($exp / (float) $p->budget) * 100, 1) : 0; $tc = ['bg-blue-100 text-blue-700','bg-purple-100 text-purple-700','bg-amber-100 text-amber-700','bg-rose-100 text-rose-700','bg-teal-100 text-teal-700','bg-pink-100 text-pink-700']; @endphp
{{ $p->status }} {{ $p->due_date?->format('M Y') ?? 'TBD' }}

{{ $p->name }}

@if($p->location)

{{ $p->location }}

@endif

{{ $p->description }}

{{ $p->client?->company_name ?? 'TBD' }}

Progress{{ $p->progress_percentage }}%

Budget used {{ $budgetUsed }}%

Budget

{{ \App\Support\Format::mwk($p->budget) }}

P/L

{{ \App\Support\Format::mwk($pl, true) }}

Margin

{{ $margin }}%

@php $teamMembers = $p->team->take(3); @endphp @forelse($teamMembers as $emp)
{{ $emp->initials }}
@empty No team assigned @endforelse @if($p->team->count() > 3)
+{{ $p->team->count() - 3 }}
@endif