﻿@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
  0% {
    opacity: 0;
  }
}
@keyframes slideIn {
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
  100% {
    transform: translateY(0rem);
    opacity: 1;
  }
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
}
.badge-close {
  cursor: pointer;
}
.badge-close::before {
  height: 2px;
  width: 50%;
}
.badge-close::after {
  height: 50%;
  width: 2px;
}
.badge-close:hover, .badge-close:focus {
  background-color: rgba(10, 10, 10, 0.3);
}
.badge-close:active {
  background-color: rgba(10, 10, 10, 0.4);
}

.navbar-nav .nav-item:hover {
  cursor: pointer;
}

.navbar-nav .nav-link:hover {
  cursor: pointer;
}

.nav .nav-link:hover {
  cursor: pointer;
}

.nav-item {
  position: relative;
}

.b-bar-horizontal .nav-item.dropdown .dropdown-menu > .dropdown > .dropdown-item {
  width: 100%;
}
.b-bar-horizontal .nav-item.dropdown .dropdown-menu > .dropdown > .dropdown-item::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.b-bar-horizontal .nav-item.dropdown .dropdown-menu > .dropdown > .dropdown-item:empty::after {
  margin-left: 0;
}
.b-bar-horizontal .nav-item.dropdown .dropdown-menu > .dropdown > .dropdown-item::after {
  transform: rotate(-90deg);
  position: absolute;
  right: 10%;
  top: 45%;
}
.b-bar-horizontal .nav-item.dropdown .dropdown-menu > .dropdown > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-left: 0rem;
  margin-right: 0.1rem;
}

.btn-group > .b-tooltip:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .b-tooltip:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group.btn-group-toggle .btn.active.disabled {
  opacity: 1;
}

.btn-group-vertical > .b-tooltip:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .b-tooltip:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-xs, .btn-group-xs > .btn {
  padding: 0.15rem 0.5rem;
  font-size: 0.75rem;
  line-height: 1.5;
  border-radius: 0.15rem;
}

.btn-md, .btn-group-md > .btn {
  padding: 0.47rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.25rem;
}

.btn-xl, .btn-group-xl > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.5rem;
  line-height: 1.5;
  border-radius: 0.4rem;
}

.dropdown-toggle.dropdown-toggle-hidden::after {
  content: none !important;
}

.dropdown-toggle.dropdown-toggle-hidden::before {
  content: none !important;
}

.dropdown-menu.show {
  animation-duration: 0.3s;
  animation-fill-mode: both;
  animation-name: fadeIn;
}

.dropdown-menu a:not([href]).dropdown-item:not(.disabled) {
  cursor: pointer;
}

.dropdown-menu.dropdown-menu-scrollable {
  max-height: var(--dropdown-list-menu-max-height, 200px);
  overflow-y: scroll;
}

.b-is-autocomplete .dropdown-menu {
  width: 100%;
  max-height: var(--autocomplete-menu-max-height, 200px);
  overflow-y: scroll;
}

.b-is-autocomplete.b-is-autocomplete-multipleselection {
  max-width: 100%;
  width: 100%;
  cursor: text;
  line-height: 1.5;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.b-is-autocomplete.b-is-autocomplete-multipleselection > input.form-control {
  display: inline-block;
  border: none;
  box-shadow: none;
  outline: none;
  background-color: transparent;
  max-width: inherit;
  width: auto;
}
.b-is-autocomplete.b-is-autocomplete-multipleselection.focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.dropdown > .dropdown-menu > .dropdown {
  position: relative;
}
.dropdown > .dropdown-menu > .dropdown::after {
  transform: rotate(-90deg);
  position: absolute;
  right: 6px;
  top: 0.8em;
}
.dropdown > .dropdown-menu > .dropdown > .dropdown-toggle {
  width: 100%;
}
.dropdown > .dropdown-menu > .dropdown > .dropdown-toggle::after {
  transform: rotate(-90deg);
  position: absolute;
  right: 10%;
  top: 45%;
}
.dropdown > .dropdown-menu > .dropdown > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-left: 0rem;
  margin-right: 0.1rem;
}

.snackbar {
  z-index: 1060 !important;
}

