import React from 'react'; import { useTheme } from '@/lib/theme-context'; interface PricingCardProps { title: string; price: string; billingPeriod: string; features: string[]; ctaText: string; ctaHref: string; isPopular?: boolean; } const PricingCard: React.FC = ({ title, price, billingPeriod, features, ctaText, ctaHref, isPopular = false, }) => { const { theme } = useTheme(); const cardBg = theme === 'dark' ? 'bg-gray-800' : 'bg-white'; const cardText = theme === 'dark' ? 'text-gray-100' : 'text-gray-900'; const cardBorder = theme === 'dark' ? 'border-gray-700' : 'border-gray-200'; const cardShadow = theme === 'dark' ? 'shadow-lg' : 'shadow-sm'; const cardHover = theme === 'dark' ? 'hover:bg-gray-700' : 'hover:bg-indigo-700'; const cardFocus = theme === 'dark' ? 'focus:ring-indigo-500' : 'focus:ring-indigo-500'; const cardPopular = theme === 'dark' ? 'bg-indigo-700' : 'bg-indigo-600'; const cardFeatureText = theme === 'dark' ? 'text-gray-300' : 'text-gray-700'; const cardFeatureIcon = theme === 'dark' ? 'text-green-400' : 'text-green-500'; return (
{isPopular && (
Popular
)}

{title}

{title === 'Start' && 'The perfect starting place for your web app or personal project.'} {title === 'Pro' && 'Everything you need to build and scale your app.'} {title === 'Premium' && 'Critical security, performance, observability, platform SLAs, and support.'}

{price} /{billingPeriod}

{ctaText}

What's included:

    {features.map((feature, index) => (
  • {feature}
  • ))}
); }; export default PricingCard;