{
  "$description": "Brand: Spotify — dark mode",
  "color": {
    "swatches": {
      "$description": "Source-of-truth color swatches from palette spotify@1.0.0",
      "spotify-green": {
        "$value": "#1ED760",
        "$type": "color",
        "$description": "Current primary brand green — used on the wordmark, the play affordance, and primary CTAs."
      },
      "spotify-green-legacy": {
        "$value": "#1DB954",
        "$type": "color",
        "$description": "The legacy Spotify Green established with the brand. Still appears across press assets and older surfaces."
      },
      "spotify-green-pressed": {
        "$value": "#169C46",
        "$type": "color",
        "$description": "Darker green for pressed/active states on the primary action."
      },
      "spotify-black": {
        "$value": "#000000",
        "$type": "color",
        "$description": "Canonical canvas — the Spotify consumer surface is solid black."
      },
      "spotify-dark": {
        "$value": "#121212",
        "$type": "color",
        "$description": "Elevated surface of the Spotify consumer app — the player chrome and main panel sit on this near-black."
      },
      "spotify-elevated": {
        "$value": "#181818",
        "$type": "color",
        "$description": "Cards, hovered rows, and elevated tiles use this slightly lifted near-black."
      },
      "spotify-gray": {
        "$value": "#535353",
        "$type": "color",
        "$description": "Secondary text and divider color on the dark canvas."
      },
      "spotify-gray-light": {
        "$value": "#B3B3B3",
        "$type": "color",
        "$description": "Tertiary text, captions, metadata in the player UI."
      },
      "spotify-white": {
        "$value": "#FFFFFF",
        "$type": "color",
        "$description": "Primary text on the dark canvas; reversed wordmark fill on light marketing."
      }
    },
    "roles": {
      "$description": "Semantic color roles (dark mode) mapped to palette swatches",
      "background": {
        "$value": "{color.swatches.spotify-black}",
        "$type": "color",
        "$description": "background role → Spotify Black"
      },
      "surface": {
        "$value": "{color.swatches.spotify-dark}",
        "$type": "color",
        "$description": "surface role → Spotify Dark"
      },
      "surface-elevated": {
        "$value": "{color.swatches.spotify-elevated}",
        "$type": "color",
        "$description": "surface-elevated role → Spotify Elevated"
      },
      "text-primary": {
        "$value": "{color.swatches.spotify-white}",
        "$type": "color",
        "$description": "text-primary role → Spotify White"
      },
      "text-secondary": {
        "$value": "{color.swatches.spotify-gray-light}",
        "$type": "color",
        "$description": "text-secondary role → Spotify Gray Light"
      },
      "text-tertiary": {
        "$value": "{color.swatches.spotify-gray}",
        "$type": "color",
        "$description": "text-tertiary role → Spotify Gray"
      },
      "primary": {
        "$value": "{color.swatches.spotify-green}",
        "$type": "color",
        "$description": "primary role → Spotify Green"
      },
      "primary-hover": {
        "$value": "{color.swatches.spotify-green-pressed}",
        "$type": "color",
        "$description": "primary-hover role → Spotify Green Pressed"
      },
      "accent": {
        "$value": "{color.swatches.spotify-green}",
        "$type": "color",
        "$description": "accent role → Spotify Green"
      },
      "accent-hover": {
        "$value": "{color.swatches.spotify-green-pressed}",
        "$type": "color",
        "$description": "accent-hover role → Spotify Green Pressed"
      },
      "warning": {
        "$value": "{color.swatches.spotify-green-legacy}",
        "$type": "color",
        "$description": "warning role → Spotify Green (Legacy)"
      },
      "warning-hover": {
        "$value": "{color.swatches.spotify-green-pressed}",
        "$type": "color",
        "$description": "warning-hover role → Spotify Green Pressed"
      },
      "error": {
        "$value": "{color.swatches.spotify-gray-light}",
        "$type": "color",
        "$description": "error role → Spotify Gray Light"
      },
      "success": {
        "$value": "{color.swatches.spotify-green}",
        "$type": "color",
        "$description": "success role → Spotify Green"
      },
      "brand-overrides": {
        "$description": "Brand-level role overrides (take precedence over palette role mappings)",
        "identity": {
          "$value": "{color.swatches.spotify-black}",
          "$type": "color",
          "$description": "Brand role identity → Spotify Black"
        },
        "on-identity": {
          "$value": "{color.swatches.spotify-green}",
          "$type": "color",
          "$description": "Brand role on-identity → Spotify Green"
        },
        "background": {
          "$value": "{color.swatches.spotify-black}",
          "$type": "color",
          "$description": "Brand role background → Spotify Black"
        },
        "surface": {
          "$value": "{color.swatches.spotify-dark}",
          "$type": "color",
          "$description": "Brand role surface → Spotify Dark"
        },
        "surface-elevated": {
          "$value": "{color.swatches.spotify-elevated}",
          "$type": "color",
          "$description": "Brand role surface-elevated → Spotify Elevated"
        },
        "text-primary": {
          "$value": "{color.swatches.spotify-white}",
          "$type": "color",
          "$description": "Brand role text-primary → Spotify White"
        },
        "text-secondary": {
          "$value": "{color.swatches.spotify-gray-light}",
          "$type": "color",
          "$description": "Brand role text-secondary → Spotify Gray Light"
        },
        "text-tertiary": {
          "$value": "{color.swatches.spotify-gray}",
          "$type": "color",
          "$description": "Brand role text-tertiary → Spotify Gray"
        },
        "primary": {
          "$value": "{color.swatches.spotify-green}",
          "$type": "color",
          "$description": "Brand role primary → Spotify Green"
        },
        "primary-hover": {
          "$value": "{color.swatches.spotify-green-pressed}",
          "$type": "color",
          "$description": "Brand role primary-hover → Spotify Green Pressed"
        },
        "accent": {
          "$value": "{color.swatches.spotify-green}",
          "$type": "color",
          "$description": "Brand role accent → Spotify Green"
        },
        "accent-hover": {
          "$value": "{color.swatches.spotify-green-pressed}",
          "$type": "color",
          "$description": "Brand role accent-hover → Spotify Green Pressed"
        },
        "mark": {
          "$value": "{color.swatches.spotify-green}",
          "$type": "color",
          "$description": "Brand role mark → Spotify Green"
        },
        "text-emphasis": {
          "$value": "{color.swatches.spotify-white}",
          "$type": "color",
          "$description": "Brand role text-emphasis → Spotify White"
        },
        "text-muted": {
          "$value": "{color.swatches.spotify-gray-light}",
          "$type": "color",
          "$description": "Brand role text-muted → Spotify Gray Light"
        }
      }
    }
  },
  "font": {
    "$description": "Typography roles mapped to font atoms",
    "heading": {
      "family": {
        "$value": [
          "Spotify Circular",
          "Helvetica Neue",
          "Helvetica",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "heading role → Spotify Circular (spotify-circular@1.0.0)"
      },
      "weight": {
        "300": {
          "$value": 300,
          "$type": "fontWeight"
        },
        "400": {
          "$value": 400,
          "$type": "fontWeight"
        },
        "500": {
          "$value": 500,
          "$type": "fontWeight"
        },
        "700": {
          "$value": 700,
          "$type": "fontWeight"
        },
        "900": {
          "$value": 900,
          "$type": "fontWeight"
        },
        "$description": "Available font weights"
      }
    },
    "body": {
      "family": {
        "$value": [
          "Spotify Circular",
          "Helvetica Neue",
          "Helvetica",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Arial",
          "sans-serif"
        ],
        "$type": "fontFamily",
        "$description": "body role → Spotify Circular (spotify-circular@1.0.0)"
      },
      "weight": {
        "300": {
          "$value": 300,
          "$type": "fontWeight"
        },
        "400": {
          "$value": 400,
          "$type": "fontWeight"
        },
        "500": {
          "$value": 500,
          "$type": "fontWeight"
        },
        "700": {
          "$value": 700,
          "$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"
      }
    }
  }
}
