@import "../../../css/styles/appointmentSlots_v-0.13.css";
@import "../../../css/styles/control_inline/control_inline_v-0.2.css";

.form-all {
	font-size:14px;
	color:#000;
	font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Tahoma, sans-serif;
	background-repeat: no-repeat;
}

.form-line {
	/* Don't conver these into shorthand */
	padding-top:12px;
	padding-bottom:12px;
	padding-left:36px;
	padding-right:36px;
	margin:6px 0;
	width:100%;
	box-sizing: border-box;
}

.form-label-top,
.form-label-left,
.form-label-right {
	font-weight: bold;
	margin-bottom: 9px;
}

.form-label-right {
	margin-right:0;
	padding-right:15px;
	box-sizing:border-box;
}

.form-textbox,
.form-textarea,
.form-captcha input {
	padding: 3px;
	margin-left: 0;
	border: 1px solid #ccc;
	font-size: 1em; /*14px*/
	line-height: 1.071em; /*15px*/
	-moz-box-shadow: 0 1px 2px #eee inset;
	-webkit-box-shadw: 0 1px 2px #eee inset;
	box-shadow: 0 1px 2px #eee inset;
}
.form-spinner input {
	padding: 3px;
}

/*  special for payment stripe - credit card details*/
.stripe-payment-wrapper .form-textbox.cc_firstName,
.stripe-payment-wrapper .form-textbox.cc_lastName {
	color: #000 !important;
	height: 27px;
	font-size: 1em;
	padding: 0px 4px 0px 4px;
}
.form-textbox.cc_numberMount  {
	min-width: 155px;
}

.stripe-payment-wrapper .form-sub-label {
	white-space: nowrap;
}

.stripe-payment-wrapper .form-sub-label-container {
	width: 96% !important;
}

.stripe-payment-wrapper .form-sub-label-container input{
	width: 100%;
	box-sizing: border-box;
}

.stripe-payment-wrapper .form-textbox.cc_ccv,
.stripe-payment-wrapper .form-textbox.cc_ccvMount {
	width: 42px;
}

.stripe-payment-wrapper .form-textbox.cc_number,
.stripe-payment-wrapper .form-textbox.cc_ccv,
.stripe-payment-wrapper .form-textbox.cc_numberMount,
.stripe-payment-wrapper .form-textbox.cc_ccvMount,
.stripe-payment-wrapper .form-textbox.cc_cardExpiryMount {
	padding: 1px 4px 0px 4px;
	height: 29px;
	line-height: 25px !important;
	white-space: nowrap;
	box-sizing: border-box;
	font-size: 1em;
}
.stripe-payment-wrapper .form-textbox.cc_numberMount,
.stripe-payment-wrapper .form-textbox.cc_cardExpiryMount {
	min-width: 155px;
	width: 100%;
	box-sizing: border-box;
}

.stripe-payment-wrapper .payment-form-table td:first-child .form-sub-label-container {
	margin-left: 0!important;
}

.stripe-payment-wrapper input[data-component="paymentDonation"] {
	width: 155px;
}

.stripe-payment-wrapper hr {
	border: 0;
	border-top: 1px solid #CCC;
	margin-top: 20px;
}

/*  E.O. special for payment stripe - credit card details*/

/*  Special for paypalcomplete - credit and details*/

.paypalcomplete-payment-wrapper .form-textbox.cc_number,
.paypalcomplete-payment-wrapper .form-textbox.cc_ccv,
.paypalcomplete-payment-wrapper .form-textbox.cc_numberMount,
.paypalcomplete-payment-wrapper .form-textbox.cc_ccvMount,
.paypalcomplete-payment-wrapper .form-textbox.cc_cardExpiryMount {
	padding: 1px 4px 0px 4px;
	height: 29px;
	line-height: 25px !important;
	white-space: nowrap;
	box-sizing: border-box;
	font-size: 1em;
}
.paypalcomplete-payment-wrapper .form-textbox.cc_numberMount,
.paypalcomplete-payment-wrapperr .form-textbox.cc_cardExpiryMount {
	min-width: 155px;
	width: 100%;
	box-sizing: border-box;
}

