.availability-wrap{max-width:980px}.legend{display:flex;gap:25px;flex-wrap:wrap;margin:0 0 30px}.legend span{display:flex;align-items:center;gap:8px;font-weight:800}.legend i{width:18px;height:18px;border-radius:50%;display:block}.legend .available{background:#238636}.legend .unavailable{background:#c62828}.month-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.month-heading h2{text-align:center;margin:0}.month-heading button{width:50px;min-height:48px;border:2px solid var(--ink);background:var(--yellow);font-size:2rem;cursor:pointer}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekday-row{text-align:center;margin-bottom:8px}.weekday-row b{padding:8px;font-size:.85rem}.day{min-height:96px;border:0;padding:10px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;color:white}.day span{font-family:Georgia,serif;font-size:1.8rem;font-weight:800}.day small{font-size:.72rem;font-weight:800}.day.is-available{background:#238636}.day.is-unavailable{background:#c62828}.admin-link{align-self:center;font-weight:800}@media(max-width:680px){.calendar-grid{gap:4px}.day{min-height:70px;padding:7px}.day span{font-size:1.25rem}.day small{font-size:.56rem}.weekday-row b{font-size:.7rem;padding:4px}}
