Gallery cards render from tileProps, not from formattergotchas / listsThe documented top-level formatter is ignored; the card lives in a nested, undocumented tileProps.formatter. Layout and card must go in two separate writes (PnP or REST/SPFx)
View formatting drops CSS gradients — use a solid background-colorgotchas / listsbackground is not on the style allowlist and a gradient in background-image did not survive either; a white initial on a gradient avatar turns invisible, so use a solid background-color