.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */ /* Konqueror HTML */
  -moz-user-select: none; /* Old versions of Firefox */ /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently
   supported by Chrome, Edge, Opera and Firefox */
}

.datepicker {
  padding: 10px;
  z-index: 1010;
  margin-left: -1px;
}

.datepicker table tr td.today,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today:hover {
  background-color: #829CBC;
  background: #829CBC;
  background-image: none;
  border: none;
  color: #FFFFFF;
}

.datepicker table tr td.today.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today.disabled:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today[disabled] {
  background-color: #829CBC;
  color: #FFFFFF;
}

.datepicker td.table:hover {
  background-image: none !important;
}

.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active.disabled:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active[disabled] {
  background-color: #0d21a1;
}

.datepicker table tr td.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active:hover {
  background-image: none;
  border: none;
}

.datepicker td, .datepicker th {
  width: 30px;
  height: 30px;
}

.datepicker-dropdown {
  z-index: 1200 !important;
}

a.primary {
  color: #0d21a1;
}

a.danger {
  color: #e94e42;
}

a.warning {
  color: #e76e36;
}

a.info {
  color: #32a9d1;
}

a.success {
  color: #62b11d;
}

.btn {
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
  height: 34px;
  outline: 0;
}

button.btn {
  line-height: 14px;
}

.btn-fw {
  width: 100%;
}

.btn-default {
  background-color: #FFFFFF;
  border-color: #d4d4d4;
}

.btn-default:disabled {
  background-color: #FFFFFF;
  border-color: #d4d4d4;
  cursor: not-allowed;
  opacity: 1;
}

.btn-primary {
  background-color: #0d21a1;
  border-color: #0d21a1;
  color: #FFFFFF;
}

.btn-primary:disabled {
  background-color: #0d21a1;
  border-color: #0d21a1;
  cursor: not-allowed;
  opacity: 1;
}

.btn-outline-primary {
  border-color: #0d21a1;
  color: #0d21a1;
}

.btn-outline-primary:hover {
  background-color: #0d21a1;
  border-color: #0d21a1;
  color: #FFFFFF;
}

.btn-info {
  background-color: #32a9d1;
  border-color: #32a9d1;
  color: #FFFFFF;
}

.btn-info:disabled {
  background-color: #32a9d1;
  border-color: #32a9d1;
  cursor: not-allowed;
  opacity: 1;
}

.btn-warning {
  background-color: #e76e36;
  border-color: #e76e36;
  color: #FFFFFF;
}

.btn-warning:disabled {
  background-color: #e76e36;
  border-color: #e76e36;
  cursor: not-allowed;
  opacity: 1;
}

.btn-success {
  background-color: #62b11d;
  border-color: #62b11d;
  color: #FFFFFF;
}

.btn-success:disabled {
  background-color: #62b11d;
  border-color: #62b11d;
  cursor: not-allowed;
  opacity: 1;
}

.btn-danger {
  background-color: #e94e42;
  border-color: #e94e42;
  color: #FFFFFF;
}

.btn-danger:disabled {
  background-color: #e94e42;
  border-color: #e94e42;
  cursor: not-allowed;
  opacity: 1;
}

.btn-default:hover,
.btn-default:focus,
.btn-default:active {
  background-color: #d6d6d6;
  border-color: #d4d4d4;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: #0c1d8b !important;
  border-color: #0c1d8b !important;
  color: #FFFFFF;
}

.btn-info:hover,
.btn-info:focus,
.btn-info:active {
  background-color: #279bc1 !important;
  border-color: #279bc1 !important;
  color: #FFFFFF;
}

.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
  background-color: #c95b29;
  border-color: #c95b29;
  color: #FFFFFF;
}

.btn-success:hover,
.btn-success:focus,
.btn-success:active {
  background-color: #62b11d;
  border-color: #62b11d;
  color: #FFFFFF;
}

.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
  background-color: #c4372d;
  border-color: #c4372d;
  color: #FFFFFF;
}

textarea,
textarea.form-control {
  border: 1px solid #d4d4d4;
  line-height: 1.5;
  border-radius: 0.25rem;
  padding: 0.2rem 0.2rem;
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
  outline: 0;
}

textarea:focus,
textarea:active {
  border-color: #0c1d8b;
}

select,
select.form-control {
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
  height: 34px;
  padding: 0.2rem 1.5rem 0.2rem 0.2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1.5;
  border-radius: 0.25rem;
  border-color: #d4d4d4;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  background: url("data:image/svg+xml,<svg height='10px' width='12px' viewBox='0 0 16 16' fill='%23000000' xmlns='http://www.w3.org/2000/svg'><path d='M 0 6 H 12 L 6 12 z' fill='%23000000' /></svg>") no-repeat, #FFFFFF;
  background-position: calc(100% - 0.55rem) center !important;
  outline: 0;
}

