"use client" import { Card, CardContent } from "@/components/ui/card" import { LucideIcon } from "lucide-react" interface GradientStatsCardProps { title: string subtitle?: string value: number | string icon: LucideIcon gradient: "green" | "coral" | "blue" | "purple" isLoading?: boolean } const gradientStyles = { green: { background: "bg-card", border: "border-l-4 border-l-[var(--border)]", iconBg: "bg-gradient-to-br from-blue-400 to-blue-600", iconShadow: "shadow-lg shadow-blue-500/20" }, coral: { background: "bg-card", border: "border-l-4 border-l-[var(--border)]", iconBg: "bg-gradient-to-br from-blue-400 to-blue-600", iconShadow: "shadow-lg shadow-blue-500/20" }, blue: { background: "bg-card", border: "border-l-4 border-l-[var(--border)]", iconBg: "bg-gradient-to-br from-blue-400 to-blue-600", iconShadow: "shadow-lg shadow-blue-500/20" }, purple: { background: "bg-card", border: "border-l-4 border-l-[var(--border)]", iconBg: "bg-gradient-to-br from-blue-400 to-blue-600", iconShadow: "shadow-lg shadow-blue-500/20" } } export function GradientStatsCard({ title, subtitle, value, icon: Icon, gradient, isLoading = false }: GradientStatsCardProps) { const styles = gradientStyles[gradient] return (

{title}

{isLoading ? (
) : ( <>

{value}

{subtitle && (

{subtitle}

)} )}
) }