/**
 * CSS for ShopSuey storefront order form and payment terminal form
 */

/* order and payment forms  */
form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) {
	
}

/* order form */
form#ShopSuey-storefront-order {
	
}
	
	/* left column: form fields */
	form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields {
		display: inline-block;
		position: relative;
		width: 59%;
	}
	
		/* input error */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > .EntryError {
			margin: 15px auto 5px auto;
			
			font-size: 14px;
			color: red;
			font-weight: bold;
		}
		
		/* input label */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > label {
			display: inline-block;
			position: absolute;
			margin: 10px auto auto 5px;
			width: 125px;
			text-align: right;
			
			font-family: Open Sans, Calibri, Arial;
			font-weight: normal;
			font-size: 15px;
			color: black;
			z-index: 0;
			
			text-shadow: 1px 1px 0px white;
		}
		
	
		/* input */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input,
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > textarea,
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > select {
			position: relative;
			display: block;
			width: calc( 95% - 150px );
			height: 24px;
			
			background: linear-gradient(left, rgba(200,200,200,.5) 0px, rgba(200,200,200,.5) 135px, rgb(100,100,100) 136px, white 137px, white);
			background: -moz-linear-gradient(left, rgba(200,200,200,.5) 0px, rgba(200,200,200,.5) 135px, rgb(100,100,100) 136px, white 137px, white);
			background: -webkit-linear-gradient(left, rgba(200,200,200,.5) 0px, rgba(200,200,200,.5) 135px, rgb(100,100,100) 136px, white 137px, white);
			background: -o-linear-gradient(left, rgba(200,200,200,.5) 0px, rgba(200,200,200,.5) 135px, rgb(100,100,100) 136px, white 137px, white);
			background: -ms-linear-gradient(left, rgba(200,200,200,.5) 0px, rgba(200,200,200,.5) 135px, rgb(100,100,100) 136px, white 137px, white);
			
			margin-bottom: 10px;
			padding: 5px 5px 5px 150px;
			border: 1px solid rgba(0,0,0,.5);
			border-radius: 3px;
			z-index: 1;
			
			font-family: Open Sans, Calibri, Arial;
			font-size: 18px;
			font-weight: bold;
			color: black;
		}
		
			/* different dimensions are needed for <select> menus because ...  �\_(?)_/� */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > select {
				width: 96%;
				height: 36px;
				padding-left: 145px;
			}
			
				/* lighten first option */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > select > option:first-of-type {
					color: rgba(0,0,0,.5);
					font-weight: normal;
				}
				
			/* text input with default value */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[value-defaulter]:not(.has-value) {
				color: rgba(0,0,0,.35);
			}
				/* text input with default value replaced by user value */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[value-defaulter].has-value {
					color: black;
				}
				
		
		/* specific input customizations */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[name="Name"],
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[name="Address1"],
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[name="Address2"],
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[name="City"] {
			text-transform: capitalize;
		}
		
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[name="Email"] {
			text-transform: lowercase;
		}
		
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > input[name="PostalZip"] {
			text-transform: uppercase;
		}
		
		/* textareas */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > textarea {
			height: 125px;
			
			font-size: 15px;
			font-weight: normal;
			line-height: 1.3;
		}
		
		/* label for textareas */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > label.textarea {
			height: 125px;
		}
		
		/* field indicator and/or action icon */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > .fa {
			position: absolute;
			z-index: 2;
			margin: 7px 0px 0px calc( 95% - 30px );
			width: 35px;
			
			text-align: center;
			font-size: 23px;
			color: rgba(0, 0, 0, 0.5);
			
			cursor: default;
		}
			/* icon hovered */
			:not(.is-mobile) form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > .fa.icon-clear-field:hover {
				color: rgba(0,0,0,.75);
				cursor: pointer;
			}
			
			/* icon clicked */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) div.fields > div > .fa.icon-clear-field:active {
				color: white;
				text-shadow: -1px -1px 0px black;
			}
	
	/* right column: summary and buttons */
	form#ShopSuey-storefront-order > div.buttons {
		display: inline-block;
		position: relative;
		width: 37%;
		
		vertical-align: top;
		float: right;
	}
	
		/* totals */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals {
			margin-bottom: 15px;
			text-align: right;
		}
	
			/* notes in totals */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.note {
				display: none;
				position: relative;
				width: 100%;
				padding: 10px;
				margin: 0px -7px 25px 0px;
				text-align: left;
				
				border: 1px dotted rgba(0,0,0,.5);
			}
				/* hide note when empty */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.note.show {
					display: inline-block;
				}
					/* shipping note text */
					form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.note.show > span {
						margin: 0px;
						padding: 0px;
						text-align: left;
						width: 420px;
						font-size: 16px;
					}
	
			/* totals label */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals > label {
				display: inline-block;
				width: 40%;
				text-align: right;
			}
			
			/* totals data */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals > data {
				display: inline-block;
				position: relative;
				font-weight: bold;
				text-align: right;
			}
		
			/* tax total */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.taxes,
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.shipping {
				height: 30px;
				font-size: 18px;
				vertical-align: top;
			}
				/* hide shipping total by default */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.shipping {
					display: none;
				}
					/* only show shipping total when data present */
					form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.shipping.show {
						display: block;
					}
		
			/* order total */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals.order {
				margin-bottom: 15px;
				font-size: 27px;
			}
				
				/* amount */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals > data.amount {
					width: 45%;
				}
				
				/* currency */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.totals > data.currency {
					width: 7%;
					font-size: 12px;
					font-weight: normal;
				}
			
		/* hide submission buttons by default */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons a.button.submit {
			display: none;
		}
			
			/* show payment options */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons a.button.submit.payment.show {
				display: inline-block;
			}
			
			/* show nopayment options */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons a.button.submit.nopayment.show {
				display: inline-block;
			}
			
			
	/* CC fields container */
	form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.ccfields {
		display: none;
		position: relative;
		width: 100%;
		margin-top: 15px;
	}

		/* show CC fields container */
		form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.ccfields.show {
			display: block;
		}
		
			/* cc field row container */
			form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.ccfields > div {
				width: 100%;
			}

				/* cc text field */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.ccfields > div > input {
					width: calc( 99% - 150px );
				}
				
				/* cc select input */
				form[id^="ShopSuey-storefront-"]:not(#ShopSuey-storefront-cart) > div.buttons > div.ccfields > div > select {
					width: calc( 100% + 2px );
				}

				

