//
// Salesforce (salesforce@1.0.0)
// Palette: salesforce@1.0.0
// Fonts:   heading=inter@1.0.0, body=inter@1.0.0, mono=jetbrainsmono-nerdfont@1.0.0
// Generated by brand-atoms converter — do not edit by hand.
//

import SwiftUI

/// Source-of-truth color swatches from the referenced palette.
public enum BrandSwatch {
    /// Warm Gray 1 — Light canvas.
    public static let warmGray1 = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
    /// Warm Gray 2 — Light surface.
    public static let warmGray2 = Color(.sRGB, red: 0.9804, green: 0.9804, blue: 0.9765, opacity: 1.0000)
    /// Warm Gray 3
    public static let warmGray3 = Color(.sRGB, red: 0.9529, green: 0.9490, blue: 0.9490, opacity: 1.0000)
    /// Warm Gray 4
    public static let warmGray4 = Color(.sRGB, red: 0.9255, green: 0.9216, blue: 0.9176, opacity: 1.0000)
    /// Warm Gray 5 — Default border on light.
    public static let warmGray5 = Color(.sRGB, red: 0.8667, green: 0.8588, blue: 0.8549, opacity: 1.0000)
    /// Warm Gray 6
    public static let warmGray6 = Color(.sRGB, red: 0.7882, green: 0.7804, blue: 0.7725, opacity: 1.0000)
    /// Warm Gray 7
    public static let warmGray7 = Color(.sRGB, red: 0.6902, green: 0.6784, blue: 0.6706, opacity: 1.0000)
    /// Warm Gray 8
    public static let warmGray8 = Color(.sRGB, red: 0.5882, green: 0.5804, blue: 0.5725, opacity: 1.0000)
    /// Warm Gray 9 — Secondary text on light.
    public static let warmGray9 = Color(.sRGB, red: 0.4392, green: 0.4314, blue: 0.4196, opacity: 1.0000)
    /// Warm Gray 10
    public static let warmGray10 = Color(.sRGB, red: 0.3176, green: 0.3098, blue: 0.3020, opacity: 1.0000)
    /// Warm Gray 11
    public static let warmGray11 = Color(.sRGB, red: 0.2431, green: 0.2431, blue: 0.2353, opacity: 1.0000)
    /// Warm Gray 12 — Dark surface.
    public static let warmGray12 = Color(.sRGB, red: 0.1686, green: 0.1569, blue: 0.1490, opacity: 1.0000)
    /// Warm Gray 13 — Primary text on light; dark canvas.
    public static let warmGray13 = Color(.sRGB, red: 0.0314, green: 0.0275, blue: 0.0275, opacity: 1.0000)
    /// Cool Gray 2
    public static let coolGray2 = Color(.sRGB, red: 0.9765, green: 0.9765, blue: 0.9804, opacity: 1.0000)
    /// Cool Gray 9
    public static let coolGray9 = Color(.sRGB, red: 0.4196, green: 0.4275, blue: 0.4392, opacity: 1.0000)
    /// Cool Gray 13
    public static let coolGray13 = Color(.sRGB, red: 0.0275, green: 0.0314, blue: 0.0314, opacity: 1.0000)
    /// Blue 20
    public static let blue20 = Color(.sRGB, red: 0.0118, green: 0.1765, blue: 0.3765, opacity: 1.0000)
    /// Blue 30
    public static let blue30 = Color(.sRGB, red: 0.0039, green: 0.2667, blue: 0.5255, opacity: 1.0000)
    /// Blue 40
    public static let blue40 = Color(.sRGB, red: 0.0431, green: 0.3608, blue: 0.6706, opacity: 1.0000)
    /// Blue 50 — Salesforce BRAND_PRIMARY — the canonical SLDS blue.
    public static let blue50 = Color(.sRGB, red: 0.0039, green: 0.4627, blue: 0.8275, opacity: 1.0000)
    /// Blue 60 — Brand primary on dark surfaces.
    public static let blue60 = Color(.sRGB, red: 0.1059, green: 0.5882, blue: 1.0000, opacity: 1.0000)
    /// Blue 90
    public static let blue90 = Color(.sRGB, red: 0.8471, green: 0.9020, blue: 0.9961, opacity: 1.0000)
    /// Blue 95
    public static let blue95 = Color(.sRGB, red: 0.9333, green: 0.9569, blue: 1.0000, opacity: 1.0000)
    /// Green 20
    public static let green20 = Color(.sRGB, red: 0.1098, green: 0.2000, blue: 0.1490, opacity: 1.0000)
    /// Green 50 — Success on light surfaces.
    public static let green50 = Color(.sRGB, red: 0.1804, green: 0.5176, blue: 0.2902, opacity: 1.0000)
    /// Green 60
    public static let green60 = Color(.sRGB, red: 0.2314, green: 0.6549, blue: 0.3333, opacity: 1.0000)
    /// Green 90
    public static let green90 = Color(.sRGB, red: 0.8039, green: 0.9373, blue: 0.7686, opacity: 1.0000)
    /// Red 40
    public static let red40 = Color(.sRGB, red: 0.7294, green: 0.0196, blue: 0.0902, opacity: 1.0000)
    /// Red 50 — Error / destructive (light).
    public static let red50 = Color(.sRGB, red: 0.9176, green: 0.0000, blue: 0.1176, opacity: 1.0000)
    /// Red 60 — Error / destructive (dark).
    public static let red60 = Color(.sRGB, red: 0.9961, green: 0.3608, blue: 0.2980, opacity: 1.0000)
    /// Red 90
    public static let red90 = Color(.sRGB, red: 1.0000, green: 0.8039, blue: 0.7882, opacity: 1.0000)
    /// Yellow 40
    public static let yellow40 = Color(.sRGB, red: 0.5490, green: 0.2941, blue: 0.0078, opacity: 1.0000)
    /// Yellow 50 — Warning on light surfaces.
    public static let yellow50 = Color(.sRGB, red: 0.6588, green: 0.3922, blue: 0.0118, opacity: 1.0000)
    /// Yellow 60
    public static let yellow60 = Color(.sRGB, red: 0.7922, green: 0.5216, blue: 0.0039, opacity: 1.0000)
    /// Yellow 90
    public static let yellow90 = Color(.sRGB, red: 0.9882, green: 0.9176, blue: 0.7020, opacity: 1.0000)
    /// Orange 50
    public static let orange50 = Color(.sRGB, red: 0.6627, green: 0.3922, blue: 0.0157, opacity: 1.0000)
    /// Orange 60
    public static let orange60 = Color(.sRGB, red: 0.8667, green: 0.4784, blue: 0.0039, opacity: 1.0000)
    /// Orange 70
    public static let orange70 = Color(.sRGB, red: 0.9961, green: 0.5765, blue: 0.2235, opacity: 1.0000)
    /// Cloud Blue 50
    public static let cloudBlue50 = Color(.sRGB, red: 0.0627, green: 0.4863, blue: 0.6784, opacity: 1.0000)
    /// Cloud Blue 70
    public static let cloudBlue70 = Color(.sRGB, red: 0.1020, green: 0.7255, blue: 1.0000, opacity: 1.0000)
    /// Teal 50
    public static let teal50 = Color(.sRGB, red: 0.0431, green: 0.5098, blue: 0.4863, opacity: 1.0000)
    /// Teal 60
    public static let teal60 = Color(.sRGB, red: 0.0235, green: 0.6471, blue: 0.6039, opacity: 1.0000)
    /// Pink 50
    public static let pink50 = Color(.sRGB, red: 0.8902, green: 0.0235, blue: 0.4157, opacity: 1.0000)
    /// Pink 60
    public static let pink60 = Color(.sRGB, red: 1.0000, green: 0.3255, blue: 0.5412, opacity: 1.0000)
    /// Indigo 50
    public static let indigo50 = Color(.sRGB, red: 0.3451, green: 0.4039, blue: 0.9098, opacity: 1.0000)
    /// Indigo 60
    public static let indigo60 = Color(.sRGB, red: 0.4980, green: 0.5490, blue: 0.9294, opacity: 1.0000)
    /// Purple 50
    public static let purple50 = Color(.sRGB, red: 0.5647, green: 0.3137, blue: 0.9137, opacity: 1.0000)
    /// Purple 60
    public static let purple60 = Color(.sRGB, red: 0.6784, green: 0.4824, blue: 0.9333, opacity: 1.0000)
    /// Violet 50
    public static let violet50 = Color(.sRGB, red: 0.7294, green: 0.0039, blue: 1.0000, opacity: 1.0000)
    /// Violet 60
    public static let violet60 = Color(.sRGB, red: 0.7961, green: 0.3961, blue: 1.0000, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.warmGray1
    public static let surface = BrandSwatch.warmGray2
    public static let surfaceElevated = BrandSwatch.warmGray1
    public static let textPrimary = BrandSwatch.warmGray13
    public static let textSecondary = BrandSwatch.warmGray9
    public static let textTertiary = BrandSwatch.warmGray10
    public static let primary = BrandSwatch.blue50
    public static let primaryHover = BrandSwatch.blue40
    public static let accent = BrandSwatch.blue50
    public static let accentHover = BrandSwatch.blue40
    public static let warning = BrandSwatch.yellow50
    public static let warningHover = BrandSwatch.yellow40
    public static let error = BrandSwatch.red50
    public static let success = BrandSwatch.green50
    public static let border = BrandSwatch.warmGray5
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.warmGray13
    public static let surface = BrandSwatch.warmGray12
    public static let surfaceElevated = BrandSwatch.warmGray11
    public static let textPrimary = BrandSwatch.warmGray2
    public static let textSecondary = BrandSwatch.warmGray6
    public static let textTertiary = BrandSwatch.warmGray7
    public static let primary = BrandSwatch.blue60
    public static let primaryHover = BrandSwatch.blue50
    public static let accent = BrandSwatch.blue60
    public static let accentHover = BrandSwatch.blue50
    public static let warning = BrandSwatch.yellow60
    public static let warningHover = BrandSwatch.yellow50
    public static let error = BrandSwatch.red60
    public static let success = BrandSwatch.green60
    public static let border = BrandSwatch.warmGray11
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.warmGray1
    public static let onIdentity = BrandSwatch.warmGray13
    public static let primary = BrandSwatch.blue50
    public static let primaryHover = BrandSwatch.blue40
    public static let accent = BrandSwatch.blue50
    public static let accentHover = BrandSwatch.blue40
    public static let mark = BrandSwatch.blue50
    public static let success = BrandSwatch.green50
    public static let warning = BrandSwatch.yellow50
    public static let error = BrandSwatch.red50
    public static let textPrimaryLight = BrandSwatch.warmGray13
    public static let textPrimaryDark = BrandSwatch.warmGray2
    public static let backgroundLight = BrandSwatch.warmGray1
    public static let backgroundDark = BrandSwatch.warmGray13
    public static let surfaceLight = BrandSwatch.warmGray2
    public static let surfaceDark = BrandSwatch.warmGray12
    public static let textSecondaryLight = BrandSwatch.warmGray9
    public static let textTertiaryLight = BrandSwatch.warmGray10
    public static let borderLight = BrandSwatch.warmGray5
}

/// Typography family names by brand role.
public enum BrandFont {
    /// Inter (inter@1.0.0)
    public static let heading = "Inter"
    /// Inter (inter@1.0.0)
    public static let body = "Inter"
    /// JetBrainsMono Nerd Font (jetbrainsmono-nerdfont@1.0.0)
    public static let mono = "JetBrainsMono Nerd Font"
}
