.am-calendar {
    background-color: #fff;
    padding-top: 10px
}

.am-calendar-months {
    display: flex;
    box-sizing: border-box;
    padding: 0 26px;
    align-items: center;
    height: 28px
}

.am-calendar-next-month,
.am-calendar-prev-month {
    display: flex;
    width: 40px;
    font-size: 20px
}

.am-calendar-prev-month {
    justify-content: flex-start
}

.am-calendar-next-month {
    justify-content: flex-end
}

.am-calendar-arrow {
    height: 28px;
    width: 12px;
    background-image: url(https://gw.alipayobjects.com/zos/rmsportal/vYcMhkfyHRIOeVXWdcPe.png);
    background-size: 8px 14px;
    background-position: left center;
    background-repeat: no-repeat
}

.am-calendar-arrow.next {
    transform: rotate(180deg)
}

.am-calendar-selected-month {
    flex: 1;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    color: #333
}

.am-calendar-days {
    display: flex;
    padding: 14px 10px 9px;
    border-bottom: 0.05rem solid #eee;
    height: 20px;
    line-height: 20px;
    box-sizing: content-box
}

.am-calendar-day {
    flex: 1;
    text-align: center;
    color: #333;
    font-size: 14px
}

.am-calendar-dates {
    display: flex;
    flex-direction: column
}

.am-calendar-week {
    margin-bottom: 17px;
    display: flex;
    flex-direction: row;
    padding: 0 10px
}

.am-calendar-week:first-child {
    margin-top: 12px
}

.am-calendar-date-wrap {
    position: relative;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 55px;
    flex: 1
}

.am-calendar-date {
    text-align: center;
    font-size: 19px;
    font-family: Helvetica;
    color: #333
}
.am-calendar-price, .am-calendar-text {
    font-size: 10px;
}
.am-calendar-text-active {
    visibility: hidden;
}

.am-calendar-tag {
    position: absolute;
    top: 21px;
    width: 42px;
    overflow: hidden;
    text-overflow: hidden;
    white-space: nowrap;
    color: #f5a623;
    font-size: 10px;
    font-weight: 500
}

.am-calendar-today {
    color: #38B43C
}

.am-calendar-gray {
    color: #ccc
}

.am-calendar-selected .am-calendar-block {
    position: absolute;
    left: calc(50% - 21px);
    top: calc(50% - 5px);
    transform: translateY(-50%);
    width: 42px;
    height: 55px;
    background: #38B43C;
    border-radius: 2px
}

.am-calendar-middle.is-range .am-calendar-block {
    position: absolute;
    left: 0;
    top: calc(50% - 5px);
    transform: translateY(-50%);
    height: 55px;
    background: #38B43C;
    width: 100%;
    border-radius: 0
}

.am-calendar-start.is-range .am-calendar-block {
    position: absolute;
    left: calc(50% - 21px);
    top: calc(50% - 5px);
    transform: translateY(-50%);
    width: 100%;
    height: 55px;
    background: #38B43C;
    border-radius: 2px 0 0 2px
}

.am-calendar-end.is-range .am-calendar-block {
    position: absolute;
    left: 0;
    top: calc(50% - 5px);
    transform: translateY(-50%);
    width: calc(50% + 21px);
    height: 55px;
    background: #38B43C;
    border-radius: 0 2px 2px 0
}

.am-calendar-end .am-calendar-block.has-tag,
.am-calendar-middle .am-calendar-block.has-tag,
.am-calendar-selected .am-calendar-block.has-tag,
.am-calendar-start .am-calendar-block.has-tag {
    top: calc(50% - 7px)
}

.am-calendar-end .am-calendar-date,
.am-calendar-middle .am-calendar-date,
.am-calendar-selected .am-calendar-date,
.am-calendar-start .am-calendar-date {
    position: relative;
    color: #fff
}

.am-calendar-end .am-calendar-tag,
.am-calendar-middle .am-calendar-tag,
.am-calendar-selected .am-calendar-tag,
.am-calendar-start .am-calendar-tag {
    color: #fff
}

.am-calendar-disable .am-calendar-date {
    color: #999
}