.spinner {
  z-index: 99999;
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100vw;
  margin-top: 50vh;
  text-align: center;
}

.spinner.widget-spinner {
  z-index: 99999;
  position: absolute;
  top: 40%;
  width: 100%;
  text-align: center;
  height: 40px;
  padding-top: 0;
}

.spinner > div {
  width: 18px;
  height: 18px;
  background-color: var(--primary);

  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.spinner .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

.lds-ring {
  z-index: 99999;
  position: absolute;
  top: 40%;
  width: 100%;
  text-align: center;
  height: 64px;
  padding-top: 0;
}
.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 51px;
  height: 51px;
  margin: 6px;
  border: 6px solid var(--primary);
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: var(--primary) transparent transparent transparent;
  left: calc(50% - 25px);
}
.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);
  }
}

@-webkit-keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}

@keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.react-datepicker-wrapper {
  display: block !important;
  width: 100% !important;
}

.react-datepicker__input-container {
  display: block !important;
  width: 100% !important;
}

.form-inline .react-datepicker-wrapper input {
  width: 100% !important;
}

.table td,
.table th {
  height: auto;
  padding: 2px 10px !important;
}
.table td .form-check label {margin-bottom:0;}

.table .form-check {
  padding: 0;
}

.form-control {
  padding: 0.375rem 0.75rem;
}

.modal-body {
  max-height: 80vh;
  overflow-y: auto;
}

.report-table tbody{
	border-bottom: 8px solid #fff;
}

.reportHeader{
	color: #fff;
  text-transform: uppercase;
}

.reportFooter {
  text-transform: uppercase;
}

.bg-dark.reportFooter{
	color: #fff;
}

th.sortable {
  cursor: pointer;
  width: auto;
}

th.sortable:after {
  font-family: "Font Awesome 5 Solid";
  content: "\f0dc";
  margin-left: 4px;
  position: absolute;
}

th.sortable:after {
  font-family: "Font Awesome 5 Solid";
  content: "\f0dc";
  margin-left: 4px;
  position: absolute;
}

th.sortable.asc:after {
  font-family: "Font Awesome 5 Solid";
  content: "\f0de";
  margin-left: 4px;
  position: absolute;
}

th.sortable.desc:after {
  font-family: "Font Awesome 5 Solid";
  content: "\f0dd";
  margin-left: 4px;
  position: absolute;
}

th.sortable.asc, th.sortable.desc{
  text-decoration: underline;
}

th.sortable .sort-index::before{
  margin-left: 16px;
  position: absolute;
  font-size: x-small;
  font-weight: bold;
}

th.sortable .sort-index.index-1::before{
  content: "1";
}

th.sortable .sort-index.index-2::before{
  content: "2";
}

th.sortable .sort-index.index-3::before{
  content: "3";
}

th.sortable .sort-index.index-4::before{
  content: "4";
}

th.sortable .sort-index.index-5::before{
  content: "5";
}

th.sortable .sort-col-1::before{
  content: "1";
  margin-left: 1px;
  position: absolute;
  font-size: x-small;
  font-weight: bold;
}

th.currency,
td.currency {
  text-align: right;
}

th.separator, td.separator{
  background: #ddd;
  border: #ddd;
  padding: 4px !important;
}

.notif-box, .messages-notif-box{
  width: 400px;
}

.notif-box, .messages-notif-box{
  width: 400px;
}
.notif-content{
  width: 360px;
}

/*Dark Theme*/
body {background: #3B576F;}
.footer { background: rgba(82,125,160, 1) !important;color:#FFF;padding:5px 0;border-top:1px solid #555; }
.main-panel > .content { min-height: calc(100% - 94px); } /*need to change based on footer size*/
.sidebar { background: linear-gradient(-60deg, rgba(82,125,160, 1), rgba(57,87,111, 1) 65% 100%)}
.sidebar .nav > .nav-item a p, 
  .sidebar .nav > .nav-item a i, 
  .sidebar .nav .nav-section .text-section, 
  .sidebar .nav > .nav-item a, 
  .sidebar.sidebar-style-2 .nav .nav-item a[data-toggle="collapse"][aria-expanded="true"] p, 
  .sidebar.sidebar-style-2 .nav .nav-item a[data-toggle="collapse"][aria-expanded="true"] i
   { color:white !important;} 
.page-inner .page-title {color:white;}
.main-header {background:linear-gradient(0deg, rgba(102,145,180,1), rgba(67,97,121,1), rgba(57,87,111,1) 65%);}
.card {background:#F3F6FF;}
.main-header .navbar-header .navbar-nav .nav-item .nav-link {
    color: #fff !important;
}
.bg-primary-gradient {

  background: #888 !important;
  background: -webkit-linear-gradient(legacy-direction(-45deg), rgba(155,200,255,.3),rgba(0,0,0,0.1) 80%) !important;
  background: linear-gradient(-45deg,rgba(155,200,255,.3),rgba(0,0,0,0.1) 80%) !important;
}



/*Reduce White-space*/
.card, .card-light { margin-bottom:15px;}
.separator {height:8px;}

.card-header{
  padding: 0.5rem 1.25rem !important;
}

.card-body{
  padding: 0.5rem !important;
}

.card.full-height {
  height: calc(100% - 10px);
}

.form-check, .form-group {
  padding: 4px !important;
}

.form-control{
  width:98% !important;
}

.separated::after{
  margin-right: 2px;
  margin-left: 2px;
  content: "|"
}

.separated:last-child::after{
  content: none;
}

.accountPage .nav-tabs .nav-link {
  background: rgba(199,199,199,.2);
  color: #fff;
}

.accountPage .nav-tabs .nav-link.active {
  background: #fff;
  color: #495057;
}

.selectgroup.p-0{
  padding: 0 !important;
}

.selectgroup.p-0 .selectgroup-item{
  margin-bottom: 0 !important;
}

th.tableHeading{
  border-bottom: 1px solid #dee2e6 !important;
}

tr.highlight{
  background-color: yellow !important;
}

.btn-focus-highlight:focus{
  border: solid 2px #1572e8 !important;
  text-decoration: underline;
}

.navbar .navbar-nav .nav-item .nav-link:hover{
  background: rgba(199,199,199,.2)!important;
}

.nav-item-spacer{
  width:1px;
  background: white;
  height: 26px;
  margin-right: 7px;
}

@media print {

  @page {
    size: auto;
  }

  body{
    background: #fff !important;
  }

  div.row{
    margin: 0 !important;
  }
	.table-striped tbody tr:nth-of-type(odd) {
		background-color: rgba(0,0,0,.05) !important;
		-webkit-print-color-adjust: exact; 
	}

	.table-striped tbody tr:nth-of-type(odd) td{
		background-color: rgba(0,0,0,.05) !important;
		-webkit-print-color-adjust: exact; 
		border-right-color: transparent !important;
		border-left-color: transparent !important;
		border-color: transparent !important;
	}

	.bg-primary th, .bg-primary td{
		background-color: var(--primary) !important;
		-webkit-print-color-adjust: exact; 
	}

  .bg-secondary th, .bg-secondary td{
		background-color: var(--secondary) !important;
		-webkit-print-color-adjust: exact; 
	}

	.bg-dark th, .bg-dark td{
		background-color: var(--dark) !important;
		-webkit-print-color-adjust: exact; 
	}
	
	th.sortable:after {
		content: none;
  }
  
  .noprint{
    display: none;
  }
}
