/**
 * <maanfabriekje.be
 *
 * Contains all declarations for form elements.
 *
 * @author 			Gerrit Bertier <gerrit@marlon.be>
 * @copyright		Marlon bvba <http://www.marlon.be>
 * @date 			2009-04-08
 * @lastmodified	2009-04-08
 */

/* redefine xhtml selectors
---------------------------------------------------------- */

form {
	margin: 0;
	padding: 0;
}

label {
	
}

label span {
	float: left;
}

fieldset {
	background: transparent url(../img/horizontal-top-stitches.png) no-repeat 0 100%;
	margin: 0 0 0;
	padding: 15px 0 20px 0;
	zoom: 1;
	border: none;
}

fieldset legend {
	display: none;
}

fieldset.last {
	background: none;
	padding-bottom: 0;
}

input, select {
	font-family: Arial, Helvetica, Verdana, sans-serif;
	font-size: 1em;
}

select {
	color: #59afae;
	padding: 1px 0;
	width: 150px;
	border: 1px inset #d6d1cb;
}

textarea {

}

input.field {
	padding: 2px 6px;
	color: #59afae;
	border: 1px inset #d6d1cb;
}

input.radio, input.check {
	border: none !important;
}

.check { 
	display: inline; 
	margin: 4px 4px 0 2px;
	padding: 0;
}

.radio {
	margin: 0 5px 0 0; 
	border: none;
}

div.form-actions {
	margin-left: 190px;
	margin-top: 20px;
}

form dl {
	position: relative;
	margin: 0;
	float: left;
	width: 510px;
}

form dd {
	position: relative;
	padding: 4px 0 4px 190px;
	margin: 2px 0 0;
	width: 320px;
}


form dd label {
	display: block;
	float: left;
	margin: 0 15px 0 0;
	width: auto;
}

form dt {
	text-transform: lowercase;
	position: absolute;
	z-index: 10;
	margin: 8px 0 0 10px;
	width: 170px;
}

form dd.focus {	background-color: #eef6f1; }
form dd.error {	background-color: #fdf2d0 !important; }

form dd.error input,
form dd.error select,
form dd.error label,
form dt.error {
	font-weight: bold;
	color: #c87b00;
}

form .formactions {
	float: left;
	clear: both;
	margin: 10px 0 0;
}

form p.errormsg {
	background: url(../img/sprite_arrows.png) no-repeat -600px 8px;
	float: left;
	display: inline;
	color: #c87b00;
	margin-left: 10px;
	padding-left: 15px;
}

form dd ul.errormsg {
	position: absolute;
	top: 2px;
	left: 530px;
	width: 175px;
	padding: 0;
	list-style: none outside none;
}

form dd ul.errormsg li {
	background: transparent url(../img/sprite_arrows.png) no-repeat -600px -193px;
	color: #c87b00;
	padding: 2px 0 0 15px;
	text-transform: lowercase;
}

form p.note {
	color: #c18785;
	font-size: 0.9167em;
	line-height: 1.4545em;
	margin-right: 5px;
}

/* input field sizes
---------------------------------------------------------- */

.xx-small { width: 20px; }
.x-small { width: 40px; }
.small { width: 147px; }
.medium { width: 170px; }
.large { width: 210px; }
.x-large { width: 302px }

select.large {	width: 223px; }
select.medium {	width: 183px; }

.scalable {
	width: 100%;
	min-width: 100px;
	max-width: 960px;
}

textarea {
	margin: 0 0 0 0;
	padding: 3px 8px;
	width: 298px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1em;
	color: #2EA09F;
	border: 1px inset #c3c3c3;
	overflow-y: auto;
	overflow-x: hidden;
}

.error textarea {
	font-weight: bold;
	color: #c87b00;
}

/* required
---------------------------------------------------------- */

.required .indicator {
	float: none;
	width: auto;
	color: #c87b00;	
}

/* help
---------------------------------------------------------- */

form dd .help {
	position: absolute;
	top: 5px;
	right: -190px;
	width: 160px;
	text-indent: 17px;
	background: url(../img/sprite_icons-buttons.png) no-repeat -8px -480px;
}

/* button
---------------------------------------------------------- */

input.button {
	float: left;
	background: #59afae;
	border: none;
	line-height: 22px;
	color: #fff !important;
	padding: 0 4px;
	overflow: hidden;
	text-decoration: none;
}

/* search form
---------------------------------------------------------- */

#search form fieldset {
	background: none;
	float: right;
	padding: 0 0 35px 0;
}

#search label {
	color: #daaaae;
	float: left;
	font: bold 1em/1.5em Arial, Helvetica, sans-serif;
	text-transform: lowercase;
	margin-top: 13px;
}

