@charset "utf-8";
/* CSS Document */

button { height: 22px; font-size: 10px; padding: 1px; vertical-align: middle; }

table.checkboxes { font-size: 10px; margin-bottom: 0; }
	table.checkboxes td { padding-left: 20px; text-indent: -16px; vertical-align: top; width: 25%; }
table.grid { font-size: 10px; margin-bottom: 0; }
	table.grid caption { text-align: left; }
	table.grid th, 
	table.grid td { vertical-align: top; }
		table.grid thead th { vertical-align: middle; }

.details p,
.details h4, 
.details h5, 
.details ol li { font-size: .9em; line-height: 1.4em; }
.details .formFields p.question { font-weight: normal; font-size: 1em; }

div.answer { margin-left: 2em; margin-bottom: 1em; }
p.note { margin-left: 2em; }
.other { margin: .3em 0 0 18px; }

.formFields { list-style-type: none; margin: 0; padding: 0; }
.formFields:after { content:"."; display:block; height:0; clear:left; visibility:hidden; }
	.formFields li { clear: both; margin: 0 0 .5em 0; padding: 0; position: relative; }
		.formFields li:after { content:"."; display:block; height:0; clear:left; visibility:hidden; }
	.formFields label.title { font-weight: bold; margin: 0 0 .2em 0; padding: 0; position: absolute; top: 0; left: 0; text-align: right; width: 150px; }
	.formFields label.option { display: block; margin-top: -19px; margin-left: 22px; line-height: 22px; }
	.formFields p { margin: 0; padding: 0; }
		.formFields p.question { color: #645950; font-weight: bold; line-height: 1.3em; margin-bottom: .4em; }
		.formFields p.instructions { color: #666; font-size: 99%; margin: 0 0 .5em 0; padding: 0; }
	.formFields .small { width: 100px; }
		.formFields textarea.small { height: 3em; }
	.formFields .medium { width: 50%; }
		.formFields textarea.medium { height: 6em; }
	.formFields .large { width: 99%; }
		.formFields textarea.large { height: 6em; }
	.formFields input.date { width: 100px; }
	.formFields .caption { color: #666; display: block; font-size: 9px; line-height: 1em; margin: 1px 0 10px 0; padding: 0; }
	.formFields .editOptions { position: absolute; top: 5px; left: 5px; }

/* Input types */
	.formFields .formInput { margin-left: 160px; }

/* Address */
	.formFields .addressCity,
	.formFields .addressState, 
	.formFields .addressZip { float: left; display: inline; }
	.formFields .addressCity { width: 200px; }
	.formFields .addressState { width: 120px; } 
	.formFields .addressZip { width: 60px; }
		.formFields .addressCity input { width: 195px; }
		.formFields .addressState select { margin-top: -4px; width: 115px; }
		.formFields .addressZip input { width: 55px; }

/* Name */
	.formFields .namePrefix, 
	.formFields .nameFirst,
	.formFields .nameMiddle, 
	.formFields .nameLast, 
	.formFields .nameSuffix { float: left; }
	.formFields .namePrefix { width: 75px; display: inline; }
	.formFields .nameFirst { width: 150px; display: inline; }
	.formFields .nameMiddle { width: 50px; display: inline; }
	.formFields .nameLast { width: 150px; display: inline; } 
	.formFields .nameSuffix { width: 75px; }
		.formFields .namePrefix input { width: 70px; }
		.formFields .nameFirst input { width: 140px; }
		.formFields .nameMiddle input { width: 41px; }
		.formFields .nameLast input { width: 140px; }
		.formFields .nameSuffix input { width: 75px; }

/* IE 6 Fixes */
	* html .formFields { width: 99.2%; }
	* html .formFields .editOptions { top: 7px; }
	* html .formFields li, 
	* html .formInput { height: 1%; }


/* Validation */
input.required, textarea.required, select.required { border: 1px solid #f00; }
input.disabled { border: 1px solid #F2F2F2; background-color: #F2F2F2; }

input.required, textarea.required, select.required { border: 1px solid #f00 !important; }
input.validation-failed, textarea.validation-failed { border: 1px solid #f00; color : #f00; }
input.validation-passed, textarea.validation-passed { border: 1px solid #00CC00; color : #000; }
label.error { font-weight: bold; }
.validation-advice { margin: 5px 0; padding: 5px; background-color: #FF3300; color : #FFF; font-weight: bold; }
