opaline 0.4.1

A token-based theme engine for Rust applications
Documentation
# Kanagawa Wave — Inspired by Katsushika Hokusai's The Great Wave
# https://github.com/rebelot/kanagawa.nvim

[meta]
name = "Kanagawa Wave"
author = "rebelot"
variant = "dark"
version = "1.0"
description = "Dark theme inspired by The Great Wave off Kanagawa"

[palette]
# Sumi Ink backgrounds
sumi_ink0 = "#16161D"
sumi_ink1 = "#181820"
sumi_ink3 = "#1F1F28"
sumi_ink4 = "#2A2A37"
sumi_ink5 = "#363646"
sumi_ink6 = "#54546D"

# Foreground
fuji_white = "#DCD7BA"
old_white = "#C8C093"
fuji_gray = "#727169"

# Syntax
crystal_blue = "#7E9CD8"
oni_violet = "#957FB8"
spring_violet1 = "#938AA9"
spring_violet2 = "#9CABCA"
spring_blue = "#7FB4CA"
spring_green = "#98BB6C"
carp_yellow = "#E6C384"
boat_yellow2 = "#C0A36E"
sakura_pink = "#D27E99"
wave_red = "#E46876"
peach_red = "#FF5D62"
surimi_orange = "#FFA066"
wave_aqua2 = "#7AA89F"

# Diagnostics
samurai_red = "#E82424"
ronin_yellow = "#FF9E3B"
autumn_green = "#76946A"
autumn_red = "#C34043"
autumn_yellow = "#DCA561"

[tokens]
"text.primary" = "fuji_white"
"text.secondary" = "old_white"
"text.muted" = "fuji_gray"
"text.dim" = "sumi_ink6"

"bg.base" = "sumi_ink3"
"bg.panel" = "sumi_ink1"
"bg.code" = "sumi_ink0"
"bg.highlight" = "sumi_ink4"
"bg.elevated" = "sumi_ink5"
"bg.active" = "sumi_ink5"
"bg.selection" = "sumi_ink4"

"accent.primary" = "oni_violet"
"accent.secondary" = "crystal_blue"
"accent.tertiary" = "sakura_pink"
"accent.deep" = "spring_violet1"

success = "spring_green"
error = "peach_red"
warning = "ronin_yellow"
info = "spring_blue"

"border.focused" = "crystal_blue"
"border.unfocused" = "sumi_ink6"

"code.keyword" = "oni_violet"
"code.function" = "crystal_blue"
"code.string" = "spring_green"
"code.number" = "sakura_pink"
"code.comment" = "fuji_gray"
"code.type" = "carp_yellow"
"code.line_number" = "sumi_ink6"

[styles]
keyword = { fg = "accent.primary", bold = true }
line_number = { fg = "code.line_number" }
cursor_line = { bg = "bg.highlight" }
selected = { fg = "accent.secondary", bg = "bg.highlight" }
active_selected = { fg = "accent.primary", bg = "bg.active", bold = true }
focused_border = { fg = "border.focused" }
unfocused_border = { fg = "border.unfocused" }
success_style = { fg = "success" }
error_style = { fg = "error" }
warning_style = { fg = "warning" }
info_style = { fg = "info" }
dimmed = { fg = "text.dim" }
muted = { fg = "text.muted" }
inline_code = { fg = "success", bg = "bg.code" }

[gradients]
primary = ["oni_violet", "crystal_blue"]
warm = ["wave_red", "carp_yellow"]
success_gradient = ["spring_green", "wave_aqua2"]
error_gradient = ["peach_red", "sakura_pink"]
aurora = ["oni_violet", "crystal_blue", "spring_blue", "wave_aqua2", "spring_green"]