﻿form {
	margin: 1em 0;
	padding: 0;
	width: 98%;
}

form fieldset {
	border: 0 dashed #AAA;
	border-top-width: 1px;
	clear: both;
	margin: 1em 0;
	padding: 0 1em;
	position: relative;
}

form fieldset legend {
	color: #444;
	font: 130%/1.4em Arial, Helvetica, sans-serif;
	font-size: 1.3em;
	font-weight: bold;
	margin: 0;
	padding: .5em;
}

form label {
	clear: left;
	display: inline;
	float: left;
	margin: .2em .2em .2em 0;
	padding: .25em 0;
	width: 65px;
}

form fieldset.compact label {
	width: 6em;
}

form label:hover {
	color: #009;
}

form label.compact {
	/* Wheee! IE6 doesn't know how to calculate margins! */
	display: inline;
	margin: .4em 0 .4em 130px;
	padding: 0;
	text-align: left;
	width: 250px;
}

form label.compact:after {
	content: "";
}

form label.compact input, form label.compact select, form label.compact textarea {
	display: inline;
	margin: 0;
	padding: 0;
}

form input, form select, form textarea {
	clear: right;
	color: #304D6A;
	display: block;
	/* Firefox has a retard party unless font attributes are redeclared */
	font: normal 1em/1.5 Arial, Helvetica, Verdana, sans-serif;
	margin: .2em 0;
	padding: .25em;
}

/*IE can't handle this float, Firefox requires it.
This bypasses IE's "superior" parsing algorithm.*/
html>/**/body form input, html>/**/body form select, html>/**/body form textarea {
	float: left;
}

form input[type="text"], form input[type="password"], form input[type="checkbox"], form select, form textarea {
	border: 2px solid #CCC;
	border-color: #AAA #DDD #DDD #AAA;
}

/* IE7 does this awesome thing where it makes the border
around checkboxes, instead of the actual checkbox. Terrific. */
*:first-child+html form input[type="checkbox"] {
	border-width: 0;
}

form input[type="checkbox"], form input[type="radio"] {
	clear: left;
	display: block;
	float: none;
}

form input[type="text"]:focus, form input[type="password"]:focus, form select:focus, form textarea:focus {
	background-color: #E9E9E9;
}

form input.extended, form select.extended, form textarea.extended {
	clear: left;
	margin-left: 3em;
}

form fieldset fieldset {
	border-width: 1px;
	padding: .3em .5em .8em .5em;
	margin-left: 90px;
	width: 250px;
}

form fieldset fieldset legend {
	font-size: .9em;
}

form fieldset fieldset label {
	clear: none;
	float: left;
	margin: .3em 0;
	padding: 0;
	text-align: left;
	width: auto;
}

form fieldset fieldset label:after {
	content: "";
}

form fieldset fieldset.vertical-list label {
	clear: left;	
	width: 95%;
}

form fieldset fieldset input, form fieldset fieldset select, form fieldset fieldset textarea, form fieldset fieldset input[type="checkbox"], form fieldset fieldset input[type="radio"] {
	float: left;
	margin: .2em .4em;
	padding: 0;
}

/* Hack so that IE6 can see the above */
* html form fieldset fieldset input, * html form fieldset fieldset select, * html form fieldset fieldset textarea {
	/* Also, fix the double-margin float bug */
	display: inline;
	float: left;
	margin: .2em;
	padding: 0;
}

/*Ok, I don't know which browser's box model is making the padding around these
labels and inputs jacked up, but let's just blame it on IE, ok?*/
*:first-child+html form fieldset fieldset input {
	margin-bottom: 0;
	margin-top: 0;
}

/* This one is safe to blame on IE6, but same fix as above. */
* html form fieldset fieldset input {
	margin-bottom: 0;
	margin-top: 0;
}

form fieldset.submit {
	border-width: 0;
	/* Remember class, IE6 sucks. */
	display: inline;
	margin-left: 0px;
}

form fieldset.compact.submit {
	margin: 0;
	margin-left: 50px;
}

form fieldset.submit legend {
	display: none;
}

form fieldset .information {
	background-color: #CADAFF;
	border: 1px solid #AAA;
	font-size: 85%;
	padding: .4em;
	position: absolute;
	right: 1.5em;
	top: 2.5em;
	width: 140px;
}

form fieldset .information h3 {
	border-bottom: 1px solid #AAA;
	font-size: 1em;
	font-weight: bold;
	margin: 0;
	padding: .3em;
	text-align: center;
}

form .inline {
	clear: both;
}

form .inline input, form .inline select, form.inline textarea {
	clear: none !important;
	float: left;
}

form .step-buttons input {
	clear: none !important;
	float: left;
	margin-right: .5em;
	padding: .3em;
}
