Files
2026-07-06 00:24:30 -05:00

67 lines
2.7 KiB
Python

"""Shared theme palette.
All colors here are (light, dark) tuples — CustomTkinter picks the right value
based on the current appearance mode.
Light mode tuned to be warm rather than blindingly bright: a soft off-white
window background with subtle gray panels and visible 1px borders to give the
chrome a layered, sectioned feel.
"""
from __future__ import annotations
# ---- Accent (Navy blue) ------------------------------------------------------
# Used for primary buttons, selected tabs, focus rings, copy buttons.
ACCENT = ("#1e3a8a", "#3b82f6")
ACCENT_HOVER = ("#1e40af", "#60a5fa")
ACCENT_PRESSED = ("#1d3567", "#2563eb")
ACCENT_BORDER = ("#1e3a8a", "#3b82f6")
ACCENT_TEXT = ("#ffffff", "#ffffff")
# ---- Surfaces ----------------------------------------------------------------
# A layered set of grays so the eye can pick out section boundaries even
# without strong borders. Lighter sits on top of darker.
WINDOW_BG = ("#e8e6e3", "#141414") # outermost — a warm soft gray, not pure white
TOOLBAR_BG = ("#ddd9d4", "#1a1a1a") # toolbar strip
PANEL_BG = ("#f6f4f1", "#1f1f1f") # main content panels
CARD_BG = ("#ffffff", "#262626") # cards within panels (SKU card, fact tiles, result rows)
CARD_BG_HOVER = ("#f0ede8", "#2f2f2f")
# ---- Borders and dividers ----------------------------------------------------
BORDER = ("#c8c4be", "#333333") # visible but quiet — 1px around panels/cards
BORDER_STRONG = ("#a8a39c", "#444444") # for input fields and prominent cards
DIVIDER = ("#d7d4cf", "#2a2a2a")
# ---- Text --------------------------------------------------------------------
TEXT_PRIMARY = ("#111827", "#e5e7eb")
TEXT_MUTED = ("#6b7280", "#9ca3af")
TEXT_SUBTLE = ("#9ca3af", "#6b7280")
# ---- Buttons that aren't the primary accent ---------------------------------
NEUTRAL_BTN_BG = ("#ffffff", "#2a2a2a")
NEUTRAL_BTN_HOVER = ("#f0ede8", "#363636")
NEUTRAL_BTN_BORDER = ("#bcb7af", "#3f3f3f")
# ---- Price emphasis (NET) ----------------------------------------------------
NET_COLOR = ("#15803d", "#34d399")
# ---- Copy-success flash ------------------------------------------------------
COPY_OK = ("#15803d", "#16a34a")
# ---- Fonts ------------------------------------------------------------------
FONT_FAMILY = "Segoe UI"
FONT_HEADER = (FONT_FAMILY, 22, "bold")
FONT_SKU = (FONT_FAMILY, 28, "bold")
FONT_PRICE_NET = (FONT_FAMILY, 34, "bold")
FONT_PRICE_LIST = (FONT_FAMILY, 14)
FONT_LABEL = (FONT_FAMILY, 12, "bold")
FONT_BODY = (FONT_FAMILY, 14)
FONT_BODY_BOLD = (FONT_FAMILY, 14, "bold")
FONT_FACT_VALUE = (FONT_FAMILY, 17, "bold")
FONT_SEARCH = (FONT_FAMILY, 18)
FONT_RESULT = (FONT_FAMILY, 12)
FONT_RESULT_TITLE = (FONT_FAMILY, 13, "bold")
FONT_FOOTER = (FONT_FAMILY, 11, "italic")
FONT_STATUS = (FONT_FAMILY, 11)