//
// JM&A Group (jma-group@1.0.0)
// Palette: jma-group@1.0.0
// Fonts:   heading=proxima-nova@1.0.0, body=proxima-nova@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 {
    /// JM&A Teal (primary) — Primary brand teal — wordmark accent and headline color.
    public static let jmaTeal = Color(.sRGB, red: 0.0000, green: 0.5529, blue: 0.6039, opacity: 1.0000)
    /// JM&A Teal Deep — Interpolated hover/pressed state for the primary teal.
    public static let jmaTealDeep = Color(.sRGB, red: 0.0000, green: 0.4392, blue: 0.4784, opacity: 1.0000)
    /// JM&A Teal Light — Interpolated soft teal for surfaces and inline highlights.
    public static let jmaTealLight = Color(.sRGB, red: 0.7216, green: 0.8863, blue: 0.9020, opacity: 1.0000)
    /// JM&A Onyx — Wordmark base color and primary headline text.
    public static let jmaOnyx = Color(.sRGB, red: 0.0039, green: 0.0039, blue: 0.0039, opacity: 1.0000)
    /// JM&A Graphite — Body text (interpolated, slightly off
    public static let jmaGraphite = Color(.sRGB, red: 0.1647, green: 0.1765, blue: 0.1922, opacity: 1.0000)
    /// JM&A Slate — Secondary text and meta labels (interpolated).
    public static let jmaSlate = Color(.sRGB, red: 0.3529, green: 0.3922, blue: 0.4392, opacity: 1.0000)
    /// JM&A Fog — Subtle background tint (interpolated).
    public static let jmaFog = Color(.sRGB, red: 0.9020, green: 0.9255, blue: 0.9412, opacity: 1.0000)
    /// JM&A White — Page background and reversed wordmark fill.
    public static let jmaWhite = 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.jmaWhite
    public static let surface = BrandSwatch.jmaFog
    public static let surfaceElevated = BrandSwatch.jmaTealLight
    public static let textPrimary = BrandSwatch.jmaOnyx
    public static let textSecondary = BrandSwatch.jmaGraphite
    public static let textTertiary = BrandSwatch.jmaSlate
    public static let primary = BrandSwatch.jmaTeal
    public static let primaryHover = BrandSwatch.jmaTealDeep
    public static let accent = BrandSwatch.jmaTeal
    public static let success = BrandSwatch.jmaTealDeep
    public static let warning = BrandSwatch.jmaTeal
    public static let error = BrandSwatch.jmaOnyx
    public static let info = BrandSwatch.jmaTeal
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.jmaOnyx
    public static let surface = BrandSwatch.jmaGraphite
    public static let surfaceElevated = BrandSwatch.jmaSlate
    public static let textPrimary = BrandSwatch.jmaWhite
    public static let textSecondary = BrandSwatch.jmaFog
    public static let textTertiary = BrandSwatch.jmaTealLight
    public static let primary = BrandSwatch.jmaTealLight
    public static let primaryHover = BrandSwatch.jmaTeal
    public static let accent = BrandSwatch.jmaTealLight
    public static let success = BrandSwatch.jmaTealLight
    public static let warning = BrandSwatch.jmaTealLight
    public static let error = BrandSwatch.jmaFog
    public static let info = BrandSwatch.jmaTealLight
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.jmaWhite
    public static let onIdentity = BrandSwatch.jmaOnyx
    public static let primary = BrandSwatch.jmaTeal
    public static let primaryHover = BrandSwatch.jmaTealDeep
    public static let accent = BrandSwatch.jmaTeal
    public static let mark = BrandSwatch.jmaOnyx
    public static let textPrimaryLight = BrandSwatch.jmaOnyx
    public static let textPrimaryDark = BrandSwatch.jmaWhite
    public static let backgroundLight = BrandSwatch.jmaWhite
    public static let backgroundDark = BrandSwatch.jmaOnyx
    public static let surfaceLight = BrandSwatch.jmaFog
    public static let surfaceDark = BrandSwatch.jmaGraphite
    public static let borderLight = BrandSwatch.jmaTealLight
}

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