.App {
  display: flex;
  justify-content: center;
  padding-top: 50px;
}

.datePickerWarp {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.pickerHeader {
  width: 100%;
  height: 54px;
  border-bottom: 1px solid #DDDDDD;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.tabBox {
  height: 30px;
  background: #FFFFFF;
  /* border-radius: 2px; */
  display: inline-flex;
  width: fit-content;
  border-left: 1px solid #DDDDDD;
  border-bottom: 1px solid #DDDDDD;
  position: relative;
}

.tabItem {
  display: inline-flex;
  width: 76px;
  justify-content: center;
  align-items: center;
  padding: 0px 12px;
  transition: all 0.2s ease 0s;
  cursor: pointer;
  font-size: 12px;
  font-family: PingFang SC;
  font-weight: 400;
  line-height: 24px;
  height: 29px;
  color: #444444;
  border-top: 1px solid #DDDDDD;
}

.tabBox .tabItem {
  border-right: 1px solid #DDDDDD;
}

.tabItem:hover {
  background-color: rgb(243, 244, 246);
}

.tabBox .tabActive {
  background: #FFFFFF;
  border: 1px solid #0076FF !important;
  color: #0076FF;
}

.dayPicker {
  width: 100%;
  display: flex;
  justify-content: center;
}

.dayPanel {
  min-width: 270px;
  max-width: 100%;
  width: 100%;
}

.dayOfWeek {
  width: 100%;
  padding: 0 15px 0 15px;
  display: flex;
  box-sizing: border-box;
  /* border: 1px solid #DDDDDD; */
  height: 30px;
  text-align: center;
}

.dayOfWeekName {
  flex: 1;
  font-weight: 400;
  text-align: center;
  height: 16px;
  font-size: 12px;
  font-family: PingFang SC;
  line-height: 30px;
  color: #000000;
}

.calendarWarp {
  /* width: 100%; */
  will-change: transform;
  height: 180px;
  overflow: auto;
  scrollbar-width: none;
  /* firefox */
  -ms-overflow-style: none;
  /* IE 10+ */
}

.calendarWarp::-webkit-scrollbar {
  display: none;
  /* Chrome Safari */
}

.MonthCalendarWarp {
  height: 196px !important;
  width: 290px;
  margin: 0 auto;
}

.MonthCalendarWarp .monthBox {
  width: 290px;
}

/* .MonthCalendarWarp .monthBox .monthItem, .dayItem{
} */

.dayList {
  width: 100%;
  padding: 0 5px 0 15px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  box-sizing: border-box;
}

.monthList {
  width: 100%;
  padding: 0 5px 0 5px;
  box-sizing: border-box;
}

.monthListRoot {
  width: 100%;
  padding: 0 5px 0 15px;
  box-sizing: border-box;
  position: relative;
}

.monthListItem {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.monthListItem .weekItem {
  position: relative;
  display: flex;
  width: 245px;
}

.monthListItem:first-child .weekItem:first-child {
  justify-content: flex-end;
}
.yearItem {
  width: 100%;
  /* display: flex; */
}

.yearName {
  flex: 1;
  height: 40px;
  line-height: 40px;
  box-sizing: border-box;
  list-style: none;
  font-size: 12px;
  text-align: left;
  /* font-weight: bold; */
}

.monthBox {
  width: 210px;
  display: flex;
  flex-wrap: wrap;
}

.monthItem,
.dayItem {
  width: 35px;
  height: 35px;
  line-height: 30px;
  box-sizing: border-box;
  list-style: none;
  font-size: 12px;
  text-align: center;
  z-index: 1;
  cursor: pointer;
  user-select: none;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 5px;
  position: relative;
  z-index: 1;
}

.dayItem:hover {
  position: relative;
  z-index: 1;
}

.dayItem:hover:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #e7e8ec;
  z-index: -1;
}

.emptyItem:hover:before {
  display: none;
}

.monthOdd {
  /*background-color: #f3f4f6;*/
}

.monthListRoot .selectBetween,
.monthBox .selectBetween,
.dayList .selectBetween {
  width: 35px;
  height: 35px;
  background-color: #F2F3F5;
}

.monthBox .active {
  width: 35px;
  height: 35px;
  color: rgb(255, 255, 255);
}

.monthBox .monthPanelStartActive {
  background-color: #F2F3F5;
  border-radius: 50% 0 0 50%;
}

.monthBox .monthPanelEndActive {
  background-color: #F2F3F5;
  border-radius: 0 50% 50% 0;
}



.dayList .active {
  width: 35px;
  height: 35px;
  color: rgb(255, 255, 255);
}

.monthListRoot .active {
  width: 35px;
  height: 35px;
  color: rgb(255, 255, 255);
}

.dayList .weekActive {
  background-color: #0076FF;
}

.leftActive {
  border-top-left-radius: 50%;
  border-bottom-left-radius: 50%;
  overflow: hidden;
}

.rightActive {
  border-top-right-radius: 50%;
  border-bottom-right-radius: 50%;
  overflow: hidden;
}

.monthListRoot .active:after,
.monthBox .active:after,
.dayList .active:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #0076FF;
  z-index: -1;
}

