.date-range-picker {
    text-align: center;
}

.date-range-picker button {
    margin: 5px;
    padding: 10px 20px;
    background-color: #444;
    border: none;
    color: white;
    cursor: pointer;
}

.date-range-picker button:hover {
    background-color: #555;
}

/* Modal styles */
#custom-datepicker-calendar {
    position: fixed;
    top: 0;
    right: -600px;
    width: 600px;
    height: 100%;
    background: #fff;
    color: #000;
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    transition: right 0.3s ease;
    padding: 20px;
    overflow-y: auto;
}
.cal-heading-wrp {
    margin-bottom: 30px;
}
.cal-heading-wrp {
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.cal-heading-wrp .cal-heading {
    font-size: 24px;
    line-height: 1.3;
    font-weight: 600;
    color: #000;
}
.cal-heading-wrp #close_calendar {
    background: transparent;
    color: #000;
    border: 0;
    padding: 0;
    font-size: 40px;
}
.calendar-header button, .calendar-header button#custom-datepicker-calendar-reset:hover {
    background: transparent !important;
    color: #0a48a1 !important;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.3;
    border-radius: 50px;
    padding: 10px 25px;
    border: 2px solid #0a48a1;
}
.calendar-header button:hover,
.calendar-header button:focus,
.calendar-header button#custom-datepicker-calendar-reset {
    background: #000 !important;
    color: #fff !important;
}
.calendar-table h3 {
    color: #0a48a1 !important;
    letter-spacing: 0 !important;
}
.calendar-table td.selected.start,
.calendar-table td:hover {
    background: #0a48a1 !important;
    color: #fff;
}



/* Responsive Calendar Modal */
@media (max-width: 768px) {
    #custom-datepicker-calendar {
        width: 100%; /* Full width for mobile/tablet */
        right: -100%;
    }
}

/* Responsive Date Input */
.date-input {
    margin: 10px 0;
    padding: 10px;
    width: 100%; /* Full width for smaller screens */
    max-width: 150px; /* Restrict max width */
    border: 1px solid #444;
    background: #222;
    color: white;
    text-align: center;
    cursor: pointer;
}

.date-input.selected {
    background-color: #555; /* Highlight for selected input */
}


/* Close button */
/* .close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    background: red;
    color: white;
    border: none;
    cursor: pointer;
    padding: 5px;
} */

/* Responsive table layout */
.calendar-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
    display: inline-block; /* Aligns the two months side by side */
    vertical-align: top;
}


/* Responsive Calendar Headers */
.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

/* Adjust calendar layout for smaller screens */
@media (max-width: 768px) {
    /* .calendar-header {
        flex-direction: column;
    } */
    .calendar-table {
        width: 100%; /* Full width for mobile */
    }
    .calendar-header button {
        font-weight: 500;
        font-size: 14px;
        padding: 10px 25px;
    }
}
.calendar-table th, .calendar-table td {
    padding: 10px;
    text-align: center;
    border: 0px solid #eae6e6;
}
.calendar-table td.disabled {
    text-decoration: line-through; /* Apply line-through for disabled dates */
    color: gray; /* Optional: change the color to indicate disabled state */
    pointer-events: none; /* Prevent interaction with disabled dates */
}
.calendar-table th {
    background: #fff;
    border: 0 !important;
}
.calendar-table td {
    cursor: pointer;
    transition: background 0.3s; /* Smooth transition for hover */
}

/* Ensure selected start date has a specific background */
.calendar-table td.range.selected {
    background: #0a48a1 !important;
    color: #fff;
}
.calendar-table td.range.disabled {
    background: rgba(10, 73, 161, 0.62) !important;
    transition: background 0.3s;
    animation: highlight 0.5s;
    color: #fff !important;
}
.calendar-table td.range {
    background: rgba(10, 73, 161, 0.62) !important; /* Adjusted for better visibility */
    transition: background 0.3s; /* Smooth transition for range */
    animation: highlight 0.5s; /* Animation for the range selection */
    color: #fff;
}

.calendar-table td.disabled {
    background: #f2f2f2 !important;
    cursor: not-allowed;
    color: #777 !important;
}
.calendar-table td:hover:not(.disabled) {
    background: #555;
}

/* Adjust table structure for mobile */
@media (max-width: 768px) {
    .calendar-table {
        display: block; /* Stack calendars vertically on mobile */
        margin-bottom: 20px;
    }
}

/* Animation for range selection */
@keyframes highlight {
    0% { background: rgba(255, 165, 0, 0.5); }
    100% { background: rgba(255, 165, 0, 0.8); }
}

/* Hover effect for range selection */
.calendar-table td.range:hover {
    background: rgba(10, 73, 161, 0.8); /* Darker color on hover */
}

/* New Styles for Range Hover Effect */
.calendar-table td.range:hover {
    animation: pulse 0.5s infinite alternate; /* Pulsing animation on hover */
}

/* Animation for pulsing effect */
@keyframes pulse {
    0% {
        background-color: rgba(10, 73, 161, 0.8); /* Slightly darker */
    }
    100% {
        background-color: rgba(10, 73, 161, 1); /* Fully solid */
    }
}

/* Additional styles to ensure selected start date remains prominent */
.calendar-table td.selected:hover {
    background: #0a48a1; /* Keep the same background on hover for selected */
}
