/* #ifdef harmony */
/* #endif */
/* #ifndef harmony */
/* #endif */
.nut-calendar {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  font-size: var(--nutui-calendar-base-font-size, var(--nutui-font-text-large));
  background-color: var(--nutui-color-surface-2);
  color: var(--nutui-color-title);
  overflow: hidden;
  height: 100%;
}
.nut-calendar.nut-calendar-title .nut-calendar-header .calendar-title {
  font-size: var(--nutui-calendar-base-font-size, var(--nutui-font-text-large));
}
.nut-calendar .nut-calendar-taro {
  height: 60vh;
}
.nut-calendar .popup-box {
  height: 100%;
}
.nut-calendar ::-webkit-scrollbar {
  display: none;
}
.nut-calendar-header {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.nut-calendar-header-buttons {
  height: var(--nutui-calendar-header-height, 24px);
}
.nut-calendar-title {
  color: var(--nutui-color-title);
  font-size: var(--nutui-calendar-title-font-size, var(--nutui-font-h2));
  font-weight: var(--nutui-calendar-title-font-weight, var(--nutui-font-weight-bold));
  line-height: 50px;
}
.nut-calendar-sub-title {
  padding: 7px 0;
  line-height: 22px;
  font-size: var(--nutui-calendar-sub-title-font-size, var(--nutui-font-text));
}
.nut-calendar-weeks {
  display: flex;
  align-items: center;
  justify-content: space-around;
  height: 36px;
  border-radius: 0px 0px 12px 12px;
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.06);
}
.nut-calendar-week-item:first-of-type, .nut-calendar-week-item:last-of-type {
  color: var(--nutui-color-primary, #ff6666);
}
.nut-calendar-content {
  flex: 1;
  width: 100%;
  display: block;
  overflow-y: auto;
}
.nut-calendar-pannel {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
  box-sizing: border-box;
}
.nut-calendar-pannel .calendar-loading-tip {
  height: 50px;
  line-height: 50px;
  text-align: center;
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  font-size: var(--nutui-font-text-small);
  color: var(--nutui-color-text);
}
.nut-calendar-month {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.nut-calendar-month-title {
  height: 23px;
  line-height: 23px;
  margin: 8px 0;
}
.nut-calendar-days {
  overflow: hidden;
}
.nut-calendar-day {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  float: left;
  width: var(--nutui-calendar-day-width, 14.28%);
  height: var(--nutui-calendar-day-height, 60px);
  font-weight: var(--nutui-calendar-day-font-weight, var(--nutui-font-weight-bold));
  margin-bottom: 4px;
}
.nut-calendar-day:nth-child(7n+0), .nut-calendar-day:nth-child(7n+1) {
  color: var(--nutui-color-primary, #ff6666);
}
.nut-calendar-day-info, .nut-calendar-day-info-curr {
  position: absolute;
  bottom: 5px;
  width: 100%;
  font-size: 12px;
  line-height: 14px;
}
.nut-calendar-day-info-top {
  position: absolute;
  width: 100%;
  top: 5px;
}
.nut-calendar-day-info-bottom {
  position: absolute;
  width: 100%;
  bottom: 5px;
}
.nut-calendar-day-active {
  background-color: var(--nutui-calendar-active-background-color, var(--nutui-color-primary, #ff6666));
  color: var(--nutui-color-text-dark) !important;
  border-radius: var(--nutui-calendar-day-active-border-radius, 4px);
}
.nut-calendar-day-active.active-start {
  border-radius: 0px;
  border-top-left-radius: var(--nutui-calendar-day-active-border-radius, 4px);
  border-bottom-left-radius: var(--nutui-calendar-day-active-border-radius, 4px);
}
.nut-calendar-day-active.active-end {
  border-radius: 0px;
  border-top-right-radius: var(--nutui-calendar-day-active-border-radius, 4px);
  border-bottom-right-radius: var(--nutui-calendar-day-active-border-radius, 4px);
}
.nut-calendar-day-active .nut-calendar-day-info {
  color: var(--nutui-color-text-dark);
}
.nut-calendar-day-disabled {
  color: var(--nutui-calendar-disable-color, var(--nutui-color-text-disabled)) !important;
}
.nut-calendar-day-disabled .nut-calendar-day-info-curr {
  display: none;
}
.nut-calendar-day-choose {
  background-color: var(--nutui-calendar-choose-background-color, var(--nutui-color-primary-light, #ffe5e5));
  color: var(--nutui-calendar-choose-color, var(--nutui-color-primary, #ff6666));
}
.nut-calendar-day-choose-disabled {
  background-color: var(--nutui-calendar-choose-disable-background-color, rgba(191, 191, 191, 0.09));
  color: var(--nutui-calendar-disable-color, var(--nutui-color-text-disabled)) !important;
}
.nut-calendar-day-choose-disabled .nut-calendar-day-info-curr {
  display: none;
}
.nut-calendar-footer {
  display: flex;
  width: 100%;
  flex-direction: column;
  background-color: #ffffff;
}
.nut-calendar-footer .calendar-confirm-btn {
  height: 40px;
  line-height: 40px;
  margin: 6px 16px;
  text-align: center;
  border-radius: var(--nutui-radius-base);
  background: var(--nutui-color-primary, #ff6666);
  color: var(--nutui-color-text-dark);
  font-weight: var(--nutui-font-weight-bold);
}

.nut-calendar-popup .nut-popup-title-right {
  top: 7px !important;
}

[dir=rtl] .nut-calendar-day,
.nut-rtl .nut-calendar-day {
  float: right;
}
[dir=rtl] .nut-calendar-day-active.active-start,
.nut-rtl .nut-calendar-day-active.active-start {
  border-top-left-radius: 0;
  border-top-right-radius: var(--nutui-calendar-day-active-border-radius, 4px);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: var(--nutui-calendar-day-active-border-radius, 4px);
}
[dir=rtl] .nut-calendar-day-active.active-end,
.nut-rtl .nut-calendar-day-active.active-end {
  border-top-right-radius: 0;
  border-top-left-radius: var(--nutui-calendar-day-active-border-radius, 4px);
  border-bottom-right-radius: 0;
  border-bottom-left-radius: var(--nutui-calendar-day-active-border-radius, 4px);
}