Actions

Work Header

Rating:
Archive Warning:
Category:
Fandom:
Relationship:
Characters:
Additional Tags:
Language:
English
Stats:
Published:
2026-03-12
Completed:
2026-03-16
Words:
7,453
Chapters:
2/2
Comments:
18
Kudos:
217
Bookmarks:
16
Hits:
4,509

Magnetic

Summary:

and… they were roommates

Notes:

Sodani TikTok comment ideas fr got spring break :p

Chapter 1: magnetized

Chapter Text

Sophia knew privacy was a thing of the past when she moved into Dream Academy. She hadn’t expected her dorm room to be two beds, two people, this was so hard to grasp for Sophia. Despite growing with siblings, boys, which was arguably worse.

Dorm life blurred boundaries with accidental flashes, a drunk roommate with no sense of space, and eventually changing in front of each other like it was nothing. Privacy didn’t really exist, and it shouldn’t have mattered. It was a part of college life and it really shouldn’t have been an issue. She’d seen Daniela naked plenty of times, always by accident of course.

It shouldn’t have been an issue. It should not have been an issue. But it was.

It became such an issue in poor Sophia’s life.

Sophia felt like Pavlov’s dog every-time she saw her bare. She wasn’t blind, Daniela was ethereal, big curls and they all stare.

The IT girl, that made you feel self-conscious in her presence. Keep in mind she was charming and witty too. The full package.

Exacty the type of girl Sophia crushed on, flirted with, and forget about because she’d never give you a chance… So living with someone like that, that was not good for a certain Sophia Laforteza. Daniela was OFF limits.

That’s roomie, not some chick she could hit on at a frat and eat out at the upstairs bathroom. No matter how twinkly her hazel eyes were, and no matter how badly Sophia was convinced she occasionally flirted with her.

But the flirtations weren’t anything serious some comments here, the odd look there, and a tension in the air whenever it did occur..

The dimpled smiles, blush, licking of lips, and it was just getting too much for poor Sophia.

So she tried her best to put Daniela in the back burner, even if was harder than anything she’d gone through.

But sometimes she felt that Daniela did it on purpose. Who wandered around the room in a towel hunting for clothes? Her towels weren’t even long. It was mid thigh at most, and then Daniela would bend, and Sophia was in hell.

Suddenly her poster of Wicked was the most interesting thing ever.

Sophia only had to make it through the year, and then she’s be able to live in a single, away from luscious lips and teasing hazel eyes.

It would be easier. And she’d get her privacy back.

This was all manageable and timely possible, until… that night happened.

Until now.

There had been nothing major. They both came from their respective dinner plans and shared wishful “goodnights”

Sophia had been asleep, trying to get a good seven hours before her exam, when a thump woke her. Today had been so hard, she’d spent a lot of hours cramming over books and preparing. Definitely overworking herself, but thats why she’d gone to bed early. That was why Sophia was curled up, warm in bed with her cozy pjs on.

But that damn thud had her fighting back a groan at the fright it gave her. Sophia’s heart was racing, and she desperately wanted to bitch at Daniela, even wake her up, too. She told her to stop sleeping with her laptop open.

Why she slept with the damn thing was beyond Sophia, but she did, and this wasn’t the first time it had hit the floor.

Only, when Sophia opened her sleepy brown eyes, gradually adjusting to the darkness, could she make out that there was no MacBook Air on the floor, and Daniela wasn’t asleep. Or maybe she was?

Well, maybe.

She was face down, sort of panting into the pillow, and Sophia wondered if she was having a panic attack. Or even worse, sick.

She can’t be sick for tomorrow, just as she was about to say a snarky comment.

A whimper came out of Daniela’s lips.

And then like the sound goes, “Sophia’s head hit the floor, BOOM” figuratively speaking.

Fuck. Sophia thought to herself. Brown eyes widening.

Daniela’s breath was catching, her mouth falling open, and one hand clenching the mushroom covered pillows so hard it didn’t look like mushrooms anymore. The other hand was missing from sight, but Sophia spotted it immediately.

The unmistakable grinding of Daniela’s curvy hips gave her away.

