Is there a way to flip sprite from an atlas in the fragment shader?

I’m working with card objects that use two different atluses, a front sampler and a back sampler. Currently the way I draw whether a card is face-up or face-down is by rotating the object and then using gl_FrontFacing to decide whether I use the front sampler or the back one. The issue I’m having is that when I draw the back sampler it will look flipped since it’s drawing onto an object that’s been rotated 180 degrees. I’ve tried flipping the texcoord value, but because it’s sampling the whole atlus instead of a single sprite I get a result where the landscape-rotated sprite from the bottom of the atlus is being sampled and creating the wrong effect.

void main()
{
    // Pre-multiply alpha since all runtime textures already are
    lowp vec4 tint_pm = vec4(tint.xyz * tint.w, tint.w);
    mediump vec2 uv = vec2(var_texcoord0.x, var_texcoord0.y);
    if (gl_FrontFacing) {
        gl_FragColor = texture2D(front_sampler, uv) * tint_pm;
    } else {
        gl_FragColor = texture2D(back_sampler, uv) * tint_pm;
    }
}

Is there a way that I can flip how this texture will be drawn in the shader itself? I’d rather not have to edit the images in the atlus itself since it will only work when flipping on one axis.

What if each card was made of 2 sprites? The back one is facing the wrong way and has the artwork for the back of the card. Rotate both at the same time as if they were one card. This is how you’d approach the problem in 3D, just have 2 outwards facing quads back to back, no need to have materials that draw the back face.