select[readonly] {
  pointer-events: none;
}

select:focus,
select:active {
  border-color: #0c1d8b;
}

input[type=file].form-control {
  font-size: 1em;
  height: auto;
}

.dropdown-menu {
  font-size: 14px;
}

.dropdown-toggle::after {
  margin-left: 0.5em;
  vertical-align: middle;
  font-size: 14px;
}

input[type=text],
input[type=email],
input[type=password],
input[type=phone],
input[type=number] {
  height: 34px;
  border: 1px solid #d4d4d4;
  line-height: 1.5;
  border-radius: 0.25rem;
  padding: 0.2rem 0.2rem;
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
  outline: 0;
}

input[type=text]:disabled,
input[type=email]:disabled,
input[type=password]:disabled,
input[type=phone]:disabled,
input[type=number]:disabled,
select:disabled {
  cursor: not-allowed;
  background-color: #d4d4d4;
}

input:focus,
input:active {
  border-color: #0c1d8b;
}

span.form-control {
  height: 34px;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #d4d4d4;
  line-height: 1.5;
  border-radius: 0;
  padding: 0.2rem 0;
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
}

span.form-control-block {
  min-height: 34px;
  height: auto;
  display: block;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #d4d4d4;
  line-height: 1.5;
  border-radius: 0;
  padding: 0.2rem 0;
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
  padding-bottom: 12px;
}

p.form-control {
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #d4d4d4;
  line-height: 1.5;
  border-radius: 0;
  padding: 0.2rem 0;
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
  height: auto;
  white-space: pre;
}

.table {
  font-family: "Quicksand", Helvetica, sans-serif;
}
.table thead,
.table tbody,
.table tr {
  position: relative;
}
.table thead th {
  border-bottom: 0;
  vertical-align: top;
}
.table th {
  font-weight: 500;
}
.table .icon-sm {
  height: 20px;
}
.table a.primary,
.table a.success,
.table a.danger,
.table a.info,
.table a.warning {
  margin-right: 2px;
}
.table td.sticky,
.table th.sticky {
  position: sticky;
  top: auto;
  background-color: #FFFFFF;
  min-width: 100px;
  box-shadow: rgba(33, 35, 38, 0.1) 10px 0px 10px -10px;
}
.table td.sticky-1,
.table th.sticky-1 {
  left: 0;
}
.table td.sticky-2,
.table th.sticky-2 {
  left: 100px;
}
.table td.sticky-3,
.table th.sticky-3 {
  left: 200px;
}

.placeholder {
  background-color: #F3F3F3;
  border-radius: 0.25rem;
  padding: 0.75rem;
  border: solid 1px #d4d4d4;
}

.charts .title {
  font-size: 16px;
  margin-bottom: 15px;
  margin-top: 30px;
}

.card {
  border-radius: 0.25rem;
  box-shadow: 0px 1px 5px 3px rgba(18, 38, 63, 0.13);
  -webkit-box-shadow: 0px 1px 5px 3px rgba(18, 38, 63, 0.13);
  -moz-box-shadow: 0px 1px 5px 3px rgba(18, 38, 63, 0.13);
  border: 0;
  margin-bottom: 10px;
}
.card .card-body.align-middle {
  top: 50%;
  transform: translateY(-50%);
  position: relative;
  flex: none;
}
.card .card-title {
  font-size: 14px;
  text-align: center;
}
.card .card-title i.icon-title {
  border-radius: 50%;
  padding: 5px;
  background-color: #0d21a1;
  color: #FFFFFF;
  font-size: 18px;
  margin-right: 5px;
  display: inline-block;
  height: 35px;
  width: 35px;
  line-height: 1.4;
}
.card .card-title i.icon-primary-title {
  background-color: #0d21a1;
  color: #FFFFFF;
}
.card .card-title i.icon-danger-title {
  background-color: #e94e42;
  color: #FFFFFF;
}
.card .card-title i.icon-info-title {
  background-color: #32a9d1;
  color: #FFFFFF;
}
.card .card-title i.icon-success-title {
  background-color: #62b11d;
  color: #FFFFFF;
}
.card .card-title i.icon-warning-title {
  background-color: #e76e36;
  color: #FFFFFF;
}
.card .highlight-number {
  text-align: center;
  margin-bottom: 0;
  font-size: 22px;
  font-weight: 500;
}
.card .description {
  text-align: center;
  color: #8f989e;
  font-size: 14px;
  font-weight: 500;
}