And Sophia had never been so turned on and terrified at the same damn time.

Is this what she did when Sophia slept? Is this how she relieved all that tension from balancing dance and school?

Sophia knew she had stopped sleeping with that fake artsy boy, but she didn’t think about how she was relieving herself.

It was better for her sanity when she stopped imagining Daniela in those fantasies. Because… she was her roommate, her very attractive roommate who’s apparently fucking herself six feet away from her on that tiny ass twin bed.

The girl is fucked.

Okay, Sophia thought. Just need to go back to sleep. Back to sleep. Let’s think about that exam tomorrow. It’s so easy, so so easy.

Easy.

Except it wasn’t.

Daniela’s breathy moans was all she could hear, and now Sophia felt like Superman with superhearing, because she could hear every hitch of breath and unmistakeable shakey breaths as Daniela neared orgasm, and then Daniela stopped the grinding. Was she edging herself right now? Girl what the hell.

Why prolong this mess, just finish already. Sophia groaned internally.

She clutched her eyes shut, rolled, facing the wall, and pretended like she heard nothing.

Then Daniela stopped completely. Was she done? Had she finished? No, Sophia shook that thought away. Hush and sleep Sophia.

Just as she was getting used to the silence again.

The covers rustled, and Daniela’s panting returned. Fuck, she wasn’t finished.

This had to be the worst. This had to be the devil tempting her for every bad thing she’d done in her life.

The Filipina could hear almost everything! Every pant. The whimpering. Rustling sheets and slick covered hands.

Daniela’s intensity grew, and her panting picked up, and the darker haired girl found herself turning ever so slightly, staring at the popcorn ceiling, but able to see the taut body jutting out on the bed, intensity growing, frantic movements, and fucking gnarly, Daniela, just come for heavens sake.

Maybe Sophia shouldn’t have wished for that.

Because then, Daniela did.

Her moan was louder, then quickly stopped, as if remembered she wasn’t alone, and then a slight whimper as she finally slumped into bed.

Thank fuck.
But Sophia was still awake, wide awake. And it was clear Daniela was dozing right off into slumber.

What the hell.

Sighing, Sophia rolled onto her stomach, buried her head in the pillow, and tried to block out everything she just heard and seen.

Eventually, she fell asleep with a wetness between her thighs, elevated blood pressure, and fantasies of Daniela Avanzini coming beneath her fingers.

It was awful.

The next morning, Sophia went to the study room, dropping her bag into a chair, sitting into one herself, and shot Manon a smile as she did so. She nodded back, not lifting her gaze from the books.

But then Manon did a double take, and Sophia tried to hide. Her pen went down. Her book was pushed back a little. Sat back in the chair.

She knew it was coming.

“Hello?” manon asked, and Sophia pretended to ignore her, while she opened up her books and pulled out what she needed.

A kick to the shin, and that had Sophia’s attention.

“What the hell?” Sophia yelped out, knowing it was going to bruise.

Fucking Manon.

“You look dead bruh”

And Sophia was.

“I don’t want to talk about it,” Sophia grumbled, shaking her head, with redness on her cheeks.
“Was your roommate twirling round again?” Manon laughed, leaning over the desk now, looking eager. Like a shark smelling blood in the water.

“I said no, are you a pabo?” Sophia repeated, tucking her bruised legs out Incase manon retaliated again.

“Bye, Yoonchae’s teaching you lingo now? Come on,” Manon shot back, rolling her eyes.

Could Sophia tell her? Humiliate them both like that?

Manon breaks her trance with a sentence so sinful it was almost true.

“Did you fantasize about hot roomie?” Manon teased, and Sophia fought a groan

She was right, but it was worse than that. She wishes it was a dream. The heat on her cheeks intensified, and Manon hysterically let out a laugh.

“Holy shit, you fucking did.” Manon’s delight was painful.

“Zip it.” Sophia hoped that Manon would take pity and leave it alone, but she didn’t.

“You haven’t cracked?” Fighting an eye roll, the Filipina shot the Swiss native a glare.

“No.” Though God, she wishes she did.

“Terrible.” Sophia agreed in her head.

