The system punishes based on consistency x severity, meaning you can be punished for 1 game of extreme toxicity or many many games of mild toxicity.
Think of behavioral system like a health bar (or tension meter) in music games. When you hit the note at an off beat, your tension meter increases. When you completely miss a note, the meter increases by alot. When you hit the note at good timings, it reduces the meter.
Riot's behavior system works the same way, as in we all have a toxicity meter attached to our accounts. When players are mildly toxic, it goes up a tad. When people use hate speech, it pretty much fills up the meter. of course, clean games reduce the meter.
It is possible for playerA to get punished and playerB not to, even though playerB was waaayyyyy more toxic . Let's say playerA started the game with the toxicity meter at 95% and playerB's at 35%. Ingame, playerB said some pretty nasty shit and playerA responds with some small shit as well. After the game, playerA gains 10% toxicity and playerB gains 50%. Now playerA is at 105% toxicity and gets punished, whereas playerB is at 85%, and not punished in that specific game, even though playerB was found to be 5x more toxic than playerA in that game.
Typically, report callers don't know that asking for reports is considered a harassment, so they do that over many games and eventually they get punished.
Btw, 1 report does the same thing as 9 reports. All a report does is to flag the system to review the game. The toxicity score returned from the review will be the same regardless of how many times a player was reported within the same game. It is also possible for the system to return a toxicity score of 0 if there was no toxicity found within the game.