//
// Docker (docker@1.0.0)
// Palette: docker@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 {
    /// Docker Blue — Primary Docker brand blue — the fill of the Moby whale and the principal CTA color across docker.com and Docker Desktop.

    public static let dockerBlue = Color(.sRGB, red: 0.1412, green: 0.5882, blue: 0.9294, opacity: 1.0000)
    /// Docker Blue Bright — Brighter cyan-blue used in Docker marketing illustrations and on dark-canvas hero compositions.

    public static let dockerBlueBright = Color(.sRGB, red: 0.0510, green: 0.7176, blue: 0.9294, opacity: 1.0000)
    /// Docker Navy — Deep navy used in dark-mode marketing surfaces and as the chrome canvas for Docker Hub on dark theme.

    public static let dockerNavy = Color(.sRGB, red: 0.0392, green: 0.1216, blue: 0.2667, opacity: 1.0000)
    /// Docker Navy Deep — Darkest navy used on dark-mode page canvas.
    public static let dockerNavyDeep = Color(.sRGB, red: 0.0235, green: 0.0706, blue: 0.1647, opacity: 1.0000)
    /// Docker Blue Dark — Pressed/active state for the primary CTA on light surfaces.
    public static let dockerBlueDark = Color(.sRGB, red: 0.0902, green: 0.4118, blue: 0.6510, opacity: 1.0000)
    /// Docker Ink — Primary text on light surfaces.
    public static let dockerInk = Color(.sRGB, red: 0.0902, green: 0.0980, blue: 0.1176, opacity: 1.0000)
    /// Docker Gray — Secondary text and metadata.
    public static let dockerGray = Color(.sRGB, red: 0.4039, green: 0.4471, blue: 0.5216, opacity: 1.0000)
    /// Docker Gray Light — Tertiary text and disabled UI.
    public static let dockerGrayLight = Color(.sRGB, red: 0.5373, green: 0.5765, blue: 0.6471, opacity: 1.0000)
    /// Docker Surface — Quiet surface — card backgrounds on docker.com.
    public static let dockerSurface = Color(.sRGB, red: 0.9569, green: 0.9647, blue: 0.9765, opacity: 1.0000)
    /// Docker Border — Hairline borders and dividers.
    public static let dockerBorder = Color(.sRGB, red: 0.8824, green: 0.8863, blue: 0.9020, opacity: 1.0000)
    /// Docker White — Primary canvas on light surfaces.
    public static let dockerWhite = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
    /// Docker Success — Confirmation / healthy-container state.
    public static let dockerSuccess = Color(.sRGB, red: 0.1098, green: 0.7255, blue: 0.4784, opacity: 1.0000)
    /// Docker Warning — Caution state on Docker Desktop chrome.
    public static let dockerWarning = Color(.sRGB, red: 0.9490, green: 0.6392, blue: 0.2275, opacity: 1.0000)
    /// Docker Error — Destructive / unhealthy-container state.
    public static let dockerError = Color(.sRGB, red: 0.8863, green: 0.3412, blue: 0.2980, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.dockerWhite
    public static let surface = BrandSwatch.dockerSurface
    public static let surfaceElevated = BrandSwatch.dockerWhite
    public static let textPrimary = BrandSwatch.dockerInk
    public static let textSecondary = BrandSwatch.dockerGray
    public static let textTertiary = BrandSwatch.dockerGrayLight
    public static let primary = BrandSwatch.dockerBlue
    public static let primaryHover = BrandSwatch.dockerBlueDark
    public static let accent = BrandSwatch.dockerBlueBright
    public static let accentHover = BrandSwatch.dockerBlue
    public static let warning = BrandSwatch.dockerWarning
    public static let warningHover = BrandSwatch.dockerError
    public static let error = BrandSwatch.dockerError
    public static let success = BrandSwatch.dockerSuccess
    public static let border = BrandSwatch.dockerBorder
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.dockerNavyDeep
    public static let surface = BrandSwatch.dockerNavy
    public static let surfaceElevated = BrandSwatch.dockerBlueDark
    public static let textPrimary = BrandSwatch.dockerWhite
    public static let textSecondary = BrandSwatch.dockerSurface
    public static let textTertiary = BrandSwatch.dockerGrayLight
    public static let primary = BrandSwatch.dockerBlueBright
    public static let primaryHover = BrandSwatch.dockerBlue
    public static let accent = BrandSwatch.dockerBlue
    public static let accentHover = BrandSwatch.dockerBlueBright
    public static let warning = BrandSwatch.dockerWarning
    public static let warningHover = BrandSwatch.dockerError
    public static let error = BrandSwatch.dockerError
    public static let success = BrandSwatch.dockerSuccess
    public static let border = BrandSwatch.dockerBlueDark
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.dockerBlue
    public static let onIdentity = BrandSwatch.dockerWhite
    public static let primary = BrandSwatch.dockerBlue
    public static let primaryHover = BrandSwatch.dockerBlueDark
    public static let accent = BrandSwatch.dockerBlueBright
    public static let accentHover = BrandSwatch.dockerBlue
    public static let background = BrandSwatch.dockerWhite
    public static let surface = BrandSwatch.dockerSurface
    public static let surfaceElevated = BrandSwatch.dockerWhite
    public static let textPrimary = BrandSwatch.dockerInk
    public static let textSecondary = BrandSwatch.dockerGray
    public static let textTertiary = BrandSwatch.dockerGrayLight
    public static let chrome = BrandSwatch.dockerNavy
    public static let chromeDeep = BrandSwatch.dockerNavyDeep
    public static let mark = BrandSwatch.dockerBlue
}

/// 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"
}