Turning back to her books, she hoped to focus and get to work, but Manon didn’t pick up her pen again. “Do you like… have plans to orr ” she further questioned

“What?”

“Are you ever gonna ask her out” Manon added, and could this conversation end already?
“She’s my roommate,” Sophia pointed out, feeling like she was forgetting the obvious in their situation.

“Not for long.” While that was true, it wasn’t good enough.
“Girl, it’s October.” Manon rolled her eyes and shook her head.
“You’re going to regret it.” Yeah, probably, because damn, the sounds Daniela made…

Sighing, Sophia went back to distracting herself, and tried to block out all thoughts of her dorm room and Daniela Avanzini.

Putting up with Manon’s evil comments was the lesser of two evils, returning back to that damn dorm room after what she’d heard was just tragic.

Forced damn proximity.

The root of her issues was sitting on her bed, oblivious to Sophia’s internal panic as she walked in. The girl shot her a dimpled smile, always peeking out, and turned back to her Mac.

Sophia got in and got settled. She dumped her bag at the bottom of her bed, took her shoes off, and army crawled on her bed, another sigh escaping.

“How was your day?” Daniela asked, turning to Sophia

“Hard,” the girl murmured, brain feeling sluggish. “You?” She tried not to gaze at Daniela who was dressed so simple, donning sleep shorts and a freying t-shirt, and yet she looked delectable like that.

“Mostly napped. As you can see, I haven’t made it out the bed.” This hadn’t been the first time Sophia came back to their room to find Daniela like this, it seemed to be happening more often. She seemed drained and Sophia was afraid she turning into a hermit

“Feeling okay?” It wasn’t her place, but Sophia was concerned.

“Yeah,” Daniela sighed, shooting Sophia a reassuring smile. “I just need to start thinking about what I’m going to do next year, dance is just… not looking too good right now. Job market wise.” She gives a small frown before continuing, “It’ll pass, I just gotta relieve some stress,” and Sophia nodded, trying hard not to picture the “stress relief”

“If I can help in any way…” Sophia trailed, trying hard not to think of the ways she could have helped.

No Sophia, no. Perv.

“What do you do when you’re stressed?”

Daniela asked.

Hook up with girls in bars, in empty lecture halls, in the library, anywhere really, to break the pattern of stress and anxiety. Sophia could do anything in 15 minutes, only 2 to make you finish really.

But she wasn’t exactly going to tell Daniela that.

“Manon and I go running, or try to.” Sophia does not do that and Manon’s immune system of a Victorian child would have her perish on the first jog.

Daniela nodded, and then shot jer a confused look.
“Are you and Manon together?”

“Huh?”

“Are you together?” Daniela laughed, putting two peace signs together, making the scissoring motion and Sophia sat back, terrified.
“Manon and I?” She repeated, then shook her head

“No. God no. Definitely not.”

Manon would kick her ass if she saw her reaction.

“Who turned who down ?” Daniela teased, Hazel eyes filled with wonder, as the other girl rolled her eyes. Girl.
“We’ve never…okay, we have, but just sex” Probably TMI.

“So you’re like that?” Daniela then asked, which had Sophia’s plump mouth frowning .

“Like what?”
“Like that, ‘running’ with Manon. ” The emphasis on the word had Sophia frowning, and then shaking her head again.

“We do actually go running,” she began, and there was doubt in Daniela’s eyes, eyes now squinting.

“We slept together at the beginning of the year, at a frat party.”

Daniela’s eyes shot up, hazels filled with wonder.

“Was it bad?”

“No,” Sophia laughed, recalling that one night, and definitely not associating the word ‘bad’ with it, at all. “It was just awkward afterwards, because we ended up sitting next to each other in lecture. It was more like drunken one night.”

“But that’s still your thing?” Daniela asked again, and Sophia was back to confusion.
“What?”
“Sleeping with girls?” Oh. Yeah. But did Daniela need to know that?

“What makes you say that?” That was a much safer response and would elaborate on why Daniela wants to know so bad.


“You fucked my friend.”


No fucking way.


Sophia had what?


Daniela started laughing, all cheeks and dimples, no doubt at her facial expression of awkward panic, and Sophia ended up cracking a smile despite herself being the joke.

