{
  "$description": "Brand: Stripe — dark mode",
  "color": {
    "swatches": {
      "$description": "Source-of-truth color swatches from palette stripe@1.0.0",
      "stripe-purple": {
        "$value": "#635BFF",
        "$type": "color",
        "$description": "The signature brand color. Primary buttons, links, gradient anchors."
      },
      "stripe-purple-pressed": {
        "$value": "#533AFD",
        "$type": "color",
        "$description": "Active / pressed state of the primary purple."
      },
      "stripe-purple-soft": {
        "$value": "#E8E9FF",
        "$type": "color",
        "$description": "Tinted backgrounds, badges, on-brand call-out cards."
      },
      "stripe-slate-100": {
        "$value": "#061B31",
        "$type": "color",
        "$description": "Deepest slate — large headings on light surfaces."
      },
      "stripe-slate-90": {
        "$value": "#0A2540",
        "$type": "color",
        "$description": "Standard heading slate, dark module backgrounds."
      },
      "stripe-slate-70": {
        "$value": "#3C4F69",
        "$type": "color",
        "$description": "Secondary heading / large body text."
      },
      "stripe-slate-50": {
        "$value": "#425466",
        "$type": "color",
        "$description": "Default body-text gray-blue."
      },
      "stripe-slate-30": {
        "$value": "#667691",
        "$type": "color",
        "$description": "Muted text and tertiary labels."
      },
      "stripe-white": {
        "$value": "#FFFFFF",
        "$type": "color",
        "$description": "Pure white surface."
      },
      "stripe-fog-0": {
        "$value": "#F6F9FC",
        "$type": "color",
        "$description": "Page canvas — the off-white Stripe uses behind content."
      },
      "stripe-fog-1": {
        "$value": "#E5EDF5",
        "$type": "color",
        "$description": "Subtle dividers and elevated-surface tints."
      },
      "stripe-fog-2": {
        "$value": "#CFD7DF",
        "$type": "color",
        "$description": "Border / hairline."
      },
      "stripe-green": {
        "$value": "#2CA25E",
        "$type": "color",
        "$description": "Success / confirmation green."
      },
      "stripe-orange": {
        "$value": "#E17A38",
        "$type": "color",
        "$description": "Warm accent used in gradient surfaces."
      },
      "stripe-magenta": {
        "$value": "#F44BCC",
        "$type": "color",
        "$description": "Hot accent — appears in Stripe's brand gradients."
      },
      "stripe-pink": {
        "$value": "#FF5996",
        "$type": "color",
        "$description": "Light pink accent used in illustration."
      },
      "stripe-red": {
        "$value": "#EA2261",
        "$type": "color",
        "$description": "Error / destructive action."
      }
    },
    "roles": {
      "$description": "Semantic color roles (dark mode) mapped to palette swatches",
      "background": {
        "$value": "{color.swatches.stripe-slate-100}",
        "$type": "color",
        "$description": "background role → Stripe Slate 100"
      },
      "surface": {
        "$value": "{color.swatches.stripe-slate-90}",
        "$type": "color",
        "$description": "surface role → Stripe Slate 90"
      },
      "surface-elevated": {
        "$value": "{color.swatches.stripe-slate-70}",
        "$type": "color",
        "$description": "surface-elevated role → Stripe Slate 70"
      },
      "text-primary": {
        "$value": "{color.swatches.stripe-white}",
        "$type": "color",
        "$description": "text-primary role → Stripe White"
      },
      "text-secondary": {
        "$value": "{color.swatches.stripe-fog-1}",
        "$type": "color",
        "$description": "text-secondary role → Stripe Fog 1"
      },
      "text-tertiary": {
        "$value": "{color.swatches.stripe-slate-30}",
        "$type": "color",
        "$description": "text-tertiary role → Stripe Slate 30"
      },
      "primary": {
        "$value": "{color.swatches.stripe-purple}",
        "$type": "color",
        "$description": "primary role → Stripe Purple"
      },
      "primary-hover": {
        "$value": "{color.swatches.stripe-purple-soft}",
        "$type": "color",
        "$description": "primary-hover role → Stripe Purple Soft"
      },
      "accent": {
        "$value": "{color.swatches.stripe-purple}",
        "$type": "color",
        "$description": "accent role → Stripe Purple"
      },
      "accent-hover": {
        "$value": "{color.swatches.stripe-purple-soft}",
        "$type": "color",
        "$description": "accent-hover role → Stripe Purple Soft"
      },
      "warning": {
        "$value": "{color.swatches.stripe-orange}",
        "$type": "color",
        "$description": "warning role → Stripe Orange"
      },
      "warning-hover": {
        "$value": "{color.swatches.stripe-orange}",
        "$type": "color",
        "$description": "warning-hover role → Stripe Orange"
      },
      "error": {
        "$value": "{color.swatches.stripe-pink}",
        "$type": "color",
        "$description": "error role → Stripe Pink"
      },
      "success": {
        "$value": "{color.swatches.stripe-green}",
        "$type": "color",
        "$description": "success role → Stripe Green"
      },
      "border": {
        "$value": "{color.swatches.stripe-slate-70}",
        "$type": "color",
        "$description": "border role → Stripe Slate 70"
      },
      "brand-overrides": {
        "$description": "Brand-level role overrides (take precedence over palette role mappings)",
        "primary": {
          "$value": "{color.swatches.stripe-purple}",
          "$type": "color",
          "$description": "Brand role primary → Stripe Purple"
        },
        "primary-hover": {
          "$value": "{color.swatches.stripe-purple-pressed}",
          "$type": "color",
          "$description": "Brand role primary-hover → Stripe Purple Pressed"
        },
        "accent": {
          "$value": "{color.swatches.stripe-purple}",
          "$type": "color",
          "$description": "Brand role accent → Stripe Purple"
        },
        "accent-hover": {
          "$value": "{color.swatches.stripe-purple-pressed}",
          "$type": "color",
          "$description": "Brand role accent-hover → Stripe Purple Pressed"
        },
        "success": {
          "$value": "{color.swatches.stripe-green}",
          "$type": "color",
          "$description": "Brand role success → Stripe Green"
        },
        "warning": {
          "$value": "{color.swatches.stripe-orange}",
          "$type": "color",
          "$description": "Brand role warning → Stripe Orange"
        },
        "error": {
          "$value": "{color.swatches.stripe-red}",
          "$type": "color",
          "$description": "Brand role error → Stripe Red"
        },
        "text-primary-light": {
          "$value": "{color.swatches.stripe-slate-90}",
          "$type": "color",
          "$description": "Brand role text-primary-light → Stripe Slate 90"
        },
        "text-primary-dark": {
          "$value": "{color.swatches.stripe-white}",
          "$type": "color",
          "$description": "Brand role text-primary-dark → Stripe White"
        },
        "background-light": {
          "$value": "{color.swatches.stripe-fog-0}",
          "$type": "color",
          "$description": "Brand role background-light → Stripe Fog 0 (canvas)"
        },
        "background-dark": {
          "$value": "{color.swatches.stripe-slate-100}",
          "$type": "color",
          "$description": "Brand role background-dark → Stripe Slate 100"
        },
        "surface-light": {
          "$value": "{color.swatches.stripe-white}",
          "$type": "color",
          "$description": "Brand role surface-light → Stripe White"
        },
        "surface-dark": {
          "$value": "{color.swatches.stripe-slate-90}",
          "$type": "color",
          "$description": "Brand role surface-dark → Stripe Slate 90"
        }
      }
    }
  },
  "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"
      }
    }
  }
}
