.survey {
  width: 100%;
  border-radius: 10px;
  background: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: 100px;
  /* height: 100%;   */
  align-items: center;
}

.survey_header {
  text-align: center;
}

.survey_header img {
  height: 10vh;
  margin: 1vh 0;
  max-height: 187px;
}

.survey_cont {
  height: 100vh;
  background-color: white;
  border-top-right-radius: 5%;
  border-top-left-radius: 5%;
  padding-top: 5%;
  width: 100%;
}

.survey-tittle {
  font-size: 24px;
  text-align: center;
  color: #21a7ec;
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.survey-sub-tittle {
  font-size: 22px;
  text-align: center;
  color: #1990CF;
  width: 85%;
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}


.survey p {
  text-align: center;
  font-size: 14px;
  margin-top: 2px;
  color: #1990CF;
  font-weight: 600;
  margin-bottom: 35px;
}

.survey summary p {
  width: 50%;
}

.tarjeta {
  padding: 20px 0;
  width: auto;
  /*height: 55px;*/
  /* border-radius: 15px; */
  margin-bottom: 50px;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
}

.ec {
  width: 20%;
  display: flex;
  justify-content: start;
  align-items: center;
}

.ec1 {
  float: left;
}

.contenedor_tarjeta {
  width: 95%;
  height: 100%;
  display: flex;
}

.icon {
  width: 65%;
  height: 100%;
  max-width: 120px;
}

.content_btn {
  width: 100%;
  height: 50%;
}

.btn_solicitar {
  /*background-color: white;
  border: none;
  color: #21a7ec;
  text-decoration: none;*/
  cursor: pointer;
  /*  border-radius: 13px;
  height: 30px;
  width: 100%;
  border-color: #21a7ec;
  border-style: solid;
  font-size: 20px;*/
}

.btn_solicitar.rosa {
  background-color: #eb4a7a;
  color: white;
  border-color: #eb4a7a;
  border-style: solid;
}

.cont_label {

  /* color: #21a7ec; */
  color: #3f3e3e !important;
  margin-left: 10px;
  font-size: 16px;
  width: 80%;
}

.cont_label.rosa {
  color: #eb4a7a;
}

.etiqueta {
  width: 150px;
  height: 20px;
  background: #878787;
  border-radius: 8px;
  align-items: center;
  justify-content: center;
  display: flex;
  color: white;
  margin-right: 50%;
  font-size: 17px;
}

.etiqueta.rosa {
  background: #eb4a7a;
}

.cont_tarjeta {
  margin-left: 5%;
  margin-top: 3%;
}


.previas_contenedor_padre {
  width: 80%;
  height: 45vh;
  margin: 0 auto;
  display: none;
  justify-content: center;
  align-items: center;
  /*gap: 10rem;*/
  flex-direction: column;
  overflow: auto;
  margin-top: 2vh;
  border-radius: 15px;
}


.button-container {
  width: 85%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 3%;
}

.button-container-history {
  width: 100%;
  display: flex;
  justify-content: center;
  /* Centers the button horizontally */
}


/* Basic styling for both buttons (no ellipsis) */
.btn_credito_personal,
.btn_history,
.btn_credito_business {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  /* Increased font size: min 14px, ideal based on viewport, max 24px */
  font-size: clamp(14px, 3vw, 24px);
}

/* Styling for the first type of button */
.btn_credito_personal {
    background-color: #1990CF;
    border: none;
    /*border-radius: 8px;*/
    color: #FBF1F1;
    cursor: pointer;
    position: relative;
    margin-top: 5px;
    width: 349px !important;
    height: 61px;
    /*font-weight: bold;*/
    padding: 5px 10px;
    margin-bottom: -15px;
    font-size: 20px !important;
    border-bottom-left-radius: 37px;
    border-bottom-right-radius: 37px;
} 

.btn_credito_business {
  background-color: #1990CFB8;
  border: none;
  border-radius: 5px;
  color: #FBF1F1;
  cursor: pointer;
  position: relative;
  margin-top: 5px;
  width: 48%;
  height: 60px;
  font-weight: bold;
  /* Reduced padding */
  padding: 5px 10px;
  margin-bottom: 0;
}

/* Styling for the history button */
.btn_history {
  background-color: #59AFDC;
    border: none;
    border-radius: 15px;
    color: #FBF1F1;
    cursor: pointer;
    position: relative;
    margin-top: 5px;
    width: 65%;
    height: 65px;
    font-weight: bold;
    padding: 5px 10px;
    margin-bottom: 0;
    gap: 5px;
}

/* Responsive adjustments for small devices */
@media (max-width: 480px) {

  .btn_credito_personal,
  .btn_history {
    /* Slightly smaller font and even less padding on smaller devices */
    font-size: clamp(12px, 3vw, 20px);
    padding: 2px 4px;
  }
}



@media (max-width:700px) {
  .survey {
    /* height: 100%; */
    justify-content: start;
    align-items: center;
    /* margin-top: 5%; */
  }

  .survey>h1 {
    margin: 0;
    /* margin-bottom: 20px; */
  }

  .tarjeta {
    margin-bottom: 30px
  }

  .contenedor_tarjeta {
    align-items: center;
  }

  .cont_label {
    font-size: 16px;
    margin-top: 10px;

  }

  .content_btn {
    margin-top: 10px;
  }

}

.prev {
  margin: 0;
  margin-top: 20px;
}

.prev_offer {
  color: #21a7ec;
  margin-top: 0;
}

summary img:first-child {
  width: 25%;
  margin-right: 5%;
}

.o_txt {
  display: none;
  margin: 0 !important;
}





.history_body {
  display: flex;
  flex-direction: column;
  /* vertical stacking */
  justify-content: flex-start;
  align-items: center;
  width: 85%;
}

/* Each subcontainer (final3, others) will be stacked. */
.history_body_subcontainer {
  width: 100%;
  margin-top: 30px;
  justify-content: center;
  flex-direction: row;
  /* padding-right: 10px; */
  /* gap: 20px; */
  overflow-y: auto;
}

/* The subcontainer title bars (#0093D5 background, white text) */
.history_body_title {
  background-color: #0093D5;
  color: white;
  padding: 5px;
  font-size: 18px;
  /* font-weight: bold; */
  text-align: center;
  border-radius: 5px;
  display: flex;
  align-items: center;
  gap: 10px;
  /* space between icon & text */
  /* margin-bottom: 15px; */
  cursor: pointer;
  /* so user sees it's clickable */
  border-radius: 10px 10px 0 0;
}

/* Container that wraps <details> items. 
 We toggle show/hide by JS .slideToggle() */
.history_body_items {
  width: 100%;
  /* If you want, you can add a default 'max-height' or something. */
}

/* Example styling for the check icon in the title */
.history_body_title .title_check_icon {
  width: 20px;
  height: 20px;
  fill: white;
  /* same color as text for contrast */
}

/* The .final3_items or .others_items are inside .history_body_items, 
 so they can share the same layout rules. */
.historys_body_subcontainer>.history_body_items>div {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}

/* Container styles */
.survey-image-container {
  width: 100%;
  overflow: hidden;
  position: relative;
  height: 50px;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 15px;
  margin-top: 30px;
}



/* Blue lines above and below the images */
.survey-image-container::before,
.survey-image-container::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, #1990CF99 0%, #0D4969 100%);
}

.survey-image-container::before {
  top: 0;
}

.survey-image-container::after {
  bottom: 0;
}

/* Inner track that will be animated */
.survey-image-track {
  padding: 0;
  display: flex;
  gap: 10px;
  animation: scroll 20s linear infinite;
  will-change: transform;
  height: 100%;
  align-items: center;
}

/* Images inside the track */
.survey-image-track img {
  flex-shrink: 0;
  height: 50%;
  max-height: 50px;
  width: auto;
  object-fit: contain;
  display: block;
}

/* Animation for continuous scrolling */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

#rangeCont {
  margin-bottom: 20px;
}

/* Displayed slider value styling */
#rangeValue {
  font-size: 24px;
  cursor: pointer;
  /* in case you want to let user click to toggle input */
}

/* The slider itself */
.slider {
  width: 100%;
  /* Example custom properties for a styled track or progress if needed:
     --progress: 0%;
  */
}

/* Input text styling */
#textAmount {
  font-size: 24px;
  border-radius: 5px;
  padding: 5px 10px;
  padding-right: 40px;
  text-align: center;
  transition: all 0.3s ease;
  width: 100%;
}

#textAmount:focus {
  border-color: #0093d5;
  box-shadow: 0 0 5px rgba(0, 147, 213, 0.5);
  outline: none;
}

/* Container for the text input with label */
#inputCont {
  margin: 10px 0;
}

/* Label styling */
#amountLabel {
  color: #21a7ec;
  font-size: 14px;
  margin-top: 20px;
  margin-bottom: 20px;
  display: block;
  text-align: center;
}

/* "Input group" style to create a left-dollar prefix */
.input-group {
  display: flex;
  align-items: center;

  border-radius: 5px;
  width: 100%;
  background-color: white;
}

.input-group .input-prefix {
  color: #646464;
  font-size: 24px;
  padding: 5px 10px;
}

.input-group input {
  border: none;
  outline: none;
  flex: 1;
  font-size: 24px;
  color: #646464;
  text-align: center;
  padding: 5px 10px;
  background-color: white;
}

/* Remove spinner arrows for number inputs */
.input-group input::-webkit-inner-spin-button,
.input-group input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Hide elements by adding/removing class if desired */
.hidden {
  display: none;
}



.history_items_container {
  padding: 20px 0;
  width: auto;
  /*height: 55px;*/
  /* border-radius: 15px; */
  margin-bottom: 50px;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

@media (max-aspect-ratio: 16/9) and (max-width: 600px) {
  .survey {
    padding-bottom: 20px;
  }
  .productamounts_body {
    margin-bottom: 10px;
  }
  .survey-image-container {
    margin-bottom: 10px;
    max-height: 60px;
  }
  .survey-header-flex img,
  .survey > img {
    max-height: 60px !important;
    height: auto !important;
  }
  .button-container {
    margin-bottom: 0;
  }
}

.btn_whatsapp {
  width: 100%;
  height: 54px;
  background: #2DD354;
  border-radius: 8px;
  color: #fff;
  font-size: 18px;
  font-family: Roboto, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  border: none;
  margin-top: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  line-height: 20px;
  letter-spacing: 0;
  vertical-align: middle;
}

.btn_whatsapp img {
  width: 50px;
  height: 48px;
  display: inline-block;
  vertical-align: middle;
}

.btn_whatsapp span {
  color: #fff;
  font-family: Roboto, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0;
  vertical-align: middle;
}