CHARLOTTE, N.C. (AP) — Ryan Tannehill likes the direction of the Miami Dolphins.
Tannehill completed 12 of 15 passes for 102 yards and a touchdown, Damien Williams scored twice for the Dolphins in a 31-30 loss to the Carolina Panthers on Saturday night.
Williams scored on a 1-yard touchdown run and caught an 11-yard TD pass on a slant route from Tannehill as the Dolphins built an early 14-0 lead.
Tannehill beat the Panthers with short passes underneath the coverage to his backs. Lamar Miller set up Miami's first score by catching a pass in the flat, faking out Panthers cornerback Josh Norman and racing 36 yards to the Carolina 5.
"When you score on two out of three drives, you feel like you're moving the ball well," said Tannehill, who has completed 82 percent of his passes through two games.
Panthers coach Ron Rivera said he was disappointed with his team's nine penalties, three of which helped prolong Miami drives.
"We had three big negative plays that were wiped out because we were offside and you can't do that and expect to be a good team," Rivera said.
Williams nearly had a third touchdown, but Dolphins coach Joe Philbin errantly challenged an official's call that the second-year running back was stopped before the goal line after diving for the pylon. When officials reviewed the play, they determined Williams actually fumbled the ball into the end zone.
Instead of the Dolphins taking a 20-0 lead — or having a second-and-goal at the Carolina 1 had Philbin not challenged — the Panthers got the ball at the 20 after the touchback.
Philbin said it was a "bad decision."
"The only person to blame is me," Philbin said. "I had the red flag, and I threw it. It was a bad decision."
Carolina's Cam Newton struggled in his first game without wide receiver Kelvin Benjamin, finishing 4 of 10 for 42 yards with an interception. Benjamin tore his ACL in practice on Wednesday.
Newton did move the offense to the Miami 2 on his final possession, but the Dolphins stopped them on four straight plays, including a scramble on fourth down by Newton in which he dove for the pylon but came up short.
"When you get inside the 10 you have to find a way to get it in the end zone," Newton said.
Dolphins: CB Jamar Taylor intercepted Newton and returned the ball to the Carolina 3 before leaving the game later with a quadriceps injury. LT Jason Fox was evaluated for a concussion. Philbin offered no updates on injuries.
Panthers: Rivera said DE Frank Alexander tore his right Achilles and is done for the season. C Ryan Kalil injured his knee, but Rivera had no update on his status.
Dolphins: Matt Moore was 6 of 11 for 55 yards with one touchdown and one interception.
Panthers: Derek Anderson led his team to three field goals on three first-half possessions and finished 8 of 16 for 87 yards. Joe Webb led three TD drives and ran for a 2-point conversion.
Dolphins: Walt Aikens and Michael Thomas are competing for the starting safety spot with Louis Delmas out for the season. Both had four tackles in the first half.
Panthers: Nobody really stepped up at wide receiver for the Panthers in the wake of the Benjamin injury. Corey Brown dropped two passes, including one in the end zone, and Jerricho Cotchery didn't catch a pass. Ted Ginn Jr. had two catches for 19 yards and rookie Devin Funchess (hamstring) didn't play.
Dolphins: Williams might be emerging as a valuable short-yardage back for Miami. He scored two TDs and nearly had another but fumbled it into the end zone.
Panthers: Kicker Graham Gano was Carolina's best offensive option, connecting from 46, 48 and 52 yards.
Dolphins: WR DeVante Parker was removed from the PUP list earlier in the week, but did not play.
Panthers: LB Shaq Thompson, the team's first-round pick, was impressive in his preseason debut. He broke up two passes, including a long pass along the sideline to Jordan Cameron, saving a touchdown. "I wasn't as sharp from a technique standpoint as I would like to be, but that will come with more reps," Thompson said.