KANSAS CITY -- No matter how you slice the numbers, the Royals' offensive woes keep deepening.

White Sox starter John Danks played the villain role on Friday, putting the clamps on the Kansas City offense in a 4-0 loss at a sold-out Kauffman Stadium.

Not even Zack Greinke, the Royals' beacon of light, could save the day.

The Royals have scored just three runs in their past four games -- and 23 over their past 10. They haven't scored more than four since putting up five in a June 21 game against the Cardinals, which they lost, 12-5.

"It wears on you," Royals manager Trey Hillman said.

The Royals lost their fourth in a row, fifth in their last seven and 10th in their last 14. They dropped to 13 games under .500 for the first time this season. And to put things in perspective, the Royals are 15-35 since May 7.

Safe to say, this isn't how the Royals drew it up. They had Greinke and his sub-2.00 ERA on the mound, a packed crowd on a clear night in Kansas City and a postgame fireworks show.

Instead, the Royals' offense never could find a spark.

That frustration might have come to a head in the eighth and ninth innings. Twice the Royals put multiple runners on, and twice they grounded into crippling double plays.

Alberto Callaspo bounced into a double play with the bases loaded and one out in the eighth, and Miguel Olivo grounded into a double play with two on and nobody out in the ninth.

"We get guys on and we're just not able to bring them in," left fielder David DeJesus said. "Double plays have been killing us the past couple days."

But that was just the tip of a night of frustration at the plate.

The Royals went hitless until Luis Hernandez singled in the bottom of the third. And they didn't record another hit until 11 batters later, when DeJesus singled with two outs in the sixth. Callaspo followed with another single to left, but the Royals' first scoring chance ended when Billy Butler grounded out to third.

Danks struck out five during 7 1/3 scoreless innings and was rarely challenged until leaving with the bases loaded in the eighth. But reliever Scott Linebrink worked out of that jam and Danks (7-6) picked up the win.

"It's tough," DeJesus said. "We want to go out there and score runs as an offense, but it's one of those things right now. Danks really pitched good. They're paid to do their job."

With the Royals' offense stalled, Greinke had little room for error. And after dominating Chicago in three starts this season, Greinke ran into two old foils in the White Sox lineup.

Chicago's bats nipped at Greinke's heels all night, but it was mostly Scott Podsednik and A.J. Pierzynski taking the big bites.

Pierzynski homered in the third and finished with three hits, and Podsednik finished 3-for-4 with two runs scored. Pierzynski is now hitting .432 (16-for-37) against Greinke, while Podsednik raised his career average against the right-hander to .533 (16-for-30).

"Not one of my best," Greinke said. "Mainly just a couple guys always beat me, and they did it again today in Podsednik and Pierzynski. I've thrown everything, they've hit everything. It happens every time."

Greinke lasted six innings and allowed four runs -- two earned -- on nine hits, and his Major League-leading ERA rose to an even 2.00.

Greinke surrendered the homer to Pierzynski with one out in the second, and an error by Callaspo allowed two more runs to score in the top of the third. The Royals had a defensive shift on and Callaspo was playing in short right field. He charged hard, but the ball rolled just under his glove.

"The error obviously hurt," Hillman said. "You play the regular shift on Thome, and he hit the ball uncharacteristically soft. I still think he's out if we make the play."

Greinke dropped to 10-4 on the season, but did manage six strikeouts.

"He's still a good pitcher and knows what he's doing," Pierzynski said. "He's still throwing 96 or 97. I don't know. We just try to battle and get good pitches and don't miss them."

Greinke allowed another run on three more hits in the top of the fourth, before posting scoreless frames in the fifth and sixth. He exited after throwing just 82 pitches.

Greinke said he felt OK, but Hillman said he didn't want to put Greinke -- who entered the game leading the Majors in innings pitched -- in harm's way.

"I'm more tired than usual because I have thrown more than usual," Greinke said. "Every pitcher is tired by now."

It's hard not to feel a little weary after a stretch like this.

"All we can do is just keep coming tomorrow," DeJesus said.