-- lx-bundle:true
-- lx theme

-- This file is part of Lx and Qui, created by Liqube <www.liqube.com>
-- Copyright Liqube Audio. All rights reserved.
-- Lx Interim License. See LICENSE for details.

local theme = require("qui.theme")

theme.register({
	name = "Liqube Dark",
	author = "liqube",
	dark = true,

	-- Generic pairs let custom drawing use color without guessing a readable companion
	palette = {
		red = {
			strong = { color = "#d16969", contrast = "#090c11" },
			soft = { color = "#3a252a", contrast = "#d9a0aa" },
		},
		orange = {
			strong = { color = "#e7a64b", contrast = "#090c11" },
			soft = { color = "#3a2d20", contrast = "#e0b27c" },
		},
		yellow = {
			strong = { color = "#dcd98a", contrast = "#090c11" },
			soft = { color = "#353323", contrast = "#d8cf80" },
		},
		green = {
			strong = { color = "#7dcf91", contrast = "#090c11" },
			soft = { color = "#203529", contrast = "#9bd5aa" },
		},
		blue = {
			strong = { color = "#569cd6", contrast = "#090c11" },
			soft = { color = "#202f3d", contrast = "#8cbde4" },
		},
		purple = {
			strong = { color = "#c586c0", contrast = "#090c11" },
			soft = { color = "#332739", contrast = "#d2a4cf" },
		},
	},

	form = {
		bg = {
			normal = "#1c1f26",
		},
	},
	panel = {
		bg = {
			normal = "#181b21",
		},
		frame = {
			normal = "#2b303a",
		},
	},
	separator = {
		frame = {
			normal = "#2b303a",
		},
	},
	section = {
		text = {
			normal = "#708bb0",
		},
		frame = {
			normal = "#3b4657",
		},
	},
	input = {
		bg = {
			normal = "#090c11",
			hover = "#21252b",
			down = "#2b3f63",
			disabled = "#181b21",
			selection = "#2b3f63",
		},
		checkmark = {
			normal = "#ffffff",
			disabled = "#545e70",
		},
		text = {
			normal = "#abb2bf",
			disabled = "#545e70",
			placeholder = "#545e70",
			selection = "#ffffff",
		},
		frame = {
			normal = "#242223",
			hover = "#545e70",
			focused = "#85aaec",
		},
		caret = {
			normal = "#abb2bf",
		},
	},
	button = {
		-- Ordinary hover keeps the quiet surface and changes only the outside outline
		bg = {
			normal = "#15181d",
			down = "#aeb7c2",
			pressing = "#20242c",
			disabled = "#181b21",
		},
		text = {
			normal = "#999999",
			hover = "#999999",
			down = "#000000",
			pressing = "#ffffff",
			disabled = "#545e70",
		},
		frame = {
			normal = "#4c5663",
			hover = "#888888",
			focused = "#85aaec",
			down = "#000000",
			pressing = "#000000",
			disabled = "#4c5663",
		},
		inner_frame = {
			down = "#aeb7c2",
			pressing = "#a9b2bd",
		},
	},
	checkbox = {
		indicator = {
			normal = "#11141a",
			disabled = "#181b21",
		},
		checkmark = {
			normal = "#abb2bf",
			disabled = "#545e70",
		},
		text = {
			normal = "#abb2bf",
			disabled = "#545e70",
		},
		frame = {
			focused = "#85aaec",
		},
	},
	radio = {
		checkmark = {
			normal = "#abb2bf",
			disabled = "#545e70",
		},
		text = {
			normal = "#abb2bf",
			disabled = "#545e70",
		},
		frame = {
			-- Keep the resting ring quieter than the shared input hover frame
			normal = "#4c5663",
			focused = "#85aaec",
		},
	},
	listbox = {
		bg = {
			hover = "#151920",
			selection = "#2b3f63",
		},
		text = {
			selection = "#ffffff",
		},
	},
	tree = {
		symbol = {
			normal = "#5e6269",
			hover = "#ffffff",
			disabled = "#545e70",
		},
		bg = {
			hover = "#151920",
			selection = "#2b3f63",
		},
		text = {
			selection = "#ffffff",
		},
	},
	scrollbar = {
		bg = {
			normal = "#1f2228",
			disabled = "#20242a",
		},
		thumb = {
			normal = "#3e4450",
			hover = "#444b58",
			pressing = "#5d6678",
			disabled = "#282c34",
		},
	},
	menu = {
		bg = {
			normal = "#191a1c",
			hover = "#393d46",
		},
		text = {
			normal = "#abb2bf",
			critical = "#b08f97",
			notable = "#b08f6f",
			disabled = "#44484c",
		},
		detail = {
			normal = "#555a5f",
		},
		frame = {
			normal = "#4c5663",
		},
		separator = {
			normal = "#2b303a",
		},
		symbol = {
			normal = "#89919b",
		},
	},
})
