World number two Naomi Osaka's 23-match winning run came to an abrupt end as she lost 6-0 6-4 to Maria Sakkari in the Miami Open quarter-finals.
Japan's Osaka was stunned by the Greek 23rd seed's aggressive start, making 12 unforced errors and not landing one winner in a 21-minute opening set.
Osaka, 23, hid under a towel as she tried to compose herself and fought back to lead 3-0 in the second set.
But Sakkari, from 4-1 down, broke twice to win five games in a row for victory.
Sakkari, 25, celebrated with a loud roar as she earned the biggest win of her career, triumphantly hugging her team after beating a player ranked in the world's top three for the first time.
The world number 25 will play either Canadian eighth seed Bianca Andreescu or unseeded Spaniard Sara Sorribes Tormo in the last four.
"I'm so excited, I'm super happy. I have no words," said Sakkari, who set up the meeting with Osaka after fighting off six match points against American Jessica Pegula in the last 16.
"Winning a match like that, where I faced six match points, helped me a lot today. I have made a lot of comebacks and that is probably my trademark."
Osaka's defeat means she will not be able to regain the world number one ranking from Australia's Ashleigh Barty, who faces Ukraine's Elina Svitolina in the other semi-final.