{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "glass-variants",
  "title": "Glass Variants",
  "files": [
    {
      "path": "lib/glass-variants.ts",
      "content": "export type FrostGlassVariant = \"clear\" | \"frosted\" | \"subtle\" | \"liquid\" | \"liquid-refract\";\nexport type FrostGlassVariantProp = { glassVariant?: FrostGlassVariant };\n\nexport const liquidRefractStyles = \"bg-transparent border-0 shadow-none\";\n\nexport const glassVariantStyles: Record<FrostGlassVariant, string> = {\n  clear: [\n    \"backdrop-blur-[2px] backdrop-saturate-[1.9]\",\n    \"bg-white/[0.25] dark:bg-black/[0.25]\",\n    \"border border-white/[0.5] dark:border-white/[0.12]\",\n    \"shadow-[0_1px_12px_rgba(0,0,0,0.05)] dark:shadow-[0_1px_12px_rgba(0,0,0,0.2)]\",\n  ].join(\" \"),\n  frosted: [\n    \"backdrop-blur-[16px] backdrop-saturate-[1.6]\",\n    \"bg-white/[0.55] dark:bg-black/[0.35]\",\n    \"border border-white/[0.4] dark:border-white/10\",\n    \"shadow-[0_2px_20px_rgba(0,0,0,0.06)] dark:shadow-[0_2px_20px_rgba(0,0,0,0.3)]\",\n  ].join(\" \"),\n  subtle: [\n    \"backdrop-blur-[4px] backdrop-saturate-[1.5]\",\n    \"bg-white/[0.3] dark:bg-white/[0.06]\",\n    \"border border-black/[0.05] dark:border-white/[0.08]\",\n    \"shadow-sm\",\n  ].join(\" \"),\n  liquid: [\n    // 1) Refractive backdrop — lighter than frosted so the background reads\n    //    clearly through the lens; saturation + brightness lift makes it bloom.\n    \"backdrop-blur-[12px] backdrop-saturate-[1.8] backdrop-brightness-[1.05]\",\n    \"dark:backdrop-saturate-[1.6] dark:backdrop-brightness-[0.95]\",\n\n    // 2) Base translucent fill (acts as the panel's \"tint\").\n    \"bg-white/[0.10] dark:bg-white/[0.04]\",\n\n    // 3) Layered radial-gradient sheen + warm bottom tint + vertical wash.\n    //    Underscores represent spaces inside Tailwind arbitrary values.\n    \"[background-image:radial-gradient(120%_85%_at_15%_8%,rgba(255,255,255,0.55)_0%,rgba(255,255,255,0.18)_38%,rgba(255,255,255,0)_70%),radial-gradient(110%_80%_at_85%_100%,rgba(255,210,230,0.22)_0%,rgba(255,255,255,0)_60%),linear-gradient(180deg,rgba(255,255,255,0.28)_0%,rgba(255,255,255,0.12)_100%)]\",\n    \"dark:[background-image:radial-gradient(120%_85%_at_15%_8%,rgba(255,255,255,0.18)_0%,rgba(255,255,255,0.05)_40%,rgba(255,255,255,0)_70%),radial-gradient(110%_80%_at_85%_100%,rgba(120,170,255,0.12)_0%,rgba(0,0,0,0)_60%),linear-gradient(180deg,rgba(255,255,255,0.06)_0%,rgba(0,0,0,0.18)_100%)]\",\n    \"[background-size:200%_200%,180%_180%,100%_100%]\",\n    \"[background-repeat:no-repeat]\",\n\n    // 4) Multi-layer bevel:\n    //    - inset top hairline highlight (light-from-above)\n    //    - inset fish-eye glow at the bottom (lensing artifact)\n    //    - thin inset side rails\n    //    - outer contact shadow + broader halo (panel feels floating)\n    \"shadow-[inset_0_1px_0_0_rgba(255,255,255,0.65),inset_0_-12px_24px_-10px_rgba(255,255,255,0.45),inset_1px_0_0_0_rgba(255,255,255,0.22),inset_-1px_0_0_0_rgba(255,255,255,0.18),0_24px_60px_-18px_rgba(15,23,42,0.30),0_8px_24px_-8px_rgba(15,23,42,0.18)]\",\n    \"dark:shadow-[inset_0_1px_0_0_rgba(255,255,255,0.30),inset_0_-14px_28px_-10px_rgba(180,210,255,0.18),inset_1px_0_0_0_rgba(255,255,255,0.10),inset_-1px_0_0_0_rgba(255,255,255,0.08),0_28px_70px_-18px_rgba(0,0,0,0.55),0_10px_28px_-10px_rgba(0,0,0,0.40)]\",\n\n    // 5) Hairline border for the chamfer's outer edge.\n    \"border border-white/[0.45] dark:border-white/[0.10]\",\n\n    // 6) Slow ambient drift; respects prefers-reduced-motion.\n    \"animate-[liquid-drift_18s_ease-in-out_infinite] motion-reduce:animate-none\",\n    \"[will-change:background-position]\",\n  ].join(\" \"),\n  \"liquid-refract\": \"\",\n};\n",
      "type": "registry:lib"
    }
  ],
  "css": {
    "@keyframes liquid-drift": {
      "0%": {
        "background-position": "0% 0%, 100% 100%, 0% 0%"
      },
      "50%": {
        "background-position": "30% 20%, 70% 80%, 0% 0%"
      },
      "100%": {
        "background-position": "0% 0%, 100% 100%, 0% 0%"
      }
    }
  },
  "type": "registry:lib"
}