Actions

Work Header

Rating:
Archive Warning:
Category:
Fandom:
Relationship:
Additional Tags:
Language:
English
Series:
Part 1 of Captain Kitten
Stats:
Published:
2025-05-20
Words:
5,693
Chapters:
1/1
Comments:
22
Kudos:
150
Bookmarks:
20
Hits:
1,385

Captain Kitten on The Ice

Summary:

“He agreed to wear the name. He didn’t expect the glitter, the fame, or the sponsor with opinions.”

 

or: one captain, one contract, and way too many cat signs.

Notes:

As soon as I saw Vera's tweet, I couldn't help but write the story. I hope I did it justice.

Prompt: mnchn AU where chn is a ice hockey player and they’re about to close the club bc they have no money. But then a stripper club sponsors them in exchange for having the stripper’s names on their back. An chn has “kitten” in his. One night, the sponsors go watch the game🤭

I had been wanting to write a story where Chan was a hockey player for a long time and this seemed like a fairly original idea to not make it the usual sports story. Thank you Vera!

Work Text:

Goal.

Chan pulls off his helmet and wipes his head with the towel, ignoring everything happening around him and the background noise of his teammates, which he’s long since gotten used to.

10–2

They lost again, and not by a small margin either. And yet, training has been going so well. Jeongin has become incredibly fast, Seungmin gives him perfect assists to score, Changbin is a wall in goal, Hyunjin looks like he’s dancing on the ice—and yet…

“Come here,” the coach calls out in a low voice.

Chan sighs, places the helmet on the bench, and sits next to Changbin. The smell of sweat lingers in the locker room and Chan wrinkles his nose.

“You know why you lost, right?” the coach asks, eyes fixed on Chan, like he’s trying to pierce through him.

Chan grimaces but says nothing. He’s the captain. He knows why they lost, but he’s not ready to admit it.

Hyunjin stands up. “They were so strong!” he exclaims, waving his stick and almost hitting Seungmin in the head. Seungmin narrowly dodges it and throws him a glare. “Did you see number 15? He was a walking wardrobe on skates!”

Chan shakes his head.

“He’s right,” Changbin adds. Of course he’d take the side of his childhood friend.

“Chan?”

The captain ignores his coach’s voice, lowering his gaze to his still-gloved hands. He clenches his fists and curses every decision that brought him to this point.

The coach waits a few moments for him to speak and finally stands, ready to leave the locker room. “Our last sponsor dropped us,” he announces. “Get ready to go home.”

Jeongin presses his lips together and packs his gear. “Are we training tomorrow?”

The coach stares at him. “You don’t get it, kid. Go home,” he repeats with no further explanation. When he sees Jeongin’s lost expression, he adds, “Your own homes.”

“What?!” Seungmin protests. “I left university for this and now he’s sending us home?!”

Chan still doesn’t speak. He had a feeling this would happen. And it’s all his fault.

“If you don’t win, you don’t get sponsors,” the coach explains. “No sponsors, no money. No money?” He looks at Chan again. “No hockey.”

“There has to be a solution!” Hyunjin cuts in. “We were at the top of the national rankings!”

“Exactly!” Changbin agrees, scanning the rest of the team for support. No one has said anything yet—not even their captain.

“You have one week, boys,” the coach continues. “Then the Stray Blades won’t play anymore.”

With those words, the coach leaves the locker room, abandoning his twenty players.

“Chan?”

Chan looks up at Jeongin, hearing the fear and confusion in his voice. Doubtful, discouraged faces are waiting for their captain to say something, to find a solution that fixes everything. But what solution could Chan possibly find when this is all his fault?

“You should be the one paying for this,” says a voice from the back. Juno. He never accepted the fact that Chan became captain instead of him.

“Shut up, Juno!” Seungmin yells. “This isn’t Chan’s fault! We’re a team—it’s on all of us!”

Juno pushes through the group, stops in front of Seungmin, and jabs his finger against his chest. “His tactics sucked! We’ve been a disaster all season!”

“That’s not true!” Hyunjin protests.

Juno turns to him. “Stop defending your buddy. He’s a crap captain. What kind of plan is ‘pass everything to me, I’ll take care of it’?”

