<?php

declare(strict_types=1);

/**
 * Kompakte Spielzeile (kicker-Stil): Datum oben, darunter Heim über Gast (Wappen +
 * Name, lange Namen werden mit … gekürzt), rechts das Ergebnis bzw. — bei
 * anstehenden Spielen — die Anstoßzeit. Heim steht immer oben. Props:
 *   $match  Eintrag aus data/matchcenter.json (next_matches[]/last_results[]/upcoming[])
 *   $meta   optionale Angabe neben dem Datum (im „Nächste Spiele"-Band: die Mannschaft)
 *   $href   optionales Ziel — dann ist die ganze Zeile ein Link
 * Der innere __link-Wrapper trägt Raster und Innenabstand, damit als Link die
 * komplette Zeilenfläche klickbar ist (und ohne Link nichts anders aussieht).
 */
$m = $match;
$hasResult = isset($m['goals_home'], $m['goals_away']);
$isHome = !empty($m['is_home']);
$meta = (string) ($meta ?? '');
$href = $href ?? null;
?>
                    <li class="match-row">
<?php if ($href !== null): ?>
                        <a class="match-row__link" href="<?= e($href) ?>">
<?php else: ?>
                        <div class="match-row__link">
<?php endif; ?>
<?php if (!empty($m['date_display']) || $meta !== ''): ?>
                            <span class="match-row__head">
<?php if (!empty($m['date_display'])): ?>
                                <span class="match-row__date"><?= e($m['date_display']) ?></span>
<?php endif; ?>
<?php if ($meta !== ''): ?>
                                <span class="match-row__meta"><?= e($meta) ?></span>
<?php endif; ?>
                            </span>
<?php endif; ?>
                            <span class="match-row__teams">
                                <span class="match-row__team<?= $isHome ? ' is-own' : '' ?>">
                                    <?php component('crest', ['src' => $m['home_crest'] ?? null, 'name' => $m['home'] ?? '']); ?>
                                    <span class="match-row__name" title="<?= e($m['home'] ?? '') ?>"><?= e($m['home'] ?? '') ?></span>
                                </span>
                                <span class="match-row__team<?= !$isHome ? ' is-own' : '' ?>">
                                    <?php component('crest', ['src' => $m['away_crest'] ?? null, 'name' => $m['away'] ?? '']); ?>
                                    <span class="match-row__name" title="<?= e($m['away'] ?? '') ?>"><?= e($m['away'] ?? '') ?></span>
                                </span>
                            </span>
                            <span class="match-row__outcome">
<?php if ($hasResult): ?>
                                <span class="match-row__score"><?= (int) $m['goals_home'] ?>:<?= (int) $m['goals_away'] ?></span>
<?php elseif (!empty($m['time_display'])): ?>
                                <span class="match-row__time"><?= e($m['time_display']) ?></span>
<?php else: ?>
                                <span class="match-row__time" aria-hidden="true">–</span>
<?php endif; ?>
                            </span>
<?php if ($href !== null): ?>
                            <span class="visually-hidden">– zur Mannschaft</span>
                        </a>
<?php else: ?>
                        </div>
<?php endif; ?>
                    </li>
