I've used various "cat urine deodorizer" products from the pet store with great success. At first, I had several bag leaks and recently, a Hollister clamp came loose. At least I was at home...not in public :(
Here is the inexpensive product I used:
16 ounces of 3% hydrogen peroxide (inexpensive at beauty supply store)
1 tablespoon of bicarbonate of soda (baking soda)
Place the baking soda in a spray bottle, add peroxide, cover the opening with your thumb and shake to dissolve the soda. Then apply the spray pump top. Spray generously, wetting the area. I have poured it directly on the spot to soak the underlying carpet mat—but I live in a hot dry area, your mileage may vary depending on humidity, climate, and penetration of the stain.
The smell may seem to increase, but it is actually releasing the odor. When it dries, any crystals or "dust" can be vacuumed up.
You may want to repeat the process.
So far, this has not bleached any fabrics, but you may want to try an inconspicuous spot first.