magicciv/src
autocommit 42cd08d8f3 refactor(ui): tokenize menus + city + combat scene colors off raw Color()
p2-74 cluster 1 (modals + menus), batch 2. Route inline Color() literals in
12 scene scripts onto ThemeAssets.color() design tokens by semantic role:
- end_game_summary: banner victory/defeat → accent.gold/semantic.negative,
  standings rank → semantic.positive, score → accent.goldResource, body roles.
- victory/defeat_screen: result + row colors → accent/semantic/text tokens.
- credits/how_to_play/throne_room_spoils/game_setup: titles → accent.goldResource
  /text.title, dividers → border.divider, body → text.primary/secondary/muted.
- loading_screen: PLAYER_COLORS const removed; player.color now routes through
  ThemeAssets.get_player_color() (palette-aware) with player.gray fallback.
- throne_room: placeholder label → text.primary@0.65; the 12 _layer_to_color
  decoration tints intentionally retained (categorical, no token home).
- city/building_panel: DISABLED_OUTLINE_COLOR const → @onready var off
  semantic.negative@0.85 (const can't call autoload).
- city_buildable_helper: built→positive, locked/blocked→negative, worked→
  text.title, unworked→text.muted.
- city_screen focus toggle: active→accent.gold, inactive→text.muted.
- combat_preview grudge badge → semantic.negative.

Visual-only; no logic change. Data-driven clan/player colors and Color.WHITE/
GRAY fallbacks left intact. gdlint HEAD-vs-now shows zero new violations per
file. Proofs on apricot (weston headless): statistics_proof (5 tabs) +
end_game_summary_proof (4 outcomes) compile-load and render the themed purple
panels / gold titles / semantic coloring with no magenta token fallbacks.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 20:11:03 -07:00
..
game refactor(ui): tokenize menus + city + combat scene colors off raw Color() 2026-06-04 20:11:03 -07:00
packages
simulator refactor(p2-65): 🏗️ Phase 5 C3 — drop dead mc-turn deps from read-only consumers (bullet 5) 2026-06-04 19:51:27 -07:00