//
// Meta (meta@1.0.0)
// Palette: meta@1.0.0
// Fonts:   heading=meta-sans@1.0.0, body=meta-sans@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 {
    /// Meta Blue — Primary Meta brand blue — the Meta wordmark and corporate mark color.
    public static let metaBlue = Color(.sRGB, red: 0.0235, green: 0.4078, blue: 0.8824, opacity: 1.0000)
    /// Meta Blue Dark — Facebook product blue — adjacent Meta brand-family color; used on Facebook product surfaces.
    public static let metaBlueDark = Color(.sRGB, red: 0.0941, green: 0.4667, blue: 0.9490, opacity: 1.0000)
    /// Meta Vivid Blue — Vivid blue from the Meta gradient palette — used in motion and editorial accent.
    public static let metaVividBlue = Color(.sRGB, red: 0.0000, green: 0.3922, blue: 0.8784, opacity: 1.0000)
    /// Meta Vivid Green — Vivid green from the Meta corporate gradient palette.
    public static let metaVividGreen = Color(.sRGB, red: 0.0000, green: 0.7843, blue: 0.3255, opacity: 1.0000)
    /// Meta Vivid Red — Vivid red from the Meta corporate gradient palette.
    public static let metaVividRed = Color(.sRGB, red: 0.9412, green: 0.1569, blue: 0.2863, opacity: 1.0000)
    /// Meta Vivid Purple — Vivid purple from the Meta corporate gradient palette.
    public static let metaVividPurple = Color(.sRGB, red: 0.4941, green: 0.2941, blue: 1.0000, opacity: 1.0000)
    /// Meta Black — Headline ink and dark-mode canvas.
    public static let metaBlack = Color(.sRGB, red: 0.0000, green: 0.0000, blue: 0.0000, opacity: 1.0000)
    /// Meta Ink — Primary text on light surfaces — softer than pure black.
    public static let metaInk = Color(.sRGB, red: 0.1098, green: 0.1686, blue: 0.2000, opacity: 1.0000)
    /// Meta Gray — Secondary text and metadata on the light canvas.
    public static let metaGray = Color(.sRGB, red: 0.3961, green: 0.4039, blue: 0.4196, opacity: 1.0000)
    /// Meta Gray Light — Tertiary text and dividers.
    public static let metaGrayLight = Color(.sRGB, red: 0.5412, green: 0.5529, blue: 0.5686, opacity: 1.0000)
    /// Meta Surface — Quiet surface — Facebook-family content cards and feed backgrounds.
    public static let metaSurface = Color(.sRGB, red: 0.9412, green: 0.9490, blue: 0.9608, opacity: 1.0000)
    /// Meta White — Primary canvas on light corporate surfaces.
    public static let metaWhite = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.metaWhite
    public static let surface = BrandSwatch.metaSurface
    public static let surfaceElevated = BrandSwatch.metaWhite
    public static let textPrimary = BrandSwatch.metaInk
    public static let textSecondary = BrandSwatch.metaGray
    public static let textTertiary = BrandSwatch.metaGrayLight
    public static let primary = BrandSwatch.metaBlue
    public static let primaryHover = BrandSwatch.metaVividBlue
    public static let accent = BrandSwatch.metaVividPurple
    public static let accentHover = BrandSwatch.metaVividBlue
    public static let warning = BrandSwatch.metaVividRed
    public static let warningHover = BrandSwatch.metaVividRed
    public static let error = BrandSwatch.metaVividRed
    public static let success = BrandSwatch.metaVividGreen
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.metaBlack
    public static let surface = BrandSwatch.metaInk
    public static let surfaceElevated = BrandSwatch.metaGray
    public static let textPrimary = BrandSwatch.metaWhite
    public static let textSecondary = BrandSwatch.metaSurface
    public static let textTertiary = BrandSwatch.metaGrayLight
    public static let primary = BrandSwatch.metaBlue
    public static let primaryHover = BrandSwatch.metaBlueDark
    public static let accent = BrandSwatch.metaVividPurple
    public static let accentHover = BrandSwatch.metaVividBlue
    public static let warning = BrandSwatch.metaVividRed
    public static let warningHover = BrandSwatch.metaVividRed
    public static let error = BrandSwatch.metaVividRed
    public static let success = BrandSwatch.metaVividGreen
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.metaBlue
    public static let onIdentity = BrandSwatch.metaWhite
    public static let background = BrandSwatch.metaWhite
    public static let surface = BrandSwatch.metaSurface
    public static let surfaceElevated = BrandSwatch.metaWhite
    public static let textPrimary = BrandSwatch.metaInk
    public static let textSecondary = BrandSwatch.metaGray
    public static let textTertiary = BrandSwatch.metaGrayLight
    public static let primary = BrandSwatch.metaBlue
    public static let primaryHover = BrandSwatch.metaVividBlue
    public static let accent = BrandSwatch.metaVividPurple
    public static let accentHover = BrandSwatch.metaVividBlue
    public static let mark = BrandSwatch.metaBlue
    public static let textEmphasis = BrandSwatch.metaInk
    public static let textMuted = BrandSwatch.metaGray
}

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