/* Billing CSS */

.pt_finances {
	background: #ededed;
	box-shadow: 2px 2px 8px 3px rgba(0, 0, 0, 0.12);
	border-radius: 3px;
	padding: 15px 5px;
	margin: 10px 0;
	position: relative;
	font-size: 18px;
	text-align: center
}
.balance_label {
	color: #848484
}

.pt_finances.positive , .pt_finances.positive-can-pay {
	background-color: #3e943d;
}

.pt_finances.negative{
	background-color: #c54343;
}
.pt_finances.negative .balance_label,
.pt_finances.positive .balance_label,
.pt_finances.positive-can-pay .balance_label {
	color: white;
}

.dollar_sign {
	opacity:.5;
}

.negative_sign {
	color:#fff;
}

.pt_finances.positive .make_payment_button {
	display:none;
}

h2 {
	font-weight: bold;
}

.billing_options {
	padding:15px 0px;
}

.tile_container .tile .description .btn {
	width: 100%;
	position: absolute;
	left: calc(50% - 90px);
	bottom: 15px;
	max-width: 180px;
}

.billing_options .description {
	color:#666;
	text-align:center;
	margin-top:15px;
	border-radius:8px;
}

.billing_options .tile-icon {
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    align-items: center;
    background-size: 50%;
    border-radius: 50%;
    border: 5px solid white;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    height: 70px;
    justify-content: center;
    margin: -50px auto 0;
    position: relative;
    text-align: center;
    width: 70px;
}

.view_billing_history .tile-icon {
	background: #28a7cb url(/images/icons/icon-invoice-white.png) no-repeat 17px 11px / 45%
}

.view_invoices .tile-icon {
	background: #49bfbb url(/images/icons/icon-invoices.png) no-repeat 17px 11px / 45%;
}

.billing_options .tile-icon {

}

.billing_options .tile.add_card .tile-icon {
	background: white;
}

.billing_options .tile.add_card .tile-icon:after {
	-webkit-font-smoothing: antialiased;
	color: #f6bd1b;
	content: '\f055';
	font: normal normal normal 72px/1 FontAwesome;
	position: absolute;
	text-rendering: auto;
	visibility: visible;
}

.billing_options .tile.add_card .tile-icon img {
	max-width: 80%;
}

.button.make_payment_button {
  font-weight: bold;
  position: absolute;
  right: 10px;
  top: 10px;
  background-color: white;
  color: #cd4c4c;
  border: solid 1px #e4e4e4;
  padding-right: 26px;
}

.button.make_payment_button .icon.button-icon{
	position: absolute;
	-webkit-font-smoothing: antialiased;
	font-size: 16px;
	right: 10px;
	text-rendering: auto;
	top: 5px;
	transition: color .2s;
	visibility: visible;
}

.billing_options .tile h3 {
    font-size: 18px;
    padding: 15px 0 8px;
    font-weight: bold;
}


/* FORMS */
.draggable.billing_box_form form {
	padding: 15px;
}

.add_box h3 {
	border-image: none;
	border-radius: 8px 8px 0 0;
	margin: 16px 0 8px;
	padding: 4px 8px;
}

.draggable.billing_box_form h2:before{
    content: '';
    background-image: url(/images/icons/icon-invoice-white.png);
    position: absolute;
    left: 10px;
    background-color: #239DC4;
    height: 30px;
    width: 30px;
    border-radius: 50%;
    background-size: 45%;
    background-repeat: no-repeat;
    background-position: 9px;
}

.cc_specs,
.cc_address {
	width:48%;
	float:left;
}

.cc_address {
	margin-left:2%;
	padding-left:2%;
}

.button_box {
	clear:both;
}

.cc_address strong {
	display:block;
	color:#666;
}

.cc_address strong span {
	display:inline;
}

.cc_amount_due {
    margin: 10px auto;
    background-color: #c24d4d;
    border-radius: 6px;
    padding: 14px;
    text-align: center;
    font-size: 16px;
    color: #fff;
    width: 220px;
}

.cc_amount_due input {
	font-size:16px;
	font-weight:bold;
	color:#000;
}
.cc_amount_due span {
	display:inline;
	color:#fff;
}

.cc_amount_due input {
	width:85px;
	display:inline;
}

.cc_ccv input {
	width:30%;
}

.cc_date span {
	display:block;
	color:#666;
}

.cc_date input {
	width:40px;
	display:inline;
}

.make_payment_bluefin .make_payment_bluefin.draggable form:not(.questionnaire_form){
	padding: 16px 8px;
}

#payment_response_message {
	display:none;
	border:2px solid #c00;
	background-color:#fff;
	padding:8px;
	margin:8px 0px;
	text-align:center;
	color:#c00;
	font-weight:bold;
}


/*Statement*/
.pt_statement {
	max-height:600px;
	overflow:scroll;
	overflow-x:hidden;
	background-color:#fff;
}

.pt_statement table {
	width:100%;
	border-top:1px solid #ccc;
	margin: 0;
}

.pt_statement td {
	padding:5px;
	border-bottom:1px solid #ccc;
}

.pt_statement .void td {
	background-color:#dedede;
	color:#999;
}

