The rain left as quietly as it came.
It did not announce its exit. It did not apologize for interrupting the night. It simply thinned into mist, then disappeared, leaving the campus pavement dark and reflective, like a mirror that refused to forget what it had just seen.
XH walked back with his jacket still heavy, water trapped inside fabric like memory trapped inside skin. June's hair had dried in uneven strands, the ends still damp, clinging lightly to the sides of her neck. She had not complained. She had not teased him either. That silence carried more weight than laughter.
At the dorm corridor entrance, they stopped.
Not because either wanted to end the walk.
Because the campus had rules for closeness, even when the campus pretended to be modern.
June slipped her hands into her sleeves and looked at him for a long moment, like she was deciding whether to say something dangerous.
"Your jacket smells like rain," she said finally.
XH blinked. "That's… normal."
June's lips curved slightly. "You do normal things like they're rare."
XH didn't know how to answer that.
June took one step back. "Sleep."
XH nodded. "You too."
She turned away, walking down the corridor with a steady pace that looked like control. But XH noticed something small, something she probably didn't mean to reveal.
She touched her hair once. Just once. Like she was checking if the rain had left traces.
XH stood there until she disappeared around the corner.
Then he exhaled, and it sounded like surrender.
Inside his room, the air was warm and stale. He dropped his jacket over the chair and stared at it like it had committed a crime. Water dripped from the sleeve onto the floor in slow, quiet taps.
Tap.
Tap.
Tap.
His phone buzzed.
Group chat.
JP: I just checked. People uploaded the towel run video already.TZ: You're lying.JP: I swear on my future marriage.TZ: That means nothing.NS: Stop posting about it.JP: I'm not posting. I'm observing public history.JP: Also XH and June look like a couple.TZ: Shut up.JP: I refuse. It's science.NS: I'm going to sleep forever.
XH's stomach tightened.
He typed nothing.
He didn't even open the rest.
Another vibration.
Kitty.
Kitty: you home?
His fingers hovered.
XH: yeah.
Kitty: good.
A pause.
Kitty: don't let them decide it for you.
XH stared at the words.
Them.
The campus. The forum. The eyes. The phones. The whispers that turned moments into evidence.
XH: i won't.
Kitty: promise?
XH's throat tightened.
He didn't answer with promise.
He answered with truth.
XH: i'll try.
Kitty: ok.
Another vibration.
June.
June: don't forget to dry your jacket. you'll catch a cold.
XH stared, then typed.
XH: you too.
June: i'm fine.
XH turned the phone face down and lay on the bed.
Royal Road is the home of this novel. Visit there to read the original and support the author.
He slept eventually, but it wasn't clean sleep. It was the kind that came in small pieces. The kind where your mind kept waking up to replay one second over and over.
The pause under the towel.
The way June stepped close under the jacket.
The way Kitty's silhouette stayed in his peripheral vision like a bruise.
Morning arrived like it always did on Campus 2.
With schedules, deadlines, and the cruel assumption that nothing personal mattered.
But something had changed. XH felt it before anyone spoke.
He felt it in the way the hallway quieted when he passed.
He felt it in the way students looked down at their phones, then up at him, then away too quickly.
He felt it in the way people laughed a little too late, like they were reacting to a joke they'd already heard online.
At the cafeteria entrance, he heard it.
His name, said softly.
"XH."
A giggle.
"June."
A pause.
"Kitty."
He stepped inside and the warmth hit his face, carrying smells of fried food and hot soup. It should have been comforting.
It wasn't.
He scanned the room and saw something that made his chest tighten.
Two girls at a table near the center, phone angled upward.
The screen showed a blurred photo. A dark shape over two heads.
A jacket.
Someone's hand pointing.
They were zooming in.
XH felt heat climb his neck.
He walked faster.
The boys were already at their usual table.
JP looked up the moment he saw XH, expression bright with the kind of excitement that should have been illegal.
"You're famous," JP whispered like he was delivering a blessing.
XH dropped his tray down harder than necessary. "Don't."
TZ was chewing, eyes half closed. "He means everyone is talking."
NS was quieter than usual, shoulders slightly hunched, as if he was trying to shrink away from the world. When he looked up at XH, his eyes carried a complicated softness.
Not pity.
Not judgment.
Something closer to concern.
"You saw it?" NS asked.
XH stared. "Saw what?"
NS's gaze flicked toward JP briefly, then back. "The posts."
JP leaned in. "Okay, listen. The silhouette is not that bad. It's actually kind of cinematic."
XH glared. "JP."
JP held up both hands. "I'm not the one who posted. It's someone from engineering. Or business. Or one of those majors that breathe gossip like oxygen."
TZ swallowed and said, "It's already in the forum thread. The Water Festival thread. People are guessing."
XH's stomach dropped. "Guessing what?"
NS answered carefully. "Guessing who you're with."
JP nodded eagerly. "They think it's June."
TZ added, "Some are saying it could be Kitty too."
NS didn't speak, but his jaw tightened for a brief second. XH caught it.
That made XH's chest ache.
Because NS was his brother.
And brothers sometimes suffered quietly so they wouldn't become the villain in someone else's story.
XH lowered his voice. "What did they post exactly?"
JP slid his phone across the table.
XH stared at the screen.
A grainy photo. Two figures close together. A jacket lifted over their heads. Rain streaking the light. Not clear enough to see faces, but clear enough to feel intimacy.
It looked like a confession, even though it wasn't.
Under it, comments.
Smirking jokes.
Heart emojis.
People calling it couple energy.
Someone wrote: "June finally locked it."
Another wrote: "Kitty probably crying."
XH's throat tightened.
He pushed the phone back. "Delete it."
JP blinked. "I can't. It's not mine."
"Stop looking at it," XH snapped.
JP shut up immediately, which was rare enough that TZ looked startled.
NS spoke softly. "It won't stop just because you want it to."
XH's voice lowered. "I know."
Across the cafeteria, Kitty walked in with NC and Anna.
Kitty looked composed.
Hair neat. Face calm. Lips neutral.
She didn't look like someone who had been hurt.
Which meant she was holding it inside.
XH knew her enough to recognize that.
Kitty's gaze swept the room once, then landed on XH for only a second. Just a second.
She didn't wave.
She didn't smile.
She just looked like she was measuring how awake he was.
Then she looked away and walked toward the beverage station.
NC leaned in to whisper something to her. Kitty nodded, still calm.
XH stood up instinctively, but NS's voice stopped him.
"Don't," NS said quietly.
XH froze. "What?"
NS looked at him with tired honesty. "If you walk to Kitty right now, people will say you're fixing her. If you don't, people will say you abandoned her. Either way, she becomes someone's storyline."
XH sat back down slowly.
That hurt.
Because it was true.
A minute later, June arrived.
June looked perfect.
Not in beauty.
In control.
Hair tied. Uniform neat. Eyes focused.
She walked into the cafeteria like she was stepping onto a stage she had rehearsed for. She didn't glance around nervously. She didn't check who was watching.
She sat down beside XH as if it was normal.
"Morning," she said.
XH blinked. "Morning."
June's eyes flicked to JP and TZ briefly, then to NS. She nodded politely.
Then she looked at XH again. "You look tired."
XH swallowed. "Didn't sleep much."
June nodded once. "Me neither."
Her voice stayed calm.
But her hand rested on the edge of her tray in a way that felt like tension held under skin.
Kitty finally approached the table.
Her steps were steady. Her posture relaxed. Her face unreadable.
"Morning," Kitty said.
XH's chest tightened. "Morning."
June met Kitty's eyes.
Kitty met June's eyes.
Neither smiled.
NC and Anna hovered a few steps away, ready to intervene if needed, but no one raised their voice. No one had to.
The battlefield here wasn't loud.
It was silent.
It was polite.
It was deadly in the way only girls who understood social war could be.
Kitty sat down across from XH, placing her tray carefully.
June spoke first, voice neutral. "Did you see the posts?"
Kitty's eyes didn't widen. She didn't pretend confusion.
"Yes," Kitty said simply.
June nodded. "And?"
Kitty took a slow sip of tea. "And it's annoying."
June's gaze sharpened. "Annoying?"
Kitty smiled faintly, not warmth, just a curve of control. "People love stories. They don't care if they're true."
June leaned back slightly. "Some stories become true."
Kitty's gaze held steady. "Only if people let them."
The air thickened.
XH felt his throat tighten. He tried to speak, but no words came out quickly enough.
JP made a sound like he was choking on his food, then TZ kicked him under the table again.
NS stared down at his hands like he was trying not to exist.
Kitty looked at XH now, voice softer. "Are you okay?"
XH blinked. "Yeah."
June watched him. "Are you sure?"
XH exhaled. "No."
That honesty slipped out before he could stop it.
Kitty's expression softened slightly.
June's eyes sharpened slightly.
Both reactions were different.
Both were real.
Kitty nodded once. "Good. At least you're not pretending."
June's voice was quiet. "You can't keep floating forever."
Kitty added, just as quietly, "You can't keep letting other people define it."
XH looked at both of them.
And for the first time, he realized something that scared him.
They weren't asking for a confession today.
They were asking for direction.
Not a relationship.
A decision about whether he would keep hiding behind time, or finally start owning the consequences of being loved by people who were brave enough to show it.
Outside the cafeteria windows, the field was dry now.
The banners were gone.
The festival had ended.
But the water had done its work.
It had soaked the cracks.
And now the campus, awake and hungry, was watching to see what would spill out next.

