Your problem is that you set a width of 16px on the left border, but then override that in the next rule with “thick”. I’m not sure how wide “thick” is generally rendered, and I suspect it varies by browser.
If you look at the problem code using developer tools, you can see that the border-left-width:16px; rule is crossed out, meaning that it isn’t being applied; something else is overriding it. Later rules take precedence over earlier rules, so it’s then quite easy to track down the problem.