.rtmform-login-container {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 10px;
  position: relative;
}

.rtmform-input-box {
  display: flex;
  align-items: stretch;
  flex-direction: row;
  border: 1px solid #ccc;
}

.rtmform-input-box,
.rtmform-input {
  transition: all 0.5s;
}

.rtmform-input-container {
  width: 100%;
}

.rtmform-login-container .rtmform-input-box .rtmform-input {
  border: none !important;
  padding: 12px;
  width: 100%;
  max-width: unset;
  background-color: transparent !important;
  /* -webkit-text-fill-color: transparent !important; */
}

.rtmform-login-container .rtmform-input-box .rtmform-input:-webkit-autofill {
  -webkit-background-clip: text !important;
}

.rtmform-login-container .rtmform-input-box .rtmform-input:focus {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}

.rtmform-login-container .rtmform-show-hidden-button {
  background-color: transparent;
  border: none;
  padding: 0px;
  color: #000;
  margin-right: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rtmform-login-container .rtmform-show-hidden-button:focus,
.rtmform-login-container .rtmform-show-hidden-button:hover {
  outline: none;
  border: none;
  background-color: inherit;
  color: inherit;
}

.rtmform-login-container .error-message-container {
  position: relative;
  display: flex;
  justify-content: start;
  align-items: center;
  padding: 10px;
  background-color: rgba(187, 39, 39, 0.233);
  display: none;
  border-left: 5px solid red;
}

.rtmform-login-container .error-message-container .error-message-close-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 0px;
  background-color: transparent;
  border: none;
  display: flex;
}

.rtmform-login-container .error-message-container .error-message p {
  margin: 0px;
}

.rtmform-show-hidden-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

.rtmform-show-hidden-button .icon-hidden {
  display: none;
}

.rtmform-show-hidden-button.show .icon-show {
  display: none;
}

.rtmform-show-hidden-button.show .icon-hidden {
  display: block;
}

.rtmform-input-box .input-icon-container {
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s;
}

.rtmform-input-box i.input-icon {
  font-size: 18px;
  transition: all 0.5s;
}
.rtmform-input-box svg.input-icon {
  width: 18px;
  height: 18px;
  display: block;
  transition: all 0.5s;
}

i.icon-show,
i.icon-hidden {
  font-size: 18px;
}

svg.icon-show,
svg.icon-hidden {
  width: 18px;
  height: 18px;
}

.rtmform-login-container .error-message {
  color: red;
  font-size: 14px;
  /* display: none; */
}
.rtmform-login-container .error-message-container.show {
  display: block;
}

.rtmform-login-container button.rtmform-submit-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: none;
}

.rtmform-submit-container {
  display: flex;
}

.submit-btn-fullwidth .rtmform-submit-button {
  width: 100% !important;
}

.rtmform-submit-button i.login-icon {
  font-size: 18px;
}

.rtmform-submit-button svg.login-icon {
  width: 18px;
  height: 18px;
}

.rtmform-login-container .rtmform-login-action-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

#loading {
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: currentColor;
  animation: spin 1s ease-in-out infinite;
  -webkit-animation: spin 1s ease-in-out infinite;
}

.loading {
  width: 100%;
  justify-content: center;
  align-items: center;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

@keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}

/* =========================================
 * RTMForm Message Entrance Animations
 * ========================================= */

.rtmform-message-entrance-fade-in {
  animation: rtmform-message-fade-in 0.4s ease both;
}

.rtmform-message-entrance-fade-in-up {
  animation: rtmform-message-fade-in-up 0.4s ease both;
}

.rtmform-message-entrance-fade-in-down {
  animation: rtmform-message-fade-in-down 0.4s ease both;
}

.rtmform-message-entrance-fade-in-left {
  animation: rtmform-message-fade-in-left 0.4s ease both;
}

.rtmform-message-entrance-fade-in-right {
  animation: rtmform-message-fade-in-right 0.4s ease both;
}

.rtmform-message-entrance-slide-in-up {
  animation: rtmform-message-slide-in-up 0.4s ease both;
}

.rtmform-message-entrance-slide-in-down {
  animation: rtmform-message-slide-in-down 0.4s ease both;
}

.rtmform-message-entrance-slide-in-left {
  animation: rtmform-message-slide-in-left 0.4s ease both;
}

.rtmform-message-entrance-slide-in-right {
  animation: rtmform-message-slide-in-right 0.4s ease both;
}

.rtmform-message-entrance-bounce-in {
  animation: rtmform-message-bounce-in 0.6s ease both;
}

/* =========================================
 * Fade In
 * ========================================= */

@keyframes rtmform-message-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/* =========================================
 * Fade In Up
 * ========================================= */

@keyframes rtmform-message-fade-in-up {
  from {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Fade In Down
 * ========================================= */

@keyframes rtmform-message-fade-in-down {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Fade In Left
 * ========================================= */

@keyframes rtmform-message-fade-in-left {
  from {
    opacity: 0;
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Fade In Right
 * ========================================= */

@keyframes rtmform-message-fade-in-right {
  from {
    opacity: 0;
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Slide In Up
 * ========================================= */

@keyframes rtmform-message-slide-in-up {
  from {
    transform: translate3d(0, 100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Slide In Down
 * ========================================= */

@keyframes rtmform-message-slide-in-down {
  from {
    transform: translate3d(0, -100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Slide In Left
 * ========================================= */

@keyframes rtmform-message-slide-in-left {
  from {
    transform: translate3d(-100%, 0, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Slide In Right
 * ========================================= */

@keyframes rtmform-message-slide-in-right {
  from {
    transform: translate3d(100%, 0, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

/* =========================================
 * Bounce In
 * ========================================= */

@keyframes rtmform-message-bounce-in {
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }

  100% {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}

/* =========================================
 * Accessibility
 * ========================================= */

@media (prefers-reduced-motion: reduce) {
  .rtmform-message-entrance-fade-in,
  .rtmform-message-entrance-fade-in-up,
  .rtmform-message-entrance-fade-in-down,
  .rtmform-message-entrance-fade-in-left,
  .rtmform-message-entrance-fade-in-right,
  .rtmform-message-entrance-slide-in-up,
  .rtmform-message-entrance-slide-in-down,
  .rtmform-message-entrance-slide-in-left,
  .rtmform-message-entrance-slide-in-right,
  .rtmform-message-entrance-bounce-in {
    animation: none;
  }
}
