Every power-up, drawn exactly as the HUD draws it — same markup, same
style.css, same sizes. Generated art shows where a file exists;
everything else falls back to its emoji, which is the same rule the game uses.
Nothing here is a mock-up, so what you see is what a player sees.
The row at the top is the real test: these are judged at 22–30px,
next to each other, over moving terrain.
Full size (30px) and compact (22px), on the HUD's own background.
The panel is translucent and sits over the map. A dark icon on a dark chip can look fine on this page and vanish in play.
The outline says what a thing IS before its icon is legible, and without
spending a colour — colour is already carrying rarity out there.
Circle = a stacking passive · triangle = an Active you press ·
square = gear you wear. Same language as the chips above and the item dock.
This is drawn by the REAL renderer (slotOutline +
_icon in render/renderer.js), on the game's own
grass, at the tile size a phone actually uses — so if it reads here it
reads in play.
Just the icons that have real art, side by side — the set-consistency check.
Triangles, so the slot is readable from the shape alone before you have read a word. Passives are circles; gear is square.
The checker is how you tell a true cut-out from dark art on a dark card: if you can see the squares through it, the alpha is real.