"use client"; import { StyleData } from "@/lib/types"; import { StylePreview } from "./StylePreview"; import { ColorPalette } from "./ColorPalette"; import { MetadataBadges } from "./MetadataBadges"; import { ExpandableSection } from "./ExpandableSection"; import { CodeSnippet } from "./CodeSnippet"; import { InteractiveChecklist } from "./InteractiveChecklist"; interface StyleCardProps { style: StyleData; onSelect?: (style: StyleData) => void; } export function StyleCard({ style, onSelect }: StyleCardProps) { return (
onSelect?.(style)} > {/* Header */}

{style.styleCategory}

{style.type} {style.eraOrigin}
{/* Preview */}
{/* Color Palette */}
{/* Metadata Badges */}
{/* Expandable Sections */}
{style.designSystemVariables && (
)}
{style.bestFor && (
Best for:{" "} {style.bestFor}
)} {style.doNotUseFor && (
Avoid for:{" "} {style.doNotUseFor}
)} {style.frameworkCompatibility && (
Frameworks:{" "} {style.frameworkCompatibility}
)} {style.keywords && (
{style.keywords .split(",") .slice(0, 6) .map((kw, i) => ( {kw.trim()} ))}
)}
); }