﻿@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;
  }
}
.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;
}

.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);
}

.btn-xs, .btn-group-xs > .btn {
  font-size: 0.75rem;
  height: 1.5rem;
}

.btn-md, .btn-group-md > .btn {
  font-size: 0.91rem;
  height: 2.5rem;
}

.btn-lg, .btn-group-lg > .btn {
  font-size: 0.9375rem;
  height: 2.75rem;
}

.btn-xl, .btn-group-xl > .btn {
  font-size: 0.95rem;
  height: 3rem;
}

.card {
  overflow: initial;
}

.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;
  border-radius: 4px;
  background-clip: border-box;
  background-color: #fff;
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}

.b-dropdown-list .dropdown-menu:before {
  box-shadow: none;
}

.b-is-autocomplete .dropdown-menu {
  width: 100%;
  max-height: var(--autocomplete-menu-max-height, 200px);
  overflow-y: scroll;
  border-radius: 4px;
  background-clip: border-box;
  background-color: #fff;
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}
.b-is-autocomplete .dropdown-menu .dropdown-item.focus {
  background-color: rgba(0, 0, 0, 0.12);
  outline: 0;
  color: rgba(0, 0, 0, 0.87) !important;
  text-decoration: none;
}

.b-is-autocomplete.b-is-autocomplete-multipleselection {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-top: 0.25rem;
  max-width: 100%;
  width: 100%;
  cursor: text;
}
.b-is-autocomplete.b-is-autocomplete-multipleselection > input.form-control {
  margin-left: 0.5rem;
  display: inline-block;
  background-color: transparent;
  max-width: inherit;
  width: auto;
  flex-grow: 1;
}
.b-is-autocomplete.b-is-autocomplete-multipleselection > .badge {
  margin-bottom: 0.25rem;
  line-height: 1.5;
  flex-grow: initial;
}

.b-is-autocomplete .dropdown-menu:before {
  box-shadow: none;
}

.dropdown {
  position: relative;
}
.dropdown > .dropdown-menu:not([x-placement]) > .dropdown:not(.dropup, .dropleft, .dropright) {
  position: relative;
}
.dropdown > .dropdown-menu:not([x-placement]) > .dropdown:not(.dropup, .dropleft, .dropright) > .dropdown-toggle {
  width: 100%;
}
.dropdown > .dropdown-menu:not([x-placement]) > .dropdown:not(.dropup, .dropleft, .dropright) > .dropdown-toggle::after {
  content: "arrow_drop_down";
  line-height: 3rem;
}
.dropdown > .dropdown-menu:not([x-placement]) > .dropdown:not(.dropup, .dropleft, .dropright) > .dropdown-menu {
  top: auto;
  left: auto;
  bottom: auto;
  right: auto;
}
.dropdown.dropup > .dropdown-menu:not([x-placement]) {
  bottom: 100%;
  top: auto;
  left: auto;
  right: auto;
}
.dropdown.dropup > .dropdown-toggle:after {
  content: "arrow_drop_up";
  line-height: 3rem;
}
.dropdown.dropright > .dropdown-menu:not([x-placement]) {
  left: 100%;
  right: auto;
  top: 0;
  bottom: auto;
}
.dropdown.dropright > .dropdown-toggle:after {
  content: "arrow_right";
  line-height: 3rem;
}
.dropdown.dropleft:not([x-placement]) > .dropdown-menu {
  left: auto;
  right: 100%;
  top: 0;
  bottom: auto;
}
.dropdown.dropleft:not([x-placement]) > .dropdown-toggle:before {
  line-height: 3rem;
}

.snackbar-stack {
  z-index: 1059 !important;
}

.snackbar {
  z-index: 1060 !important;
}

.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 {
  cursor: pointer;
}

input.form-control[type=color] {
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
}

.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:not(textarea) {
  height: 36px;
}

.form-control-xs {
  font-size: 0.75rem;
  height: 1.5rem;
  /*height: 36px;*/
  line-height: 1.5;
  padding: 0.1875rem 0 calc(0.1875rem - 1px);
}
.form-control-xs[type=file] {
  max-height: 1.5rem;
}

.form-control-sm {
  font-size: 0.8125rem;
  height: 1.75rem;
  /*height: 36px;*/
  line-height: 1.5;
  padding: 0.265625rem 0 calc(0.265625rem - 1px);
}
.form-control-sm[type=file] {
  max-height: 1.75rem;
}

.form-control-md {
  font-size: 1.25rem;
  height: 2.5rem;
  /*height: 40px;*/
  line-height: 1.5;
  padding: 0.3125rem 0 calc(0.3125rem - 1px);
}
.form-control-md[type=file] {
  max-height: 2.5rem;
}

.form-control-lg {
  font-size: 1.5rem;
  height: 2.75rem;
  /*height: 62px;*/
  line-height: 1.5;
  padding: 0.25rem 0 calc(0.25rem - 1px);
}
.form-control-lg[type=file] {
  max-height: 2.75rem;
}

.form-control-xl {
  font-size: 1.75rem;
  height: 3rem;
  /*height: 66px;*/
  line-height: 1.5;
  padding: 0.1875rem 0 calc(0.1875rem - 1px);
}
.form-control-xl[type=file] {
  max-height: 3rem;
}

.custom-select-xs {
  font-size: 0.75rem;
  line-height: 1.5;
  padding: 0.1875rem 1.5em calc(0.1875rem - 1px) 0;
}
.custom-select-xs[multiple], .custom-select-xs[size]:not([size="1"]) {
  padding: calc(0.5625rem - 1px) 0.6rem;
}

.custom-select-sm {
  font-size: 0.8125rem;
  line-height: 1.5;
  padding: 0.265625rem 1.5em calc(0.265625rem - 1px) 0;
}
.custom-select-sm[multiple], .custom-select-sm[size]:not([size="1"]) {
  padding: calc(0.765625rem - 1px) 0.75rem;
}

.custom-select-md {
  font-size: 1.25rem;
  line-height: 1.5;
  padding: 0.3125rem 1.5em calc(0.3125rem - 1px) 0;
}
.custom-select-md[multiple], .custom-select-md[size]:not([size="1"]) {
  padding: calc(0.8125rem - 1px) 0.9rem;
}

.custom-select-lg {
  font-size: 1.5rem;
  line-height: 1.5;
  padding: 0.25rem 1.5em calc(0.25rem - 1px) 0;
}
.custom-select-lg[multiple], .custom-select-lg[size]:not([size="1"]) {
  padding: calc(1rem - 1px) 1rem;
}

