diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6c8ca2e..b27ec29 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,14 @@
# Changelog
+## 2026-05-08 10:15 CEST — fix(go): adults template — use lifted CSS classes for visual parity
+
+- Use existing `.balance-pos` / `.balance-neg` (drop invented `balance-cell` / `balance-negative`); Pay-All button now lives inside the balance cell with `position: relative` (matches Python; no separate trailing column).
+- Credits / Debts / Unmatched sections rewritten from `
` / `
` to `
…` / `
…` so the lifted CSS actually applies.
+- Section headings get the descriptive Python text: "Credits (Advance Payments / Surplus)", "Debts (Missing Payments)".
+- Source links moved from page bottom to a `
` block under the h1, matching Python's "Source: Attendance Sheet | Payments Ledger".
+- Total row uses `cell-{{Status}}` plus the small "received / expected" caption span and Python's inline-styled bold/dark background.
+- Drop the redundant `class="cell"` wrapper; debts amount turns red via inline style; balance value drops the trailing "CZK".
+
## 2026-05-08 01:09 CEST — feat(go): M6.2 — adults page (table, filters, Pay buttons)
- `go/internal/web/api/handler.go`: extracted `ServeAdults` body into `AssembleAdults(ctx)` — shared by the JSON API route and the new HTML handler.
diff --git a/go/internal/web/templates/adults.tmpl b/go/internal/web/templates/adults.tmpl
index ce4ca0b..5201d21 100644
--- a/go/internal/web/templates/adults.tmpl
+++ b/go/internal/web/templates/adults.tmpl
@@ -3,9 +3,15 @@
Adults Dashboard
{{if .Error}}
-
Error loading data: {{.Error}}
+
Error loading data: {{.Error}}
{{else}}
+
+ Balances calculated by matching Google Sheet payments against attendance fees.
+ Source: Attendance Sheet |
+ Payments Ledger
+