/* .monthListRoot .active:before,
.monthBox .active:before,
.dayList .active:before {
  content: "";
  position: absolute;
  top: 0;
  left: -10px;
  width: 35px;
  height: 35px;
  background-color: yellow;
  z-index: -1;
}
.startDay:before{
  content: "";
  position: absolute;
  top: 0;
  left: -10px;
  width: 35px;
  height: 35px;
  background-color: yellow;
  z-index: -1;
}
.endDay:before{
  content: "";
  position: absolute;
  top: 0;
  left: -10px;
  width: 35px;
  height: 35px;
  background-color: yellow;
  z-index: -1;
} */
.startDay:before {
  content: "";
  position: absolute;
  top: 0;
  left: 10px;
  width: 35px;
  height: 35px;
  background-color: #F2F3F5;
  border-radius: 50%;
  z-index: -1;
}

.endDay:before {
  content: "";
  position: absolute;
  top: 0;
  left: -10px;
  width: 35px;
  height: 35px;
  background-color: #F2F3F5;
  border-radius: 50%;
  z-index: -1;
}

/*.dayList .active >div{*/
/*    height: 17px;*/
/*    overflow: hidden;*/
/*}*/
.monthListRoot .disabled,
.monthBox .disabled,
.dayList .disabled {
  color: #cfd3da;
  cursor: not-allowed;
}

.monthListRoot .active:hover:before,
.dayList .active:hover:before,
.dayList .selectBetween:hover:before,
.dayList .disabled:hover:before {
  display: none;
}

.inputWarp {
  display: flex;
  flex-flow: row nowrap;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: auto;
  max-width: 100%;
  box-sizing: border-box;
  padding: 20px 0;
}

.inputItem {
  color: #000000;
  height: 30px;
  padding: 0;
  width: 92px;
  text-align: center;
  border: 1px solid #DDDDDD;
  outline: none;
  font-size: 12px;
  /* box-sizing: border-box; */
}

.inputWarp .dateDash {
  padding: 0 10px;
}

.sidebarWarp {
  display: flex;
  flex-flow: column nowrap;
  -webkit-box-flex: 0;
  flex: 0 0 auto;
  align-items: flex-start;
  justify-content: stretch;
  max-width: 100%;
  box-sizing: border-box;
  padding-top: 14px;
  min-width: 115px;
  border-right: 1px solid rgb(219, 222, 228);
  height: 100%;
}

.sideItem {
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-start;
  min-width: auto;
  max-width: 100%;
  box-sizing: border-box;
  height: 33px;
  padding: 0 0 0 20px;
  cursor: pointer;
  font-size: 12px;
  font-family: PingFang SC;
  font-weight: 400;
  line-height: 16px;
  color: #000000;
}

.sideItem:hover,
.sideActive {
  border-left: 4px solid #0076FF;
  padding-left: 16px;
  color: #0076FF;
  background-color: rgb(243, 244, 246);
  cursor: pointer;
}

/*这是输入框样式*/

.rangePicker {
  /* width: 260px; */
  /* min-width: 240px; */
  height: 30px;
  background: #FFFFFF;
  border: 1px solid #DDDDDD;
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 12px;
  font-family: PingFang SC;
  user-select: none;
}

.rangePicker:hover {
  background-color: rgb(243, 244, 246);
}

.rangeDate {
  flex: 1;
  display: flex;
  font-weight: 400;
  line-height: 30px;
  color: #000000;
  margin-right: 10px;
}

