html {
    font-size: 15px;
}

body {
    max-width: 100%;
}

.underline {
    text-decoration: underline;
}

body, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .tooltip, .popover {
    font-family: -apple-system, BlinkMacSystemFont, "Arimo", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

body, select, input, .btn {
	font-size: 1rem !important;
}

.navbar, .navbar-nav, .nav-item, .nav-link, .navbar-brand {
    font-size: 1.25rem !important;
}

/* Responsive - SEE app_head.js IF VALUES ARE CHANGED */
@media only screen and (max-width: 400px) {
	.phone {
		
	}

	.phone-visibility {

	}

	.tablet-phone {
		
	}

	.tablet-phone-visibility {

	}

	.tablet {
		display: none;
	}

	.tablet-visibility {
		visibility: hidden;
	}

	.desktop {
		display: none;
	}

	.desktop-visibility {
	    visibility: hidden;
	}

	.desktop-tablet {
		display: none;
	}

	.desktop-tablet-visibility {
		visibility: hidden;
	}
}

@media only screen and (min-width: 401px) and (max-width: 991px) {
	.tablet {
		
	}

	.tablet-visibility {

	}

	.tablet-phone {
		
	}

	.tablet-phone-visibility {

	}

	.desktop-tablet {
		
	}

	.desktop-tablet-visibility {

	}

	.phone {
		display: none;
	}

	.phone-visibility {
		visibility: hidden;
	}

	.desktop {
		display: none;
	}

	.desktop-visibility {
	    visibility: hidden;
	}
}

@media screen and (min-width: 992px), print, speech {
	.desktop {
		
	}

    .desktop-visibility {
	    visibility: visible;
	}

	.desktop-tablet {
		
	}

	.desktop-tablet-visibility {

	}

	.tablet {
		display: none;
	}

	.tablet-visibility {
		visibility: visible;
	}

	.phone {
		display: none;
	}

	.phone-visibility {
		visibility: visible;
	}

	.tablet-phone {
		display: none;
	}

	.tablet-phone-visibility {
		visibility: visible;
	}
}

@media (hover: none) {
    .touch-device {

    }

    .mouse-device {
         display: none;
    }
}

@media (hover: hover) {
    .touch-device {
         display: none;
    }

    .mouse-device {

    }
}

@media screen and (max-width: 1200px) {
    .aggregate-expenses-badge-wrapper {
        display: none;
    }
}

{# Extra large modal for the doc preview #}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px !important;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px !important;
  }
}

/* Jumbotron spacing */
.jumbotron {
	margin-top: 1em;
}

/* Bootstrap theme styling override */
.btn {
	text-transform: none !important;
}
.navbar .navbar-nav .nav-item .nav-link {
	text-transform: none !important;
}

/* Push footer to bottom */
body {
  min-height: 100vh;
  position: relative;
  margin: 0;
}

footer {
  -position: absolute;
  bottom: 0;
  width: 100%;
  padding: 0 !important;
}

/* -OR- element in payment options page between the credit card button and PayPal button */
.horizontal-or {
	color: #bbb;
	text-align: center;
	font-style: italic;
}

/* WINDOW RESIZE / ZOOM THINGIE FOR select2 */
.select2-container {
	width: 100% !important;
}

/* SORTABLE TABLES USING NADI ALGORITHM: */
.sortable_th {
	cursor: pointer;
}

.sortable_th:hover {
	/* text-decoration: underline; */
}

/* doc.html table styles: */
.debug_row {
	color: #bbb;
}

.field-nadi-label {
	color: #888;
}

.field-nadi-value {

}

.field-nadi-separator {
	margin-top: 3px;
	margin-bottom: 0px;
	color: #ccc;
	border-top-color: #ccc !important;
}

.outer-shadow {
  -webkit-box-shadow: 3px 3px 3px 3px #ccc;  /* Safari 3-4, iOS 4.0.2 - 4.2, Android 2.3+ */
  -moz-box-shadow:    3px 3px 3px 3px #ccc;  /* Firefox 3.5 - 3.6 */
  box-shadow:         3px 3px 3px 3px #ccc;  /* Opera 10.5, IE 9, Firefox 4+, Chrome 6+, iOS 5 */
}

.inner-shadow {
   -moz-box-shadow:    inset 0 0 10px #000000;
   -webkit-box-shadow: inset 0 0 10px #000000;
   box-shadow:         inset 0 0 10px #000000;
}

