
/* Form styles */
#signup
{
	width: 410px;
}
#signup fieldset	
{
	margin: 0 0 20px;
	padding: 20px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;border: 1px solid #ccc;
}
	#signup ol
	{
		list-style-type: none;
		padding: 0;
		margin: 0;
	}
	#signup li
	{
		margin: 0 0 12px;
		position: relative;
	}
	#signup label
	{
		width: 100px;
		display: inline-block;
		vertical-align: top;
	}
	#signup fieldset input,
	#signup fieldset textarea,
	#signup fieldset select
	{
		background: #fff url(ico_validation.png) 379px 24px no-repeat;
		display: inline-block;
		border: 1px solid #fff;
		border: 1px solid #ccc;
padding: 10px 10px 10px 10px;
width:230px;
		-moz-transition: background-color 1s ease;
		-webkit-transition: background-color 1s ease;
		-o-transition: background-color 1s ease;
		transition: background-color 1s ease;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
	}
	#signup fieldset select		{ padding: 3px; }
	#signup fieldset #postcode	{ padding: 3px; width: 400px; }
	

#signup input::-webkit-input-placeholder,
#signup input:-moz-placeholder {
	color: #A6A6A6;
}

#signup .validation01
{ 
	background: red;
	color: #fff;
	display: none;
	font-size: 12px;
	padding: 3px;
	position: absolute;
	right: -160px;
	text-align: center;
	top: 0;
	width: 150px;
	outline: 0;
	
	-moz-box-shadow: 0px 0px 4px #ffffff;
	-webkit-box-shadow: 0px 0px 4px #ffffff;
    box-shadow: 0px 0px 4px #ffffff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
#signup input:focus + .validation01 							{ display: block; }

#signup input:focus:required:invalid + .validation01 .valid,
#signup input.error:focus + .validation01 .valid,
#signup input.required:focus + .validation01 .valid,
#signup input:focus + .validation01 .valid					{ display: none; }

#signup input:focus:required:valid + .validation01,
#signup input.valid:focus + .validation01					{ background: green; }

#signup input:focus:required:valid + .validation01 .invalid,
#signup input.valid:focus + .validation01 .invalid			{ display: none; }

#signup input:focus:required:valid + .validation01 .valid,
#signup input.valid:focus + .validation01 .valid				{ display: block; }

#signup fieldset input:required:valid
{ 
	background-color: #fff;
	background-position: 379px -61px;
}

/* Enhanced error styling */
#signup input.error
{
	background-color: pink; 
	background-position: 379px 3px;
	outline: none; 
}
#signup input.required
{
	background-color: #fff; 
	background-position: 379px -29px;
	border: 1px solid #ccc;
padding: 10px 10px 10px 10px;
}
#signup input.valid 
{ 
	background-color: #fff;
	background-position: 379px -61px;
}

#signup input.error::-webkit-input-placeholder,
#signup inputerror :-moz-placeholder {
	color: #fff;
}