“Chan’s our strongest player and our best forward!” Jeongin jumps in. “It was the best tactic!”

Juno shakes his head. “You’re all idiots.”

“Stop it.” Chan finally stands and speaks. “You’re right. It’s my fault.”

Juno smirks and crosses his arms. “How are you planning to fix it? You don’t have money, and you don’t even have talent. You’re useless.”

Chan flinches. Everything Juno said is painfully true.

“We could find another sponsor,” says a voice from the back of the group.

“In a week?” Juno scoffs. “For a team that can’t even win a neighbourhood scrimmage? Good luck.”

“I have a friend,” Jeongin says softly.

“A friend?” Hyunjin repeats, surprised.

Jeongin nods. “He works at Club Aesthete.”

Changbin looks thoughtful. “The strip club?” he asks, doubtful. “You’re friends with a stripper?”

Jeongin grimaces. “He’s the bartender.”

“That club’s impossible to get into, isn’t it?” the same voice says.

Jeongin nods again. “You need an invitation.”

Juno rolls his eyes. “We’re wasting time.”

“We have an invitation,” Jeongin murmurs. “Jisung can get us in.”

“Jisung? That Jisung?” Hyunjin suddenly seems way more interested now that Jeongin’s “friend” has a name.

Jeongin blushes and nods.

“And what are we supposed to do at a strip club? Get drunk?” Juno snaps.

Jeongin glares at him. “We could ask the owner to sponsor us. Jisung said—”

“No.”

The whole team turns to Chan.

“Why not? There’s no harm in trying!” another player jumps in.

“No.”

“Chan!”

Chan crosses his arms. “No.”

“The least you could do is try,” Juno snaps. “It’s a potential sponsor and they’ve got money.”

Chan grimaces. “A strip club? Seriously?”

Hyunjin cuts in. “What’s the worst that could happen?”

 

❄️

 

Chan doesn’t look up. He’s already humiliated enough just standing here. The last thing he needs is to meet the eyes of someone passing by and wondering what the hell the captain of the Stray Blades is doing in front of a high-end adult club.

The place doesn’t even have a sign. Just two stylised letters: CA etched into a black-gloss door. No neon lights. No blaring music. Just a sleek entrance and a man in an expensive jacket watching him like he already knows he doesn’t belong.

When the door finally opens from the inside, a short guy with a grin far too smug to be innocent steps out.

“You must be Chan,” he says, clearly amused. “Jisung. Jeongin mentioned me?”

“Yeah,” Chan answers, eyeing him like he’s still deciding whether or not to take him seriously. “Said you’re the bartender.”

Jisung laughs. “I am. But I’m also your golden ticket tonight. Come on.”

Inside, the air smells like something spicy and expensive. The walls are dark velvet, the floors polished, and everything seems curved, chairs, lights, even the glasses. It’s the kind of place where if you have to check the bill, you probably shouldn’t be breathing in the same room.

“Taking him down?” someone asks from behind the bar.

Jisung nods. “Private lounge, Felix. He’s waiting.”

Chan stiffens. “He?”

Jisung throws him a side glance. “Minho. The owner. Says he’s been following your career for a while.”

Chan stops. “Excuse me?”

“Yeah. Says you’re interesting.” He pauses. “And a problem. But I don’t think he meant on the ice.”

Chan doesn’t answer. He can’t. He’s still trying to figure out whether this is a setup.

The private lounge looks nothing like the rest of the club. It’s stark. Cold. Clean. One black desk at the centre, a wide armchair, and a man seated with his legs crossed, shirt slightly undone, in a way that’s almost intentional.

“Captain Christopher Bang,” the man says without standing, tone soft enough to sound like mockery.

Chan swallows. “Minho?”

“Correct.” Minho rises slowly, like someone who hasn’t hurried in years. “Please. Sit. My treat.”

Chan stays standing.

Minho raises an eyebrow. “As you wish. I assume you know why you’re here.”

“We all know why I’m here.” Chan crosses his arms. “We need funding. Sponsorship. The team is... struggling.”

“And you want help from a strip club.” Minho smiles like he’s just heard the punchline of a very long joke.

“We don’t have many options.”

