//
// monday.com (monday-com@1.0.0)
// Palette: monday-com@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 {
    /// Monday Red — Signature hot-coral red. Primary brand color — used on the wordmark, the mark, primary CTAs, and key interactive surfaces.

    public static let mondayRed = Color(.sRGB, red: 1.0000, green: 0.2392, blue: 0.3412, opacity: 1.0000)
    /// Monday White — Canvas on light surfaces; reversed wordmark fill.
    public static let mondayWhite = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
    /// Monday Black — Wordmark on light backgrounds; near-black body text.
    public static let mondayBlack = Color(.sRGB, red: 0.0000, green: 0.0000, blue: 0.0000, opacity: 1.0000)
    /// Monday Canvas Dark — Authored dark-mode canvas — deep neutral aligned with monday.com's product dark theme.
    public static let mondayCanvasDark = Color(.sRGB, red: 0.1098, green: 0.1216, blue: 0.2314, opacity: 1.0000)
    /// Monday Surface Light — Authored panel surface for light mode.
    public static let mondaySurfaceLight = Color(.sRGB, red: 0.9647, green: 0.9686, blue: 0.9843, opacity: 1.0000)
    /// Monday Surface Dark — Authored elevated surface on dark mode.
    public static let mondaySurfaceDark = Color(.sRGB, red: 0.1608, green: 0.1843, blue: 0.2980, opacity: 1.0000)
    /// Monday Text Secondary — Authored secondary text — neutral mid-gray on light canvas.
    public static let mondayTextSecondary = Color(.sRGB, red: 0.4039, green: 0.4078, blue: 0.4745, opacity: 1.0000)
    /// Monday Text Tertiary — Authored tertiary / muted text.
    public static let mondayTextTertiary = Color(.sRGB, red: 0.5922, green: 0.6000, blue: 0.6549, opacity: 1.0000)
    /// Monday Red Hover — Authored softer Monday Red for hover / active states.
    public static let mondayRedHover = Color(.sRGB, red: 1.0000, green: 0.3686, blue: 0.4510, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.mondayWhite
    public static let surface = BrandSwatch.mondaySurfaceLight
    public static let surfaceElevated = BrandSwatch.mondayWhite
    public static let textPrimary = BrandSwatch.mondayBlack
    public static let textSecondary = BrandSwatch.mondayTextSecondary
    public static let textTertiary = BrandSwatch.mondayTextTertiary
    public static let primary = BrandSwatch.mondayRed
    public static let primaryHover = BrandSwatch.mondayRedHover
    public static let accent = BrandSwatch.mondayRed
    public static let accentHover = BrandSwatch.mondayRedHover
    public static let warning = BrandSwatch.mondayRed
    public static let warningHover = BrandSwatch.mondayRedHover
    public static let error = BrandSwatch.mondayRed
    public static let success = BrandSwatch.mondayRed
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.mondayCanvasDark
    public static let surface = BrandSwatch.mondaySurfaceDark
    public static let surfaceElevated = BrandSwatch.mondaySurfaceDark
    public static let textPrimary = BrandSwatch.mondayWhite
    public static let textSecondary = BrandSwatch.mondayTextTertiary
    public static let textTertiary = BrandSwatch.mondayTextSecondary
    public static let primary = BrandSwatch.mondayRed
    public static let primaryHover = BrandSwatch.mondayRedHover
    public static let accent = BrandSwatch.mondayRed
    public static let accentHover = BrandSwatch.mondayRedHover
    public static let warning = BrandSwatch.mondayRed
    public static let warningHover = BrandSwatch.mondayRedHover
    public static let error = BrandSwatch.mondayRed
    public static let success = BrandSwatch.mondayRed
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.mondayRed
    public static let onIdentity = BrandSwatch.mondayWhite
    public static let primary = BrandSwatch.mondayRed
    public static let primaryHover = BrandSwatch.mondayRedHover
    public static let accent = BrandSwatch.mondayRed
    public static let accentHover = BrandSwatch.mondayRedHover
    public static let success = BrandSwatch.mondayRed
    public static let warning = BrandSwatch.mondayRed
    public static let error = BrandSwatch.mondayRed
    public static let backgroundLight = BrandSwatch.mondayWhite
    public static let backgroundDark = BrandSwatch.mondayCanvasDark
    public static let surfaceLight = BrandSwatch.mondaySurfaceLight
    public static let surfaceDark = BrandSwatch.mondaySurfaceDark
    public static let textPrimaryLight = BrandSwatch.mondayBlack
    public static let textPrimaryDark = BrandSwatch.mondayWhite
}

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