/* Day navigation container */

body * {
    font-family: zohopuvi-regular;
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none;    /* Firefox */
    -ms-user-select: none;     /* Internet Explorer/Edge */
    user-select: none;         /* Standard syntax */
}

.day-navigation {
    display: grid;
    grid-auto-flow: column;
    overflow: hidden;
    -webkit-transition: margin ease .3s;
    -moz-transition: margin ease .3s;
    transition: margin ease .3s;
    grid-gap: 9px;
    padding: 5px 4px;
    text-transform: uppercase;
  }
  
  /* Navigation arrow buttons */
  .nav-arrow {
    background-color: transparent;
    border: none;
    font-size: 20px;
    cursor: pointer;
  }
  
  /* Day buttons container */
  .day-buttons {
    display: flex;
    flex: 1;
    justify-content: space-around;
  }
  
  /* Individual day button */
.date-button {
    padding: 14px 0;
    text-align:center;
    border: 1px solid transparent;
    -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.1);
    -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.1);
    box-shadow: 0 0 6px 0 rgba(0,0,0,.1);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    opacity: 1;
  }
  
  .date-button.selected {
    background-color: #50487F;
    border-color: #50487F;
    color: #FFFFFF;
  }
  
  .date-button.today {
    background-color: white;
    color: #ff4081;
    font-weight: bold;
  }
  
  .date-button.today.selected {
    background-color: #50487F;
    border-color: #50487F;
    color: #FFFFFF;
  }
  
  .date-button:hover:not(.selected):not(.today) {
    background-color: #ddd;
  }
  
  .pastDate {
    pointer-events: none;
    cursor: default;
    color: #b6b3b3;
  }
  
  .slot{
    position: relative;
  }
  
  .green{
    color: #06610c;
  }
  
  .aboveBtn {
    position:absolute;
    top:-25px;
    right:0; 
    width:100%;
    font-weight: bold;
  }

  .aboveBtn span {
    text-decoration: line-through;
    margin-right: 5px;
  }
  
  .cdp-weekname {
    font-size: 10px;
  }
  
  /* Time slot container */
  .time-slots {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  button.time-slot.pending {
    color: goldenrod;
    border: 1px solid goldenrod;
}
  
  /* Time slot period header */
  .time-slot-period {
    width: 100%;
    text-align: center;
    margin-top: 20px;
    font-weight: bold;
  }
  
  /* Time slot row */
  .time-slot-row {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(77px,1fr));
    grid-auto-flow: row dense;
    grid-gap: 15px;
    width: 100%;
    margin-top:15px;
  }
  
  .enTime{
  	display: none;
  }
  
  /* Individual time slot button */
  .time-slot {
    padding: 10px;
    margin: 10px 0;
    border: 1px solid #6ac199;
    background: #fff;
    width: auto;
    text-align: center;
    font-size: 11px;
    cursor: pointer;
    -webkit-transition: all ease .3s;
    -moz-transition: all ease .3s;
    transition: all ease .3s;
    white-space: nowrap;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    border-color: lightgreen;
    color: green;
  }
  
  .time-slot.past {
    cursor: not-allowed;
    border: 1px solid #ccc;
    color: #CCC;
  }

  .time-slot.blocked{
    cursor: not-allowed;
  }

  .time-slot.booked {
    cursor: not-allowed;
    background-color: lightgray;
    border-color: lightgray;
    color: grey;
  }
  
  .time-slot:hover:not(.past), .time-slot:hover:not(.time-slot.selected) {
    background-color: #ddd;
  }
  
  /* Modal styles */
  #bookingModal {
    display: none; /* Hidden by default */
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  }
  
  #bookingModal .modal-content {
    background-color: #fefefe;
    margin: 15% auto; /* 15% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 80%; /* Could be more or less, depending on screen size */
  }
  
  .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
  }
  
  .close:hover,
  .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }
  
  /* Media Queries for Responsiveness */
  /*
  @media (max-width: 1200px) {
    .time-slot {
      width: calc(33.333% - 10px); 
    }
  }
  
  @media (max-width: 768px) {
    .day-navigation {
      flex-direction: column;
      align-items: flex-start;
    }
  
    .date-button {
      padding: 8px 10px;
      font-size: 12px;
    }
  
    .time-slot {
      width: calc(50% - 10px); 
    }
  }
  
  @media (max-width: 480px) {
    .day-navigation {
      flex-direction: column;
      align-items: flex-start;
    }
  
    .date-button {
      padding: 6px 8px;
      font-size: 10px;
    }
  
    .time-slot {
      width: calc(100% - 10px); 
    }
  }*/

  .no-slots {
    grid-column: 1 / -1;
    color: #50487F;
    text-align: center;
    font-size: 11px;
}


  button#bookSlotsButton::after {
    content: " >>";
    vertical-align: text-top;
  }

  #bookSlotsButton {
    background-color: red;
    position: fixed;
    bottom: 0;
    left: 0;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    opacity: 0.9;
    width: 100%;
}
   
  .limit {
    text-align: center;
    font-weight: bold;
  }

  div#cartTotal {
    text-align: right;
    margin-right: 15px;
  }

  .time-slot.selected {
    /* cursor: not-allowed; */
    border: 1px solid #f26c6c;
    color: #f26c6c;
  }
  
  .time-slot.paid {
    /* cursor: not-allowed; 
    border: 1px solid #f26c6c;
    color: #f26c6c;*/
  }

  .time-slot.paid .slot .aboveBtn {
    left: -5px;
}
  

  .time-slot.selected .selected-text {
    color: #f26c6c;
  }

  .modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
  }
  
  .modal-content {
    background-color: white;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    max-width: 600px;
  }
  
  .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
  }
  
  .close:hover,
  .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }

  div#cartIcon::after {
    content: "View Selected";
  }
  
  .cart-icon {
    position: fixed;
    right: 0%;
    top: 56%;
    cursor: pointer;
    font-size: 24px;
    color: #FFF;
    text-align: left;
    border: 1px solid grey;
    width: 25%;
    padding: 5px 0 5px 10px;
    background: red;
    opacity: 0.8;
    font-size: inherit;

    z-index: 10000;
}
  .cart-item {
    display: flex;
    justify-content: space-between;
    padding: 10px;
    border-bottom: 1px solid #ddd;
  }
  
  .remove-slot {
    background-color: red;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
  }
  
  .remove-slot:hover {
    background-color: darkred;
  }

  #cartList {
    border-collapse: collapse;
    width: 100%;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
  }
  #cartList .cart-item {
  }
  #cartList .cart-item > div {
    display: table-cell;
    padding: 8px;
    border: 1px solid #ccc;
  }
  #cartList .remove-slot {
    background-color: #f44336;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 4px;
    display: inline-block;
    font-size: 14px;
    margin-left: 10px;
  }
  #cartList .remove-slot::before {
    content: "\2716"; /* Unicode character for 'delete' icon */
    margin-right: 5px;
  }











  