About Apache configuration:
AFAICS, you should start reading (and some experimenting) on this
Apache wiki page about DirectoryListings and how to configure that. I have no LAMP/WAMP installation available, so am unable to provide more detailed pointers, sorry.
About the .style.css file needing to be copied into each directory:
This is caused by this line in .index.php:
<link rel="stylesheet" href="./.style.css">
It points to that file in the current directory ( ./ in front of the filename is a relative location).
By placing the .style.css file into a specific directory like directorystyle in the root of your website, and changing the above line into:
<link rel="stylesheet" href="/directorystyle/.style.css">
you are addressing the file at it's absolute location, and has to be stored only once at the server.
Renaming the file and moving it to the default styles directory is also an option, ofcourse.
The period as the first character of the filename makes the file invisible on *nix OS's, and it can be omitted if the file is moved out of the directories that are visible to the enduser. The name used in .index.php has to be adjusted accordingly, as is to be expected
The same goes for the .index.php file, after you have moved it out of the visible directories using the first pointer in this post.