/* Flatpickr Custom Theme - Comprehensive Fix */
.flatpickr-calendar{background:#fff;border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,0.1);border:1px solid #F5EBE0;font-family:'Inter',sans-serif;width:100%;max-width:350px;padding:12px;margin:0 auto}
.flatpickr-calendar.open{margin-top:2px}
.flatpickr-months{background-color:#fff;border-radius:8px 8px 0 0;padding:10px 0;text-align:center}
.flatpickr-month{color:#8D6E63;fill:#8D6E63;height:40px;position:relative}
.flatpickr-current-month{font-family:'Playfair Display',serif;font-weight:600;font-size:1.2rem;color:#8D6E63;padding:0 12px}
.flatpickr-monthDropdown-months,.numInput{font-family:'Playfair Display',serif;font-weight:600;font-size:1.2rem;color:#8D6E63;background-color:#fff;border:1px solid #F5EBE0;border-radius:6px;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:2px 8px;margin:0 4px}
.flatpickr-monthDropdown-months:hover,.numInput:hover{background-color:#F5EBE0}
.flatpickr-monthDropdown-months:focus,.numInput:focus{outline:none;border-color:#8D6E63}
.flatpickr-monthDropdown-month{background:#fff;border:1px solid #F5EBE0;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.1);padding:8px 0;margin-top:4px;max-height:200px;overflow-y:auto}
.flatpickr-monthDropdown-month::-webkit-scrollbar{width:6px}
.flatpickr-monthDropdown-month::-webkit-scrollbar-thumb{background:#8D6E63;border-radius:3px}
.numInputWrapper{position:relative;display:inline-block}
.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:none;background:transparent}
.numInputWrapper:hover span{opacity:1}
.numInputWrapper span:hover{background:#F5EBE0}
.numInputWrapper span:after{display:block;content:"";position:absolute;top:33%;right:0;width:0;height:0;border:4px solid transparent}
.numInputWrapper span.arrowUp{top:0;border-bottom:none}
.numInputWrapper span.arrowUp:after{border-bottom:4px solid #8D6E63;top:26%}
.numInputWrapper span.arrowDown{top:50%}
.numInputWrapper span.arrowDown:after{border-top:4px solid #8D6E63;top:40%}
.cur-month{color:#8D6E63!important}
.cur-month:after{border-top-color:#8D6E63!important}
.flatpickr-prev-month,.flatpickr-next-month{color:#8D6E63!important;fill:#8D6E63!important;padding:5px 10px;width:auto;height:auto;position:static;top:auto}
.flatpickr-prev-month:hover,.flatpickr-next-month:hover{color:#6B9080!important;fill:#6B9080!important;background:#F5EBE0;border-radius:4px}
.flatpickr-weekdays{background-color:#fff;padding:8px 0}
.flatpickr-weekday{color:#8D6E63;font-weight:600;font-size:.9rem;background:transparent}
.flatpickr-day{color:#5F4339;border-radius:8px;margin:2px;height:38px;line-height:38px;border:none;display:flex;align-items:center;justify-content:center}
.flatpickr-day:hover{background-color:#F5EBE0;border-color:#F5EBE0}
.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background-color:#8DA57A!important;border-color:#8DA57A!important;color:#fff!important}
.flatpickr-day.today{background-color:transparent!important;border:2px solid #8DA57A!important;color:#5F4339!important;font-weight:600!important}
.flatpickr-day.today.selected{background-color:#8DA57A!important;color:#fff!important}
.flatpickr-day.today:hover{background-color:rgba(141,165,122,0.2)!important;color:#5F4339!important}
.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{background-color:#f9f9f9;border-color:transparent;color:#bbb;cursor:not-allowed}
#bookingCalendar{display:flex;justify-content:center;width:100%}
.flatpickr-calendar:before,.flatpickr-calendar:after{display:none}
@media(max-width:640px){.flatpickr-calendar{max-width:300px;padding:8px;transform:scale(0.9);transform-origin:center top;margin:0 auto}.flatpickr-day{height:34px;line-height:34px;margin:1px;font-size:.9rem}.flatpickr-current-month,.flatpickr-monthDropdown-months,.numInput{font-size:1rem}.flatpickr-weekday{font-size:.8rem}}