package gui

import clay "clay:."

// --- Color Palette ---
// --- Clay Color Palette (modernized dark theme) ---
// Named with CLAY_ prefix to avoid collision with existing theme.odin

CLAY_BG_BASE       :: clay.Color{13, 13, 18, 255}
CLAY_BG_SIDEBAR    :: clay.Color{18, 18, 26, 255}
CLAY_BG_TOPBAR     :: clay.Color{22, 22, 32, 255}
CLAY_BG_CARD       :: clay.Color{28, 28, 40, 255}
CLAY_BG_CARD_ALT   :: clay.Color{24, 24, 36, 255}
CLAY_BG_STRIP      :: clay.Color{32, 32, 46, 255}
CLAY_BG_OVERLAY    :: clay.Color{0, 0, 0, 180}
CLAY_BG_INPUT      :: clay.Color{20, 20, 30, 255}

CLAY_BORDER_CARD    :: clay.Color{50, 50, 70, 255}
CLAY_BORDER_SUBTLE  :: clay.Color{40, 40, 58, 255}
CLAY_BORDER_DIVIDER :: clay.Color{36, 36, 52, 255}

CLAY_ACCENT        :: clay.Color{99, 102, 241, 255}
CLAY_ACCENT_HOVER  :: clay.Color{124, 127, 255, 255}
CLAY_ACCENT_MUTED   :: clay.Color{79, 70, 229, 200}
CLAY_ACCENT_SURFACE:: clay.Color{67, 56, 202, 40}
CLAY_ACCENT_GLOW   :: clay.Color{99, 102, 241, 60}

CLAY_TEXT_PRIMARY   :: clay.Color{245, 245, 250, 255}
CLAY_TEXT_SECONDARY :: clay.Color{190, 190, 210, 255}
CLAY_TEXT_TERTIARY :: clay.Color{145, 145, 170, 255}
CLAY_TEXT_DISABLED :: clay.Color{100, 100, 120, 255}
CLAY_TEXT_BRIGHT   := clay.Color{255, 255, 255, 255}

CLAY_SUCCESS      :: clay.Color{34, 197, 94, 255}
CLAY_SUCCESS_DIM  :: clay.Color{34, 197, 94, 100}
CLAY_WARNING      :: clay.Color{234, 179, 8, 255}
CLAY_WARNING_DIM  :: clay.Color{234, 179, 8, 100}
CLAY_ERROR        :: clay.Color{239, 68, 68, 255}
CLAY_ERROR_DIM    :: clay.Color{239, 68, 68, 100}

CLAY_BTN_DEFAULT       :: clay.Color{42, 42, 58, 255}
CLAY_BTN_DEFAULT_HOVER :: clay.Color{55, 55, 72, 255}
CLAY_BTN_SOFT          :: clay.Color{55, 50, 120, 255}
CLAY_BTN_SOFT_HOVER    :: clay.Color{70, 65, 140, 255}
CLAY_BTN_DANGER        :: clay.Color{185, 28, 28, 255}
CLAY_BTN_DANGER_HOVER  :: clay.Color{210, 40, 40, 255}
CLAY_BTN_DISABLED      :: clay.Color{30, 30, 42, 255}

CLAY_NAV_ACTIVE    :: clay.Color{99, 102, 241, 255}
CLAY_NAV_ACTIVE_BG :: clay.Color{67, 56, 202, 25}
CLAY_NAV_HOVER_BG  :: clay.Color{40, 40, 58, 255}

CLAY_INPUT_BORDER :: clay.Color{55, 55, 75, 255}
CLAY_INPUT_FOCUS  :: clay.Color{99, 102, 241, 255}

CLAY_PROGRESS_TRACK :: clay.Color{30, 30, 42, 255}
CLAY_PROGRESS_FILL  := clay.Color{99, 102, 241, 255}

// --- Spacing (4px grid) ---
// --- Spacing (4px grid) ---
CLAY_SPACE_4  :: u16(4)
CLAY_SPACE_8  :: u16(8)
CLAY_SPACE_12 :: u16(12)
CLAY_SPACE_16 :: u16(16)
CLAY_SPACE_20 :: u16(20)
CLAY_SPACE_24 :: u16(24)
CLAY_SPACE_32 :: u16(32)
CLAY_SPACE_40 :: u16(40)
CLAY_SPACE_48 :: u16(48)

// --- Font Sizes ---
// --- Font Sizes ---
CLAY_FONT_SIZE_SM :: u16(15)
CLAY_FONT_SIZE_MD :: u16(17)
CLAY_FONT_SIZE_LG :: u16(21)
CLAY_FONT_SIZE_XL :: u16(26)
CLAY_FONT_SIZE_2XL:: u16(32)

// --- Corner Radius ---
// --- Corner Radius (px for Clay) ---
CLAY_RADIUS_SM :: f32(4)
CLAY_RADIUS_MD :: f32(8)
CLAY_RADIUS_LG :: f32(12)
CLAY_RADIUS_XL :: f32(16)

// --- Fractional radius (for DrawRectangleRounded compat) ---
CLAY_RADIUS_FRAC_BTN  :: f32(0.32)
CLAY_RADIUS_FRAC_PILL :: f32(0.50)
CLAY_RADIUS_FRAC_CARD :: f32(0.14)
