SANTA CLARA -- The 49ers were so lifeless that even the unoccupied seats at Levi’s Stadium grew restless with the performance.
Now, the 49ers are in serious trouble.
Stay in the game with the latest updates on your beloved Bay Area and California sports teams! Sign up here for our All Access Daily newsletter.
Quarterback Nick Mullens followed up his near-flawless performance in place of Jimmy Garoppolo a week earlier with an extremely flawed and inexplicably poor showing in the 49ers’ 25-20 loss to the Philadelphia Eagles (1-2-1) on Sunday night at Levi’s Stadium.
The 49ers (2-2) fell another game behind the unbeaten Seattle Seahawks in the NFC West with their second loss in two home games this season.
Mullens was benched with 5:42 remaining in the fourth quarter when his pass directly to Philadelphia linebacker Alex Singleton was returned 30 yards for a touchdown.
OK, now everybody can believe Kyle Shanahan when he says there is no scenario in which Mullens was going to play his way into a starting role as long as Garoppolo is healthy and available.
San Francisco 49ers
Find the latest San Francisco 49ers news, highlights, analysis and more with NBC Sports Bay Area and California.
Now, the question might become whether Mullens is even the backup. He completed 18 of 26 passes for 200 yards with one touchdown and two interceptions.
Download and subscribe to the 49ers Talk Podcast
C.J. Beathard entered and immediately led the 49ers down the field on a touchdown drive to get the 49ers close. The 49ers got to within five points on Jerick McKinnon’s 1-yard scoring run with 2:06 remaining.
The 49ers drove from their own 7-yard line with 1:40 remaining, but on fourth-and-10 from the Philadelphia 33-yard line, Beathard’s throw-it-up in the end zone bounced around and landed incomplete as the clock expired. He completed 14 of 19 for 138 yards on the 49ers’ final two possessions.
Here are three takeaways from the 49ers' loss.
Leaving the door open
The 49ers’ defense generally played well enough to enable the offense to put up and points and run away and hide in this game.
But the offense looked completely out of sorts. Mullens was shaky with, perhaps, his worst interception of his career on a throw-it-up-for-grabs toss in the first half that prevented the 49ers from getting any points from a red-zone opportunity.
Then, he had an even-worse interception that was returned for the game-clinching touchdown late in the game.
The 49ers’ offensive line struggled throughout, including a game in which left tackle Trent Williams was beaten for two sacks. He also was called for holding and a false start.
The 49ers were protecting a three-point lead in the fourth quarter when Mullens was sacked and fumbled. Right guard Daniel Brunskill was slow to react to blitzing defensive back Cre’Von LeBlanc.
The Eagles cashed in for the go-ahead points when Carson Wentz found Travis Fulgham for a 27-yard touchdown against Dontae Johnson, who got the start opposite of Jason Verrett with Richard Sherman, Emmanuel Moseley and Ahkello Witherspoon out.
Kittle doesn’t skip a beat
All-Pro tight end George Kittle sat out the past two games on the unforgiving artificial surface of MetLife Stadium. Despite his layoff, he was back in prime-time form on Sunday night.
Kittle, the NFL’s highest-paid player at his position, put on a show for the national television audience.
The tight end caught a career-high 15 passes for 183 yards and a touchdown. The one that got away was a difficult chance from Beathard on a two-point conversion attempt late in the game
His 5-yard touchdown catch from Mullens gave the 49ers a 14-8 lead in the third quarter.
Kittle sat out the 49ers’ games in Weeks 2 and 3 against the New York Jets and Giants. He sustained a left knee sprain in Week 1 against the Arizona Cardinals.
As if there was any question, Kittle showed that he is the best player on the team. And it’s not even close.
RELATED: Where 49ers rank in our power rankings after loss to Eagles
Aiyuk’s game takes a leap
Brandon Aiyuk distinguished himself last season at Arizona State for his yards after the catch.
He exhibited those skills in electric fashion Sunday night. But his yards after the catch came on what was officially recognized as a run play.
With the 49ers trailing 8-0 near the end of the first quarter, Aiyuk took Mullen’s lateral at the 44-yard line. He picked up a good block from Trent Taylor on the outside, skipped through two defenders, picked up downfield blocks from Brunskill and Mike McGlinchey.
Then, he saved the best for last, as he hurdled over flailing Philadelphia safety Marcus Epps near the 5-yard line for the touchdown and hopped into the end zone to complete the 38-yard touchdown run.
Now, the 49ers must find ways to get the ball in Aiyuk’s hands more often. He caught only two passes for 18 yards against the Eagles.
Deebo Samuel was not much of a factor in a limited role in his first game back after undergoing surgery in June to repair a fractured foot. Samuel caught three passes for 35 yards.