p.legend { margin-bottom: 1.5em; }
p.legend em { color: #C00; font-style: normal; }

form { margin:0 -10px 0 -10px; padding: 18px 10px 0 10px; }

div.errors p { margin: 0; }
div.errors p em { color: #C00; font-style: normal; font-weight: bold; }

form p { margin: 0; }
form p.note { margin-left: 80px; color: #333; }
form fieldset { border:none; margin:0 0 1.5em 0; }
form legend { font-size: 2em; margin-bottom: 0.75em; }

label,
span.label { margin-right: 30px; padding-right: 0; display: block; float: left; text-align: right; position: relative; }
label.error, 
span.error { color: #C00; }
label em, 
span.label em { position: absolute; right: -.4em; bottom:.2em; font-size: 100%; font-style: normal; background:none; color: #C00; }
input,
input.error, 
textarea{background-color: #fff; border: solid 1px #666; padding:3px; }
input.error { border-color:#C00; }
input:focus,
input.error:focus, 
textarea:focus {	border-color:#000; }
div.controlset label, 
div.controlset input { display: inline; float: none; }
div.controlset div { margin-left: 170px; }


/* for normal size input/textareas */

.formbuilder div{ clear:both; height:3em;}

.formbuilder label,
.formbuilder span { padding:0; margin:0 10px 0 0; width: 70px; line-height:1.5; font-size:1em;   }

.formbuilder input,
.formbuilder input.error, 
.formbuilder textarea{
font-family: "Microsoft Sans Serif","Helvetica Neue", "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
background-color: none; border: solid 1px #666; padding:.3em 2px .3em 2px; margin: -.4em 0 0 0;  line-height:1em; font-size:1em;   }
.formbuilder textarea{ height:1.5em;}


/* ie 7 hack*/
.formbuilder input,
.formbuilder input.error, 
.formbuilder textarea{ margin: -.2em 0 0 0; }

/* end normal size input/textareas */

.formbuilder div.norm-1 textarea{ height:1.5em;}  .formbuilder div.norm-1 {height:3em;}
.formbuilder div.norm-2 textarea{ height:3em;}    .formbuilder div.norm-2 {height:4.5em;}
.formbuilder div.norm-3 textarea{ height:4.5em;}  .formbuilder div.norm-3 {height:6em;}
.formbuilder div.norm-4 textarea{ height:6em;}    .formbuilder div.norm-4 {height:7.5em;}
.formbuilder div.norm-5 textarea{ height:7.5em;}  .formbuilder div.norm-5 {height:9em;}
.formbuilder div.norm-6 textarea{ height:9em;}    .formbuilder div.norm-6 {height:10.5em;}
.formbuilder div.norm-7 textarea{ height:10.5em;} .formbuilder div.norm-7 {height:12em;}
.formbuilder div.norm-8 textarea{ height:12em;}   .formbuilder div.norm-8 {height:13.5em;}
.formbuilder div.norm-9 textarea{ height:13.5em;} .formbuilder div.norm-9 {height:15em;}
.formbuilder div.norm-10 textarea{ height:15em;}  .formbuilder div.norm-10 {height:16.5em;}
.formbuilder div.big-1 { height:3em;}
.formbuilder div.big-2 { height:6em;}
.formbuilder div.big-3 { height:7.5em;}
.formbuilder div.big-4 { height:10.5em;}
.formbuilder div.big-5 { height:12em;}
.formbuilder div.big-6 { height:15em;}
.formbuilder div.big-7 { height:18em;}
.formbuilder div.big-8 { height:19.5em;}
.formbuilder div.big-9 { height:22.5em;}
.formbuilder div.big-10 { height:24em;}

/* common styles for labels */
.formbuilder div.big-1 label,
.formbuilder div.big-1 span,
.formbuilder div.big-2 label,
.formbuilder div.big-2 span,
.formbuilder div.big-3 label,
.formbuilder div.big-3 span,
.formbuilder div.big-4 label,
.formbuilder div.big-4 span,
.formbuilder div.big-5 label,
.formbuilder div.big-5 span,
.formbuilder div.big-6 label,
.formbuilder div.big-6 span,
.formbuilder div.big-7 label,
.formbuilder div.big-7 span,
.formbuilder div.big-8 label,
.formbuilder div.big-8 span,
.formbuilder div.big-9 label,
.formbuilder div.big-9 span,
.formbuilder div.big-10 label,
.formbuilder div.big-10 span { padding:0; margin:-.2em 10px 1em 0; width: 120px; line-height:1.2em; font-size:1.5em;   }

/* common styles for inputs/textareas */
.formbuilder div.big-1 input,
.formbuilder div.big-1 input.error, 
.formbuilder div.big-1 textarea,
.formbuilder div.big-2 input,
.formbuilder div.big-2 input.error, 
.formbuilder div.big-2 textarea,
.formbuilder div.big-3 input,
.formbuilder div.big-3 input.error, 
.formbuilder div.big-3 textarea,
.formbuilder div.big-4 input,
.formbuilder div.big-4 input.error, 
.formbuilder div.big-4 textarea,
.formbuilder div.big-5 input,
.formbuilder div.big-5 input.error, 
.formbuilder div.big-5 textarea,
.formbuilder div.big-6 input,
.formbuilder div.big-6 input.error, 
.formbuilder div.big-6 textarea,
.formbuilder div.big-7 input,
.formbuilder div.big-7 input.error, 
.formbuilder div.big-7 textarea,
.formbuilder div.big-8 input,
.formbuilder div.big-8 input.error, 
.formbuilder div.big-8 textarea,
.formbuilder div.big-9 input,
.formbuilder div.big-9 input.error, 
.formbuilder div.big-9 textarea,
.formbuilder div.big-10 input,
.formbuilder div.big-10 input.error, 
.formbuilder div.big-10 textarea { padding:0 2px 0 2px; margin: -.3em 0 0 0;  line-height:1.2em; font-size:1.6em;   }

/* specific heights for text areas */
.formbuilder div.big-1 textarea  { height:1.5em;  }
.formbuilder div.big-2 textarea  { height:3em;    }
.formbuilder div.big-3 textarea  { height:4.5em;  }
.formbuilder div.big-4 textarea  { height:6em;    }
.formbuilder div.big-5 textarea  { height:7.5em;  }
.formbuilder div.big-6 textarea  { height:9em;    }
.formbuilder div.big-7 textarea  { height:10.5em; }
.formbuilder div.big-8 textarea  { height:12em;   }
.formbuilder div.big-9 textarea  { height:13.5em; }
.formbuilder div.big-10 textarea { height:15em;   }

/* standard widths match grid */
div.short input,
div.short textarea { width:70px;}
div.medium input,
div.medium textarea { width:110px;}
div.long input,
div.long textarea { width:230px;}
div.xlong input,
div.xlong textarea { width:310px;}
div.full input,
div.full textarea { width:370px;}

.formbuilder div.buttonrow{ clear:both; height:3em; margin-left:80px; }