/* Datepicker Wrapper Styles */
.moo-datepicker-wrapper {
    display: flex; /* Use flexbox for layout */
    align-items: center; /* Vertically align items in the center */
    margin-bottom: 20px;
    width: 100%;
    height: 40px; /* Removed !important, manage height via input/icon */
    box-sizing: border-box;
    position: relative; /* Keep for tooltip positioning if still needed */
    flex-wrap: nowrap; /* Prevent items from wrapping to the next line */
}

/* Ensure the wrapper keeps input then icon order in RTL */
body.rtl .moo-datepicker-wrapper {
    flex-direction: row !important; 
}



/* Datepicker Input Field Styles */
.moo-datepicker {
    width: 100%;
    flex-grow: 1; /* Input takes available space */
    padding: 10px;
    font-size: 16px;
    font-weight: 500;
    border: 1px solid #ddd !important;
    border-radius: 5px !important; /* Rounded corners on all sides */
    background-color: #fff;
    box-sizing: border-box;
    height: 100%; /* Match wrapper height */
    cursor: pointer; /* Add pointer cursor */
    text-align: center;
}


input#moo_datepicker::placeholder {
 
    font-family: 'IBM Plex Sans Arabic', sans-serif !important; /* تغيير الخط */
    font-size: 14px; /* تغيير الحجم */
    text-align: center; /* تغيير المحاذاة إذا كنت تريد */
    font-weight: bold;
}

/* Style for the placeholder text */
.moo-datepicker::-webkit-input-placeholder { /* Chrome, Opera, Safari, Edge */
    font-family: 'IBM Sans Arabic', sans-serif;
}
.moo-datepicker::-moz-placeholder { /* Firefox 19+ */
    font-family: 'IBM Sans Arabic', sans-serif;
    opacity: 1; /* Firefox adds a lower opacity by default */
}
.moo-datepicker:-ms-input-placeholder { /* Internet Explorer 10-11 */
    font-family: 'IBM Sans Arabic', sans-serif;
}
.moo-datepicker::placeholder { /* Standard */
    font-family: 'IBM Sans Arabic', sans-serif;
}

/* Style for the icon container */
.moo-datepicker-icon {
    display: none; /* Hide the icon */
    flex-shrink: 0; /* Prevent icon from shrinking */
    width: 50px;    /* Fixed width for the icon container */
    height: 100%;   /* Match wrapper height */
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent; /* No background */
    border: none; /* Remove border from icon container */
    border-radius: 5px; /* Keep for consistency if a background were ever added, but not visible without border/bg */
    box-sizing: border-box;
    cursor: pointer; /* Add pointer cursor */
    color: #004B4B; /* Icon color */
    
}



.moo-datepicker-icon svg {
    width: 30px; /* Adjust icon size as needed */
    height: 30px;
}

/* Adjust input focus style to not overlap icon */
.moo-datepicker:focus {
    outline: none; /* Removes the default browser outline */
    /* The border-color and box-shadow that created the blue effect are removed. */
    /* The border will remain as defined in the .moo-datepicker rule (1px solid #ccc) */
}

/* Ensure Flatpickr calendar is above other elements if needed */
.flatpickr-calendar {
    z-index: 1000 !important; /* High z-index for Flatpickr */
}


.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay {
    background: #004B4B;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    border-color: #004B4B;
}

span.flatpickr-weekday {
    font-weight: 200;
    color: #004B4B;
    
}

/* Default styling for individual days */
.flatpickr-day {
    background: #fff; /* white background */
    border-radius: 50%; /* makes the border circular */
    color: #333; /* dark font color */
    transition: all 0.3s ease; /* smooth transition on hover */
}

.flatpickr-day.today {
    border-color: #004B4B;
}

.flatpickr-day:hover {
    background: #004B4B;
    color: white; /* optional: change number color to white on hover */
}

.flatpickr-day.today:hover {
    background: #004B4B;
}



.moo-tooltip {
    position: absolute;
    bottom: 100%; /* position it above the field */
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    border: #ccc;
    box-sizing: border-box;
    color: #004B4B;
    padding: 10px 20px;
    font-family: 'IBM Plex Sans Arabic', sans-serif;
    font-size: 15px;
    font-weight: 500;
    border-radius: 6px;
    white-space: nowrap;
    z-index: 999;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    animation: fadeIn 0.3s ease;
}

.moo-tooltip::after {
    content: '';
    position: absolute;
    top: 100%; /* arrow at the bottom of the bubble */
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translate(-50%, -5px); }
    to { opacity: 1; transform: translate(-50%, 0); }
}

.moo-datepicker-wrapper.moo-range-picker {
    flex-direction: column;
    height: auto;
    align-items: stretch;
}

/* RTL override for range picker */
body.rtl .moo-datepicker-wrapper.moo-range-picker {
    flex-direction: column !important;
}

.moo-datepicker-labels {
    font-family: inherit;
}

.moo-datepicker-labels span {
    font-weight: bold;
    color: #004B4B;
}

#moo-nights-label-container {
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    padding-left: 15px;
    padding-right: 15px;
    align-self: stretch; /* To make border full height */
    display: flex; /* To center content vertically */
    flex-direction: column;
    justify-content: center;
}

/* Summary Container Styles */
#moo-summary-container {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 10px;
    box-sizing: border-box;
}



.summary-row-1 {
     display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
}

.summary-row-2 {
     display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    padding-bottom: 10px;
    
}

.summary-nights,
.summary-arrival {
    text-align: left;
}

.summary-departure {
    text-align: right;
}

#summary-nights-count {
    font-weight: bold;
    font-size: 1.1em;
}

#moo-edit-dates-btn {
    background: none !important;
    border: none !important;
    color: #757575 !important; /* Light gray */
    box-shadow: none !important;
    padding: 0 !important;
    font-size: 0.9em;
    text-decoration: underline;
    font-family: 'IBM Plex Sans Arabic', sans-serif;
}

/* === Price Container Styles === */
#moo-price-container {
    display: flex;
    align-items: baseline; /* Aligns text nicely */
    gap: 10px; /* Space between elements */
    flex-wrap: wrap; /* Allow wrapping on small screens */
    padding: 10px;
    border: 1px solid #eee;
    border-radius: 5px;
    background-color: #f9f9f9;
}

.moo-price-label {
    font-size: 1em;
    font-weight: bold;
    color: #333;
}

.moo-price-value {
    font-size: 1.4em;
    font-weight: bold;
    color: #004B4B;
}

.moo-price-nights {
    font-size: 0.9em;
    color: #757575;
}

#moo-price-container .error {
    color: #d9534f;
    font-weight: bold;
}

/* === Custom Style for Fully Booked Dates === */
.flatpickr-day.moo-fully-booked,
.flatpickr-day.moo-fully-booked:hover {
    background: #ffcdd2 !important; /* Light Red */
    color: #b71c1c !important;      /* Darker Red Text */
    cursor: not-allowed !important;
    border-color: transparent !important;
}

/* Custom styling for SVG currency symbol */
.moo-price-value svg {
    display: inline-block;
    vertical-align: middle; /* Adjust as needed: top, bottom, text-top, text-bottom */
    margin-left: 0.2em; /* Space between number and symbol */
   /* margin-right: 0.2em; /* Space between number and symbol */
}