diff --git a/src/app/insights/page.tsx b/src/app/insights/page.tsx
index 98d378ea1..8b2f5839e 100644
--- a/src/app/insights/page.tsx
+++ b/src/app/insights/page.tsx
@@ -904,20 +904,19 @@ export default function InsightsPage() {
return (
+ {/* v1.4.19 A3 — comparison toggle is now mounted INSIDE the hero
+ meta band (alongside personal-baseline indicator + Generated
+ timestamp + Regenerate button). The previous standalone band
+ below the hero made the page read as three stacked cards
+ with separate header / control rows; folding the toggle into
+ the hero clusters every page-level control in one place. */}
}
/>
- {/* v1.4.16 phase D reconcile (CRITICAL C3) — on-surface comparison
- toggle. Mirrors the dashboard placement so flipping Vormonat /
- Vorjahr is one tap on the page that uses it, not 3 clicks
- via Settings → Dashboard. */}
-
-
-
-
{/* v1.4.16 phase D reconcile (CRITICAL C1) — wire the polished
`
` (severity-ordered recommendations grid +
per-rec rationale expand + confidence meter + thumbs feedback +
diff --git a/src/components/insights/insights-page-hero.tsx b/src/components/insights/insights-page-hero.tsx
index c6155a2ee..bcb104050 100644
--- a/src/components/insights/insights-page-hero.tsx
+++ b/src/components/insights/insights-page-hero.tsx
@@ -29,6 +29,9 @@ import { useTranslations } from "@/lib/i18n/context";
* - `data-slot="insights-page-hero-generated"` — "Generated "
* - `data-slot="insights-page-hero-baseline"` — "Based on …"
* - `data-slot="insights-page-hero-regenerate"` — regenerate button
+ * - `data-slot="insights-page-hero-meta-slot"` — v1.4.19 A3 page-
+ * level meta slot
+ * (comparison toggle)
*/
interface InsightsPageHeroProps {
@@ -38,6 +41,16 @@ interface InsightsPageHeroProps {
onRegenerate?: () => void;
/** Disables the regenerate button + flips the icon to a spinner. */
regenerating?: boolean;
+ /**
+ * v1.4.19 A3 — page-level metadata slot. The comparison-baseline
+ * toggle is mounted into the hero meta row (next to the personal-
+ * baseline indicator + the "Generated …" caption) instead of
+ * standing alone above the advisor card. Keeps every page-level
+ * control in one band so the surface stops feeling like three
+ * stacked cards with separate refresh / toggle / header
+ * affordances.
+ */
+ metaSlot?: React.ReactNode;
}
/**
@@ -64,6 +77,7 @@ export function InsightsPageHero({
updatedAt,
onRegenerate,
regenerating = false,
+ metaSlot,
}: InsightsPageHeroProps) {
const { t } = useTranslations();
const generatedLine = updatedAt
@@ -113,6 +127,14 @@ export function InsightsPageHero({
>
)}
+ {metaSlot && (
+