# Syntax highlighting
# -------------------
"type" = "yellow"
"type.enum.variant" = "peach"

"constructor" = "sapphire"

"constant" = "peach"
"constant.character" = "teal"
"constant.character.escape" = "pink"

"string" = "green"
"string.regexp" = "peach"
"string.special" = "pink"

"comment" = { fg = "overlay1", modifiers = ["italic"] }

"variable" = "text"
"variable.parameter" = { fg = "maroon", modifiers = ["italic"] }
"variable.builtin" = "red"
"variable.other.member" = "teal"

"label" = "sapphire" # used for lifetimes

"punctuation" = "overlay2"

"keyword" = "mauve"
"keyword.control.conditional" = { fg = "mauve", modifiers = ["italic"] }

"operator" = "sky"

"function" = "blue"
"function.builtin" = "peach"
"function.macro" = "teal"

"tag" = "mauve"

"namespace" = { fg = "blue", modifiers = ["italic"] }

"special" = "blue" # fuzzy highlight

"markup.heading.marker" = { fg = "peach", modifiers = ["bold"] }
"markup.heading.1" = "lavender"
"markup.heading.2" = "mauve"
"markup.heading.3" = "green"
"markup.heading.4" = "yellow"
"markup.heading.5" = "pink"
"markup.heading.6" = "teal"
"markup.list" = "mauve"
"markup.bold" = { modifiers = ["bold"] }
"markup.italic" = { modifiers = ["italic"] }
"markup.link.url" = { fg = "peach", modifiers = ["underlined"] }
"markup.link.text" = "blue"
"markup.raw" = "flamingo"

"diff.plus" = "green"
"diff.minus" = "red"
"diff.delta" = "yellow"

# User Interface
# --------------
"ui.background" = { fg = "text", bg = "base" }

"ui.linenr" = { fg = "surface1" }
"ui.linenr.selected" = { fg = "lavender" }

"ui.statusline" = { fg = "overlay1", bg = "surface0" }
"ui.statusline.inactive" = { fg = "overlay1", bg = "mantle" }
"ui.statusline.normal" = { fg = "surface0", bg = "lavender", modifiers = ["bold"] }
"ui.statusline.insert" = { fg = "surface0", bg = "green", modifiers = ["bold"]  }
"ui.statusline.select" = { fg = "surface0", bg = "flamingo", modifiers = ["bold"]  }

"ui.bufferline" = { fg = "subtext1", bg = "mantle" }
"ui.bufferline.active" = { fg = "text", bg = "surface0", modifiers = ["bold"] }

"ui.popup" = { fg = "text", bg = "surface0" }
"ui.window" = { fg = "crust" }
"ui.help" = { fg = "overlay2", bg = "surface0" }

"ui.text" = "text" 
"ui.text.focus" = { fg = "text", bg = "surface0", modifiers = ["bold"] }

"ui.virtual" = "overlay0"
"ui.virtual.ruler" = { bg = "surface0" }
"ui.virtual.indent-guide" = "surface0"

"ui.selection" = { bg = "surface1" }

"ui.cursor" = { fg = "base", bg = "secondary_cursor" }
"ui.cursor.primary" = { fg = "base", bg = "rosewater" }
"ui.cursor.match" = { fg = "peach", modifiers = ["bold"] }

"ui.cursorline.primary" = { bg = "cursorline" }

"ui.highlight" = { bg = "surface1" }

"ui.menu" = { fg = "overlay2", bg = "surface0" }
"ui.menu.selected" = { fg = "text", bg = "surface1", modifiers = ["bold"] }

diagnostic = { modifiers = ["underlined"] }

error = "red"
warning = "yellow"
info = "sky"
hint = "teal"

[palette]
# catppuccin palette colors
rosewater = "#f2d5cf"
flamingo = "#eebebe"
pink = "#f4b8e4"
mauve = "#ca9ee6"
red = "#e78284"
maroon = "#ea999c"
peach = "#ef9f76"
yellow = "#e5c890"
green = "#a6d189"
teal = "#81c8be"
sky = "#99d1db"
sapphire = "#85c1dc"
blue = "#8caaee"
lavender = "#babbf1"

text = "#c6d0f5"
subtext1 = "#b5bfe2"
subtext0 = "#a5adce"
overlay2 = "#949cbb"
overlay1 = "#838ba7"
overlay0 = "#737994"
surface2 = "#626880"
surface1 = "#51576d"
surface0 = "#414559"

base = "#303446"
mantle = "#292c3c"
crust = "#232634"

# derived colors by blending existing palette colors
cursorline = "#3b3f52"
secondary_cursor = "#b8a5a6"
