//
// Fastmail (fastmail@1.0.0)
// Palette: fastmail@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 {
    /// Fastmail Blue — Fastmail's primary action / CTA color — the dominant brand blue used for buttons, links, and primary affordances across the marketing site and product.

    public static let fastmailBlue = Color(.sRGB, red: 0.0000, green: 0.4039, blue: 0.7255, opacity: 1.0000)
    /// Fastmail Blue Hover — Hover variant on the primary CTA.
    public static let fastmailBlueHover = Color(.sRGB, red: 0.0902, green: 0.4196, blue: 0.6784, opacity: 1.0000)
    /// Fastmail Blue Active — Pressed / active state of the primary blue.
    public static let fastmailBlueActive = Color(.sRGB, red: 0.1608, green: 0.4196, blue: 0.6235, opacity: 1.0000)
    /// Fastmail Deep Blue — The navy "trust" hue used as the footer background and as the brand-anchor identity color in marketing surfaces. Reads as "secure, established" against the lighter primary blue.

    public static let fastmailDeepBlue = Color(.sRGB, red: 0.1412, green: 0.2235, blue: 0.3490, opacity: 1.0000)
    /// Fastmail Light Blue — The mid-light blue used in the footer flag-gradient and as the focus-ring / outline color on buttons.

    public static let fastmailLightblue = Color(.sRGB, red: 0.4118, green: 0.7020, blue: 0.9059, opacity: 1.0000)
    /// Fastmail Mellow Yellow — The warm off-white "mellow" surface — a paper-toned canvas used on marketing modules as the calm alternative to pure white.

    public static let fastmailMellowYellow = Color(.sRGB, red: 0.9843, green: 0.9686, blue: 0.9373, opacity: 1.0000)
    /// Fastmail Yellow — The saturated yellow used in the footer flag-gradient and for highlight accents.

    public static let fastmailYellow = Color(.sRGB, red: 1.0000, green: 0.7569, blue: 0.0275, opacity: 1.0000)
    /// Fastmail Pink — The blush-pink accent that opens the footer flag-gradient — a softer, warmer counterpoint to the dominant blues.

    public static let fastmailPink = Color(.sRGB, red: 1.0000, green: 0.6275, blue: 0.7647, opacity: 1.0000)
    /// Fastmail Text — Primary body-text color — a soft near-black with a slight cool tint that pairs with the deep-blue brand anchor.

    public static let fastmailText = Color(.sRGB, red: 0.1059, green: 0.1176, blue: 0.1255, opacity: 1.0000)
    /// Fastmail Text Alt — Alternate heading/text on lighter surfaces.
    public static let fastmailTextAlt = Color(.sRGB, red: 0.2000, green: 0.2431, blue: 0.2824, opacity: 1.0000)
    /// Fastmail Text Subtle — Subtle/secondary text on light surfaces.
    public static let fastmailTextSubtle = Color(.sRGB, red: 0.3569, green: 0.3922, blue: 0.4235, opacity: 1.0000)
    /// Fastmail Text Extra Subtle — Tertiary text and inactive labels.
    public static let fastmailTextExtraSubtle = Color(.sRGB, red: 0.4392, green: 0.4667, blue: 0.4941, opacity: 1.0000)
    /// Fastmail Border Light — Light border / divider on white surfaces.
    public static let fastmailBorderLight = Color(.sRGB, red: 0.9176, green: 0.9216, blue: 0.9255, opacity: 1.0000)
    /// Fastmail Border Medium — Mid-tone border on cards and inputs.
    public static let fastmailBorderMedium = Color(.sRGB, red: 0.8392, green: 0.8471, blue: 0.8549, opacity: 1.0000)
    /// Fastmail Background Alt — Alternate page-background tint (faint neutral surface).
    public static let fastmailBgAlt = Color(.sRGB, red: 0.9569, green: 0.9608, blue: 0.9608, opacity: 1.0000)
    /// Fastmail Background Focused — Selected / focused row tint.
    public static let fastmailBgFocused = Color(.sRGB, red: 0.9137, green: 0.9216, blue: 0.9333, opacity: 1.0000)
    /// Fastmail White — Base page background.
    public static let fastmailWhite = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
    /// Fastmail Success — Success / send-confirmed (ui-color-successgreen-100).
    public static let fastmailSuccess = Color(.sRGB, red: 0.0784, green: 0.4824, blue: 0.2000, opacity: 1.0000)
    /// Fastmail Error — Error / destructive (ui-color-criticalred-100).
    public static let fastmailError = Color(.sRGB, red: 0.7255, green: 0.0118, blue: 0.1216, opacity: 1.0000)
    /// Fastmail Warning — Warning / snooze (ui-color-snoozeorange-100).
    public static let fastmailWarning = Color(.sRGB, red: 0.7922, green: 0.2353, blue: 0.0314, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.fastmailWhite
    public static let surface = BrandSwatch.fastmailBgAlt
    public static let surfaceElevated = BrandSwatch.fastmailWhite
    public static let surfaceWarm = BrandSwatch.fastmailMellowYellow
    public static let textPrimary = BrandSwatch.fastmailText
    public static let textSecondary = BrandSwatch.fastmailTextSubtle
    public static let textTertiary = BrandSwatch.fastmailTextExtraSubtle
    public static let primary = BrandSwatch.fastmailBlue
    public static let primaryHover = BrandSwatch.fastmailBlueHover
    public static let accent = BrandSwatch.fastmailBlue
    public static let accentHover = BrandSwatch.fastmailBlueActive
    public static let warning = BrandSwatch.fastmailWarning
    public static let warningHover = BrandSwatch.fastmailWarning
    public static let error = BrandSwatch.fastmailError
    public static let success = BrandSwatch.fastmailSuccess
    public static let border = BrandSwatch.fastmailBorderLight
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.fastmailDeepBlue
    public static let surface = BrandSwatch.fastmailTextAlt
    public static let surfaceElevated = BrandSwatch.fastmailTextSubtle
    public static let textPrimary = BrandSwatch.fastmailWhite
    public static let textSecondary = BrandSwatch.fastmailBorderLight
    public static let textTertiary = BrandSwatch.fastmailBorderMedium
    public static let primary = BrandSwatch.fastmailLightblue
    public static let primaryHover = BrandSwatch.fastmailBlue
    public static let accent = BrandSwatch.fastmailLightblue
    public static let accentHover = BrandSwatch.fastmailBlue
    public static let warning = BrandSwatch.fastmailWarning
    public static let warningHover = BrandSwatch.fastmailWarning
    public static let error = BrandSwatch.fastmailError
    public static let success = BrandSwatch.fastmailSuccess
    public static let border = BrandSwatch.fastmailTextSubtle
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.fastmailDeepBlue
    public static let onIdentity = BrandSwatch.fastmailWhite
    public static let primary = BrandSwatch.fastmailBlue
    public static let primaryHover = BrandSwatch.fastmailBlueHover
    public static let accent = BrandSwatch.fastmailBlue
    public static let accentHover = BrandSwatch.fastmailBlueActive
    public static let mark = BrandSwatch.fastmailBlue
    public static let flagPink = BrandSwatch.fastmailPink
    public static let flagBlue = BrandSwatch.fastmailBlue
    public static let flagLightblue = BrandSwatch.fastmailLightblue
    public static let flagYellow = BrandSwatch.fastmailYellow
    public static let surfaceWarm = BrandSwatch.fastmailMellowYellow
    public static let background = BrandSwatch.fastmailWhite
    public static let surface = BrandSwatch.fastmailBgAlt
    public static let textPrimary = BrandSwatch.fastmailText
    public static let textSecondary = BrandSwatch.fastmailTextSubtle
    public static let error = BrandSwatch.fastmailError
    public static let success = BrandSwatch.fastmailSuccess
    public static let warning = BrandSwatch.fastmailWarning
}

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