In the war-torn kingdom of Gyldan, a once-prosperous realm that collapsed after its royal family vanished a century earlier, eighteen-year-old Corin searches for her twelve-year-old sister, Elly. Their parents are dead: Their mother, a painter, died when Corin was ten, and their father drowned himself a year later. Corin survived by stealing and ruthless bargains, including betraying her commune of artist friends to a landlord named Woodbine in exchange for a lease. Her closest friend from the commune, Harlow, who has since died, condemned Corin for choosing survival over solidarity. The night Corin broke the news to Elly, she smashed a clay fox figurine that had belonged to their father, and Elly said "I hate you" before running away. When soldiers seize Corin's home, she clings to her only heirloom: her grandmother's copper pendant.
The novel alternates between Corin's present-day story and events from over a century earlier involving Princess Amelia of Gyldan. At Amelia's birth ceremony, her three faerie godmothers, Dahlia, Iris, and Clover, grant gifts of beauty and song. Malicine, a half-demon, half-faerie being with green skin and horns, crashes the ceremony and curses Amelia to prick herself on a spindle and sleep forever on her eighteenth birthday. Malicine acts not out of hatred for Amelia but for revenge against the godmothers, who are also Malicine's older sisters and imprisoned Malicine in a cage for fourteen years. Clover uses her remaining gift to decree that true love's kiss will break the curse.
Amelia grows up feeling empty despite her privileged life. She develops a deep bond with her stepmother, Queen Lilith, a bold woman who advocates for refugees and envisions a better Gyldan. When King Victor threatens to exile Lilith for being unable to bear children, Amelia promises to marry a prince and produce an heir, suppressing her romantic feelings for Lilith. Ezran, a prince from the neighboring kingdom of Zilar, proposes to Amelia but privately discovers her feelings for Lilith and coerces her acceptance. Ezran is secretly Lilith's childhood love who followed her to Gyldan. When the godmothers discover the affair, Lilith urges Ezran to flee and protect her "treasure" (273): Gyldan itself and the people she hopes to serve.
In the present, Corin follows Elly's chalk drawings of moonflowers, rare flowers that bloom once every hundred years, into underground tunnels beneath Gyldan. Elly believed the fairy tale about the sleeping princess was real and ran away to find her. Deep underground, Corin discovers the buried castle from the legend, where Ezran and the three godmothers are preparing a ritual to enter the princess's subconscious. When a portal opens above the moonflower-crowned princess at midnight, Corin hears Elly's voice and leaps through.
Corin lands in a snowy dreamworld and reunites with Elly. A dragon attacks, and Corin fights to protect her sister. The dragon transforms into Malicine, who explains they inhabit a landscape shaped by its occupants' subconscious desires, organized into seasonal lands. Malicine warns that if Ezran enters, the dreamscape will collapse. Corin proposes a bargain: She will take the princess's treasure back to Gyldan and trade it to Ezran. The group journeys through shifting seasons to the princess, who lives in a cottage and calls herself Briar Rose. Briar agrees to help Corin find the treasure.
The past timeline reveals how Amelia ends up in the dreamworld. She and Malicine travel to the Otherworld, a desolate realm of dead demons, where Malicine confronts their father, Oleander, the Demon King. Oleander drugs and chains Malicine, planning to use their blood to conquer the human world. Amelia stabs Oleander to save Malicine, and the demon destroys him in a rage, claiming his amulet, a gem capable of opening portals between worlds.
On Amelia's eighteenth birthday, Victor kills Lilith, and Ezran kills Victor in the ensuing violence. Amelia flees to Malicine and, overwhelmed by grief and a lifelong desire to stop existing, stabs herself with a spindle. Malicine restores the sleeping curse, which the demon had earlier revoked, to save Amelia's life and opens a portal into her dreams using the amulet. Together they build the dreamworld as a refuge, burying their nightmares on a separate island called Autumnland. In the real world, Malicine stages a dragon fight against Ezran, creating the fairy tale people will retell for a century.
As Corin travels through the dreamworld, Briar Rose forces her to confront buried truths. Their emotional clashes trigger the novel's central revelation: Elly died of starvation in the tunnels while searching for the princess. The Elly Corin reunited with is a manifestation of her subconscious. Corin found her sister's body underground but suppressed the memory. When Corin opens the treasure chest, she finds not gold but a small canvas, her own childhood painting made with her mother. Enraged, she destroys it and plunges toward Autumnland. Malicine rescues her from the nightmare island but loses the amulet-embedded staff in a river.
After processing her grief, Corin conjures a dream-Elly from the ocean, knowing her sister is gone but choosing to exist with her memory. She begins painting again. During a boat journey, she and Briar deepen their bond, and Corin shares her pendant's history: A fortune teller once saved her grandmother from ending her life and left the necklace.
Ezran breaches the dreamworld using the godmothers' magic, kills them upon arrival, and fatally wounds Malicine in battle. Before dying, Malicine gives Corin a broken amulet shard that fuses into her grandmother's pendant. The dreamworld rapidly collapses. Dream-Elly's body begins dissolving, and Corin must let her go, kissing her forehead and watching sunflowers carry her into the sky.
Corin tracks Ezran through the disintegrating landscape. He overpowers her, but as he raises his sword, Amelia appears, dropping the Briar Rose disguise entirely. Amelia reveals that Lilith's treasure was always Gyldan itself: its people and their future. She offers Ezran her hand, but he reaches for her while gripping his sword. Corin throws herself between them, and the blade pierces her abdomen. She shoves Ezran into the void, where he disintegrates.
Dying, Corin gives Amelia the pendant and tells her to wake up. Amelia pleads that she cannot face a world without Corin. Corin whispers, "I want to see what happens in a world where you don't give up" (362). She kisses Amelia as the amulet opens a portal and her body dissolves.
In the first epilogue, Corin wakes in an alternate reality where her family is alive. She cannot fully remember her dreams, but when she paints, memories return: a demon with horns, a raven, a girl with sunflowers in her hair. Seasonal vignettes show Corin tending a garden with her father, selling art alongside Harlow, now alive, and repairing the fox figurine with gold-colored lacquer that makes it more beautiful for its cracks. She gives the pendant to Elly.
In the second epilogue, set a hundred years earlier, Amelia wakes in the real world. She imprisons Ezran, abolishes the monarchy, and declares Gyldan's only treasure is its people. Over decades she helps build a republic, welcoming artisans and refugees. As an elderly woman, she finds a stranger on a bridge about to end her life, tackles her to safety, and gives the woman the pendant. Amelia is the fortune teller from Corin's family story, completing a circle that spans a century.