.figure.figure-is-16x16 {
  height: 16px;
  width: 16px;
}
.figure.figure-is-24x24 {
  height: 24px;
  width: 24px;
}
.figure.figure-is-32x32 {
  height: 32px;
  width: 32px;
}
.figure.figure-is-48x48 {
  height: 48px;
  width: 48px;
}
.figure.figure-is-64x64 {
  height: 64px;
  width: 64px;
}
.figure.figure-is-96x96 {
  height: 96px;
  width: 96px;
}
.figure.figure-is-128x128 {
  height: 128px;
  width: 128px;
}
.figure.figure-is-256x256 {
  height: 256px;
  width: 256px;
}
.figure.figure-is-512x512 {
  height: 512px;
  width: 512px;
}

.form-check > .form-check-input.form-check-input-pointer,
.form-check > .form-check-label.form-check-label-pointer,
.custom-checkbox > .custom-control-input.custom-control-input-pointer,
.custom-checkbox > .custom-control-label.custom-control-label-pointer,
.custom-switch > .custom-control-input.custom-control-input-pointer,
.custom-switch > .custom-control-label.custom-control-label-pointer {
  cursor: pointer;
}

.form-control-plaintext.form-control-xs, .form-control-plaintext.form-control-md, .form-control-plaintext.form-control-xl {
  padding-right: 0;
  padding-left: 0;
}

.form-control-xs {
  height: calc(1.5em + 0.3rem + 2px);
  padding: 0.15rem 0.5rem;
  font-size: 0.75rem;
  line-height: 1.5;
  border-radius: 0.15rem;
}

.form-control-md {
  height: calc(1.5em + 0.94rem + 2px);
  padding: 0.47rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.25rem;
}

.form-control-xl {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.5rem;
  line-height: 1.5;
  border-radius: 0.4rem;
}

.custom-select-xs {
  height: calc(1.5em + 0.3rem + 2px);
  padding-top: 0.15rem;
  padding-bottom: 0.15rem;
  padding-left: 0.5rem;
  font-size: 0.75rem;
}

.custom-select-md {
  height: calc(1.5em + 0.94rem + 2px);
  padding-top: 0.47rem;
  padding-bottom: 0.47rem;
  padding-left: 1rem;
  font-size: 1.125rem;
}

.custom-select-xl {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.5rem;
}

.input-group > .b-numeric:not(:last-child) > input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .b-numeric:not(:first-child) > input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-xs > .form-control:not(textarea),
.input-group-xs > .custom-select,
.input-group-xs > .b-numeric > input {
  height: calc(1.5em + 0.3rem + 2px);
}

.input-group-xs > .form-control,
.input-group-xs > .custom-select,
.input-group-xs > .input-group-prepend > .input-group-text,
.input-group-xs > .input-group-append > .input-group-text,
.input-group-xs > .input-group-prepend > .btn,
.input-group-xs > .input-group-append > .btn,
.input-group-xs > .b-numeric > input {
  padding: 0.15rem 0.5rem;
  font-size: 0.75rem;
  line-height: 1.5;
  border-radius: 0.15rem;
}

