package dev.kaizen.app.ui.theme.themes

import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.colorspace.ColorSpaces

private fun p3(r: Float, g: Float, b: Float): Color =
    Color(red = r, green = g, blue = b, colorSpace = ColorSpaces.DisplayP3)

// Derived from kaizen/app/themes/aurora.css
// Light: purple primary, blobs = purple/gold/green/teal
// Dark:  GOLD primary (swaps!), blobs = deep purple/gold/green/teal
val AuroraTheme = KaizenThemeSpec(
    id = KaizenThemeId.AURORA,
    label = "Aurora",
    light = KaizenAccentScheme(
        primary     = p3(0.724f, 0.328f, 0.812f),  // oklch(0.62 0.20 320) purple
        primaryDeep = p3(0.580f, 0.200f, 0.700f),  // oklch(0.50 0.22 320) deeper purple
        onPrimary   = p3(1.000f, 0.979f, 1.000f),  // oklch(0.99 0.01 320)
        ring        = p3(0.724f, 0.328f, 0.812f),
        blob1       = p3(0.855f, 0.540f, 0.926f),  // oklch(0.75 0.16 320) purple
        blob2       = p3(0.931f, 0.738f, 0.291f),  // oklch(0.82 0.14 85)  gold
        blob3       = p3(0.433f, 0.822f, 0.455f),  // oklch(0.78 0.16 145) green
        blob4       = p3(0.227f, 0.808f, 0.837f),  // oklch(0.78 0.12 200) teal
    ),
    dark = KaizenAccentScheme(
        primary     = p3(0.890f, 0.684f, 0.156f),  // oklch(0.78 0.15 85)  GOLD (swapped!)
        primaryDeep = p3(0.724f, 0.328f, 0.812f),
        onPrimary   = p3(0.034f, 0.020f, 0.003f),  // oklch(0.12 0.02 85)
        ring        = p3(0.890f, 0.684f, 0.156f),
        blob1       = p3(0.495f, 0.141f, 0.569f),  // oklch(0.45 0.18 320) deep purple
        blob2       = p3(0.600f, 0.405f, 0.000f),  // oklch(0.55 0.15 85)  deep gold
        blob3       = p3(0.000f, 0.459f, 0.000f),  // oklch(0.48 0.18 145) deep green
        blob4       = p3(0.000f, 0.410f, 0.445f),  // oklch(0.45 0.13 200) deep teal
    ),
)
