making a trial game entirely random really defeats the point of any of it outside of you making characters and situations that slop streamers will be able to make an afternoons worth of content with before being forgotten again.
Honestly the bones of this are really good. It just seems like you should have a already decided who is and isnt guilty and then give actual clues to which one they are. There were even a few times during the trials were it felt very much like you were hinting at it, but going back through the whole thing a few times to check, it would appear the dialog is the same regardless of guild/innocence. Hell, even just having it randomly determined but also changing the lines for the accused to subtly change depending on their guilt/innocence would be a massive step up. Which you could realistically just copy paste massive parts of your code to accomplish with some fairly minimal smoothing of bugs after.
When the game flips a coin to determine innocence vs guilt, just have it pull up the correct next scene depending. Same as you do between all the different scenes to determine if the eyes are shown upon execution or not (Or just use whatever mechanism you have chosen to implement this feature to pull up subtly different dialog lines).
Who knows, perhaps this is actually the case for some of the later cases, frankly I only went back and replayed the first three until I got different results to see if the lines changed, and from anything I could tell there was no difference in them despite resetting for different outcomes.