




.controls {
    display: grid; 
  grid-auto-flow: row dense; 
  grid-auto-columns: 1fr; 
  grid-auto-rows: 1fr; 
  grid-template-columns: 1fr 1fr; 
  grid-template-rows: 1fr; 
  gap: 1em 1em; 
  grid-template-areas: 
    ". ."; 
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
  margin-bottom: 20px;
    width: 90%;
    margin: 1em 5%;
}

select {
  margin: 0 10px;
  padding: 5px;
}

#calendar {
  width: 90%;
  font-family: "Aptos";
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
  margin: 20px auto;
  max-width: 450px;
}

.date-cell {
  padding: 10px;
  border: 0px solid #ccc;
  text-align: center;
  cursor: pointer;
  font-weight: 700;
  border-radius: 5px;
  background-color: #F5F5F5;
  letter-spacing: 1px;
}

.date-cell.booked {
  background-color: #CFE5EB;
  color: #88B2BD;
  cursor: not-allowed;
    opacity: .7;
}

.date-cell.available {
  background-color: transparent; /* No color for available dates */
  background-color: #FFF0DC;
  background-color: #6CB4C8;
  color: #fff;
}

.date-cell.selected {
  background-color: #116982;
  color: #fff;
}

@media (min-width: 601px) and (max-width: 1024px) {
  #calendar {
    grid-template-columns: repeat(5, 1fr); /* Four columns for tablets */
    gap: 5px;
  }
}

#messageBox {
  display: none;
  margin-top: 10px;
  font-size: 1.5em;
  text-align: center;
  margin-left: auto;
}




