if you create a file in your theme called 'category-$id.php' then it will be applied to only the category with the id of $id (i.e. whatever the categories id is).
If you want a totally different theme for that category, then you can just make that one file be completely different from the rest of the files in your theme. The complicated part is that you'll have to make sure that all the included files (like sidebar, header) are either all in that one file (category-28.php), or that the file includes special versions of those includes (so you'd have to rename them sidebar-28.php or something). You'll also have to include a different CSS file etc.
Hmmm.. rereading your quesetion, if the HTML is always the same, then do you mean that it's only the CSS that changes? In that case you could have the if statements in ONLY the header where the CSS gets loaded. Alternately, you can make special versions of the header and use the category-28.php trick above to load different versions of the header for the special categories.