/*  E.O. special for paypalcomplete - credit and details*/

.form-all .form-upload {
	border:none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.form-sub-label {
	font-size:0.786em; /*11px*/
	margin-top:3px;
}

.form-dropdown {
	padding: 2px;
	font-size:0.857em;/*12px*/

}

.form-dropdown[size]::-webkit-scrollbar {
	appearance: none;
	width: 6px;
}

.form-dropdown[size]::-webkit-scrollbar-thumb {
	border-radius: 4px;
	background-color: rgba(0, 0, 0, .5);
	box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}

.form-radio,
.form-checkbox {
	vertical-align: top;
	margin-top: 4px;
}

.form-radio-item label,
.form-checkbox-item label,
.form-grading-label {
	font-size:1em; /*14px*/
	color:#000;
}
.form-radio-item,
.form-checkbox-item {
	margin-top:0;
	margin-bottom: 6px;
}

/* HEADING FIELD
------------------------------*/

.form-header-group {
	background: transparent; /* For overriding */
	border: none; /* For overriding */
	padding: 24px 0;
	margin: 12px 36px 18px;
	border-bottom: 1px solid #e3e3e3;
	border-top: 1px solid #e3e3e3;
}

li:first-child .form-header-group,
.form-header-group + .form-header-group {
	border-top:0;
}

h1.form-header {
	font-size: 2.143em; /*30px*/
}

h2.form-header {
	font-size: 1.714em; /*24px*/
}

h3.form-header {
	font-size: 1.5em; /*21px*/
}

.form-header{
	color:#000;
}
.form-subHeader {
	border-top:none;
	font-size: 1.071em; /*15px*/
	line-height:1.5em;  /*21px*/
	font-style: normal;
	margin:3px 0 0;
}



/* BUTTONS
------------------------------*/

.jf-form-buttons,
.qq-upload-button {
	border:1px solid #ccc;
	padding:6px 12px;
	color:#666;
	text-shadow:0 1px #fff;
	cursor:pointer;
	border-radius: 3px;
	box-shadow: 0px 1px 1px 0px rgba(221,221,221,1);
	background: #f5f5f5; /* Old browsers */
	background: linear-gradient(to top, #f5f5f5 0%, #eeeeee 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
}

.jf-form-buttons:hover,
.qq-upload-button:hover {
	background: #ffffff;
	background: linear-gradient(to top, #ffffff 0% ,#f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f5f5f5',GradientType=0 );
}

.jf-form-buttons:active,
.qq-upload-button:active {
	background: #eeeeee;
	background: linear-gradient(to top, #eeeeee 0%,#f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#f5f5f5',GradientType=0);
}

.form-buttons-wrapper {
	margin-top:12px;
	margin-bottom:12px;
}

.form-submit-reset,
.form-submit-preview,
.form-submit-print {
	font-size:0.857em; /*12px*/
	padding:4px 8px;
}

.form-submit-print { margin-left: 25px; }


.form-submit-print img { margin-right: 3px; }

.form-submit-preview img {
	margin-right: 8px;
	width: 16px;
	height: 16px;
}

.qq-upload-button {
	padding: 8px 0;
	border-radius: 6px;
}


/* Phone areaCode & Phone Number in the payment field
------------------------------*/
li:not([data-type="control_phone"]) input[data-component="areaCode"] {
	width: 30px;
}

li:not([data-type="control_phone"]) input[data-component="phone"] {
	width: 83px;
}


/* FORM-LINE ACTIVE
------------------------------*/


.form-line-active {
	background: #FFFBEA;
}

.form-line-active input:focus,
.form-line-active textarea:focus {
	border:1px solid #FFD300;
	box-shadow: 0 0 3px #FFF0AA;
}

/* ERROR MESSAGES
------------------------------*/

.form-line-error {
	background: #fff4f4;
}

.form-line-error div.form-error-message {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background-color:#FF4E5D;
	color:#fff;
	padding: 5px;
	box-sizing: border-box;
}

li.form-line-error .form-error-message img {
	margin: 0 8px 0 3px;
	width: 20px;
	height: 20px;
}

.form-line-error div.form-error-message .form-error-arrow {
	border-bottom-color: #FF4E5D;
}

.form-error-arrow-inner {
	display: none;
}



/* SURVEY TOOLS
------------------------------*/

/*----- Matrix Field -----*/

.form-matrix-table {
	font-size:1em;
}

.form-matrix-row-headers,
.form-matrix-column-headers {
	font-size:0.786em; /*11px*/
	font-weight: normal;
}

.form-scale-table th,
.form-scale-table td {
	padding:9px 6px;
}

.form-grading-item {
    margin-bottom: 6px;
}

/*----- Form Collapse -----*/

.form-collapse-table {
	margin: 0 36px;
	border:1px solid #ccc;
	cursor:pointer;
	border-radius: 3px 3px;
	box-shadow: 0 1px #fff inset, 0 1px #ddd;
	background: #f5f5f5; /* Old browsers */
	background: linear-gradient(top,  #f5f5f5 0%,#eeeeee 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
}

.form-collapse-table:hover {
	background: #ffffff;
	background: linear-gradient(top,  #ffffff 0%,#f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f5f5f5',GradientType=0 );
}

.form-collapse-table:active {
	background: #eeeeee;
	background: linear-gradient(top,  #eeeeee 0%,#f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#f5f5f5',GradientType=0 );
	box-shadow: 0 1px #fff inset;
}

/*----- Page Break Field -----*/

.form-pagebreak {
	margin:0 36px;
	border-top:1px solid #e3e3e3;
	background:transparent;
	height: auto;
	overflow: hidden;
}

.form-pagebreak-back-container {
	padding:24px 3px 24px 0;
}

.form-pagebreak-next-container {
	padding:24px 0 24px 3px;
}

.form-pagebreak-next {
	margin-left: 0;
}


/* PAYMENT FIELDS
------------------------------*/

.form-product-item {
	padding:6px;
	overflow:hidden;
	margin: 0 0 9px;

	-moz-border-radius: 6px 6px;
	-webkit-border-radius: 6px 6px;
	border-radius: 6px 6px;

	width: 100%;
}


.form-product-item.not-found,
.form-product-item.not-found ~ br {
	display: none;
}

.hover-product-item:hover {
	background:none;
	-ms-filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#19969696,endColorstr=#19969696);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#19969696,endColorstr=#19969696);
	zoom: 1;
	background: rgba(150,150,150,0.1);
}

.form-product-item .form-product-description {
	display: block;
	opacity: 0.6;
	padding-top: 4px;
}

.form-product-item br + br {
	display: none;
}

.form-product-item img {
	display:block;
	position: static;
	margin: 0 12px 0 0;
	float:left;
	border-radius: 3px 3px;
}

.form-product-item .form-sub-label-container {
	margin: 9px 15px 0 0;
}

.form-product-item .form-sub-label-container:last-of-type {
	margin: 9px 0 0 0;
}

.form-product-name {
	font-size: 15px;
}

.form-product-container {
	margin-bottom: 6px;
	display: inline;
	width: 94%;
	width: calc(100% - 20px);
}

#app .form-product-container {
	margin: 0 0 6px 4px;
}

.form-product-item .form-sub-label {
	display: inline;
	height: 25px;
	vertical-align: top;
	margin-right: 6px;
	line-height: 24px;
	font-size: 12px;
}

.form-product-item > .form-product-item-detail {
	position: static;
	float: left;
	width: 100%;
}

.form-product-item > img + .form-product-item-detail {
	position: static;
	float: left;
	width: 84%;
	width: calc(100% - 66px);
}


.form-product-item .form-dropdown { height: 25px; }

.form-product-details { font-size:0.857em; /*12px*/}
.form-payment-total b > span > span > span,
.form-product-details b > span > span {
	margin-left: -3px;
}

.app .form-payment-total b > span > span > span,
.app .form-product-details b > span > span {
	margin-left: 0;
}

.app .form-product-details {
	margin-left: 5px;
}
/* Subscription */

.form-product-item .form-radio,
.form-product-item .form-checkbox {
	margin-right: 2px;
}


/* SHRINK & TO NEW LINE
------------------------------*/

.form-line-column {
    clear: none;
    float: left;
    width: auto;
    max-width: 100%; /*ie-11 fix*/
}

.form-line-column-clear {
	clear:left;
	width:auto;
    max-width: 100%; /*ie-11 fix*/
}

.form-line[data-type="control_matrix"] { overflow-x: auto; }
   
.form-line[data-type="control_matrix"] [class*="form-input"] { width:100%; }


/*
.p_checkbox, .p_image, .form-product-container { float: left; }
.form-product-item { display: block; }
*/

/* ------------- */
/* MEDIA QUERIES */

@media screen and (max-width: 480px),
screen and (max-device-width: 768px) and (orientation: portrait),
screen and (max-device-width: 415px) and (orientation: landscape) {

	/* User defined amount width */
	input[id*="_donation"] {
		width: 25% !important;
	}
	th.form-matrix-column-headers {
		min-width: 75px;
	}
	.payment_footer.new_ui, .payment_footer.new_ui.show_coupon{
		display: block;
	}
	.payment_footer.new_ui .total_area {
		width: 100%;
		max-width: 100%;
		padding: 20px 10px 0 9px;
		min-width: unset;
		float: right;
		border-top: 1px dashed #EEE;
	}
	.payment_footer.new_ui .total_area > div > div:nth-child(1),
	.payment_footer.new_ui .total_area > div > div:nth-child(2) {
		text-align: left;
	}
}



/* Payments: PayPal Commarce Platform */
#paypal-commerce-platform-container * {
	box-sizing: border-box;
}

#paypal-commerce-platform-container {
	overflow: hidden;
}

.paypal-toggle-content {
	display: flex;
	padding: 16px 0px 16px 2px;
}

.paypal-toggle-buttons {
}
.paypal-toggle { width: 100%; }


.paypal-toggle > div {
	width: 100%;
	box-sizing: border-box;
	border: 0;
	background-color: transparent;
	border-radius: 0;
	height: 30px;
	line-height: 24px;
	font-weight: bold;
	font-size: 13px;
	background-color: transparent;
	outline: none !important;
}

.paypal-toggle > div .payment-method-container{
	display: inline-block;
	cursor: pointer;
}

.paypal-toggle label{
	cursor: pointer;
}

.paypal-toggle input{
	margin-left: 1px;
}

.paypal-toggle .CC_ico {
	background-image: url('../../../assets/img/payments/PG-CC-05.svg');
    background-position:  center;
    background-size: 24px;
    background-repeat: no-repeat;
    display: inline-block;
    width: 24px;
    height: 24px;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
}

.paypal-toggle .selected {
}

.paypal-toggle div:last-child {}
.paypal-toggle div:nth-child(2) {
	background-image: url('../../../assets/img/payments/PG-PP.svg');
	background-position: left 24px top 11px;
	background-size: 72px;
	background-repeat: no-repeat;
}

.paypal-toggle-content #paypal-credit-card-fields,
.paypal-toggle-content #paypal-spb-area {
	display: none;
}

div[render-paypal-type="paypal-smart-buttons"] {
	text-align: center;
	background-color: rgba( 0,0,0,0.04);
	border: 1px solid #EEE;
	border-radius: 3px;
	padding-bottom: 24px;
	margin-top: 16px;
}

label[for="paypal-card-fields-input"] {
	display: inline-block;
	position: relative;
	padding-left: 28px;
}

.form-label-left ~ .form-input .paypal-toggle-content {
	max-width: 420px;
}

.form-label-left ~ .form-input .paypal-toggle-content.single-payment-method { margin-top: 0; }
.form-label-left ~ .form-input div[render-paypal-type="paypal-card-fields"].single-payment-method { padding-top: 0; }

div[render-paypal-type="paypal-smart-buttons"] .content-area {
	width: 90%;
}
.content-area:after {
	content: '';
	 display: block; 
	 width: 100%;
	clear: both;
}

#paypal-smart-buttons .payment-method-container {
	display: flex;
	align-items: center;
}

#paypal-smart-buttons .payment-method-container label{
	width: 86px;
	height: 40px;
}

#paypal-credit-card-fields {
	padding-right: 12px;
}

