Try changing your rule to:
RewriteCond %{HTTP_HOST} ^([a-z0-9]+)\.domain\.com$ [NC]
RewriteRule ^([a-z0-9]+).html$ index.php?page=site/$1&skin=%1 [L,NC]
Specifically, you're backreference is being lost, so you need to create one backreference for your previous RewriteCond
(via %1) and then one against the rule's regex, which is backreferenced via $1.