.card.full-height {
  height: calc(100% - 10px);
}
.card.full-height canvas {
  max-height: 370px !important;
}

.card.half-height {
  height: calc(50% - 10px);
}

.tooltip {
  font-family: "Quicksand", Helvetica, sans-serif;
  font-size: 14px;
}

.carousel .carousel-control-next,
.carousel .carousel-control-prev {
  width: 10%;
}
.carousel .slide-previous,
.carousel .slide-next {
  font-size: 32px;
}

.table-box {
  background: #FFFFFF;
  padding: 15px;
  border-radius: 0.25rem;
}
.table-box .flex-table {
  overflow-x: auto;
  max-height: calc(100vh - 255px);
}
.table-box .flex-table .table {
  position: relative;
}
.table-box .flex-table .table thead {
  position: sticky;
  top: 0;
  background-color: #FFFFFF;
  box-shadow: rgba(33, 35, 38, 0.1) 0px 10px 10px -10px;
  z-index: 100;
}
.table-box .flex-table .table thead th {
  border-top: 0;
}
.table-box .flex-table .table tbody {
  z-index: 50;
}
.table-box .table-tool {
  margin-bottom: 15px;
  display: flex;
  justify-content: space-between;
}
.table-box .table-tool * {
  margin-left: 5px;
  vertical-align: middle;
}
.table-box .table-tool *:first-child {
  margin-left: 0;
}
.table-box .table-tool input.datepicker {
  width: 90px;
}
.table-box .table-pagination {
  display: flex;
  justify-content: center;
  padding-top: 15px;
}
.table-box .table-pagination .pagination {
  margin-bottom: 0;
}
.table-box .table-pagination .pagination .page-link {
  border: 0;
  border-radius: 50%;
  height: 30px;
  width: 30px;
  line-height: 30px;
  text-align: center;
  padding: 0;
  cursor: pointer;
  color: #342E37;
  margin-left: 0;
  margin-right: 3px;
}
.table-box .table-pagination .pagination .page-item.active .page-link {
  background: #0d21a1;
  color: #FFFFFF;
}

.table-box.full-screen {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 1000;
}
.table-box.full-screen .map {
  height: calc(100% - 45px) !important;
}

.form {
  padding: 15px;
  background-color: #FFFFFF;
  border-radius: 0.25rem;
}
.form .form-group label {
  font-weight: 500;
}
.form .form-group.form-label {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.form .form-group.form-label label {
  text-decoration: underline;
}
.form .form-group.form-side-label {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.form .copy {
  border-bottom: solid 1px #d4d4d4;
  margin-bottom: 15px;
  padding-bottom: 15px;
}
.form .copy input[type=text],
.form .copy input[type=email],
.form .copy input[type=password],
.form .copy input[type=phone],
.form .copy input[type=number] {
  display: inline-block;
  width: auto;
}
.form .copy * {
  vertical-align: middle;
  margin-right: 5px;
}
.form .copy *:last-child {
  margin-right: 0;
}

form .profile-picture {
  height: 150px;
  width: auto;
  border-radius: 50%;
  border: solid 1px #d4d4d4;
  cursor: pointer;
}
form .document {
  margin-bottom: 5px;
}

.inline-form,
.inline-block {
  display: inline-block;
}

span.required,
.error {
  color: #e94e42;
}

.success {
  color: #62b11d;
}

.error,
.success {
  white-space: pre-line;
}

.file-input {
  text-align: center;
  border: solid 1px #d4d4d4;
  border-radius: 0.25rem;
  padding: 15px;
}
.file-input img.preview {
  max-width: 100%;
  height: auto;
  margin-bottom: 15px;
  display: none;
}
.file-input p.filename {
  width: 100%;
  margin-bottom: 15px;
  display: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.file-input div.info {
  cursor: pointer;
  color: #342E37;
  background-color: #F3F3F3;
  text-decoration: none;
  display: block;
  padding: 15px;
  margin-bottom: 15px;
}
.file-input div.info i {
  font-size: 22px;
  background-color: #F3F3F3;
}
.file-input input[type=file] {
  display: none;
}

.file-input.selected img.preview {
  display: inline;
}
.file-input.selected p.filename {
  display: block;
}
.file-input.selected div.info {
  display: none;
}

.file-input-sm {
  width: 200px;
}

.file-input-md {
  width: 400px;
}

.spin {
  display: inline-block;
  animation-name: spin;
  animation-duration: 5000ms;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
