NEW ORLEANS -- While winning 11 of their 13 games this season, the 49ers have done it in a lot of different ways.

On Sunday, they won a Big 12-style shootout against the New Orleans Saints. The 49ers’ offense picked up the slack for a rare poor performance from the defense in a 48-46 victory at the Superdome.

The 49ers earned an important win as they continue to battle the Seattle Seahawks for the NFC West title and, possibly, home-field advantage in the playoffs.

But ...

“If you start feeling good about yourself, it’s going to be over fast and if you get down, you knock yourself out and don’t give yourself a chance,” 49ers coach Kyle Shanahan said. “It’s going to come down to the last week with the teams in the NFC.”

Here are the 49ers’ grades from their Week 14 victory:

Rushing Offense

The 49ers’ running game got it going on Sunday, averaging 6.8 yards an attempt on 24 run plays. Raheem Mostert had another strong performance, rushing for 69 yards and a touchdown on 10 carries.

Matt Breida returned to action and gained 54 yards on six rushing attempts. Tevin Coleman started but managed just 6 yards on three attempts.

Wide receiver Deebo Samuel got involved with two carries for 33 yards, including a 31-yard run. Jimmy Garoppolo picked up a big first down in the fourth quarter with a 2-yard scramble.

The offensive line did a fine job of opening the holes for the running game.

Grade: A

Passing Offense

Jimmy Garoppolo had his fourth consecutive game with a passer rating of 110 or better. He completed 26 of 35 passes for 349 yards with four touchdowns and one interception. His passer rating was 131.7.

Emmanuel Sanders caught seven passes for 157 yards, including a 75-yard touchdown on a long heave down the field from Garoppolo. Sanders also was on the other side of a scoring pass, when he threw a 35-yard touchdown strike to Mostert.

Tight end George Kittle provided the play of the game when he caught a short pass and turned it into a 39-yard gain on a fourth-and-2 play in the final minute. An additional 15 yards on a facemask penalty put the 49ers in position for the game-winning field goal.

George Freakin’ Kittle 😱😱😱pic.twitter.com/y7ywfKYM2L — 49ers on NBCS (@NBCS49ers) December 8, 2019

Receiver Kendrick Bourne caught three passes, and two of them were 6-yard touchdown receptions.

Grade: A

Rushing Defense

The 49ers' run defense did a good job against Alvin Kamara, holding him to just 25 yards on 13 rushing attempts. But Latavius Murray found some wide lanes to run through. Murray had 69 yards on seven rushing attempts.

The 49ers had too many missed tackles. It was not a sharp performance. But the run defense came up with a big play in the second half when D.J. Jones stripped Kamara of the ball, leading to DeForest Buckner’s recovery at the New Orleans 20.

Nick Bosa threw Saints all-purpose offensive threat Taysom Hill for a 6-yard loss on a designed run play on a third-and-1 in the second quarter to force the Saints’ first punt of the game.

Grade: B-minus

Passing Defense

Drew Brees basically had his way with the 49ers’ defense. He completed 29 of 40 passes for 349 yards with five touchdowns and no interceptions.

Brees led the Saints down the field for the go-ahead touchdown with :53 remaining. The only issue was that he left the 49ers too much time to respond with the winning points.

The 49ers entered the game with the NFL’s best pass defense. They did not look the part on Sunday, as corners Richard Sherman, Ahkello Witherspoon and Emmanuel Moseley each had their difficulties. Safety Marcell Harris, making his first start of the season, struggled in place of injured Jaquiski Tartt.

Brees got rid of the ball quickly, and the 49ers were unable to register a sack.

Grade: D-minus

Special Teams

There were a lot of blemishes on the 49ers’ special-teams ledger that do not look nearly as bad after Robbie Gould kicked a 30-yard field goal with no time remaining to supply the 49ers with the winning points.

Also, one of the best plays of the season came when Tarvarius Moore locked up Saints gunner Tre’Quan Smith on a fake punt attempt. There cannot be pass interference when a team lines up in punt formation, and Moore knew that rule in order to break up the pass.

The 49ers’ coverage units did not play well. Saints return man Deonte Harris averaged 18.5 yards on two punt returns, and he had a 31.0 average on five kickoff returns.

Punter Mitch Wishnowsky’s net average on his three punts was just 32.3 yards. He had just three touchbacks on his eight kickoffs. His only touchback came when the ball was moved to the 50-yard line following a New Orleans penalty. Saints kicker Wil Lutz had eight touchbacks on his nine kickoffs.

Grade: B-minus

Overall

In a game that reminded veteran 49ers left tackle Joe Staley of the back-and-forth 49ers-Saints playoff game in January 2012, the 49ers got the final word.

[RELATED: 'You're balling': Garcia praises Jimmy G for recent play]

It was not a masterpiece in a lot of ways, as the defense struggled and the 49ers were called for 10 penalties, totaling 67 yards. But, man, was it entertaining.

This was a huge win for the 49ers to come to New Orleans and beat the Saints in an emotional, offensive battle. The 49ers still control their own destiny in the race for the NFC West and homefield advantage in the playoffs.

Grade: A