Custom pizza topping configuration set up

Ok I am building out for a pizzeria and they have a custom pizza category where the customer can build their own pizza given the ability to do left half, right half, or whole pizza on the tops as well as have the ability to offer no, light, extra on the same toppings. I am running in to a pickle on how to configure this.
I am enclosing a copy of the DB and menu flow diagram.Slidders (9.0 MB)
Menu Flow (1).pdf (448.3 KB)