/* ************************************** */
/* ** Application Form General Styling ** */
/* ************************************** */

/* Basics */
body { min-height: 110vh; min-width: 330px; }
.hide { display: none !important; }
.posA-vertCent { -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); }

/* Tabs */
#appFormTabs { border: 1px solid #ccc; background-color: #fff; -webkit-border-radius: 0.75rem; -moz-border-radius: 0.75rem; border-radius: 0.75rem; }
#appFormTabs > .card { /*border-bottom: 0;*/ border: none; background-color: transparent; }
#appFormTabs > .card:last-child  { /*border-bottom: 1px solid rgba(0,0,0,.125);*/ }
#appFormTabs > .card:first-child > .card-header:first-child { 
	-webkit-border-top-left-radius: 0.74rem;
	-webkit-border-top-right-radius: 0.74rem;
	-moz-border-radius-topleft: 0.74rem;
	-moz-border-radius-topright: 0.74rem;
	border-top-left-radius: 0.74rem;
	border-top-right-radius: 0.74rem;
}
#appFormTabs > .card > .collapse.show { border-bottom: 1px solid rgba(0,0,0,.125); }

/* Tab Headings */
.card-header,
.card-header:first-child { position: relative; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; }
#appFormTabs > .card > .card-header:first-child { padding-right: 6rem; }
.card-header .collapseIcon { position: absolute; top: 50%; right: 1rem; width: 2rem; height: 2rem; line-height: 2rem; text-align: center; background-color: #4aa84a; color: #fff; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }
.card-header .fa-check { background-color: #4aa84a; color: #fff; right: 3.5rem; }
.card-header .fa-exclamation { background-color: #e48d1d; color: #fff; right: 3.5rem; }
.card-header .fa-pencil-alt { background-color: #d8d8d8; color: #292b2c; cursor: pointer; }
.requiredKey { background-color: #ededed; line-height: 1rem;
	-webkit-border-bottom-right-radius: 0.74rem;
	-webkit-border-bottom-left-radius: 0.74rem;
	-moz-border-radius-bottomright: 0.74rem;
	-moz-border-radius-bottomleft: 0.74rem;
	border-bottom-right-radius: 0.74rem;
	border-bottom-left-radius: 0.74rem;
}
.collapse.show ~ .card-header { background: red; }
  
/* Form Labels */
label, .label { margin-bottom: .25rem; }
span.required { color: #db2626; }
.form-control.error { position: relative; z-index: 2; border-color: #d46060; }
label.error { margin-bottom: 0; border: 1px solid #d46060; background-color: #ffc1c1; color: #7e1818; width: 100%; position: relative; top: -0.25rem; z-index: 1; padding: .25rem .5rem; font-size: 70%; text-transform: uppercase;
	-webkit-border-bottom-right-radius: .25rem;
	-webkit-border-bottom-left-radius: .25rem;
	-moz-border-radius-bottomright: .25rem;
	-moz-border-radius-bottomleft: .25rem;
	border-bottom-right-radius: .25rem;
	border-bottom-left-radius: .25rem;
}
label.error.valid { padding: 0; background: transparent; border: none; }

/* Form Elements */
select.form-control:required:invalid { color: #636c72; }
select.form-control option { color: #000; }
.dobRow select.form-control { padding-left: .25rem; padding-right: .5rem; }

.fakeSelect { 
font-family: sans-serif; 
height: calc(2.25rem + 2px); 
display: block;
width: 100%;
padding: .5rem .75rem;
font-size: 1rem;
overflow: hidden;
line-height: 1.25;
color: #636c72;
background-color: #fff;
background-image: none;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0,0,0,.15);
border-radius: .25rem;
-webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
}
.fakeSelect.chosen { color: #464a4c; }
.fakeSelect i { padding-right: 5px; }

.cardPicked .cardSelectImg { position: relative; }
.cardPicked .cardSelectImg:after { content: "\f00c"; font-family: 'Font Awesome 5 Free'; color: #4aa84a; position: absolute; left: -2px; font-size: 1.4rem; top: -5px; }
.cardPicked .cardSelectImg i { color: #c1c6c9; }

/* Toggle Button */
.tgl-label { cursor: pointer; }
.tgl { display: none; }
.tgl, .tgl:after, .tgl:before, .tgl *, .tgl *:after, .tgl *:before, .tgl + .tgl-btn { box-sizing: border-box; }
.tgl::-moz-selection, .tgl:after::-moz-selection, .tgl:before::-moz-selection, .tgl *::-moz-selection, .tgl *:after::-moz-selection, .tgl *:before::-moz-selection, .tgl + .tgl-btn::-moz-selection { background: none; }
.tgl::selection, .tgl:after::selection, .tgl:before::selection, .tgl *::selection, .tgl *:after::selection, .tgl *:before::selection, .tgl + .tgl-btn::selection { background: none; }
.tgl + .tgl-btn { font-size: 11px; outline: 0; display: inline-block; width: 4em; height: -moz-calc(2em + 2px); height: -webkit-calc(2em + 2px); height: -o-calc(2em + 2px); height: calc(2em + 2px); position: relative; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.tgl + .tgl-btn:after, .tgl + .tgl-btn:before { position: relative; display: block; content: ""; width: 50%; height: 100%; }
.tgl + .tgl-btn:after { left: 0; }
.tgl + .tgl-btn:before { display: none; }
.tgl:checked + .tgl-btn:after { left: 50%; }
.tgl-light + .tgl-btn { background: #f7f7f9; border: 1px solid rgba(0,0,0,.125); border-radius: 2em; padding: 2px; margin: 5px 10px 5px 0; -webkit-transition: all .4s ease; transition: all .4s ease; }
.tgl-light + .tgl-btn:after { border-radius: 50%; background: #cbcbcb; -webkit-transition: all .2s ease; transition: all .2s ease; }
.tgl-light:checked + .tgl-btn:after { background: #4aa84a; }
.tgl-label:hover .tgl-light + .tgl-btn { border-color: rgba(0,0,0,.3) }

/* Repeating Rows */
.removeRowSml,
.removeRow { color: #d46060; }
.addRowSml,
.addRow { color: #4aa84a; }
.removeRow:before,
.addRow:before { font-size: 140%; }
.rowControlTip { text-transform: uppercase; font-size: 70%; }
.proprietorsRH { line-height: 130%; }
.cardRow { border: 1px solid rgba(0,0,0,.125); }
.proprietorRow { border: 1px solid rgba(0,0,0,.125); }

/* Modals */
.modal-body { padding: 0 15px; }
.locSelect { padding: 40px 0; 
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.locSelect p { margin: 0; }
.locSelect label { font-weight: bold; padding: 5px 0; }
.locSelect.minify { padding: 0; }
.cardChoices .card img { margin: -2.5rem auto 0; max-width: 100%; height: auto; }
.prodOptions .card p,
.cardChoices .card p { font-size: 0.8rem; line-height: 1.0rem; margin: 0.6rem 0 2.3rem; }
.prodOptions .card .cardTick,
.cardChoices .card .cardTick { position: absolute; bottom: -1px; right: -1px; background-color: #f7f7f9; border: 1px solid #ccc; color: #b6b6b6; width: 1.8rem; height: 1.8rem; line-height: 1.8rem; text-align: center;
	-webkit-border-top-left-radius: .25rem;
	-webkit-border-bottom-right-radius: .25rem;
	-moz-border-radius-topleft: .25rem;
	-moz-border-radius-bottomright: .25rem;
	border-top-left-radius: .25rem;
	border-bottom-right-radius: .25rem;
}
.prodOptions .card .cardTick i,
.cardChoices .card .cardTick i { line-height: 1.8rem; vertical-align: top; font-size: 1.1rem; }
.prodOptions .card .cardTick i.fa-check,
.cardChoices .card .cardTick i.fa-check { display: none; color: #fff; }
.prodOptions .active .card,
.cardChoices .active .card { border: 1px solid #419341; }
.prodOptions .active .card .cardTick,
.cardChoices .active .card .cardTick { background-color: #4aa84a; border: 1px solid #419341; }
.prodOptions .active .card .cardTick i.fa-plus,
.cardChoices .active .card .cardTick i.fa-plus { display: none; }
.prodOptions .active .card .cardTick i.fa-check,
.cardChoices .active .card .cardTick i.fa-check { display: inline-block; }
.prodOptions .disabled .card,
.cardChoices .disabled .card { opacity: 0.4; }
.cardChoices .disabled .card img { filter: gray; -webkit-filter: grayscale(1); filter: grayscale(1); }
.prodOptions { }

.cardChoices .popoverCard { position: absolute; bottom: 0; left: 0; background-color: #1565bf; color: #fff; width: 1.7rem; height: 1.7rem; line-height: 1.7rem; text-align: center;
	-webkit-border-top-right-radius: .25rem;
	-webkit-border-bottom-left-radius: .25rem;
	-moz-border-radius-topright: .25rem;
	-moz-border-radius-bottomleft: .25rem;
	border-top-right-radius: .25rem;
	border-bottom-left-radius: .25rem;
}
.popupStuff { max-width: 160px; font-size: 0.9rem; }
.popupStuff > * { font-size: 0.7rem; }
.popupStuff p { margin-bottom: 6px; }
.popupStuff ul { margin-bottom: 6px; padding-left: 14px; }
.popover.bs-tether-element-attached-top:before { left: 20px; margin-left: 0; }
.popover.bs-tether-element-attached-top:after { left: 21px; margin-left: 0; }
@media (max-width: 575px) { 
	.cardChoices .row > .col-6 { padding: 0 8px; }
	.popupStuff { max-width: 130px; }
	.popover { }
}

/* TOOLTIPS */
i.tooltipBox { padding-left: 5px; color: #1565bf; }
.tooltip-inner { background-color: #292929; font-size: 0.75rem; }
.tooltip.bs-tether-element-attached-bottom .tooltip-inner:before, .tooltip.tooltip-top .tooltip-inner:before { border-top-color: #292929; }

/* Save / Resume */
.topperRow { margin-bottom: 5px; }
.topperRow h2 { font-size: 1.5rem; margin: 10px 0; padding: 0 15px; }
#saveBtn { border: 1px solid #ccc; margin: 10px 0; color: #292b2c; text-decoration: none; -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; }
#saveBtn:hover { border-color: #adadad; background-color: #e6e6e6; }
#saveBtn i { background-color: #4aa84a; color: #fff; padding: .25rem 0.8rem; font-size: 1.4rem; vertical-align: middle; }
#saveBtn span { padding: .25rem 1rem; }
#saveBox { }
#saveBox .card { margin-bottom: 10px; }

/* Spinner */
.spinnerNotice { max-width: 240px; margin: 0 auto; text-align: center; padding: 30px 15px; }
.spinnerNotice i { font-size: 3rem; color: #d8d8d8; }
.spinnerNotice h6 { font-size: 1rem; line-height: 1.4; margin: 10px 0 0; }

@media (max-width: 575px) { 
	.tooltip-inner { max-width: 160px; }
}

/* RESPONSIVE */

@media (max-width: 575px) { 
	
}



