@import url("https://fonts.googleapis.com/css?family=DM+Sans:400,500,700&display=swap");
@import url("https://fonts.cdnfonts.com/css/along-sans-s2");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "DM Sans", sans-serif;
}

body {
  background: #f3f6fd;
  overflow-x: hidden;
  scrollbar-width: 10px;
  scrollbar-width: thin;
}
body::-webkit-scrollbar, body::-moz-scrollbar {
  width: 10px;
}
body::-webkit-scrollbar-thumb {
  background: #1f1c2e;
  border-radius: 50px;
}

.logoText {
  font-weight: 400;
  font-family: "Along Sans s2", sans-serif;
  font-size: 60px;
}

a {
  text-decoration: none;
  outline: none;
}

.contentTraerDatos .loaders p {
  text-align: center;
}

h1, h2, h3, h4, h5 {
  font-size: 25px;
}

.nullAlert {
  padding: 40px 20px;
  border-radius: 32px;
  background: #fff;
  margin: 10px 0;
}
.nullAlert img {
  width: 400px;
  display: block;
  margin: auto;
}
.nullAlert p {
  margin-top: 20px;
  text-align: center;
}

.text {
  color: #4A4A4A;
  margin: 8px 0;
  line-height: 20px;
  opacity: 0.7;
}

ul {
  list-style: none;
}

.barra-progreso {
  width: 100%;
  height: 40px;
  border: 2px solid #1f1c2e;
  padding: 2px;
  border-radius: 32px;
  display: none;
  margin: 20px 0px;
}
.barra-progreso .complete {
  border-radius: 32px;
  background: #1f1c2e;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 0%;
  height: 100%;
}
.barra-progreso .complete p {
  color: #fff;
}

.opciPost {
  position: absolute;
  background: rgba(31, 28, 46, 0.6);
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 20;
  border-radius: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  animation: myAnim 0.5s ease 0s 1 normal forwards;
  color: #fff;
}
.opciPost div ul li a {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  text-align: center;
  margin: 10px 0px;
  font-size: 20px;
}

@media screen and (max-width: 500px) {
  .nullAlert img {
    width: 100%;
  }
}
.alert {
  position: fixed;
  top: 10px;
  right: 10px;
  border-radius: 4px;
  display: flex;
  padding: 10px;
  gap: 10px;
  z-index: 99;
}
.alert i, .alert .msg {
  color: #fff;
}
.alert.error {
  background: #D92B31;
  border-left: 8px solid #B70E14;
}
.alert.error .close-btn {
  border-radius: 4px;
  background: #B70E14;
}
.alert.success {
  background: #ffdb9b;
  border-left: 8px solid #ffa502;
  color: #fff;
}
.alert.success .close-btn {
  border-radius: 4px;
  background: #ffa502;
}
.alert.showAlert {
  opacity: 1;
}
.alert .msg {
  display: flex;
  justify-content: center;
  align-items: center;
}
.alert .close-btn, .alert .infoIcon {
  display: flex;
  justify-content: center;
  align-items: center;
}
.alert .close-btn > i, .alert .infoIcon > i {
  font-size: 30px;
}
.alert.show {
  animation: show_slide 1s ease forwards;
}
.alert.hide {
  animation: hide_slide 1s ease forwards;
}

@keyframes show_slide {
  0% {
    transform: translateX(100%);
  }
  40% {
    transform: translateX(-10%);
  }
  80% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(0px);
  }
}
@keyframes hide_slide {
  0% {
    transform: translateX(-10px);
  }
  40% {
    transform: translateX(0%);
  }
  80% {
    transform: translateX(-20%);
  }
  100% {
    transform: translateX(110%);
  }
}
@media screen and (max-width: 550px) {
  .alert {
    width: 90%;
    margin: auto;
    left: 0%;
    right: 0%;
    justify-content: space-evenly;
    transform: translate(-50%, -50%);
  }
}
.containerForm {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
}
.containerForm .sectionForm {
  background-color: #fff;
  border-radius: 32px;
  padding: 30px;
  box-shadow: 0 2px 6px 0 rgba(136, 148, 171, 0.2), 0 24px 20px -24px rgba(71, 82, 107, 0.102);
  width: 500px;
}
.containerForm .sectionForm header {
  display: block;
  text-align: center;
}
.containerForm .sectionForm header > img {
  width: 5em;
}
.containerForm .sectionForm header > h3 {
  text-align: center;
  margin: 30px 0;
  color: #1f1c2e;
}
.containerForm .sectionForm .otherLink {
  margin-top: 20px;
}
.containerForm .sectionForm .otherLink a {
  margin-bottom: 5px;
  display: block;
  text-align: center;
  color: #1f1c2e;
}
.containerForm .sectionForm .otherLink a:hover {
  color: #494f61;
}
.containerForm .sectionForm .otherLink a:active {
  color: #fff;
}

form .group .input-wrapper {
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0px 0px 1px #1f1c2e;
  border-radius: 32px;
  margin-top: 10px;
  height: 40px;
  overflow: hidden;
  padding: 0 15px;
}
form .group .input-wrapper .input {
  width: 100%;
  background: transparent;
  height: 100%;
  border: none;
  outline: none;
  color: #1f1c2e;
  font-size: 16px;
}
form .group .input-check-radio {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}
form .group .input-check-radio input[type=checkbox] {
  margin-right: 10px;
  height: 25px;
  width: 25px;
}
form .group .smsText {
  display: none;
  margin-bottom: 5px;
  font-size: 12px;
  text-align: center;
  color: #4A4A4A;
}
form .group .button-group.center-button {
  display: flex;
  justify-content: center;
}
form .group .button-group .button {
  margin-top: 10px;
  position: relative;
  padding: 8px 16px;
  background: #1f1c2e;
  border: none;
  outline: none;
  border-radius: 32px;
  cursor: pointer;
  height: 40px;
}
form .group .button-group .button:active {
  background: #4A4A4A;
}
form .group .button-group .button .button__text {
  color: #fff;
  font-weight: bold;
  transition: all 0.2s;
}
form .group .button-group .button--loading .button__text {
  visibility: hidden;
  opacity: 0;
}
form .group .button-group .button--loading::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border: 4px solid transparent;
  border-top-color: #fff;
  border-radius: 50%;
  animation: button-loading-spinner 1s ease infinite;
}

@keyframes button-loading-spinner {
  from {
    transform: rotate(0turn);
  }
  to {
    transform: rotate(1turn);
  }
}
@media screen and (max-width: 500px) {
  .containerForm .sectionForm {
    width: 90%;
  }
  .containerForm .sectionForm header > img {
    width: 50%;
  }
}