A week after clinching the NFC West title, the San Francisco 49ers had trouble holding off the Arizona Cardinals' second-half rally.
The 49ers blew a 12-point second-half lead and lost to the Arizona Cardinals 21-19, just their third defeat of the season and first against a team that currently has a losing record.
The loss dropped San Francisco (10-3) into a tie with New Orleans for the second-best record in the conference. The top two teams earn a first-round bye.
"We have to be honest with ourselves when we look at the film," quarterback Alex Smith said. "It is not something we can just dismiss and move on. We are into December now and we have to continue to get better. We just can't dismiss this. "
John Skelton stepped in for the injured Kevin Kolb and threw for 282 yards and three touchdowns for Arizona (6-7).
Larry Fitzgerald had seven catches for 149 yards, including a 46-yarder for a touchdown and a 53-yarder to set up the go-ahead score. He also had a vicious block that helped free Early Doucet on a 60-yard touchdown reception.
"That's Fitz being Fitz," Skelton said.
Arizona has won five of six, with the only loss being at San Francisco on Oct. 20.
Kolb left the game after a blow to the head on Arizona's third play. Skelton, benched after throwing three interceptions in the Cardinals' 23-7 loss at San Francisco on Nov. 20, had a 60-yard TD pass to Doucet and a 3-yard toss to Andre Roberts for what proved to be the winning score early in the fourth quarter.
Skelton was able to overcome two interceptions and a lost fumble on Sunday.
San Francisco had the ball inside the Arizona 10-yard three times in the second quarter and came away with only field goals. They also had the ball third-and-1, then fourth-and-1, at the San Francisco 41 with about two minutes to go.
In both cases, passes fell incomplete, the last one after Smith scrambled all over half the field before throwing.
"If you score touchdowns down there, a different game," Smith said. "The end of the game was disappointing as well. Having a chance to win it and don't get it done."
Arizona sacked Smith five times after getting five against Dallas in its 19-13 overtime win over the Cowboys a week earlier. The loss ended a five-game 49ers winning streak in the series.
"I thought we were in position to win this football game really at all times during the game," coach Jim Harbaugh said. "We didn't get it done and we are disappointed about that. We look forward to seeing how our team responds to some adversity. We haven't had a lot of it this year."
Frank Gore rushed for 72 yards on 10 carries for the NFC West champion 49ers, including a 37-yard touchdown run that put San Francisco ahead 19-7 early in the second half. He broke 1,000 yards rushing for the fifth time in his career, but didn't do much damage after that.
Smith completed 18 of 37 for 175 yards and no TDs.
The 49ers were without standout inside linebacker Patrick Willis, who missed the second game of his career, because of a right hamstring injury.
Still, the 49ers' defensive players felt they had failed in areas where they had succeeded almost always this year.
"As a secondary, we felt like it was really on our shoulders and we lost this football game collectively," safety Donte Whitner said. "It doesn't matter what the offense does, if they can't get it in, all we need are field goals. We felt like we let the team down and we're going to go back to the drawing board and we'll be ready."
Kolb, in his second start after missing four games with a right turf toe and bruise on the side of his same foot, was hurt when he faded to pass and was hit by Justin Smith as he threw. It was one of two forced fumbles and two sacks for Smith.
The oddest moments of the game came in the second quarter with San Francisco leading 6-0.
On third-and-7, Skelton scrambled for a first down but, on a hit by Smith, fumbled the ball and San Francisco recovered at its 47. The 49ers moved to the Arizona 40, where Akers lined up for a 50-yard field goal attempt. But it was a fake, with holder Andy Lee tossing to backup center Jonathan Goodwin, lined up as a tight end, for the apparent score.
The whistle blew mid-play, though, with Arizona challenging the previous play, a pass from Alex Smith to Kyle Williams. But the replay system wasn't working, and the play had to be repeated. This time, Akers' 50-yard attempt was wide right, his first miss from 50 and beyond in seven tries this season.
The next play, Skelton threw over the middle to Doucet, and with the help of Fitzgerald's block, he raced 60 yards for the score and Arizona led 7-6 with 7:10 left in the half.
The 49ers responded with a 10-play, 69-yard drive, but again stalled deep in Arizona territory. Akers' 27-yard field goal put the 49ers back on top 9-7 with 1:58 to play.
Notes: Fitzgerald is the eighth player in NFL history to top 1,000 yards receiving in six of his first eight seasons. ... For the second week in a row, all five Arizona sacks were by different players. ... Dashon Goldson left the game with a hip injury on the play Fitzgerald scored. ... San Francisco lost starting left Joe Staley in the first quarter with a head injury.