Billy Butler opened the scoring with a two-run double and compiled three hits for the game, while James Shields struck out 10 to pick up career win No. 100 in the Royals' 6-1 victory over the White Sox.
Shields (13-9) outdueled counterpart Chris Sale in style, as the 31-year-old reached double-digit strikeouts for the second time in three starts. He went seven innings, with his only blemish a home run by Gordon Beckham.
With the victory, Kansas City reached the 85-win plateau for the first time in 24 years. Emilio Bonifacio went 2-for-4 and knocked in a pair of runs, while Alex Gordon and Lorenzo Cain finished with an RBI apiece.
Sale (11-14) had allowed just two runs in 24 innings against Kansas City this season coming in, but gave up twice that amount on Friday over just 5 1/3 frames. He was tagged for nine hits and struck out five.
The White Sox have dropped the first two of this four-game set and 22 of their last 28 overall. Without a win in one of these last two games, Chicago will notch its first 100-loss campaign since 1970.
Shields had a three-run cushion to work with before he even took the mound. Butler came up with runners aboard and brought both in with a double to center, then came in to score on Cain's single.
An RBI single from Bonifacio made it 4-0 in the fourth, and by the end of the bottom half, Shields had accumulated seven strikeouts. Gordon and Bonifacio added back-to-back RBI hits in the sixth to push the Royals' edge to six.
Shields fanned batter No. 10 to start the bottom half of the frame before Chicago finally got on the board with Beckham's homer to left.
Wade Davis closed it out for Shields, pitching a pair of perfect frames to secure the milestone victory for the right-hander.
Shields has won nine of his last 13 starts ... The last time Kansas City had at least 85 wins was in 1989 ... Alexei Ramirez had half of Chicago's four hits ... The Royals were 6-for-14 with runners in scoring position.