/*Calendriers*/
/* Style de base */
body.woocommerce-checkout .woocommerce-remove-coupon{
    display: none!important;
}
body.single-product .book-now-bouton-main,body.single-product .btn-book-float{
    top: 85vh!important;
}
body.single-product.blurload{
    opacity: 0.7;
}
.complementary-total {
    position: absolute;
    bottom: 7.5vh;
}
.complementary-total h4{
    color: #000;
    font-weight: 900;
    font-size: 1.5em;
}
div#season-price-container h4,div#complementary-season-price-container h4{
    color: #000!important;
}
.grand-total-container {
    position: fixed;
    right: 30vw;
    bottom: 27px;
    z-index: 99999;
    padding: 20px;
}
.complementary-product-price{
    line-height: 22px;
    border-top: solid 1px #fff;

}
.season-price-details h4,.complementary-product-price h5{
    font-size: 18px;
    font-weight: 900;
}
.complementary-total strong{
    font-size: 20px;
}
.complementary-product-price h5{
    text-transform: uppercase;
}
.complementary-product-price .product-total{
    font-size: 16px;
    font-weight: 700;
}
.product-quantity,.season-detail .season-name,.season-detail .woocommerce-Price-amount.amount,.season-detail .days-count,.season-detail .season-subtotal{
    font-size: 12px;
}
.main-reza-sys_container{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: start;
    align-items: center;
}
.reservation-calendars-wrapper > #reservation-submit{
    flex: 0 0 20%;
    display: none;
}

.ui-datepicker {
    font-size: 14px;
    padding: 10px;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* Dates disponibles */
.ui-datepicker .available-date a {
    background-color: #e8f5e9;
    color: #2e7d32;
    border: 1px solid #c8e6c9;
}

/* Date d'arrivée sélectionnée */
.ui-datepicker .selected-start-date a {
    background-color: #bbdefb !important;
    color: #0d47a1 !important;
    font-weight: bold;
}

/* Date d'arrivée désactivée dans le calendrier de départ */
.ui-datepicker .disabled-start-date a {
    background-color: #ffebee !important;
    color: #c62828 !important;
    text-decoration: line-through;
    cursor: not-allowed;
}

/* Survol des dates disponibles */
.ui-datepicker .available-date:hover a {
    background-color: #c8e6c9 !important;
    transform: scale(1.05);
    transition: all 0.2s;
}

/* Style des autres états */
.ui-datepicker .unavailable-date a {
    background-color: #ffebee !important;
    color: #c62828 !important;
    text-decoration: line-through;
    cursor: not-allowed;
}

.ui-datepicker .ui-state-disabled span {
    opacity: 0.5;
}
.reservation-capacity{
    flex: 0 0 15%;
}
/* Style de base */
/*#season-price-container {
    margin: 20px 0;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 4px;
}
*/
/* Messages d'état */
#season-price-container .loading {
    color: #666;
    font-style: italic;
}

#season-price-container .info {
    color: #0c5460;
    background-color: #d1ecf1;
    border-color: #bee5eb;
    padding: 10px;
    border-radius: 4px;
}

#season-price-container .error {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
    padding: 10px;
    border-radius: 4px;
}

/* Style du résumé */
.season-price-summary h4 {
    color: #155724;
    margin-top: 0;
}

.season-price-summary p {
    margin: 5px 0;
}

.total-price {
    font-size: 1.2em;
    font-weight: bold;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #dee2e6;
}

/* Style des dates indisponibles */
.unavailable-date a {
    color: #ccc !important;
    text-decoration: line-through;
    background: #f8f8f8 !important;
}

.disabled-start-date a {
    color: #999 !important;
    font-weight: bold;
}

#reservation-submit {
    margin-top: 20px;
    padding: 12px 24px;
    background-color: #4CAF50;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    width: 100%;
}

#reservation-submit:hover {
    background-color: #45a049;
}

#reservation-submit:disabled {
    background-color: #cccccc;
    cursor: not-allowed;
}
.reservation-capacity {
  display: flex;
  flex-direction: column;
  padding: 15px 0;
}
#reservation-capacity {
  width: 220px;
}

.divall {
  width: 100%;
  background: #fff;
  z-index: 9999999;
  position: fixed;
  bottom: 0 !important;
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
  left: 0;
  height: 249px;
}
.footer {
  z-index: 0 !important;
}
.season-total {
  display: flex;
  flex-direction: column;
}
.season-price-details {
  padding: 10px 0;
  height: 118px;
  overflow-y: auto;
  scrollbar-width: thin;
}
.season-total .total-price .prix_tot {
  display: flex;
  flex-direction: column;
}
.wrapperdivall {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: start;
}
.lst_season{
    flex-direction: column;
}
@media(max-width:768px){
    .wrapperdivall {
        flex-direction: column;
    }
}