{
  "$description": "Brand: Discord — light mode",
  "color": {
    "swatches": {
      "$description": "Source-of-truth color swatches from palette discord@1.0.0",
      "discord-blurple": {
        "$value": "#5865F2",
        "$type": "color",
        "$description": "Signature indigo-purple — the primary brand color introduced with the 2021 brand refresh. The Discord wordmark, the Wumpus mark, primary buttons, and the mention-highlight all read in Blurple.\n"
      },
      "discord-blurple-dark": {
        "$value": "#4752C4",
        "$type": "color",
        "$description": "Darker Blurple for hover, pressed, and active states on the primary CTA."
      },
      "discord-old-blurple": {
        "$value": "#7289DA",
        "$type": "color",
        "$description": "The pre-2021 Blurple — retained as a deprecated reference for historical applications, not part of the current brand surface.\n"
      },
      "discord-greyple": {
        "$value": "#99AAB5",
        "$type": "color",
        "$description": "Neutral grey-blue from Discord's brand palette — used in marketing illustration and as a secondary text tone."
      },
      "discord-dark-not-black": {
        "$value": "#2C2F33",
        "$type": "color",
        "$description": "\"Dark But Not Black\" — Discord's published dark surface tone, used historically as the client's main canvas before the 2022 refresh.\n"
      },
      "discord-not-quite-black": {
        "$value": "#23272A",
        "$type": "color",
        "$description": "\"Not Quite Black\" — Discord's published deepest dark tone, used historically as the client's sidebar canvas.\n"
      },
      "discord-white": {
        "$value": "#FFFFFF",
        "$type": "color",
        "$description": "White — the primary text and mark fill on the dark canvas."
      },
      "discord-canvas-dark": {
        "$value": "#313338",
        "$type": "color",
        "$description": "Modern Discord client primary canvas — the main chat surface since the 2022 client visual refresh.\n"
      },
      "discord-canvas-darker": {
        "$value": "#2B2D31",
        "$type": "color",
        "$description": "Modern Discord secondary surface — the channel list / sidebar."
      },
      "discord-canvas-darkest": {
        "$value": "#1E1F22",
        "$type": "color",
        "$description": "Modern Discord deepest surface — the server list rail."
      },
      "discord-text-on-dark": {
        "$value": "#F2F3F5",
        "$type": "color",
        "$description": "Primary text color on the dark canvas."
      },
      "discord-text-secondary-dark": {
        "$value": "#B5BAC1",
        "$type": "color",
        "$description": "Secondary text on the dark canvas."
      },
      "discord-text-tertiary-dark": {
        "$value": "#80848E",
        "$type": "color",
        "$description": "Tertiary / muted text on the dark canvas."
      },
      "discord-green": {
        "$value": "#23A55A",
        "$type": "color",
        "$description": "Authored success / online-status accent."
      },
      "discord-yellow": {
        "$value": "#F0B232",
        "$type": "color",
        "$description": "Authored idle-status / warning accent."
      },
      "discord-red": {
        "$value": "#F23F43",
        "$type": "color",
        "$description": "Authored Do-Not-Disturb / error accent."
      },
      "discord-fuchsia": {
        "$value": "#EB459E",
        "$type": "color",
        "$description": "Authored secondary accent — used on Boost and Nitro affordances."
      },
      "discord-light-canvas": {
        "$value": "#FFFFFF",
        "$type": "color",
        "$description": "Authored light-mode canvas for Discord's user-selectable light theme."
      },
      "discord-light-surface": {
        "$value": "#F2F3F5",
        "$type": "color",
        "$description": "Authored elevated surface on light mode."
      },
      "discord-light-surface-elevated": {
        "$value": "#EBEDEF",
        "$type": "color",
        "$description": "Authored deepest-elevated surface on light mode."
      },
      "discord-text-on-light": {
        "$value": "#060607",
        "$type": "color",
        "$description": "Primary text on light canvas."
      },
      "discord-text-secondary-light": {
        "$value": "#4E5058",
        "$type": "color",
        "$description": "Authored secondary text on light canvas."
      }
    },
    "roles": {
      "$description": "Semantic color roles (light mode) mapped to palette swatches",
      "background": {
        "$value": "{color.swatches.discord-light-canvas}",
        "$type": "color",
        "$description": "background role → Discord Light Canvas"
      },
      "surface": {
        "$value": "{color.swatches.discord-light-surface}",
        "$type": "color",
        "$description": "surface role → Discord Light Surface"
      },
      "surface-elevated": {
        "$value": "{color.swatches.discord-light-surface-elevated}",
        "$type": "color",
        "$description": "surface-elevated role → Discord Light Surface Elevated"
      },
      "text-primary": {
        "$value": "{color.swatches.discord-text-on-light}",
        "$type": "color",
        "$description": "text-primary role → Discord Text on Light"
      },
      "text-secondary": {
        "$value": "{color.swatches.discord-text-secondary-light}",
        "$type": "color",
        "$description": "text-secondary role → Discord Text Secondary on Light"
      },
      "text-tertiary": {
        "$value": "{color.swatches.discord-greyple}",
        "$type": "color",
        "$description": "text-tertiary role → Discord Greyple"
      },
      "primary": {
        "$value": "{color.swatches.discord-blurple}",
        "$type": "color",
        "$description": "primary role → Discord Blurple"
      },
      "primary-hover": {
        "$value": "{color.swatches.discord-blurple-dark}",
        "$type": "color",
        "$description": "primary-hover role → Discord Blurple Dark"
      },
      "accent": {
        "$value": "{color.swatches.discord-blurple}",
        "$type": "color",
        "$description": "accent role → Discord Blurple"
      },
      "accent-hover": {
        "$value": "{color.swatches.discord-blurple-dark}",
        "$type": "color",
        "$description": "accent-hover role → Discord Blurple Dark"
      },
      "warning": {
        "$value": "{color.swatches.discord-yellow}",
        "$type": "color",
        "$description": "warning role → Discord Yellow"
      },
      "warning-hover": {
        "$value": "{color.swatches.discord-yellow}",
        "$type": "color",
        "$description": "warning-hover role → Discord Yellow"
      },
      "error": {
        "$value": "{color.swatches.discord-red}",
        "$type": "color",
        "$description": "error role → Discord Red"
      },
      "success": {
        "$value": "{color.swatches.discord-green}",
        "$type": "color",
        "$description": "success role → Discord Green"
      },
      "brand-overrides": {
        "$description": "Brand-level role overrides (take precedence over palette role mappings)",
        "identity": {
          "$value": "{color.swatches.discord-canvas-dark}",
          "$type": "color",
          "$description": "Brand role identity → Discord Canvas Dark"
        },
        "on-identity": {
          "$value": "{color.swatches.discord-text-on-dark}",
          "$type": "color",
          "$description": "Brand role on-identity → Discord Text on Dark"
        },
        "background": {
          "$value": "{color.swatches.discord-canvas-dark}",
          "$type": "color",
          "$description": "Brand role background → Discord Canvas Dark"
        },
        "surface": {
          "$value": "{color.swatches.discord-canvas-darker}",
          "$type": "color",
          "$description": "Brand role surface → Discord Canvas Darker"
        },
        "surface-elevated": {
          "$value": "{color.swatches.discord-canvas-darkest}",
          "$type": "color",
          "$description": "Brand role surface-elevated → Discord Canvas Darkest"
        },
        "text-primary": {
          "$value": "{color.swatches.discord-text-on-dark}",
          "$type": "color",
          "$description": "Brand role text-primary → Discord Text on Dark"
        },
        "text-secondary": {
          "$value": "{color.swatches.discord-text-secondary-dark}",
          "$type": "color",
          "$description": "Brand role text-secondary → Discord Text Secondary on Dark"
        },
        "text-tertiary": {
          "$value": "{color.swatches.discord-text-tertiary-dark}",
          "$type": "color",
          "$description": "Brand role text-tertiary → Discord Text Tertiary on Dark"
        },
        "primary": {
          "$value": "{color.swatches.discord-blurple}",
          "$type": "color",
          "$description": "Brand role primary → Discord Blurple"
        },
        "primary-hover": {
          "$value": "{color.swatches.discord-blurple-dark}",
          "$type": "color",
          "$description": "Brand role primary-hover → Discord Blurple Dark"
        },
        "accent": {
          "$value": "{color.swatches.discord-blurple}",
          "$type": "color",
          "$description": "Brand role accent → Discord Blurple"
        },
        "accent-hover": {
          "$value": "{color.swatches.discord-blurple-dark}",
          "$type": "color",
          "$description": "Brand role accent-hover → Discord Blurple Dark"
        },
        "mark": {
          "$value": "{color.swatches.discord-blurple}",
          "$type": "color",
          "$description": "Brand role mark → Discord Blurple"
        },
        "success": {
          "$value": "{color.swatches.discord-green}",
          "$type": "color",
          "$description": "Brand role success → Discord Green"
        },
        "warning": {
          "$value": "{color.swatches.discord-yellow}",
          "$type": "color",
          "$description": "Brand role warning → Discord Yellow"
        },
        "error": {
          "$value": "{color.swatches.discord-red}",
          "$type": "color",
          "$description": "Brand role error → Discord Red"
        },
        "boost": {
          "$value": "{color.swatches.discord-fuchsia}",
          "$type": "color",
          "$description": "Brand role boost → Discord Fuchsia"
        }
      }
    }
  },
  "font": {
    "$description": "Typography roles mapped to font atoms",
    "heading": {
      "family": {
        "$value": [
          "Whitney",
          "Inter",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Helvetica Neue",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "heading role → Whitney (whitney@1.0.0)"
      },
      "weight": {
        "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"
        },
        "$description": "Available font weights"
      }
    },
    "body": {
      "family": {
        "$value": [
          "Whitney",
          "Inter",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Helvetica Neue",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "body role → Whitney (whitney@1.0.0)"
      },
      "weight": {
        "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"
        },
        "$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"
      }
    }
  }
}
