// Auto-generated from bytelyst.tokens.json — do not edit manually.
// Product: localmemgpt
// Regenerate: cd packages/design-tokens && tsx scripts/generate.ts

import SwiftUI

enum LocalMemGPTColors {
    // MARK: - Semantic (Dark Theme)
    static let bgCanvas = Color(hex: 0x06070A)
    static let bgElevated = Color(hex: 0x0E1118)
    static let surfaceCard = Color(hex: 0x121725)
    static let surfaceMuted = Color(hex: 0x1A2335)
    static let textPrimary = Color(hex: 0xEFF4FF)
    static let textSecondary = Color(hex: 0xA5B1C7)
    static let textTertiary = Color(hex: 0x6C7C98)
    static let accentPrimary = Color(hex: 0x5A8CFF)
    static let accentSecondary = Color(hex: 0x2EE6D6)
    static let success = Color(hex: 0x34D399)
    static let warning = Color(hex: 0xF59E0B)
    static let danger = Color(hex: 0xFF6E6E)

    // MARK: - Localmemgpt Product Colors
    static let bgPrimary = Color(hex: 0x0A0A0A)
    static let bgSecondary = Color(hex: 0x141414)
    static let bgTertiary = Color(hex: 0x1E1E1E)
    static let bgHover = Color(hex: 0x252525)
    static let bgInput = Color(hex: 0x1A1A1A)
    static let border = Color(hex: 0x2A2A2A)
    static let textPrimary = Color(hex: 0xF0F0F0)
    static let textSecondary = Color(hex: 0x999999)
    static let textMuted = Color(hex: 0x666666)
    static let accent = Color(hex: 0x6366F1)
    static let accentHover = Color(hex: 0x818CF8)
    static let success = Color(hex: 0x22C55E)
    static let warning = Color(hex: 0xF59E0B)
    static let error = Color(hex: 0xEF4444)

}

enum LocalMemGPTColorsLight {
    // MARK: - Semantic (Light Theme)
    static let bgCanvas = Color(hex: 0xF6F8FC)
    static let bgElevated = Color(hex: 0xEEF2FA)
    static let surfaceCard = Color(hex: 0xFFFFFF)
    static let surfaceMuted = Color(hex: 0xF3F5FA)
    static let textPrimary = Color(hex: 0x0E1320)
    static let textSecondary = Color(hex: 0x55637A)
    static let textTertiary = Color(hex: 0x6C7C98)
    static let accentPrimary = Color(hex: 0x5A8CFF)
    static let accentSecondary = Color(hex: 0x2EE6D6)
    static let success = Color(hex: 0x13956A)
    static let warning = Color(hex: 0xB87504)
    static let danger = Color(hex: 0xD24242)
}

enum LocalMemGPTSpacing {
    static let x0:  CGFloat = 0
    static let x1:  CGFloat = 4
    static let x2:  CGFloat = 8
    static let x3:  CGFloat = 12
    static let x4:  CGFloat = 16
    static let x5:  CGFloat = 20
    static let x6:  CGFloat = 24
    static let x7:  CGFloat = 28
    static let x8:  CGFloat = 32
    static let x10: CGFloat = 40
    static let x12: CGFloat = 48
    static let x16: CGFloat = 64
}

enum LocalMemGPTRadius {
    static let xs: CGFloat = 8
    static let sm: CGFloat = 12
    static let md: CGFloat = 16
    static let lg: CGFloat = 20
    static let xl: CGFloat = 24
    static let pill: CGFloat = 999
}

enum LocalMemGPTMotion {
    static let instant: Double = 0.07
    static let fast: Double = 0.14
    static let base: Double = 0.22
    static let slow: Double = 0.32
}

// MARK: - Color Hex Extension (import if not already defined)

extension Color {
    init(hex: UInt, alpha: Double = 1.0) {
        self.init(
            .sRGB,
            red:   Double((hex >> 16) & 0xFF) / 255.0,
            green: Double((hex >> 8)  & 0xFF) / 255.0,
            blue:  Double(hex & 0xFF) / 255.0,
            opacity: alpha
        )
    }
}
