# Author: Kristoffer Flottorp <kr.fl@outlook.com>
# A take on the JetBrains Fleet theme sprinkled with some creative freedom

"type" = "light_blue"
"type.builtin" = "orange"
"constructor" = "yellow"
"constant" = "cyan"
# "constant.builtin" = {} # .boolean
"constant.builtin.boolean" = "yellow"
"constant.character" = "yellow"
"constant.characted.escape" = "light"
"constant.numeric" = "yellow"
"string" = "pink"
"string.regexp" = "light"
"string.special" = { fg = "yellow", modifiers = ["underlined"] } #.path / .url / .symbol
"comment" = "light_gray" # .line
# "comment.block" = {} # .documentation
"variable" = "light" # .builtin
"variable.parameter" = "light"
# "variable.other" = {} # .member
"variable.other.member" = "yellow"
"label" = "yellow"
"punctuation" = "light" # .delimiter / .bracket
"keyword" = "cyan" # .operator / .directive / .function
"keyword.control" = "yellow" # .conditional / .repeat / .import / .return / .exception
"operator" = "light"
"function" = "yellow"
"function.macro" = "green"
"function.builtin" = "green"
"function.special" = "green"
"function.method" = "light"
"tag" = "green"
"special" = "green"
"namespace" = "light"

# used in theming
# "markup.normal" = {} # .completion / .hover
# "markup.raw.inline" = {} # .completion / .hover
"markup" = "purple" # .quote
"markup.bold" = { fg = "purple", modifiers = ["bold"] }
"markup.italic" = { fg = "purple", modifiers = ["italic"] }
"markup.heading" = "light" # .marker
"markup.heading.1" = "yellow"
"markup.heading.2" = "green"
"markup.heading.3" = "pink"
"markup.heading.4" = "purple"
"markup.heading.5" = "cyan"
"markup.heading.6" = "light_blue"
"markup.list" = "cyan" # .unnumbered / .numbered
"markup.link" = "green"
"markup.link.url" = "pink"
"markup.link.text" = "cyan"
"markup.link.label" = "yellow"
"markup.raw" = "pink" # .inline
"markup.raw.block" = "orange"

"diff.plus" = "cyan"
"diff.minus" = "yellow"
"diff.delta" = "purple"

# ui specific
"ui.background" = { bg = "#0d0d0d" } # .separator
"ui.cursor" = { bg = "dark_gray", modifiers = ["reversed"] } # .insert / .select / .match / .primary
"ui.cursor.match" = { fg = "light", bg = "blue_accent" } # .insert / .select / .match / .primary
"ui.cursorline" = { bg = "darker" }
"ui.linenr" = "dark_gray"
"ui.linenr.selected" = { fg = "light_gray", bg = "darker" }
"ui.statusline" = { fg = "light", bg = "darker" } # .inactive / .normal / .insert / .select
"ui.statusline.inactive" = { fg = "dark", bg = "darker" }
"ui.statusline.normal" = { fg = "lightest", bg = "darker"}
"ui.statusline.insert" = { fg = "lightest", bg = "blue_accent" }
"ui.statusline.select" = { fg = "lightest", bg = "orange_accent" }
"ui.popup" = { fg = "light", bg = "darkest" } # .info
"ui.window" = { fg = "dark", bg = "darkest" }
"ui.help" = { fg = "light", bg = "darkest" }
"ui.text" = "light" # .focus / .info
"ui.virtual" = "dark" # .whitespace
"ui.virtual.ruler" = { bg = "darker"}
"ui.menu" = { fg = "light", bg = "darker" } # .selected
"ui.menu.selected" = { fg = "lightest", bg = "blue_accent" } # .selected
"ui.selection" = { bg = "darker" } # .primary
"ui.selection.primary" = { bg = "select" } # .primary
"hint" = "blue"
"info" = "yellow_accent"
"warning" = "orange_accent"
"error" = "red"
"diagnostic" = { modifiers = [] }
"diagnostic.hint" = { underline = { color = "light", style = "curl" } }
"diagnostic.info" = { underline = { color = "blue", style = "curl" } }
"diagnostic.warning" = { underline = { color = "yellow", style = "curl" } }
"diagnostic.error" = { underline = { color = "red", style = "curl" } }

[palette]
darkest = "#1e1e1e"
darker = "#262626"
dark = "#898989"
select = "#102f5b"

light = "#d6d6dd"
lightest = "#ffffff"

dark_gray = "#535353"
light_gray = "#6d6d6d"
purple = "#a390f0"
light_blue = "#7dbeff"
blue = "#52a7f6"
pink = "#d898d8"
green = "#afcb85"
cyan = "#78d0bd"
orange = "#efb080"
yellow = "#e5c995"
red = "#f44747"

blue_accent = "#2197F3"
pink_accent = "#E44C7A"
green_accent = "#00AF99"
orange_accent = "#EE7F25"
yellow_accent = "#DEA407"

# variables intended for future updates
checkmark = "#44B254"
