.calendar{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;padding-bottom:1rem;gap:.5rem;-webkit-user-select:none;-ms-user-select:none;user-select:none}.calendar .next-month-container{display:flex;justify-content:flex-end}.calendar .day-of-week,.calendar .month-name{text-transform:uppercase}.calendar .month-name{grid-column:2/7;text-align:center}.calendar .time-slideout{display:none;grid-column:1/8;padding:.5rem 0}.calendar .time-container{flex-wrap:wrap;justify-content:center;gap:.5rem .75rem;display:flex}.calendar .time-container .event-btn{display:flex;flex-direction:row;border-radius:.325rem}.calendar .time-container .button{display:flex;flex-direction:column;position:relative;justify-content:center;font-size:1rem;padding:1rem 1.4rem;line-height:1rem;-webkit-user-select:none;-ms-user-select:none;user-select:none}.calendar .time-container .button .availability{font-size:.8rem;font-weight:600;margin-top:.25rem}.calendar .button{min-width:inherit}.calendar .next-month,.calendar .previous-month{font-size:1.25rem;padding:0;border-radius:.325rem;height:2.75rem;width:2.75rem;display:flex;justify-content:center;align-items:center;cursor:pointer}.calendar .next-month.disabled,.calendar .previous-month.disabled{pointer-events:none;opacity:.3}.calendar .month-name{display:flex;justify-content:center;align-items:center;font-weight:900!important;font-size:1.5rem}.calendar .day-of-week{height:3.75rem;text-transform:uppercase;border-radius:.325rem;width:100%;height:100%;font-size:1.1rem;font-weight:900}.calendar .day{position:relative;border-radius:.325rem;width:100%;height:3.25rem;font-size:1.5rem;font-weight:600;color:#fff;display:flex;justify-content:center;align-items:center;padding:0}.calendar .day.performance .availability-indicator-container{position:absolute;right:.25rem;top:.25rem;display:none}.calendar .day.performance .availability-indicator-container .availability-indicator{width:.45rem;height:.45rem}.calendar .time-container .availability-indicator-container{position:absolute;right:.4rem;top:.4rem}.calendar .time-container .availability-indicator-container .availability-indicator{width:.55rem;height:.55rem}.availability-key{display:flex;flex-direction:column;align-items:center;padding-bottom:1rem}.availability-key>div{display:flex;flex-direction:column;gap:.33rem}.availability-key div.item{display:flex;align-items:center;gap:.475rem}.availability-key .availability-indicator{width:1rem;height:1rem}.availability-indicator{border-radius:100%;box-shadow:0 0 0 1px rgba(0,0,0,.75),0 5px 6px -1px rgba(0,0,0,.65),inset 0 1px 0 hsla(0,0%,100%,.08);display:none}.availability-indicator.good{background-color:#0b0;display:block!important}.availability-indicator.limited{background-color:#b00;display:block!important}.availability-indicator.sold-out{background-color:#b2b2b2;display:block!important}.calendar .day.performance{cursor:pointer}.calendar .day.performance.selected{box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.23);text-shadow:0 4px 3px rgba(0,0,0,.5),0 8px 13px rgba(0,0,0,.2),0 18px 23px rgba(0,0,0,.2);font-size:1.9rem}.calendar .day.empty{background-color:transparent}@media screen and (min-width:40rem){.calendar .time-container .button{font-size:1.25rem;padding:1.1rem 1.5rem}.calendar .next-month,.calendar .previous-month{height:2.95rem;width:2.95rem}.calendar .month-name{font-size:1.75rem}.calendar .day{height:4.75rem;font-size:2.2rem}.calendar .day-of-week{font-size:1.3rem}.calendar .day.performance .availability-indicator-container{right:.375rem;top:.375rem}.calendar .day.performance .availability-indicator-container .availability-indicator{width:.575rem;height:.575rem}.calendar .time-container .availability-indicator-container{right:.425rem;top:.425rem}.calendar .time-container .availability-indicator-container .availability-indicator{width:.65rem;height:.65rem}.calendar .day.performance.selected{font-size:3.25rem}.availability-key>div{flex-direction:row;gap:2rem}}@media screen and (min-width:60rem){.calendar .time-container .button{padding:1.3rem 1.7rem}.calendar .next-month,.calendar .previous-month{height:3.125rem;width:3.125rem}.calendar .month-name{font-size:2rem}.calendar .day{height:6.25rem;font-size:2.625rem}.calendar .day-of-week{font-size:1.5rem}.calendar .day.performance .availability-indicator-container{right:.5rem;top:.5rem;display:none}.calendar .day.performance .availability-indicator-container .availability-indicator{width:.75rem;height:.75rem}.calendar .time-container .availability-indicator-container{right:.5rem;top:.5rem}.calendar .time-container .availability-indicator-container .availability-indicator{width:.75rem;height:.75rem}.calendar .day.performance.selected{font-size:4.5rem}.availability-key>div{gap:3rem}}