.custom-select-xl {
  font-size: 1.75rem;
  line-height: 1.5;
  padding: 0.1875rem 1.5em calc(0.1875rem - 1px) 0;
}
.custom-select-xl[multiple], .custom-select-xl[size]:not([size="1"]) {
  padding: calc(1.1875rem - 1px) 1.15rem;
}

.input-group > .b-numeric:not(:last-child) > input,
.input-group > .flatpickr-wrapper:not(:last-child) > input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .b-numeric:not(:first-child) > input,
.input-group > .flatpickr-wrapper:not(:first-child) > input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-xs > .form-control,
.input-group-xs > .custom-select,
.input-group-xs > .b-numeric > .form-control {
  font-size: 0.75rem;
  line-height: 1.5;
  padding: 0.1875rem 0 calc(0.1875rem - 1px);
}
.input-group-xs > .input-group-append > .btn,
.input-group-xs > .input-group-prepend > .btn {
  height: 1.5rem;
}
.input-group-xs > .input-group-append > .input-group-text,
.input-group-xs > .input-group-prepend > .input-group-text {
  font-size: 0.75rem;
  line-height: 1.5;
}

.input-group-md > .form-control,
.input-group-md > .custom-select,
.input-group-md > .b-numeric > .form-control {
  font-size: 1.25rem;
  line-height: 1.5;
  padding: 0.3125rem 0 calc(0.3125rem - 1px);
}
.input-group-md > .input-group-append > .btn,
.input-group-md > .input-group-prepend > .btn {
  height: 2.5rem;
}
.input-group-md > .input-group-append > .input-group-text,
.input-group-md > .input-group-prepend > .input-group-text {
  font-size: 1.25rem;
  line-height: 1.5;
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .b-numeric > .form-control {
  font-size: 1.5rem;
  line-height: 1.5;
  padding: 0.25rem 0 calc(0.25rem - 1px);
}
.input-group-lg > .input-group-append > .btn,
.input-group-lg > .input-group-prepend > .btn {
  height: 2.75rem;
}
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .input-group-text {
  font-size: 1.5rem;
  line-height: 1.5;
}

.input-group-xl > .form-control,
.input-group-xl > .custom-select,
.input-group-xl > .b-numeric > .form-control {
  font-size: 1.75rem;
  line-height: 1.5;
  padding: 0.1875rem 0 calc(0.1875rem - 1px);
}
.input-group-xl > .input-group-append > .btn,
.input-group-xl > .input-group-prepend > .btn {
  height: 3rem;
}
.input-group-xl > .input-group-append > .input-group-text,
.input-group-xl > .input-group-prepend > .input-group-text {
  font-size: 1.75rem;
  line-height: 1.5;
}

.input-group > div.flatpickr-wrapper > .form-control,
.input-group > div.flatpickr-wrapper > .form-control-plaintext {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xs + .custom-control-label::before {
  width: 0.75rem;
  height: 0.75rem;
  margin-top: -0.125rem;
  margin-left: -0.125rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xs + .custom-control-label::after {
  font-size: 0.5rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xs + .custom-control-label {
  line-height: 0.5rem;
  padding-left: 0px;
  vertical-align: middle;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-sm + .custom-control-label::before {
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.25rem;
  margin-left: -0.25rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-sm + .custom-control-label::after {
  font-size: 1rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-sm + .custom-control-label {
  line-height: 1rem;
  padding-left: 0px;
  vertical-align: middle;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-md + .custom-control-label::before {
  width: 3rem;
  height: 3rem;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-md + .custom-control-label::after {
  font-size: 2rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-md + .custom-control-label {
  line-height: 2rem;
  padding-left: 3px;
  vertical-align: middle;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-lg + .custom-control-label::before {
  width: 3.75rem;
  height: 3.75rem;
  margin-top: -0.625rem;
  margin-left: -0.625rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-lg + .custom-control-label::after {
  font-size: 2.5rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-lg + .custom-control-label {
  line-height: 2.5rem;
  padding-left: 6px;
  vertical-align: middle;
}

.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xl + .custom-control-label::before {
  width: 4.5rem;
  height: 4.5rem;
  margin-top: -0.75rem;
  margin-left: -0.75rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xl + .custom-control-label::after {
  font-size: 3rem;
}
.custom-control.custom-checkbox > .custom-control-input.custom-control-input-xl + .custom-control-label {
  line-height: 3rem;
  padding-left: 10px;
  vertical-align: middle;
}

/* $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 {
  width: 1.05rem;
  height: 1.05rem;
  margin-top: -0.175rem;
  margin-left: -0.175rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-xs + .custom-control-label::after {
  font-size: 0.7rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-xs + .custom-control-label {
  line-height: 0.7rem;
  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 {
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.25rem;
  margin-left: -0.25rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-sm + .custom-control-label::after {
  font-size: 1rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-sm + .custom-control-label {
  line-height: 1rem;
  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 {
  width: 3rem;
  height: 3rem;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-md + .custom-control-label::after {
  font-size: 2rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-md + .custom-control-label {
  line-height: 2rem;
  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 {
  width: 3.75rem;
  height: 3.75rem;
  margin-top: -0.625rem;
  margin-left: -0.625rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-lg + .custom-control-label::after {
  font-size: 2.5rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-lg + .custom-control-label {
  line-height: 2.5rem;
  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 {
  width: 4.5rem;
  height: 4.5rem;
  margin-top: -0.75rem;
  margin-left: -0.75rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-xl + .custom-control-label::after {
  font-size: 3rem;
}
.custom-control.custom-radio > .custom-control-input.custom-control-input-xl + .custom-control-label {
  line-height: 3rem;
  padding-left: 10px;
}

select[readonly] {
  pointer-events: none;
}
select[readonly] option,
select[readonly] optgroup {
  display: none;
}

.focus-trap {
  display: contents;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.jumbotron.jumbotron-primary {
  background-color: #9c27b0;
  color: #fff;
}
.jumbotron.jumbotron-secondary {
  background-color: #ff4081;
  color: #fff;
}
.jumbotron.jumbotron-success {
  background-color: #4caf50;
  color: #fff;
}
.jumbotron.jumbotron-info {
  background-color: #2196f3;
  color: #fff;
}
.jumbotron.jumbotron-warning {
  background-color: #ff9800;
  color: #212529;
}
.jumbotron.jumbotron-danger {
  background-color: #f44336;
  color: #fff;
}
.jumbotron.jumbotron-light {
  background-color: #f5f5f5;
  color: #212529;
}
.jumbotron.jumbotron-dark {
  background-color: #424242;
  color: #fff;
}
.jumbotron.jumbotron-link {
  background-color: #3273dc;
  color: #fff;
}

.b-layout-header-fixed {
  z-index: 160;
}

.b-layout-footer-fixed {
  z-index: 160;
}

.b-layout-sider-content {
  z-index: 161;
}

.list-group-scrollable {
  overflow-y: scroll;
}

.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;
}
.modal.fade {
  transition: opacity var(--modal-animation-duration, 300ms) cubic-bezier(0, 0, 0.2, 1);
}
.modal.show .modal-dialog {
  transition: opacity, -webkit-transform var(--modal-animation-duration, 300ms) cubic-bezier(0, 0, 0.2, 1);
  transition: opacity, transform var(--modal-animation-duration, 300ms) cubic-bezier(0, 0, 0.2, 1);
}

.pagination-xs .page-link {
  border-radius: 0.84375rem;
  font-size: 0.75rem;
  width: 1.6875rem;
}

.pagination-md .page-link {
  border-radius: 1.26rem;
  font-size: 1.12rem;
  width: 2.52rem;
}

.pagination-xl .page-link {
  border-radius: 1.51875rem;
  font-size: 1.35rem;
  width: 3.0375rem;
}

.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-primary {
  background-color: #9c27b0;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-secondary {
  background-color: #ff4081;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-success {
  background-color: #4caf50;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-info {
  background-color: #2196f3;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-warning {
  background-color: #ff9800;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-danger {
  background-color: #f44336;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-light {
  background-color: #f5f5f5;
}
.b-page-progress .b-page-progress-indicator.b-page-progress-indicator-dark {
  background-color: #424242;
}
.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.is-primary {
  color: #9c27b0;
}
.rating .rating-item.is-secondary {
  color: #ff4081;
}
.rating .rating-item.is-success {
  color: #4caf50;
}
.rating .rating-item.is-info {
  color: #2196f3;
}
.rating .rating-item.is-warning {
  color: #ff9800;
}
.rating .rating-item.is-danger {
  color: #f44336;
}
.rating .rating-item.is-light {
  color: #f5f5f5;
}
.rating .rating-item.is-dark {
  color: #424242;
}
.rating .rating-item.is-link {
  color: #3273dc;
}
.rating .rating-item.rating-item-hover {
  opacity: 0.7;
}

.gap-0 {
  gap: 0 !important;
}

.gap-y-0 {
  row-gap: 0 !important;
}

.gap-x-0 {
  column-gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-y-1 {
  row-gap: 0.25rem !important;
}

.gap-x-1 {
  column-gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-y-2 {
  row-gap: 0.5rem !important;
}

.gap-x-2 {
  column-gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-y-3 {
  row-gap: 1rem !important;
}

.gap-x-3 {
  column-gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-y-4 {
  row-gap: 1.5rem !important;
}

.gap-x-4 {
  column-gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.gap-y-5 {
  row-gap: 3rem !important;
}

.gap-x-5 {
  column-gap: 3rem !important;
}

@-webkit-keyframes spinner-border {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spinner-border {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border 0.75s linear infinite;
  animation: spinner-border 0.75s linear infinite;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  50% {
    opacity: 1;
  }
}
@keyframes spinner-grow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  50% {
    opacity: 1;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow 0.75s linear infinite;
  animation: spinner-grow 0.75s linear infinite;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

.stepper-primary.done .stepper-icon {
  background-color: #9c27b0;
}
.stepper-primary.done .stepper-text {
  color: #9c27b0;
}
.stepper-primary.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-primary.active .stepper-text {
  color: #9c27b0;
}
.stepper-primary .stepper-icon {
  background-color: #9c27b0;
}
.stepper-primary .stepper-text {
  color: #9c27b0;
}

.stepper-secondary.done .stepper-icon {
  background-color: #ff4081;
}
.stepper-secondary.done .stepper-text {
  color: #ff4081;
}
.stepper-secondary.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-secondary.active .stepper-text {
  color: #ff4081;
}
.stepper-secondary .stepper-icon {
  background-color: #ff4081;
}
.stepper-secondary .stepper-text {
  color: #ff4081;
}

.stepper-success.done .stepper-icon {
  background-color: #4caf50;
}
.stepper-success.done .stepper-text {
  color: #4caf50;
}
.stepper-success.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-success.active .stepper-text {
  color: #4caf50;
}
.stepper-success .stepper-icon {
  background-color: #4caf50;
}
.stepper-success .stepper-text {
  color: #4caf50;
}

.stepper-info.done .stepper-icon {
  background-color: #2196f3;
}
.stepper-info.done .stepper-text {
  color: #2196f3;
}
.stepper-info.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-info.active .stepper-text {
  color: #2196f3;
}
.stepper-info .stepper-icon {
  background-color: #2196f3;
}
.stepper-info .stepper-text {
  color: #2196f3;
}

.stepper-warning.done .stepper-icon {
  background-color: #ff9800;
}
.stepper-warning.done .stepper-text {
  color: #ff9800;
}
.stepper-warning.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-warning.active .stepper-text {
  color: #ff9800;
}
.stepper-warning .stepper-icon {
  background-color: #ff9800;
}
.stepper-warning .stepper-text {
  color: #ff9800;
}

.stepper-danger.done .stepper-icon {
  background-color: #f44336;
}
.stepper-danger.done .stepper-text {
  color: #f44336;
}
.stepper-danger.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-danger.active .stepper-text {
  color: #f44336;
}
.stepper-danger .stepper-icon {
  background-color: #f44336;
}
.stepper-danger .stepper-text {
  color: #f44336;
}

.stepper-light.done .stepper-icon {
  background-color: #f5f5f5;
}
.stepper-light.done .stepper-text {
  color: #f5f5f5;
}
.stepper-light.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-light.active .stepper-text {
  color: #f5f5f5;
}
.stepper-light .stepper-icon {
  background-color: #f5f5f5;
}
.stepper-light .stepper-text {
  color: #f5f5f5;
}

.stepper-dark.done .stepper-icon {
  background-color: #424242;
}
.stepper-dark.done .stepper-text {
  color: #424242;
}
.stepper-dark.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-dark.active .stepper-text {
  color: #424242;
}
.stepper-dark .stepper-icon {
  background-color: #424242;
}
.stepper-dark .stepper-text {
  color: #424242;
}

.stepper-link.done .stepper-icon {
  background-color: #3273dc;
}
.stepper-link.done .stepper-text {
  color: #3273dc;
}
.stepper-link.active .stepper-icon {
  background-color: #9c27b0;
  color: #ffffff;
}
.stepper-link.active .stepper-text {
  color: #3273dc;
}
.stepper-link .stepper-icon {
  background-color: #3273dc;
}
.stepper-link .stepper-text {
  color: #3273dc;
}

.stepper-horiz-content > .stepper-panel {
  display: none;
}
.stepper-horiz-content > .active {
  display: block;
}

.custom-switch .custom-control-input:checked.custom-control-input-primary ~ .custom-control-label::after {
  background-color: #9c27b0;
}
.custom-switch .custom-control-input:checked.custom-control-input-primary ~ .custom-control-track {
  background-color: rgba(156, 39, 176, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-primary ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-primary ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-secondary ~ .custom-control-label::after {
  background-color: #ff4081;
}
.custom-switch .custom-control-input:checked.custom-control-input-secondary ~ .custom-control-track {
  background-color: rgba(255, 64, 129, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-secondary ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-secondary ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-success ~ .custom-control-label::after {
  background-color: #4caf50;
}
.custom-switch .custom-control-input:checked.custom-control-input-success ~ .custom-control-track {
  background-color: rgba(76, 175, 80, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-success ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-success ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-info ~ .custom-control-label::after {
  background-color: #2196f3;
}
.custom-switch .custom-control-input:checked.custom-control-input-info ~ .custom-control-track {
  background-color: rgba(33, 150, 243, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-info ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-info ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-warning ~ .custom-control-label::after {
  background-color: #ff9800;
}
.custom-switch .custom-control-input:checked.custom-control-input-warning ~ .custom-control-track {
  background-color: rgba(255, 152, 0, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-warning ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-warning ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-danger ~ .custom-control-label::after {
  background-color: #f44336;
}
.custom-switch .custom-control-input:checked.custom-control-input-danger ~ .custom-control-track {
  background-color: rgba(244, 67, 54, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-danger ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-danger ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-light ~ .custom-control-label::after {
  background-color: #f5f5f5;
}
.custom-switch .custom-control-input:checked.custom-control-input-light ~ .custom-control-track {
  background-color: rgba(245, 245, 245, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-light ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-light ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-dark ~ .custom-control-label::after {
  background-color: #424242;
}
.custom-switch .custom-control-input:checked.custom-control-input-dark ~ .custom-control-track {
  background-color: rgba(66, 66, 66, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-dark ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-dark ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input:checked.custom-control-input-link ~ .custom-control-label::after {
  background-color: #3273dc;
}
.custom-switch .custom-control-input:checked.custom-control-input-link ~ .custom-control-track {
  background-color: rgba(50, 115, 220, 0.25);
}
.custom-switch .custom-control-input:disabled.custom-control-input-link ~ .custom-control-label::after {
  background-color: #bdbdbd;
}
.custom-switch .custom-control-input:disabled.custom-control-input-link ~ .custom-control-track {
  background-color: rgba(189, 189, 189, 0.25);
}

.custom-switch .custom-control-input.custom-control-input-xs ~ .custom-control-label {
  padding-left: 0;
  line-height: 0.5rem;
  vertical-align: middle;
}
.custom-switch .custom-control-input.custom-control-input-xs ~ .custom-control-label::before {
  width: 1rem;
  height: 0.5rem;
  border-radius: 0.25rem;
}
.custom-switch .custom-control-input.custom-control-input-xs ~ .custom-control-label::after {
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.custom-switch .custom-control-input.custom-control-input-xs:checked ~ .custom-control-label::after {
  transform: translateX(0.8rem);
}

.custom-switch .custom-control-input.custom-control-input-sm ~ .custom-control-label {
  padding-left: 0;
  line-height: 0.75rem;
  vertical-align: middle;
}
.custom-switch .custom-control-input.custom-control-input-sm ~ .custom-control-label::before {
  width: 1.5rem;
  height: 0.75rem;
  border-radius: 0.375rem;
}
.custom-switch .custom-control-input.custom-control-input-sm ~ .custom-control-label::after {
  width: 1.05rem;
  height: 1.05rem;
  border-radius: 50%;
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.custom-switch .custom-control-input.custom-control-input-sm:checked ~ .custom-control-label::after {
  transform: translateX(1.05rem);
}

.custom-switch .custom-control-input.custom-control-input-md ~ .custom-control-label {
  padding-left: 0.5rem;
  line-height: 1.25rem;
  vertical-align: middle;
}
.custom-switch .custom-control-input.custom-control-input-md ~ .custom-control-label::before {
  width: 2.5rem;
  height: 1.25rem;
  border-radius: 0.625rem;
}
.custom-switch .custom-control-input.custom-control-input-md ~ .custom-control-label::after {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.custom-switch .custom-control-input.custom-control-input-md:checked ~ .custom-control-label::after {
  transform: translateX(1.5rem);
}

.custom-switch .custom-control-input.custom-control-input-lg ~ .custom-control-label {
  padding-left: 1rem;
  line-height: 1.5rem;
  vertical-align: middle;
}
.custom-switch .custom-control-input.custom-control-input-lg ~ .custom-control-label::before {
  width: 3rem;
  height: 1.5rem;
  border-radius: 0.75rem;
}
.custom-switch .custom-control-input.custom-control-input-lg ~ .custom-control-label::after {
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.custom-switch .custom-control-input.custom-control-input-lg:checked ~ .custom-control-label::after {
  transform: translateX(1.8rem);
}

.custom-switch .custom-control-input.custom-control-input-xl ~ .custom-control-label {
  padding-left: 2rem;
  line-height: 2rem;
  vertical-align: middle;
}
.custom-switch .custom-control-input.custom-control-input-xl ~ .custom-control-label::before {
  width: 4rem;
  height: 2rem;
  border-radius: 1rem;
}
.custom-switch .custom-control-input.custom-control-input-xl ~ .custom-control-label::after {
  width: 2.3rem;
  height: 2.3rem;
  border-radius: 50%;
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.custom-switch .custom-control-input.custom-control-input-xl:checked ~ .custom-control-label::after {
  transform: translateX(2.3rem);
}

table.table tbody tr.selected {
  background-color: var(--primary);
}

tr.table-row-selectable:hover {
  cursor: pointer;
}
tr.table-row-selectable:focus[tabindex="0"] {
  outline: none;
}

.table-fixed-header {
  overflow-y: auto;
}
.table-fixed-header .table {
  border-collapse: separate;
  border-spacing: 0;
}
.table-fixed-header .table thead:not(.table-thead-theme) th {
  background: white;
}
.table-fixed-header .table thead tr th {
  border-top: none;
  position: sticky;
  z-index: 10;
}
.table-fixed-header .table thead tr:nth-child(1) th {
  top: 0;
}

.nav.nav-tabs .nav-item a.nav-link {
  cursor: pointer;
}

h1.card-title,
.h1.card-title {
  font-size: 2.5rem;
}

h2.card-title,
.h2.card-title {
  font-size: 2rem;
}

h3.card-title,
.h3.card-title {
  font-size: 1.75rem;
}

h4.card-title,
.h4.card-title {
  font-size: 1.5rem;
}

h5.card-title,
.h5.card-title {
  font-size: 1.25rem;
}

h6.card-title,
.h6.card-title {
  font-size: 1rem;
}

.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;
}

.border-1 {
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
}
.border-1.border-primary {
  border-color: #9c27b0 !important;
}
.border-1.border-secondary {
  border-color: #ff4081 !important;
}
.border-1.border-success {
  border-color: #4caf50 !important;
}
.border-1.border-info {
  border-color: #2196f3 !important;
}
.border-1.border-warning {
  border-color: #ff9800 !important;
}
.border-1.border-danger {
  border-color: #f44336 !important;
}
.border-1.border-light {
  border-color: #f5f5f5 !important;
}
.border-1.border-dark {
  border-color: #424242 !important;
}
.border-1.border-link {
  border-color: #3273dc !important;
}

.border-primary-1 {
  border: 1px solid #9c27b0 !important;
}

.border-secondary-1 {
  border: 1px solid #ff4081 !important;
}

.border-success-1 {
  border: 1px solid #4caf50 !important;
}

.border-info-1 {
  border: 1px solid #2196f3 !important;
}

.border-warning-1 {
  border: 1px solid #ff9800 !important;
}

.border-danger-1 {
  border: 1px solid #f44336 !important;
}

.border-light-1 {
  border: 1px solid #f5f5f5 !important;
}

.border-dark-1 {
  border: 1px solid #424242 !important;
}

.border-link-1 {
  border: 1px solid #3273dc !important;
}

.border-top-1 {
  border-top: 1px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-top-1 {
  border-top: 1px solid #9c27b0 !important;
}

.border-secondary-top-1 {
  border-top: 1px solid #ff4081 !important;
}

.border-success-top-1 {
  border-top: 1px solid #4caf50 !important;
}

.border-info-top-1 {
  border-top: 1px solid #2196f3 !important;
}

.border-warning-top-1 {
  border-top: 1px solid #ff9800 !important;
}

.border-danger-top-1 {
  border-top: 1px solid #f44336 !important;
}

.border-light-top-1 {
  border-top: 1px solid #f5f5f5 !important;
}

.border-dark-top-1 {
  border-top: 1px solid #424242 !important;
}

.border-link-top-1 {
  border-top: 1px solid #3273dc !important;
}

.border-right-1 {
  border-right: 1px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-right-1 {
  border-right: 1px solid #9c27b0 !important;
}

.border-secondary-right-1 {
  border-right: 1px solid #ff4081 !important;
}

.border-success-right-1 {
  border-right: 1px solid #4caf50 !important;
}

.border-info-right-1 {
  border-right: 1px solid #2196f3 !important;
}

.border-warning-right-1 {
  border-right: 1px solid #ff9800 !important;
}

.border-danger-right-1 {
  border-right: 1px solid #f44336 !important;
}

.border-light-right-1 {
  border-right: 1px solid #f5f5f5 !important;
}

.border-dark-right-1 {
  border-right: 1px solid #424242 !important;
}

.border-link-right-1 {
  border-right: 1px solid #3273dc !important;
}

.border-bottom-1 {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-bottom-1 {
  border-bottom: 1px solid #9c27b0 !important;
}

.border-secondary-bottom-1 {
  border-bottom: 1px solid #ff4081 !important;
}

.border-success-bottom-1 {
  border-bottom: 1px solid #4caf50 !important;
}

.border-info-bottom-1 {
  border-bottom: 1px solid #2196f3 !important;
}

.border-warning-bottom-1 {
  border-bottom: 1px solid #ff9800 !important;
}

.border-danger-bottom-1 {
  border-bottom: 1px solid #f44336 !important;
}

.border-light-bottom-1 {
  border-bottom: 1px solid #f5f5f5 !important;
}

.border-dark-bottom-1 {
  border-bottom: 1px solid #424242 !important;
}

.border-link-bottom-1 {
  border-bottom: 1px solid #3273dc !important;
}

.border-left-1 {
  border-left: 1px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-left-1 {
  border-left: 1px solid #9c27b0 !important;
}

.border-secondary-left-1 {
  border-left: 1px solid #ff4081 !important;
}

.border-success-left-1 {
  border-left: 1px solid #4caf50 !important;
}

.border-info-left-1 {
  border-left: 1px solid #2196f3 !important;
}

.border-warning-left-1 {
  border-left: 1px solid #ff9800 !important;
}

.border-danger-left-1 {
  border-left: 1px solid #f44336 !important;
}

.border-light-left-1 {
  border-left: 1px solid #f5f5f5 !important;
}

.border-dark-left-1 {
  border-left: 1px solid #424242 !important;
}

.border-link-left-1 {
  border-left: 1px solid #3273dc !important;
}

.border-2 {
  border: 2px solid rgba(0, 0, 0, 0.12) !important;
}
.border-2.border-primary {
  border-color: #9c27b0 !important;
}
.border-2.border-secondary {
  border-color: #ff4081 !important;
}
.border-2.border-success {
  border-color: #4caf50 !important;
}
.border-2.border-info {
  border-color: #2196f3 !important;
}
.border-2.border-warning {
  border-color: #ff9800 !important;
}
.border-2.border-danger {
  border-color: #f44336 !important;
}
.border-2.border-light {
  border-color: #f5f5f5 !important;
}
.border-2.border-dark {
  border-color: #424242 !important;
}
.border-2.border-link {
  border-color: #3273dc !important;
}

.border-primary-2 {
  border: 2px solid #9c27b0 !important;
}

.border-secondary-2 {
  border: 2px solid #ff4081 !important;
}

.border-success-2 {
  border: 2px solid #4caf50 !important;
}

.border-info-2 {
  border: 2px solid #2196f3 !important;
}

.border-warning-2 {
  border: 2px solid #ff9800 !important;
}

.border-danger-2 {
  border: 2px solid #f44336 !important;
}

.border-light-2 {
  border: 2px solid #f5f5f5 !important;
}

.border-dark-2 {
  border: 2px solid #424242 !important;
}

.border-link-2 {
  border: 2px solid #3273dc !important;
}

.border-top-2 {
  border-top: 2px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-top-2 {
  border-top: 2px solid #9c27b0 !important;
}

.border-secondary-top-2 {
  border-top: 2px solid #ff4081 !important;
}

.border-success-top-2 {
  border-top: 2px solid #4caf50 !important;
}

.border-info-top-2 {
  border-top: 2px solid #2196f3 !important;
}

.border-warning-top-2 {
  border-top: 2px solid #ff9800 !important;
}

.border-danger-top-2 {
  border-top: 2px solid #f44336 !important;
}

.border-light-top-2 {
  border-top: 2px solid #f5f5f5 !important;
}

.border-dark-top-2 {
  border-top: 2px solid #424242 !important;
}

.border-link-top-2 {
  border-top: 2px solid #3273dc !important;
}

.border-right-2 {
  border-right: 2px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-right-2 {
  border-right: 2px solid #9c27b0 !important;
}

.border-secondary-right-2 {
  border-right: 2px solid #ff4081 !important;
}

.border-success-right-2 {
  border-right: 2px solid #4caf50 !important;
}

.border-info-right-2 {
  border-right: 2px solid #2196f3 !important;
}

.border-warning-right-2 {
  border-right: 2px solid #ff9800 !important;
}

.border-danger-right-2 {
  border-right: 2px solid #f44336 !important;
}

.border-light-right-2 {
  border-right: 2px solid #f5f5f5 !important;
}

.border-dark-right-2 {
  border-right: 2px solid #424242 !important;
}

.border-link-right-2 {
  border-right: 2px solid #3273dc !important;
}

.border-bottom-2 {
  border-bottom: 2px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-bottom-2 {
  border-bottom: 2px solid #9c27b0 !important;
}

.border-secondary-bottom-2 {
  border-bottom: 2px solid #ff4081 !important;
}

.border-success-bottom-2 {
  border-bottom: 2px solid #4caf50 !important;
}

.border-info-bottom-2 {
  border-bottom: 2px solid #2196f3 !important;
}

.border-warning-bottom-2 {
  border-bottom: 2px solid #ff9800 !important;
}

.border-danger-bottom-2 {
  border-bottom: 2px solid #f44336 !important;
}

.border-light-bottom-2 {
  border-bottom: 2px solid #f5f5f5 !important;
}

.border-dark-bottom-2 {
  border-bottom: 2px solid #424242 !important;
}

.border-link-bottom-2 {
  border-bottom: 2px solid #3273dc !important;
}

.border-left-2 {
  border-left: 2px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-left-2 {
  border-left: 2px solid #9c27b0 !important;
}

.border-secondary-left-2 {
  border-left: 2px solid #ff4081 !important;
}

.border-success-left-2 {
  border-left: 2px solid #4caf50 !important;
}

.border-info-left-2 {
  border-left: 2px solid #2196f3 !important;
}

.border-warning-left-2 {
  border-left: 2px solid #ff9800 !important;
}

.border-danger-left-2 {
  border-left: 2px solid #f44336 !important;
}

.border-light-left-2 {
  border-left: 2px solid #f5f5f5 !important;
}

.border-dark-left-2 {
  border-left: 2px solid #424242 !important;
}

.border-link-left-2 {
  border-left: 2px solid #3273dc !important;
}

.border-3 {
  border: 3px solid rgba(0, 0, 0, 0.12) !important;
}
.border-3.border-primary {
  border-color: #9c27b0 !important;
}
.border-3.border-secondary {
  border-color: #ff4081 !important;
}
.border-3.border-success {
  border-color: #4caf50 !important;
}
.border-3.border-info {
  border-color: #2196f3 !important;
}
.border-3.border-warning {
  border-color: #ff9800 !important;
}
.border-3.border-danger {
  border-color: #f44336 !important;
}
.border-3.border-light {
  border-color: #f5f5f5 !important;
}
.border-3.border-dark {
  border-color: #424242 !important;
}
.border-3.border-link {
  border-color: #3273dc !important;
}

.border-primary-3 {
  border: 3px solid #9c27b0 !important;
}

.border-secondary-3 {
  border: 3px solid #ff4081 !important;
}

.border-success-3 {
  border: 3px solid #4caf50 !important;
}

.border-info-3 {
  border: 3px solid #2196f3 !important;
}

.border-warning-3 {
  border: 3px solid #ff9800 !important;
}

.border-danger-3 {
  border: 3px solid #f44336 !important;
}

.border-light-3 {
  border: 3px solid #f5f5f5 !important;
}

.border-dark-3 {
  border: 3px solid #424242 !important;
}

.border-link-3 {
  border: 3px solid #3273dc !important;
}

.border-top-3 {
  border-top: 3px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-top-3 {
  border-top: 3px solid #9c27b0 !important;
}

.border-secondary-top-3 {
  border-top: 3px solid #ff4081 !important;
}

.border-success-top-3 {
  border-top: 3px solid #4caf50 !important;
}

.border-info-top-3 {
  border-top: 3px solid #2196f3 !important;
}

.border-warning-top-3 {
  border-top: 3px solid #ff9800 !important;
}

.border-danger-top-3 {
  border-top: 3px solid #f44336 !important;
}

.border-light-top-3 {
  border-top: 3px solid #f5f5f5 !important;
}

.border-dark-top-3 {
  border-top: 3px solid #424242 !important;
}

.border-link-top-3 {
  border-top: 3px solid #3273dc !important;
}

.border-right-3 {
  border-right: 3px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-right-3 {
  border-right: 3px solid #9c27b0 !important;
}

.border-secondary-right-3 {
  border-right: 3px solid #ff4081 !important;
}

.border-success-right-3 {
  border-right: 3px solid #4caf50 !important;
}

.border-info-right-3 {
  border-right: 3px solid #2196f3 !important;
}

.border-warning-right-3 {
  border-right: 3px solid #ff9800 !important;
}

.border-danger-right-3 {
  border-right: 3px solid #f44336 !important;
}

.border-light-right-3 {
  border-right: 3px solid #f5f5f5 !important;
}

.border-dark-right-3 {
  border-right: 3px solid #424242 !important;
}

.border-link-right-3 {
  border-right: 3px solid #3273dc !important;
}

.border-bottom-3 {
  border-bottom: 3px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-bottom-3 {
  border-bottom: 3px solid #9c27b0 !important;
}

.border-secondary-bottom-3 {
  border-bottom: 3px solid #ff4081 !important;
}

.border-success-bottom-3 {
  border-bottom: 3px solid #4caf50 !important;
}

.border-info-bottom-3 {
  border-bottom: 3px solid #2196f3 !important;
}

.border-warning-bottom-3 {
  border-bottom: 3px solid #ff9800 !important;
}

.border-danger-bottom-3 {
  border-bottom: 3px solid #f44336 !important;
}

.border-light-bottom-3 {
  border-bottom: 3px solid #f5f5f5 !important;
}

.border-dark-bottom-3 {
  border-bottom: 3px solid #424242 !important;
}

.border-link-bottom-3 {
  border-bottom: 3px solid #3273dc !important;
}

.border-left-3 {
  border-left: 3px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-left-3 {
  border-left: 3px solid #9c27b0 !important;
}

.border-secondary-left-3 {
  border-left: 3px solid #ff4081 !important;
}

.border-success-left-3 {
  border-left: 3px solid #4caf50 !important;
}

.border-info-left-3 {
  border-left: 3px solid #2196f3 !important;
}

.border-warning-left-3 {
  border-left: 3px solid #ff9800 !important;
}

.border-danger-left-3 {
  border-left: 3px solid #f44336 !important;
}

.border-light-left-3 {
  border-left: 3px solid #f5f5f5 !important;
}

.border-dark-left-3 {
  border-left: 3px solid #424242 !important;
}

.border-link-left-3 {
  border-left: 3px solid #3273dc !important;
}

.border-4 {
  border: 4px solid rgba(0, 0, 0, 0.12) !important;
}
.border-4.border-primary {
  border-color: #9c27b0 !important;
}
.border-4.border-secondary {
  border-color: #ff4081 !important;
}
.border-4.border-success {
  border-color: #4caf50 !important;
}
.border-4.border-info {
  border-color: #2196f3 !important;
}
.border-4.border-warning {
  border-color: #ff9800 !important;
}
.border-4.border-danger {
  border-color: #f44336 !important;
}
.border-4.border-light {
  border-color: #f5f5f5 !important;
}
.border-4.border-dark {
  border-color: #424242 !important;
}
.border-4.border-link {
  border-color: #3273dc !important;
}

.border-primary-4 {
  border: 4px solid #9c27b0 !important;
}

.border-secondary-4 {
  border: 4px solid #ff4081 !important;
}

.border-success-4 {
  border: 4px solid #4caf50 !important;
}

.border-info-4 {
  border: 4px solid #2196f3 !important;
}

.border-warning-4 {
  border: 4px solid #ff9800 !important;
}

.border-danger-4 {
  border: 4px solid #f44336 !important;
}

.border-light-4 {
  border: 4px solid #f5f5f5 !important;
}

.border-dark-4 {
  border: 4px solid #424242 !important;
}

.border-link-4 {
  border: 4px solid #3273dc !important;
}

.border-top-4 {
  border-top: 4px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-top-4 {
  border-top: 4px solid #9c27b0 !important;
}

.border-secondary-top-4 {
  border-top: 4px solid #ff4081 !important;
}

.border-success-top-4 {
  border-top: 4px solid #4caf50 !important;
}

.border-info-top-4 {
  border-top: 4px solid #2196f3 !important;
}

.border-warning-top-4 {
  border-top: 4px solid #ff9800 !important;
}

.border-danger-top-4 {
  border-top: 4px solid #f44336 !important;
}

.border-light-top-4 {
  border-top: 4px solid #f5f5f5 !important;
}

.border-dark-top-4 {
  border-top: 4px solid #424242 !important;
}

.border-link-top-4 {
  border-top: 4px solid #3273dc !important;
}

.border-right-4 {
  border-right: 4px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-right-4 {
  border-right: 4px solid #9c27b0 !important;
}

.border-secondary-right-4 {
  border-right: 4px solid #ff4081 !important;
}

.border-success-right-4 {
  border-right: 4px solid #4caf50 !important;
}

.border-info-right-4 {
  border-right: 4px solid #2196f3 !important;
}

.border-warning-right-4 {
  border-right: 4px solid #ff9800 !important;
}

.border-danger-right-4 {
  border-right: 4px solid #f44336 !important;
}

.border-light-right-4 {
  border-right: 4px solid #f5f5f5 !important;
}

.border-dark-right-4 {
  border-right: 4px solid #424242 !important;
}

.border-link-right-4 {
  border-right: 4px solid #3273dc !important;
}

.border-bottom-4 {
  border-bottom: 4px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-bottom-4 {
  border-bottom: 4px solid #9c27b0 !important;
}

.border-secondary-bottom-4 {
  border-bottom: 4px solid #ff4081 !important;
}

.border-success-bottom-4 {
  border-bottom: 4px solid #4caf50 !important;
}

.border-info-bottom-4 {
  border-bottom: 4px solid #2196f3 !important;
}

.border-warning-bottom-4 {
  border-bottom: 4px solid #ff9800 !important;
}

.border-danger-bottom-4 {
  border-bottom: 4px solid #f44336 !important;
}

.border-light-bottom-4 {
  border-bottom: 4px solid #f5f5f5 !important;
}

.border-dark-bottom-4 {
  border-bottom: 4px solid #424242 !important;
}

.border-link-bottom-4 {
  border-bottom: 4px solid #3273dc !important;
}

.border-left-4 {
  border-left: 4px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-left-4 {
  border-left: 4px solid #9c27b0 !important;
}

.border-secondary-left-4 {
  border-left: 4px solid #ff4081 !important;
}

.border-success-left-4 {
  border-left: 4px solid #4caf50 !important;
}

.border-info-left-4 {
  border-left: 4px solid #2196f3 !important;
}

.border-warning-left-4 {
  border-left: 4px solid #ff9800 !important;
}

.border-danger-left-4 {
  border-left: 4px solid #f44336 !important;
}

.border-light-left-4 {
  border-left: 4px solid #f5f5f5 !important;
}

.border-dark-left-4 {
  border-left: 4px solid #424242 !important;
}

.border-link-left-4 {
  border-left: 4px solid #3273dc !important;
}

.border-5 {
  border: 5px solid rgba(0, 0, 0, 0.12) !important;
}
.border-5.border-primary {
  border-color: #9c27b0 !important;
}
.border-5.border-secondary {
  border-color: #ff4081 !important;
}
.border-5.border-success {
  border-color: #4caf50 !important;
}
.border-5.border-info {
  border-color: #2196f3 !important;
}
.border-5.border-warning {
  border-color: #ff9800 !important;
}
.border-5.border-danger {
  border-color: #f44336 !important;
}
.border-5.border-light {
  border-color: #f5f5f5 !important;
}
.border-5.border-dark {
  border-color: #424242 !important;
}
.border-5.border-link {
  border-color: #3273dc !important;
}

.border-primary-5 {
  border: 5px solid #9c27b0 !important;
}

.border-secondary-5 {
  border: 5px solid #ff4081 !important;
}

.border-success-5 {
  border: 5px solid #4caf50 !important;
}

.border-info-5 {
  border: 5px solid #2196f3 !important;
}

.border-warning-5 {
  border: 5px solid #ff9800 !important;
}

.border-danger-5 {
  border: 5px solid #f44336 !important;
}

.border-light-5 {
  border: 5px solid #f5f5f5 !important;
}

.border-dark-5 {
  border: 5px solid #424242 !important;
}

.border-link-5 {
  border: 5px solid #3273dc !important;
}

.border-top-5 {
  border-top: 5px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-top-5 {
  border-top: 5px solid #9c27b0 !important;
}

.border-secondary-top-5 {
  border-top: 5px solid #ff4081 !important;
}

.border-success-top-5 {
  border-top: 5px solid #4caf50 !important;
}

.border-info-top-5 {
  border-top: 5px solid #2196f3 !important;
}

.border-warning-top-5 {
  border-top: 5px solid #ff9800 !important;
}

.border-danger-top-5 {
  border-top: 5px solid #f44336 !important;
}

.border-light-top-5 {
  border-top: 5px solid #f5f5f5 !important;
}

.border-dark-top-5 {
  border-top: 5px solid #424242 !important;
}

.border-link-top-5 {
  border-top: 5px solid #3273dc !important;
}

.border-right-5 {
  border-right: 5px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-right-5 {
  border-right: 5px solid #9c27b0 !important;
}

.border-secondary-right-5 {
  border-right: 5px solid #ff4081 !important;
}

.border-success-right-5 {
  border-right: 5px solid #4caf50 !important;
}

.border-info-right-5 {
  border-right: 5px solid #2196f3 !important;
}

.border-warning-right-5 {
  border-right: 5px solid #ff9800 !important;
}

.border-danger-right-5 {
  border-right: 5px solid #f44336 !important;
}

.border-light-right-5 {
  border-right: 5px solid #f5f5f5 !important;
}

.border-dark-right-5 {
  border-right: 5px solid #424242 !important;
}

.border-link-right-5 {
  border-right: 5px solid #3273dc !important;
}

.border-bottom-5 {
  border-bottom: 5px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-bottom-5 {
  border-bottom: 5px solid #9c27b0 !important;
}

.border-secondary-bottom-5 {
  border-bottom: 5px solid #ff4081 !important;
}

.border-success-bottom-5 {
  border-bottom: 5px solid #4caf50 !important;
}

.border-info-bottom-5 {
  border-bottom: 5px solid #2196f3 !important;
}

.border-warning-bottom-5 {
  border-bottom: 5px solid #ff9800 !important;
}

.border-danger-bottom-5 {
  border-bottom: 5px solid #f44336 !important;
}

.border-light-bottom-5 {
  border-bottom: 5px solid #f5f5f5 !important;
}

.border-dark-bottom-5 {
  border-bottom: 5px solid #424242 !important;
}

.border-link-bottom-5 {
  border-bottom: 5px solid #3273dc !important;
}

.border-left-5 {
  border-left: 5px solid rgba(0, 0, 0, 0.12) !important;
}

.border-primary-left-5 {
  border-left: 5px solid #9c27b0 !important;
}

.border-secondary-left-5 {
  border-left: 5px solid #ff4081 !important;
}

.border-success-left-5 {
  border-left: 5px solid #4caf50 !important;
}

.border-info-left-5 {
  border-left: 5px solid #2196f3 !important;
}

.border-warning-left-5 {
  border-left: 5px solid #ff9800 !important;
}

.border-danger-left-5 {
  border-left: 5px solid #f44336 !important;
}

.border-light-left-5 {
  border-left: 5px solid #f5f5f5 !important;
}

.border-dark-left-5 {
  border-left: 5px solid #424242 !important;
}

.border-link-left-5 {
  border-left: 5px solid #3273dc !important;
}

.cursor-pointer {
  cursor: pointer;
}

.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: #9c27b0;
}
.flatpickr-months .flatpickr-month {
  color: rgba(0, 0, 0, 0.87);
}

.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(156, 39, 176, 0.15);
}

.numInputWrapper:hover {
  background: rgba(156, 39, 176, 0.15);
}

.flatpickr-day {
  border-radius: 50%;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.87);
}
.flatpickr-day.today {
  border-color: #9c27b0;
}
.flatpickr-day.today:hover {
  background: #9c27b0;
  border-color: #9c27b0;
}
.flatpickr-day:hover {
  background: rgba(156, 39, 176, 0.1);
  border-color: rgba(0, 0, 0, 0);
}

span.flatpickr-weekday {
  color: rgba(0, 0, 0, 0.87);
}

.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: #9c27b0;
  border-color: #9c27b0;
}

.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 #9c27b0;
}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange {
  border-radius: 50%;
}

.flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange {
  border-radius: 50%;
}

.flatpickr-monthSelect-month:hover,
.flatpickr-monthSelect-month:focus {
  background: rgba(156, 39, 176, 0.1);
}

.flatpickr-monthSelect-month.selected {
  background-color: #9c27b0;
}
