KANSAS CITY, Mo. -- Shane Costa could not hide his excitement after the best game of his brief career.
The rookie outfielder, who did not even expect to be here this quickly, had his first three-hit game and hit his first major-league home run Tuesday night, leading the Kansas City Royals to a 3-2 victory in the Los Angeles Dodgers' first game in Kauffman Stadium.
"It's awesome," Costa said. "This is what I dreamed about when I was a kid. That's as good as it gets right there."
David DeJesus hit a two-run homer in the first for the Royals, who improved to 9-4 under new manager Buddy Bell. They were 8-25 when Tony Pena resigned on May 10.
Costa, who also had two singles, hit a tiebreaking shot in the fifth.
"Hopefully there's a lot more of those in the future," he said.
Hee-Seop Choi homered in the first inning for the Dodgers, giving him four home runs in five at-bats. The first baseman has hit seven homers in his last four games, including a career-best three in his previous game on Sunday.
Mike MacDougal pitched the ninth for his seventh save.
The Dodgers stranded nine runners.
"Tonight's game simply boils down to one thing -- we left too many men on base," manager Jim Tracy said. "We had some opportunities, especially early in the game, and they got away from us."
Angel Berroa singled leading off the first for the Royals and DeJesus hit Jeff Weaver's next pitch 414 feet over the wall in right-center for his third home run and a 2-1 lead. Weaver then struck out three of the next four batters and did not allow a runner as far as second base until Mike Sweeney doubled leading off the fourth.
J.D. Drew hit a one-out homer in the third to tie it 2-all.
Runelvys Hernandez (4-7) went six innings in his third consecutive solid start, giving up eight hits and two runs without a walk. Rookie Ambiorix Burgos relieved Jeremy Affeldt with one on and none out in the eighth and struck out the side despite hitting Olmedo Saenz with a breaking pitch.
Weaver (6-6) was coming off his best outing of the year, a 3-1 victory over Detroit when he allowed one run and a season-low two hits in seven innings. He was relieved by Duaner Sanchez starting the eighth after giving up three runs and seven hits with six strikeouts.
"He pitched a good ballgame," Tracy said of Weaver. "He went seven innings, he gave up three runs. More times than not, you think if your starting pitcher goes out there and pitches as well as he did tonight and gives up three runs, your chances to win the game are fairly genuine."
Weaver has struck out 13 in his last two outings.
"That's the roll I need to keep on, especially with how banged-up we are," Weaver said. "I felt good. The first inning kind of set the tone. We knew they weren't going to roll over. They were here to battle."
Costa was called up at the end of May from Double-A Wichita, where he thought he'd be all year.
"I was just shocked, completely shocked," he said. "I didn't expect to be here this early, not by any means. I called everyone I could."
Choi, batting second, hit a 1-2 pitch from Hernandez. The 338-foot line drive to right raised his season total to 13 homers.