Rather than using live math at point of transaction, we could add/remove restrictions of a distinct type from the patron account when they go over/under the allowed fine amount.
This would also require a maintenance script to list/update restrictions when values are changed. And an extension to restrictions to determine what kind of actions they block.