For the bench seating, I stopped at a nearby commercial foam shop and they were happy to cut 4″ foam to custom measurements.
I was able to select the density of the foam, too, to make sure it was comfortable, yet held up to a lot of use. The foam place also had a limited selection of woven upholstery, one of which worked perfectly for our decor, complementing the felt on the pool table.
Lengths of inexpensive color-matching zippers were also available there. Foam, fabric, zipper–all in one shop.
Since I’ve been sewing for many years, I already had some upholstery cord to create the piping. So using the stash I had I made a box-style cushion cover with a hidden zipper.
It probably took two days to get everything cut, assembled, sewn and fitted.