I really would like to dig into "creating my own template". But i am a little confused about a those different files like for example
top_menu.css / general.css / index.css
As far as creating a custom template - it is really not that hard.
1 - create a duplicate of the UNI or the ALT template and call it what you want. So, the folder would be named tmpl_whatever.
2 - In your templates/tmpl_whatever/scripts/BxTemplName.php change $sTemplName, $sTemplVendor, and $sTemplDesc values to fit your template name.
3 - copy the _header.html page from templates/base/ to templates/tmpl_whatever
4 - in this _header.html file, add a line just above the </head> similar to this:
<link href="templates/tmpl_whatever/css/custom.css" rel="stylesheet"/>
5 - Create a blank file in your templates/tmpl_whatever/css called custom.css
6 - Go into Admin section - Settings - Templates and set your new template as default.
7 - using an element inspector and with caches off, find whatever you need to change, and only place the changes in your custom.css file.
Example: I want to change my sys main logo section from the current color to black (current look.png). I open the element inspector and highlight the section I want to change so that the css styling shows on the right side (sys main logo.png). You can play with making different changes and see what your site will look like. Once you have gotten the desired results, copy the css styling from the right to your custom.css file. But keep in mind - do not include things that are not changed (sys menu logo changed.png and custom css file.png).
There is no need for all the other css files. Using the one custom.css and identifying it in your template _header.html file shuld be enough and a lot easier. You can place any css style changes here, even those that are specific to a module.