Apple Wallet Pass setting foregroundColor to white automatically when background image is present

I'm creating an event ticket Apple Wallet Pass and setting a light-coloured background image. When I do this, it automatically sets the foregroundColor to white, even when I explicitly set it to black.

What's strange is that on my Mac, the foregroundColor appears as intended, and I can set it to any color I want, but when I AirDrop the pass to my iPhone, it sets the color to white, regardless of what I set the foregroundColor to.

This means the text becomes completely illegible for my users, with white text on a white background image. If I remove the background image, the foregroundColor works fine.

Is there a way to have a light-colored background image with dark text, or am I forced to have a dark-colored background image?

Here are the colors in my pass.json:

  • backgroundColor: "rgb(255, 255, 255)"
  • foregroundColor: "rgb(0, 0, 0)"
  • labelColor: "rgb(0, 0, 0)"

I've attached what the pass looks like on my Mac and my iPhone.

Apple Wallet Pass setting foregroundColor to white automatically when background image is present
 
 
Q