local base = {
  base00 = "#101317",
  base01 = "#171C21",
  base02 = "#1c2026",
  base03 = "#20252b",
  base04 = "#3d464e",
  base05 = "#c5c5c6",
  base06 = "#cbcbcc",
  base07 = "#d4d4d5",
  base08 = "#37d99e",
  base09 = "#f0a988",
  base0A = "#e5d487",
  base0B = "#e87979",
  base0C = "#37d99e",
  base0D = "#5fb0fc",
  base0E = "#c397d8",
  base0F = "#e87979",
  white = "#d4d4d5",
  darker_black = "#0a0d11",
  black = "#101317", --  nvim bg
  black2 = "#171b20",
  one_bg = "#1c1f23",
  one_bg2 = "#24272b",
  one_bg3 = "#2e3135",
  grey = "#393c40",
  grey_fg = "#404347",
  grey_fg2 = "#45484c",
  light_grey = "#4b4e52",
  red = "#f87070",
  baby_pink = "#ff8e8e",
  pink = "#ffa7a7",
  line = "#292933", -- for lines like vertsplit
  green = "#37d99e",
  vibrant_green = "#79dcaa",
  blue = "#7ab0df",
  nord_blue = "#87bdec",
  yellow = "#ffe59e",
  sun = "#ffeda6",
  purple = "#c397d8",
  dark_purple = "#b68acb",
  teal = "#63b3ad",
  orange = "#f0a988",
  cyan = "#50cad2",
  statusline_bg = "#15191e",
  lightbg = "#24282d",
  lightbg2 = "#1d2126",
  pmenu_bg = "#3bdda2",
  folder_bg = "#5fb0fc",
}

local cp = {
  -- Legacy colors for compatibility
  blue = base.blue,
  cyan = base.teal,
  green = base.green,
  magenta = base.dark_purple,
  orange = base.orange,
  red = base.red,
  yellow = base.yellow,

  accent = base.base0C,
  bg = {
    base = base.base00,
    alt = base.darker_black,
    selected = base.base02,
  },
  border = base.blue,
  built_in = {
    ["function"] = base.base0C,
    type = base.base0A,
    variable = base.base0C,
    keyword = base.base0E,
    constant = base.base09,
  },
  diagnostic = {
    error = base.red,
    warn = base.yellow,
    info = base.green,
    hint = base.purple,
  },
  diff = {
    add = base.green,
    remove = base.red,
    text = base.blue,
    change = base.yellow,
  },
  dimmed = {
    inactive = base.base03,
    subtle = base.grey_fg,
  },
  directory = base.folder_bg,
  fg = base.white,
  heading = {
    h1 = base.blue,
    h2 = base.blue,
  },
  inc_search = {
    fg = base.base01,
    bg = base.base09,
  },
  match = base.base06,
  pum = {
    fg = base.base06,
    bg = base.one_bg,
    sbar = base.one_bg2,
    thumb = base.nord_blue,
    sel = {
      bg = base.pmenu_bg,
      fg = base.base05,
    },
  },
  search_result = {
    fg = base.base01,
    bg = base.base0A,
    telescope = base.base0A,
  },
  syntax = {
    statement = base.base08,
    ["function"] = base.base0D,
    variable = base.base05,
    include = base.base0D,
    keyword = base.base0E,
    struct = base.base0E,
    string = base.base0B,
    identifier = base.base08,
    field = base.base0A,
    parameter = base.base08,
    property = base.base08,
    punctuation = base.base0F,
    constructor = base.base0C,
    operator = base.base05,
    preproc = base.base0A,
    constant = base.base09,
    todo = {
      fg = base.base0A,
      bg = base.base01,
    },
    number = base.base09,
    comment = base.base04,
    conditional = base.base0E,
  },
  uri = base.base08,
}

return cp
