Kumar Sangakkara hit a fighting hundred and spinner Ajanta Mendis took four wickets to power Sri Lanka to a 64-run win over Pakistan in their Asia Cup Super League clash in Karachi on Sunday.
The left-hander scored 112 to lift Sri Lanka to 302-7 after Pakistani paceman Sohail Tanveer notched up career-best figures of 5-48.
Mendis, who took 4-47, then unleashed his quality spin to restrict Pakistan to 238-9 in 50 overs on a slow National Stadium pitch.
For Pakistan, Misbah-ul Haq enjoyed a late flurry, smashing four sixes and three fours during his 70-ball 76 but by then the asking rate of 15 an over was beyond Pakistan's reach.
Skipper Shoaib Malik also hit a subdued 52 off 79 balls with three boundaries but the Pakistani batsmen could not cope with the accurate Sri Lankan bowling.
Sri Lanka, who qualified for the Super League stage with two carry over points, boosted their chances of reaching the July 6 final with the victory. They now have four points and take on Bangladesh on Monday.
The defeat left Pakistan all but out of the event. They now have to win both their matches against India (Wednesday) and Bangladesh (Friday) and hope India also lose to Sri Lanka to have a chance of qualifying for the final.
India beat Bangladesh by seven wickets in the first match of the Super League on Saturday.
All four teams play each other once to decide the finalists.
Pakistan had a disastrous start to their run chase, losing Salman Butt off the first ball of their innings, bowled by paceman Chaminda Vaas for nought.
Malik added 72 for the second wicket with Younus Khan (47) but the rest of the batsmen found the going tough as Mendis made life difficult for them with his beguiling action.
Mendis removed Mohammad Yousuf lbw for 19, lured Malik out of his crease for a stumping, then trapped debutant Mansoor Amjad in front for five before ending Misbah's fight.
Earlier, it was left-hander Sangakkara who set the foundation for Sri Lanka's imposing total after they were sent into bat by Pakistan.
The 30-year-old added 93 for the fourth wicket with Chamara Silva (46) and 88 for the third with Chamara Kapugedera (43) to boost Sri Lanka after Tanveer removed Sanath Jayasuriya (eight) and skipper Mahela Jayawardene (29).
Sangakkara, who hit 101 against Bangladesh in the first round in Lahore, took 56 balls to reach his half-century and then opened up, hitting debutant leg-spinner Amjad for a six on his way to his ninth one-day hundred.
It took him 96 balls to reach his century, his second against Pakistan. In all Sangakkara hit ten boundaries and one six.
Kapugedera hit two boundaries and two sixes during his 58-ball knock, while Silva notched five boundaries during his 48-ball cameo.
Tanveer returned for his third spell to have Silva caught behind, bowled Sangakkara and removed Thilan Thushara (28).
Tanveer's previous best of 4-34 came against Zimbabwe at Hyderabad earlier this year.