From 13a110d27b857b8ad06acc8dc5891df9eda9daad Mon Sep 17 00:00:00 2001 From: kittors Date: Fri, 21 Aug 2026 14:28:15 +0800 Subject: [PATCH] fix(ai-accounts): neutralise the quota bar fill, not just its text #936 neutralised percentClass, chipClass and chipLabelClass, but the card view renders quota through renderQuotaBarNode, which uses none of them except the percent: it consumes fillClass and paints it as the row's own background rather than a slim track underneath. At 100% that fill covers the entire line, so every healthy window still rendered as a green band and the card read exactly as before. Move fillClass to neutral slate for the >= 60% branch. fillHex keeps its emerald: it drives the 14px progress ring in QuotaMetricChips, where the colour occupies a ring instead of a row. Amber and rose fills are left alone, so a bar that changes colour now means something changed. Co-Authored-By: Claude Opus 5 --- pages/auth-files/components/QuotaMetricChips.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pages/auth-files/components/QuotaMetricChips.tsx b/pages/auth-files/components/QuotaMetricChips.tsx index 48b3824a..b5707441 100644 --- a/pages/auth-files/components/QuotaMetricChips.tsx +++ b/pages/auth-files/components/QuotaMetricChips.tsx @@ -35,7 +35,12 @@ export const resolveQuotaVisualTone = (percent: number | null | undefined): Quot if (normalized >= 60) { return { normalized, - fillClass: "bg-emerald-500", + // The card view spends this on renderQuotaBarNode's fill, which is the + // row's own background rather than a slim track — at 100% it covers the + // whole line, so an emerald fill turned every healthy row into a green + // band. fillHex below stays green: it drives the 14px ring, where the + // colour costs nothing. + fillClass: "bg-slate-400 dark:bg-white/30", percentClass: "text-slate-700 dark:text-white/80", fillHex: "#10b981", chipClass: "border-slate-900/8 bg-slate-50 dark:border-white/10 dark:bg-white/[0.06]",