“Uhh, I’m sorry?” She never left telling the girls she was going to call, so it wasn’t like COMMITTMENT or anything.

“No, no reason to. Lara doesn’t care. She talked highly of you”
God, this was going to be so awkward. Way to fucking go Sophia, now Daniela’s never letting you shoot your shot.

“Well, yeah, i guess I’m like that,” she admitted, hoping that would move her away from whoever her friend was.

“I kind of am too,” Daniela said, licking her lips, and then giving the Filipina a smirk.

Sophia turns away, and tried to find something to do that was going to distract her from thinking about the devil named Daniela.

And then the devil pulled her back in.

“Sophia?”

“Daniela?” Sophia replied.

“How’d you sleep last night?” Daniela asked.

“Good, why?”

“I thought I woke you up,” Daniela said, her voice calm, collected, so unlike Sophia whose internal thoughts are being mangled.

“Macbook fall off again?” Sophia joked, hoping the the waiver in her voice wasn’t present

Daniela rolled her eyes and shook her head. “No.”

They stayed quiet after that and took showers. Both of them getting ready for bed

Later that night, Sophia crawled into bed, ready to put the day behind her. Yeth Sophia couldn’t help but glance over to Daniela, who had already gone to sleep, and was relieved to see that she wasn’t playing with herself.

Heaven above knows Sophia couldn’t have dealt with another ordeal like that. She’d go into hypertensive crisis.

Unfortunately, it seemed like that was the Latina’s goal: kill Sophia and have her burn for eternity .

Because Sophia woke up again, in the middle of the night.

It wasn’t a thump that woke her this time. she wasn’t actually sure what woke her up, but she found herself awake, fighting off a groan, and suddenly being all too aware of a familiar noise.  

The damn whines and pants, exactly like that night.

Not again, please. And without thinking, Sophia sighed, louder than she meant to, and suddenly you could hear a pin drop

Shit. Sophia ang bobo mo. She thought to herself

Daniela heard Sophia.

“Sophia?” Daniela’s voice was so much raspier, than it usually was, and that was such a turn on to hear, but it was embarrassing at the same time.

God, Sophia is going to hell.

Now she was faced with a new dilemma.

Lie? Be honest and say yes, but I promise I’m not trying to listen to you orgasm?

The sound of Daniela moving about in her bed made her close her eyes, feigning sleep, but the little shuffles of the curly haired girl had the Pinay awake and turning to look at her.

Before she could answer, Daniela was now sat on the edge of her bed. Oddly still. Damn sleep paralysis, please be sleep paralysis.

“I know you’re awake” the girl perched on her bed says

“Hey..,” Sophia replied nervously, hoping not to make a big deal out of what was going on. It’s just that, she didn’t want to embarrass Daniela. That’s totally it

Then Daniela shifts her body, body tilting toward Sophia ever so slightly. “I know I woke you up yesterday”

Aw shit.

The silence made Daniela laugh before she lied down. The damn nerve.

“So, you woke up. Stayed awake, listened right? ”

Sophia stiffens beside her and immediately rattles of, “Daniela, I’m so sorry, I’ll fill out the housi-”

“Yeah? Did you like that?” Oh god. What the hell is going on,

“What?” Sophia whispers.
“The show, Sophia?” Daniela’s voice should not have been this seductive.

“Yes,” Sophia relents, breathier than ever meant it to. Taking a dive, finally.

“I thought so, you weren’t exactly subtle” oh my god. “It was so hot, knowing you were listening, Sophia”

Then the oh so familiar breath hitch , and Sophia’s eyes shot over to Daniela’s bed. Having adjusted to the darkness, she could see exactly what she needed to.

Her soft skin stands out in the dark, with she had one hand running over her chest, and the other down her pants…
.
Sophia’s mouth fills, she’s in awe. What the actual hell is happening. Why is this so hot?

“Are you just going to sit there and watch, or you going to get over here and help?” Daniela said, pulling Sophia from her lust filled thoughts.

