refactor: replace hardcoded hex colors with theme tokens, move data/ to root

- Add --color-green-mid token (#4a7a55) to @theme for dimmer stat values
- Replace all text-[#hex]/bg-[#hex] arbitrary values with named tokens:
  text-green, text-green-light, text-green-sec, text-green-muted,
  text-green-dark, text-green-mid, text-text, bg-card, bg-bg, border-border
- Replace rgba(34,197,94,X) inline styles with bg-green/X opacity modifiers
- Convert single-prop style={{ borderColor/background }} to className
- Fix SVG stroke="#dff5e8" → stroke="currentColor"
- Use CSS variables in globals.css base styles (background-color, color)
- Move app/data/wikipedia/ → data/ (project root, not inside Next.js app dir)
- Update Dockerfile, seed.ts, scrape-wikipedia.ts paths accordingly
- Remove unused app/data/world_cup.csv

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-15 18:08:23 +02:00
parent 187ee2e312
commit b141356247
125 changed files with 279 additions and 322 deletions
+6 -5
View File
@@ -12,6 +12,7 @@
--color-green-sec: #6abf7a;
--color-green-muted: #2a5c35;
--color-green-dark: #1a3a22;
--color-green-mid: #4a7a55;
--color-text: #dff5e8;
--color-border: rgba(34,197,94,0.15);
@@ -25,7 +26,7 @@
html { scroll-behavior: smooth; }
body {
background-color: #040d08;
background-color: var(--color-bg);
/* Diagonal goal-net pattern */
background-image:
repeating-linear-gradient(
@@ -38,7 +39,7 @@
rgba(34,197,94,0.028) 0, rgba(34,197,94,0.028) 1px,
transparent 1px, transparent 28px
);
color: #dff5e8;
color: var(--color-text);
font-family: "Space Grotesk", system-ui, sans-serif;
min-height: 100vh;
overflow-x: hidden;
@@ -47,7 +48,7 @@
/* Glass card — semi-transparent over the body net pattern */
.glass-card {
background: rgba(4, 18, 8, 0.78);
border: 1px solid rgba(34,197,94,0.15);
border: 1px solid var(--color-border);
border-radius: 1rem;
overflow: hidden;
backdrop-filter: blur(10px);
@@ -56,7 +57,7 @@
.glass-card-hero {
background: linear-gradient(145deg, rgba(13,32,22,0.82), rgba(16,42,28,0.82));
border: 1px solid rgba(34,197,94,0.28);
border: 1px solid color-mix(in srgb, var(--color-green) 28%, transparent);
border-radius: 1rem;
overflow: hidden;
backdrop-filter: blur(10px);
@@ -65,7 +66,7 @@
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: #020a04; }
::-webkit-scrollbar-thumb { background: rgba(34,197,94,0.25); border-radius: 4px; }
::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--color-green) 25%, transparent); border-radius: 4px; }
@keyframes livePulse {
0%, 100% { opacity: 1; transform: scale(1); }