#paypal-credit-card-fields .paypal-input:nth-child(1) { width: 50%; }
#paypal-credit-card-fields .paypal-input:nth-child(2) { width: 50%; }
#paypal-credit-card-fields .paypal-input:nth-child(3) { width: 100%; }
#paypal-credit-card-fields .paypal-input:nth-child(4) { width: 50%; }
#paypal-credit-card-fields .paypal-input:nth-child(5) { width: 50%; }
#paypal-credit-card-fields .paypal-input:nth-child(5) div.form-textbox { width: 50%; }

#paypal-credit-card-fields .paypal-input {
	float: left;
	/*padding-bottom: 16px;
	padding-right: 12px;*/
	padding-bottom: 10px;
	padding-right: 10px;
	box-sizing: border-box;
}

#paypal-credit-card-fields .paypal-input label {
	display: block;
	font-size: 0.786em;
	padding-bottom: 3px;
	font-weight: normal;
	padding-left: 2px;
}

#paypal-credit-card-fields .paypal-input input,
#paypal-credit-card-fields .paypal-input > div {
	display: block;
	font-size: 13px;
	font-weight: 500;
	width: 100%;
	border: 1px solid #E0E0E0;
	border-radius: 2px;
	height: 25px !important;
	line-height: 24px;
	box-shadow: none;
	padding: 0 12px;
	/*border-color: rgba(0, 0, 0, 0.04) !important;
	background-color: rgba( 256, 256, 256, 0.8) !important;*/
}

