{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "input",
  "title": "Input",
  "author": "AniBT <https://anibt.net>",
  "description": "AniBT 32px text field: paper under a 1px input ring, pink on hover, a 1.5px ring edge with the pink halo on focus, red when invalid, a sunk well when read-only or disabled.",
  "registryDependencies": [
    "@anibt/theme"
  ],
  "files": [
    {
      "path": "registry/anibt/ui/input.tsx",
      "content": "import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\n/**\n * Input — the AniBT 「贴纸手账」 text field.\n *\n * 32 high on radius 10: paper under a 1px `--input` inset ring. Hover turns\n * the ring pink; focus is a 1.5px `--ring` edge with the soft pink halo\n * outside; invalid (`aria-invalid`) is the same in red and stays red while\n * focused; read-only is the sunk `--muted` well; disabled is `--muted` under\n * the weak ink — never an opacity wash. A phone keeps 16px text so iOS does\n * not zoom the page on focus; from `md` it is A's 13.\n *\n * Inside shadcn's `InputGroup` (`data-slot=\"input-group-control\"`) the field\n * drops its own ring and paper, so the group draws the one edge.\n *\n * Textarea, the select trigger and the search and password fields spell the\n * same material out — shadcn keeps each primitive self-contained.\n */\nfunction Input({ className, type, ...props }: React.ComponentProps<\"input\">) {\n  return (\n    <input\n      type={type}\n      data-slot=\"input\"\n      className={cn(\n        \"bg-card text-foreground inset-ring-1 inset-ring-input placeholder:text-muted-foreground selection:bg-anibt-wash2 selection:text-foreground hover:inset-ring-anibt-wash-line focus-visible:inset-ring-[1.5px] focus-visible:inset-ring-ring focus-visible:ring-4 focus-visible:ring-ring/20 aria-invalid:inset-ring-[1.5px] aria-invalid:inset-ring-anibt-danger-fill aria-invalid:ring-4 aria-invalid:ring-anibt-danger-fill/15 [&[readonly]]:bg-muted [&[readonly]]:text-anibt-ink2 disabled:cursor-not-allowed disabled:bg-muted disabled:text-muted-foreground disabled:inset-ring-border\",\n        \"h-8 w-full min-w-0 rounded-[10px] border-0 px-3 py-0 text-base transition-[background-color,box-shadow] duration-150 outline-none md:text-[13px]\",\n        \"file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-[13px] file:font-semibold file:text-foreground\",\n        \"data-[slot=input-group-control]:bg-transparent data-[slot=input-group-control]:inset-ring-0 data-[slot=input-group-control]:ring-0\",\n        className\n      )}\n      {...props}\n    />\n  )\n}\n\nexport { Input }\n",
      "type": "registry:ui"
    }
  ],
  "categories": [
    "forms"
  ],
  "type": "registry:ui"
}