#search select, #search input {
	float: left;
	margin: 12px 7px 0;
	
}

#search select {
	position: relative;
	z-index: 5;
	left: 3px;
}

#search .button {
	background: transparent url(../img/sprite_icons-buttons.png) no-repeat 0 -100px;
	cursor: pointer;
	height: 22px;
	text-indent: -999em;
	overflow: hidden;
	width: 22px;
	margin: 11px 0 0;
}
#search .button:hover {
	background-position: 0 -140px;
}

/* shop assistant
---------------------------------------------------------- */

.block fieldset {
	background: none;
}

form .shop-assistant dl {
	float: left;
}

form .shop-assistant dl dt {
	clear: both;
	float: left;
	margin: 6px 0 4px 0;
	width: 100%;
	position: static;
}

form .shop-assistant dl dt.first {
	margin-top: 0;
	width: 150px;
}

form .shop-assistant dl dd {
	clear: both;
	float: left;
	margin: 0 0 4px;
	width: 150px;
	padding: 0;
}

.shop-assistant .extra-filter {
	clear: both;
	display: inline;
	float: left;
	margin: 50px 0 0 50px;
	width: 150px;
}

.shop-assistant .extra-filter p {
	clear: both;
	display: inline;
	float: left;
	margin: 0;
	padding: 0 0 20px;
}

.shop-assistant .extra-filter ul {
	clear: both;
	display: inline;
	float: left;
	margin: 0;
	padding: 0 0 20px;
	width: 150px;
}

.shop-assistant .extra-filter li {
	clear: both;
	display: inline;
	float: left;
	list-style: none outside none;
	margin: 0;
	padding: 0;
	width: 150px;
}

.shop-assistant label.checkbox-value,
.shop-assistant label.radio-value {
	display: inline;
	float: left;
	margin-top: 0;
	position: relative;
}

.shop-assistant label.checkbox-value input,
.shop-assistant label.radio-value input {
	position: absolute;
	left: 0;
	top: 0;
	margin: 0;
}

.shop-assistant label.checkbox-value span,
.shop-assistant label.radio-value span {
	display: inline;
	padding-left: 25px;
	padding-top: 1px;
	line-height: 1.35em;
}

form .shop-assistant .error,
form .shop-assistant .error strong {
	color: #c87b00 !important;
}
form .shop-assistant .errormsg {
	color: #c87b00;
}

.shop-assistant label {
	margin-right: 0 !important;
	line-height: 1.2em;
}

.shop-assistant label input,
.shop-assistant input.radio,
.shop-assistant input.checkbox {
	float: left;
}

/* Step 1 */

.step1 input.field {
	width: 136px;
}

/* Step 2 */

.step2 fieldset {
	width: 415px;
	float: left;
	display: inline;
}

.step2 dl {
	float: left;
	display: inline;
	width: 199px;
	padding-right: 16px;
}

.step2 dl.last {
	padding-right: 0;
}

.step2 dl dt {
	margin-top: 0 !important;
	width: 199px;
}
.step2 dl dd {
	width: 199px;
}

.step2 dl dd ul {
	float: left;
	margin: 0;
	padding: 0;
	width: 199px;
}

.step2 dl dd ul li {
	clear: both;
	float: left;
	display: inline;
	margin: 0;
	padding: 0 0 4px 0;
	width: 199px;
}

.step2 label.checkbox-value {
	float: left;
	display: inline;
	width: 199px;
	line-height: 1.35em;
}

/* Step 3 */

.step3 dl dt {
	width: 155px !important;
}
.step3 dl dt.first {
	margin-top: 0 !important;
}

.step3 dl dd {
	width: 155px !important;
}

.assistant select {
	color: #2ea09f;
	float: left;
	padding: 1px 0;
	width: 150px;
	border: 2px inset #d6d1cb;
}

.assistant input.checkbox {
	clear: both;
	display: inline;
	margin: 0px 8px 4px 0;
}

.assistant input#btn-next-step,
.assistant input#btn-edit-prefs {
	cursor: pointer;
	position: absolute;
	display: inline;
	background: transparent url(../img/sprite_icons-buttons.png) no-repeat 100% -900px;
	padding: 4px 10px 5px;
	line-height: 25px !important;
	height: 34px !important;
	color: #fff;
	text-transform: lowercase;
	bottom: -21px;
	right: 40px;
	border: none;
	overflow: visible;
}

