tfoot > tr > td {
  font-weight: bolder;
  font-size: 1.2em;
}

.cursor-hand {
  cursor: pointer;
}
.cursor-hand:hover {
  color: rgba(255, 255, 255, 0.5);
}
.toggle-form {
  display: none;
}
.p-1 {
  padding: 10px;
}
.p-2 {
  padding: 20px;
}
.wp-10 {
  width: 10%;
}
.wp-25 {
  width: 25%;
}
.wp-50 {
  width: 50%;
}
.wp-75 {
  width: 75%;
}
.form-row {
  margin-top: 10px;
}
.form-row textarea {
  font-size: 2rem;
}
.form-row input[type="number"] {
  text-align: right;
}

.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.text-uppercase {
  text-transform: uppercase;
}
.direct-chat-messages {
  height: 100%;
}
.direct-chat-text {
  display: inline-block;
}
.right .direct-chat-text {
  margin-right: 10px;
}
.direct-chat-text {
  margin: 5px 0 0 10px;
}
.site-title {
  display: inline-block;
  padding: 10px 5px;
  font-size: 1.3em;
  color: #fff;
}
.site-title a {
  color: #fff;
}
.checkbox .form-group {
  margin-top: -25px;
}

.big-button {
  position: relative;
  padding: 35px 5px;
  border-radius: 0px;
  width: 120px;
  height: 120px;
}

.big-button > span {
  display: block;
}
.big-button .text {
  font-size: 16px;
}
.content-header {
  border-bottom: 1px solid lightgray;
}
#statistics-box {
  margin-top: 10px;
}

.modal-dialog {
  width: 90vw !important;
  height: 90vh !important;
  overflow-y: initial !important;
}
.modal-content.bottom {
  position: absolute !important;
  width: 100% !important;
}
.modal-content.bottom {
  bottom: 10 !important;
}
.modal-content.full {
  width: 100% !important;
  height: 90% !important;
}

.modal-body {
  display: block;
  height: 90%;
  overflow-y: auto;
}

.dropdown-menu,
.slimScrollDiv,
ul.menu {
  width: auto !important;
  height: auto !important;
}

.box-tools .btn {
  margin: 0 5px;
}
.auth-icon {
  display: inline-block;
  vertical-align: middle;
  transform: scale(0.6);
}
.auth-text {
  font-size: 1.2em;
}
.auth-link.btn {
  width: 100%;
  padding: 0;
}
.auth-btn-wrapper {
  padding: 0;
}

.main-alert {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1050;
}

@media (max-width: 767px) {
  .fixed .content-wrapper {
    padding-top: 50px;
  }
}

#loading {
  position: fixed;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  background-color: rgba(120, 120, 120, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22rem;
  color: #fff;
}

/**
 * ==============================================
 * Dot Pulse
 * ==============================================
 */
.dot-pulse {
  position: relative;
  left: -9999px;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #fff;
  color: #fff;
  box-shadow: 9999px 0 0 -5px;
  animation: dot-pulse 1.5s infinite linear;
  animation-delay: 0.25s;
}
.dot-pulse::before,
.dot-pulse::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #fff;
  color: #fff;
}
.dot-pulse::before {
  box-shadow: 9984px 0 0 -5px;
  animation: dot-pulse-before 1.5s infinite linear;
  animation-delay: 0s;
}
.dot-pulse::after {
  box-shadow: 10014px 0 0 -5px;
  animation: dot-pulse-after 1.5s infinite linear;
  animation-delay: 0.5s;
}

@keyframes dot-pulse-before {
  0% {
    box-shadow: 9984px 0 0 -10px;
  }
  30% {
    box-shadow: 9984px 0 0 4px;
  }
  60%,
  100% {
    box-shadow: 9984px 0 0 -10px;
  }
}
@keyframes dot-pulse {
  0% {
    box-shadow: 9999px 0 0 -10px;
  }
  30% {
    box-shadow: 9999px 0 0 4px;
  }
  60%,
  100% {
    box-shadow: 9999px 0 0 -10px;
  }
}
@keyframes dot-pulse-after {
  0% {
    box-shadow: 10014px 0 0 -10px;
  }
  30% {
    box-shadow: 10014px 0 0 4px;
  }
  60%,
  100% {
    box-shadow: 10014px 0 0 -10px;
  }
}

.w-25 {
  width: 25%;
}
.w-50 {
  width: 50%;
}
.w-75 {
  width: 75%;
}
.w-100 {
  width: 100%;
}

.pt {
  padding-top: 5px;
}

.btn-mic {
  border: none;
  padding: 0;
  border-radius: 100%;
  width: 100px;
  height: 100px;
  font-size: 3em;
  color: #fff;
  padding: 0;
  margin: 0;
  background: red;
  position: relative;
  z-index: 999;
  display: inline-block;
  line-height: 100px;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-image: none;
}

.pulse-ring {
  content: "";
  width: 100px;
  height: 100px;
  background: #189bff;
  border: 5px solid #189bff;
  border-radius: 50%;
  position: absolute;
  animation: pulsate infinite 1.5s;
}

.pulse-ring.delay {
  animation-delay: 1s;
}

@keyframes pulsate {
  0% {
    -webkit-transform: scale(1, 1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1.3, 1.3);
    opacity: 0;
  }
}

.m-left {
  margin-left: 100px * 3;
}

.type2 {
  background: #189bff;
}

.type2 .pulse-ring {
  background: transparent;
}
