form.form_builder br.clear { clear: both;}

form.form_builder div.field { width: 90%; margin: 10px 7px 0px 0px; padding: 3px; font-size: 1.1em;}
form.form_builder div.field label { color: #666; font-weight: bold; display: block; margin-bottom: 3px; }
form.form_builder div.field div label { display: inline;}
form.form_builder div.field span.required { color: #900; font-weight: normal; font-size: 0.9em; }

form.form_builder div.fieldrow { clear: both;}
form.form_builder div.fieldrow div.field { float: left; margin-right: 10px;  }

form.form_builder div.hint { font-size: 90%; color: #999;}

/* sizes */
form.form_builder div.half, form.form_builder input.half, form.form_builder textarea.half          { width: 45%; }
form.form_builder div.third, form.form_builder input.third, form.form_builder textarea.third       { width: 30%; }
form.form_builder div.quarter, form.form_builder input.quarter, form.form_builder textarea.quarter { width: 22%; }
form.form_builder div.fifth, form.form_builder input.fifth, form.form_builder textarea.fifth       { width: 18%; }
form.form_builder div.sixth, form.form_builder input.sixth, form.form_builder textarea.sixth       { width: 15%; }
form.form_builder div.full, form.form_builder input.full, form.form_builder textarea.full          { width: 90%; }


/* text */
form.form_builder input.text { width: 98%; border: 1px solid #ccc; } 
form.form_builder input.file { width: 70%; border: 1px solid #ccc; } 
form.form_builder select.select { display: block;}
form.form_builder input.big { font-size: 150%; line-height: 150%;  border: 1px solid #ccc;} 

/* textarea */
form.form_builder textarea { width: 100%;  border: 1px solid #ccc;}
form.form_builder textarea.large { height: 400px; }
form.form_builder textarea.medium { height: 200px; }
form.form_builder textarea.small { height: 100px; }

/* fieldset */
form.form_builder fieldset.half { float: left; width: 45%; margin-right: 10px; }
form.form_builder fieldset.third { float: left; width: 30%; margin-right: 10px; }
form.form_builder fieldset.quarter { float: left; width: 22%; margin-right: 10px; }


/* error messages */
form.form_builder div.error_message { color: #990000; clear: both; padding: 5px; margin: 0; display: none; font-size: 80%; }
form.form_builder div.error, span.error { background: #FFDFDF; border: 1px solid #990000; }
form.form_builder div.error div.error_message, span.error div.error_message { display: block;}
form.form_builder div.fieldWithErrors { display: inline;}

/* special cases */
form.form_builder div.full_name span.title { width: 10%; }
form.form_builder div.full_name span.first_name, div.full_name span.last_name { width: 40%;}
form.form_builder div.field label.aftertext { font-weight: normal;}

/* groups */
form.form_builder label.under { display: block; }
form.form_builder div.group label { font-weight: normal; }
form.form_builder div.two_col span { width: 48%;}
form.form_builder div.three_col span { width: 30%;}
form.form_builder div.four_col span { width: 30%;}

form.form_builder div.horizontal span { float: left; margin-right: 7px; padding: 3px;}
form.form_builder div.vertical span { display: block; margin-right: 7px; padding: 3px;}
form.form_builder input.date_select { display: block; width: 50px;}

/* buttons */
form.form_builder div.buttons { margin-top: 20px; border-top: 1px dotted #cccccc; padding-top: 10px; clear: both; margin-bottom: 10px;}
form.form_builder div.buttons input { font-size: 120%; margin-right: 5px;}
form.form_builder div.buttons a { font-size: 80%; margin: 0 10px;}