{
  "$description": "Brand: HashiCorp — dark mode",
  "color": {
    "swatches": {
      "$description": "Source-of-truth color swatches from palette hashicorp@1.0.0",
      "hashicorp-yellow": {
        "$value": "#FFCD00",
        "$type": "color",
        "$description": "The HashiCorp corporate accent — the yellow of the parent wordmark and the principal CTA color across hashicorp.com.\n"
      },
      "hashicorp-yellow-dark": {
        "$value": "#D9AE00",
        "$type": "color",
        "$description": "Pressed/active state for the corporate yellow CTA."
      },
      "hashicorp-black": {
        "$value": "#000000",
        "$type": "color",
        "$description": "Pure black — corporate wordmark fill on light surfaces."
      },
      "hashicorp-canvas": {
        "$value": "#0E0E10",
        "$type": "color",
        "$description": "Near-black canvas used on hashicorp.com hero sections and the HCP console dark chrome.\n"
      },
      "hashicorp-canvas-deep": {
        "$value": "#050507",
        "$type": "color",
        "$description": "Darkest canvas used as the page-level dark background."
      },
      "terraform-purple": {
        "$value": "#7B42BC",
        "$type": "color",
        "$description": "Terraform product accent — used on terraform.io and the Terraform Registry chrome.\n"
      },
      "vault-yellow": {
        "$value": "#FFEC6E",
        "$type": "color",
        "$description": "Vault product accent — the brighter yellow used on vaultproject.io, distinct from the corporate yellow.\n"
      },
      "consul-magenta": {
        "$value": "#E03875",
        "$type": "color",
        "$description": "Consul product accent — magenta used on consul.io and service-mesh diagrams.\n"
      },
      "nomad-green": {
        "$value": "#00CA8E",
        "$type": "color",
        "$description": "Nomad product accent — used on nomadproject.io."
      },
      "boundary-pink": {
        "$value": "#F24C53",
        "$type": "color",
        "$description": "Boundary product accent — coral-pink used on boundaryproject.io."
      },
      "packer-blue": {
        "$value": "#1DAEFF",
        "$type": "color",
        "$description": "Packer product accent — sky-blue used on packer.io."
      },
      "waypoint-sky": {
        "$value": "#14C6CB",
        "$type": "color",
        "$description": "Waypoint product accent — teal used on waypointproject.io."
      },
      "hashicorp-ink": {
        "$value": "#1B1B1F",
        "$type": "color",
        "$description": "Primary text on light surfaces."
      },
      "hashicorp-gray": {
        "$value": "#6F7682",
        "$type": "color",
        "$description": "Secondary text and metadata."
      },
      "hashicorp-gray-light": {
        "$value": "#9CA0A8",
        "$type": "color",
        "$description": "Tertiary text and disabled UI."
      },
      "hashicorp-surface": {
        "$value": "#F4F4F7",
        "$type": "color",
        "$description": "Quiet surface — card backgrounds on the marketing site."
      },
      "hashicorp-border": {
        "$value": "#DDDFE4",
        "$type": "color",
        "$description": "Hairline borders and dividers."
      },
      "hashicorp-white": {
        "$value": "#FFFFFF",
        "$type": "color",
        "$description": "Primary canvas on light surfaces."
      }
    },
    "roles": {
      "$description": "Semantic color roles (dark mode) mapped to palette swatches",
      "background": {
        "$value": "{color.swatches.hashicorp-canvas-deep}",
        "$type": "color",
        "$description": "background role → HashiCorp Canvas Deep"
      },
      "surface": {
        "$value": "{color.swatches.hashicorp-canvas}",
        "$type": "color",
        "$description": "surface role → HashiCorp Canvas"
      },
      "surface-elevated": {
        "$value": "{color.swatches.hashicorp-black}",
        "$type": "color",
        "$description": "surface-elevated role → HashiCorp Black"
      },
      "text-primary": {
        "$value": "{color.swatches.hashicorp-white}",
        "$type": "color",
        "$description": "text-primary role → HashiCorp White"
      },
      "text-secondary": {
        "$value": "{color.swatches.hashicorp-surface}",
        "$type": "color",
        "$description": "text-secondary role → HashiCorp Surface"
      },
      "text-tertiary": {
        "$value": "{color.swatches.hashicorp-gray-light}",
        "$type": "color",
        "$description": "text-tertiary role → HashiCorp Gray Light"
      },
      "primary": {
        "$value": "{color.swatches.hashicorp-yellow}",
        "$type": "color",
        "$description": "primary role → HashiCorp Yellow"
      },
      "primary-hover": {
        "$value": "{color.swatches.hashicorp-yellow-dark}",
        "$type": "color",
        "$description": "primary-hover role → HashiCorp Yellow Dark"
      },
      "accent": {
        "$value": "{color.swatches.terraform-purple}",
        "$type": "color",
        "$description": "accent role → Terraform Purple"
      },
      "accent-hover": {
        "$value": "{color.swatches.consul-magenta}",
        "$type": "color",
        "$description": "accent-hover role → Consul Magenta"
      },
      "warning": {
        "$value": "{color.swatches.vault-yellow}",
        "$type": "color",
        "$description": "warning role → Vault Yellow"
      },
      "warning-hover": {
        "$value": "{color.swatches.hashicorp-yellow-dark}",
        "$type": "color",
        "$description": "warning-hover role → HashiCorp Yellow Dark"
      },
      "error": {
        "$value": "{color.swatches.boundary-pink}",
        "$type": "color",
        "$description": "error role → Boundary Pink"
      },
      "success": {
        "$value": "{color.swatches.nomad-green}",
        "$type": "color",
        "$description": "success role → Nomad Green"
      },
      "border": {
        "$value": "{color.swatches.hashicorp-canvas}",
        "$type": "color",
        "$description": "border role → HashiCorp Canvas"
      },
      "brand-overrides": {
        "$description": "Brand-level role overrides (take precedence over palette role mappings)",
        "identity": {
          "$value": "{color.swatches.hashicorp-canvas}",
          "$type": "color",
          "$description": "Brand role identity → HashiCorp Canvas"
        },
        "on-identity": {
          "$value": "{color.swatches.hashicorp-yellow}",
          "$type": "color",
          "$description": "Brand role on-identity → HashiCorp Yellow"
        },
        "primary": {
          "$value": "{color.swatches.hashicorp-yellow}",
          "$type": "color",
          "$description": "Brand role primary → HashiCorp Yellow"
        },
        "primary-hover": {
          "$value": "{color.swatches.hashicorp-yellow-dark}",
          "$type": "color",
          "$description": "Brand role primary-hover → HashiCorp Yellow Dark"
        },
        "accent": {
          "$value": "{color.swatches.terraform-purple}",
          "$type": "color",
          "$description": "Brand role accent → Terraform Purple"
        },
        "accent-hover": {
          "$value": "{color.swatches.consul-magenta}",
          "$type": "color",
          "$description": "Brand role accent-hover → Consul Magenta"
        },
        "background": {
          "$value": "{color.swatches.hashicorp-white}",
          "$type": "color",
          "$description": "Brand role background → HashiCorp White"
        },
        "surface": {
          "$value": "{color.swatches.hashicorp-surface}",
          "$type": "color",
          "$description": "Brand role surface → HashiCorp Surface"
        },
        "surface-elevated": {
          "$value": "{color.swatches.hashicorp-white}",
          "$type": "color",
          "$description": "Brand role surface-elevated → HashiCorp White"
        },
        "text-primary": {
          "$value": "{color.swatches.hashicorp-ink}",
          "$type": "color",
          "$description": "Brand role text-primary → HashiCorp Ink"
        },
        "text-secondary": {
          "$value": "{color.swatches.hashicorp-gray}",
          "$type": "color",
          "$description": "Brand role text-secondary → HashiCorp Gray"
        },
        "text-tertiary": {
          "$value": "{color.swatches.hashicorp-gray-light}",
          "$type": "color",
          "$description": "Brand role text-tertiary → HashiCorp Gray Light"
        },
        "chrome": {
          "$value": "{color.swatches.hashicorp-canvas}",
          "$type": "color",
          "$description": "Brand role chrome → HashiCorp Canvas"
        },
        "chrome-deep": {
          "$value": "{color.swatches.hashicorp-canvas-deep}",
          "$type": "color",
          "$description": "Brand role chrome-deep → HashiCorp Canvas Deep"
        },
        "product-terraform": {
          "$value": "{color.swatches.terraform-purple}",
          "$type": "color",
          "$description": "Brand role product-terraform → Terraform Purple"
        },
        "product-vault": {
          "$value": "{color.swatches.vault-yellow}",
          "$type": "color",
          "$description": "Brand role product-vault → Vault Yellow"
        },
        "product-consul": {
          "$value": "{color.swatches.consul-magenta}",
          "$type": "color",
          "$description": "Brand role product-consul → Consul Magenta"
        },
        "product-nomad": {
          "$value": "{color.swatches.nomad-green}",
          "$type": "color",
          "$description": "Brand role product-nomad → Nomad Green"
        },
        "product-boundary": {
          "$value": "{color.swatches.boundary-pink}",
          "$type": "color",
          "$description": "Brand role product-boundary → Boundary Pink"
        },
        "product-packer": {
          "$value": "{color.swatches.packer-blue}",
          "$type": "color",
          "$description": "Brand role product-packer → Packer Blue"
        },
        "product-waypoint": {
          "$value": "{color.swatches.waypoint-sky}",
          "$type": "color",
          "$description": "Brand role product-waypoint → Waypoint Sky"
        },
        "mark": {
          "$value": "{color.swatches.hashicorp-yellow}",
          "$type": "color",
          "$description": "Brand role mark → HashiCorp Yellow"
        }
      }
    }
  },
  "font": {
    "$description": "Typography roles mapped to font atoms",
    "heading": {
      "family": {
        "$value": [
          "Inter",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Roboto",
          "Helvetica Neue",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "heading role → Inter (inter@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": [
          "Inter",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Roboto",
          "Helvetica Neue",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "body role → Inter (inter@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": [
          "JetBrainsMono Nerd Font",
          "JetBrains Mono",
          "Fira Code",
          "Menlo",
          "Monaco",
          "Consolas",
          "Liberation Mono",
          "monospace"
        ],
        "$type": "fontFamily",
        "$description": "mono role → JetBrainsMono Nerd Font (jetbrainsmono-nerdfont@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"
        },
        "$description": "Available font weights"
      }
    }
  }
}
