.flirts_list li p {
display: inline;
}
Yes that will work as long as your flirts contain only text. Now that the <p> tag has been changed to be an inline tag rather than it's natural block tag format, the <p> tags will no longer stack therefore if you include images the text will run in-line with the image rather than below or above the image. The same goes if you want several separate lines of text.
One workaround would be, when you create your flirts in the TinyMice editor is to manually edit the HTML and use the <br /> tag in place of the <p> tags, which would be a bit of a pain.
If you're including images in all your flirts this hack works reasonably well.
.flirts_list li input {
display: inline;
margin-top: 50px;
width: 50px;
float: left;
}
When floating blocks, text will naturally wrap around the content of the floated block, but it still looks ok. There's hacks that can be used to stop text from wrapping around floated blocks, however they are kind of complex and can be quirky in some browsers.
As great as CSS is, there are still some instances where tables can make life a lot easier, maybe this is one of those instances, especially given the fact that the HTML is created by TinyMice.
I always use CSS as the primary structure for developing a site, however there are certain things within the CSS structure I will still use tables for (tables styled with CSS). One example is creating something like a "Feature Comparison Chart" where you have multiple rows and columns that you want to be structured very tight and specific. Sure it can be done using just CSS, but it's not all that easy and can sometimes be very frustrating, and the flirt selections is somewhat similar to a feature comparison chart.
Having the radio selection button centered to the left of the flirts is probably the most aesthetically pleasing way to have it, however I personally don't have any real problems with the radio selection button appearing directly above the flirts. I just made the separator line between flirts a little bolder and more distinctive so there's no chance of any confusion for the user.