/* default form styles */
form {
	color: black;
}
input, select, textarea {
	border: 1px solid black;
	padding: 2px;
}
.form_error_note {
	color: red;
	margin: 10px;
	font-weight: bold;
}
.form_required_note {
	font-weight: bold;
	margin: 10px;
}
.form_label_error {
	color: red;
}

/* for uploaded images displayed in an edit form */
.form img {
	margin: 5px;
}

/* default styles for div based form renderer */
div.div_form {
	border: 1px solid black;
	background: #FFFFFF;
	margin: 10px;
	padding: 10px;
	float: left;
	clear: both;
}
div.form_header {
	border: none;
	font-weight: bold;
	font-size: 1.2em;
	padding: 10px 0;
	text-decoration: underline;
	color: black;
	clear: both;
}
div.form_element {
	border: none;
	padding: 3px;
	float: left;
}
div.form_submit {
	border: none;
	padding: 3px;
	float: left;
	clear: both;
}
div.form_label {
	font-weight: bold;
	color: black;
	margin-right: 10px;
	float: left;
}
div.form_field  {
	float: left;
}


/* default styles for table based form renderer */
table.table_form {
	border: 1px solid black;
	background: #FFFFFF;
}
td.form_header {
	border: none;
	font-weight: bold;
	font-size: 1.2em;
	padding: 10px 0;
	text-decoration: underline;
	color: black;
}
td.form_element {
	border: none;
	padding: 3px;
}
td.form_submit {
	border: none;
	clear: both;
	padding: 3px;
}
td.form_label {
	font-weight: bold;
	color: black;
	clear: both;
	float: left;
	margin-right: 10px;
}
td.form_field  {
	color: black;
}

/* default styles for list based form renderer */
.form {}

	.form fieldset {
		margin: 0 0 0 0;
		padding: 0;
	}

	.form fieldset legend {
		border: 0;
		background: transparent;
		color: #FFFFFF;
		font-size: 2em;
		/*font-style: italic;*/font-style: normal;
		font-weight: bold;
		margin: 0;
		padding: .25em;
		text-decoration: none;
	}
	
	.form fieldset fieldset {
		background: #F5DEB3;
		border: 1px solid brown;
		margin: 0;
	}
	
	.form fieldset fieldset legend {
		background: #F5DEB3;
		border: 1px solid brown;
		color: white;
		display: block;
		font-size: 1.2em;
		font-style: italic;
		margin: 0 0 0 .125em;
		padding: .25em .35em .25em .25em;
	}
		
		/* all the form elements are list items inside an ordered list */
		.form fieldset ol {
			list-style: none;
			margin: .25em 0 1em 1em;
			padding: 0;
		}
		
		/* properties for the list item enclosing every form element */
		.form fieldset li {
			border: 0;
			margin: 0;
			padding: 3px 0;
			float: left;
		}
		
		/* properties for list items within grouped form elements */
		.form fieldset fieldset li {
		}		

		/* spans enclose the label and input of the form elements */
		.form fieldset li span {
			display: block;
			color: black;
			font-weight: bold;
			margin: .125em 0;
			margin-right: 10px;
		}
		
		/* properties for form input label wrapper */
		.form fieldset li span.label {
			color: #FFFFFF;
		}
		
		/* properties for form input wrapper */
		.form fieldset li span.field {
		}
			
		.form fieldset li.group {
		}
		
		.form fieldset li.text {
		}
		
		.form fieldset li.select {
		}
		
		.form fieldset li.select select {
			margin-bottom: -0.2em;
		}
		
		.form fieldset li.radio {
		}
		
		.form fieldset li.checkbox {
		}
		
		.form fieldset li.textarea {
		}
		
		.form fieldset li.file {
		}
		
		.form fieldset li.password {
		}
		
		.form fieldset li.hierselect {
		}
		
		.form fieldset li.submit {
			width: 100%;
		}
		
		.form li.static {
			border: none;
			background-color: none;
			list-style-type: none;
		}
			
		.form fieldset li span.date {
			display: block !important;
			width: 100% !important;
		}
		
		.form fieldset li span.date select {
			width: auto !important;
		}
		

/**
 * The following code will clear floats without structural markup
 * Source: http://www.positioniseverything.net/easyclearing.html
 */
.form fieldset ol:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.form fieldset ol {
	display: inline-block;
}

/* Hides from IE-mac \*/
.form fieldset ol {
	display: block;
}
/* End hide from IE-mac */