//
// Bandcamp (bandcamp@1.0.0)
// Palette: bandcamp@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 {
    /// Bandcamp Aqua — The signature Bandcamp aqua / cadet-blue — wordmark, primary CTA, player accent.
    public static let bandcampAqua = Color(.sRGB, red: 0.3843, green: 0.6039, blue: 0.6627, opacity: 1.0000)
    /// Bandcamp Aqua Deep — Pressed / active state for the primary action; deeper teal step from the brand aqua.
    public static let bandcampAquaDeep = Color(.sRGB, red: 0.2902, green: 0.4941, blue: 0.5490, opacity: 1.0000)
    /// Bandcamp Aqua Light — Hover / soft-fill variant of the brand aqua for tinted surfaces.
    public static let bandcampAquaLight = Color(.sRGB, red: 0.6431, green: 0.7725, blue: 0.8078, opacity: 1.0000)
    /// Bandcamp Ink — Primary text on the light canvas; deep near-black for body and the wordmark on white.
    public static let bandcampInk = Color(.sRGB, red: 0.1255, green: 0.1255, blue: 0.1255, opacity: 1.0000)
    /// Bandcamp Charcoal — Secondary text and label color on the light canvas.
    public static let bandcampCharcoal = Color(.sRGB, red: 0.2667, green: 0.2667, blue: 0.2667, opacity: 1.0000)
    /// Bandcamp Gray — Tertiary text, metadata, and the unplayed waveform region.
    public static let bandcampGray = Color(.sRGB, red: 0.5333, green: 0.5333, blue: 0.5333, opacity: 1.0000)
    /// Bandcamp Gray Light — Divider lines and quiet borders on the light canvas.
    public static let bandcampGrayLight = Color(.sRGB, red: 0.8000, green: 0.8000, blue: 0.8000, opacity: 1.0000)
    /// Bandcamp Surface — Subtle elevated surface — row hover, sidebar, footer.
    public static let bandcampSurface = Color(.sRGB, red: 0.9608, green: 0.9608, blue: 0.9608, opacity: 1.0000)
    /// Bandcamp White — Canonical light canvas — the player chrome and marketing default.
    public static let bandcampWhite = 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.bandcampWhite
    public static let surface = BrandSwatch.bandcampSurface
    public static let surfaceElevated = BrandSwatch.bandcampWhite
    public static let textPrimary = BrandSwatch.bandcampInk
    public static let textSecondary = BrandSwatch.bandcampCharcoal
    public static let textTertiary = BrandSwatch.bandcampGray
    public static let primary = BrandSwatch.bandcampAqua
    public static let primaryHover = BrandSwatch.bandcampAquaDeep
    public static let accent = BrandSwatch.bandcampAqua
    public static let accentHover = BrandSwatch.bandcampAquaDeep
    public static let warning = BrandSwatch.bandcampAqua
    public static let warningHover = BrandSwatch.bandcampAquaDeep
    public static let error = BrandSwatch.bandcampInk
    public static let success = BrandSwatch.bandcampAqua
    public static let border = BrandSwatch.bandcampGrayLight
}

/// Semantic color roles for dark mode.
public enum BrandDark {
    public static let background = BrandSwatch.bandcampInk
    public static let surface = BrandSwatch.bandcampCharcoal
    public static let surfaceElevated = BrandSwatch.bandcampGray
    public static let textPrimary = BrandSwatch.bandcampWhite
    public static let textSecondary = BrandSwatch.bandcampGrayLight
    public static let textTertiary = BrandSwatch.bandcampGray
    public static let primary = BrandSwatch.bandcampAquaLight
    public static let primaryHover = BrandSwatch.bandcampAqua
    public static let accent = BrandSwatch.bandcampAquaLight
    public static let accentHover = BrandSwatch.bandcampAqua
    public static let warning = BrandSwatch.bandcampAquaLight
    public static let warningHover = BrandSwatch.bandcampAqua
    public static let error = BrandSwatch.bandcampAquaLight
    public static let success = BrandSwatch.bandcampAquaLight
    public static let border = BrandSwatch.bandcampCharcoal
}

/// Brand-level color role overrides.
public enum BrandColor {
    public static let identity = BrandSwatch.bandcampWhite
    public static let onIdentity = BrandSwatch.bandcampAqua
    public static let background = BrandSwatch.bandcampWhite
    public static let surface = BrandSwatch.bandcampSurface
    public static let surfaceElevated = BrandSwatch.bandcampWhite
    public static let textPrimary = BrandSwatch.bandcampInk
    public static let textSecondary = BrandSwatch.bandcampCharcoal
    public static let textTertiary = BrandSwatch.bandcampGray
    public static let primary = BrandSwatch.bandcampAqua
    public static let primaryHover = BrandSwatch.bandcampAquaDeep
    public static let accent = BrandSwatch.bandcampAqua
    public static let accentHover = BrandSwatch.bandcampAquaDeep
    public static let mark = BrandSwatch.bandcampAqua
    public static let border = BrandSwatch.bandcampGrayLight
}

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