diff --git a/apps/web/components/overlay/MatchOverlay.tsx b/apps/web/components/overlay/MatchOverlay.tsx
index 2662ef38..9d5b1619 100644
--- a/apps/web/components/overlay/MatchOverlay.tsx
+++ b/apps/web/components/overlay/MatchOverlay.tsx
@@ -1,19 +1,19 @@
/**
* MatchOverlay, bottom-sheet card with the compact match-preview view.
*
- * Renders a slimmed-down version of `/match/[id]/preview`: kickoff
+ * Renders a slimmed-down version of the match-preview surface: kickoff
* label + venue, both team flags, and quick links to each team's
- * overlay (replaces self) plus a "View full preview" link to the real
- * route.
+ * overlay (replaces self).
*
- * Like TeamOverlay, this doesn't import the full preview component -
- * it builds its own compact view from pure helpers so the overlay opens
- * instantly.
+ * Tim 2026-06-05: the "Full page →" header CTA and the "Open full
+ * preview (Predict / H2H / Form / Lineup / Stats) →" footer CTA were
+ * removed because the underlying `/match/[id]/preview` route doesn't
+ * exist as a publishable surface yet. The overlay IS the preview
+ * surface for now.
*/
"use client";
-import Link from "next/link";
import { useMemo } from "react";
import { loadFixtures2026 } from "@tournamental/bracket-engine";
@@ -66,28 +66,15 @@ export function MatchOverlay(props: MatchOverlayProps) {
const home = match.homeCode ? canonicalTeam(match.homeCode) : undefined;
const away = match.awayCode ? canonicalTeam(match.awayCode) : undefined;
- const fullPageHref = `/match/${match.matchId}/preview`;
const homeName = home?.name ?? match.homeCode ?? "TBD";
const awayName = away?.name ?? match.awayCode ?? "TBD";
- const headerSlot = (
- overlay.closeAll()}
- aria-label="Open the full match preview page"
- >
- Full page →
-
- );
-
const kickoff = new Date(match.kickoffUtc);
const kickoffLabel = formatKickoff(kickoff);
return (
overlay.replace("team", { code })}
/>
-
-
);
diff --git a/apps/web/components/overlay/TeamOverlay.tsx b/apps/web/components/overlay/TeamOverlay.tsx
index 4c44d5fb..8fea6860 100644
--- a/apps/web/components/overlay/TeamOverlay.tsx
+++ b/apps/web/components/overlay/TeamOverlay.tsx
@@ -3,13 +3,14 @@
*
* Pulls a compact set of fields from the canonical teams JSON + the
* tournament fixture data so the overlay is light enough to open
- * instantly. The "View full team page" CTA in the header navigates to
- * the real `/team/[code]` route for the deeper detail view.
+ * instantly. The overlay IS the team-detail surface for now.
*
- * Note: we deliberately don't import the full team page component -
- * it's a server component with its own data dependencies. Instead we
- * hand-roll a compact card view here that mirrors the same data
- * surface (flag, name, world rank, group, manager, fixtures).
+ * Tim 2026-06-05: the "Full page →" header CTA, the "View match
+ * preview" button in the Next-Match section, and the "Open full team
+ * page →" footer CTA were removed because the underlying `/team/[code]`
+ * route doesn't exist as a publishable surface yet. Fixture rows below
+ * the Next-Match section still open the MatchOverlay (not a route), so
+ * navigation between team + match overlays continues to work.
*/
"use client";
@@ -82,22 +83,9 @@ export function TeamOverlay(props: TeamOverlayProps) {
const primary = canonical.kit?.primary ?? "#fbbf24";
- const fullPageHref = `/team/${upper}`;
- const headerSlot = (
- overlay.closeAll()}
- aria-label={`Open the full ${canonical.name} team page`}
- >
- Full page →
-
- );
-
return (
{upcoming.venue && , {upcoming.venue}}