.react-calendar{width:100%;background:#fff;border:1px solid #edf0f3;font-family:inherit;line-height:1.125em;border-radius:1rem;box-shadow:none}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover:not(.react-calendar__tile--active):not(.react-calendar__tile--now),.react-calendar button:enabled:focus:not(.react-calendar__tile--active):not(.react-calendar__tile--now){background-color:#f3f4f6}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em;border-bottom:none}.react-calendar__navigation button{min-width:30px;height:30px;margin:auto 2px;border-radius:9px;background:none;font-size:15px;font-weight:700;color:#111827}.react-calendar__navigation button:disabled{color:#c3c9d0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e9edf1}.react-calendar__navigation__label{font-weight:700!important;text-transform:capitalize}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font-weight:700;font-size:.7em;letter-spacing:.04em;color:#aab1b9}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekdays__weekday abbr{text-decoration:none;cursor:default}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#ef4444}.react-calendar__month-view__days__day--neighboringMonth{color:#9ca3af}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{position:relative;max-width:100%;padding:.75em .5em;background:none;text-align:center;line-height:16px;font-size:14px;font-weight:600;color:#111827;border-radius:11px;transition:all .18s ease}.react-calendar__tile:disabled{color:#c7ccd4;background-color:transparent;cursor:not-allowed}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#f1f5f9}.react-calendar__tile--now{background:#05966914;color:#047857;font-weight:700}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#05966924}.react-calendar__tile--hasActive{background:#059669;color:#fff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#047857}.react-calendar__tile--active{background:#059669;color:#fff;font-weight:700}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#047857}.occupancy-limited-day:not(.react-calendar__tile--active){background-color:#f59e0b14}.occupancy-full-day:not(.react-calendar__tile--active){background-color:#ef44440f}.has-sleepover:not(.react-calendar__tile--active){background-color:#8b5cf60f}.calendar-tile-content{display:flex;flex-direction:column;align-items:center;gap:2px}.occupancy-indicator{width:60%;height:3px;border-radius:1.5px;margin-top:2px}.occupancy-available{background-color:#10b981}.occupancy-limited{background-color:#f59e0b}.occupancy-full{background-color:#ef4444}.occupancy-unavailable{background-color:#d1d5db}.sleepover-indicator{position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background-color:#8b5cf6}.calendar-legend{display:flex;flex-wrap:wrap;gap:14px 18px;margin-top:14px;padding:12px 14px;background-color:#f8fafc;border-radius:12px;font-size:.75rem}.legend-item{display:flex;align-items:center;gap:7px;color:#6b7280;font-weight:500}.legend-color{width:14px;height:3px;border-radius:2px}.legend-dot{width:6px;height:6px;border-radius:50%}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{animation:shimmer 1.5s infinite}
