.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  color: #ffffff55 !important;
  background: none !important;
}
.datepicker table tr td.day:hover {  
  background: var(--theme-red-hover) !important;
}
.datepicker table tr td.active {
  background-color: var(--theme-red) !important;
  background-image: none !important;
  color: #ffffff !important;
}
.datepicker thead tr:first-child th:hover, .datepicker tfoot tr:first-child th:hover { background: none !important; }
.datepicker.dropdown-menu {
  background-color: unset;
  color: white;
}
.datepicker.dropdown-menu:after {
  display: none !important;  
}
.datepicker .switch {
  pointer-events: none;
}
.datepicker th {
  font-weight: 400;
}
.icon-arrow-left:before {
  content: "\e909";
  transform: rotate(180deg);
  position: relative;
  display: block;
}
.icon-arrow-right:before {
  content: "\e909";
}

#start-order-modal {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: fixed;
  width: 100%;
  height: 100%;
  padding: 15px;
  background: rgba(0,0,0,0.3);
  z-index: 999;
  top: 0;
  left: 0;			
}
#start-order-modal > div {
  width: 650px;
  position: relative;
  height: 600px;
  max-width: 100%;
  background: linear-gradient(180deg, #82241aee, #d43b2dee);
  border-radius: 8px;
  box-shadow: 0 0 5px rgba(0,0,0,0.05);			
}
#start-order-modal > div > h3 {
  color: white;
  font-size:21px;
  font-weight: 400;
  padding: 10px;
  margin: 10px 15px;
  border-bottom: 1px solid rgba(255,255,255, .8);
}
#start-order-modal  div > button {
  background: none;
  border: 1px solid white;
  border-radius: 8px;
  color: white;
  margin-bottom: 10px;  
  padding: 2px 10px;
  font-size: 13px;
}
.dropdown-menu {
  border: none;
  box-shadow: none;
}
.datepicker-dropdown:before {
  visibility: hidden;
}
.close-btn-div {
  position: relative;
  top: 78%;
}
.datepicker td, .datepicker th {
  padding: 15px !important;
  font-size: 15px;
}
#start-order-modal input {
  z-index: 999;
  pointer-events: all;
  text-align: left;
  width: 375px;
  display: block;
  position: relative;
  top: 0;
  left:10px;
  margin: 0 auto;
  visibility: hidden;
}
@media screen and (max-width:480px){
  #start-order-modal > div {
    width: 650px;
    position: relative;
    height: 580px;
    max-width: 100%;
  }
  .close-btn-div {
    position: relative;
    top: 70%;
  }
  #start-order-modal input {
    width: calc(100% - 30px );
    left:3%;								
  }
  .datepicker td, .datepicker th {
    padding: 10px !important;
  }
}
@media screen and (max-width:350px){
  .datepicker td, .datepicker th {
    padding: 6px !important;
  }
}


