health lattice · hoops tooltip
Hoops tooltip variants
Three static states: full record · phantom games · null stats
A — Full record · wins + losses = games
panel · record hero · text W/L encoding
live sample — May 26 2026 · 4 games · 1W 3L
wins=1, losses=3, games=4
unrecorded = games − (W+L) = 0
no "unrecorded" suffix rendered
header
"HOOPS" — Neue Haas 300 · 13px · #2db89a
record "1–3" — Fragment Mono · 14px · #fff
accent on label only — never on W/L values
body
WINS · LOSSES in white — text-only W/L encoding
GAMES in #a3a3a3 (secondary, confirmatory)
divider separates stats from support
colorblind rule
zero green/red for win/loss
W/L readable via label text + numeric value only
B — Phantom games · games > wins + losses
panel · unrecorded suffix · same structure
hypothetical — 5 games · 2W 2L · 1 unrecorded
wins=2, losses=2, games=5
unrecorded = 5 − 4 = 1
"· 1 unrecorded" appended to GAMES value
phantom games
DB constraint: wins+losses ≤ games
gap acknowledged via suffix in #525252 8px
record string "2–2" unchanged — still accurate
why not pips
pips can't represent unknown outcomes honestly
text suffix is unambiguous and wraps gracefully
no phantom squares for unrecorded games
C — Null stats · duration-as-hero fallback
panel · null state · hero shift
null state — games / wins / losses not recorded
games=null, wins=null, losses=null
duration=60 present → becomes header hero
no WINS/LOSSES/GAMES rows rendered
hero shift
header right: "90 min" instead of record string
structurally signals absence of game data
no blank dashes — missing data simply absent
rule
same panel geometry, same padding/border
body reduced to LOCATION + SESSIONS only
no fabricated values for missing data
D — Lattice context · tooltip above cell
panel · lattice placement mock
tooltip relative to active lattice cell
[WIREFRAME] Static positioning only — in production,
tooltip renders via portal anchored to hovered cell.
panel sizing
minWidth 168px · maxWidth 240px
fits cleanly above 12px lattice dots
shadow 0 12px 40px rgba(0,0,0,0.5)
locked direction
Variant A structure — record string hero
W/L text encoding · no pips · no win%
hero shift for null state (Variant C)
/health-hoops-tooltip-lab · end
2026-05-29