{
  "$description": "Brand: Next.js — dark mode",
  "color": {
    "swatches": {
      "$description": "Source-of-truth color swatches from palette nextjs@1.0.0",
      "next-black": {
        "$value": "#000000",
        "$type": "color",
        "$description": "Primary brand color — the triangle mark fill in light mode and the dark-mode canvas. Pure black.\n"
      },
      "next-white": {
        "$value": "#FFFFFF",
        "$type": "color",
        "$description": "Companion brand color — the triangle mark fill in dark mode and the light-mode canvas. Pure white.\n"
      },
      "dark-bg-100": {
        "$value": "#0A0A0A",
        "$type": "color",
        "$description": "Geist dark canvas tint used by nextjs.org dark mode."
      },
      "dark-gray-100": {
        "$value": "#1A1A1A",
        "$type": "color",
        "$description": "Geist dark surface tint."
      },
      "dark-gray-300": {
        "$value": "#292929",
        "$type": "color",
        "$description": "Geist dark gray for borders."
      },
      "dark-gray-500": {
        "$value": "#454545",
        "$type": "color",
        "$description": "Geist dark gray for hairlines."
      },
      "dark-gray-900": {
        "$value": "#A1A1A1",
        "$type": "color",
        "$description": "Geist muted text on dark."
      },
      "dark-gray-1000": {
        "$value": "#EDEDED",
        "$type": "color",
        "$description": "Geist primary text on dark."
      },
      "light-bg-200": {
        "$value": "#FAFAFA",
        "$type": "color",
        "$description": "Geist light layered surface."
      },
      "light-gray-200": {
        "$value": "#EAEAEA",
        "$type": "color",
        "$description": "Geist light hairline border."
      },
      "light-gray-600": {
        "$value": "#666666",
        "$type": "color",
        "$description": "Geist secondary text on light."
      },
      "light-gray-1000": {
        "$value": "#171717",
        "$type": "color",
        "$description": "Geist primary text on light."
      },
      "vercel-blue": {
        "$value": "#0070F3",
        "$type": "color",
        "$description": "Functional accent — link / focus."
      },
      "vercel-blue-bright": {
        "$value": "#52A8FF",
        "$type": "color",
        "$description": "Functional accent on dark surfaces."
      },
      "vercel-red": {
        "$value": "#FF6166",
        "$type": "color",
        "$description": "Functional error / destructive."
      },
      "vercel-amber": {
        "$value": "#F2A60D",
        "$type": "color",
        "$description": "Functional warning."
      },
      "vercel-green": {
        "$value": "#62C073",
        "$type": "color",
        "$description": "Functional success."
      }
    },
    "roles": {
      "$description": "Semantic color roles (dark mode) mapped to palette swatches",
      "background": {
        "$value": "{color.swatches.dark-bg-100}",
        "$type": "color",
        "$description": "background role → Dark Background 100"
      },
      "surface": {
        "$value": "{color.swatches.dark-gray-100}",
        "$type": "color",
        "$description": "surface role → Dark Gray 100"
      },
      "surface-elevated": {
        "$value": "{color.swatches.dark-gray-300}",
        "$type": "color",
        "$description": "surface-elevated role → Dark Gray 300"
      },
      "text-primary": {
        "$value": "{color.swatches.dark-gray-1000}",
        "$type": "color",
        "$description": "text-primary role → Dark Gray 1000"
      },
      "text-secondary": {
        "$value": "{color.swatches.dark-gray-900}",
        "$type": "color",
        "$description": "text-secondary role → Dark Gray 900"
      },
      "text-tertiary": {
        "$value": "{color.swatches.dark-gray-500}",
        "$type": "color",
        "$description": "text-tertiary role → Dark Gray 500"
      },
      "primary": {
        "$value": "{color.swatches.next-white}",
        "$type": "color",
        "$description": "primary role → Next.js White"
      },
      "primary-hover": {
        "$value": "{color.swatches.dark-gray-1000}",
        "$type": "color",
        "$description": "primary-hover role → Dark Gray 1000"
      },
      "accent": {
        "$value": "{color.swatches.vercel-blue-bright}",
        "$type": "color",
        "$description": "accent role → Vercel Blue Bright"
      },
      "accent-hover": {
        "$value": "{color.swatches.vercel-blue}",
        "$type": "color",
        "$description": "accent-hover role → Vercel Blue"
      },
      "warning": {
        "$value": "{color.swatches.vercel-amber}",
        "$type": "color",
        "$description": "warning role → Vercel Amber"
      },
      "warning-hover": {
        "$value": "{color.swatches.vercel-amber}",
        "$type": "color",
        "$description": "warning-hover role → Vercel Amber"
      },
      "error": {
        "$value": "{color.swatches.vercel-red}",
        "$type": "color",
        "$description": "error role → Vercel Red"
      },
      "success": {
        "$value": "{color.swatches.vercel-green}",
        "$type": "color",
        "$description": "success role → Vercel Green"
      },
      "brand-overrides": {
        "$description": "Brand-level role overrides (take precedence over palette role mappings)",
        "identity": {
          "$value": "{color.swatches.next-black}",
          "$type": "color",
          "$description": "Brand role identity → Next.js Black"
        },
        "on-identity": {
          "$value": "{color.swatches.next-white}",
          "$type": "color",
          "$description": "Brand role on-identity → Next.js White"
        },
        "primary": {
          "$value": "{color.swatches.next-black}",
          "$type": "color",
          "$description": "Brand role primary → Next.js Black"
        },
        "primary-hover": {
          "$value": "{color.swatches.light-gray-1000}",
          "$type": "color",
          "$description": "Brand role primary-hover → Light Gray 1000"
        },
        "accent": {
          "$value": "{color.swatches.vercel-blue}",
          "$type": "color",
          "$description": "Brand role accent → Vercel Blue"
        },
        "accent-hover": {
          "$value": "{color.swatches.vercel-blue-bright}",
          "$type": "color",
          "$description": "Brand role accent-hover → Vercel Blue Bright"
        },
        "background": {
          "$value": "{color.swatches.light-bg-200}",
          "$type": "color",
          "$description": "Brand role background → Light Background 200"
        },
        "surface": {
          "$value": "{color.swatches.next-white}",
          "$type": "color",
          "$description": "Brand role surface → Next.js White"
        },
        "text-primary": {
          "$value": "{color.swatches.light-gray-1000}",
          "$type": "color",
          "$description": "Brand role text-primary → Light Gray 1000"
        },
        "text-secondary": {
          "$value": "{color.swatches.light-gray-600}",
          "$type": "color",
          "$description": "Brand role text-secondary → Light Gray 600"
        }
      }
    }
  },
  "font": {
    "$description": "Typography roles mapped to font atoms",
    "heading": {
      "family": {
        "$value": [
          "Geist",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Helvetica",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "heading role → Geist Sans (geist@1.0.0)"
      },
      "weight": {
        "100": {
          "$value": 100,
          "$type": "fontWeight"
        },
        "200": {
          "$value": 200,
          "$type": "fontWeight"
        },
        "300": {
          "$value": 300,
          "$type": "fontWeight"
        },
        "400": {
          "$value": 400,
          "$type": "fontWeight"
        },
        "500": {
          "$value": 500,
          "$type": "fontWeight"
        },
        "600": {
          "$value": 600,
          "$type": "fontWeight"
        },
        "700": {
          "$value": 700,
          "$type": "fontWeight"
        },
        "800": {
          "$value": 800,
          "$type": "fontWeight"
        },
        "900": {
          "$value": 900,
          "$type": "fontWeight"
        },
        "$description": "Available font weights"
      }
    },
    "body": {
      "family": {
        "$value": [
          "Geist",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Helvetica",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "body role → Geist Sans (geist@1.0.0)"
      },
      "weight": {
        "100": {
          "$value": 100,
          "$type": "fontWeight"
        },
        "200": {
          "$value": 200,
          "$type": "fontWeight"
        },
        "300": {
          "$value": 300,
          "$type": "fontWeight"
        },
        "400": {
          "$value": 400,
          "$type": "fontWeight"
        },
        "500": {
          "$value": 500,
          "$type": "fontWeight"
        },
        "600": {
          "$value": 600,
          "$type": "fontWeight"
        },
        "700": {
          "$value": 700,
          "$type": "fontWeight"
        },
        "800": {
          "$value": 800,
          "$type": "fontWeight"
        },
        "900": {
          "$value": 900,
          "$type": "fontWeight"
        },
        "$description": "Available font weights"
      }
    },
    "mono": {
      "family": {
        "$value": [
          "Geist Mono",
          "SFMono-Regular",
          "Menlo",
          "Monaco",
          "Consolas",
          "Liberation Mono",
          "Courier New",
          "monospace"
        ],
        "$type": "fontFamily",
        "$description": "mono role → Geist Mono (geist-mono@1.0.0)"
      },
      "weight": {
        "100": {
          "$value": 100,
          "$type": "fontWeight"
        },
        "200": {
          "$value": 200,
          "$type": "fontWeight"
        },
        "300": {
          "$value": 300,
          "$type": "fontWeight"
        },
        "400": {
          "$value": 400,
          "$type": "fontWeight"
        },
        "500": {
          "$value": 500,
          "$type": "fontWeight"
        },
        "600": {
          "$value": 600,
          "$type": "fontWeight"
        },
        "700": {
          "$value": 700,
          "$type": "fontWeight"
        },
        "800": {
          "$value": 800,
          "$type": "fontWeight"
        },
        "900": {
          "$value": 900,
          "$type": "fontWeight"
        },
        "$description": "Available font weights"
      }
    }
  }
}