.assistant input#btn-next-step:hover,
.assistant input#btn-edit-prefs:hover {
	background-position: 100% -940px;
}

.filter-actions input#btn-apply-filter {
	cursor: pointer;
	display: inline;
	background: transparent url(../img/sprite_icons-buttons.png) no-repeat 100% -1000px;
	padding: 6px 10px 6px;
	margin: 0;
	line-height: 25px !important;
	height: 37px !important;
	color: #fff;
	text-transform: lowercase;
	border: none;
	overflow: visible;
	position: absolute;
	right: 0;
	bottom: 4px;
}

.filter-actions input#btn-apply-filter:hover {
	background-position: 100% -1040px;
}

/* discount
---------------------------------------------------------- */

.discount-code fieldset {
	background: none;
	padding: 0;
}

/* order overview: agree form
---------------------------------------------------------- */

form.agree-terms-conditions {
	margin-top: 20px;
	padding: 0;
	position: relative;
}

form.agree-terms-conditions fieldset {
	background: transparent url(../img/horizontal-top-stitches.png) no-repeat 10px 0;
	margin: 0;
	padding: 12px 10px;
	position: absolute;
	font-size: 1.0909em;
	line-height: 1.5em;
	left:-10px;
	width: 680px;
}

form.agree-terms-conditions fieldset.error {
	background-color: #fdf2d0;
	background-position: -690px 0;
	color: #C87B00;
	font-weight: bold;
}

form.agree-terms-conditions fieldset.error a {
	color: #C87B00;
}
form.agree-terms-conditions fieldset.error label { float: left; }

form.agree-terms-conditions fieldset.error ul.errormsg li {
	background: transparent url(../img/sprite_arrows.png) no-repeat -600px -196px;
	display: inline;
	float: right;
	margin-top: 5px;
	padding: 0 0 0 10px;
}

/* login
---------------------------------------------------------- */

.col-login fieldset {
	background: none; 
	float: left;
	width: 335px;
	margin: 15px 0 0;
	padding: 0;
}

.login .field {
	width: 206px;
}

.col-login dl {
	width: 335px;
}

.col-login dt {
	width: 90px;
	margin-top: 6px;
}

.col-login dd {
	padding-left: 110px;
}

.login .formactions {
	display: inline;
	margin-left: 110px;
	width: 220px;
}

.login fieldset {
	padding-bottom: 20px;
}

.login .formactions input {
	float: left;
	display: inline;
}

.login .formactions a {
	display: inline;
	float: right;
	margin: 10px 0 0;
	padding-left: 0;
	clear: none;
	font-size: 0.9167em;
}

/* staf
---------------------------------------------------------- */

.staf form input {
	float: left;
}

.staf form dd label {
	float: left;
	display: inline;
	margin-left: 10px;
	margin-right: 0;
	width: 280px;
}

/* newsletter
---------------------------------------------------------- */

.newsletter dl {
	width: 320px;
}

.newsletter dl dt {
	width: 100px;
	text-align: right;
}
.newsletter dl dd {
	padding-left: 120px;
	margin-bottom: 2px;
}

.newsletter fieldset {
	background: none;
	padding-bottom: 5px;
}

.newsletter form dd {
	padding-right: 4px;
}

.newsletter .actionbtn {
	margin-top: 10px;
}

.newsletter form dd ul.errormsg {
	position: absolute;
	top: 2px;
	left: 460px;
	width: 175px;
	padding: 0;
	list-style: none outside none;
}

/* my-wishlist
---------------------------------------------------------- */

.my-wishlist form {
	float: left;
	clear: both;
	display: inline;
}

.my-wishlist form fieldset {
	padding: 0;
	background: none;
}

.my-wishlist form fieldset dl {
	width: auto;
}
.my-wishlist form fieldset dt {
	margin: 0;
	position: inherit;
	width: auto;
	z-index: 0;
}
.my-wishlist form fieldset dd {
	margin: 0;
	padding: 0;
	position: inherit;
	width: auto;
}

.my-wishlist form .actionbtn {
	margin-top: 0;
}

.my-wishlist form dl.wishlist-privacy {
	float: left;
	margin: 20px 0 0;
	font-size: 0.9167em;
	width: 700px;
}

.my-wishlist form dl.wishlist-privacy dt {
	clear: both;
	float: left;
	text-transform: none;
	padding-right: 10px;
	position: static;
}

.my-wishlist form dl.wishlist-privacy dd {
	float: left;
}

/* ogone form
---------------------------------------------------------- */

.ogone select {
	width: 60px;
}
