{
  "$generatedBy": "BrandSweets tokens.json — brandsweets v1",
  "brand": {
    "slug": "brandsweets",
    "name": "BrandSweets",
    "version": 1,
    "schemaVersion": "1"
  },
  "identity": {
    "name": "BrandSweets",
    "tagline": "Your brand, sweetened for agents.",
    "sector": "brand infrastructure / developer tools"
  },
  "colors": {
    "primary": {
      "hex": "#a4501c",
      "name": "Caramel",
      "usage": "The single brand accent. CTAs, links, the mark, and caramel emphasis on paper. Used sparingly against paper and ink.",
      "scale": {
        "50": "#fbf1e7",
        "100": "#f6ddc4",
        "200": "#ecbb8c",
        "300": "#e09a5c",
        "400": "#d07a34",
        "500": "#b5601f",
        "600": "#a4501c",
        "700": "#863f18",
        "800": "#653111",
        "900": "#46220c",
        "950": "#271205"
      },
      "dark": {
        "hex": "#e6a063",
        "scale": {
          "50": "#fbf1e7",
          "100": "#f6ddc4",
          "200": "#ecbb8c",
          "300": "#e6a063",
          "400": "#d9884a",
          "500": "#c47135",
          "600": "#a4501c",
          "700": "#863f18",
          "800": "#653111",
          "900": "#46220c",
          "950": "#271205"
        }
      }
    },
    "surface": {
      "hex": "#fbf7ef",
      "name": "Sugar Paper",
      "usage": "The page. Warm off-white paper — the ground the whole specimen sits on. Never plain #ffffff.",
      "scale": {
        "50": "#fbf7ef",
        "100": "#f5eddd",
        "200": "#ece0c7",
        "300": "#ddcca9",
        "400": "#c7b083",
        "500": "#ab9160",
        "600": "#8a7249",
        "700": "#675636",
        "800": "#453a25",
        "900": "#2a2317",
        "950": "#17120c"
      },
      "dark": {
        "hex": "#17120c",
        "scale": {
          "50": "#f5eddd",
          "100": "#ddcca9",
          "200": "#8a7249",
          "300": "#675636",
          "400": "#453a25",
          "500": "#332918",
          "600": "#2a2317",
          "700": "#221a11",
          "800": "#1c150e",
          "900": "#17120c",
          "950": "#0d0a06"
        }
      }
    },
    "surfaceMuted": {
      "hex": "#f1e8d8",
      "name": "Marzipan",
      "usage": "Panels, cards, and inset blocks that need to sit just off the paper ground.",
      "dark": {
        "hex": "#221a11"
      }
    },
    "text": {
      "hex": "#241c14",
      "name": "Cocoa Ink",
      "usage": "Headlines and body text on paper — a warm near-black, not pure black.",
      "scale": {
        "50": "#f4f2ee",
        "100": "#e5e0d8",
        "200": "#cbc2b3",
        "300": "#a99c87",
        "400": "#837462",
        "500": "#635646",
        "600": "#4b4034",
        "700": "#392f26",
        "800": "#2c2419",
        "900": "#241c14",
        "950": "#150f0a"
      },
      "dark": {
        "hex": "#f4eadb"
      }
    },
    "textMuted": {
      "hex": "#6b5d4c",
      "name": "Toffee Grey",
      "usage": "Captions, eyebrows, metadata, and secondary text. Still AA on paper.",
      "dark": {
        "hex": "#a6937b"
      }
    },
    "border": {
      "hex": "#e7dcc9",
      "name": "Wafer",
      "usage": "Hairline rules, dividers, and card borders. Decorative — never load-bearing for contrast.",
      "dark": {
        "hex": "#362a1c"
      }
    },
    "success": {
      "hex": "#2f7d51",
      "name": "Pistachio",
      "usage": "Positive product states — a clean extraction, a saved brief. UI only, never decorative.",
      "dark": {
        "hex": "#4bbf7e"
      }
    },
    "danger": {
      "hex": "#b23a2b",
      "name": "Redcurrant",
      "usage": "Errors and destructive actions — a failed extraction, a validation block. UI only.",
      "dark": {
        "hex": "#ef6b5e"
      }
    }
  },
  "typography": {
    "families": {
      "fraunces": {
        "family": "Fraunces",
        "source": "google",
        "stack": "Fraunces, Georgia, \"Times New Roman\", serif",
        "weights": [
          400,
          400,
          500,
          600,
          900
        ],
        "foundry": "Undercase Type",
        "licensingNote": "SIL Open Font License via Google Fonts — free to serve. Loaded, never re-sold or claimed as bespoke."
      },
      "hanken-grotesk": {
        "family": "Hanken Grotesk",
        "source": "google",
        "stack": "\"Hanken Grotesk\", system-ui, -apple-system, \"Segoe UI\", sans-serif",
        "weights": [
          400,
          500,
          600,
          700
        ],
        "foundry": "Hanken Design Co.",
        "licensingNote": "SIL Open Font License via Google Fonts — free to serve."
      },
      "space-mono": {
        "family": "Space Mono",
        "source": "google",
        "stack": "\"Space Mono\", SFMono-Regular, ui-monospace, Menlo, monospace",
        "weights": [
          400,
          700
        ],
        "foundry": "Colophon Foundry",
        "licensingNote": "SIL Open Font License via Google Fonts — free to serve."
      }
    },
    "roles": {
      "display": {
        "familyRef": "fraunces",
        "stack": "Fraunces, Georgia, \"Times New Roman\", serif",
        "weights": [
          400,
          500,
          600,
          900
        ],
        "note": "Fraunces at the large optical size for the hero statement and cover; Black for the biggest lines only."
      },
      "heading": {
        "familyRef": "hanken-grotesk",
        "stack": "\"Hanken Grotesk\", system-ui, -apple-system, \"Segoe UI\", sans-serif",
        "weights": [
          500,
          600,
          700
        ]
      },
      "body": {
        "familyRef": "hanken-grotesk",
        "stack": "\"Hanken Grotesk\", system-ui, -apple-system, \"Segoe UI\", sans-serif",
        "weights": [
          400,
          500
        ]
      },
      "mono": {
        "familyRef": "space-mono",
        "stack": "\"Space Mono\", SFMono-Regular, ui-monospace, Menlo, monospace",
        "weights": [
          400,
          700
        ],
        "note": "Every file name, hex, and code snippet."
      },
      "quote": {
        "familyRef": "fraunces",
        "stack": "Fraunces, Georgia, \"Times New Roman\", serif",
        "weights": [
          400
        ],
        "note": "Pull quotes are set in the Fraunces Regular Italic."
      }
    },
    "scale": [
      {
        "name": "micro",
        "sizeRem": 0.75,
        "lineHeight": 1.5,
        "letterSpacingEm": 0.14
      },
      {
        "name": "caption",
        "sizeRem": 0.8125,
        "lineHeight": 1.5
      },
      {
        "name": "body",
        "sizeRem": 1.0625,
        "lineHeight": 1.65
      },
      {
        "name": "lede",
        "sizeRem": 1.375,
        "lineHeight": 1.45
      },
      {
        "name": "heading",
        "sizeRem": 2,
        "lineHeight": 1.2,
        "letterSpacingEm": -0.01
      },
      {
        "name": "title",
        "sizeRem": 3,
        "lineHeight": 1.1,
        "letterSpacingEm": -0.02
      },
      {
        "name": "display",
        "sizeRem": 4.75,
        "lineHeight": 1.02,
        "letterSpacingEm": -0.025
      }
    ]
  },
  "gradients": {
    "caramel-wash": {
      "css": "linear-gradient(135deg, #fbf7ef 0%, #f6ddc4 55%, #e09a5c 100%)",
      "type": "linear",
      "usage": "Hero and section washes over paper — a warm caramel glow behind content. Atmosphere only, never an object."
    }
  },
  "spacing": {
    "1": 0.25,
    "2": 0.5,
    "3": 0.75,
    "4": 1,
    "6": 1.5,
    "8": 2,
    "12": 3,
    "16": 4
  },
  "radius": {
    "full": 9999,
    "lg": 1,
    "md": 0.625,
    "sm": 0.375
  },
  "shadows": {
    "caramel": "0 8px 24px rgba(164,80,28,0.18)",
    "card": "0 1px 2px rgba(36,28,20,0.05), 0 8px 24px rgba(36,28,20,0.06)",
    "hairline": "0 1px 0 rgba(36,28,20,0.06)"
  }
}