.toast{
  display: none;
  min-width: 20vw
}
.toast.show {
    display: block;
    opacity: 1;
    position: fixed;
    z-index: 99999999;
    margin: 20px;
    right: 0;
    top: 3.5rem;
}
.swal2-container{
    z-index: 99999999;
}
#preloader2 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  overflow: hidden;
  background: #ffffff82;
}

#preloader2:before {
  content: "";
  position: fixed;
  top: calc(50% - 30px);
  left: calc(50% - 30px);
  border: 6px solid #1977cc;
  border-top-color: #d1e6f9;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  -webkit-animation: animate-preloader 1s linear infinite;
  animation: animate-preloader 1s linear infinite;
}
@-webkit-keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    font-size: smaller;
    color: #000000cf;
    font-style: italic;
}
 .modal-dialog.large {
    width: 100% !important;
    max-width: unset;
  }
  .modal-dialog.mid-large {
    width: 50% !important;
    max-width: unset;
  }
  #viewer_modal .btn-close {
    position: absolute;
    z-index: 999999;
    /*right: -4.5em;*/
    background: unset;
    color: white;
    border: unset;
    font-size: 27px;
    top: 0;
}
#viewer_modal .modal-dialog {
        width: 80%;
    max-width: unset;
    height: calc(90%);
    max-height: unset;
}
  #viewer_modal .modal-content {
       background: black;
    border: unset;
    height: calc(100%);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #viewer_modal img,#viewer_modal video{
    max-height: calc(100%);
    max-width: calc(100%);
  }
  @media (min-width: 1067px) {
  .modal-dialog.large {
    width: 70% !important;
  }
  }
  .e{width: 10px;height: 10px;border-radius: 4px;box-shadow: -1px -1px #fff, 1px 1px #fff;position: absolute;margin-top: 0px;}
  .form-control-sm {
    height: calc(2.5125rem + 2px);
    font-size: 1.175rem;
    border-radius: 1.2rem;
    box-shadow: 0 5px 5px blueviolet;
}
.btn-group-sm>.btn, .btn-sm {
    font-size: 1.175rem;
    line-height: 1.5;
    border-radius: 1.2rem;
}
.btn-primary {
    color: #fff;
    background-color: #000 !important;
    border-color: #000;
    box-shadow: 0 5px 5px blueviolet;
    border-radius: 1.2rem 1.2rem 0 0!important;
}
.callout.callout-info {
    border-left-color: blueviolet;
}
.callout.callout-success {
    border-left-color: blueviolet;
}
.select2-sm {
    border-color: blueviolet;
}
.select2-sm {
    border: 1px solid blueviolet;
    height: calc(2.5rem + 8px);
    border-radius: 24px 24px 0 0;
    width: 100%;
}
.text-info {
    color: black !important;
}
.img-circle {
    border-radius: 30% 30% 0;
}
.border-info {
    border-color: blueviolet !important;
}
.card-info.card-outline {
    border-top: 3px solid blueviolet;
}


.badge-individual {
    background-color: #28a745;
    color: white;
    padding: 3px 8px;
    border-radius: 10px;
    font-size: 0.8em;
}

.badge-group {
    background-color: #17a2b8;
    color: white;
    padding: 3px 8px;
    border-radius: 10px;
    font-size: 0.8em;
}
.str-e{
    display: inline-flex;
    z-index: 1000;
    box-shadow: 0px 8px 10px #fff, 0px -8px 10px #fff;
    border-radius: 50px;
    padding: 0px 3px 0px 3px;
    line-height: .7;
    font-weight: bold;
    animation: pulsar 1.5s ease-in-out infinite alternate;
  }
@keyframes pulsar {
  0% {
    color: red;
    opacity: 0.9;
    text-shadow: 0 0 10px #fff, 0 0 30px black;
  }
  33% {
    color: black;
    opacity: 1;
    text-shadow: 0 0 20px #fff, 0 0 40px #fff;
  }
  66% {
    color: gold;
    opacity: 1.2;
    text-shadow: 0 0 30px #fff, 0 0 50px #fff;
  }
  100% {
    color: blueviolet;
    opacity: 1.5;
    text-shadow: 0 0 30px #fff, 0 0 60px white, 0 0 80px black;
  }
}