
/* Cart
----------------------------------------------------------------------------------------------------*/

#cart { text-shadow: 0 1px 0px #fff; }

/* Header */
#cart .header {
	margin-top: -10px;
	font-size: 12px;
}

#cart .header span {
	margin-right: 5px;
	color: #999;
}

#cart .header .active { color: #444; }

#cart .header .secure {
	padding-right: 20px;
	background: url(../images/lock.png) 100% 0px no-repeat;
	text-transform: uppercase;
	float: right;
}

/* Table */
#cart .order {
	padding: 15px;
	border: 1px solid #D7D8D9;
	background: #F0F1F2;
	box-shadow: 0 1px 0 #fff,
				inset 0 2px 3px rgba(0,0,0,0.06),
				inset 0 0 2px rgba(0,0,0,0.04);
	text-shadow: 0 1px 0 #FFF;
	border-radius: 6px;
	font-size: 12px;
}

#cart .order table { width: 100%; }
#cart .order th { text-align: left; }
#cart .order th,
#cart .order td { padding: 3px 5px; }

#cart .order .price { width: 15%; }
#cart .order .quantity { width: 20%; }
#cart .order .total { width: 15%; }

#cart .order .price,
#cart .order .total { text-align: right; }
#cart .order .quantity { text-align: center; }

#cart .order thead th { border-bottom: 1px solid #ddd; }
#cart .order tfoot tr:first-child td { border-top: 1px solid #ddd; }
#cart .order tbody td { background: rgba(255,255,255,0.7); }

#cart .order .total-text {
	text-align: right;
	font-size: 12px;
	text-transform: uppercase;
}
#cart .order tfoot .total { font-weight: bold; }

/* Form */
#cart form > div { margin: 15px 0; }

#cart form label {
	display: inline-block;
	width: 120px;
	padding-right: 10px;
	text-align: right;
	vertical-align: middle;
	font-size: 12px;
	color: #999;
}

#cart form input[type=text],
#cart form select {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 15px;
	padding: 5px;
	width: 330px;
	color: #444;
}

#cart form p.info {
	color: #999;
	text-indent: 135px;
	font-size: 12px;
}

#cart form p.email-suggestion {
	display: none;
}

#cart form input[type=submit], #cart.payment .form a {
	display: inline-block;
	margin-left: 135px;
	padding: 6px 15px;
	border-radius: 3px;
	border: 1px solid #008CC8;
	border-bottom-color: #006491;
	background: #00A5E4;
	background: -moz-linear-gradient(top, #00B4F5 0%, #0096D2 100%);
	background: -webkit-linear-gradient(top, #00B4F5 0%, #0096D2 100%);
	background: -o-linear-gradient(top, #00B4F5 0%, #0096D2 100%);
	color: #FFF;
	text-shadow: 0 -1px 0 rgba(0,0,0,0.4);
	font-size: 15px;
}

#cart form input[type=submit]:hover {
	border-color: #006491;
	background: #00A5E4;
	box-shadow: inset 0 1px 2px rgba(0,0,0,0.2);
}

#cart form input[type=submit]:disabled { opacity: 0.5; }

/* Payment Select */
#cart.payment > .select input {}
#cart.payment > .select label {
	width: auto;
	height: 25px;
	margin-right: 20px;
	padding: 0;
	overflow: hidden;
	white-space: nowrap;
	vertical-align: top;
	line-height: 25px;
}

#cart.payment > .select #payment_providerpayonecc + label,
#cart.payment > .select #payment_providerpaypal + label,
#cart.payment > .select #payment_providercheckout + label {
	width: 40px;
	background: url(../images/payment.png) 0 0 no-repeat;
	text-indent: 999em;
	cursor: pointer;
}
#cart.payment > .select #payment_providerpayonecc + label { width: 130px; }
#cart.payment > .select #payment_providerpaypal + label { background-position: 0 -35px; }
#cart.payment > .select #payment_providercheckout + label { background-position: 0 -70px; }

/* Payment */
#cart.payment div.forms div.hide { display: none; }