“So you came to sell your dignity for a pair of new skates.” Minho walks to the liquor cabinet along the wall and pours something into two lowball glasses. “Interesting.”

“I’m not here to-”

“I know why you’re here,” Minho cuts in, handing him a glass. “And that’s why I already have a contract prepared.”

Chan stares at him. Doesn’t touch the drink.

“But...” Minho adds, “I want one small modification.”

Chan tilts his head slightly.

“Your names. On the jerseys. I want them changed.”

“What?”

“I want your players to wear my dancers’ names.”

Chan glares. “You’re joking.”

“I’m not.” Minho smiles. “It’s advertising.”

“It’s ridiculous.”

“It’s visibility.” He pauses. “And you, Chan, will wear this.”

He pulls out his phone, types something, and shows him the screen.

One word. Gold on black. Elegant. Dangerous.

Kitten.

Chan stares. Then he stares at Minho. “Not a chance.”

“You don’t want to save your team?”

“Not like this.”

“Then leave.” Minho sits back down, like he’s just finished dealing with a boring offer. “It’ll be fun watching you explain yet another failure.”

Chan clenches his jaw.

 

❄️

 

Chan knew it would be bad. He didn’t expect the crowd to chant it like a battle cry.

“Kit-ten! Kit-ten!”

The name echoes off the plexiglass, sharp and repetitive, and someone somewhere meows: actually meows! Just loud enough to be heard over the announcer.

Chan pretends not to hear. He always does. It's easier than pretending not to care.

The puck slaps off the boards. He pivots, blades biting into the ice, arms steady. Focus. Anger. Precision. He scores. Again.

That’s the worst part. He keeps scoring.

“Three goals. No penalties,” Seungmin reads off the stat sheet like it’s a eulogy. “And an assist.”

“Don’t forget the viral slow-mo replay,” Jeongin adds, holding up his phone. “They put it to jazz this time.”

Chan ignores them both, shoving his helmet into his bag with unnecessary force.

“They love you now,” Hyunjin says, peeling off his sweat-damp jersey. “You’re a legend. An icon. A whole feline fantasy.”

“Shut up.”

“No, seriously. You’re trending again. Someone photoshopped cat ears onto your team photo. It’s-wait, wait, here.” He turns the phone around.

Chan slaps it out of his hand.

“Sensitive,” Hyunjin mutters, retrieving it off the floor.

Chan stands. “If any of you meow during the next match, I’m breaking sticks.”

“Promise?” Changbin deadpans.

 

❄️

 

The second game is worse.

Not the playing, he’s sharper, faster, more lethal than he’s been in months. It’s everything else. The signs. The screams. The giant glittered banner that says TAKE US TO THE PENALTY BOX, KITTEN.

He tries not to look at the stands.

Fails.

Minho is there. As always. Black coat, front row, arms folded. He never cheers. Never reacts. Just watches. Like he’s waiting for something.

Chan doesn’t know what.

He scores again. Almost feels smug about it. Until he catches Minho’s eye as he skates past and sees it, that faint, unreadable smile. Barely there. But there.

Chan nearly trips.

Felix is waiting in the locker room with a protein shake in one hand and a club-branded smoothie in the other. The bottle says Kitten Fuel in pink cursive.

Chan stares at it.

Felix shrugs. “Don’t blame me. Minho’s idea.”

“Of course it was.”

“He says you’ve earned it.”

Chan snatches the drink, tosses it in the bin, and walks out without a word.

Felix whistles low. “Rude.”

 

❄️

 

Minho is in the hallway.

He always finds a way to be exactly where Chan doesn’t want him and exactly when he might not mind it.

“You’re faster this week,” he says, eyes roaming lazily over Chan’s flushed face, still damp with sweat. “Looser.”

“Maybe I’m just motivated by spite.”

“Good. Spite works for you.”

Chan scowls, shifting his grip on the strap of his duffle. “You know what doesn’t work for me? The name.”

“I disagree.”

“Of course you do.”

Minho steps closer, slow and infuriatingly casual. “You’ve been wearing it for two games now.”

“I didn’t have a choice.”

“Maybe. But you haven’t taken it off, either.”

Chan’s voice is low. “Don’t flatter yourself.”

Minho tilts his head, considering. “Wouldn’t dream of it. You’d see through it in a second.”

