// slightly modified version of https://npmcdn.com/flatpickr@4.6.9/dist/flatpickr.css .flatpickr-calendar { opacity: 0; display: none; text-align: center; visibility: hidden; padding: 0; animation: none; direction: ltr; border: 0; font-size: 1rem; line-height: 24px; position: absolute; width: 298px; box-sizing: border-box; user-select: none; color: var(--txtPrimaryColor); background: var(--baseColor); border-radius: var(--baseRadius); @include shadowize(0px 0px 0px 1px var(--baseAlt2Color)); input, select { box-shadow: none; min-height: 0; height: var(--smBtnHeight); padding-top: 3px; padding-bottom: 3px; background: none; border-radius: var(--baseRadius); border: 1px solid var(--baseAlt1Color); } } .flatpickr-calendar.open, .flatpickr-calendar.inline { opacity: 1; visibility: visible; } .flatpickr-calendar.open { display: inline-block; z-index: 99999; } .flatpickr-calendar.animate.open { -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1); animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1); } .flatpickr-calendar.inline { display: block; position: relative; top: 0; width: 100%; } .flatpickr-calendar.static { position: absolute; top: 100%; margin-top: 2px; margin-bottom: 10px; width: 100%; .flatpickr-days { width: 100%; } } .flatpickr-calendar.static.open { z-index: 999; display: block; } .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) { -webkit-box-shadow: none !important; box-shadow: none !important; } .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) { -webkit-box-shadow: -2px 0 0 var(--baseAlt2Color), 5px 0 0 var(--baseAlt2Color); box-shadow: -2px 0 0 var(--baseAlt2Color), 5px 0 0 var(--baseAlt2Color); } .flatpickr-calendar .hasWeeks .dayContainer, .flatpickr-calendar .hasTime .dayContainer { border-bottom: 0; border-bottom-right-radius: 0; border-bottom-left-radius: 0; } .flatpickr-calendar .hasWeeks .dayContainer { border-left: 0; } .flatpickr-calendar.hasTime .flatpickr-time { height: 40px; border-top: 1px solid var(--baseAlt2Color); } .flatpickr-calendar.noCalendar.hasTime .flatpickr-time { height: auto; } .flatpickr-calendar:before, .flatpickr-calendar:after { position: absolute; display: block; pointer-events: none; border: solid transparent; content: ''; height: 0; width: 0; left: 22px; } .flatpickr-calendar.rightMost:before, .flatpickr-calendar.arrowRight:before, .flatpickr-calendar.rightMost:after, .flatpickr-calendar.arrowRight:after { left: auto; right: 22px; } .flatpickr-calendar.arrowCenter:before, .flatpickr-calendar.arrowCenter:after { left: 50%; right: 50%; } .flatpickr-calendar:before { border-width: 5px; margin: 0 -5px; } .flatpickr-calendar:after { border-width: 4px; margin: 0 -4px; } .flatpickr-calendar.arrowTop:before, .flatpickr-calendar.arrowTop:after { bottom: 100%; } .flatpickr-calendar.arrowTop:before { border-bottom-color: var(--baseColor); } .flatpickr-calendar.arrowTop:after { border-bottom-color: var(--baseColor); } .flatpickr-calendar.arrowBottom:before, .flatpickr-calendar.arrowBottom:after { top: 100%; } .flatpickr-calendar.arrowBottom:before { border-top-color: var(--baseColor); } .flatpickr-calendar.arrowBottom:after { border-top-color: var(--baseColor); } .flatpickr-calendar:focus { outline: 0; } .flatpickr-wrapper { position: relative; } .flatpickr-months { display: flex; align-items: center; padding: 5px 0; } .flatpickr-months .flatpickr-month { display: flex; align-items: center; justify-content: center; background: transparent; color: var(--txtPrimaryColor); fill: var(--txtPrimaryColor); line-height: 1; text-align: center; position: relative; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; } .flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month { display: flex; align-items: center; text-decoration: none; cursor: pointer; height: 34px; padding: 5px 12px; z-index: 3; color: var(--txtPrimaryColor); fill: var(--txtPrimaryColor); } .flatpickr-months .flatpickr-prev-month.flatpickr-disabled, .flatpickr-months .flatpickr-next-month.flatpickr-disabled { display: none; } .flatpickr-months .flatpickr-prev-month i, .flatpickr-months .flatpickr-next-month i { position: relative; } .flatpickr-months .flatpickr-prev-month.flatpickr-prev-month, .flatpickr-months .flatpickr-next-month.flatpickr-prev-month { left: 0; } .flatpickr-months .flatpickr-prev-month.flatpickr-next-month, .flatpickr-months .flatpickr-next-month.flatpickr-next-month { right: 0; } .flatpickr-months .flatpickr-prev-month:hover, .flatpickr-months .flatpickr-next-month:hover, .flatpickr-months .flatpickr-prev-month:hover svg, .flatpickr-months .flatpickr-next-month:hover svg { fill: var(--txtHintColor); } .flatpickr-months .flatpickr-prev-month svg, .flatpickr-months .flatpickr-next-month svg { width: 14px; height: 14px; } .flatpickr-months .flatpickr-prev-month svg path, .flatpickr-months .flatpickr-next-month svg path { -webkit-transition: fill 0.1s; transition: fill 0.1s; fill: inherit; } .numInputWrapper { position: relative; height: auto; border-radius: var(--baseRadius); } .numInputWrapper input, .numInputWrapper span { display: inline-block; } .numInputWrapper input { width: 100%; } .numInputWrapper input::-ms-clear { display: none; } .numInputWrapper input::-webkit-outer-spin-button, .numInputWrapper input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; } .numInputWrapper span { position: absolute; right: 0; width: 14px; padding: 0 4px 0 2px; height: 50%; line-height: 50%; opacity: 0; cursor: pointer; border: 1px solid rgba(57,57,57,0.15); box-sizing: border-box; } .numInputWrapper span:hover { background: rgba(0,0,0,0.1); } .numInputWrapper span:active { background: rgba(0,0,0,0.2); } .numInputWrapper span:after { display: block; content: ""; position: absolute; } .numInputWrapper span.arrowUp { top: 0; border-bottom: 0; } .numInputWrapper span.arrowUp:after { border-left: 4px solid transparent; border-right: 4px solid transparent; border-bottom: 4px solid rgba(57,57,57,0.6); top: 26%; } .numInputWrapper span.arrowDown { top: 50%; } .numInputWrapper span.arrowDown:after { border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid rgba(57,57,57,0.6); top: 40%; } .numInputWrapper span svg { width: inherit; height: auto; } .numInputWrapper span svg path { fill: rgba(0,0,0,0.5); } .numInputWrapper:hover { background: var(--baseAlt1Color); } .numInputWrapper:hover span { opacity: 1; } .flatpickr-current-month { line-height: inherit; color: inherit; width: 85%; padding: 1px 0; line-height: 1; display: flex; gap: 10px; align-items: center; justify-content: center; text-align: center; } .flatpickr-current-month span.cur-month { font-family: inherit; font-weight: 700; color: inherit; display: inline-block; margin-left: 0.5ch; padding: 0; } .flatpickr-current-month span.cur-month:hover { background: var(--baseAlt1Color); } .flatpickr-current-month .numInputWrapper { display: inline-flex; align-items: center; justify-content: center; width: 62px; } .flatpickr-current-month .numInputWrapper span.arrowUp:after { border-bottom-color: var(--txtPrimaryColor); } .flatpickr-current-month .numInputWrapper span.arrowDown:after { border-top-color: var(--txtPrimaryColor); } .flatpickr-current-month input.cur-year { background: transparent; box-sizing: border-box; color: inherit; cursor: text; margin: 0; display: inline-block; font-size: inherit; font-family: inherit; line-height: inherit; vertical-align: initial; -webkit-appearance: textfield; -moz-appearance: textfield; appearance: textfield; } .flatpickr-current-month input.cur-year:focus { outline: 0; } .flatpickr-current-month input.cur-year[disabled], .flatpickr-current-month input.cur-year[disabled]:hover { color: var(--txtDisabledColor); background: transparent; pointer-events: none; } .flatpickr-current-month .flatpickr-monthDropdown-months { appearance: menulist; box-sizing: border-box; color: inherit; cursor: pointer; font-size: inherit; line-height: inherit; outline: none; position: relative; vertical-align: initial; -webkit-box-sizing: border-box; -webkit-appearance: menulist; -moz-appearance: menulist; width: auto; } .flatpickr-current-month .flatpickr-monthDropdown-months:focus, .flatpickr-current-month .flatpickr-monthDropdown-months:active { outline: none; } .flatpickr-current-month .flatpickr-monthDropdown-months:hover { background: var(--baseAlt1Color); } .flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month { background-color: transparent; outline: none; padding: 0; } .flatpickr-weekdays { background: transparent; text-align: center; overflow: hidden; width: 100%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; height: 28px; } .flatpickr-weekdays .flatpickr-weekdaycontainer { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; } span.flatpickr-weekday { display: block; flex: 1; margin: 0; cursor: default; line-height: 1; background: transparent; color: var(--txtHintColor); text-align: center; font-weight: bolder; font-size: var(--smFontSize); } .dayContainer, .flatpickr-weeks { padding: 1px 0 0 0; } .flatpickr-days { position: relative; overflow: hidden; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; } .flatpickr-days:focus { outline: 0; } .dayContainer { padding: 0; outline: 0; text-align: left; width: 100%; box-sizing: border-box; display: inline-block; display: flex; flex-wrap: wrap; transform: translate3d(0px, 0px, 0px); opacity: 1; } .dayContainer + .dayContainer { -webkit-box-shadow: -1px 0 0 var(--baseAlt2Color); box-shadow: -1px 0 0 var(--baseAlt2Color); } .flatpickr-day { background: none; border: 1px solid transparent; border-radius: var(--baseRadius); box-sizing: border-box; color: var(--txtPrimaryColor); cursor: pointer; font-weight: 400; width: calc(14.2857143% - 2px); flex-basis: calc(14.2857143% - 2px); height: 39px; margin: 1px; display: inline-flex; align-items: center; justify-content: center; position: relative; text-align: center; flex-direction: column; &.weekend, &:nth-child(7n+6), &:nth-child(7n+7) { color: var(--dangerColor); } } .flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus { cursor: pointer; outline: 0; background: var(--baseAlt2Color); border-color: var(--baseAlt2Color); } .flatpickr-day.today { border-color: var(--baseColor); } .flatpickr-day.today:hover, .flatpickr-day.today:focus { border-color: var(--primaryColor); background: var(--primaryColor); color: var(--baseColor); } .flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay { background: var(--primaryColor); -webkit-box-shadow: none; box-shadow: none; color: #fff; border-color: var(--primaryColor); } .flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange { border-radius: 50px 0 0 50px; } .flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange { border-radius: 0 50px 50px 0; } .flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) { -webkit-box-shadow: -10px 0 0 var(--primaryColor); box-shadow: -10px 0 0 var(--primaryColor); } .flatpickr-day.selected.startRange.endRange, .flatpickr-day.startRange.startRange.endRange, .flatpickr-day.endRange.startRange.endRange { border-radius: 50px; } .flatpickr-day.inRange { border-radius: 0; box-shadow: -5px 0 0 var(--baseAlt2Color), 5px 0 0 var(--baseAlt2Color); } .flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay { color: var(--txtDisabledColor); background: transparent; border-color: transparent; cursor: default; } .flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover { cursor: not-allowed; color: var(--txtDisabledColor); background: var(--baseAlt2Color); } .flatpickr-day.week.selected { border-radius: 0; box-shadow: -5px 0 0 var(--primaryColor), 5px 0 0 var(--primaryColor); } .flatpickr-day.hidden { visibility: hidden; } .rangeMode .flatpickr-day { margin-top: 1px; } .flatpickr-weekwrapper { float: left; } .flatpickr-weekwrapper .flatpickr-weeks { padding: 0 12px; -webkit-box-shadow: 1px 0 0 var(--baseAlt2Color); box-shadow: 1px 0 0 var(--baseAlt2Color); } .flatpickr-weekwrapper .flatpickr-weekday { float: none; width: 100%; line-height: 28px; } .flatpickr-weekwrapper span.flatpickr-day, .flatpickr-weekwrapper span.flatpickr-day:hover { display: block; width: 100%; max-width: none; color: var(--txtHintColor); background: transparent; cursor: default; border: none; } .flatpickr-innerContainer { display: flex; box-sizing: border-box; overflow: hidden; padding: 5px; } .flatpickr-rContainer { display: inline-block; padding: 0; width: 100%; box-sizing: border-box; } .flatpickr-time { text-align: center; outline: 0; display: block; height: 0; line-height: 40px; max-height: 40px; box-sizing: border-box; overflow: hidden; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .flatpickr-time:after { content: ""; display: table; clear: both; } .flatpickr-time .numInputWrapper { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; width: 40%; height: 40px; float: left; } .flatpickr-time .numInputWrapper span.arrowUp:after { border-bottom-color: var(--txtPrimaryColor); } .flatpickr-time .numInputWrapper span.arrowDown:after { border-top-color: var(--txtPrimaryColor); } .flatpickr-time.hasSeconds .numInputWrapper { width: 26%; } .flatpickr-time.time24hr .numInputWrapper { width: 49%; } .flatpickr-time input { background: transparent; box-shadow: none; border: 0; text-align: center; margin: 0; padding: 0; height: inherit; line-height: inherit; color: var(--txtPrimaryColor); font-size: 14px; position: relative; box-sizing: border-box; background: var(--baseColor); -webkit-appearance: textfield; -moz-appearance: textfield; appearance: textfield; } .flatpickr-time input.flatpickr-hour { font-weight: bold; } .flatpickr-time input.flatpickr-minute, .flatpickr-time input.flatpickr-second { font-weight: normal; } .flatpickr-time input:focus { outline: 0; border: 0; } .flatpickr-time .flatpickr-time-separator, .flatpickr-time .flatpickr-am-pm { height: inherit; float: left; line-height: inherit; color: var(--txtPrimaryColor); font-weight: bold; width: 2%; user-select: none; align-self: center; } .flatpickr-time .flatpickr-am-pm { outline: 0; width: 18%; cursor: pointer; text-align: center; font-weight: 400; } .flatpickr-time input:hover, .flatpickr-time .flatpickr-am-pm:hover, .flatpickr-time input:focus, .flatpickr-time .flatpickr-am-pm:focus { background: var(--baseAlt1Color); } .flatpickr-input[readonly] { cursor: pointer; } @keyframes fpFadeInDown { from { opacity: 0; transform: translate3d(0, 10px, 0); } to { opacity: 1; transform: translate3d(0, 0, 0); } } // Hide prev and next month dates .flatpickr-hide-prev-next-month-days { .flatpickr-calendar .prevMonthDay { visibility: hidden; } .flatpickr-calendar .nextMonthDay { display: none; } } .flatpickr-inline-container { @extend %block; .flatpickr-input { display: none; } .flatpickr-calendar { margin: 0; box-shadow: none; border: 1px solid var(--baseAlt2Color); } }