

form.layout { margin: 20px 0; padding: 0 0 20px 0; width: 100%; }

h1, h2, h3 { font-weight: normal; }
img { behavior: url(iepngfix.js); border: none; }
img.stars { width: 90px; height: 8px; }

/* ----- FORM ----- */

.layout li {  }

form.layout ul { margin: 0 !important; padding: 0 !important; list-style-type: none; width: 100%; }
form.layout li { margin: 0; width: 62%; padding: 4px 5px 2px 9px; position: relative; }

form.layout li:after,
.buttons:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

form.layout li,
.buttons { display: inline-block; }
* html form.layout li,
* html .buttons { height: 1%; }

form.layout li,
.buttons { display: block; }

* html form li div { display: inline-block; }

form.layout li div,
form.layout li span { margin: 0 4px 0 0; padding: 0 0 8px 0; color: #444; }
form.layout li span { float: left; }
form.layout li div.left { display: inline; float: left; width: 48%; }
form.layout li div.right { display: inline; float: right; width: 48%; }
form.layout li div.left .medium,
form.layout li div.right .medium { width: 100%; }

.clear { clear: both; }

form.layout li div label,
form.layout li span label { xmargin: 0; padding-top: 3px; clear: both; font-size: 9px; line-height: 9px; color: #444; display: block; }
form.layout li .datepicker { float: left; margin: .1em 5px 0 0; padding: 0; width: 16px; height: 16px; cursor: pointer !important; }

/* ----- INFO ----- */

.info { display: inline-block; clear: both; margin: 0 0 1em 0; border-bottom: 1px dotted #ccc; }
.info[class]{ display: block; }
.info h2 { font-weight: normal; font-size: 160%; margin: 0 0 3px 0; clear: left; }
.info p { font-size: 95%; line-height: 130%; margin: 0 0 12px 0; }

/* ----- SECTIONS ----- */

form.layout hr { display: none; }
form.layout li.formsection { border-top: 1px dotted #ccc; margin-top: 9px; padding: 13px 0px 0px 9px; width: 97% !important; }
form.layout ul li.first { border-top: none !important; margin-top: 0px !important; padding-top: 0px !important; }
form.layout .formsection h3 { font-weight: normal; font-size: 110%; line-height: 130%; margin: 0 0 2px 0; }
form.layout .formsection p { font-size: 85%; margin: 0 0 10px 0; }


/* ----- FIELDS AND LABELS ----- */

label.desc{
	line-height:150%;
	padding:0 0 1px 0;
	border:none;
	color:#222;
	display:block;
	font-size:95%;
	font-weight:bold;
}
span.symbol{
	font-size:115%;
	line-height:130%;
}
input.text, input.file, textarea.textarea, select.select{
	margin:0;
	font-size:100%;
	color:#333;
}
input.text, textarea.textarea, .firefox select.select{
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
	background:#fff url(fieldbg.gif) repeat-x top;
}
input.text, input.file{
	padding:2px 0 2px 0;
}
input.currency{
	text-align:right;
}

input.checkbox, input.radio{
	display:block;
	line-height:1.4em;
	margin:6px 0 0 3px;
	width:13px;
	height:13px;
}
label.choice{
	font-size:100%;
	display:block;
	line-height:1.4em;
	margin:-1.55em 0 0 25px;
	padding:4px 0 5px 0;
	color:#444;
	width:90%;
}
textarea.textarea{
	font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
}
select.select{
	margin:1px 0;
	padding:1px 0 0 0;
}
select.select[class]{
	margin:0;
	padding:1px 0 1px 0;
}
*:first-child+html select.select[class]{
	margin:1px 0;
}
.safari select.select{
	margin-bottom:1px;
	font-size:120% !important;
}

/* ----- SIZES ----- */

.third { width: 32% !important; }
.half { width: 48% !important; }
.full { width: 100% !important; }

input.small,
select.small { width: 25%; }

input.medium,
select.medium { width: 50%; }

input.large,
select.large,
textarea.textarea { width: 100%; }

textarea.small { height: 5.5em; }
textarea.medium { height: 10em; }
textarea.large { height: 20em; }

/* ----- REQUIRED ----- */

form.layout .req { float: none; color: red; font-weight: bold; }

/* ----- INSTRUCTIONS ----- */

form.layout li.focused { background: #edf2fd; }
form.layout .instruct {
	position: absolute;
	top: 0;
	left: 100%;
	z-index: 1000;
	width: 42%;
	margin: 0 0 0 8px;
	padding: 8px 10px 9px 10px;
	border: 1px solid #FFFBDF;
	background: #FFFBDF;
	line-height: 130%;
	font-size: 80%;
	color: #444;
	visibility: hidden;
}
form.layout .instruct small { font-size: 105%; }
form.layout li.focused .instruct,
form.layout li:hover .instruct{ visibility: visible; }



/* ----- BUTTONS ----- */

.buttons { clear:both; margin-top:10px; }
.buttons input { width: auto; overflow: visible; border: 1px solid #7c7c7c; margin: 0px 10px; padding: 0px 5px; }
