/*************************************************************************
	Pallant House Bookshop
	Developed by Peter Lewis - Twobelowzero (c) 2009
	MODULE:  	forms.css
	PURPOSE:	Form rules for website
*************************************************************************/

/* ###############   FORMS - GENERAL   ############### */
legend {
	display:none;
}
input,
textarea,
select {
	border:1px solid #6D6E71;
	margin:3px 0 0;
	padding:1px 2px 2px 5px;
	color:#6D6E71;
	background-color:#FFF;
	float:left;
	width:250px;
}
select {
	width:259px;
	padding:1px;
}
input:focus,
input:hover,
textarea:focus,
textarea:hover {
	color:#414042;
	border-color:#000;
}
textarea {
	font: normal 1em/1.5em Arial,"Helvetica Neue",Helvetica,sans-serif;
	padding-top:1px;
}
label {
	clear:both;
	float:left;
	width:100px;
	margin: 4px 5px 0 0;
	color:#6D6E71;
	text-align:right;
}
label em {
	color:#aa2f2f;
	font-size:1.6em;
	line-height:0.7em;
}
button {
	font-weight:bold;
	xbackground:transparent url(/themes/site_themes/pallant/images/basket-checkout.png) no-repeat scroll right 5px;
	border:none;
	padding:0 10px;
	color:#BF0449;
}
button:hover {
	color:#414042;
	text-decoration:underline;
}
button.primary {
	padding:4px 10px;
	background-color:#BF0449;
	float:right;
	color:#FFF;
	font-weight:bold;
}


/* ###############   HEADER - SEARCH   ############### */
#header #search {
	margin:6px 15px 0 10px;
}
#header #search label {
	display:none;
}
#header #search input {
	background:#fff url(/themes/site_themes/pallant/images/search.png) no-repeat scroll 4px center;
	border:1px solid #b2b4b5;
	padding:1px 0 2px 20px;
	margin:3px 0 0;
	width:140px;
	vertical-align:top;	/* IE alignment issue */
}
#header #search button {
	background:none;
	border:none;
	color:#e6e7e8;
	font-size:0.9em;
	font-weight:bold;
	text-transform:uppercase;
	padding:5px;
}
#header #search button:hover {
	color:#bf0449;
	text-decoration:underline;
}


/* ###############   CONTACT FORM   ############### */
#contact-form {
	margin:0 0 20px;
}
#contact-form #newsletter-label {
	width:100%;
	margin-bottom:4px;
	text-align:left;
}
#contact-form #newsletter-signup {
	width:15px;
	margin:3px 6px 0 105px;
	border:none;
	padding:0;
	height:15px;
	vertical-align:top;
}
#contact-form a {
	clear:both;
	display:block;
	float:left;
	margin-left:105px;
	padding-top:10px;
	width:150px;
}
#contact-form a:hover {
	text-decoration:underline;
}
#contact-form button {
	margin:5px 94px 0 0;
}
#captcha-question {
	width:250px;
	margin:0 0 0 105px;
	padding-top:10px;
	clear:both;
}


/* ###############   LOGIN FORM   ############### */
.content #login-form {
	margin-bottom:20px;
}
#login-form #auto-login-label {
	clear:both;
	display:block;
	float:none;
	margin:0 0 0 102px;
	padding-top:5px;
	text-align:left;
	width:250px;
}
#login-form #auto-login {
	float:none;
	margin:3px 2px 0 0;
	width:20px;
}
#login #register-link {
	margin:10px 0 0;
}
#login-form button,
#forgot-password-form button {
	margin:10px 29px 0 0;
}
#login-form .password-reminder,
#forgot-password-form a {
	margin:12px 0 0 38px;
	float:left;
}


/* ###############   REGISTER FORM   ############### */
#register #register-form {
	margin-top:10px;
}
.content #register-form,
#user-details-form,
#quick-checkout-form {
	margin-bottom:20px;
}
#register-form label {
	width:135px;
}
#register-form label span,
#user-details-form label span,
#quick-checkout-form label span {
	line-height:1.2em;
	font-style:italic;
}
#register-form input {
	width:215px;
}
#register-form .full-width,
#user-details-form .full-width,
#quick-checkout-form .full-width {
	width:100%;
	clear:both;
	float:right;
	margin-right:27px;
	margin-bottom:10px;
}
#register-form p,
#user-details-form p,
#quick-checkout-form p {
	clear:both;
	width:100%;
	padding:10px 0 0;
	margin:0;
	display:block;
}
#register-form button {
	margin:5px 29px 0 0;
}
#register-form #newsletter-toggle-label {
	width:100%;
	margin:10px 0 0;
	text-align:left;
}
#register-form #newsletter-toggle,
#user-details-form #delivery-same-address,
#quick-checkout-form #delivery-same-address {
	width:15px;
	margin:2px 6px 0 10px;
	border:none;
	padding:0;
	height:15px;
	vertical-align:top;
}
#register-form #captcha-question {
	margin:0 0 0 92px;
	width:auto;
}


/* ###############   USER INFO FORM   ############### */
#user-details-form label,
#quick-checkout-form label {
	width:155px;
}
#user-details-form #email-address {
	clear:none;
	margin:4px 0 3px;
	width:auto;
}
#user-details-form #delivery-same-address-label,
#quick-checkout-form #delivery-same-address-label {
	text-align:left;
	width:100%;
	margin:15px 0 0;
}
#user-details-form legend,
#quick-checkout-form legend {
	display:block;
	padding:15px 0 5px;
	font-weight:bold;
	font-style:italic;
}
#user-details-form .first,
#quick-checkout-form .first {
	padding:0;
}
#user-details-form button,
#quick-checkout-form button {
	margin:10px 37px 0 0;
display:block;
}
form .instructions {
	color:#BF0449;
}

/* ###############   QUICK CHECKOUT FORM   ############### */
#quick-checkout-form #newsletter-toggle-label {
	width:100%;
	text-align:left;
	margin:15px 0 4px;
}
#quick-checkout-form #newsletter-toggle {
	width:15px;
	margin:2px 6px 0 10px;
	border:none;
	padding:0;
	height:15px;
	vertical-align:top;
}


/* ###############   MODULES   ############### */
#modules button {
	clear:both;
	display:block;
	border:none;
	margin:5px 0 7px;
}
#modules label {
	float:left;
	clear:left;
	width:54px;
	margin:4px 0 0;
}
#modules input {
	float:right;
	width:120px;
	margin:3px 0 0;
	border:1px solid #b2b4b5;
}

#modules #newsletter-form a {
	display:block;
	float:left;
	margin:7px 0 0;
}


/* ###############   VALIDATION   ############### */

#search label.error,
#newsletter label.error,
#contact-form label.error,
#login-form label.error,
#register-form label.error,
#user-details-form label.error,
label.error {
	color:#BF0449;
	margin:0 0 5px;
	text-align:right;
	width:100%;
}
#contact-form label.error,
#login-form label.error,
#forgot-password-form label.error,
#register-form label.error {
	width:362px;
}
#user-details-form label.error,
#quick-checkout-form label.error {
	width:420px;
}
#search input.error,
#newsletter input.error,
#contact-form input.error,
#contact-form textarea.error,
#login-form input.error,
#register-form input.error,
form input.error,
form select.error {
	border:1px solid #BF0449;
	margin-bottom:0;
}
.form-success {
	clear:both;
	display:none;
	color:#414042;
	font-weight:bold;
}
#login .form-success,
#register .form-success {
	text-align:center;
	margin-top:50px;
}

