relationship: friend, partner
Name: Selina Kyle
Weight: 133 lbs
First Appearance: Batman #1
History with Steph:
Selina and Steph technically first met in Batman Family #2 where Selina went undercover as a "bodyguard" to a criminal. Though originally she was forced to beat Steph away from her client, the second time Steph went after the man, Selina knocked out the perp to save Steph from being shot and allowed Steph to take the crooks to jail.
But Selina didn't recognize Steph's Spoiler costume in War Games, nor did Steph know Selina, so this may have been retconned.
Catwoman helped out Steph during War Games and even revealed her secret identity to Steph.
She even killed Black Mask. Twice. Sure, her reasons for it has nothing to do with Steph, but I say this makes her an ally and more.
Recently, Stephanie encountered Catwoman while tracking Toyman. For some reason, Catwoman had decided to be a villian that day and was wanting to take Kryptonite Man to The Penguin. She also inexplicably blamed Stephanie when they both got captured. As such, Stephanie and Kara Zor-El decided to leave her tied up when Kara rescued them both, and went off to defeat the villains without her.
So, Steph and Selina met three times, and each new encounter ignored and contradicted previous encounters. Why it's almost as if each encounter was written by a different author who hadn't read the previous encounters!
Meanwhile, Stephanie ran down the alley as Selina pursuedvher. She thought to herself, "Someone famous once put it best...I'm screwed. I mean, I'm sure someone famous said that at some point. When they were screwed. Like I am right now." Catwoman garroted Steph with her whip, but Steph managed to flip over, grab Selina between her legs and smash her head against the wall. She apologized to Selina (using her name, indicating friendship!) while checking to make sure she was okay, but said all things considered, it squared them for the mess they went through right before Steph's teamup with Supergirl.
Learn more about Selena Kyle here