Getting started:
About the site:
About the optimizations:
About the warnings:
Pages can't be rendered properly until all style information is read. By putting all your stylesheets in the html head, pages can be rendered while loading which gives users more of a reason to wait. The word 'possibly' is used because with php outputting html, it can't be certain where things are relative to each other. Here's an example:

$foo=mysql_fetch_row(mysql_query('select `html` from `table` where 1;));
echo $foo[0];
echo '<style>...';

Foo may contain the start of the html including the head like this: <html><head>, in which case the able code would be good, or it may contain the whole head like this: <html><head></head>, in which case the code above would be bad.