James Milner scored a late penalty to keep Aston Villa in the hunt for a Champions League spot with a 1-0 derby win over Birmingham at Villa Park.
The England midfielder converted from the spot in the 83rd minute after Blues defender Roger Johnson had been adjudged to have brought down Villa striker Gabriel Agbonlahor.
Villa are now level on points with fourth-placed Tottenham although they have played a game more and have an inferior goal difference.
City keeper Joe Hart was called into meaningful action for the first time when he turned aside a 20-yard effort from Stylian Petrov.
But a mistake by Richard Dunne almost presented City with the opener. The central defender allowed a throw out from Brad Friedel to slip under his foot straight into the path of Seb Larsson.
The best chances continued to fall City's way and Friedel made another superb save to deny Lee Bowyer from close range after Craig Gardner's initial shot had been blocked.
With 20 minutes remaining, Villa boss Martin O'Neill decided to make his first change with Emile Heskey replacing the ineffective John Carew.
Former Birmingham player Heskey almost made an instant impact. He played a one-two with Agbonlahor and saw his shot deflected inches past the post by a crucial touch from Hart.
Dunne flashed a header over the bar from an Ashley Young corner but with seven minutes remaining Villa finally broke the deadlock.
Johnson looked like he got the ball when he challenged Agbonlahor in the box but referee Martin Atkinson decided he had brought down the Villa player and pointed to the spot. Stephen Carr and Johnson were booked for dissent before Milner hammered in the spot-kick past Hart.