import { clsx } from 'clsx';
import { twMerge } from 'tailwind-merge';
import { jsx, jsxs } from 'react/jsx-runtime';

// src/lib/utils.ts
function cn(...inputs) {
  return twMerge(clsx(inputs));
}
function CheckIcon() {
  return /* @__PURE__ */ jsx(
    "svg",
    {
      viewBox: "0 0 20 20",
      fill: "currentColor",
      "aria-hidden": "true",
      className: "size-5 flex-none text-primary",
      children: /* @__PURE__ */ jsx(
        "path",
        {
          fillRule: "evenodd",
          d: "M16.7 5.3a1 1 0 0 1 0 1.4l-7.5 7.5a1 1 0 0 1-1.4 0L3.3 9.7a1 1 0 1 1 1.4-1.4l3.1 3.1 6.8-6.8a1 1 0 0 1 1.4 0Z",
          clipRule: "evenodd"
        }
      )
    }
  );
}
function MarketingPricing({
  eyebrow,
  title,
  description,
  tiers,
  className
}) {
  const hasHeading = Boolean(eyebrow || title || description);
  return /* @__PURE__ */ jsx("section", { className: cn("bg-background py-24 sm:py-32", className), children: /* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-7xl px-6 lg:px-8", children: [
    hasHeading ? /* @__PURE__ */ jsxs("div", { className: "mx-auto flex max-w-2xl flex-col items-center gap-4 text-center", children: [
      eyebrow ? /* @__PURE__ */ jsx("p", { className: "text-sm font-semibold uppercase tracking-wide text-primary", children: eyebrow }) : null,
      title ? /* @__PURE__ */ jsx("h2", { className: "text-balance text-3xl font-semibold tracking-tight text-foreground sm:text-4xl", children: title }) : null,
      description ? /* @__PURE__ */ jsx("p", { className: "text-pretty text-lg text-muted-foreground", children: description }) : null
    ] }) : null,
    /* @__PURE__ */ jsx(
      "div",
      {
        className: cn(
          "grid grid-cols-1 gap-8 md:grid-cols-2 lg:grid-cols-3",
          hasHeading && "mt-16"
        ),
        children: tiers.map((tier, index) => /* @__PURE__ */ jsxs(
          "div",
          {
            className: cn(
              "flex flex-col rounded-2xl border bg-card p-8 text-card-foreground transition-all duration-200 ease-out",
              tier.highlighted ? "border-primary shadow-lg ring-1 ring-primary" : "border-border shadow-sm"
            ),
            children: [
              /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-3", children: [
                /* @__PURE__ */ jsx("h3", { className: "text-lg font-semibold text-foreground", children: tier.name }),
                tier.badge ? /* @__PURE__ */ jsx("div", { children: tier.badge }) : null
              ] }),
              tier.description ? /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: tier.description }) : null,
              /* @__PURE__ */ jsxs("p", { className: "mt-6 flex items-baseline gap-1", children: [
                /* @__PURE__ */ jsx("span", { className: "text-4xl font-semibold tracking-tight text-foreground", children: tier.price }),
                tier.period ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: tier.period }) : null
              ] }),
              /* @__PURE__ */ jsx("ul", { className: "mt-8 flex flex-1 flex-col gap-3 text-sm text-muted-foreground", children: tier.features.map((feature, featureIndex) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-3", children: [
                /* @__PURE__ */ jsx(CheckIcon, {}),
                /* @__PURE__ */ jsx("span", { children: feature })
              ] }, featureIndex)) }),
              /* @__PURE__ */ jsx("div", { className: "mt-8 [&_button]:w-full [&>*]:w-full", children: tier.cta })
            ]
          },
          index
        ))
      }
    )
  ] }) });
}

export { MarketingPricing };
//# sourceMappingURL=marketing-pricing.js.map
//# sourceMappingURL=marketing-pricing.js.map