= {
green: 'bg-green-100 text-green-700 ring-green-200 dark:bg-green-900/30 dark:text-green-300 dark:ring-green-900/50',
amber: 'bg-amber-100 text-amber-700 ring-amber-200 dark:bg-amber-900/30 dark:text-amber-300 dark:ring-amber-900/50',
- grey: 'bg-gray-100 text-gray-600 ring-gray-200 dark:bg-gray-800 dark:text-gray-300 dark:ring-gray-700',
+ grey: 'bg-gray-100 text-gray-600 ring-gray-200 dark:bg-white/10 dark:text-gray-300 dark:ring-white/20',
red: 'bg-red-100 text-red-700 ring-red-200 dark:bg-red-900/30 dark:text-red-300 dark:ring-red-900/50',
}
@@ -55,7 +55,7 @@ export default function CouponCard({ coupon, index }: CouponCardProps) {
animate={{ opacity: 1, y: 0 }}
exit={{ opacity: 0, scale: 0.9 }}
transition={{ duration: 0.3, delay: index * 0.05 }}
- className="group relative overflow-hidden rounded-3xl border border-orange-100 bg-gradient-to-br from-orange-50/50 via-white to-orange-50/40 p-5 shadow-md transition-all duration-200 hover:-translate-y-0.5 hover:border-orange-200 hover:shadow-lg dark:border-orange-900/50 dark:from-gray-900 dark:via-gray-900 dark:to-gray-900 dark:hover:border-orange-800/70"
+ className="group relative overflow-hidden rounded-3xl border border-orange-100 bg-gradient-to-br from-orange-50/50 via-white to-orange-50/40 p-5 shadow-md transition-all duration-200 hover:-translate-y-0.5 hover:border-orange-200 hover:shadow-lg dark:border-orange-900/50 dark:from-darkSurface dark:via-darkSurface dark:to-darkSurface dark:hover:border-orange-800/70"
>
{/* Left: Discount Badge */}
@@ -111,7 +111,7 @@ export default function CouponCard({ coupon, index }: CouponCardProps) {
diff --git a/apps/caramel-app/src/components/coupons/coupon-filters.tsx b/apps/caramel-app/src/components/coupons/coupon-filters.tsx
index 3eb3b4a..36abc8c 100644
--- a/apps/caramel-app/src/components/coupons/coupon-filters.tsx
+++ b/apps/caramel-app/src/components/coupons/coupon-filters.tsx
@@ -100,22 +100,25 @@ export default function CouponFilters({
paddingLeft: '4px',
paddingRight: '4px',
minHeight: '44px',
- backgroundColor: isDarkMode ? '#111827' : '#ffffff',
+ // react-select can't take Tailwind classes, so these hexes must
+ // track the brand surfaces: darkSurface #1E1916 (warm charcoal,
+ // tailwind.config.ts) instead of the blue-hued gray-900/800.
+ backgroundColor: isDarkMode ? '#1E1916' : '#ffffff',
width: '100%',
}),
menu: base => ({
...base,
zIndex: 20,
- backgroundColor: isDarkMode ? '#111827' : '#ffffff',
+ backgroundColor: isDarkMode ? '#1E1916' : '#ffffff',
}),
option: (base, state) => ({
...base,
backgroundColor: state.isFocused
? isDarkMode
- ? '#1f2937'
+ ? '#2B241F' // warm hover step above darkSurface
: '#f3f4f6'
: isDarkMode
- ? '#111827'
+ ? '#1E1916'
: '#ffffff',
color: isDarkMode ? '#ffffff' : '#111827',
cursor: 'pointer',
@@ -155,7 +158,7 @@ export default function CouponFilters({
value={localSearch}
onChange={e => handleSearchChange(e.target.value)}
placeholder="Search coupons by site, title, or description..."
- className="w-full rounded-md border-2 border-caramel/30 bg-white px-3 py-[11px] pl-10 text-sm outline-none transition-all focus:border-caramel dark:bg-gray-900 dark:text-white dark:placeholder-gray-500 dark:focus:border-orange-400"
+ className="w-full rounded-md border-2 border-caramel/30 bg-white px-3 py-[11px] pl-10 text-sm outline-none transition-all focus:border-caramel dark:bg-darkSurface dark:text-white dark:placeholder-gray-500 dark:focus:border-orange-400"
/>