.pt_statement .deposit td {
	color:#060;
}

.pt_statement .deposit .negative {
	color:#C00;
}

.pt_statement .deposit .positive {
	color:#060;
}

.pt_statement .other td {
	color:#999;
}

.pt_statement .negative {
	color:#C00;
}

.pt_statement .positive {
	color:#060;
}

.statement_amount, .statement_balance {
	text-align:right;
}

.pt_statement tr:hover td {
	background-color: #ffff0063;
}

.statement_name {
	font-weight:bold;
	color:#404040;
}

.statement_summary td {
	font-size:16px;
	text-align:right;
	font-weight:bold;
}

.print_it {
	margin: 0px auto 12px;
	display: block;
}

.print_frame {
	background-color:#fff;
	height:100%;
	background-image:none;
}

.print_frame .pt_statement {
	min-height:100%;
}

.statement-headers th {
    text-align:left;
    padding:3px;
    border-bottom: solid 1px #A2A3A5;
}

th.statement-amt,
th.statement-bal {
	text-align: right;
}

.draggable.billing_statement_box_form form {
	border: 0;
}

/* Printable Invoices */
.pt_invoices li {
    list-style: none outside none;
    margin: 0;
    padding: 5px 0 5px 30px;
    position: relative;
}

.pt_invoices li:before{
	-webkit-font-smoothing: antialiased;
    color: #26a7cb;
    content: '\f15c';
    font: normal normal normal 19px/1 FontAwesome;
    position: absolute;
    text-rendering: auto;
    visibility: visible;
    left: 5px;
}

.pt_invoices li a {
	color:#656565;
	text-decoration: underline
}

/* PAYMENT FORM */
.add_box #cc_form {
	padding: 15px;
}

.cc_no_card,
span.cc_no_card {
		display: inline-block;
		font-size: 12px;
		font-weight: bold;
		margin: 8px;
		padding: 8px;
		padding-left: 42px;
	}

.cc_icon {
	background-repeat: no-repeat;
	background-size: auto 182px;
	background-position:0 0;
	border: 1px solid #CCCCCC;
	border-radius: 2px;
	float: left;
	height: 20px;
	margin-left: -33px;
	overflow: hidden;
	width: 33px;
	margin-right:8px;
	background-image:url("/images/icons/card_sprite.png");
}
.cc_icon.cc_type_visa {background-position:0 -23px;}
.cc_icon.cc_type_discover {background-position:0 -46px;}
.cc_icon.cc_type_mastercard {background-position:0 -70px;}
.cc_icon.cc_type_american_express {background-position:0 -93px;}
.cc_icon.cc_type_diners_club {background-position:0 -116px;}
.cc_icon.cc_type_jcb {background-position:6px -140px;}
.cc_icon.cc_type_ach {background-position:0 -162px;}

.cc_card {
  display: block;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 0;
  padding: 0 0 0 32px;
  position: relative;
  text-align: center;
}

.cc_expired {opacity:.7;}

.valid_card_list, .add_another_card {
  float: left;
  padding: 10px 10px 15px 10px;
  overflow:hidden;
}
.valid_card_list {
	padding-top:0;
}

.expire_date {
  display: block;
  font-size: 12px;
  font-style: italic;
  font-weight: normal;
  text-align: center;
}
.expire_date:before {
	content: "Expires: ";
}

#cc_form h3 {clear:both; margin-top:0;}

.cc_card .card_list_cvv2_wrapper {
    margin-top: 8px;
}

#card_list_cvv2 {
	width: 70px;
}

@media screen and (max-width: 700px){
	.billing_options .button_frame {
	  display: block;
	  float: none;
	  margin-bottom: 20px;
	  padding: 10px 50px 20px;
	  width: auto;
	}

	.balance_label {
	  display: block;
	  margin-bottom: 8px;
	}

	.billing_options_tile_container {
		display: block
	}

	.billing_options_tile_container .tile {
		display: block !important;
		width: 100%;
		box-sizing: border-box;
		margin-bottom: 60px;
	}

	.billing_options_tile_container .tile .description .btn {
		position: relative;
		left: auto;
		bottom: auto;
	}

	.button.make_payment_button {
		position: relative;
		right: auto;
		top: auto;
	}

	.pt_statement td,
	.pt_statement th{
	 	display: table-cell;
	 	width: auto;
	}
}

/* FOR PRINTING A STATEMENT */

@media print {
	.wrapper,
	.screen_cover,
	.sub_foot {
		display:none !important;
	}

	.statement > h2 {
	  background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
	  border-radius: 0;
	  font-size: 150%;
	}

	.draggable.statement {
	  background-color: #fff !important;
	  position:relative !important;
	  height: 100%;
	  left: 0 !important;
	  top: 0 !important;
	  width: calc(100% - .5in) !important;
	  padding:0.25in;
	  max-width:100% !important;
	  box-shadow:none !important;
	  font-size:12px;
	}

	.statement .pt_statement {
	  height: auto !important;
	  max-height: none !important;
	  overflow:visible;
	}

	#statement_frame > h3 {
		display:none; padding-top:15px;
	}

	.statement h2 > a.close {
		display:none;
	}

	.statement .print_it {
		display:none;
	}
}
