.clearfix:after {   /* fixes FF (applies background color regardless of height of left content or sidebar) */
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix { display: inline-block; }

.tooltip {
  position: relative;
  display: inline-block;
}

.tooltip .tooltiptext {
  visibility: hidden;
  width: 300px;
  background-color: white;
  color: #fff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;
  position: absolute;
  z-index: 1;
}


/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

#mc_payment {
	padding: 5px;
	text-align: left;
}

#mc_payment_steps {
	font: bold 12px Verdana;
}

	#mc_payment_steps p {
		margin: 3px 0;
	}

	#mc_payment_steps div {
		float: left;
		margin-right: 5px;
		border-top: 4px solid #ccc;
		padding: 5px 0 0;
		width: 265px;
		color: #ccc;	/* same as the border color */
		text-align: center;
	}
	
	#mc_payment_steps div.on {
		border-top-color: #eab315;
		color: #eab315; /* same as the border color */
	}
	
#item {
	margin: 20px auto;
	border: 1px solid #eab315;
	padding: 8px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	width: 400px;
	background-color: #fff8d3;
}

	#item ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	
	#item li.last {
		margin: 0;
	}

#payment_method_box {
	margin: 10px 0;
	border-bottom: 1px dashed #ececec;
	padding-bottom: 10px;
}
	
.payment_method {
	float: left;
	margin-right: 10px;
	padding: 5px;
	width: 250px;	/* target: 260px */
}

	.payment_method input,
	.payment_method img,
	.payment_method p {
		float: left;
	}
	
	.payment_method input {
		margin: 5px 0 0;
	}
	
	.payment_method img {
		margin: 0 5px;
	}
	
.payment_table {
	width: 390px;
}

	.payment_table col.label {
		width: 125px;
	}
	
	.payment_table td {
		padding: 3px;	/* padding-bottom to give space between <tr> */
		color: #000;
	}
	
	.payment_table td.label {
		padding-top: 11px;
		vertical-align: top;
	}
	
	.payment_table td.label.error {
		color: #c00;
	}
	
		.payment_table td.label span {
			display: block;
			color: #555;
			font-size: 11px;
		}
	
	.payment_table input,
	.payment_table select {
		margin: 3px 5px 3px 0;
	}
	
	.payment_table input[type=text] {
		border: 1px solid #999;
		padding: 3px;
	}
	
	.payment_table input[type=text].prefilled {
		color: #999;
	}
	
#security {
	float: right;
	margin-top: 10px;
	border: 1px solid #cecece;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 5px;
	width: 135px;
	text-align: center;
}

	#security p {
		color: #999;
		font-size: 9px;
	}

	#security img {
		display: block;
		margin: 10px auto;
	}

/* default: not shown since the default selection is US */
#paymentform_state_generic,
#paymentform_state_ca {
	display: none;
}

/* default: not shown since the default selection is credit card */
.paypal_only {
	display: none;
}

/* Styles for payment confirmation page */
#ab_enabled {
	display: none;
}

#confirm_table_box {
	margin: 20px 0;
	border: 1px solid #cecece;
	padding: 5px;
}

.confirm_table {
	margin: 0 auto 5px;
	border-bottom: 1px solid #ccc;
	width: 390px;
}

	.confirm_table col.desc {
		width: 300px;
	}
	
	.confirm_table td {
		padding: 2px;	/* padding-bottom to give space between <tr> */
		background-color: #fff8d3;
		color: #000;
	}
	
	.confirm_table td {
		text-align: right;
	}
	
	.confirm_table td.desc {
		text-align: left;
	}
	
	.confirm_table tr.header td {
		padding-bottom: 3px;
		background-color: #fff;
		font-weight: bold;
	}

.confirm_table2 {
	margin: 0 auto;
	width: 390px;
}

	.confirm_table2 col.desc {
		width: 300px;
	}
	
	.confirm_table2 td {
		text-align: right;
	}
	
#bp_box {
	margin: 0 auto 10px;
	width: 390px;
}

	#bp_box p {
		float: left;
		width: 190px;
	}

#confirm_box {
	text-align: center;
}