#cart.payment div.forms .cardexpiration select { width: 80px; }
#cart.payment div.forms .cardsecuritycode input { width: 68px; }

#cart.payment div.forms .cardsecuritycode div.icon {
	display: inline-block;
	width: 40px;
	height: 25px;
	margin: 0 0 0 5px;
	background: url(../images/cvv.png) 0 0 no-repeat;
	vertical-align: middle;
}

#cart.payment div.submit {
	margin-top: 30px;
	text-align: center;
}

#cart.payment div.submit .total {
	margin: 0;
	font-size: 25px;
	line-height: 25px;
}
#cart.payment div.submit .total span { font-weight: bold; }

#cart.payment form input.submit, #cart.payment .form a { margin: 10px 0 0 0; }

/* Payment */
#cart.finish h1 { margin-top: 0; }

/* Payone */
#cart #payone iframe { vertical-align: middle; }
#cart #payone .iframe { display: inline-block; }
#cart #payone .cardholder input {
	height: 30px;
	margin: 3px;
    border: 1px solid #d7d8d9;
}


/* Order
----------------------------------------------------------------------------------------------------*/

#order.download a {
	display: inline-block;
	min-width: 145px;
	padding: 145px 5px 5px 5px;
	border: 1px dotted #969696;
	background: #ffffff url(../images/zip.png) 50% 0 no-repeat;
	overflow: hidden;
	text-align: center;
}

#order.download a:link, #order.download a:visited { text-decoration: none; }


/* Cart Module
----------------------------------------------------------------------------------------------------*/

#cart-module { white-space: nowrap; cursor: pointer; }
#cart-module .icon {
	display: inline-block;
	width: 22px;
	height: 22px;
	background: url(../images/cart.png) 0 0 no-repeat;
	vertical-align: middle;
}


/* Cart Lightbox
----------------------------------------------------------------------------------------------------*/

.cart-modal {
	visibility: hidden;
	position: absolute;
	top: 100px;
	left: 50%;
	z-index: 101;
	width: 520px;
	margin-left: -300px;
	padding: 30px;
	border-radius: 5px;
	border: 1px solid #FFF;
	background: #EBECED;
	background: -moz-linear-gradient(top, #FAFAFA 0%, #EBECED 100%);
	background: -webkit-linear-gradient(top, #FAFAFA 0%, #EBECED 100%);
	background: -o-linear-gradient(top, #FAFAFA 0%, #EBECED 100%);
	box-shadow: 0 2px 15px rgba(0,0,0,0.8);
}

/*
 * Content
 */

.cart-modal h1 { margin: 0 0 25px 0; }

.cart-modal > .empty { text-align: center; }

.cart-modal > .box {
	padding: 15px;
	background: #FBFCFD;
	border: 1px solid #D2D3D4;
	box-shadow: inset 0 0 0 1px #fff;
	border-radius: 6px;
}
.cart-modal > .box table { width: 100%; }
.cart-modal > .box td {
	padding: 3px;
	text-align: right;
}
.cart-modal > .box td.name { text-align: left; }

.cart-modal > .box .price { width: 80px; }
.cart-modal > .box .quantity { width: 40px; }
.cart-modal > .box .decrement,
.cart-modal > .box .increment,
.cart-modal > .box .remove {
	width: 10px;
	cursor: pointer;
}
.cart-modal > .box .total { width: 90px; }
.cart-modal > .box .remove { width: 20px; }

.cart-modal > .box .decrement { background: url(../images/down.png) 70% 50% no-repeat; }
.cart-modal > .box .increment { background: url(../images/up.png) 30% 50% no-repeat; }
.cart-modal > .box .remove { background:  url(../images/remove.png) 50% 45% no-repeat; }

.cart-modal > .total {
	margin-top: 25px;
	font-size: 25px;
    line-height: 25px;
    text-align: center;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
}

.cart-modal > .checkout {
	margin: 15px auto 0;
	text-align: center;
}

/*
 * Background
 */

.cart-modal-bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	height: 100%;
	width: 100%;
	background: #000;
	background: rgba(0,0,0,.8);
}
