//
// Oxford (oxford@1.0.0)
// Palette: oxford@1.0.0
// Fonts:   heading=inter@1.0.0, body=inter@1.0.0, serif=lora@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 {
    /// Oxford Blue — The institutional Oxford Blue (Pantone 282) — primary brand colour.
    public static let oxfordBlue = Color(.sRGB, red: 0.0000, green: 0.1294, blue: 0.2784, opacity: 1.0000)
    /// White — Primary canvas in light mode.
    public static let white = Color(.sRGB, red: 1.0000, green: 1.0000, blue: 1.0000, opacity: 1.0000)
    /// Oxford Off White — Warm off-white — soft canvas tint.
    public static let oxfordOffWhite = Color(.sRGB, red: 0.9490, green: 0.9412, blue: 0.9412, opacity: 1.0000)
    /// Oxford Ash Grey — Mid-deep neutral — body text on light surfaces.
    public static let oxfordAshGrey = Color(.sRGB, red: 0.3804, green: 0.3804, blue: 0.3725, opacity: 1.0000)
    /// Oxford Umber — Warm mid-neutral — secondary text.
    public static let oxfordUmber = Color(.sRGB, red: 0.5373, green: 0.5098, blue: 0.4784, opacity: 1.0000)
    /// Oxford Stone Grey — Soft warm grey — border / divider.
    public static let oxfordStoneGrey = Color(.sRGB, red: 0.8510, green: 0.8471, blue: 0.8392, opacity: 1.0000)
    /// Oxford Shell Grey — Lightest warm neutral — surface tint.
    public static let oxfordShellGrey = Color(.sRGB, red: 0.9451, green: 0.9333, blue: 0.9137, opacity: 1.0000)
    /// Oxford Charcoal — Near-black — primary text on light canvas.
    public static let oxfordCharcoal = Color(.sRGB, red: 0.1294, green: 0.1137, blue: 0.1098, opacity: 1.0000)
    /// Oxford Cerulean Blue — Bright sky-cerulean — digital accent.
    public static let oxfordCeruleanBlue = Color(.sRGB, red: 0.2863, green: 0.7137, blue: 1.0000, opacity: 1.0000)
    /// Oxford Lemon Yellow — Pale lemon — editorial highlight / warning.
    public static let oxfordLemonYellow = Color(.sRGB, red: 0.9686, green: 0.9373, blue: 0.4000, opacity: 1.0000)
    /// Oxford Mauve — Muted mauve — editorial accent.
    public static let oxfordMauve = Color(.sRGB, red: 0.4667, green: 0.4078, blue: 0.5216, opacity: 1.0000)
    /// Oxford Peach — Warm peach — soft accent.
    public static let oxfordPeach = Color(.sRGB, red: 0.8784, green: 0.5529, blue: 0.4745, opacity: 1.0000)
    /// Oxford Potter's Pink — Heritage pink — editorial accent.
    public static let oxfordPottersPink = Color(.sRGB, red: 0.9294, green: 0.5765, blue: 0.5647, opacity: 1.0000)
    /// Oxford Dusk — Muted dusk — soft warm accent.
    public static let oxfordDusk = Color(.sRGB, red: 0.7686, green: 0.6353, blue: 0.6196, opacity: 1.0000)
    /// Oxford Lilac — Pale lilac — illustration tint.
    public static let oxfordLilac = Color(.sRGB, red: 0.8196, green: 0.7412, blue: 0.8353, opacity: 1.0000)
    /// Oxford Sienna — Deep sienna — heritage accent.
    public static let oxfordSienna = Color(.sRGB, red: 0.6000, green: 0.2745, blue: 0.2118, opacity: 1.0000)
}

/// Semantic color roles for light mode.
public enum BrandLight {
    public static let background = BrandSwatch.white
    public static let surface = BrandSwatch.oxfordShellGrey
    public static let surfaceElevated = BrandSwatch.white
    public static let textPrimary = BrandSwatch.oxfordCharcoal
    public static let textSecondary = BrandSwatch.oxfordAshGrey
    public static let textTertiary = BrandSwatch.oxfordUmber
    public static let primary = BrandSwatch.oxfordBlue
    public static let primaryHover = BrandSwatch.oxfordCharcoal
    public static let accent = BrandSwatch.oxfordCeruleanBlue
    public static let accentHover = BrandSwatch.oxfordBlue
    public static let warning = BrandSwatch.oxfordLemonYellow
    public static let warningHover = BrandSwatch.oxfordPeach
    public static let error = BrandSwatch.oxfordSienna
    public static let success = BrandSwatch.oxfordBlue
    public static let border = BrandSwatch.oxfordStoneGrey
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.oxfordCharcoal
    public static let surface = BrandSwatch.oxfordAshGrey
    public static let surfaceElevated = BrandSwatch.oxfordUmber
    public static let textPrimary = BrandSwatch.white
    public static let textSecondary = BrandSwatch.oxfordStoneGrey
    public static let textTertiary = BrandSwatch.oxfordShellGrey
    public static let primary = BrandSwatch.oxfordCeruleanBlue
    public static let primaryHover = BrandSwatch.oxfordBlue
    public static let accent = BrandSwatch.oxfordCeruleanBlue
    public static let accentHover = BrandSwatch.oxfordBlue
    public static let warning = BrandSwatch.oxfordLemonYellow
    public static let warningHover = BrandSwatch.oxfordPeach
    public static let error = BrandSwatch.oxfordSienna
    public static let success = BrandSwatch.oxfordCeruleanBlue
    public static let border = BrandSwatch.oxfordAshGrey
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.white
    public static let onIdentity = BrandSwatch.oxfordCharcoal
    public static let primary = BrandSwatch.oxfordBlue
    public static let primaryHover = BrandSwatch.oxfordCharcoal
    public static let accent = BrandSwatch.oxfordCeruleanBlue
    public static let accentHover = BrandSwatch.oxfordBlue
    public static let mark = BrandSwatch.oxfordBlue
    public static let success = BrandSwatch.oxfordBlue
    public static let warning = BrandSwatch.oxfordLemonYellow
    public static let error = BrandSwatch.oxfordSienna
    public static let textPrimaryLight = BrandSwatch.oxfordCharcoal
    public static let textPrimaryDark = BrandSwatch.white
    public static let backgroundLight = BrandSwatch.white
    public static let backgroundDark = BrandSwatch.oxfordCharcoal
    public static let surfaceLight = BrandSwatch.oxfordShellGrey
    public static let surfaceDark = BrandSwatch.oxfordAshGrey
    public static let textSecondaryLight = BrandSwatch.oxfordAshGrey
    public static let textTertiaryLight = BrandSwatch.oxfordUmber
    public static let borderLight = BrandSwatch.oxfordStoneGrey
}

/// 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"
    /// Lora (lora@1.0.0)
    public static let serif = "Lora"
    /// JetBrainsMono Nerd Font (jetbrainsmono-nerdfont@1.0.0)
    public static let mono = "JetBrainsMono Nerd Font"
}