.inputDate {
  text-align: center;
  flex: 1;
  padding: 0 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.onlyOne {
  width: 100%;
  text-align: center;
}

.dateDash {
  padding: 0;
}

.rangeType {
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  width: 86px;
  display: flex;
  height: 12px;
  line-height: 12px;
  border-left: 1px solid #BBBBBB;
  padding: 0 8px;
}

.rangeType .icon {
  display: inline-block;
  width: 12px;
  height: 12px;
  background: #888888;
}
.rangeType .calenderBg{
  /* background-image: url('data:image/svg+xml;base64,PHN2ZyBpZD0i5pel5Y6GIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPHJlY3QgaWQ9IlJlY3RhbmdsZV9Db3B5XzUiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIENvcHkgNSIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSIjNDQ0IiBvcGFjaXR5PSIwIi8+DQogIDxwYXRoIGlkPSLlkIjlubblvaLnirYiIGQ9Ik0xMiwxMkgwVjFIMlYwSDRWMUg4VjBoMlYxaDJWMTJoMFpNMiwxMGg4VjNIMlpNNyw5VjdIOVY5Wk0zLDlWN0g1VjlaTTcsNlY0SDlWNlpNMyw2VjRINVY2WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMiAyKSIgZmlsbD0iIzg4OCIvPg0KPC9zdmc+DQo='); */
  width: 15px;
  height: 15px;
  border: none;
}

.dropdown {
  position: absolute;
  top: 34px;
  min-width: 398px;
  /* height: 387px; */
  background: #FFFFFF;
  border: 1px solid #DDDDDD;
  box-shadow: 1px 1px 4px rgba(187, 187, 187, 0.5);
  overflow: hidden;
}

.pickerFooter {
  height: 66px;
  width: 100%;
  box-sizing: border-box;
  border-top: 1px solid #DDDDDD;
  font-size: 12px;
  line-height: 30px;
  text-align: center;
  display: flex;
  align-items: center;
  padding: 0 20px;
  justify-content: flex-end;
}

.confirmBtn {
  width: 84px;
  height: 30px;
  background: #0076FF;
  color: #FFFFFF;
  position: relative;
  z-index: 99;
}
.confirmBtnDisable{
  pointer-events: none;
  cursor: default;
  opacity: 0.6;
}

.cancelBtn {
  position: relative;
  z-index: 99;
  width: 84px;
  height: 30px;
  background: #FFFFFF;
  border: 1px solid #DDDDDD;
  color: #000000;
  box-sizing: border-box;
  margin-left: 20px;
}

.hasMonthTitle .inputWarp {
  padding: 20px 0;
  border-bottom: 1px solid #DDDDDD;
}

.dayOfWeekWrap {
  margin: 0 auto;
  width: 280px;
  padding: 0 15px 0 15px;
  display: flex;
  box-sizing: border-box;
  height: 30px;
  text-align: center;
}

.weekPanelWrap {
  width: 274px;
  margin: 0 auto;
}

.hasMonthTitle .monthTitle {
  text-align: center;
  line-height: 20px;
  height: 32px;
  font-size: 12px;
  font-family: PingFang SC;
  font-weight: 600;
  line-height: 16px;
  color: #444444;

  line-height: 32px;
  background-color: #F2F3F5;
  /* border: 1px solid black; */
  /* margin: 8px; */
}

.hourPicker {
  width: 100%;
}

.hourPicker .inputWarp {
  padding: 20px 0;
  box-sizing: border-box;
  border-bottom: 1px solid rgb(219, 222, 228);
}

.hourPicker .inputWarp .date-input__start,
.hourPicker .inputWarp .date-input__end {
  width: 120px;
}

.timePicker {
  display: flex;
  box-sizing: border-box;
  max-width: 100%;
  height: 100%;
  border-left: 1px solid #DDDDDD;
}

.timePicker .timeSelect:not(:last-of-type) {
  border-right: 1px solid #DDDDDD;
}

.timeSelect {
  font-size: 12px;
  font-family: PingFang SC;

  flex: 1;
  height: 242px;
  overflow: auto;
  text-align: center;
  scrollbar-width: none;
  /* firefox */
  -ms-overflow-style: none;
  /* IE 10+ */
}

.timeSelect::-webkit-scrollbar {
  display: none;
  /* Chrome Safari */
}

.timeItem {
  height: 30px;
  line-height: 30px;
  width: 119px;
}

.timeItem.disabled {
  color: #cfd3da;
  cursor: not-allowed;
}

.timeSelect .active {
  background-color: #0076FF;
  color: #FFFFFF;
}
.tailDate{
  color: #cfd3da;
}
.evenPanel{
  background-color: white;
}
.oddPanel{
  background-color: #F2F3F5;
}
.briefMonth{
  position: absolute;
    font-size: 1px;
    top: -10px;
    left: 9px;
}

