diff --git a/src/app/onboarding/[step]/page.tsx b/src/app/onboarding/[step]/page.tsx index 393118a6f..14b825d5d 100644 --- a/src/app/onboarding/[step]/page.tsx +++ b/src/app/onboarding/[step]/page.tsx @@ -101,6 +101,7 @@ export default async function OnboardingStepPage({ params }: PageProps) { aria-labelledby="onboarding-welcomeback-title" className="space-y-4" > + {/* Onboarding hero H1: intentionally semibold, not the app-wide bold PageHeader H1 (UI-STANDARDS §5 hero exception). Do not sweep to font-bold. */}

- - {displayTitle} - + {displayTitle} {activeBucket !== "day" && ( - + {t( activeBucket === "week" ? "charts.bucketWeekly" : "charts.bucketMonthly", )} - + )} {/* v1.4.16 B8 — comparison caption (mood). v1.4.19 A2 — hidden on mobile to free up the title row. */} diff --git a/src/components/custom-metrics/custom-metric-list.tsx b/src/components/custom-metrics/custom-metric-list.tsx index 4bc676958..9363e4511 100644 --- a/src/components/custom-metrics/custom-metric-list.tsx +++ b/src/components/custom-metrics/custom-metric-list.tsx @@ -11,6 +11,7 @@ import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { QueryErrorCard } from "@/components/ui/query-error-card"; import { ResponsiveSheet } from "@/components/ui/responsive-sheet"; +import { SectionHeading } from "@/components/ui/section-heading"; import { Skeleton } from "@/components/ui/skeleton"; import { apiGet } from "@/lib/api/api-fetch"; import { formatDate } from "@/lib/format"; @@ -63,26 +64,23 @@ export function CustomMetricList() { className="border-border space-y-3 border-t pt-6" data-slot="custom-metric-list" > -
-
-

- {t("customMetrics.sectionTitle")} -

-

- {t("customMetrics.sectionSubtitle")} -

-
- -
+ setAddOpen(true)} + aria-label={t("customMetrics.add")} + > + + {t("customMetrics.add")} + + } + /> {isLoading ? (