“I see through you anyway.”

“You sure?”

Chan doesn’t answer. He’s already walking. Minho doesn’t stop him, but his voice follows like smoke. “You play better when you’re pissed off. Keep it up, Kitten.”

Chan flips him off without looking back.

That night, he stares at his phone.

The name in his contacts is still saved as ML – Club Sponsor.

He opens their chat.There’s nothing there. He deleted the old messages. They felt too... something. Intimate. Stupid.

He types anyway:

 

> Why that name.

 

The reply comes ten minutes later.

 

> Because it is special.

> And so are you.

 

Chan reads it twice. Deletes the whole chat.

 

❄️

 

The third game ends in another win.

This time, Chan doesn’t even hear the crowd. Doesn’t hear the cheers or the announcer or the increasingly unhinged chants. He doesn’t notice the confetti until it’s already sticking to his skin, and by then it’s too late, Jisung’s handing him another drink, Seungmin’s shouting “MVP, baby!”, and someone’s pulling the Kitten jersey off his shoulders to hang it up for press shots.

It’s exhausting. But it’s not all bad.

After the locker room clears out, Chan lingers behind. He checks his phone. No messages. No new calls. He scrolls to Minho’s name. Stares. Doesn’t type.

The door opens behind him.

“Waiting for something?” Minho asks, leaning casually against the frame like he didn’t just appear out of thin air.

Chan turns. “Do you live here?”

Minho shrugs. “Maybe I just know when you’re not ready to leave.”

Chan narrows his eyes. “What do you want?”

“I want to know how it feels.”

“What?”

“The name. The game. All of it. I want to know if you’re still pretending to hate it.”

“I don’t pretend.”

“Exactly,” Minho says, stepping into the room. “That’s what I like about you.”

Chan folds his arms. “You don’t know me.”

“I know you better than you think.”

“You gave me a name to provoke me.”

Minho smiles, slow and lazy. “And it worked.”

“Why not something tougher?”

“Because this one scratches.”

Chan’s jaw ticks. “You get off on this, don’t you?”

“On watching you burn a little? Maybe.” A beat. “But I’m also watching you come back to life.”

Chan doesn’t reply. He’s too busy remembering what it felt like to skate tonight: fast, loose, angry, free.

Minho watches him a second longer. Then tosses something onto the bench. Another jersey. Same cut. Same colours. Different name.

Velvet.

“Next time,” Minho says with a smirk. “Unless you want to keep yours.”

Chan doesn’t even blink. “Don’t push it.”

Minho grins. “Wouldn’t dream of it.”

 

❄️

 

The photo stares back at him.

He found it by accident. Or maybe it wasn’t. Maybe Minho wanted him to find it. Maybe it was always going to happen eventually.

The hallway behind the upper lounge isn’t marked private, but it feels like it should be. Velvet-lined. Dim. Too quiet. There are framed portraits on the wall, all dancers, he thinks. Captured mid-performance. Some laughing. Some mid-spin. Some frozen in stillness that feels like a secret.

Then there's one in the centre, larger than the rest. Gold frame. Black matting. No lights above it, but it draws the eye anyway.

The dancer isn’t facing the camera. Their head is tilted back, arm stretched overhead, glitter clinging to skin like stardust. Black gloves. Bare chest. Jawline familiar in a way that makes Chan’s stomach twist.

The plaque reads: Kitten. 2016–2019.

His throat tightens. It’s him. It’s Minho. There’s no doubt. No possible explanation except the truth staring him in the face.

He turns around and walks out before he realises he’s moving.

 

❄️

 

He doesn’t tell anyone.

Not Jeongin. Not Hyunjin. Not Changbin. Not even Seungmin, who would probably joke about it until it wasn’t funny anymore.

He goes home, peels the jersey off slowly, folds it too neatly, and puts it on the chair by the window like it’s something fragile.

It’s been weeks. Weeks of banter. Weeks of eye contact and quiet smiles and texts that became calls that turned into silences that meant something. Weeks of not feeling like a fraud every time he stepped onto the ice.

He let himself believe they were friends. That Minho saw him as something more than just a broken-down athlete and a walking headline.

That maybe, maybe, someone actually understood him for once.