Sophia sprung up like a spring, crawling into the bed next to Daniela. Daniela made space, trying to get closer to the edge of the bed nearing the wall. Her other hand still busy, the other coming to tangle in Sophia’s silky hair, and in the darkness, lips sought out each other.

 

The kiss was full of tongue, rough sucks, before Daniela panted again, and God, Sophia wanted to take her.

Kissing her harder, stealing every pant, her hands moved, seeking out her flesh.

She tugs at the petite girl’s sleep shorts, once, before getting a nod of permission in between pecks, and that was enough to have Sophia rip them down, until Daniela was left in her soaked panties.

Her shorts were just bunched down her thighs, enough to leave room for access to her pussy. It looked uncomfortable, but Daniela didn’t mind, she moaned into the kiss, the vibration against Sophia’s lips. The slickness of Daniela’s fingers were grazing over Sophia’s skin, and then they were in her mouth, and god, her taste.

Sophia’s fingers skimmed her hip bones, feeling them lift, seeking attention, friction, anything for relief and Sophia was experiencing much of the same

She could wait, however. All her attention was focused on Daniela.
And it was, as her hand took over where the dancer’s had been, and they both groaned the minute Sophia made touch. She was so soaked, and Sophia was torn between touching and wanting a taste.

Daniela made the decision for them, she bucked up her hips, hand coming down, moving Sophia’s wrist until her fingers were inside her tight cunt.

“You’re soaked,” Sophia says in between kisses.
Daniela moans, “yeah, do you like that?”

A thought enters Sophia’s mind before she could answer. This exact scenario was what she was worried about, a 15 minute distraction with a girl. Then, they never talk again, or worse. Never see her again. As if Daniela could see her apprehension, she squeezes tight on the fingers.

“Sophia, if you don’t get me off, you can go back to watching”

“Uh no,” Sophia replied, dropping her lips to the breathless girl’s neck, sucking, first hand experience to hear the sounds that’s been plaguing her mind for days.

That first moment, where she both sucked in a sharp breath, suspended by the feeling of the other, only lasted a second, before Daniela’s hips worked the rhythm she was setting, and her hands wound up in Sophia’s hair, on her neck, clawing at her skin, and making it so that without any direct stimulation, she was getting closer and closer and closer to release.

Daniela had Sophia, metaphorically, on her knees. Her tongue, wet but not overly so, lightly grazing against Sophia’s own, tempting her and Daniela wanted to keep kissing her forever.

But at the same time, she didn’t, because Sophia could feel her pulsing around her fingers, and she needed to hear that damn moan, her pant, that fucking whimper, and when she pulled away from Daniela’s

The sounds did not disappoint.

The girl tipped her head back, one hand squeezing Sophia’s shirt, the other clenching that damn mushroom sheet, and she moaned. Whining and panting followed, then a breath of relief. Sophia curled one last time, receiving another breathy whine and a light tapping on her hand. She finally relents and pulls it out.

Then, Sophia not wanting to be presumptuous, or expect more from the situation got out of Daniela’s bed, left Daniela to come down from her high by herself.
She ignored the throbbing. Her own body was so desperate for release and here she was going to bed.

As she got comfortable in her bed and accepting her defeat.

Daniela climbed into her bed, kissing her so hard that her head was buried in the pillows. The sight that washed over her eyes amazed her, Daniela’s straddling her waist… looking absolutely blissed out. Her eyes were still wet from her orgasm, her body shining with sweat, and cheeks flushed…

Best of all.. those damn hazel eyes were blown to bits. “My turn,” the girl grinned, and Sophia let out a grin.

Daniela kissed her again, proceeds to rock her world…

After that night, Sophia realized that privacy is so overrated.

And now, she could proudly say, seeing Daniela naked was no longer an issue anymore. No more fretting about it, no more worrying, because she’s usually the one getting her bare.

Sophia had decided she could live without the privacy. The loss of privacy felt small compared to everything she gained. It was a trade she’d make a thousand times over. Because now her mornings started with Daniela’s sleepy smile and ended with a soft kiss goodnight, and the time in between somehow always led them back to the same place. Tangled in the sheets of Sophia’s bed, sharing space like it had always belonged to both of them.

And honestly, Sophia was glad for that damn thump