The law varies from one jurisdiction to another. Most police have bigger issues to deal with in the areas where people are still tossing their trash in the streets.
This depends on the jurisdiction. On the first offense, it is usually a written warning. Repeat offenses or serious messes start with $20-$100 files. Serial littering and dumping are several hundred dollar fines.
It varies greatly not only from state to state but even between cities. The fine is set by the city or the county for rural areas. I have seen ranges from $50 to $200. Social pressure will stop littering before fines ever will.
Littering fines vary and are enforced by cities and towns. This is because they are the ones usually financially responsible for the cleanups. Punishment could also be community service.
Littering is generally governed by local ordinances, so the punishment can vary wildly. In some places, it is a small fine. Other places require community service.