form div.highlighted {
	background: #e8e8e8 !important;
}


/*default main content form layout */

form h4 {
	color: #900B09;
	margin-bottom: 5px;
	font-size: 12px; /* Font size has to be set in a default style sheet */
}

form fieldset {
	border: 0 none;
	/*border-top: 1px solid #e4e4e4;*/
	padding-bottom: 20px;
}

div.formrowcollection {
	border-top: solid 1px #E4E4E4;
	padding-bottom: 20px;
}

div.formrow {
	height: 1%;
	background-color: #f7f7f7;
	border-bottom: 1px solid #e4e4e4;
	border-top: 1px solid #fff;
	overflow: hidden;
	padding: 4px 5px;
}

div.formrow_disabled{
	color:#B6B6B6;
}

div.lastrow {
	margin-bottom: 20px;
}

div.formrow.radio span {
	float: left;
	font-weight: bold;
	line-height: 19px;
	width: 165px;
}

div.formrow.radio label {
	margin-right: 5px;
	float: none;
	font-weight: normal;
	vertical-align: middle;
}

div.formrow.radio fieldset {
	padding: 0 !important;
	border: 0;
}

/* Form row with a question, requiring unrestricted label (which in this case is a span element) width */

div.formrow.question span {
	width: auto;
	margin-right: 20px;
}

div.optional div.formrow {
	padding-left: 12px;
	border-left: solid 1px #E4E4E4;
	background-color: #fff;
}

/* TODO: replace this, style is to specifi
div#shipmentaddress_extra .formrow,
div#personaldetails_extra .formrow,
div#accounttype_extra .formrow {
	background-color: #fff;
}*/

form div.formrow label {
	float:left;
	font-weight:bold;
	line-height:19px;
	width:165px;
}

form div.formrow label.extrasmall{	
	width: 20px;
}

form div.formrow label.normal{	
	font-weight: normal;
}

form div.formrow label.big {
	width: auto;
}

form div.formrow input.text {
	border-color: #4c4c4c #848484 #848484 #4c4c4c;
	border-style: solid;
	border-width: 1px;
	font-family: Arial,Helvetica,Verdana,Sans-Serif;
	font-size: 12px;	
	padding: 1px 0;
	width: 172px;
	float: left;
}

form div.formrow_disabled input.text {
	background:#E0E0E0;
	border-color:#B3B3B3 #CECECE #CECECE #B3B3B3;
}

form div.formrow input.text.medium {
	width: 70px;
}

form div.formrow input.text.small {
	width: 30px;
}

form div.formrow input.text.numeric {
	text-align: right;
}

form div.formrow .dateofbirth_day {
	margin-right: 5px;
	width: 55px;
	float: left;
}

form div.formrow .dateofbirth_month {
	margin-right: 5px;
	width: 95px;
	float: left;
}

form div.formrow .dateofbirth_year {
	width: 58px;
	float: left;
}

form div.formrow.nochoice span {
	float: left;
	font-weight: bold;
}

form div.formrow.nochoice p {
	margin: 0 0 0 165px;
}

form div.formrow.nochoice p span {
	color: #555;
	display: block;
	float: none;
	font-size: 11px;
	font-weight: normal;
}

form div.formrow.newsletter {
	height: 35px;
}

form div.formrow.newsletter p {
	margin-bottom: 0;
}

form div.formrow.newsletter #registration_field_newslettersubscription {
	float: left;
	height: 17px;
}

form div.formrow.newsletter label.newslettersubscription {
	float: left;
	font-weight: normal;
	line-height: 17px;
	width: 484px;
}

form div.formrow.newsletter label.newslettersubscription span {
	float: right;
	font-weight: normal;
	overflow: hidden;
	width: 466px;
}

form div.formrow.newsletter span {
	float: left;
	font-weight: bold;
	line-height: 19px;
	width: 165px;
}

form div.formrow.checkbox_vatnumber p {
	margin-bottom: 0;
}

form div.formrow.checkbox_vatnumber #registration_field_newslettersubscription {
	float: left;
	height: 17px;
}