#express-mode-modal,
#region-mode-modal,
#shop-selection-modal,
#address-selection-modal {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: fixed;
  width: 100%;
  height: 100%;
  padding: 15px;
  background: rgba(0,0,0,0.3);
  z-index: 999;
  top: 0;
  left: 0;			
}
#express-mode-modal > div,
#region-mode-modal > div,
#shop-selection-modal > div,
#address-selection-modal > div {
  width: 650px;
  position: relative;
  max-width: 100%;
  background: linear-gradient(180deg, #82241aee, #d43b2dee);
  border-radius: 8px;
  box-shadow: 0 0 5px rgba(0,0,0,0.05);	
}
#express-mode-modal > div > h3,
#region-mode-modal > div > h3,
#shop-selection-modal > div > h3,
#address-selection-modal > div > h3,
#address-selection-modal > div > h3 {
  color: white;
  font-size:21px;
  font-weight: 400;
  padding: 10px;
  margin: 10px 15px;
  border-bottom: 1px solid rgba(255,255,255, .8);
}
#express-mode-modal div > button,
#region-mode-modal div > button,
#shop-selection-modal div > button,
#address-selection-modal div > button {
  background: none;
  border: 1px solid white;
  border-radius: 8px;
  color: white;
  margin-bottom: 10px;  
  padding: 2px 10px;
  font-size: 13px;
}		
#express-mode-modal [class*="col-"],
#region-mode-modal [class*="col-"] {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  border: 1px solid #efefef99;  
  padding: 15px;
}
#express-mode-modal a,
#region-mode-modal a {
  width:100%;
  text-decoration: none;
  transition-duration: 0.3s;
}
#express-mode-modal a > h5,
#region-mode-modal a > h5 {
  font-size: 15px;
  font-weight: 600;
  background: #f5f5f5;
  margin: 5px 0;
  border-radius: 6px;
  color: black;
  padding: 8px;
  width: 100%;			
  text-decoration: none;
  text-transform: uppercase;	
  transition-duration: 0.3s;  
}
#express-mode-modal a:hover > h5,
#region-mode-modal a:hover > h5 {
  background: var(--theme-red);		
  color: white;
}
#express-mode-modal a > small ,
#region-mode-modal a > small {
  display: block;
  color: white;
  line-height: 1.2;
}
#express-mode-modal a > div,
#region-mode-modal a > div {
  font-size: 14px;			
}
@media screen and (max-width: 768px){
  #express-mode-modal a:hover > h5,
  #region-mode-modal a:hover > h5 {
    background: var(--theme-red);		
    color: white;
  }
}
@media screen and (max-width:480px){
  #express-mode-modal a > div,
  #region-mode-modal a > div {
    font-size: 12px;			
  }
  #express-mode-modal [class*="col-"]:last-child,
  #region-mode-modal [class*="col-"]:last-child {
    border-top: none;    
  }
}

#shop-selection-modal #shops-list-items,
#address-selection-modal #addresses-list-items {
  max-height: 60vh;
  overflow-y: auto;
  margin-right: 5px;
}
#shop-selection-modal .shop-item,
#address-selection-modal .address-item {
  border-radius: 6px;
  margin: 10px;
  padding: 10px;
  color: black;
  background: white;
  width: calc( 100% - 10px );
  display: block;
  text-align: center;
  font-size: 13px;
}

#addresses-list-items::-webkit-scrollbar {
  width: 8px;
  height: 8px;
  border-radius: 8px;
  overflow: hidden;
  margin-right: 5px;
}
#addresses-list-items::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 8px;
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
} 
#addresses-list-items::-webkit-scrollbar-thumb {
  background: var(--theme-red) !important;
  border-radius: 8px;
}
#addresses-list-items::-webkit-scrollbar-thumb:hover {
  background: var(--theme-red-hover) !important;
}
#addresses-list-items::-webkit-scrollbar {
  height: 1px;
}
#addresses-list-items::-webkit-scrollbar-thumb {
  background: #dadada;
}
#address-selection-modal #autocomplete {
  border-radius: 6px;
  border: none;
  margin: 0 15px 15px 15px;
  padding: 6px 15px;
  width: calc( 100% - 30px );
}
#address-selection-modal .button-address {
  background-color: var(--theme-red);
  color: white;
  border: none;
  font-size: 18px;
  padding: 5px 20px;
  box-shadow: 0 5px 2px -5px rgba(0,0,0,0.25);
  transition-duration: 0.3s;
}
  #address-selection-modal .button-address:hover {
    text-decoration: none;
    background-color: var(--theme-red-hover);
    color: white;
    border: none;
    font-size: 18px;
    padding: 5px 20px;
    box-shadow: 0 2px 2px -5px rgba(0,0,0,0.15);
  }

#address-selection-modal .new-address { padding: 0 10px; max-height: 70vh; }
#address-selection-modal .new-address * { font-size: 15px; color: white; font-weight: initial; }
#address-selection-modal .new-address form { max-height: 70vh; overflow-y: auto; padding: 0 5px; overflow-x: hidden; }
#address-selection-modal .new-address h5 { font-size: 18px; }
#address-selection-modal .new-address label { display: block; margin-top: 10px; }
#address-selection-modal .new-address input,
#address-selection-modal .new-address select {
  border-radius: 6px;
  border: none;
  margin: 0 15px 15px 15px;
  padding: 6px 15px;
  width: 100%;
  color: #333;
  margin: 0;
}
#address-selection-modal .new-address select option {
  color: #333;
}
#address-selection-modal .new-address #autocomplete {
  width: 100%;
  margin: 5px auto;
}