CHICAGO - There is no big secret to Danny Duffy's July success. No mechanical adjustments. Nothing like that at all.

The Kansas City Royals play great defence, and Duffy is putting his fielders to work.

Duffy took a shutout into the ninth inning in the longest outing of his career, and surging Kansas City beat Chris Sale and the Chicago White Sox 4-1 on Sunday.

"We needed him to stand up today big time, and he did," Royals manager Ned Yost said.

Duffy (4-4) was replaced by Joe Blanton after Tyler Saladino led off the ninth with his first career homer. The left-hander allowed six hits, struck out four and walked one while improving to 2-0 with a 1.33 ERA in three starts this month.

"I'm finally starting to learn that when you have the best defence in the league behind you, all you've got to do is execute," Duffy said.

Lorenzo Cain and Paulo Orlando homered as Kansas City (55-35) moved a season-high 20 games above .500. Blanton got three outs for his first career save in his 278th major league game.

Helped by their stellar defence — shortstop Alcides Escobar, second baseman Omar Infante and first baseman Eric Hosmer each made a couple of solid plays in the series finale — the AL Central leaders took three of four from the White Sox and have won 11 of 14 overall.

"I was sitting there at the end of the game trying to decide which was more impressive, Danny's outing or our defence today," Yost said. "It's a tough call."

Chicago (42-48) lost for the fourth time in five games, making it more likely that general manager Rick Hahn will look to sell ahead of the July 31 non-waiver trade deadline. The White Sox are last in the Central, with major league-leading St. Louis coming to town for a two-game set beginning on Tuesday night.

"We're going to play on Tuesday," manager Robin Ventura said of possible changes. "I know everybody wants to talk about it but we're going to play as hard as we can against St. Louis."

Sale (8-5) was tagged for a season-high 11 hits in 6 1/3 innings in his first start since July 11. The All-Star lefty gave up four runs, struck out six and walked one.

Sale allowed five hits in the first three innings, but Hosmer's RBI single in the first accounted for Kansas City's only run before Cain hit a leadoff drive in the sixth for his 10th homer. Alex Rios reached on a one-out single in the seventh before Orlando connected for his fourth homer.

"This is not a good team to leave fastballs over the plate to," Sale said. "They take advantage of every opportunity you give them and that's what happens."

Cain also had a tiebreaking homer in the 13th inning of Kansas City's 7-6 victory on Saturday. The All-Star centre fielder went 1 for 4 and is batting .473 (26 for 55) with four homers and 12 RBIs in his last 14 games.

STEPPING UP

Blanton, a starter for most of his career, was pressed into action in the ninth after Kansas City split a doubleheader on Friday, and then used seven relievers on Saturday.

The right-hander had allowed at least one run in each of his previous five outings, but he struck out Abreu and Cabrera before Avisail Garcia bounced out to end the game.

TRAINER'S ROOM

Royals: RHP Kris Medlen will come off the disabled list on Monday, taking another step in his comeback from his second major elbow surgery. Medlen, who last pitched in the majors in 2013 with Atlanta, will join Kansas City's bullpen for the start of a three-game series against Pittsburgh. "He's going to be a long guy, but these things always seem to work themselves out, so I envision him long term being a starter," Yost said.

White Sox: Reliever Matt Albers was activated from the 15-day disabled list and pitched 2 2/3 scoreless innings. He broke his right pinkie finger during a brawl with the Royals on April 23. INF Conor Gillaspie was designated for assignment to make room on the roster.

UP NEXT

Royals: RHP Yordano Ventura (4-6, 4.73 ERA) makes his second start since coming off the disabled list when the Royals host Pittsburgh on Monday night. RHP A.J. Burnett (7-3, 2.11 ERA) goes for the Pirates.

White Sox: Following an off day, the White Sox host St. Louis on Tuesday night, with LHP Carlos Rodon (3-2, 3.80 ERA) starting against the Cardinals.

___

Jay Cohen can be reached at http://www.twitter.com/jcohenap