{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "permission-denied",
  "type": "registry:ui",
  "title": "Permission denied",
  "description": "A 403 style access card explaining that admin rights are needed, with Request access and Switch workspace buttons. Use it wherever a route is role gated.",
  "dependencies": [],
  "registryDependencies": [
    "https://ui.minidev.pro/r/button.json",
    "utils"
  ],
  "files": [
    {
      "path": "registry/ui/permission-denied.tsx",
      "type": "registry:ui",
      "target": "components/ui/permission-denied.tsx",
      "content": "\"use client\"\nimport { Button } from \"@/components/ui/button\"\nimport { cn } from \"@/lib/utils\"\n\nfunction PermissionDenied({ className }: { className?: string }) {\n  return (\n    <div data-slot=\"permission-denied\" className={cn(\"rounded-2xl border border-border bg-surface p-6 text-center shadow-highlight\", className)}>\n      <h3 className=\"text-lg font-medium tracking-[-0.014em] text-fg\">Permission denied</h3>\n      <p className=\"mx-auto mt-2 max-w-sm text-sm text-fg-muted\">You need admin on this workspace to open billing and seat controls.</p>\n      <div className=\"mt-5 flex justify-center gap-2\">\n        <Button size=\"sm\">Request access</Button>\n        <Button size=\"sm\" variant=\"outline\">Switch workspace</Button>\n      </div>\n    </div>\n  )\n}\nexport { PermissionDenied }\n"
    }
  ]
}