And now all he can think is:

You gave me that name like it meant nothing. When it meant everything to you first.


❄️

 

The next match is loud. The crowd is unhinged.

There are signs with paws and hearts and a massive cardboard cutout of Chan’s face with whiskers drawn on in sharpie. Someone has a full catsuit. It’s horrifying.

Minho isn’t there.

Chan doesn’t play like himself.

He plays like he’s stuck in someone else’s skin.

The team still wins, barely, but the post-game locker room is quiet. Seungmin gives him a look, not quite concerned but definitely suspicious. No one asks. Everyone feels it.

He showers, dresses, leaves early. Doesn’t even look for Minho in the hallway this time.

He knows he won’t be there.

Three days pass. No texts. No calls.

Nothing.

Chan thinks about asking Jisung or Felix. Thinks about messaging. Thinks about showing up at the club again and forcing the conversation. But he doesn’t want to see that hallway. Doesn’t want to look at that photo and remember that he’s wearing someone else’s name.

So he does nothing.

He doesn’t show up to practice.

Lets Seungmin cover for him with some vague excuse about his shoulder. He doesn’t correct him.

The second match comes and goes. The team loses.

The internet explodes with speculation.

#WhereIsKitten starts trending. Again.

Someone edits a slow zoom on his empty bench to a sad violin track.

Chan turns off his phone.

He tries to train alone, but nothing feels right. His skates bite into the ice the wrong way. His limbs are heavy. His chest burns.

He misses Minho. That’s the worst part.

He misses the jokes and the smug texts and the way Minho always knew exactly how to piss him off just enough to make him play harder. He misses the look in his eyes, not cold, not mocking just quiet.

He doesn’t want to admit it, but he trusted him. He let him in and now he doesn’t know if any of it meant anything.

 

❄️

 

The knock comes at midnight.

Three soft taps.

Chan opens the door without checking the peephole.

Minho’s standing there in a hoodie and joggers, hair messy, eyes shadowed. He’s holding a paper cup with a loose lid and two coffee sleeves stacked around it like it’s too hot for anyone to touch.

“I didn’t think you’d answer.”

“I almost didn’t.”

Minho lifts the cup slightly. “I brought your favourite.”

Chan doesn’t take it. They stand in the doorway, the night air wrapping around them, heavy and still.

Minho finally sighs. “You saw the photo.”

Chan crosses his arms. “What gave it away?”

“You disappeared.”

“So did you.”

Minho looks away. “I didn’t think you’d care.”

“You’re an idiot.”

Minho flinches a little, then hands him the coffee. “Probably.”

Chan takes it. Holds it between his hands. Doesn’t drink.

There’s a pause.

Then Chan breathes out. “Was it all a game?”

Minho looks up.

“This,” Chan says, quieter now. “Me. The team. The name. The texts. You showing up to every match. Was it just you watching yourself through me?”

“No.”

“Then what was it?”

Minho breathes in slowly. “It was me trying to give you something that mattered. Something I thought you’d hate. Something you’d fight. Because you needed that. You were disappearing.”

Chan shakes his head. “You should’ve told me.”

“I thought you’d run faster if you didn’t know who was chasing you.”

That lands harder than Chan expects.

Minho takes a small step forward. “I was proud of that name. Once. But it didn’t fit me anymore. I didn’t want it back. I just wanted to see if someone else could make it mean something again.”

Chan doesn’t speak.

Minho doesn’t push.

After a while, Chan lifts the cup to his lips. Drinks. It’s too hot. It burns a little. He doesn’t mind.

Minho watches him with something unreadable in his expression. Not guilt. Not regret. Just... waiting.

“I trusted you,” Chan says, finally.

“I know.”

“I thought you saw me.”

“I did.” Minho pauses. “I still do.”

Chan stares at him. "You didn't come." 

Minho stays silent. Then, finally, nods once. "I'm sorry."

“Don’t miss a match again.”

It’s not a request.

Minho smiles, small and tired. “You are a kitten.”

“I’m serious.”

“I know.”

Minho reaches out. Briefly. Just his fingers brushing Chan’s wrist.

“Come back to the rink,” he says. “It’s not the same without you.”

Chan doesn’t answer right away.