form div.formrow.checkbox_vatnumber span {
	font-size: 11px;
	color: #555;	
	width: 634px
}

form div.formrow span.vatnumber_text {
	display: block;
	width: 20px;
	float: left;
}

form p.po_info {
	display: none;
	border-top: 1px solid #ddd;
	color: #545454;
	padding: 9px 21px;
	background: url(/images/default/warning_icon.png) no-repeat 5px 10px;
}

form p.po_info label {
	color: #545454;
	text-decoration: underline;
	cursor: pointer;
}

/*default form exceptions

 NOTE: div.row label etc... should be removed after css, js and template cleanup

*/
form div.formrow label span.additionalrowinformation, div.row label span.additionalrowinformation {
	color:#555555;
	display:block;
	font-size:11px;
	font-weight:normal;
	line-height:11px;
}

form div.formrow div.password_validation {
	padding: 0 0 9px 165px;
	margin-top: -4px;
	float: left;
	clear: both;
	width: 485px; /*need for ie6*/
}


/* buttons */
button {
	border: 0px;
}

button span {
	display: none;
}

/* validation */

/* password validation */
div.passwordrow {
	height: 45px !important;
}

.password_validation_background {
	float: left;
	margin: 4px 7px 0 0;
}

.password_validation_block {
	background: transparent url(/images/default/registration_password_validation.png) no-repeat scroll 0 0;
	height: 8px;
	margin: 1px 0 0 1px;
	width: 122px;
	overflow: hidden;
}

.password_validation p {
	color: #555;
	float:left;
	margin-bottom:3px;
}

img.actionboxtrigger {
	width: 14px;
	height: 14px;
	margin: -3px 0 0 2px;
	background: transparent url(/images/default/question_icon_hover.png) no-repeat scroll 0 0;
	cursor: pointer;
}

img.actionboxtrigger:hover {
	background-position: 0 -14px;
}

.password_validation_short {
	background-position: 0 -8px;
}

.password_validation_weak {
	background-position: 0 -16px;
}

.password_validation_reasonable {
	background-position: 0 -24px;
}

.password_validation_strong {
	background-position: 0 -32px;
}

.password_validation_strongest {
	background-position: 0 -40px;
}

/*errors*/

/*inline errors*/
form div.formrow div.defaultstatus {
	width: 16px;
	min-height: 15px;
	display: inline;
	float: left;
	background: url('/images/default/validation_neutral_icon.png') no-repeat 5px 4px;
}

form div.formrow label.error {
	width: 280px;
	padding-left: 20px;	
	background: url('/images/default/validation_failed_icon.png') no-repeat 5px 4px;
	font-size: 11px;	
	font-weight: normal;
	font-style: italic;
	color: #555;
}

form div.formrow label.valid { 
	width: 16px;
	height: 15px;
	background: url('/images/default/validation_passed_icon.png') no-repeat 5px 4px;
}

form div.formrow span.additionalvalidation {
	padding-left: 4px;
	line-height: 19px;
}

.submitformrow
{
    height: 1%;
    overflow: hidden;
}

/*form*/

.formsubmitrow {
	margin-top: 15px;
}

/* error summary*/
ul.errors {	
	border-top: 1px solid #FF0000;
	color: #FF0000;
	margin-top: 5px;
	padding: 0 0 10px 4px;	
}

ul.errors li {
	background: transparent url(/images/default/validation_failed_background.png) no-repeat scroll 0 2px;
	margin-top: 5px;
	padding-left: 18px;
	padding-right: 5px;
	font-size: 11px;
}

ul.errors li a {
	color: #f00;
}

ul.errors li a:hover {
	color: #fe8b8b;
}

input.error,
textarea.error {
	border: 1px solid #f00 !important;	
}

.validationerrors {
	color: #FF0000;
	margin: 5px;
}

p.registration_mandatoryfields {
	color: #555;
	float: right;
	font-size: 11px;
	line-height: 15px;
	margin: -15px 0 0;
}