
#  ▄███████████████                   ▄▄▄████████▒░      ▄▄▄
# ████████████████████▒░      ██████████████████▒░   ▄█████████▄
# ░▒▒▒▒▒█████▒▒▒▒▒███▒░        ▒███████████▒▒▒▒▒░  ▄█████████████▄
#      █████████░░▒▒▒░███░   ███▒░▒▒▒▒█████▒░░░░  ██████▀   ▀██████░
#     ████████▒▒░ ░░░ ███▒░  ███▒ ░░░░█████▒░    ██████       ██████▒
#    ▄███▒▒▒▒▒░░     ███▒░  ███▒░     █████▒░    ░██████▄   ▄██████▒░
#    ███▒░░░░░      ▐████▄▄███▒░      ░█████▒░    ░▒█████████████▒▒░
#    ██▒░            ▐███████▒░        ░▒██▒░      ░░▒█████████▒▒░
#    ░▒░              ▒▒▒▒▒▒▒░          ░▒▒░         ░░▒▒▒▒▒▒▒░░░
#     ░               ░░░░░░░            ░░            ░░░░░░░
#          ▄██████▄░ ▄██████▄░ ▄██████▄░ ▄██████▄░ ▄██████▄░
#          ████████▒░████████▒░████████▒░████████▒░████████▒░
#          ▀██████▀░ ▀██████▀░ ▀██████▀░ ▀██████▀░ ▀██████▀░
#           ░▒▒▒▒▒░   ░▒▒▒▒▒░   ░▒▒▒▒▒░   ░▒▒▒▒▒░   ░▒▒▒▒▒░
#          ▄██████▄░ ▄██████▄░ ▄██████▄░ ▄██████▄░ ▄██████▄░
#          ████████▒░████████▒░████████▒░████████▒░████████▒░
#          ▀██████▀░ ▀██████▀░ ▀██████▀░ ▀██████▀░ ▀██████▀░
#           ░▒▒▒▒▒░   ░▒▒▒▒▒░   ░▒▒▒▒▒░   ░▒▒▒▒▒░   ░▒▒▒▒▒░
#            ░░░░░  ▄█████████████████████████████▄░ ░░░░░
#                   ███████████████████████████████▒░
#                   ▀█████████████████████████████▀░
#                    ░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░
#                     ░░░░░░░░░░░░░░░░░░░░░░░░░░░░
#
#                  FUTO Keyboard Theme Configuration
#                        Format version: 1.0
#
# Although there are comments to help you, please check our guide for
# more information. It can be found at:
#                      https://docs.keyboard.futo.tech/theme/advanced
#
# If blindly editing configuration files isn't your thing, there is a
# much easier way which is our theme editor web app. You can see live
# realtime previews of the keyboard with different sizes or languages
# as well as an easy editing interface. Try it out at:
#                             https://keyboard.futo.tech/theme-editor
#
# Have fun theming!
# -------------------------------------------------------------------

name = "Christmas 2025"
author = "zilluzion"
id = "art.zilluzion.xmas2025"
version = 1
description = "Christmas theme for 2025"

[options]
auto_borders = true
center_hints = false
roundedness = 1
scale_text = 1
scale_hints = 1
weight_text = 400
weight_hints = 500

# -------------------------------------------------------------------
# There are many colors here, so it'll likely be difficult for you to
# edit them by hand. We would recommend you to use a Material 3 color
# generator or our theme editor linked above. Color format: #RRGGBBAA
# If you change a color, remove its "# inherited" comment if present.
# -------------------------------------------------------------------

[colors]
primary = "#ff3c3c"
on_primary = "#410003" # inherited
primary_container = "#ffdad6" # inherited
on_primary_container = "#2a1614" # inherited
inverse_primary = "#ffb3ac" # inherited

secondary = "#b60075" # inherited
on_secondary = "#ffffff" # inherited
secondary_container = "#ffd8e6" # inherited
on_secondary_container = "#2b151f" # inherited

tertiary = "#5e2aff" # inherited
on_tertiary = "#ffffff" # inherited
tertiary_container = "#e6deff" # inherited
on_tertiary_container = "#1c1830" # inherited

background = "#f9f9f9" # inherited
on_background = "#1a1c1c" # inherited

surface = "#f9f9f9" # inherited
on_surface = "#1a1c1c" # inherited
surface_variant = "#dde4e6" # inherited
on_surface_variant = "#41484a" # inherited
surface_tint = "#ff3c3c" # inherited
inverse_surface = "#2f3131" # inherited
inverse_on_surface = "#f1f1f1" # inherited