But he doesn’t close the door either.

 

❄️

 

Practice is already halfway over when Chan shows up.

He doesn’t announce himself. Doesn’t make eye contact. Just changes in the corner, pulls his jersey on like it weighs more than it should, and steps out onto the ice like he never left.

The noise in the rink doesn’t change. No cheers. No whistles. Just skates slicing against the frozen surface and pucks hitting boards. But the silence around him is different. He can feel it, tight, buzzing.

No one says anything at first.

Then Seungmin skates past him, fast and low, shoulder brushing his in passing. “Took you long enough.”

Chan exhales through his nose. “Shut up.”

“Shut up and what, Captain Kitten?” Hyunjin calls from across the rink, grinning.

Chan flips him off without looking.

Jeongin cheers like they just won the finals. “We’re back, baby!”

The ice feels good under his feet. Not perfect. Not yet. But better than the days he spent avoiding it. He sprints the length of the rink, stops with a spray of ice that coats Seungmin’s skates, then does it again.

He doesn’t look toward the stands, but when he finally does, Minho is there.

Same seat. Hands tucked into his coat. No smile. No smugness. Just presence.

Something inside Chan clicks back into place.

The post-practice locker room is noisy again.

Someone throws a towel at Jeongin. Hyunjin’s playing music through his phone. Changbin’s complaining about blisters. Seungmin sits beside Chan, wrapping his ankle slowly.

“You okay?”

Chan shrugs.

“That’s not a no.”

Chan doesn’t answer.

After a minute, Seungmin adds, “I know it wasn’t just about the club. Or the name. Or whatever the hell happened between you and Minho.”

Chan looks over.

“You came back anyway,” Seungmin says. “That’s enough.”

Chan swallows. Nods once.

 

❄️

 

The next match is brutal.

Their rivals have been waiting for this one. They’re aggressive, physical, smart. Chan takes a hit in the first ten minutes that nearly knocks the breath out of him. He gets up anyway.

The crowd is louder than usual. The signs are ridiculous now: cat ears, cardboard claws, one with a glittery KISS ME, KITTEN that Seungmin points at and winks.

Chan pushes through it all. It’s not about proving anything anymore. It’s just about the game.

He skates like he means it. Not like he’s angry. Not like he’s trying to be someone. Just him. 

At halftime, he sits on the bench, panting, chest heaving, the jersey sticking to his back. He peels off his gloves and presses a water bottle to his neck.

Minho is in the front row. Watching.

Chan meets his eyes for a second too long. Then looks away.

The third period is a war.

Bodies clash against the boards. A stick snaps. Someone bleeds. Chan’s not sure who—it could be him. Doesn’t matter. He gets the puck, glides forward, cuts right, feints left, shoots.

Goal.

The arena explodes.

His teammates crush him in a huddle. He can’t hear anything but his own heartbeat.

And the name.

Kitten.

Chanted again and again, louder than ever. Chan is not embarrassed. He’s not hiding from it anymore.

He skates to the edge of the rink and presses one hand to the plexiglass in front of Minho. Minho raises his brows.

Chan mouths, That one was for me.

Minho smiles for real. It’s small, barely there, but it’s real.

After the game, Chan pulls off his jersey and tosses it onto the bench.

Jisung and Felix are waiting in the tunnel, still in bartender black, holding out a drink with a paper cat sticker on the lid.

Chan sighs. “You never stop, do you?”

Jisung shrugs. “Minho pays well.”

“You’re shameless.”

“I’m useful.” He pauses. “Also, he told me to tell you that he’ll be upstairs tonight. If you want to talk.”

Chan doesn’t say anything, just takes the drink and walks past him.

 

❄️

 

He doesn’t go upstairs.

Not yet.

He sits in the parking lot for a long time, windows fogged, the crowd noise still ringing in his ears.

He thinks about the old photo.

The one in the hallway.

Kitten. 2016–2019.

How many people walked past it and never looked twice?

He thinks about how easy it would’ve been for Minho to tell him from the start, but also about how that would’ve made it meaningless.

Because what mattered wasn’t the name.

It was what Chan did with it.

It was how he found his way back through it.

Back to the ice. Back to the team. Back to himself.