table.payment-form-table label.form-sub-label {
	padding-top: 3px;
}

.powered_by_label { padding-top: 40px;
}

.powered_by_label div:nth-child(1) {
	background-image: url('../../../assets/img/payments/PG-card-type.svg');
	background-position: center center;
	background-size: 100%;
	background-repeat: no-repeat;
	display: inline-block;
	width:100%;
	height: 24px;
}

.powered_by_label div:nth-child(2) {
	background-image: url('../../../assets/img/payments/PG-powered_PP.svg');
	background-position: center center;
	background-size: 100%;
	background-repeat: no-repeat;
	display: inline-block;
	width:100%;
	height: 24px;
}

.security {

	background-image: url('../../../assets/img/payments/PG-secure.svg');
	background-position: top center;
	background-size: 100%;
	background-repeat: no-repeat;
	padding-bottom: 12px;
    padding-top: 46px;
    background-size: 58px;

}

div[render-paypal-type="paypal-smart-buttons"] .content-area { margin: 0 auto; }

.paypal-toggle-content[render-paypal-type="paypal-card-fields"] #paypal-credit-card-fields{
	display: block;
}

.paypal-toggle-content[render-paypal-type="paypal-smart-buttons"] #paypal-spb-area{
	display: block;
}

@media screen and (max-width: 480px),
screen and (max-device-width: 768px) and (orientation: portrait),
screen and (max-device-width: 415px) and (orientation: landscape) {
	.paypal-card-fields {
		display: block;
	}
	.paypal-toggle-content {
		display: block;
	}
	.content-area
	{
		width: 100%;
		float: none;
	}
	.powered_by_label {
		padding-top: 20px;
	}
	.powered_by_label div { 
		width: 72% !important;
		margin: 0 auto;
		height: 36px !important;
	}
	#paypal-credit-card-fields { padding-right: 0; }

	#paypal-credit-card-fields .paypal-input:nth-child(1) { width: 50%; }
	#paypal-credit-card-fields .paypal-input:nth-child(2) { width: 50%; padding-right: 0; }
	#paypal-credit-card-fields .paypal-input:nth-child(3) { width: 100%; padding-right: 0; }
	#paypal-credit-card-fields .paypal-input:nth-child(4) { width: 50%; }
	#paypal-credit-card-fields .paypal-input:nth-child(5) { width: 50%; padding-right: 0; }
}


/* E.O Payments: PayPal Commarce Platform */