Add an extra argument to the kick command that represents how many minutes the player can't rejoin. Limit it at 30 minutes. Make the vote require higher ratio of yes votes to no than a kick w/o the ban minutes on.
/kick <player> <minutes_MAX30>
No idea how the quake code works or how hard it would be to make it work.