import SwiftUI

/// Design constants for the App Clip.
/// Mirrors main app design but with minimal footprint for size constraints.
enum ClipDesign {

    // MARK: - Spacing

    enum Spacing {
        static let xSmall: CGFloat = 4
        static let small: CGFloat = 8
        static let medium: CGFloat = 12
        static let large: CGFloat = 16
        static let xLarge: CGFloat = 24
        static let xxLarge: CGFloat = 32
    }

    // MARK: - Corner Radius

    enum CornerRadius {
        static let small: CGFloat = 8
        static let medium: CGFloat = 12
        static let large: CGFloat = 16
        static let xLarge: CGFloat = 24
    }

    // MARK: - Sizes

    enum Size {
        static let avatar: CGFloat = 80
        static let avatarLarge: CGFloat = 120
        static let buttonHeight: CGFloat = 50
    }

    // MARK: - Opacity

    enum Opacity {
        static let subtle: Double = 0.3
        static let medium: Double = 0.5
        static let strong: Double = 0.7
    }
}

// MARK: - Colors

extension Color {

    enum Clip {
        static let background = Color(red: 0.12, green: 0.13, blue: 0.15)
        static let cardBackground = Color(red: 0.18, green: 0.19, blue: 0.22)
        static let text = Color(red: 0.96, green: 0.96, blue: 0.97)
        static let secondaryText = Color(red: 0.70, green: 0.72, blue: 0.75)
        static let accent = Color(red: 0.35, green: 0.65, blue: 0.95)
        static let success = Color(red: 0.30, green: 0.75, blue: 0.45)
        static let error = Color(red: 0.95, green: 0.35, blue: 0.35)
    }
}
