Index: trunk/lib/Text/FormBuilder.pm
===================================================================
--- trunk/lib/Text/FormBuilder.pm	(revision 59)
+++ trunk/lib/Text/FormBuilder.pm	(revision 60)
@@ -7,5 +7,5 @@
 use vars qw($VERSION @EXPORT);
 
-$VERSION = '0.09_01';
+$VERSION = '0.09_02';
 @EXPORT = qw(create_form);
 
@@ -24,4 +24,5 @@
 my $DEFAULT_CSS = <<END;
 table { padding: 1em; }
+td table { padding: 0; } /* exclude the inner checkbox tables */
 #author, #footer { font-style: italic; }
 caption h2 { padding: .125em .5em; background: #ccc; text-align: left; }
@@ -227,5 +228,8 @@
     # use the list for displaying checkbox groups
     foreach (@{ $self->{form_spec}{fields} }) {
-        $$_{ulist} = 1 if ref $$_{options} and @{ $$_{options} } >= 3;
+        if (ref $$_{options} and @{ $$_{options} } >= 3) {
+            $$_{columns} = int(@{ $$_{options} } / 8) + 1;
+        }
+        #$$_{ulist} = 1 if ref $$_{options} and @{ $$_{options} } >= 3;
     }
     
@@ -532,5 +536,5 @@
                 $OUT .= qq[    <td><span class="fieldgroup">];
                 $OUT .= join(' ', map { qq[<small class="sublabel">$$_{label}</small> $$_{field} $$_{comment}] } @group_fields);
-                $OUT .= " $msg_invalid" if $$_{invalid};
+                $OUT .= " ] . $msg_invalid . q[" if $$_{invalid};
                 
                 $OUT .= qq[    </span></td>\n];
