MINNEAPOLIS (AP) -- Zach Stewart 's sinker and slider were tumbling over the plate. He stood tall and stayed steady on the mound.
The Minnesota Twins couldn't hit his pitches. The Chicago White Sox couldn't stop praising the rookie's composure.
Stewart took a perfect game into the eighth inning and finished with a one-hitter as the White Sox completed a doubleheader sweep of the Twins with a 4-0 victory on Monday night.
"It was a lot of fun. It was just one of those things," Stewart said. "In the 'pen, the ball was coming out good. I could tell it was going to be somewhat of a good night. I didn't know it was going to be that good. But it just felt good from the beginning."
The Twins were 21 up and 21 down against Stewart until Danny Valencia 's leadoff double in the eighth spoiled the right-hander's bid to become the 21st rookie in major league history to throw a no-hitter.
"He didn't really have stuff that was overpowering. He was just locating really well," Valencia said. "He had all his pitches going, and he was throwing everything for a strike."
The 24-year-old Stewart (2-3), whose only previous major league win came at Target Field last month, struck out nine in the first complete game of his career.
This was only Stewart's fifth start for the White Sox - and eighth of his career - after being traded to Chicago by Toronto on July 27.
With black curly hair flowing out from under the back of his cap and an intense expression on his face, Stewart made up for a rough start against the Twins last week in Chicago. He gave up seven hits and six runs in 4 2-3 innings that time.
This night was different.
"I thought it was possible the way he was throwing the ball," catcher Tyler Flowers said.
The White Sox won the afternoon game 2-1.
After their long-shot chance of chasing down division-leading Detroit was chewed up during a three-game sweep by the Tigers over the weekend - by a combined score of 35-11 - the White Sox were able to put the discouragement behind them and enjoy the day. That came at the expense of their chief rival, the American League Central champions of the last two years.
"It was fun for probably everybody but me. It was pretty stressful back there. I didn't want to screw up and cause something bad to happen," Flowers said.
Stewart dominated a lineup featuring only two regulars from opening day - Joe Mauer and Valencia. Mauer got good wood on the ball, sending an opposite-field fly to the warning track in the fourth inning and smashing a line drive that zipped straight to shortstop Alexei Ramirez to end the seventh.
Third baseman Brent Morel pitched in, too, making a slick pickup of a sharp one-hopper hit by Trevor Plouffe in the fourth and backhanding a hard grounder down the line by Drew Butera to end the sixth.
But Stewart didn't need much help.
He worked quickly and enticed the Twins to swing at his first offering often, needing only 65 pitches to complete six innings. Valencia finally had him figured out, though. He hit a hard liner that hooked foul and bounced into the seats behind third base before delivering a sharp drive to right field that skipped away from defensive replacement Alejandro De Aza for a sure double.
"I guess, if anything, that's a good way to lose one if you're going to lose on. That's a legitimate hit," Chicago designated hitter Paul Konerko said.
Valencia saw eight pitches in that at-bat and fouled off three straight before straightening one out on a 2-2 fastball. But Stewart shrugged that off and retired the last six batters he faced, striking out three.
"I thought he was going to crack a smirk or something out there, but he was like, 'All right. Let's get the next guy.' So that's good to see,"' Flowers said of his visit to the mound after the double.
Stewart just smiled when asked about his ability to stay poised.
"Yeah, I've given up hits before, so I guess you just get used to it," he said.
Said manager Ozzie Guillen : "He's very comfortable out there. He seems relaxed, not letting anything bothering him. That's a good sign."
Morel drove in two runs with a seventh-inning single, and Alex Rios had three hits for the White Sox. Twins starter Scott Diamond (1-3) gave up eight hits, two walks and two runs in five innings.
Philip Humber (9-8) set the tone in the matinee by pitching seven scoreless innings to snap a four-game losing streak. During that slide, the starters posted a 12.50 ERA while failing to get past the fifth inning each time.
Anthony Swarzak (3-6) took the loss for the Twins in the opener, allowing seven hits in eight innings.
NOTES: LHP Jake Peavy (6-7) pitches for the White Sox on Tuesday night against RHP Liam Hendriks of the Twins. Hendriks will make his major league debut. Peavy is 1-2 with a 7.23 ERA in his last four starts. ... Stewart was acquired from the Blue Jays with reliever Jason Frasor in exchange for Edwin Jackson and Mark Teahen .