Hi, about your problem with hovers:
<div bar>
<div value></div>
</div>
This makes that if you apply opacity to bar, then is also applied on value, as they are nested.
- Instead, you can do something like:
<div cont>
<div bar></div>
<div value></div>
</div>
Where, in this case, cont would be the one who has position:relative
and value would hace position:absolute
(and special opacity etc). That would separate the styles for bar and value.
Good job overall and by the way, what advantages can you obtain by modularizing as much as you have done? Maybe I don't know about frameworks and libraries yet, but is a genuine question as I'm always comfortable in my three .html, .css and .js files, but I see lots of modularized codes.
Cheers friend.