.input-group-sm > .b-numeric > input {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .b-numeric > input {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-md > .form-control:not(textarea),
.input-group-md > .custom-select,
.input-group-md > .b-numeric > input {
  height: calc(1.5em + 0.94rem + 2px);
}

.input-group-md > .form-control,
.input-group-md > .custom-select,
.input-group-md > .input-group-prepend > .input-group-text,
.input-group-md > .input-group-append > .input-group-text,
.input-group-md > .input-group-prepend > .btn,
.input-group-md > .input-group-append > .btn,
.input-group-md > .b-numeric > input {
  padding: 0.47rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.25rem;
}

.input-group-lg > .b-numeric > input {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .b-numeric > input {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-xl > .form-control:not(textarea),
.input-group-xl > .custom-select,
.input-group-xl > .b-numeric > input {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-xl > .form-control,
.input-group-xl > .custom-select,
.input-group-xl > .input-group-prepend > .input-group-text,
.input-group-xl > .input-group-append > .input-group-text,
.input-group-xl > .input-group-prepend > .btn,
.input-group-xl > .input-group-append > .btn,
.input-group-xl > .b-numeric > input {
  padding: 0.5rem 1rem;
  font-size: 1.5rem;
  line-height: 1.5;
  border-radius: 0.4rem;
}

.input-group-xs > .custom-select,
.input-group-md > .custom-select,
.input-group-xl > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-prepend:first-child > .dropdown > .btn:not(:last-child).dropdown-toggle,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-append:last-child > .dropdown > .btn:not(:last-child).dropdown-toggle,
.input-group > .input-group-append:last-child > .dropdown > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xs + .custom-control-label::before,
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xs + .custom-control-label::after {
  width: 0.7rem;
  height: 0.7rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xs + .custom-control-label {
  line-height: "normal";
  padding-left: 0px;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-sm + .custom-control-label::before,
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-sm + .custom-control-label::after {
  width: 0.8rem;
  height: 0.8rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-sm + .custom-control-label {
  line-height: "normal";
  padding-left: 0px;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-md + .custom-control-label::before,
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-md + .custom-control-label::after {
  width: 1.25rem;
  height: 1.25rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-md + .custom-control-label {
  line-height: 1.7rem;
  padding-left: 3px;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-lg + .custom-control-label::before,
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-lg + .custom-control-label::after {
  width: 1.55rem;
  height: 1.55rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-lg + .custom-control-label {
  line-height: 2rem;
  padding-left: 6px;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xl + .custom-control-label::before,
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xl + .custom-control-label::after {
  width: 1.85rem;
  height: 1.85rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xl + .custom-control-label {
  line-height: 2.5rem;
  padding-left: 10px;
}

/* $padding-top: (($radio-size - ($radio-size - ($radio-size / 2))) / 2);
$padding-left: $radio-size / 2;*/
.custom-control.custom-radio > .custom-control-input.custom-control-input-xs + .custom-control-label::before,
.custom-control.custom-radio > .custom-control-input.custom-control-input-xs + .custom-control-label::after {
  width: 0.7rem;
  height: 0.7rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-xs + .custom-control-label {
  line-height: normal;
  padding-left: 0px;
}

/* $padding-top: (($radio-size - ($radio-size - ($radio-size / 2))) / 2);
$padding-left: $radio-size / 2;*/
.custom-control.custom-radio > .custom-control-input.custom-control-input-sm + .custom-control-label::before,
.custom-control.custom-radio > .custom-control-input.custom-control-input-sm + .custom-control-label::after {
  width: 0.8rem;
  height: 0.8rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-sm + .custom-control-label {
  line-height: normal;
  padding-left: 0px;
}

/* $padding-top: (($radio-size - ($radio-size - ($radio-size / 2))) / 2);
$padding-left: $radio-size / 2;*/
.custom-control.custom-radio > .custom-control-input.custom-control-input-md + .custom-control-label::before,
.custom-control.custom-radio > .custom-control-input.custom-control-input-md + .custom-control-label::after {
  width: 1.25rem;
  height: 1.25rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-md + .custom-control-label {
  line-height: 1.7rem;
  padding-left: 3px;
}

/* $padding-top: (($radio-size - ($radio-size - ($radio-size / 2))) / 2);
$padding-left: $radio-size / 2;*/
.custom-control.custom-radio > .custom-control-input.custom-control-input-lg + .custom-control-label::before,
.custom-control.custom-radio > .custom-control-input.custom-control-input-lg + .custom-control-label::after {
  width: 1.55rem;
  height: 1.55rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-lg + .custom-control-label {
  line-height: 2rem;
  padding-left: 6px;
}

/* $padding-top: (($radio-size - ($radio-size - ($radio-size / 2))) / 2);
$padding-left: $radio-size / 2;*/
.custom-control.custom-radio > .custom-control-input.custom-control-input-xl + .custom-control-label::before,
.custom-control.custom-radio > .custom-control-input.custom-control-input-xl + .custom-control-label::after {
  width: 1.85rem;
  height: 1.85rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-xl + .custom-control-label {
  line-height: 2.5rem;
  padding-left: 10px;
}

select[readonly] {
  pointer-events: none;
}
select[readonly] option,
select[readonly] optgroup {
  display: none;
}

.b-numeric {
  position: relative;
  width: 100%;
}
.b-numeric:hover > .b-numeric-handler-wrap {
  opacity: 1;
}

.b-numeric-handler-wrap {
  position: absolute;
  top: 0;
  right: 0;
  width: 22px;
  height: 100%;
  background: #fff;
  border: 1px solid #d9d9d9;
  opacity: 0;
}

.input-group .b-numeric {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 1%;
}

.b-numeric-handler-wrap .b-numeric-handler.b-numeric-handler-down {
  border-top: 1px solid #d9d9d9;
}

.b-numeric-handler {
  position: relative;
  display: flex;
  width: 100%;
  height: 50%;
  overflow: hidden;
  color: rgba(0, 0, 0, 0.45);
  font-weight: 700;
  line-height: 0;
  align-items: center;
  justify-content: center;
}
.b-numeric-handler.btn {
  padding: 0;
}

.form-control + .b-numeric-handler-wrap {
  font-size: 1rem;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.form-control-xs + .b-numeric-handler-wrap {
  font-size: 0.75rem;
  border-top-right-radius: 0.15rem;
  border-bottom-right-radius: 0.15rem;
}
.form-control-xs + .b-numeric-handler-wrap > .b-numeric-handler.btn {
  font-size: 0.75rem;
}

.form-control-sm + .b-numeric-handler-wrap {
  font-size: 0.875rem;
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}
.form-control-sm + .b-numeric-handler-wrap > .b-numeric-handler.btn {
  font-size: 0.875rem;
}

.form-control-md + .b-numeric-handler-wrap {
  font-size: 1.125rem;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.form-control-md + .b-numeric-handler-wrap > .b-numeric-handler.btn {
  font-size: 1.125rem;
}

.form-control-lg + .b-numeric-handler-wrap {
  font-size: 1.25rem;
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}
.form-control-lg + .b-numeric-handler-wrap > .b-numeric-handler.btn {
  font-size: 1.25rem;
}

.form-control-xl + .b-numeric-handler-wrap {
  font-size: 1.5rem;
  border-top-right-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
}
.form-control-xl + .b-numeric-handler-wrap > .b-numeric-handler.btn {
  font-size: 1.5rem;
}

.custom-file-label {
  overflow: hidden;
}

input[readonly][type=range],
input[readonly=readonly][type=range] {
  pointer-events: none;
}
input[readonly][type=range]::-webkit-slider-thumb,
input[readonly=readonly][type=range]::-webkit-slider-thumb {
  pointer-events: none;
}
input[readonly][type=range]::-moz-range-thumb,
input[readonly=readonly][type=range]::-moz-range-thumb {
  pointer-events: none;
}
input[readonly][type=range]::-ms-thumb,
input[readonly=readonly][type=range]::-ms-thumb {
  pointer-events: none;
}

.jumbotron.jumbotron-primary {
  background-color: #007bff;
  color: #fff;
}
.jumbotron.jumbotron-secondary {
  background-color: #6c757d;
  color: #fff;
}
.jumbotron.jumbotron-success {
  background-color: #28a745;
  color: #fff;
}
.jumbotron.jumbotron-info {
  background-color: #17a2b8;
  color: #fff;
}
.jumbotron.jumbotron-warning {
  background-color: #ffc107;
  color: #212529;
}
.jumbotron.jumbotron-danger {
  background-color: #dc3545;
  color: #fff;
}
.jumbotron.jumbotron-light {
  background-color: #f8f9fa;
  color: #212529;
}
.jumbotron.jumbotron-dark {
  background-color: #343a40;
  color: #fff;
}
.jumbotron.jumbotron-link {
  background-color: #3273dc;
  color: #fff;
}

.b-layout-header-fixed {
  z-index: 1020;
}

.b-layout-footer-fixed {
  z-index: 1020;
}

.b-layout-sider-content {
  z-index: 1021;
}

li.list-group-item-action {
  cursor: pointer;
}

.b-list-view {
  overflow-y: scroll;
}

.modal.show {
  animation-duration: 0.25s;
  animation-fill-mode: both;
  animation-name: fadeIn;
}
.modal .modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal .modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal .modal-fullscreen .modal-header {
  border-radius: 0;
}
.modal .modal-fullscreen .modal-body {
  overflow-y: auto;
}
.modal .modal-fullscreen .modal-footer {
  border-radius: 0;
}

.page-item:not(.disabled) .page-link {
  cursor: pointer;
}

.pagination-xs .page-link {
  padding: 0.125rem 0.25rem;
  font-size: 0.75rem;
  line-height: 1.5;
}
.pagination-xs .page-item:first-child .page-link {
  border-top-left-radius: 0.15rem;
  border-bottom-left-radius: 0.15rem;
}
.pagination-xs .page-item:last-child .page-link {
  border-top-right-radius: 0.15rem;
  border-bottom-right-radius: 0.15rem;
}

.pagination-md .page-link {
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
.pagination-md .page-item:first-child .page-link {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.pagination-md .page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.pagination-xl .page-link {
  padding: 1rem 2rem;
  font-size: 1.5rem;
  line-height: 1.5;
}
.pagination-xl .page-item:first-child .page-link {
  border-top-left-radius: 0.4rem;
  border-bottom-left-radius: 0.4rem;
}
.pagination-xl .page-item:last-child .page-link {
  border-top-right-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
}

.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-primary {
  background-color: #007bff;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-secondary {
  background-color: #6c757d;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-success {
  background-color: #28a745;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-info {
  background-color: #17a2b8;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-warning {
  background-color: #ffc107;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-danger {
  background-color: #dc3545;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-light {
  background-color: #f8f9fa;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-dark {
  background-color: #343a40;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-link {
  background-color: #3273dc;
}

.rating:not(.rating-disabled):not(.rating-readonly):hover .rating-item {
  cursor: pointer;
}
.rating.rating-disabled {
  opacity: 0.65;
}
.rating .rating-item.rating-item-primary {
  color: #007bff;
}
.rating .rating-item.rating-item-secondary {
  color: #6c757d;
}
.rating .rating-item.rating-item-success {
  color: #28a745;
}
.rating .rating-item.rating-item-info {
  color: #17a2b8;
}
.rating .rating-item.rating-item-warning {
  color: #ffc107;
}
.rating .rating-item.rating-item-danger {
  color: #dc3545;
}
.rating .rating-item.rating-item-light {
  color: #f8f9fa;
}
.rating .rating-item.rating-item-dark {
  color: #343a40;
}
.rating .rating-item.rating-item-link {
  color: #3273dc;
}
.rating .rating-item.rating-item-hover {
  opacity: 0.7;
}

.steps {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  overflow-x: auto;
}
.steps .step:first-child {
  margin-left: auto;
}
.steps .step:last-child {
  margin-right: auto;
}

.step:first-of-type .step-circle::before {
  display: none;
}
.step:last-of-type .step-container {
  padding-right: 0;
}

.step-container {
  box-sizing: content-box;
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 5rem;
  min-width: 5rem;
  max-width: 5rem;
  padding-top: 0.5rem;
  padding-right: 1rem;
}

.step-circle {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  color: #adb5bd;
  border: 2px solid #adb5bd;
  border-radius: 100%;
  background-color: #fff;
}
.step-circle::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -2px;
  width: calc(5rem + 1rem - 1.5rem);
  height: 2px;
  transform: translate(-100%, -50%);
  color: #adb5bd;
  background-color: currentColor;
}

.step-text {
  color: #adb5bd;
  word-break: break-all;
  margin-top: 0.25em;
}

.step-completed .step-circle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.step-completed .step-circle::before {
  color: #28a745;
}
.step-completed .step-text {
  color: #28a745;
}

.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-active .step-circle::before {
  color: #007bff;
}
.step-active .step-text {
  color: #007bff;
}

.step-primary .step-circle {
  color: #007bff;
  border-color: #007bff;
}
.step-primary.step-completed .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-primary.step-completed .step-circle::before {
  color: #007bff;
}
.step-primary.step-completed .step-text {
  color: #007bff;
}
.step-primary.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-primary.step-active::before {
  color: #007bff;
}
.step-primary.step-active .step-text {
  color: #007bff;
}

.step-secondary .step-circle {
  color: #6c757d;
  border-color: #6c757d;
}
.step-secondary.step-completed .step-circle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.step-secondary.step-completed .step-circle::before {
  color: #6c757d;
}
.step-secondary.step-completed .step-text {
  color: #6c757d;
}
.step-secondary.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-secondary.step-active::before {
  color: #007bff;
}
.step-secondary.step-active .step-text {
  color: #007bff;
}

.step-success .step-circle {
  color: #28a745;
  border-color: #28a745;
}
.step-success.step-completed .step-circle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.step-success.step-completed .step-circle::before {
  color: #28a745;
}
.step-success.step-completed .step-text {
  color: #28a745;
}
.step-success.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-success.step-active::before {
  color: #007bff;
}
.step-success.step-active .step-text {
  color: #007bff;
}

.step-info .step-circle {
  color: #17a2b8;
  border-color: #17a2b8;
}
.step-info.step-completed .step-circle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.step-info.step-completed .step-circle::before {
  color: #17a2b8;
}
.step-info.step-completed .step-text {
  color: #17a2b8;
}
.step-info.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-info.step-active::before {
  color: #007bff;
}
.step-info.step-active .step-text {
  color: #007bff;
}

.step-warning .step-circle {
  color: #ffc107;
  border-color: #ffc107;
}
.step-warning.step-completed .step-circle {
  color: #fff;
  background-color: #ffc107;
  border-color: #ffc107;
}
.step-warning.step-completed .step-circle::before {
  color: #ffc107;
}
.step-warning.step-completed .step-text {
  color: #ffc107;
}
.step-warning.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-warning.step-active::before {
  color: #007bff;
}
.step-warning.step-active .step-text {
  color: #007bff;
}

.step-danger .step-circle {
  color: #dc3545;
  border-color: #dc3545;
}
.step-danger.step-completed .step-circle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.step-danger.step-completed .step-circle::before {
  color: #dc3545;
}
.step-danger.step-completed .step-text {
  color: #dc3545;
}
.step-danger.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-danger.step-active::before {
  color: #007bff;
}
.step-danger.step-active .step-text {
  color: #007bff;
}

.step-light .step-circle {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.step-light.step-completed .step-circle {
  color: #fff;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.step-light.step-completed .step-circle::before {
  color: #f8f9fa;
}
.step-light.step-completed .step-text {
  color: #f8f9fa;
}
.step-light.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-light.step-active::before {
  color: #007bff;
}
.step-light.step-active .step-text {
  color: #007bff;
}

.step-dark .step-circle {
  color: #343a40;
  border-color: #343a40;
}
.step-dark.step-completed .step-circle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.step-dark.step-completed .step-circle::before {
  color: #343a40;
}
.step-dark.step-completed .step-text {
  color: #343a40;
}
.step-dark.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-dark.step-active::before {
  color: #007bff;
}
.step-dark.step-active .step-text {
  color: #007bff;
}

.step-link .step-circle {
  color: #3273dc;
  border-color: #3273dc;
}
.step-link.step-completed .step-circle {
  color: #fff;
  background-color: #3273dc;
  border-color: #3273dc;
}
.step-link.step-completed .step-circle::before {
  color: #3273dc;
}
.step-link.step-completed .step-text {
  color: #3273dc;
}
.step-link.step-active .step-circle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.step-link.step-active::before {
  color: #007bff;
}
.step-link.step-active .step-text {
  color: #007bff;
}

.steps-content {
  margin: 1rem 0;
}
.steps-content > .step-panel {
  display: none;
}
.steps-content > .active {
  display: block;
}

.custom-switch .custom-control-input.custom-control-input-primary:checked ~ .custom-control-label::before {
  background-color: #007bff;
  border-color: #007bff;
}
.custom-switch .custom-control-input.custom-control-input-primary:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
  border-color: #007bff;
}
.custom-switch .custom-control-input:disabled.custom-control-input-primary:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-secondary:checked ~ .custom-control-label::before {
  background-color: #6c757d;
  border-color: #6c757d;
}
.custom-switch .custom-control-input.custom-control-input-secondary:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.25);
  border-color: #6c757d;
}
.custom-switch .custom-control-input:disabled.custom-control-input-secondary:checked ~ .custom-control-label::before {
  background-color: rgba(108, 117, 125, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-success:checked ~ .custom-control-label::before {
  background-color: #28a745;
  border-color: #28a745;
}
.custom-switch .custom-control-input.custom-control-input-success:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
  border-color: #28a745;
}
.custom-switch .custom-control-input:disabled.custom-control-input-success:checked ~ .custom-control-label::before {
  background-color: rgba(40, 167, 69, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-info:checked ~ .custom-control-label::before {
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.custom-switch .custom-control-input.custom-control-input-info:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.25);
  border-color: #17a2b8;
}
.custom-switch .custom-control-input:disabled.custom-control-input-info:checked ~ .custom-control-label::before {
  background-color: rgba(23, 162, 184, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-warning:checked ~ .custom-control-label::before {
  background-color: #ffc107;
  border-color: #ffc107;
}
.custom-switch .custom-control-input.custom-control-input-warning:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.25);
  border-color: #ffc107;
}
.custom-switch .custom-control-input:disabled.custom-control-input-warning:checked ~ .custom-control-label::before {
  background-color: rgba(255, 193, 7, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-danger:checked ~ .custom-control-label::before {
  background-color: #dc3545;
  border-color: #dc3545;
}
.custom-switch .custom-control-input.custom-control-input-danger:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
  border-color: #dc3545;
}
.custom-switch .custom-control-input:disabled.custom-control-input-danger:checked ~ .custom-control-label::before {
  background-color: rgba(220, 53, 69, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-light:checked ~ .custom-control-label::before {
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.custom-switch .custom-control-input.custom-control-input-light:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.25);
  border-color: #f8f9fa;
}
.custom-switch .custom-control-input:disabled.custom-control-input-light:checked ~ .custom-control-label::before {
  background-color: rgba(248, 249, 250, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-dark:checked ~ .custom-control-label::before {
  background-color: #343a40;
  border-color: #343a40;
}
.custom-switch .custom-control-input.custom-control-input-dark:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.25);
  border-color: #343a40;
}
.custom-switch .custom-control-input:disabled.custom-control-input-dark:checked ~ .custom-control-label::before {
  background-color: rgba(52, 58, 64, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-link:checked ~ .custom-control-label::before {
  background-color: #3273dc;
  border-color: #3273dc;
}
.custom-switch .custom-control-input.custom-control-input-link:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(50, 115, 220, 0.25);
  border-color: #3273dc;
}
.custom-switch .custom-control-input:disabled.custom-control-input-link:checked ~ .custom-control-label::before {
  background-color: rgba(50, 115, 220, 0.5);
}

.custom-switch .custom-control-input.custom-control-input-xs + .custom-control-label {
  line-height: 1rem;
  vertical-align: middle;
  padding-left: 0;
}
.custom-switch .custom-control-input.custom-control-input-xs + .custom-control-label::before {
  height: 0.5rem;
  width: calc(0.75rem + (0.5rem / 2));
  border-radius: 1rem;
}
.custom-switch .custom-control-input.custom-control-input-xs + .custom-control-label::after {
  height: calc(0.5rem - 4px);
  width: calc(0.5rem - 4px);
  border-radius: calc(0.75rem - (0.5rem / 2));
}
.custom-switch .custom-control-input.custom-control-input-xs:checked ~ .custom-control-label::after {
  transform: translateX(calc(0.75rem - (0.5rem / 2)));
}

.custom-switch .custom-control-input.custom-control-input-sm + .custom-control-label {
  line-height: 1.25rem;
  vertical-align: middle;
  padding-left: 0;
}
.custom-switch .custom-control-input.custom-control-input-sm + .custom-control-label::before {
  height: 0.75rem;
  width: calc(1rem + (0.75rem / 2));
  border-radius: 1.5rem;
}
.custom-switch .custom-control-input.custom-control-input-sm + .custom-control-label::after {
  height: calc(0.75rem - 4px);
  width: calc(0.75rem - 4px);
  border-radius: calc(1rem - (0.75rem / 2));
}
.custom-switch .custom-control-input.custom-control-input-sm:checked ~ .custom-control-label::after {
  transform: translateX(calc(1rem - (0.75rem / 2)));
}

.custom-switch .custom-control-input.custom-control-input-md + .custom-control-label {
  line-height: 2rem;
  vertical-align: middle;
  padding-left: 2rem;
}
.custom-switch .custom-control-input.custom-control-input-md + .custom-control-label::before {
  height: 1.5rem;
  width: calc(2rem + (1.5rem / 2));
  border-radius: 3rem;
}
.custom-switch .custom-control-input.custom-control-input-md + .custom-control-label::after {
  height: calc(1.5rem - 4px);
  width: calc(1.5rem - 4px);
  border-radius: calc(2rem - (1.5rem / 2));
}
.custom-switch .custom-control-input.custom-control-input-md:checked ~ .custom-control-label::after {
  transform: translateX(calc(2rem - (1.5rem / 2)));
}

.custom-switch .custom-control-input.custom-control-input-lg + .custom-control-label {
  line-height: 2.5rem;
  vertical-align: middle;
  padding-left: 3rem;
}
.custom-switch .custom-control-input.custom-control-input-lg + .custom-control-label::before {
  height: 2rem;
  width: calc(3rem + (2rem / 2));
  border-radius: 4rem;
}
.custom-switch .custom-control-input.custom-control-input-lg + .custom-control-label::after {
  height: calc(2rem - 4px);
  width: calc(2rem - 4px);
  border-radius: calc(3rem - (2rem / 2));
}
.custom-switch .custom-control-input.custom-control-input-lg:checked ~ .custom-control-label::after {
  transform: translateX(calc(3rem - (2rem / 2)));
}

.custom-switch .custom-control-input.custom-control-input-xl + .custom-control-label {
  line-height: 3rem;
  vertical-align: middle;
  padding-left: 4rem;
}
.custom-switch .custom-control-input.custom-control-input-xl + .custom-control-label::before {
  height: 2.5rem;
  width: calc(4rem + (2.5rem / 2));
  border-radius: 5rem;
}
.custom-switch .custom-control-input.custom-control-input-xl + .custom-control-label::after {
  height: calc(2.5rem - 4px);
  width: calc(2.5rem - 4px);
  border-radius: calc(4rem - (2.5rem / 2));
}
.custom-switch .custom-control-input.custom-control-input-xl:checked ~ .custom-control-label::after {
  transform: translateX(calc(4rem - (2.5rem / 2)));
}

table.table tbody tr.selected {
  background-color: var(--primary);
}

tr.table-row-selectable:hover {
  cursor: pointer;
}

.table-fixed-header {
  overflow-y: auto;
}
.table-fixed-header .table {
  border-collapse: separate;
  border-spacing: 0;
}
.table-fixed-header .table thead tr th {
  border-top: none;
  position: sticky;
  background: white;
  z-index: 10;
}
.table-fixed-header .table thead tr:nth-child(1) th {
  top: 0;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.overflow-auto-auto {
  overflow: auto auto !important;
}

.overflow-auto-hidden {
  overflow: auto hidden !important;
}

.overflow-auto-visible {
  overflow: auto visible !important;
}

.overflow-auto-scroll {
  overflow: auto scroll !important;
}

.overflow-hidden-auto {
  overflow: hidden auto !important;
}

.overflow-hidden-hidden {
  overflow: hidden hidden !important;
}

.overflow-hidden-visible {
  overflow: hidden visible !important;
}

.overflow-hidden-scroll {
  overflow: hidden scroll !important;
}

.overflow-visible-auto {
  overflow: visible auto !important;
}

.overflow-visible-hidden {
  overflow: visible hidden !important;
}

.overflow-visible-visible {
  overflow: visible visible !important;
}

.overflow-visible-scroll {
  overflow: visible scroll !important;
}

.overflow-scroll-auto {
  overflow: scroll auto !important;
}

.overflow-scroll-hidden {
  overflow: scroll hidden !important;
}

.overflow-scroll-visible {
  overflow: scroll visible !important;
}

.overflow-scroll-scroll {
  overflow: scroll scroll !important;
}

ol.ordered-list-lower-alpha {
  list-style-type: lower-alpha;
}
ol.ordered-list-lower-roman {
  list-style-type: lower-roman;
}
ol.ordered-list-upper-alpha {
  list-style-type: upper-alpha;
}
ol.ordered-list-upper-roman {
  list-style-type: upper-roman;
}

.top-0 {
  top: 0 !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.left-0 {
  left: 0 !important;
}

.right-0 {
  right: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.bottom-50 {
  bottom: 50% !important;
}

.left-50 {
  left: 50% !important;
}

.right-50 {
  right: 50% !important;
}

.top-100 {
  top: 100% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

.left-100 {
  left: 100% !important;
}

.right-100 {
  right: 100% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(-50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

.flatpickr-months {
  margin: 0.5rem 0;
}
.flatpickr-months .flatpickr-month, .flatpickr-months .flatpickr-next-month, .flatpickr-months .flatpickr-prev-month {
  height: auto;
  position: relative;
}
.flatpickr-months .flatpickr-month:hover svg, .flatpickr-months .flatpickr-next-month:hover svg, .flatpickr-months .flatpickr-prev-month:hover svg {
  fill: #007bff;
}
.flatpickr-months .flatpickr-month {
  color: #212529;
}

.flatpickr-current-month {
  padding: 13px 0 0 0;
  font-size: 115%;
}
.flatpickr-current-month span.cur-month {
  font-weight: 700;
}
.flatpickr-current-month span.cur-month:hover {
  background: rgba(0, 123, 255, 0.15);
}

.numInputWrapper:hover {
  background: rgba(0, 123, 255, 0.15);
}

.flatpickr-day {
  border-radius: 0.25rem;
  font-weight: 500;
  color: #212529;
}
.flatpickr-day.today {
  border-color: #007bff;
}
.flatpickr-day.today:hover {
  background: #007bff;
  border-color: #007bff;
}
.flatpickr-day:hover {
  background: rgba(0, 123, 255, 0.1);
  border-color: rgba(0, 0, 0, 0);
}

span.flatpickr-weekday {
  color: #212529;
}

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
  background: #007bff;
  border-color: #007bff;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  box-shadow: -10px 0 0 #007bff;
}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange {
  border-radius: 0.25rem 0 0 0.25rem;
}

.flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange {
  border-radius: 0 0.25rem 0.25rem 0;
}

.flatpickr-monthSelect-month:hover,
.flatpickr-monthSelect-month:focus {
  background: rgba(0, 123, 255, 0.1);
}

.flatpickr-monthSelect-month.selected {
  background-color: #007bff;
}
