{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "key-metrics",
  "title": "Key Metrics Block",
  "description": "Stat cards for scannable numbers.",
  "dependencies": [
    "@contentbit/core",
    "@contentbit/blocks",
    "@contentbit/react"
  ],
  "registryDependencies": [],
  "files": [
    {
      "path": "src/blocks/key-metrics.tsx",
      "content": "import { keyMetricsBlock } from '@contentbit/blocks'\nimport { defineBlockComponent } from '@contentbit/react'\n\nimport { cn } from '@/lib/utils'\n\n// Static map so Tailwind can see the class names.\nconst COLS: Record<number, string> = {\n  1: 'sm:grid-cols-1',\n  2: 'sm:grid-cols-2',\n  3: 'sm:grid-cols-3',\n  4: 'sm:grid-cols-4',\n}\n\nexport const KeyMetricsBlock = defineBlockComponent(keyMetricsBlock, ({ node }) => {\n  const data = node.data\n  const cols = COLS[Math.min(data.rows.length, 4)]\n  return (\n    <div data-cb-styled className={cn('my-6 grid grid-cols-2 gap-3', cols)}>\n      {data.rows.map((row, i) => (\n        <div\n          key={i}\n          className=\"bg-card relative overflow-hidden rounded-lg border px-4 pt-4 pb-3.5\"\n        >\n          <span\n            className=\"via-foreground/20 absolute inset-x-0 top-0 h-px bg-gradient-to-r from-transparent to-transparent\"\n            aria-hidden\n          />\n          <div className=\"text-2xl font-bold tracking-tight tabular-nums sm:text-[1.75rem]\">\n            {row.value}\n          </div>\n          <div className=\"text-muted-foreground mt-1 truncate font-mono text-[11px] tracking-wide uppercase\">\n            {row.label}\n          </div>\n        </div>\n      ))}\n    </div>\n  )\n})\n",
      "type": "registry:component",
      "target": "components/content-blocks/key-metrics.tsx"
    }
  ],
  "type": "registry:component"
}