//
// LinkedIn (linkedin@1.0.0)
// Palette: linkedin@1.0.0
// Fonts:   heading=source-sans-3@1.0.0, body=source-sans-3@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 {
    /// LinkedIn Blue — Signature mid-blue — the primary brand color introduced with the 2019 brand refresh. The in-bug wordmark, primary buttons, and the link color on linkedin.com all read in this blue.

    public static let linkedinBlue = Color(.sRGB, red: 0.0392, green: 0.4000, blue: 0.7608, opacity: 1.0000)
    /// LinkedIn Blue Dark — Darker blue for hover, pressed, and focus states on LinkedIn Blue — and the historical pre-2019 wordmark color region.

    public static let linkedinBlueDark = Color(.sRGB, red: 0.0000, green: 0.2549, blue: 0.5098, opacity: 1.0000)
    /// LinkedIn Blue Light — Lighter blue used for link affordances on dark surfaces and for hover hints on light surfaces.

    public static let linkedinBlueLight = Color(.sRGB, red: 0.2157, green: 0.5608, blue: 0.9137, opacity: 1.0000)
    /// LinkedIn White — Canvas on light surfaces — the canonical LinkedIn product background.
    public static let linkedinWhite = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
    /// LinkedIn Near-White — Warm off-white background used on the LinkedIn feed and editorial pages.
    public static let linkedinNearWhite = Color(.sRGB, red: 0.9569, green: 0.9490, blue: 0.9333, opacity: 1.0000)
    /// LinkedIn Black — Body and headline color — published as black at 90% opacity for use on white surfaces, balancing legibility with warmth.

    public static let linkedinBlack = Color(.sRGB, red: 0.0000, green: 0.0000, blue: 0.0000, opacity: 0.9020)
    /// LinkedIn Black Solid — Solid black — used in marketing and on the in-bug wordmark variants.
    public static let linkedinBlackSolid = Color(.sRGB, red: 0.0000, green: 0.0000, blue: 0.0000, opacity: 1.0000)
    /// LinkedIn Text Secondary — Authored secondary text — black at 60% opacity for muted copy on white.
    public static let linkedinTextSecondary = Color(.sRGB, red: 0.0000, green: 0.0000, blue: 0.0000, opacity: 0.6000)
    /// LinkedIn Divider — Authored hairline divider tone on light canvas.
    public static let linkedinDivider = Color(.sRGB, red: 0.8784, green: 0.8745, blue: 0.8627, opacity: 1.0000)
    /// LinkedIn Warm Orange — Warm orange — used sparingly on LinkedIn marketing surfaces and illustration to signal warmth and humanity.

    public static let linkedinWarmOrange = Color(.sRGB, red: 0.9020, green: 0.5216, blue: 0.1373, opacity: 1.0000)
    /// LinkedIn Green — Deep green — used in LinkedIn's product UI for "open to work" and positive status affordances.

    public static let linkedinGreen = Color(.sRGB, red: 0.0196, green: 0.4627, blue: 0.2588, opacity: 1.0000)
    /// LinkedIn Canvas Dark — Authored dark-mode canvas for LinkedIn's product dark theme.
    public static let linkedinCanvasDark = Color(.sRGB, red: 0.1059, green: 0.1216, blue: 0.1373, opacity: 1.0000)
    /// LinkedIn Surface Dark — Authored elevated surface on dark mode.
    public static let linkedinSurfaceDark = Color(.sRGB, red: 0.1725, green: 0.1882, blue: 0.2000, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.linkedinWhite
    public static let surface = BrandSwatch.linkedinWhite
    public static let surfaceElevated = BrandSwatch.linkedinNearWhite
    public static let textPrimary = BrandSwatch.linkedinBlack
    public static let textSecondary = BrandSwatch.linkedinTextSecondary
    public static let textTertiary = BrandSwatch.linkedinTextSecondary
    public static let primary = BrandSwatch.linkedinBlue
    public static let primaryHover = BrandSwatch.linkedinBlueDark
    public static let accent = BrandSwatch.linkedinBlue
    public static let accentHover = BrandSwatch.linkedinBlueDark
    public static let warning = BrandSwatch.linkedinWarmOrange
    public static let warningHover = BrandSwatch.linkedinWarmOrange
    public static let error = BrandSwatch.linkedinWarmOrange
    public static let success = BrandSwatch.linkedinGreen
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.linkedinCanvasDark
    public static let surface = BrandSwatch.linkedinSurfaceDark
    public static let surfaceElevated = BrandSwatch.linkedinSurfaceDark
    public static let textPrimary = BrandSwatch.linkedinWhite
    public static let textSecondary = BrandSwatch.linkedinDivider
    public static let textTertiary = BrandSwatch.linkedinDivider
    public static let primary = BrandSwatch.linkedinBlueLight
    public static let primaryHover = BrandSwatch.linkedinBlue
    public static let accent = BrandSwatch.linkedinBlueLight
    public static let accentHover = BrandSwatch.linkedinBlue
    public static let warning = BrandSwatch.linkedinWarmOrange
    public static let warningHover = BrandSwatch.linkedinWarmOrange
    public static let error = BrandSwatch.linkedinWarmOrange
    public static let success = BrandSwatch.linkedinGreen
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.linkedinBlue
    public static let onIdentity = BrandSwatch.linkedinWhite
    public static let primary = BrandSwatch.linkedinBlue
    public static let primaryHover = BrandSwatch.linkedinBlueDark
    public static let accent = BrandSwatch.linkedinBlue
    public static let accentHover = BrandSwatch.linkedinBlueDark
    public static let success = BrandSwatch.linkedinGreen
    public static let warning = BrandSwatch.linkedinWarmOrange
    public static let error = BrandSwatch.linkedinWarmOrange
    public static let backgroundLight = BrandSwatch.linkedinWhite
    public static let backgroundDark = BrandSwatch.linkedinCanvasDark
    public static let surfaceLight = BrandSwatch.linkedinNearWhite
    public static let surfaceDark = BrandSwatch.linkedinSurfaceDark
    public static let textPrimaryLight = BrandSwatch.linkedinBlack
    public static let textPrimaryDark = BrandSwatch.linkedinWhite
    public static let textSecondaryLight = BrandSwatch.linkedinTextSecondary
    public static let divider = BrandSwatch.linkedinDivider
}

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