{
  "$generatedBy": "BrandSweets tokens.json — clerk-com v4",
  "brand": {
    "slug": "clerk-com",
    "name": "Clerk",
    "version": 4,
    "schemaVersion": "1"
  },
  "identity": {
    "name": "Clerk",
    "tagline": "The easiest way to add authentication and user management to your application. Purpose-built for React, Next.js, Remix, and “The Modern Web”."
  },
  "colors": {
    "primary": {
      "hex": "#007232",
      "usage": "Primary brand color: CTAs, links, active states.",
      "scale": {
        "50": "#effaf4",
        "100": "#d7f4e4",
        "200": "#a3ffcb",
        "300": "#6bffab",
        "400": "#38ff8e",
        "500": "#0aff74",
        "600": "#00e061",
        "700": "#00b850",
        "800": "#008f3e",
        "900": "#007232",
        "950": "#053d1d"
      }
    },
    "secondary": {
      "hex": "#ef4444",
      "usage": "Secondary brand color.",
      "scale": {
        "50": "#faf0f0",
        "100": "#f1dada",
        "200": "#f8abab",
        "300": "#f37777",
        "400": "#ef4444",
        "500": "#eb1e1e",
        "600": "#ce1212",
        "700": "#a90f0f",
        "800": "#830b0b",
        "900": "#570f0f",
        "950": "#390909"
      }
    },
    "accent": {
      "hex": "#6c47ff",
      "usage": "Accent: highlights and secondary emphasis.",
      "scale": {
        "50": "#f1effa",
        "100": "#ddd7f4",
        "200": "#b6a3ff",
        "300": "#896bff",
        "400": "#6c47ff",
        "500": "#3b0aff",
        "600": "#2d00e0",
        "700": "#2500b8",
        "800": "#1d008f",
        "900": "#19085e",
        "950": "#10053d"
      }
    },
    "surface": {
      "hex": "#ffffff",
      "usage": "Page and card background.",
      "scale": {
        "50": "#ffffff",
        "100": "#e6e6e6",
        "200": "#d1d1d1",
        "300": "#b5b5b5",
        "400": "#9c9c9c",
        "500": "#858585",
        "600": "#707070",
        "700": "#5c5c5c",
        "800": "#474747",
        "900": "#333333",
        "950": "#212121"
      }
    },
    "text": {
      "hex": "#000000",
      "usage": "Body text on surface.",
      "scale": {
        "50": "#f5f5f5",
        "100": "#e6e6e6",
        "200": "#d1d1d1",
        "300": "#b5b5b5",
        "400": "#9c9c9c",
        "500": "#858585",
        "600": "#707070",
        "700": "#5c5c5c",
        "800": "#474747",
        "900": "#333333",
        "950": "#000000"
      }
    }
  },
  "typography": {
    "families": {
      "geistnumbers": {
        "family": "geistNumbers",
        "source": "custom",
        "stack": "geistNumbers, suisse, \"suisse Fallback\", sans-serif",
        "weights": [
          400,
          600,
          700
        ],
        "licensingNote": "Auto-detected web font; provenance unconfirmed. Reference only — never rehost without a license."
      }
    },
    "roles": {
      "heading": {
        "familyRef": "geistnumbers",
        "stack": "geistNumbers, suisse, \"suisse Fallback\", sans-serif"
      },
      "body": {
        "familyRef": "geistnumbers",
        "stack": "geistNumbers, suisse, \"suisse Fallback\", sans-serif"
      }
    },
    "scale": [
      {
        "name": "sm",
        "sizeRem": 0.875,
        "lineHeight": 1.5
      },
      {
        "name": "base",
        "sizeRem": 1,
        "lineHeight": 1.6
      },
      {
        "name": "lg",
        "sizeRem": 1.25,
        "lineHeight": 1.4
      },
      {
        "name": "xl",
        "sizeRem": 1.75,
        "lineHeight": 1.25
      },
      {
        "name": "2xl",
        "sizeRem": 2.25,
        "lineHeight": 1.15
      },
      {
        "name": "display",
        "sizeRem": 3.5,
        "lineHeight": 1.05,
        "letterSpacingEm": -0.02
      }
    ]
  }
}