/* payment terminal form */
form#ShopSuey-storefront-payment-terminal {
	display: block;
	position: relative;
	width: 95%;
	margin: 15px auto 15px auto !important;
	
	text-align: center;
}

	/* terminal error */
	form#ShopSuey-storefront-payment-terminal > div#terminal-error {
		text-align: center;
		font-size: 17px;
		color: red;
		font-weight: bold;
	}
		/* terminal error when error present */
		form#ShopSuey-storefront-payment-terminal > div#terminal-error:not(:empty) {
			padding: 0px 15px 15px 15px;
		}

	/* payment terminal form ovrride for field container */
	form#ShopSuey-storefront-payment-terminal > div.fields {
		display: block !important;
		width: 100% !important;
		text-align: left;
	}

	/* payment termnal form override for label */
	form#ShopSuey-storefront-payment-terminal > div.fields > div > label {
		width: 100px !important;
	}
	
	/* payment terminal form override for form fields */
	form#ShopSuey-storefront-payment-terminal div.fields > div > input,
	form#ShopSuey-storefront-payment-terminal div.fields > div > textarea,
	form#ShopSuey-storefront-payment-terminal div.fields > div > select {
		width: calc( 100% - 135px ) !important;
		padding: 5px 5px 5px 125px !important;
	}


/* jquery autocomplete for payment fields */
.payment-terminal.ui-autocomplete {
	max-height: 150px;
	overflow-x: hidden;
	overflow-y: scroll;
}

	/* jquery autocomplete individual item */
	.payment-terminal.ui-autocomplete .ui-menu-item {
		font-size: 15px;
	}
