/* Set the baseline font style for the form */
dl.form-fields {
	font-size: 1.1em;
	color: #404040;
}
/* The most basic implementation of a form label/element pair */
dl.form-fields dt {
	clear: both;
	margin-top: 1em;
	color: #377595;
	font-weight: bold;
	padding-bottom: 2px;
}
dl.form-fields dd {
	clear: both;
	margin-bottom: 1em;
	margin-left: 0;
}

dl.form-fields p {
	margin: 0;
	font-size: 1.2em;
}

dl.form-fields dd small {
	display: block;
	font-size: .75em;
}
dl.form-fields label.required:after {
	display: "inline";
	content: " *";
	color: #c00;
}

/* Element sizes */
/* Additional field sizes are specified at the bottom of the stylesheet */
dl.form-fields input.text,
dl.form-fields textarea,
dl.form-fields select,
input.form-field,
textarea.form-field,
select.form-field {
	width: 400px;
	padding: 2px 4px;
	background-color: #f3f8fb;
	border: 1px solid #a0b7cb;
	color: #404040;
}
dl.form-fields input.text,
dl.form-fields select,
input.form-field,
select.form-field {
	font-family: Verdana, Arial, Helvetica, Sans-Serif;	
	font-size: 1.2em;
}
dl.form-fields select optgroup option,
select.form-field optgroup option {
	margin-left: 10px;
}
dl.form-fields select optgroup option:before,
select.form-field optgroup option:before {
	content: "-";
}
dl.form-fields textarea,
textarea.form-field {
	height: 200px;
}

/* Form's primary submit button. */
dl.form-fields dd.form-submit,
div.form-submit {
	width: 410px;
	text-align: right;
}
dl.form-fields dd.form-submit input,
div.form-submit input {
	font-family: Verdana, Arial, Helvetica, Sans-Serif;
}
div.form-submit input {
	font-size: 1em;
}

/*Form buttons inline with different forms*/
dl.form-fields dd.form-submit form {
	display: inline;
}
/* Improve the display of checkboxes/radio buttons */
dl.form-fields dd.input-group input,
dl.form-fields dd.photo-upload input,
dl.form-fields dd.toggle input,
input.form-field-checkbox,
input.form-field-radio {
	vertical-align: baseline;
	margin-right: 1px;
	+margin-right: 0;
}

/* A toggle is a single checkbox on its own line, unrelated to others */
dl.form-fields dd.toggle {
	margin: 1em 0;
}
dl.form-fields dd.toggle label {
	padding-top: .1em;
	font-size: 1.2em;
}

/* A grouping of checkboxes or radio buttons */
dl.form-fields dd.input-group {
	margin-left: 10px;
}
dl.form-fields dd.input-group label {
	display: block;
	font-size: 1.2em;
}

/* A photo upload box */
dl.form-fields dd.photo-upload div.current-photo {
	float: left;
	width: 150px;
	margin: 0 1em 0 0;
}
dl.form-fields dd.photo-upload div.current-photo span {
	display: block;
	text-align: center;
}
dl.form-fields dd.photo-upload div.photo-controls label {
	display: block;
}

/* Allow elements to directly abut one another */
/* This has to be at the end so it can override other margin settings */
dl.form-fields dt.flush,
dl.form-fields dd.flush {
	margin: -1em 0;
}
dl.form-fields dt.flush-top,
dl.form-fields dd.flush-top {
	margin-top: -1em;
}
dl.form-fields dt.flush-bottom,
dl.form-fields dd.flush-bottom {
	margin-bottom: -1em;
}

/* Float enclosure time! */
dl.form-fields dd.photo-upload:after {
	clear: both;
	display: block;
	visibility: hidden;
	height: 0;
	content: ".";
}
dl.form-fields dd.photo-upload {
	+zoom: 1;
}

/* Supplementary field sizes */
dl.form-fields input.small-number,
input.form-field.small-number {
	width: 3em;
}
dl.form-fields input.date,
dl.form-fields input.time,
input.form-field.small-number {
	width: 8em;
}