He finally texts Minho.

 

> Come outside.



It takes two minutes.

Minho appears without a coat this time. Hoodie, joggers, same worn trainers as last time. Hair damp from a shower. Face clean. Uncomplicated.

Chan rolls down the window.

Minho leans against the car door.

Neither of them speaks at first.

“Nice goal.”

“Don’t get used to it.”

Minho smiles. “Too late.”

Chan watches him. Every line of him. Every quiet moment. He reaches over, opens the door. “Get in.”

Minho doesn’t ask why. He just does.

They sit in the silence together, the heater humming low.

Chan rests his head back against the seat and closes his eyes.

Minho doesn’t touch him.

Just sits beside him. Breathing.

Real.

Still here.

 

❄️

 

It’s been two weeks since Chan came back.

Two wins. One loss. Five interviews he dodged. Dozens of new memes. A limited-edition keychain with #97 Kitten sold out in twenty-four hours.

Everything’s louder now. More eyes, more questions, more people who suddenly care. And yet, somehow, it’s easier to breathe.

Maybe because the noise no longer feels aimed at someone else wearing his face. Maybe because he’s stopped fighting it.

Maybe because Minho has, too.

Minho doesn’t flirt anymore.

Not in the same way.

He still shows up at every match. Still sits front row, arms folded, legs crossed, black boots and a mouth that always looks like it knows more than it says. But now, when their eyes meet, there’s no challenge in it.

Just a quiet kind of knowing.

He doesn’t text clever things late at night. He sends one-word messages instead.

> Safe?

> Eat.

> Sleep.

> Practice tomorrow?

Chan never replies. Not directly. But he eats. He sleeps. He shows up.

They fall into something calm.

Something still.

 

❄️

 

After a morning practice, Minho waits for him outside the locker room. No jacket. Just standing there like he belongs anywhere he chooses.

Chan raises an eyebrow. “You know this is players only, right?”

Minho shrugs. “You gonna kick me out?”

“Tempting.”

They walk to the lot together, not talking much. Just enough.

“You seem different,” Minho says finally, tossing his keys from one hand to the other.

“I am.”

“Better.”

Chan shrugs. “Less angry.”

“Same thing.”

They pause by Chan’s car. Minho leans against the passenger side door. His expression isn’t smug for once. It’s unreadable.

“I wasn’t sure you’d keep the name.”

Chan looks down at his duffle. The jersey's visible inside, the gold lettering still bright. “I almost didn’t.”

Minho nods.

“But then I remembered who gave it to me,” Chan adds, quieter.

Minho watches him. “And?”

“And I decided to make it mine.”

Their eyes meet for a second too long.

Minho breaks first. “You hungry?”

“Always.”

Lunch is quiet.

A corner booth in a diner no one cares about. Minho orders grilled fish. Chan gets the biggest burger on the menu and eats like he hasn’t seen food in three days.

Halfway through, Minho says, “You look tired.”

“I’m carrying the team.”

“You were already doing that.”

Chan chews, swallows, wipes his mouth. “Feels different now.”

Minho tilts his head. “How?”

“They listen to me.”

“You’re their captain.”

“They listen to me,” Chan says again, like the words mean more than they should.

Minho nods. “Good.”

A pause. “I don’t want to own it anymore.”

Chan looks up.

Minho’s eyes are fixed on the table. “The name. I kept it on the books because I couldn’t let it go. It was the only thing that felt like mine, even after I stopped dancing.”

Chan says nothing.

Minho breathes in slow. “But it doesn't fit anymore. Not really. Not once I stopped wanting to be seen.” He finally looks at Chan. "But you? You made it something worth seeing again.”

Chan’s voice is steady. “I didn’t do it for you.”

“I know.”

“I did it to prove you wrong.”

“I know that, too.”

They both smile. Small. Tired. Honest.

 

❄️

 

The next game is the semifinals.

Biggest crowd of the season. TV crews. Journalists. Former players in the stands. Noise like a stadium double the size. The pressure is choking.

Chan doesn’t flinch.

He steps onto the ice in his Kitten jersey and doesn’t think twice.

He plays like it’s not about winning anymore.

