# Vicinae Matugen Theme Template
# Used LLM for initial generation, then modified to a satisfactory level

[meta]
name = "Matugen"
description = "Material You theme generated by Matugen - {{mode}} variant"
variant = "{{mode}}"
icon = "noctalia.svg"

# ============================================================================
# Core Colors
# ============================================================================

[colors.core]
accent = "{{colors.primary.default.hex}}"
accent_foreground = "{{colors.on_primary.default.hex}}"
background = "{{colors.surface.default.hex}}"
foreground = "{{colors.on_surface.default.hex}}"
secondary_background = "{{colors.surface_container.default.hex}}"
border = "{{colors.outline_variant.default.hex}}"

# ============================================================================
# Window Borders
# ============================================================================

[colors.main_window]
border = "{{colors.outline_variant.default.hex}}"  # Softer for main app

[colors.settings_window]
border = "{{colors.outline.default.hex}}"  # Stronger but not primary (less distracting)

# ============================================================================
# Accent Palette
# ============================================================================

[colors.accents]
blue = "{{colors.primary.default.hex}}"
green = "{{colors.tertiary.default.hex}}"
magenta = "{{colors.secondary.default.hex}}"
orange = { name = "{{colors.error.default.hex}}", lighter = 40 }
red = "{{colors.error.default.hex}}"
yellow = { name = "{{colors.tertiary.default.hex}}", lighter = 80 }
cyan = { name = "{{colors.primary.default.hex}}", lighter = 50 }
purple = "{{colors.secondary.default.hex}}"

# ============================================================================
# Text System
# ============================================================================

[colors.text]
default = "{{colors.on_surface.default.hex}}"
muted = "{{colors.on_surface_variant.default.hex}}"
danger = "{{colors.error.default.hex}}"
success = "{{colors.tertiary.default.hex}}"
placeholder = { name = "{{colors.on_surface_variant.default.hex}}", opacity = 0.6 }

[colors.text.selection]
background = "{{colors.primary.default.hex}}"
foreground = "{{colors.on_primary.default.hex}}"

[colors.text.links]
default = "{{colors.primary.default.hex}}"
visited = { name = "{{colors.tertiary.default.hex}}", darker = 20 }

# ============================================================================
# Input Fields
# ============================================================================

[colors.input]
border = "{{colors.outline.default.hex}}"
border_focus = "{{colors.primary.default.hex}}"
border_error = "{{colors.error.default.hex}}"

# ============================================================================
# Buttons
# ============================================================================

[colors.button.primary]
background = "{{colors.surface_container_high.default.hex}}"
foreground = "{{colors.on_surface.default.hex}}"

[colors.button.primary.hover]
background = "{{colors.surface_container_highest.default.hex}}"  

[colors.button.primary.focus]
outline = "{{colors.primary.default.hex}}"

# ============================================================================
# Lists
# ============================================================================

[colors.list.item.hover]
background = { name = "{{colors.primary_container.default.hex}}", opacity = 0.25 }  
foreground = "{{colors.on_surface.default.hex}}"

[colors.list.item.selection]
background = { name = "{{colors.primary_container.default.hex}}", opacity = 0.50 }
foreground = "{{colors.on_primary_container.default.hex}}"
secondary_background = "{{colors.primary_container.default.hex}}"
secondary_foreground = "{{colors.on_primary_container.default.hex}}"

# ============================================================================
# Grid Items
# ============================================================================

[colors.grid.item]
background = "{{colors.surface_container.default.hex}}"

[colors.grid.item.hover]
outline = { name = "{{colors.secondary.default.hex}}", opacity = 0.8 }

[colors.grid.item.selection]
outline = { name = "{{colors.primary.default.hex}}" }

# ============================================================================
# Scrollbars
# ============================================================================

[colors.scrollbars]
background = { name = "{{colors.primary.default.hex}}", opacity = 0.2 }

# ============================================================================
# Loading States
# ============================================================================

[colors.loading]
bar = "{{colors.primary.default.hex}}"
spinner = "{{colors.primary.default.hex}}"
