label {
	display: block;
	clear: both;
}

fieldset {
	border: 1px solid #ccc;
	padding: 1.4em;
}

legend {
	font-weight: bold;
	font-size: 1.2em;
}

label span {
	display: block;
	float: left;
	padding: 8px 6px 0 0;
}

label.radios span {
	display: block;
	float: left;
	width: auto;
	padding: 0 6px;
}

.error { float: left }

label.error {
	display: inline;
	clear:none;
	position:relative;
	top:5px;
}

select + label.error {
	top:7px;
}

input, select {
	position: relative;
}

input[type='text'], input[type='password'], input[type='file'],
input.text, input.password, input.file,
input.title, textarea, select {
	border: 1px solid #bbb;
	background-color: #fff;
	margin: .5em 0 0;
}

input[type=text]:focus,input[type=password]:focus,input.text:focus,input.title:focus,textarea:focus,select:focus {
	border-color: #666;
}

input.title {
	font-size: 1.5em;
}

input[type=checkbox],input[type=radio],input.checkbox,input.radio {
	top: .75em;
	float: left;
	margin-right: 0.5em;
}

form.inline {
	line-height: 3;
}

form.inline p {
	margin-bottom: 0;
}

.error,.notice,.success {
	border: 2px solid #ddd;
}

.error {
	background: none repeat scroll 0 0 #fbe3e4;
	-moz-background-inline-policy: continuous;
	color: #8a1f11;
	border-color: #fbc2c4;
}

.notice {
	background: none repeat scroll 0 0 #fff6bf;
	-moz-background-inline-policy: continuous;
	color: #514721;
	border-color: #ffd324;
}

.success {
	background: none repeat scroll 0 0 #e6efc2;
	-moz-background-inline-policy: continuous;
	color: #264409;
	border-color: #c6d880;
}

.error a {
	color: #8a1f11;
}

.notice a {
	color: #514721;
}

.success a {
	color: #264409;
}

input.text,input.title,textarea {
	padding: 5px;
}

button, input[type=button], input.button {
	padding: 0.25em 0.5em;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