.card-title {
	font-family: -apple-system, BlinkMacSystemFont, "Arimo", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

/* fields that must be left-aligned: */
.latin_text_alignment {
	direction: ltr;
	text-align: left;
}

.latin_text_direction {
	direction: ltr;
}

.text_align_left {
    text-align: left;
}

.text_align_right {
    text-align: right;
}

.pamoda-table-friend, .pamoda-table-foe {
	display: none;
}

.ui-icon-circle-triangle-e {
	background-image: url(images/ui-icons_444444_256x240.png) !important;
}

{# RTL fix #}
.form-check {
    direction: ltr;
}

{# Loading animation for main-doc-image #}
.main-doc-image-loading-animation {
  padding-top: 48px;
}
.lds-ring {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
}
.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 51px;
  height: 51px;
  margin: 6px;
  border: 6px solid #fff;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #06bbcb transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

{# Accounts page #}
.fetch-period-selector {
	background-color: white !important;
}
.fetch-period-selector:disabled {
	cursor: not-allowed;
}

{# Gmail-like user name initials badge #}
[data-initials]:before {
  content:attr(data-initials);
  display:inline-block;
  font-size:1em;
  width:2.5em;
  height:2.5em;
  line-height:2.5em;
  text-align:center;
  border-radius:50%;
  vertical-align:middle;
  margin-right:1em;
}

.initials-circle {
    width: 32px;
    height: 32px;
    text-align: center;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}

.initials-letters {
  position: relative;
  top: -5px;
  font-size: 13px;
  line-height: 13px;
  font-family: "Open Sans", "Helvetica", "Arial", sans-serif;
  font-weight: bold;
}

{# Radio button as selectable card for onboarding wizard #}
.selectable-card .label {
  width: 100%;
  font-size: 1rem;
}

.selectable-card .card-input-element+.card {
  height: calc(36px + 2*1rem);
  color: #067b8b;
  border: 2px solid transparent;
  border-radius: 4px;
}

.selectable-card .card-input-element+.card:hover {
  cursor: pointer;
}

.selectable-card .card-input-element:checked+.card {
  border: 3px solid #ff9800;
  -webkit-transition: border .3s;
  -o-transition: border .3s;
  transition: border .3s;
}

.selectable-card .card-input-element:checked+.card::after {
  content: '\e5ca';
  color: var(--light); /* #067b8b, #AFB8EA; */
  font-family: 'Material Icons';
  font-size: 24px;
  -webkit-animation-name: fadeInCheckbox;
  animation-name: fadeInCheckbox;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.wizard-description, .wizard-description > p {
    color: #555 !important;
    font-size: larger !important;
    line-height: 1.6 !important;
}

.wizard-card {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    color: #f8f9fa !important;
    background-color: #343a40 !important;
    border-color: #dc3545 !important;
}

@-webkit-keyframes fadeInCheckbox {
  from {
    opacity: 0;
    -webkit-transform: rotateZ(-20deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotateZ(0deg);
  }
}

@keyframes fadeInCheckbox {
  from {
    opacity: 0;
    transform: rotateZ(-20deg);
  }
  to {
    opacity: 1;
    transform: rotateZ(0deg);
  }
}

/* Dividable table */
.text-divider {
    margin: 2em 0;
    line-height: 0;
    text-align: center;
}

.text-divider span {
    background-color: #f5f5f5;
    padding: 1em;
}

.text-divider:before {
    content: " ";
    display: block;
    border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #f7f7f7;
}

/* Add space to the monthly titles in the docs page unless it's the first one */
.js-infinite-item:not(:first-of-type) {
	margin-top: 48px;
}
/* First one gets extra space so it drops below the buttons */
.js-infinite-item:first-of-type {
	padding-top: 80px;
}

.js-infinite-item td {
    vertical-align: middle !important;
}

/* Centralize button icons and images */
.btn-just-icon * {
    top: -6px !important;
    position: relative;
}

/* Underline links in Bootstrap alerts */
.alert a {
    text-decoration: underline;
}

/* Place checkbox in the middle of the table row */
.pamoda-table .form-check {
    top: -10px;
}


.modal-content {
  width:100%;
}

.modal-dialog-centered {
  display:-webkit-box !important;
  display:-ms-flexbox !important;
  display:flex !important;
  -webkit-box-align:center !important;
  -ms-flex-align:center !important;
  align-items:center !important;
  min-height:calc(100% - (.5rem * 2)) !important;
}

@media (min-width: 576px) {
  .modal-dialog-centered {
    min-height:calc(100% - (1.75rem * 2)) !important;
  }
}

.expense-category-btn {
    padding-left: 9px !important;
    padding-right: 9px !important;
}

/* alignment of text field labels in forms such as Client Profile */
.bmd-label-static {
    width: 100%;
}

/* Pricing plans etc. */
.slashed-price {
    position: relative;
    display: inline-block;
}
.slashed-price::before, .slashed-price::after {
    content: '';
    width: 100%;
    position: absolute;
    right: 0;
    top: 50%;
}
.slashed-price-bidi::before {
    border-bottom: 3px solid red;
    -webkit-transform: skewY(-10deg);
    transform: skewY(-10deg);
}
.slashed-price-bidi::after {
    border-bottom: 4px solid red;
    -webkit-transform: skewY(15deg);
    transform: skewY(15deg);
}

.slashed-price-ltr::before {
    border-bottom: 4px solid red;
    -webkit-transform: skewY(-15deg);
    transform: skewY(-15deg);
}

.slashed-price-rtl::after {
    border-bottom: 4px solid red;
    -webkit-transform: skewY(15deg);
    transform: skewY(15deg);
}
/* Deal bar */
.deal-bar-close-button {
    font-size: 22px;
    color: #3e3947;
    margin-right: 0;
    position: absolute;
    right: 5%;
    background: white;
    opacity: 0.5;
    padding: 0px;
    height: 25px;
    line-height: 21px;
    width: 25px;
    border-radius: 50%;
    text-align: center;
    top: 18px;
    cursor: pointer;
    font-weight: 200;
}
.deal-bar-close-button:hover{
    opacity: 1;
}

/* Fix for Edge sticky  position - Nadi */
@supports (-ms-ime-align: auto) {
  .sticky-top {
    position: relative !important;
    top: 0;
  }
}

/* Trial days countdown button */
.glow {
  font-size: 80px;
  color: #fff;
  text-align: center;
  -webkit-animation: glow 1s ease-in-out infinite alternate;
  -moz-animation: glow 1s ease-in-out infinite alternate;
  animation: glow 1s ease-in-out infinite alternate;
}

@-webkit-keyframes glow {
  from {
    text-shadow: 0 0 10px #fff, 0 0 20px #fff, 0 0 30px #e60073, 0 0 40px #e60073, 0 0 50px #e60073, 0 0 60px #e60073, 0 0 70px #e60073;
  }
  to {
    text-shadow: 0 0 20px #fff, 0 0 30px #ff4da6, 0 0 40px #ff4da6, 0 0 50px #ff4da6, 0 0 60px #ff4da6, 0 0 70px #ff4da6, 0 0 80px #ff4da6;
  }
}

.privileged-widget {
    color: #aaa;
}

.upper-case-text {
    text-transform: uppercase;
}

.navbar-menu-item-intro-highlight {
    background-color: gray !important;
    opacity: 0.5 !important;
}

/* Docs table blur if awaiting payment */
.awaiting-payment-blur {
    filter: blur(5px);
    -webkit-filter: blur(5px);
}

/* Infinite-Scroll fix for "last page DIV not showing" - https://github.com/metafizzy/infinite-scroll/issues/706 */
.page-load-status {
	display:block !important; /*never problem the forced block, because the all children will be display:none, exception that one, what handle the infinite-scroll (so the active status)*/
}
.infinite-scroll-request,
.infinite-scroll-error {
	display:none;
}
.infinite-scroll-last {
	display:block; /*Needful the block value because the pages without pagination (but non forced, so on paginated pages will be display:none this and .infinite-scroll-request will get it block!) */
}

.alert-slide-down {
    display: none;
}

/* Payment forms */
.credit-card-cvv-label-amex {
    font-weight: bold;
}

/* Docs page */
.docs-page-table-heading-sortable {
    text-decoration: underline;
    cursor: pointer;
}

/* Ribbons - start */
.ribbon{
  display: inline-block;
  font-size: 14px;
  text-align: left;
  background-color: #fff;
  min-height: 40px;
  -webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.2);
  box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);
  margin-bottom: 10px;
}

.ribbon:hover{
    cursor: pointer;
    -webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.4);
  box-shadow: 0 1px 1px 0 rgba(0,0,0,.3);
}

.ribbon > .ribbon-split {
  background: #337ab7;
  width: 33px;
  float: left;
  color: #fff!important;
  height: 100%;
  text-align: center;
}


.ribbon > .ribbon-split  > i {
  position: relative;
  top: 8px;
}
.ribbon > .ribbon-split > .glyphicon{
  position:relative;
  top: calc(50% - 9px)!important; /* 50% - 3/4 of icon height */
}

.ribbon > .ribbon-split.ribbon-success {
  background: #5cb85c !important;
}

.ribbon > .ribbon-split.ribbon-danger {
  background: #d9534f !important;
}

.ribbon > .ribbon-split.ribbon-info {
  background: #5bc0de !important;
}

.ribbon > .ribbon-split.ribbon-warning {
  background: #5ffc107 !important;
}

.ribbon > .ribbon-split.ribbon-rose {
  background: #e91e63 !important;
}

.ribbon > .ribbon-split.ribbon-secondary {
  background: #56c757d !important;
}

.ribbon > .ribbon-text{
  line-height: 19px;
  padding-top: 11px;
  padding-left: 45px;
  padding-right: 20px;
  padding-bottom: 4px;
}

.ribbon-row {
	display: flex;
}

.ribbon-container {

}
/* Ribbons - end */

/* Ellipsis - start */
.ellipsis {

}

.ellipsis:after {
  overflow: hidden;
  display: inline-block;
  vertical-align: bottom;
  -webkit-animation: ellipsis-anim steps(4,end) 900ms infinite;
  animation: ellipsis-anim steps(4,end) 900ms infinite;
  content: "\2026"; /* ascii code for the ellipsis character */
  width: 0px;
}

@keyframes ellipsis-anim {
  to {
    width: 1.25em;
  }
}

@-webkit-keyframes ellipsis-anim {
  to {
    width: 1.25em;
  }
}
/* Ellipsis - end */

/* Payment backdrop blur - start */
/* .modal-open.kaxsdc {
	filter: blur(2px);
} */
/* Payment backdrop blur - end */
