MINNEAPOLIS -- The Oakland Athletics' slumping offense strung some hits together in a much-needed victory.
Seeing the A's offense have that much success was enough for the Minnesota Twins to send Kyle Gibson to the minors.
Cotton (3-3) gave up three runs and three hits, and Stephen Vogt had two hits and two RBIs to help the A's avoid a three-game sweep. Santiago Casilla struck out Miguel Sano with the bases loaded in the ninth for his fifth save in six tries, Sano's fourth strikeout of the afternoon.
"There's certain games that are more important than others," A's manager Bob Melvin said after a 2-7 trip. "This was a big one for us, especially when we had a lead early on. We need to finish this game off and have a better feeling going home because better part of this road trip, every day was miserable."
Gibson (0-4) gave up four runs, eight hits and three walks in four innings and was demoted to Triple-A Rochester after the game.
"It's not working," Twins manager Paul Molitor said. "It's putting us in a bad spot more times than not here early in the season."
The A's, who had scored two runs or fewer in six of their previous nine games, tied a season high with 14 hits. Matt Joyce had two hits, two walks and an RBI for Oakland.
Danny Santana, Eddie Rosario and Eduardo Escobar homered for Minnesota, which threatened against an erratic Casilla in the ninth. The closer fell behind Sano 3-0, but battled back to win the confrontation when Sano tried to check his swing but couldn't hold up.
"I was looking for a fastball in the middle. He threw me cutters inside," Sano said. "They never make a mistake over the middle."
Athletics: C Josh Phegley was placed on the 7-day disabled list with a concussion after taking a foul tip off of the mask on Wednesday night. C Bruce Mawell was recalled from Triple-A Round Rock to take Phegley's place. Melvin said Phegley felt markedly better the day after as opposed to a previous concussion. ... LHP Sean Manaea (shoulder) did not throw a bullpen on Thursday morning as originally scheduled. Melvin said he had "a little soreness" and just played long toss.
Twins: Molitor said RHP Nick Tepesch will start on Saturday against the Red Sox. Tepesch has not pitched since being called up from Triple-A Rochester on April 24. Molitor said he likely would be limited to about 75 pitches.
BUXTON'S ROUGH DAY
Twins CF Byron Buxton misplayed a fly ball from Khris Davis in the first inning that helped the A's get on the board. In the second inning, he chased a drive from Vogt to the wall, but slammed into it so hard that the door to the bullpen opened.
In the fifth, he hit the wall hard again, knocking his hat off as he tracked down a deep drive from Matt Joyce. Buxton was removed from the game and passed the initial concussion tests, but will be evaluated again on Friday.
"I don't know that I've had a more frustrating stretch that I can even remember," he said after his ERA ballooned to 8.20. "I completely understand where they're coming from and I've got things that I need to work on. It's a whole lot easier to work on things in Triple-A than when you're trying to win games in the big leagues."
With the bases loaded in the eighth inning, Healy was called out on strikes by plate umpire Mike Muchlinski. Healy argued that the curveball from Ryan Pressly was high.
Muchlinski ejected him, but the umpire's day didn't get any better after that. In the ninth inning, Vogt didn't get a glove on a breaking ball from Casilla, and it hit the umpire right in the groin.
Muchlinski fell to the dirt, but remained in the game.
Athletics: Oakland heads back home for six straight games, starting with Detroit on Friday night. RHP Andrew Triggs (4-1, 1.84) will start the opener for the A's.