error = "#c00100" # inherited
on_error = "#ffffff" # inherited
error_container = "#ffdad4" # inherited
on_error_container = "#2a1613" # inherited

outline = "#767777cc" # inherited
outline_variant = "#c6c6c766" # inherited
scrim = "#000000" # inherited

surface_bright = "#f9f9f9" # inherited
surface_dim = "#dadada" # inherited
surface_container = "#edeeee" # inherited
surface_container_high = "#e7e8e8" # inherited
surface_container_highest = "#e2e3e3" # inherited
surface_container_low = "#f3f4f4" # inherited
surface_container_lowest = "#ffffff" # inherited

keyboard_surface = "#ffffff"
keyboard_surface_dim = "#e7a56f"
keyboard_container = "#89510b"
keyboard_container_variant = "#a1632e"
on_keyboard_container = "#ffdcbe" # inherited
keyboard_press = "#ad3522"
keyboard_container_pressed = "#76777754" # inherited
on_keyboard_container_pressed = "#76777700" # inherited

[options.font]
font = "SourGummy-Regular.ttf"

[options.background]
image = "candy_background.webp"
opacity = 1
action_bar_opacity = 0.5
cropping = [0, 0, 1, 1]

# -------------------------------------------------------------------
# Matchrules will apply a key border or icon to a group of keys based
# on the selector.  They are order-dependent, only the first matching
# rule will be applied.
# -------------------------------------------------------------------

[[matchrules.border]]
selector = "popup"
asset = "lightestest_button.png"

[[matchrules.border]]
selector = "morekeysbox"
asset = "darker_button.png"

[[matchrules.border]]
selector = "pressed"
asset = "lightestest_button.png"

[[matchrules.border]]
selector = "morekey"
asset = "blank.png"

[[matchrules.border]]
selector = "normal row 1 col -1"
asset = "lightest_button_bite1.png"

[[matchrules.border]]
selector = "normal row 1 col -2"
asset = "lightest_button_bite2a.png"

[[matchrules.border]]
selector = "normal rowmod 1 2 colmod 3 5"
asset = "lightest_button_bite1.png"

[[matchrules.border]]
selector = "normal rowmod 0 2 colmod 4 5"
asset = "lightest_button_bite1.png"

[[matchrules.border]]
selector = "normal rowmod 1 2 colmod 3 9"
asset = "lightest_button_bite2a.png"

[[matchrules.border]]
selector = "normal rowmod 0 2 colmod 2 9"
asset = "lightest_button_bite2a.png"

[[matchrules.border]]
selector = "normal"
asset = "lightest_button.png"

[[matchrules.border]]
selector = "stickyon"
asset = "lightestest_button.png"

[[matchrules.border]]
selector = "spacebar"
asset = "lightest_button_bite2.png"

[[matchrules.border]]
selector = "action"
asset = "button_glazed.png"

[[matchrules.border]]
selector = "functional row -1 col 0"
asset = "button_glazed.png"

[[matchrules.border]]
selector = "functional"
asset = "button.png"

[[matchrules.icon]]
selector = "icon enter_key"
asset = "return_icon.png"

[[matchrules.icon]]
selector = "icon shift_key"
asset = "shift_icon_1_alt.png"

[[matchrules.icon]]
selector = "icon shift_key_shifted"
asset = "shift_icon_2.png"

# -------------------------------------------------------------------
# All image assets used above should have a corresponding config here
# -------------------------------------------------------------------

[[asset.border]]
name = "lightestest_button.png"
background_tint = "#ffffff"
foreground_tint = "#ffffff"
padding = [0, 0, 0, 0]
slicing = [0.331, 0.349, 0.655, 0.639]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "darker_button.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.3, 0.349, 0.66, 0.667]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "blank.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0, 0, 1, 1]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "lightest_button_bite1.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.345, 0.37, 0.605, 0.664]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "lightest_button_bite2a.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.34, 0.286, 0.611, 0.619]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "lightest_button.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.334, 0.352, 0.646, 0.633]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "lightest_button_bite2.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.324, 0.323, 0.62, 0.606]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "button_glazed.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.349, 0.422, 0.613, 0.597]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.border]]
name = "button.png"
background_tint = "#ffffff"
foreground_tint = "#f6eae3"
padding = [0, 0, 0, 0]
slicing = [0.312, 0.358, 0.635, 0.647]
gap = [1, 1, 1, 1]
target_density = 640

[[asset.icon]]
name = "return_icon.png"
target_density = 640

[[asset.icon]]
name = "shift_icon_1_alt.png"
target_density = 640

[[asset.icon]]
name = "shift_icon_2.png"
target_density = 640