It’s about being there. Moving. Creating something. And every time he scores: once, twice, then again in the final minute, the whole crowd roars. Not because he’s perfect. Not because he’s feared.

Because he’s back.

Because he’s something they believe in.

He doesn’t look toward the front row until the last whistle blows.

When he does, Minho is already gone.

 

❄️

 

He finds him in the back corridor after the game.

No crowd. No cameras. Just a hallway with flickering lights and the scent of metal and ice.

Minho turns when he hears the footsteps. “I missed your last goal,” he says.

“You left.”

“I didn’t want to be part of the ending.”

Chan stops a few feet away. “Why?”

“Because I don’t want this to be the ending.”

Silence.

Then Chan takes a slow step forward. Another. Another. Until they’re almost touching.

His voice is quiet. “It doesn’t have to be.”

Minho looks at him. Really looks at him.

“No?”

“No.”

Chan reaches up.

Tugs lightly on Minho’s hoodie.

“Say it,” he murmurs.

Minho’s brow lifts. “What?”

“You know what.”

Minho exhales a laugh through his nose. “You’ll bite me.”

“Say it anyway.”

Minho leans in.

Whispers against his mouth, “Kitten.”

Chan kisses him.

No fireworks. Just warmth. Contact. A slow breath between them.

Minho pulls back first. “Still hate the name?”

Chan hums, eyes half-lidded. “I hate how much I needed it.”

Minho presses their foreheads together. “You don’t need it now.”

Chan nods. “But I’ll keep it anyway.”

 

❄️

 

The arena is packed before warmups even start.

Signs everywhere. Glitter, hand-painted claws, people wearing cat ears unironically. There's a group in the front row holding up individual letters. Together they spell: K I T T E N. One of them is sobbing before the first period even begins.

Chan doesn’t react. He hasn’t for a while now.

He adjusts his gloves. Tapes the wrist twice, not three times. Breathes once through his mouthguard and locks everything else out.

Focus.

Clear.

Present.

This isn’t about surviving anymore.

It’s about playing.

The first period is fast. Tight. No mistakes. Every shift is a test. They hold the line. One goal each. No one lets up.

Second period, someone tries to take him down in front of the net. Chan stays on his feet, barely. Shoots anyway.

The puck hits the post. Doesn’t go in.

He skates back to the bench without swearing. That’s how focused he is.

The third period burns.

They’re tied. One minute left.

Chan’s body feels like it’s been carved down to instinct. Every move sharper than it should be. He knows where the puck will go before it gets there.

He sees the lane.

Takes it.

He doesn’t think.

He commits.

Full-body sprint, stick low, skates slicing ice in long, vicious strokes. He throws his whole weight behind the shot. It hits the net clean.

Everything stops. Then the crowd explodes.

They win.

His team crashes into him like a wave. Someone knocks his helmet off. Someone else shoves a glove in his face. Seungmin tries to lift him and nearly drops him on the ice.

Chan’s laughing before he realises it. It’s not even joy. It’s relief.

He shakes off the crowd. Cuts through the noise, helmet in hand, sweat sticking to the back of his neck. The press are already flooding the exit. Cameras, flashes, questions. They’re shouting Kitten like it’s a title he was born with.

He doesn’t stop.

He sees Minho off to the side, standing just inside the tunnel, half-shadowed. Still. Watching.

Chan walks straight to him.

Doesn’t slow down.

Doesn’t say a word.

Minho doesn’t move. He just looks at him like the game’s still going.

Chan stops close enough to feel the warmth off his skin. “You gonna sponsor us again next season?”

Minho breathes out. “Only if you’re wearing the full package.”

Chan’s mouth twitches. “What do you mean?”

Minho brings his hand towards Chan's face, in it a collar with a little bell attached. 

“Say that again.”

“You're fishing for it now,” Minho teases him, smirking and putting the bell around Chan's neck. 

Chan doesn’t answer. He kisses him.

There’s no build-up. No permission. Just pressure, contact, something solid grounding all the noise around them. Minho melts into it without hesitation.

The crowd behind them loses its mind. Flashes blind them. 

Chan doesn’t care. He pulls back slow, expression unreadable. Minho’s lips are parted like he’s about to say something smart. 

Chan cuts him off before he can. “Meow.”

Series this work belongs to: