body {
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
  background-color: #f8f8f8;
}
/* Estilo para el título */
#titulo {
  text-align: center; /* Centra el texto horizontalmente */
  font-size: 2.5em; /* Tamaño de fuente grande */
  font-weight: bold; /* Fuente en negrita */
  color: #333; /* Color del texto */
  margin-bottom: 20px; /* Espacio debajo del título */
}

.container{
  margin-top: 123px;
  margin-left: 220px;
  margin-right: 220px;
}

#hipotecaForm {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

#datoshipo {
  width: 65%;
  padding: 20px;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 20px;
  text-align: center;
  max-width: 100%;
}

.slider-container {
  margin-bottom: 20px;
}

.slider-label {
  display: block;
  margin-bottom: 5px;
}

.slider {
  width: 100%;
  height: 100px;
}

#resultado {
  margin-top: 20px;
  font-weight: bold;
}

.resultadohipo {
  background-color: #f5f5f5;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  max-width: 100%;
  margin-bottom: 20px;
}

.resultadohipo h2 {
  font-size: 1.5em;
  color: #333;
  margin-bottom: 10px;
}

.info-item {
  margin-bottom: 20px;
}

.info-item p {
  margin: 5px 0;
}

.result-value {
  font-size: 1.7em;
  font-weight: bold;
  color: #000000; /* Verde para resaltar el valor */
  text-align: center;
}

label {
  display: block;
  margin-bottom: 10px;
  font-size: 21px;

}

input {
  width: calc(100% - 16px);
  padding: 8px;
  margin-bottom: 20px;
  box-sizing: border-box;
}

#botones button {
  background-color: rgb(255, 0, 0);
  color: #000000;
  padding: 5px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  width: 20%;
  font-size: 25px;
}

#botones button:hover {
  background-color: #7a7a7a;
}

table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

th, td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: left;
}

#botones{
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: large;
  margin: 15px;
}

/* Estilo base para el control deslizante */
input[type="range"] {
  -webkit-appearance: none;
  width: 100%;
  height: 10px;
  background: #d3d3d3; /* Color de fondo del control deslizante */
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
  border-radius: 5px; /* Bordes redondeados */
}

/* Estilo para el control deslizante al ser activado */
input[type="range"]:hover {
  opacity: 1;
}

/* Estilo para el control deslizante al ser arrastrado */
input[type="range"]:active {
  opacity: 1;
}

/* Personaliza el riel del control deslizante */
input[type="range"]::-webkit-slider-runnable-track {
  width: 100%;
  height: 10px;
  cursor: pointer;
  background: #a0a0a0; /* Color del riel */
  border-radius: 5px;
}

/* Personaliza el pulgar (handle) del control deslizante */
input[type="range"]::-webkit-slider-thumb {
  border: 1px solid #000000; /* Borde del pulgar */
  height: 30px; /* Altura del pulgar */
  width: 30px; /* Anchura del pulgar */
  border-radius: 100%; /* Borde redondeado para que parezca un círculo */
  background: rgb(255, 0, 0);; /* Color del pulgar */
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -5px; /* Ajuste de posición */
}

.item-form {
  width: calc(100% - 10px);
  box-sizing: border-box;
  margin-bottom: 20px;
}

#enviarResultado {
  background-color: #ff5733; /* Color de fondo atractivo */
  color: #ffffff; /* Texto blanco */
  padding: 12px 24px; /* Espaciado en el botón */
  border: none; /* Sin borde */
  border-radius: 6px; /* Bordes redondeados */
  cursor: pointer; /* Apunta el cursor sobre el botón */
  font-size: 18px; /* Tamaño de fuente */
  font-weight: bold; /* Negrita */
  text-transform: uppercase; /* Texto en mayúsculas */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra ligera */
  transition: background-color 0.3s ease, transform 0.2s ease; /* Transiciones para el color y la transformación */
  outline: none; /* Sin contorno */
}

#enviarResultado:hover {
  background-color: #e64a19; /* Cambio de color cuando pasa el mouse */
  transform: translateY(-3px); /* Efecto de desplazamiento hacia arriba */
}

#enviarResultado:active {
  background-color: #c43e00; /* Color más oscuro cuando se hace clic */
  transform: translateY(1px); /* Efecto de "presionar" el botón */
}

#enviarResultado:focus {
  box-shadow: 0 0 0 3px rgba(255, 87, 51, 0.5); /* Resaltar el botón cuando tiene el foco */
}



/* Media query para dispositivos móviles */
@media (max-width: 767px) {
  /* Formulario de hipoteca */
  #hipotecaForm {
    flex-direction: column;
  }

  .container{
    margin-top: 123px;
    margin-left: 0px;
    margin-right: 0px;
  }

  /* Botones */
  #botones {
    flex-direction: row; /* Los botones se ponen uno al lado del otro */
    gap: 10px; /* Menos espacio entre los botones */
  }

  #botones button {
    width: 20%; /* Los botones ocupan el 45% del ancho en móvil */
    font-size: 14px; /* Botones más pequeños */
    padding: 8px 15px; /* Menos relleno */
    margin-left: 20px;
    margin-right: 20px;
  }

  /* Datos de hipoteca y resultados */
  #datoshipo, #resultado {
    width: 100%;
    max-width: 100%;
    padding: 0px;
  }

  /* Resultados */
  .resultadohipo {
    padding: 15px; /* Menos relleno para móviles */
  }

  /* Control deslizante */
  .slider {
    height: 8px;
  }
  .item-form {
    width: calc(100% - 10px);
    box-sizing: border-box;
    margin-bottom: 20px;
    margin-top: 20px;
  }
  input[type="range"] {
    width: 82%;
  }
}
