"Seishun Butayarou wa Hatsukoi Shoujo no Yume wo Minai" (rascal does not dream of girl of his first love) by Kamoshida Hajime. All the volumes up until now prepared us for this moment.
Previous volume had the classical "bad end". And if there was any lingering doubt, this volume start off with a succinct and unambiguous announcement that Mai is indeed dead. What follows are stages of grief starting with denial and anger. Given what happened, this was a reasonable development, and entirely expected for readers who are familiar with the five stages of grief. The next stage after "anger" is of "bargaining", and this is where the story got interesting.
Since time travel was proven possible in the previous volume, that immediately seemed like a useful trick that could be used to save Mai, but some care is needed to weave that into the plot. To that end, a moment of conflict is found in recent timeline where Sakuta could make his time leap, followed by the observer effect from volume 1 and the split personalities from volume 3 to allow two Sakuta characters to exist concurrently. When all that is done, something similar to Laplace's demon from volume 2 merges current and future timelines. We can only marvel at all these features that were planted in earlier volumes all coming together in the end to save Mai, and it was a happy ending for all.
Well, not so fast. Mai and Sakuta both lives, so now Shouko is without an organ donor and should have died. It might seem greedy to want to have every character survive, but Shouko does in fact survive. The details of how Mai managed to change the past was not given in this volume, I suppose that will come much later.
Next volume is about the more mundane problem of getting Kaede to school.
Previous (2020-01-22): Remote release cord
Next (2020-02-19): "Seishun Butayarou wa Odekake Shisutaa no Yume wo Minai" by Kamoshida Hajime