1. Done out of habit/routine and yep the code could be created differently using several different ways.
2. Request method POST would not have an OR flag because every RewriteCond is checking POST “and” X. All other other RewriteCond’s could use OR, but I didn’t bother to add OR because the conditions are “is not” and not “is”, which would require using OR. The NC flag means match a case-insensitive string or in other words match ABCD or abcd. The last condition should never have an OR flag because there are no other “or” conditions after the last condition.
Oh and thanks for spotting the missing NC for the customize.php condition. I have added it in the Bonus Custom Code. Technically none of the conditions need an NC flag, but once again done out of habit/routine. 😉