diff --git a/src/app/portfolio/[slug]/(portfolio)/reporting/compare/CompareClientArea.tsx b/src/app/portfolio/[slug]/(portfolio)/reporting/compare/CompareClientArea.tsx index 9156c26e..6f102cc1 100644 --- a/src/app/portfolio/[slug]/(portfolio)/reporting/compare/CompareClientArea.tsx +++ b/src/app/portfolio/[slug]/(portfolio)/reporting/compare/CompareClientArea.tsx @@ -330,8 +330,8 @@ export function CompareClientArea({

The Best tag marks - the best value in each row โ€” no overall winner is crowned; trade-offs - stay visible. + the best value in each row โ€” or every column that ties for it. No overall + winner is crowned; trade-offs stay visible.

); @@ -375,6 +375,10 @@ function GroupRows({ best.clear(); } } + // More than one joint-best column = a genuine tie (e.g. two scenarios + // upgrading the same 7 homes). Flag it on each tag so the reader knows + // the shared Best is intentional, not a bug. + const tie = best.size > 1; // "before" cell: baseline has no scenario metric, so most rows show โ€”. const baselineCell = row.label === "Average EPC after" @@ -397,7 +401,7 @@ function GroupRows({ > {best.has(i) && ( - Best + {tie ? "Best ยท tie" : "Best"} )} {row.render(v)}