My cursor hovered between public and private until my eyes burned. The laptop’s screen glared into the dark kitchen, reflecting my own face back at me—smeared eyeliner, wild hair, bandage bright against my palm.
My phone wouldn’t stop buzzing.
I yanked off my headphones and grabbed it. The call screen flashed SADIE in sharp white letters.
“Hey,” I said, throat raw. “I was just going to—”
“Mara.” Her voice came in shredded, too loud, like she’d been shouting. “He’s in the hospital. They took him to the hospital.”
The floor under me tilted. “What? Who?”
“Mr. Cooke.” She inhaled in jerks. “I— God, I’m at Crescent Bay General, they just brought him in. An ambulance. He— he collapsed, they said panic attack, but his chest— he couldn’t breathe. People went to his building. They were banging on his door, screaming that poem, and he—”
“Stop,” I said, but my fingers had already grabbed my keys off the table. The metal bit into my bandage. “Are you okay? Did they hurt you?”
“I wasn’t there,” she said. I heard hospital sounds behind her: a distant intercom, the squeak of wheels on linoleum, a baby crying somewhere too far away to help. “I was watching the thread. I saw them talking about going, and I was typing, I was telling them not to, but I— I’m the one who catalogued all the old posts about him. I made it easy.”
My stomach clenched. In my mind, the chat replayed itself in a blur of usernames and capital letters.
“Which thread?” I asked, pushing out the apartment door. The hall air hit me, damp with detergent and the faint sourness of overworked machines.
“The Q&A live one,” she said. “The Oracle call is clipped everywhere. They’re calling it the Crossing Clue. Someone screenshotted the old doxxing post before I could lock it. They showed up at his building and started chanting ‘cross the bar, cross the bar,’ like it’s a stadium, and his neighbor called 911 when he fell down in the hallway.”
I took the stairs two at a time. “I’m driving over,” I said. “Stay put. Text me which entrance.”
“He looked so gray,” she whispered. “They were wheeling him past, and he looked straight at me like he knew. Like he knew it was us.”
I didn’t have an answer to that picture, so I hung up before I could try to fix it with a sound bite.
The night air on the street slapped me with cold salt and car exhaust. Somewhere down toward the waterfront, bass thudded from a charity gala—probably a regatta fundraiser or Prom Throwback rehearsal—underscoring the siren that had just started to wail in my head.
I drove too fast.
The road to Crescent Bay General skimmed the edge of the cliffs for a stretch, where kids had once snuck cigarettes after dances, daring each other to look down at the rock shelf the town pretended wasn’t there. In the dark, the guardrail flashed in my headlights, silver teeth guarding a drop the town brochures never mentioned.
I gripped the wheel until the bandage on my palm throbbed.
At the hospital, the parking lot lights turned everything jaundiced. I parked without looking at the lines, locked the car twice out of habit, and jogged toward the sliding doors. The automatic sensor hesitated, then parted with a puff of warmed, chemical air that smelled like antiseptic, burnt coffee, and the faint tang of someone’s floral perfume.
Inside, the waiting area hummed. A TV on the wall showed footage from some coastal race, sleek boats slicing through blue water, the sound muted. Donor plaques lined the hallway—Harrow, Calder, Quinn—polished brass gleaming above brochures for wellness programs nobody I’d grown up with could afford.
Sadie popped up from one of the vinyl chairs when she saw me, her eyes huge behind smeared glasses. Her hoodie was inside out; the seams stuck out like exposed ribs.
“Oh thank God,” she said, and grabbed my arm hard enough to grind bone.
“What happened?” I asked. “Tell me the whole thing. Slow.”
She tried. The words tripped over each other.
“After you ended the stream, the subreddit blew up,” she said. “People were clipping the Oracle call, making theories. I was deleting names, locking threads, doing all the stuff we always do, but people kept opening new ones. Then this one user said they lived in his building? And a bunch of them decided they were going to ‘ask him some questions for Juliet.’ They filmed themselves in the elevator, Mara. They were smiling.”
Her mouth folded around the last word like something sour.
“Did you call the police?” I asked.
“I called Luz,” she said, shame flaring across her face. “I didn’t know if she’d pick up from me, but she did. She was already in the car. Someone from the building had called 911 for a disturbance, so an ambulance and a cruiser were on the way, and Luz beat them there.”
I pictured Luz barreling across town in her unmarked sedan, lights off, jaw tight.
“They posted a new video,” Sadie whispered. “You can’t see him, just the hallway, but you can hear everything. He’s on the floor, breathing like he’s drowning. Someone is yelling that he killed Juliet, that Oracle said so. And then Luz’s voice cuts in and the phone drops and the video ends. I’m taking them down as fast as I can, but there are mirrors already. I can’t—”
Her hands started to shake. I grasped them, felt the cold sweat between our palms.
“Hey,” I said. “Enough. You called Luz. You tried to stop it.”
“I built the map,” she said. “I put a little flag on his name and said, ‘look here.’”
Her shoulders hitched once, violently, before she forced them down. She looked over my shoulder, eyes fixing on something behind me.
I turned.
Luz stood at the edge of the waiting room, wearing jeans and a Crescent Bay PD sweatshirt, hair pulled back in a rough knot. The fluorescent light bleached her skin, but her eyes burned.
“Quinn,” she said. Her voice held zero warmth. “Go home.”
Sadie flinched. “I should stay. I can help—”
“You’ve helped enough for one night,” Luz said. “Go home. Don’t post, don’t comment, don’t mod. Turn your phone off and try to remember you have a life offline.”
For a second I thought Sadie would argue. Then her shoulders caved in on themselves. She looked at me, searching for a countermand.
I didn’t have one.
“Text me when you get home,” I said quietly.
She nodded, movements small, and walked toward the exit like someone had turned down her battery. The automatic doors gasped open for her and sucked in another burst of cold, salty air.
Luz watched her go, then jerked her head toward a side corridor. “You,” she said to me. “Come with me.”
My legs felt like they belonged to someone heavier, but I followed.
The corridor off the ER was quieter, lined with closed doors and a vending machine buzzing faintly, its glass reflecting the harsh light. The smell concentrated here—bleach, rubber, old coffee.
Luz stopped between two supply rooms and turned to face me. Up close, I could see a smear of something dark on her sweatshirt, like she’d wiped her hands on it without thinking.
“Is that—” I started.
“He’s not dead,” she cut in. “If that’s what you’re about to ask. They think it’s a severe panic attack layered on top of god knows what structural problems. They’re checking for heart damage. He’s in observation. You don’t get to see him.”
My throat tightened. “I just wanted to make sure he—”
“No,” she said. The word landed like a door slam. “You don’t get to just anything right now.”
I felt my spine stiffen. “Luz, I tried to shut it down. I told them not to go after him. I ended the stream.”
“After you put Oracle live on the air.”
The hallway buzzed around us. A nurse pushed a cart past, wheels squeaking, eyes flicking over us before looking away again. Crescent Bay had always been good at pretending not to see the mess under the gala tables.
“He was going to blow up no matter where he spoke,” I said. “If I’d hung up, he would have dropped it in the Discord, or the subreddit, or sent it to a bigger show. This way at least I could try to frame it, contextualize—”
“Frame it,” she repeated. “You keep using that word like you’re talking about a photo and not a man’s life.”
The back of my neck burned.
“You told me you wanted to talk without handing them torches,” Luz said. Her voice stayed low, but it had an edge I hadn’t heard before. “Tonight you handed Oracle a blowtorch and then yelled ‘be careful’ over the fire.”
“I laid ground rules,” I said. “I reminded them about accuracy, about not doxxing—”
“And the minute the ratings candy called in, you took the call,” she snapped. “Because it was good audio. Because you knew that if you shut Oracle out, the fandom would go feral. You gambled that you could ride the chaos and hop off before it hit the rocks.”
A bead of sweat trickled down my spine. I shifted my weight against the wall, the painted cinderblock cool through my jacket.
“You think I did this for clicks,” I said.
“I think you did this because you believe in your gut that your narrative instincts and your disclaimers are enough to keep people safe,” she said. “And I’m telling you, right now, that they’re not. The people screaming Tennyson in Cooke’s hallway aren’t listening for nuance. They’re listening for a story where they get to play hero.”
A monitor beeped twice behind the wall. I pictured Mr. Cooke in a bed on the other side of the plaster, chest wired up, breath shallow.
“He told me he saw Juliet leave the gym alive,” I said quietly. “With ‘the wrong boy.’ If Oracle takes him out of the equation, we lose that thread. That’s not an accident, is it?”
Luz’s jaw shifted. For a second, anger had to make room for something else.
“We’re looking at that,” she said. “I have officers trying to track down the users who went to his building. If we can prove intent to harass, we can charge them. But the video? The call? Oracle’s riddle? That’s murkier.”
“Because of free speech,” I said dully.
“Because of you,” she said. “Because a defense attorney is going to pull up your stream and say, ‘Detective, you’re telling us the police investigation was compromised by vigilantes, but didn’t you yourself go on this podcast and talk to the host? Didn’t you legitimize her platform by feeding her information?’”
Her hand cut through the air. “This plays right into the brass’s idea that I’m compromised. They’re already using Cooke’s collapse as proof that your show is dangerous, that reopening Juliet’s case is fueling mob justice instead of uncovering truth.”
Guilt clawed at the lining of my ribs.
“You want me to stop,” I said. “Tonight. Pull the season, go dark, leave it to the police.”
Luz stared at me for a beat, then shook her head once. “I want you to take responsibility,” she said. “Publicly. I want you to admit to your listeners that your platform can hurt people. I want you to stop pretending Oracle is a mysterious but somehow useful source. They are using you. Do you understand that?”
Words jammed behind my teeth. I thought of the glass rose on my counter, the note about stories having endings. I thought of the cliffs, the rock shelf, Juliet’s dress soaked in salt water and rumor.
“If we stop paying attention,” I said, “who do they go after next? Katie? Some girl who was at that island party and never told anyone? Me? My son?”
Luz stepped closer. The sharp clean scent of her soap cut through the hospital air.
“They’re already going after you,” she said. “The difference is, you chose this. Cooke didn’t. Juliet didn’t. Theo definitely didn’t.” Her gaze caught mine and held it. “You talk a lot about whose story this is. Maybe start acting like you believe it isn’t yours to bend for the arc you want.”
The words landed in a place inside me that had been bracing for a blow all night.
I swallowed. “Can I see him?” I asked, knowing the answer.
“No,” she said, softer now. “Not tonight. Maybe not ever, depending on what his lawyer says when he wakes up.”
“If he wakes up,” I said, and the thought tasted wrong the second I let it out.
Luz flinched. “Don’t do that,” she said. “Don’t narrate him into a grave he’s not in yet.”
We stood in silence, the hum of fluorescent lights loud between us.
“I have to get back to the station,” she said finally. “There’s paperwork, statements, a chief who’s already drafting an email about ‘online hysteria.’ Go home. Lock your doors. Don’t go live. I mean it, Mara. I can’t pull you out of this if you keep jumping into the fire.”
“What if Oracle calls again?” I asked.
“Let them scream into the void,” she said. “For once, don’t give them a microphone.”
She walked away without touching me, sneakers squeaking on the tile, and turned a corner toward the elevators.
I stood there until my legs threatened to fold, then pushed myself back toward the waiting room. The TV still showed glossy boats skimming clean water. Underneath, a ticker scrolled local news, including a line about Crescent Bay High’s upcoming Prom Throwback fundraiser. Adults in rented 90s outfits would dance under replica glass roses while the town pretended its original tragedy was just an aesthetic.
I couldn’t breathe that air anymore.
Outside, the night had deepened. The parking lot hummed with distant engines and the soft rush of the ocean beyond the buildings. A nurse on a smoke break leaned against the wall, hair smelling faintly of hairspray and nicotine, blowing exhale ghosts toward the cars.
I headed toward my own beat-up sedan, clicking the key fob out of habit.
That’s when I saw his.
Mr. Cooke’s car sat three spaces over from mine, the same faded blue sedan I’d followed once out of town to that dive bar where he’d finally talked. The faculty parking sticker from Crescent Bay High still clung ghostlike to the windshield, edges curling.
A strip of hospital tape on the dash bore his name in Sharpie, probably slapped there by an orderly moving it earlier. Someone had wiped the windshield; streaks caught the light.
And in the center of the dashboard, resting right against the glass, there lay a single glass rose.
My brain tried to mislabel it—paperweight, ornament, coincidence—before my body overruled it. Every nerve recognized the precise way the petals arched, the way the stem curled, the way light fractured through it so that tiny cuts of red and clear light danced across the steering wheel.
My bandaged palm throbbed in time with my heartbeat.
The nurse’s smoke drifted toward me. The salt tang of the bay pressed against the hospital’s chemical breath. Somewhere far off, from the waterfront, a bass line threaded up into the night—another party, another story people could dance to without knowing the bodies under the floor.
I stepped closer to Cooke’s car until my reflection swam with the rose’s in the windshield. Tiny grains of something glittered on the dash around it. For one sick second I thought they were shards, but they stayed whole when I angled my head.
Sand.
Harrow Island sand had a different color than Crescent Bay’s main beach, a paler, almost pearly grit that stuck to ankles and the soles of boat shoes. I’d remembered that detail from some old yearbook essay about regatta camp, written by a girl who’d thought private islands were romantic, not dangerous.
My lungs forgot their job.
Someone had been close enough to this car to open the door, to place the rose, to sprinkle that sand. Someone who knew exactly what that object meant to me now. Someone who wanted me to see that Cooke wasn’t just under siege from bored listeners with pitchforks made of Wi-Fi.
Oracle’s riddle had turned my fandom on him.
The glass rose told me the real threat was standing a lot closer.
I backed away, heart hammering against my ribs, suddenly aware of every shadow in the lot, every dark window on the hospital façade. The automatic doors hissed open behind me as another visitor walked out, their shoes slapping against the concrete, but my body wanted to spin, to search every face for a glint of recognition.
I forced myself to unlock my car, slide behind the wheel, and hit the lock button again with shaking fingers.
On my lap, my phone lit up with a new notification.
An anonymous voicemail, time-stamped from twenty minutes earlier.
My thumb hovered over the play icon while the glass rose in Cooke’s car burned in my peripheral vision—a silent, glittering reminder that my podcast wasn’t just telling a story anymore.
It was choosing who got to keep a voice in it.
And somebody else had started writing their own script on my set.