@php
  $ordine = $asporto->ordine;
  $info = is_array($ordine?->info) ? $ordine->info : [];
  $cliente = $info['cliente'] ?? ($ordine->nome ?? '—');
  $codice = $ordine->codice ?? ('A-'.$asporto->ordine_id);
  $oraRitiro = $asporto->ora_ritiro
    ? \Illuminate\Support\Carbon::parse($asporto->ora_ritiro)
    : null;
  $consegnatoAt = $asporto->updated_at
    ? \Illuminate\Support\Carbon::parse($asporto->updated_at)
    : null;
  $orario = $oraRitiro ? $oraRitiro->format('H:i') : '';
  $consegnatoOra = $consegnatoAt ? $consegnatoAt->format('H:i') : '';
  $diffMin = null;
  $diffLabel = '';
  if ($oraRitiro && $consegnatoAt) {
    $diffMin = (int) round(($consegnatoAt->getTimestamp() - $oraRitiro->getTimestamp()) / 60);
    if ($diffMin > 0) {
      $diffLabel = 'Consegnato in ritardo di '.$diffMin.' min';
    } elseif ($diffMin < 0) {
      $diffLabel = 'Consegnato in anticipo di '.abs($diffMin).' min';
    } else {
      $diffLabel = 'Consegnato in orario';
    }
  }
  $diffLevel = $diffMin === null ? '' : ($diffMin > 0 ? 'late' : ($diffMin < 0 ? 'early' : 'ok'));
@endphp

<div
  class="asporto-done-card"
  data-done-id="{{ $asporto->id }}"
  @if($diffLevel !== '') data-diff-level="{{ $diffLevel }}" @endif
>
  <div class="asporto-done-card__top">
    <span class="asporto-done-card__code">{{ $codice }}</span>
    <span class="asporto-done-card__cliente" title="{{ $cliente }}">{{ $cliente }}</span>
  </div>
  <div class="asporto-done-card__meta">
    @if($orario !== '')
      <span class="asporto-done-card__ora" title="Orario ritiro">{{ $orario }}</span>
    @endif
    @if($consegnatoOra !== '')
      <span class="asporto-done-card__upd" title="Consegnato alle">{{ $consegnatoOra }}</span>
    @endif
    @if($diffLabel !== '')
      <span class="asporto-done-card__diff">{{ $diffLabel }}</span>
    @endif
  </div>
</div>
