/* Common styles for all screen sizes */
.text{
  font-family: inter, sans-serif;
}

.hidden {
  display: none;
}

.input-row {
  display: flex;
  flex-wrap: wrap; /* Allow items to wrap onto the next line */
  justify-content: left; /* Center items horizontally */
  align-items: center; /* Center items vertically */
  margin-bottom: 10px;
}

.number-input {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 10px;
  margin-right: 16px;
  margin-left: 0px;
  padding: 8px 16px;
  border: 1px solid #ccfbf1;
  background-color: #f0fdfa;
  border-radius: 8px;
}

.input-label {
  font-size: .9rem;
  font-weight: 500;
  margin-bottom: 5px; /* Add a small space between label and input */
}

.input-field {
  width: calc(100% - 32px); /* Subtract padding and border width */
  border: 1px solid #14b8a6;
  border-radius: 4px;
  padding: 8px 16px;
  background-color: #f9f9f9;
  margin-top: 5px;
  color: #134e4a;
  font-size: 16px;
}

#loan-type {
  width: calc(100% - 32px); /* Subtract padding and border width */
  font-size: 16px;
  font-weight: 400;
  margin-top: 6px;
  margin-bottom: 15px;
  border: 1px solid #14b8a6;
  border-radius: 4px;
  padding: 8px 16px;
  background-color: #f9f9f9;
  color: #2a6f6a;  
}

#loan-tbl {
  gap: 1rem;
  border-radius: 3px;
  width: 100%;
  background-color: #fffbeb;
  margin-bottom: 30px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 2fr));
}

.loan-cell {
  text-align: left;
  padding: 15px
}

.loan-label {
  color: #78350f;
  font-size: .9rem;
  font-weight: 300;
  margin-bottom: 5px;
}

.loan-value {
  color: #78350f;
  font-size: 20px;
  font-weight: 500;
}

#estimated-closing-cost-tbl {
  width: 100%;
  border: 1px solid #e6ebf2; /* Outer border color and width */
  border-radius: 3px;
  border-spacing: 0px;
}



#estimated-closing-cost-tbl span {
  font-weight: 500;
  color: #18514e;
}

.estimated-closing-cost-tbl-header,
.estimated-closing-cost-cell {
  margin-left: .3rem;
  margin-bottom: .3rem;
  margin-top: .3rem;
  text-align: left;
  border-bottom: 1px solid #e6ebf2; /* Outer border color and width */
  border-top: 0px;
  border-right: 0px;
  border-left: 0px;
}

.estimated-closing-cost-tbl-header {
  font-size: 14px;
  font-weight: 500;
  color: #79889d;
  background: #f7fafc;
  border-bottom: 1px solid #e6ebf2; /* Outer border color and width */
}

.estimated-closing-cost-cell {
  font-size: 16px;  
}

.total-estimated-closing-cost-cell {
 font-size: 20px;
 font-weight: 700; 
 margin-top: 5px;
 margin-left: 5px;
 border-bottom: 0px; /* Outer border color and width */
 border-top: 0px;
 border-right: 0px;
 border-left: 0px;
}

#overview {
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  background-color: #14b8a6;
  border-radius: 3px;
}

.overview {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  position: relative; /* Add relative positioning for pseudo-element */
  padding-bottom: 1.5rem;
  padding-top: 1.5rem;
}

.ov-1::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 10px; /* Adjust as needed */
  right: 10px; /* Adjust as needed */
  height: 1px;
  margin: 0 auto;

  /*transform: translateX(-50%); /* Center the divider within the overview */
  width: calc(100% - 40px); /* Adjust the width to leave space on both sides */ 
  background-color: white; /* Divider line color */
}

.ov-2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 10px; /* Adjust as needed */
  right: 10px; /* Adjust as needed */
  height: 1px;
  margin: 0 auto;
  
    /*transform: translateX(-50%); /* Center the divider within the overview */
  width: calc(100% - 40px); /* Adjust the width to leave space on both sides */ 
  background-color: white; /* Divider line color */
}

.overview-number,
.overview-text {
  text-align: center;
  color: white;
}

.overview-number {
  flex: 1;
  font-size: 40px;
  font-weight: 600;
}

.overview-text {
  flex: 2;
  margin-top: 10px;
  margin-top: 20px; /* Increase space between number and text in overview */
  font-size: 20px;
  font-weight: 600;
}

.flex-container {
  display: flex;
  justify-content: space-between;
/*   width: 100%; */
}


/* Media query for screens with maximum width of 768px (typical tablet and mobile devices) */
@media screen and (max-width: 768px) {
  .number-input {
    /* ... Other styles ... */
    flex: 0 1 100%; /* Make inputs span full width */
  }

  .loan-cell {
    /* ... Other styles ... */
    flex: 0 1 100%; /* Make loan cells span full width */
  }
  
  .overview-number {
    font-size: 30px;

  }

  .overview-text {
    margin-top: 20px; /* Increase space between number and text in overview */
  }
  
  
}
