Work Text:
Shiro knew he was in love with Keith long before he started coughing up flowers over the whole affair. He’d even thought he had mostly come to terms with it; he was in love with Keith, and Keith was not in love with him, and that was fine - he was fully content to have him as a friend, and a fellow student, and even sometimes a friendly rival for the top scores at the Garrison.
And then Keith laughed at one of his jokes and shook his head and smiled as he walked away, and Shiro felt a rush of emotion just watching him, and the next thing he knew he was doubled over coughing, red petals - red carnation petals, he recognized them vaguely - coming up into his palm. For a moment he couldn’t believe it - he was in love with Keith, yes, but...this was absurd.
And yet there they were, proof that he was...not, apparently, as fine as he’d desperately tried to convince himself he was.
The opportunity for the Kerberos mission came up the next day, and it seemed like a sign. He was the top student at the Garrison, he’d be graduating soon, and he could go on this trip and it would give him all the time and distance he needed to sort out his feelings and deal with having a mild case of hanahaki in peace. Hell, maybe the flowers would stop when he was away from Keith. Maybe he’d even manage to talk himself into the surgery by the time they got back if he wasn’t seeing Keith’s face every day and wallowing in the pleasant flutters of butterflies in his chest.
He accepted the offer, because it was a great opportunity and because he needed to be anywhere but Earth. The other end of the solar system seemed like a pretty reasonable distance, all things considered.
Before they embarked, he hugged Keith goodbye. Afterwards, he spent almost a solid minute hacking up flowers into a trashcan.
It was worth it.
When Dr. Holt said he wanted to be the first people to meet aliens, Shiro was fairly certain this was not what he had in mind.
The Galra arrived out of nowhere. Nothing in any kind of study or observation of the edge of the solar system had suggested an alien species close enough for contact, and yet there they were, scooping up the crew. There was no warning, no time to escape - one minute they were taking samples and the next they were on an alien ship, prisoners of an unfamiliar species that displayed no interest in negotiation and no pity.
Shiro had never really been afraid of dying before, but in the hands of these strange monsters, he was. He was afraid for his life, for his team - and for Earth. If they could get to Pluto, they could get farther, and that meant everyone on the planet was in danger.
And there was nothing he could do.
The Galra found hanahaki fascinating. Shiro wondered if it was because they had no feelings, and so they couldn’t experience it. His tormentors certainly seemed to delight in watching him double over coughing, whenever thoughts of home, of Keith, got to be too much.
Any thought of pursuing a cure was discarded; the Galra wouldn’t give it to him even if he asked, and here in their gladiatorial hell, feeling anything at all that wasn’t fear or pain was a gift. It was a reminder - that home was out there, and that something beyond this existed.
So he clung to it, desperately, even when it made him a target of mockery and the focus of experiments. The Galra were infinitely curious, and their curiosity left Shiro terrified. Much like they’d ripped off his arm, Shiro feared that the Druids would tear open his lungs and rip the flowers out and that would be it, it would be over. Fortunately or unfortunately, though, they were too interested in the slow progression of the disease to try interfering with it. It made him a more interesting toy, and he supposed that at least by being interesting, he was being kept alive.
He clung to it when they threw him into the arena to be a gladiator because it was a reminder that he was more than the monster he had to become there, the creature that revelled in violence and strength. He was more than the Galra’s Champion, because in the lonely hours spent curled up in his cell, he could think of Keith’s smile, his laugh, or some particularly clever bit of biting sarcasm directed at one of their teachers - and he’d cough up a few petals, and it would be worth it. It would remind him that for everything he had to be, he was still human enough to feel.
Ulaz was the last thing Shiro had expected. He’d considered escape, but he’d always imagined having to fight his own way out, not being swept up by a Galra who whisked him off to an escape pod.
“Wait!” He stopped, turning, and grabbed Ulaz’s shoulders. “The other two Earthlings. I have to find them. They’re my crew.”
“There is no time,” Ulaz said. “You must get back to Earth as quickly as you can. You must save the Blue Lion from Zarkon.”
“I can’t just abandon them!” Shiro insisted, desperately.
“There is someone on Earth you care about, is there not?” Ulaz asked. “That is what the flowers mean.”
“I...yes,” Shiro said, “but he’s not --”
“If you do not warn them,” Ulaz said, “he will die. Or become one of Zarkon’s prisoners. Is that the fate you wish on him?”
“I...no,” he said. This was unfair. This was horrifically unfair. He held Ulaz’s eyes. “Promise me you’ll look for the others.”
“I will. Now go. The Blade of Marmora is with you.”
Shiro went.
Between the sedatives and the sheer impossibility of the situation, Shiro was convinced that he was very much hallucinating Keith arriving to get him out of the quarantine the Garrison had set up as soon as they pulled him from his crashed Galra ship.
(Wasn’t that just how it had to go - get back to Earth, desperate and scared, and end up right back in a medical facility, right back on a table, right back under sedation to be poked and prodded at and -- hell.)
It wasn’t that he didn’t think Keith was capable of doing something so wildly, absurdly reckless, because, well, he knew Keith. He knew that he damned well was. But it was far too much like something he’d come up with in a dramatic fantasy sequence for it to be real. And honestly, if that was what his brain was going to do while fighting the sedatives, it would really just be best to give in.
He felt hands on his face, and heard a soft call of “Shiro?”
And he was out.
It was real. Keith really had broken into Garrison quarantine to pull him out, like some kind of angry fairytale prince. It almost seemed patently absurd, but it was so Keith that he sort of had to accept it.
(That Keith had also apparently managed to inspire a rivalry in someone he barely knew also seemed...very, very Keith.)
God, Shiro had thought he’d known how much he missed seeing that face, that smile, right in front of him. He’d had no idea until it was right there again. It had been a physical battle to not just kiss Keith the minute he saw him. But this wasn’t the time to distract Keith with Shiro’s absolute mess of feelings. They had to find Voltron. They had to get the Galra away from Earth.
Still, standing in that desert sunrise with Keith at his side - Shiro couldn’t think of any other time he’s felt more at home. He would have stayed there forever, if Keith hadn’t called him inside so they could move forward.
He took one last moment to stare at Earth’s landscape, to remind himself that he was home, and then he turned and went inside.
Being home had been a horribly temporary thing. They’d had to flee -- again -- and then it was off to the far end of the universe, to the Castle of Lions and to Allura and Coran and their destiny as Paladins of Voltron. The entire time, Shiro grasped desperately for more than fragmentary memories of what had happened to him while being held. It drove him mad - who knew what might be buried there, what incredibly useful information might be lurking in the depths of his brain?
And yet none of it was forthcoming in more than terrifyingly vague bits and pieces.
What he did remember left a leaden weight in his stomach. He remembered fighting, so much fighting, so much blood on his hands in that Galra arena.
How was he supposed to tell the others? How could they ever look at him the same way? They already knew some of it, but if they had known the whole thing…
He was keeping so many secrets from them. The fights, his hanahaki — he wondered if he should talk to Allura about it because he was sure there was some sort of Altean treatment. But he wasn’t ready to let his feelings for Keith go. They were a warm constant in his chest, like a star he carried over his heart, and having that extinguished would be utterly terrible, but if his teammates knew how compromised he was….they would worry, unnecessarily. There were so many more important things to focus on than his personal pain.
And there would be so many questions, about who it was for and how long he had suffered through it, and he was not ready to answer those.
Best to keep hiding it for as long as he could.
“Shiro?” Keith’s voice dragged him out of his dark thoughts. He thought he’d found an isolated enough space behind the castle, but apparently not.
“Hey, Keith,” he said.
“How are you doing?” Keith asked. “It can’t have been easy, thinking about what the Galra made you do.”
“How do I know that they made me?” Shiro asked.
“ I know.” Keith said, resting a hand on Shiro’s shoulder. It was like a point of pure, warm comfort, and Shiro found himself leaning towards it. To Keith’s credit, he didn’t question that. “The Shiro I’ve known for years would never hurt someone unless he absolutely had to. No matter who they were. If you don’t trust yourself...you can trust me, right?”
“Yeah,” Shiro said, and he did his best to give Keith a smile, and Keith met it with one of his own.
Without warning, Shiro had to cover his mouth to hide a sudden coughing fit.
“You okay?” Keith asked, and Shiro nodded, not trusting himself to speak lest petals come tumbling out. “You sure?” Shiro took a moment to swallow them back down - they were just petals, it was safe enough.
“Yeah, I’m fine. Space allergies, or something,” he lied.
“Alright,” Keith sounded skeptical, but he stood up anyway. “Come on, let’s go back inside before anybody else starts worrying.”
Shiro moved to follow him, but waited for just a moment longer so he could subtly cough up a few more petals and discard them.
That had been far too close.
They should have expected an attack on the castle. Shiro should have expected an attack on the castle. He was the leader, and moreover, he knew the Galra. He should have realized that if they had even the slightest opportunity they would take it.
But he’d been stupid and optimistic, and had thought that surely, Sendak and his commanders died in the crash. They’d all paid the price for it - but everyone else had actually done something to fix it.
All Shiro had managed to do was get tossed around, tortured to try and get Pidge to turn herself over, and maybe, maybe he’d managed to distract Sendak from killing Lance. Maybe.
He was fairly certain Keith would have handled that just fine if he’d been left on his own, though. Shiro might as well have been dead weight through the entire attack on the castle; he might even have contributed more being unconscious, since Lance had actually managed to shoot and seriously injure Sendak while barely hanging on and he’d saved Coran.
After all of that, it was hard not to let Sendak’s words ring in his ears. The others insisted it was some kind of malfunction in the castle related to the Galra crystal and King Alfor’s corrupted AI, but…
Just because it wasn’t Sendak saying it, it didn’t mean it wasn’t true.
Shiro was a monster. He’d been the Galra’s arena champion, he’d been experimented on by their druids, and he had an entire arm that was entirely theirs.
Only the Galra knew what else had been done to him. What if they’d implanted some sort of killswitch, deep in his brain, and if he ever got into combat with Zarkon he would just…. drop? What if he was some sort of Galra sleeper agent?
There were far too many awful possibilities. He’d considered leaving, but he’d already told Pidge that was a terrible idea, and all the reasons it would be a bad idea for her to leave held for him as well.
But he did run as far as he could, which was into the hangar with Black, where he could sit in her cockpit and shut everything else out for a while. Not too long, because he wasn’t eager to have his team worrying about him, but long enough to drown himself in self-loathing where no one could see him do it.
It was hard to even pretend he felt like a competent leader, but he had to hold it together for his team. Because even if he was completely useless, he was still the Black Paladin. They needed him to put up a front of solid determination. He could do that for his team.
At least until they found someone better suited. There was definitely someone better suited out there than a leader who could barely lead, compromised by their enemies, and slowly drowning in flowers growing in his lungs because he was in love with one of his team members.
For the sake of the universe, Shiro hoped they found that person soon.
Zarkon tore them apart.
That was all there was to it - Zarkon had absolutely destroyed them, had almost stolen the Black Lion out from under Shiro. He’d known that it was going to be bad, but he really hadn’t even begun to imagine how bad.
He’d thought he was a bad choice for leader, but this all but confirmed it. He was such a pathetic Paladin that his lion would have preferred Zarkon.
At least he was stranded on this planet with Keith, and the horrible hacking coughs that signalled surges of flower petals were easily dismissed as related to his injuries. He felt like he was barely hanging on, but with Keith’s voice in his ear, assuring him that he was on his way…
Once again, he was relying on Keith for rescue, like some terrible damsel in distress. Not that he minded, really, since usually the damsel and the hero fell in love, and perhaps somewhere in the middle of scraping his dying ass out of awful situations, Keith might develop something more than friendly fondness for him. If only in Shiro’s dreams.
Seeing Keith sitting in Black’s cockpit, when the two of them came to rescue him, felt strangely...right. For all that he knew Keith and Red worked well together, it was all too easy to picture him as a leader, because Keith could rally people, could fire up their passions and make them believe, the way he’d made Shiro believe he really would be safe.
It was too bad that Keith couldn’t save him from drowning in flower petals. He was fairly certain he'd managed to cover it up as the result of his injuries well enough by swallowing the petals back down, but he’d tasted copper blended in with the flowers. It was bad enough that his lungs or his throat - or both, he wasn’t sure - were starting to bleed. That meant it was ticking over into the later stages, and he didn’t have much time left. He didn’t need to have Keith worrying about him for it, panicking over something he couldn't’ help with. The last thing Shiro wanted was for Keith to suffer over this. It was his burden, no one else’s.
“Keith, if I don’t make it out of here,” he said, and he had to suppress a cough because they were too close, there would be no hiding the petals or the blood now, “I want you to lead Voltron.”
“Stop talking like that!” Keith insisted, and Shiro had to bury a very sardonic smile. “You’re gonna make it.”
It seemed Shiro was far too good at keeping his secrets, judging by how angry Keith was at even the possibility of him dying. He had no idea. Which was good, because if any of his team members knew about the flowers eating up Shiro’s lungs, Shiro was terrified they would never be able to trust his leadership. Who wanted to put their lives in the hands of a dead man walking? No one with any kind of survival instinct, that was for sure.
“Keith, I -” he started, and he was ready to confess - not who the feelings were for, but at least what they were doing to him.
And then the wormhole opened, and Pidge and Green came flying through, and it didn’t matter because they were saved.
It didn't change that Shiro meant what he’d said.
Nothing in this entire experience, including being kidnapped by the Galra, had scared Shiro half as much as Keith just...disappearing. Running off with Allura into the wild unknown, because he thought it was his fault that Zarkon was tracking him, which as far as Shiro was concerned made absolutely no sense.
There was exactly one person Zarkon could be tracking, and it was him. Him, and the Black Lion, the lion that was Zarkon’s by right.
He hadn’t exactly expected the solution to be a battle in the center of the mind with Zarkon, facilitated by Black and ended by her choosing him, but he’d take it.
After he’d made sure the others were okay, and while they were on their way to the Blade of Marmora, he made his way down to the hangar and sat at Black’s feet, letting the newly strengthened bond with her wash over him.
She knew he was dying, and she didn’t understand why he wasn’t fixing it. It was hard to quantify for himself, but trying to explain it to her was even harder.
“Shiro? You down here?”
His heart did a little flip at the sound of Keith’s voice, and just seeing him was enough to fill Shiro with a warm, glowing joy.
He felt understanding wash over him from Black. This was why he couldn’t have the flowers removed - never mind that he wasn’t sure the Alteans could do it.
He loved Keith, and he was desperate not to let that go.
“Yeah, over here,” Shiro stood up and beckoned him over.
“How are you feeling?” Keith asked. “You’ve seemed...off, lately.”
That’d be the dying, Shiro was pretty sure.
“It’s nothing. Stress,” he lied, and Keith frowned, obviously somewhat disbelieving.
“Are you sure?” He asked.
“Yeah, I’m sure.” Shiro said. He looked back at Black, and then shook his head briefly.
“I just...spent a long while thinking I might not really belong here,” he admitted. If there was anyone he could be a little vulnerable around, it was Keith. “I’m the only Paladin whose lion had divided loyalties. I don’t even have my bayard. Zarkon’s got that.”
“But Black chose you, right?” Keith asked. “You guys bonded, and now Zarkon can’t sense her anymore. So she’s your lion, and you’re her paladin, and you’re our leader. Like you should be.”
Keith’s unshakable confidence in him was probably the most reassuring thing Shiro could have heard right then. The rest of the team knew the fearless leader and the legendary pilot - Keith knew Shiro, and it was that confidence that made Shiro genuinely feel like he could keep doing this.
“She did, yeah.” Shiro agreed. “And I’ll get my bayard back from Zarkon. But -- what about you? You’ve seemed on edge, ever since what happened with Ulaz.”
Maybe it was thinking Zarkon was tracking him, but Shiro knew Keith. He had a feeling it was something bigger than that.
“It’s nothing,” Keith deflected, and Shiro raised an eyebrow., and Keith gave him a sheepish little smile, and damn it, it looked distractingly adorable. Shiro had to cover his mouth to muffle a cough. “Just...I really was afraid Zarkon was tracking us through me. And if I was the reason you -- anyone on the team got hurt, I’d never be able to forgive myself.”
Shiro absolutely caught that moment of hesitation, and for a moment he felt his heart soar in his chest. Did it mean something? Or was he just being delusional?
Either way, he could feel a terrible coughing fit growing in his chest, and he felt a rush of desperate panic because he hadn’t kept this secret for this long just to have it come out now, when they were so close to success.
“Are you sure you’re okay?” Keith asked, and one of his hands was on Shiro’s shoulder and the other was on his arm. “You’ve been coughing a lot, it’s hard not to notice.”
“Just a cough,” Shiro lied, a little guiltily. “Nothing serious. It’s been around for awhile, but it’s not gonna kill me.”
Ha, ha. Irony.
“You’re sure?” Keith asked. “Because we need you at your best, Shiro. The whole team. Have you asked Coran about spending some time in one of the healing pods?”
“I don’t think it’ll help,” Shiro said, and Keith frowned, a little skeptical.
“Alright,” he said. “You know you can tell me anything, right? If it’s something serious, I’d rather know.”
“I’d tell you,” Shiro said, which was a blatant lie. Because Keith was right. His team did need him. They needed him at 100%, and they didn’t need to be worrying about him because he was hacking up flowers. So he’d keep handling it, keep burying it, until after they took Zarkon down.
He was living on borrowed time, and he knew it - so he’d have to make sure Keith was ready to step up, if the disease caught up with him. There was a chance the fight would just be too long, and he wouldn’t be able to see it through. So he would make sure there was someone capable and ready to lead the team, once he was gone.
Shiro finally understood why Keith had seemed so strange, so quiet and distant, when he revealed that Marmora dagger. No wonder he’d thought Zarkon was tracking him - he had Galra weaponry.
Part of Shiro wanted to be angry that Keith hid it from him, but it wasn’t like he wasn’t keeping his own secrets. Mostly he just wanted Keith to be safe, and there was no guaranteeing that from these...Trials.
The Galra were a harsh people. Shiro doubted that was solely Zarkon and his ilk - that kind of ideology didn’t come out of nowhere, and to stand against it, you couldn’t exactly be soft. Watching Keith struggle through wave after wave of Marmora fighters made Shiro want to run down there and grab him and drag him out, because Keith was too stubborn to know his own limits, but this was also Keith’s fight, and he had faith that Keith would find a way. He would endure or he would discover the trick, because he was stubborn and strong and clever.
And then Keith fell out of view, for a moment, taking a brilliant third option - neither standing nor dying, but out-thinking.
That was the man Shiro wanted to be the leader of Voltron.
There was something especially illness-inducing watching a copy of himself tell Keith to give up. If what Kolivan said was true, all Keith wanted was to hear from him (and he did his best not to think too hard about it, because the last thing he wanted to do in front of potential allies was collapse in a puddle of hacked-up, bloody flowers) and what he was hearing was dismissal. Rejection.
Was that the Trial, twisting how Keith saw him? Or did Keith really think he’d say that? Demand he give up on something he clearly cared about, abandon seeking answers he was clearly desperate for?
The way Keith shouted his name as the projection faded away tore at his heart. This was wrong. There was no way Keith could really think he felt that way -- and yet there was the proof in front of him. It was so much worse than just knowing Keith didn’t love him back, knowing that Keith was so utterly unaware of how Shiro felt.
As soon as Red started attacking the base, Shiro stopped caring about the Trials, or anything else. The Blade of Marmora would have been good allies, but he wasn’t going to watch Keith be tortured so terribly that Red reacted to defend him. And maybe, just maybe, this would be enough to remind Keith that Shiro did care, that he would do anything to make sure Keith was safe.
He would have fought the entire Blade of Marmora to get them out, if that was what it took, but Keith - Keith had other ideas.
And he got his answers anyway.
Keith was
Galra.
The blade reacting to him, changing from dagger to sword, apparently made that undeniable. His mysterious mother had been
Galra,
or part-Galra.
From what Shiro could tell, Allura was taking it particularly poorly, but there was no way to be certain what everyone else was thinking. He hoped none of them were stupid enough to look at Keith as an enemy, now, or to think that he was any less loyal to their mission than he’d been yesterday.
Shiro, at least, was certain nothing had changed. Keith was still exactly the man he’d always known - exactly the man he’d loved for so long it felt like a part of who Shiro was. Nothing was going to change that. Not now.
The waiting was what was killing him, Shiro was certain of that. He was hanging onto his resolve to make it through the final battle with Zarkon, and they’d almost made it there. Just a few more hours and the entire thing would be ready to launch.
He’d thought about telling Keith how he felt. Finally coming clean, taking that chance because it could all be over soon. He was certain Zarkon wouldn’t win, because he believed in his team and in the allies they’d assembled, but he wasn't so sure about his own fate.
If he had to sacrifice himself to save the universe, to save Voltron, to save Keith, then fine. He would do it.
It would be nice, though, to go into that last battle having finally told Keith he loved him, just so Keith would never have to be afraid of Shiro casting him aside again.
He kept thinking about it. Kept thinking about how it would feel to finally open up, and how good it could be if Keith felt the same way, and....
Shiro doubled over, hacking up a cascade of flower petals, splattered with blood. They just kept coming and coming and coming, and he could hear footsteps - walking at first and then running, probably because whoever it was had heard him and was (not without cause) concerned. He couldn’t really lift his head up from the floor long enough to see who it was, and there was no hiding, not this time - his secret would finally be out. Weeks, months of hiding it from the team, and it was all undone in a very unlucky moment.
“Shiro? Shiro, are you alright?”
Oh, of course. It couldn’t have been Pidge or Hunk, who would have undoubtedly let it go. Lance might have been worse, except at least Lance wasn’t actually the person he was in love with. No. It had to be Keith, resting his hands on Shiro’s shoulders and staring at him wide-eyed and full of concern.
“I’m fine,” Shiro lied, even though it was pretty obvious that he was the opposite of fine. There were petals scattered everywhere, and just looking into Keith’s eyes set the coughing fit off all over again, and this time his knees gave out and he doubled over. Keith went down with him, hands staying on his shoulders and providing a steadying presence.
“Come on,” Keith said. “Don’t pretend. You’re not okay -- are those flower petals?”
“Yes,” Shiro said flatly, trying to keep himself as calm as possible.
“Hanahaki?” Keith shook his head. “How long?”
“A while,” Shiro admitted. “It started just before I left on the Kerberos mission.”
“And you haven’t had it taken care of? Shiro, you could die!” Keith sounded panicked, which made Shiro wince.
“I know that,” he admitted, “but it’s gone on this long and I’m still standing.”
“That’s not how it looks to me,” Keith said. “Damn it, Shiro, I -- we need you. We can’t lose you - to Zarkon or to this.”
“I’m fine,” Shiro said again. He knew he wasn’t. He knew Keith was right to be worried. He was running out of time - but so were all of them. The final confrontation with Zarkon was looming. If he could just make it through that...well. Keith would make a good leader, once he had some time to adjust to it, and if the threat was less dire, he would have all the time he needed.
“Is this why you’ve been so adamant about the possibility of you dying?” Keith sounded gutted, almost betrayed. “Because you knew you were? Shiro, why?”
“I knew you’d make a good leader,” Shiro said, “and I meant everything I’ve said to you about that. Hanahaki or no hanahaki, there’s always a chance of me dying out here. I could die in this fight with Zarkon.”
“ So could I!” Keith said desperately. “And I’m not obsessing about it the way you are! Have you at least told whoever it is? Do they know?”
Shiro could feel Keith’s hands shaking, and it brought on a rush of guilt. The last thing he’d ever wanted was to hurt Keith, and he’d known his oncoming death would do exactly that.
“Is it someone back on Earth?”
“It doesn’t matter,” Shiro said, and it came out more than a little bitterly. “I already know how they feel about me.”
Because Keith had told him, or told his hologram, when he was doing the Trials of Marmora. “You’re like a brother to me.” A form of caring, at least, but not the thing he desperately longed for. He’d been told in no uncertain terms that his feelings were hopeless.
“Of course it matters!” Keith protested. “Whoever it is, they’d be lucky to have someone like you, but if they’re back on Earth, we don’t know if we’ll ever get back - you should…”
“It isn’t someone back on Earth,” Shiro said, cutting Keith off.
“But you said it had been going on since before the Kerberos mission - so it was someone you knew before then, and…” Keith hesitated.
“It’s you, Keith,” Shiro said. He was exhausted. Keeping this secret had weighed on him for so long - longer even than the secret of his hanahaki. If that was coming out, might as well let it all come out. No more hiding. No more pretending.
Keith was staring at him, and Shiro was pretty sure his expression was edging up against abject horror. It was definitely shock at the very least. Shiro huffed and pushed himself up, pulling away from the hands on his shoulders and regretting the loss of Keith’s touch immediately because he suspected that might be the last time he felt it, and he leaned against the wall for a moment before gathering the breath to stand.
“We have work to do,” he said flatly, and he started to walk off. Better to cut off the rejection that was undoubtedly coming. This was exactly why he’d avoided telling Keith how he felt, why he’d avoided letting anyone know how he felt. Because it was pointless. If he survived the fight with Zarkon, he’d talk to Allura. Maybe the Alteans had a more advanced way to deal with it. Then he’d get the flowers cut out of his lungs and that would be it.
“Wait!” Keith’s hand was on his arm, stopping him. “I had no idea, Shiro. I’m so sorry.”
“Don’t be,” Shiro said. “You can’t help what you don’t feel.”
“It’s not - you don’t -” Keith shook his head, and then, suddenly, Keith’s hand was off his arm and on his face, pulling him in, and Keith was kissing him.
Shiro froze, but it was only for a moment before his brain caught back up. Grabbing Keith’s shoulders, he shoved him back.
“What are you doing?” Shiro asked sharply.
“You said it was me,” Keith sounded distinctly pained. “I thought...hanahaki means you’re in love with someone, but you think it’s unrequited, right? So you’re in love with me.”
“Yes,” Shiro said, and he’d expected it to hurt to say it, but it felt more like lifting a weight off his chest. It was out in the open, now, entirely. “But that doesn’t mean you owe me anything, Keith. I love you. I have for a long time. But you don’t have to force yourself to try and love me back.”
“I’m not forcing myself to do anything, Shiro,” Keith said. “ I love you.”
That stunned Shiro right back into silence. It seemed utterly impossible.
“I wanted to tell you, I’ve wanted to tell you so many times, but I thought Zarkon was tracking me and then we found out I was Galra and I thought you wouldn’t want to hear it, but --” Keith stopped. “I’m not good at this. At articulating my feelings. But I mean it, Shiro. I really do love you. So, please.”
“Keith, I --” Shiro started, but Keith leaned in and kissed him again, and this time it was much easier to lean into it and drown, pleasantly, in the feeling of Keith’s lips on his. It was a long time before they broke apart.
When they did, Shiro found himself coughing again.
“Shiro!” Keith’s hands moved to his shoulders to steady him, and Shiro could feel more flowers coming up, which seemed unfair, because Keith loved him back and that meant this should be over, but maybe -- well. Nothing healed in an instant. Maybe this was the expulsion of the last petals in his lungs.
What came up wasn’t red carnations. It was a single, silver lily petal, a shade no natural flower could match.
“Oh,” Shiro said. “It...really is...over.”
He’d heard of this - of the strange final flower coughed up by sufferers of hanahaki who were lucky enough to have the object of their affections return their feelings. He looked up from his hand to hold Keith’s gaze.
“I love you,” he said, because Keith deserved to hear it. He deserved to hear it a hundred times, a thousand, as many times as it took to make sure he never doubted it. “I’ve loved you for a long time - almost since we met. It kept me sane when I was being held by the Galra. It’s been an anchor through all of this.”
“Shiro…” Keith’s eyes started to water. “I’m such an idiot. I don’t know how I didn’t see it.” Shiro smiled fondly and pulled him close, pushing away the vague sense of disbelief that still clung to him. This was real. Keith loved him. The proof was in his weight in Shiro’s arms, in the tiny little half-muffled sob against Shiro’s shoulder.
Keith’s arms wrapped around his neck, and Shiro hung on as though he never intended to let go.
If it was up to him, he would never have to.
