2013 Elantra GT Check Engine Light

[Resolved] Very new to doing my own maintenance and trying to learn.

My car has 93K miles on it and I get full synthetic oil changes on schedule.

Codes: P0301,P0302,P0303

A couple of weeks ago, my car starts shaking at an idle. I do some research and the internet says replace the spark plugs. I do that, but the shaking persists. I take it to a mechanic and he says it needs new ignition coils. He wants $1,000+ for new plugs and coils, but I know how to do that, so I bought OEM Denso plugs and OEM-equivalent Denso coils from rockauto.com. The shake is gone and the car sounds better than it has in years but the light persists.

The mechanic checked the fuel injector and other potential issues, so I'm not sure what else might be wrong. What else can I do to find the problem?