Kilmarnock claimed victory over Hearts in a controversial Scottish Premier League encounter.
Ian Black was sent for the home side after 16 minutes for a tackle on Dean Shiels, but Hearts went on to dominate the first half.
However, Killie won a penalty when Marius Zaliukas felled Paul Heffernan and Shiels converted on 55 minutes.
Hearts manager Paulo Sergio was sent to the stand and the home side were unable to force an equaliser.
Kilmarnock's third successive win at Tynecastle keeps them in a strong mid-table position and to within three points of fifth-placed Hearts.
Sergio's side imposed themselves early on and Danny Grainger's free-kick swerved wide of Anssi Jaakkola's left-hand post.
Ryan Stevenson and Black were also off target with a header and long-range shot respectively as the hosts continued to press.
Andy Webster headed over at the back post from a Hearts corner moments before the home side were reduced to 10 men.
Black slid in on Dean Shiels after the Kilmarnock player had released the ball and the challenge was deemed as a sending off offence by referee Alan Muir.
In spite of this, it was still the Edinburgh side who continued to threaten and Rudi Skacel juggled with the ball before trying an overhead kick that was off target and then Stevenson flashed a shot across the face of Jaakkola's goal.
Hearts claimed unsuccessfully for a penalty after the ball seemed to trickle down the arm of Alex Pursehouse in the penalty area after the Killie player mis-timed his headed clearance.
Pursehouse was soon replaced with David Silva and Jaakkola made a stunning save near the end of the half to keep the score at 0-0.
Grainger's inswining corner made it all the way to the back post, where Stevenson was lurking and the forward's downward volley was scooped off the line by the keeper.
Killie finally threatened when the ball broke to Silva on the edge of the box, but his shot was deflected out for a corner.
Hearts continued to look the more likely at the start of the second half, with Stevenson setting up Skacel for a shot that was well saved by Jaakkola and the ball was whipped away from Stevenson as he tried to convert the rebound.
And then, from a rare break, the visitors won a penalty.
Heffernan was released and the striker was bundled over by Zaliukas as he progressed into the penalty area, the referee eventually pointing to the spot after weighing up the decision.
Hearts protested and yellow cards were handed out to Skacel and Zaliukas before Shiels coolly stroked home the spot-kick.
Jamie Hamill sliced a shot over as Hearts tried to find a leveller and the former Kilmarnock player then had a long-range free kick held by Jaakkola.
Sergio was dismissed after an angry exchange with the officials.
Webster and team-mate David Templeton headed wide and Silva had a couple of shots as both sides missed chances in the closing stages.
Live Text Commentary
Full Time The referee blows for the end of the match.90:00 +2:42
Effort from the edge of the area by Gordon Smith goes wide of the left-hand post.90:00 +2:18
Free kick awarded for an unfair challenge on Andy Webster by Danny Racchi. David Templeton restarts play with the free kick.90:00 +0:59
Header from just outside the box by Gordon Smith goes over the bar.90:00 +0:19
David Silva takes a shot. Marian Kello makes a save.89:32
The assistant referee flags for offside against Paul Heffernan. Indirect free kick taken by Marian Kello.88:51 Substitution
Substitution Arvydas Novikovas replaces Daniel Grainger.88:41
Effort from outside the area by David Silva goes wide right of the goal.86:12
Jamie Hamill takes the free kick.86:12 Booking
Booking David Silva shown a yellow card.86:08
Jamie Hamill fouled by David Silva, the ref awards a free kick.85:35
Shot from just outside the box by Dean Shiels goes over the bar.84:29
Inswinging corner taken right-footed by Jamie Hamill, Shot by Andy Webster from deep inside the penalty area misses wide to the left of the target.84:19
Stephen Elliott delivers the ball, blocked by Manuel Pascali.83:10
Mohamadou Sissoko restarts play with the free kick.83:10 Booking
Booking Daniel Grainger shown a yellow card.82:52
Dean Shiels fouled by Daniel Grainger, the ref awards a free kick.82:27
The referee blows for offside against Paul Heffernan. Marian Kello restarts play with the free kick.80:38 Substitution
Substitution Marius Zaliukas leaves the field to be replaced by Gordon Smith.79:29
Dean Shiels fouled by Daniel Grainger, the ref awards a free kick. Indirect free kick taken by Rory McKeown.
Rory McKeown crosses the ball, clearance by Andy Webster.77:36
Inswinging corner taken right-footed by Dean Shiels from the left by-line.77:30
Centre by Rory McKeown.75:36
James Fowler gives away a free kick for an unfair challenge on David Templeton. Free kick taken by Daniel Grainger.73:07
Unfair challenge on Jamie Hamill by Rory McKeown results in a free kick. Daniel Grainger produces a shot on goal direct from the free kick, clearance by James Fowler.72:46
The official flags Paul Heffernan offside. Indirect free kick taken by Eggert Jonsson.71:48
Mohamadou Sissoko gives away a free kick for an unfair challenge on Stephen Elliott. Jamie Hamill fires a strike on goal direct from the free kick, Anssi Jaakkola makes a save.70:50
Indirect free kick taken by Marian Kello.70:50 Substitution
Substitution Danny Racchi comes on in place of Danny Buijs.70:50
Foul by David Silva on Adrian Mrowiec, free kick awarded.70:11
Jamie Hamill takes the inswinging corner, clearance by Mohamadou Sissoko.69:17
Liam Kelly concedes a free kick for a foul on Eggert Jonsson. Marius Zaliukas takes the free kick.67:34
Foul by Andy Webster on Anssi Jaakkola, free kick awarded. Anssi Jaakkola takes the indirect free kick.66:35
Unfair challenge on David Templeton by Mohamadou Sissoko results in a free kick. Jamie Hamill has a direct shot on goal from the free kick, save by Anssi Jaakkola.66:15
Danny Buijs takes a shot. Blocked by David Templeton.65:21
Rory McKeown produces a cross, Eggert Jonsson manages to make a clearance.62:12 Substitution
Substitution Stephen Elliott joins the action as a substitute, replacing Ryan Stevenson.62:12
Effort on goal by Jamie Hamill from just inside the penalty area goes over the target.58:29
Corner taken short by Jamie Hamill.57:18
Corner from the right by-line taken by Jamie Hamill, save made by Anssi Jaakkola.56:39
Corner from the left by-line taken by Jamie Hamill, Manuel Pascali manages to make a clearance.56:02
Gary Harkins fouled by Daniel Grainger, the ref awards a free kick. Free kick taken by Dean Shiels.55:24
David Templeton takes a shot. Save made by Marian Kello.54:54 Goal scored
Goal! - Dean Shiels - Hearts 0 - 1 Kilmarnock Placed penalty scored by Dean Shiels. Hearts 0-1 Kilmarnock.53:37 Booking
Booking Marius Zaliukas goes into the book for unsporting behaviour.53:31 Booking
Booking The referee shows Rudi Skacel a yellow card.52:08
Marius Zaliukas challenges Paul Heffernan unfairly and gives away a Penalty.51:11
Inswinging corner taken by Daniel Grainger from the right by-line, Gary Harkins makes a clearance.50:53
Rudi Skacel takes a shot. Save made by Anssi Jaakkola.50:28
Rudi Skacel takes a shot from just outside the penalty area which clears the crossbar.49:01
The offside flag is raised against Ryan Stevenson. Free kick taken by Anssi Jaakkola.48:00
Liam Kelly concedes a free kick for a foul on Ryan Stevenson. Free kick taken by Daniel Grainger.46:38
Dean Shiels has an effort at goal from just outside the penalty box which goes wide of the left-hand post.46:14
The ball is sent over by Danny Buijs, clearance made by Adrian Mrowiec.45:47
Corner taken by Dean Shiels.45:01
The game restarts for the second half.45:00 +2:23 Half time
Half Time The half-time whistle blows.45:00 +0:30
Rory McKeown is flagged offside by the assistant referee. Marian Kello takes the indirect free kick.44:35
Corner taken by Dean Shiels from the left by-line. David Silva takes a shot.44:05
Corner from right by-line taken by Dean Shiels.43:16
Inswinging corner taken right-footed by Dean Shiels from the left by-line to the near post, Adrian Mrowiec makes a clearance.42:25
Unfair challenge on Ryan Stevenson by Liam Kelly results in a free kick. Jamie Hamill restarts play with the free kick.41:37
Daniel Grainger takes the inswinging corner, Ryan Stevenson takes a shot. Save by Anssi Jaakkola. Clearance by David Silva.41:02
Inswinging corner taken by Daniel Grainger.38:00
Foul by Liam Kelly on Eggert Jonsson, free kick awarded. Andy Webster takes the indirect free kick.35:50
Gary Harkins is ruled offside. Marian Kello restarts play with the free kick.35:42
Danny Buijs delivers the ball.34:09
The ball is delivered by Rory McKeown, clearance made by Adrian Mrowiec.32:27
A cross is delivered by Rory McKeown, clearance made by Andy Webster.30:46
Foul by Jamie Hamill on Rory McKeown, free kick awarded. Manuel Pascali takes the free kick.30:46 Booking
Booking Jamie Hamill receives a yellow card for unsporting behaviour.29:16 Substitution
Substitution Alex Pursehouse goes off and David Silva comes on.27:25
Daniel Grainger takes the inswinging corner, Andy Webster has a headed effort at goal from close in which goes wide of the left-hand upright.24:28
Jamie Hamill takes the inswinging corner, save by Anssi Jaakkola.23:40
Danny Buijs challenges Rudi Skacel unfairly and gives away a free kick. Daniel Grainger takes the direct free kick.21:09
James Fowler takes a shot from inside the box clearing the bar.20:28
Effort from the edge of the box by Ryan Stevenson goes wide of the right-hand upright.19:27
Free kick awarded for a foul by Jamie Hamill on Rory McKeown. Dean Shiels has a direct shot on goal from the free kick, save by Marian Kello.19:02
Rudi Skacel produces a left-footed shot from just outside the box that goes wide left of the target.18:54
The ball is crossed by Adrian Mrowiec.18:46
Ryan Stevenson crosses the ball.15:48
Free kick awarded for an unfair challenge on Dean Shiels by Ian Black. Mohamadou Sissoko restarts play with the free kick.15:48 Dismissal
Dismissal Ian Black shown a red card for serious foul play.14:11
Corner taken by Jamie Hamill from the left by-line to the near post, Close range strike by Andy Webster goes over the bar.13:40
Free kick awarded for a foul by Jamie Hamill on Paul Heffernan. Dean Shiels takes the free kick.8:54
Direct strike on goal from the free kick comes in from Jamie Hamill, save by Anssi Jaakkola.8:54 Booking
Booking Alex Pursehouse is booked.8:44
Alex Pursehouse gives away a free kick for an unfair challenge on David Templeton.7:51
Effort on goal by Ian Black from outside the penalty box goes harmlessly over the bar.7:12
Ryan Stevenson has a headed effort at goal from close range which goes wide of the left-hand upright.7:03
David Templeton delivers the ball,6:20
Jamie Hamill takes a inswinging corner to the near post, clearance made by Manuel Pascali.4:52
Ian Black gives away a free kick for an unfair challenge on Danny Buijs. Free kick taken by Dean Shiels.2:07
Ryan Stevenson fouled by Liam Kelly, the ref awards a free kick. Strike comes in from Daniel Grainger from the free kick.0:00
The referee gets the game started.
Live data and text provided by our data suppliers