.fg-1 {
  flex-grow: 1;
  height: 0;
}

.hidden {
  display: none !important;
}

.fit-images {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  height: 100%;
  width: 100%;
}

.text-overflow-ellipsis {
  text-overflow: ellipsis !important;
  overflow: hidden !important;
}

.table-row-clickable {
  cursor: pointer;
  transition: 0.25s;
}

.square-15 {
  height: 15rem;
  width: 15rem;
}

.square-12 {
  height: 12rem;
  width: 12rem;
}

.square-10 {
  height: 10rem;
  width: 10rem;
}

.square-8 {
  height: 8rem;
  width: 8rem;
}

.square-7 {
  height: 7rem;
  width: 7rem;
}

.square-6 {
  height: 6rem;
  width: 6rem;
}

.square-4 {
  height: 4rem;
  width: 4rem;
}

.text-transform-capitalize {
  text-transform: capitalize;
}

.text-unset {
  text-transform: unset !important;
}

.translate-y--50 {
  transform: translateY(-50%) !important;
}

.w-15r {
  width: 15rem !important;
}

.overflow-y-hidden {
  overflow-y: hidden;
}

.overflow-y-overlay {
  overflow-y: overlay;
}

.overflow-y-scroll {
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.overflow-y-scroll::-webkit-scrollbar {
  opacity: 0;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.cursor-pointer {
  cursor: pointer !important;
}
.h-0 {
  height: 0 !important;
}
.w-80 {
  width: 80% !important;
}
.min-h-100 {
  min-height: 100% !important;
}

.max-h-100 {
  max-height: 100% !important;
}

.max-w-100 {
  max-width: 100% !important;
}

.max-w-95 {
  max-width: 95% !important;
}

.min-h-max-content {
  min-height: max-content !important;
}

.h-max-content {
  height: max-content !important;
}

.min-w-max-content {
  min-width: max-content !important;
}

.max-w-max-content {
  max-width: max-content !important;
}

.w-max-content {
  width: max-content !important;
}

.invis {
  cursor: default !important;
  opacity: 0;
}

.btn-delete {
  background: #ebebeb;
}

.btn-delete:hover {
  background: #adadad;
  transition: 0.25s;
}

.opacity-flash {
  animation: opacity-flash 1s infinite;
  -webkit-animation: opacity-flash 1s infinite;
  -moz-animation: opacity-flash 1s infinite;
  -o-animation: opacity-flash 1s infinite;
  -ms-animation: opacity-flash 1s infinite;
}

.logo-flash {
  animation: logo-flash 1s infinite;
  -webkit-animation: logo-flash 1s infinite;
  -moz-animation: logo-flash 1s infinite;
  -o-animation: logo-flash 1s infinite;
  -ms-animation: logo-flash 1s infinite;
}

.scale-1 {
  transform: scale(1, 1) !important;
}

@keyframes opacity-flash {
  0% {
    opacity: 1;
    transform: scale(1, 1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1, 1)
  }
}

@-webkit-keyframes opacity-flash {
  0% {
    opacity: 1;
    transform: scale(1, 1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1, 1)
  }
}
@-moz-keyframes opacity-flash {
  0% {
    opacity: 1;
    transform: scale(1, 1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1, 1)
  }
}
@-ms-keyframes opacity-flash {
  0% {
    opacity: 1;
    transform: scale(1, 1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1, 1)
  }
}
@-o-keyframes opacity-flash {
  0% {
    opacity: 1;
    transform: scale(1, 1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1, 1)
  }
}

@keyframes logo-flash {
  0% {
    opacity: 1;
    transform: scale(1.01, 1.01);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1.01, 1.01)
  }
}

@-webkit-keyframes logo-flash {
  0% {
    opacity: 1;
    transform: scale(1.01, 1.01);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1.01, 1.01)
  }
}
@-moz-keyframes logo-flash {
  0% {
    opacity: 1;
    transform: scale(1.01, 1.01);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1.01, 1.01)
  }
}
@-ms-keyframes logo-flash {
  0% {
    opacity: 1;
    transform: scale(1.01, 1.01);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1.01, 1.01)
  }
}
@-o-keyframes logo-flash {
  0% {
    opacity: 1;
    transform: scale(1.01, 1.01);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.95, 0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1.01, 1.01)
  }
}

@media screen and (min-width: 992px) {
  .lg-only {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .show-sm {
    display: none !important;
  }

  .show-lg {
    display: block;
  }

  .w-md-25 {
    width: 25%;
  }
}

@media screen and (max-width: 991px) {
  .lg-justify-center {
    justify-content: center !important;
  }

  .lg-column {
    flex-direction: column !important;
  }

  .lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .lg-text-center {
    text-align: center !important;
  }

  .lg-m-0 {
    margin: 0 !important;
  }

  .table-text {
    font-size: 0.9rem !important;
    word-wrap: normal !important;
  }

  .table-text-sm {
    font-size: 0.75rem !important;
    word-wrap: normal !important;
  }

  .lg-hide {
    display: none !important;
  }

  .mt-lg-4 {
    margin-top: 2rem !important;
  }

  .square-lg-8 {
    height: 8rem !important;
    width: 8rem !important;
  }

  .lg-px-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .w-lg-100 {
    width: 100% !important;
  }

  .lg-mx-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .fg-1 {
    height: max-content;
  }

  .show-sm {
    display: block;
  }

  .show-lg {
    display: none !important;
  }

  .mt-sm-4 {
    margin-top: 2rem !important;
  }

  .mx-sm-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .w-md-25 {
    width: 100%;
  }

  .overflow-y-auto {
    overflow-y: visible !important;
  }
}

@media screen and (min-width: 576px) {
  .sm-only {
    display: none !important;
  }
}

@media screen and (max-width: 575px) {
  .mobile-px-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .mobile-px-1 {
    padding-left: 0.1rem !important;
    padding-right: 0.1rem !important;
  }

  .table-text > p {
    font-size: 0.9rem !important;
    word-wrap: normal !important;
  }

  .table-text-sm > p {
    font-size: 0.75rem !important;
    word-wrap: normal !important;
  }

  .mobile-text-overflow {
    overflow-wrap: break-word !important;
  }

  .hide-mobile {
    display: none !important;
  }

  .mobile-column {
    flex-direction: column !important;
  }

  .mobile-w-100 {
    width: 100% !important;
  }

  table {
    table-layout: fixed;
    width: 100%;
  }

  .mobile-text-start {
    text-align: left !important;
  }

  .mobile-text-center {
    text-align: center !important;
  }

  .mobile-m-0 {
    margin: 0 !important;
  }

  .mobile-justify-center {
    justify-content: center !important;
  }

  .sm-hide {
    display: none !important;
  }

  .mt-sm-2 {
    margin-top: 1rem !important;
  }

  #contract-chat-container {
    height: 15rem !important;
    overflow-y: auto !important;
  }
}
