Florida took the 3-2 lead during a power play with 3:30 left in the game after the Penguins were called for too many men on the ice at 15:55. During a scrum in front of the Penguins net and in traffic, Weiss was able to poke in the puck through Johnson's legs.
"(Kris Versteeg) was jamming away at it and I was kind of off to the side and just moved in. We were just swiping away and I guess it went in somehow," said Weiss, who also had two assists and blocked five shots.
The Panthers were happy to reward their fans with a win, after losing four home games, three in shootouts.
"It's huge. We've been decent on the road and not so great at home," Weiss said. "The three shootout losses could have gone either way, but at the same time we've got to find a way to get two points at home. We were able to do that tonight against a real good hockey team."
The Penguins tied it 2-all when Staal grabbed a loose puck, slid it along the front of the crease, then wristed it past Theodore at 12:38 of the second.
"We got a fortunate one there," Staal said. "We played well for the rest of that period. We came out flat in the third, gave them a lot of chances, a lot of opportunities to take the game. We needed a better effort to win that game."
Staal was one of the few bright spots for the Penguins, according to coach Dan Bylsma.
"He was leading the way, right from the shift he scored the goal on," Bylsma said. "A lot of his play in the game, he was our best performer tonight. At the halfway point of the game he took the team on his back, PK, power play, defensively, but also offensively. It was a big effort."
For the Panthers, Weiss played one of his best games of the season.
"Stephen is really the guy that runs the engine right now," Panthers coach Kevin Dineen said. "He does so many good things for us and tonight he needed to do it on the defensive side and then he had three points. When he's getting that kind of production and also going big minutes against really big, strong men, that's a pretty valuable guy. He had a heck of a game for us."
The Penguins took a 1-0 lead just 1:09 in. Kunitz deflected a shot from Pascal Dupuis toward the net. Theodore blocked it with his chest, but Kunitz poked at the rebound and pushed the puck back into the net.
The Panthers tied it when Campbell took a pass from Versteeg in front and backhanded the puck under Johnson's left arm at 7:28 of the first.
The Penguins were disappointed that the mental mistake of having too many men on the ice resulted in the penalty that contributed to the loss.
"It's part of the game. If you go around to all these 22 guys in the dressing room I don't think there's anyone who tries to make that mistake," Johnson said. "It's just one of those things that happens. It ruined a pretty good game up until then."
Pittsburgh captain Sidney Crosby participated in Friday's practice, but sat out his 61st consecutive game Saturday due to two concussions he sustained last January. ... Staal has points in his last four games and has scored nine goals and 12 points in his last 13 games. ... Weiss' goal and two assists leave him with 351 career points. ... Florida G Jacob Markstrom was recalled on Saturday from San Antonio in the AHL to give Scott Clemmensen a few days rest because of soreness. ... RW Michal Repik was recalled from San Antonio on Friday to replace center Marcel Goc, who missed his second straight game with an undisclosed injury.
Copyright by STATS LLC and The Associated Press
Arena: BB&T Center Location: Sunrise, Florida
Referees: Paul Devorski, Chris Rooney Linesmen: Brian Murphy, Brian Mach
Attendance: 18,071 (93.9% full)
Team Stat Comparison
Power Play Goals
Power Play Opportunities
Shots on Goal
Chris Kunitz (7)
Assist: Pascal Dupuis
Brian Campbell (2)
Assists: Kris Versteeg, Stephen Weiss
Tomas Fleischmann (8)
(Power Play) Assists: Stephen Weiss, Dmitry Kulikov
Jordan Staal (10)
Assists: Pascal Dupuis, Matt Niskanen
Stephen Weiss (7)
(Power Play) Assists: Kris Versteeg, Tomas Fleischmann