/**
 *
 * Sourced from https://cdn.jsdelivr.net/npm/vanillajs-datepicker@1.3.4/dist/css/datepicker.min.css
 * https://github.com/mymth/vanillajs-datepicker?tab=readme-ov-file
 * on 2024-12-24
 *
 * MIT License
 *
 * Copyright (c) 2019 Hidenao Miyamoto
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

.datepicker {
    width: -moz-min-content;
    width: min-content
}

.datepicker:not(.active) {
    display: none
}

.datepicker-dropdown {
    padding-top: 4px;
    position: absolute;
    z-index: 20
}

.datepicker-dropdown.datepicker-orient-top {
    padding-bottom: 4px;
    padding-top: 0
}

.datepicker-picker {
    background-color: #fff;
    border-radius: 4px;
    display: flex;
    flex-direction: column
}

.datepicker-dropdown .datepicker-picker {
    box-shadow: 0 2px 3px hsla(0, 0%, 4%, .1), 0 0 0 1px hsla(0, 0%, 4%, .1)
}

.datepicker-main {
    flex: auto;
    padding: 2px
}

.datepicker-footer {
    background-color: #f5f5f5;
    box-shadow: inset 0 1px 1px hsla(0, 0%, 4%, .1)
}

.datepicker-title {
    background-color: #f5f5f5;
    box-shadow: inset 0 -1px 1px hsla(0, 0%, 4%, .1);
    font-weight: 700;
    padding: .375rem .75rem;
    text-align: center
}

.datepicker-controls {
    display: flex
}

.datepicker-header .datepicker-controls {
    padding: 2px 2px 0
}

.datepicker-controls .button {
    align-items: center;
    background-color: #fff;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    box-shadow: none;
    color: #363636;
    cursor: pointer;
    display: inline-flex;
    font-size: 1rem;
    height: 2.25em;
    justify-content: center;
    line-height: 1.5;
    margin: 0;
    padding: calc(.375em - 1px) .75em;
    position: relative;
    text-align: center;
    vertical-align: top;
    white-space: nowrap
}

.datepicker-controls .button:active, .datepicker-controls .button:focus {
    outline: none
}

.datepicker-controls .button:hover {
    border-color: #b8b8b8;
    color: #363636
}

.datepicker-controls .button:focus {
    border-color: #3273dc;
    color: #363636
}

.datepicker-controls .button:focus:not(:active) {
    box-shadow: 0 0 0 .125em rgba(50, 115, 220, .25)
}

.datepicker-controls .button:active {
    border-color: #474747;
    color: #363636
}

.datepicker-controls .button[disabled] {
    cursor: not-allowed
}

.datepicker-header .datepicker-controls .button {
    border-color: transparent;
    font-weight: 700
}

.datepicker-header .datepicker-controls .button:hover {
    background-color: #f9f9f9
}

.datepicker-header .datepicker-controls .button:active {
    background-color: #f2f2f2
}

.datepicker-footer .datepicker-controls .button {
    border-radius: 2px;
    flex: auto;
    font-size: .75rem;
    margin: calc(.375rem - 1px) .375rem
}

.datepicker-controls .view-switch {
    flex: auto
}

.datepicker-controls .next-button, .datepicker-controls .prev-button {
    flex: 0 0 14.2857142857%;
    padding-left: .375rem;
    padding-right: .375rem
}

.datepicker-controls .next-button.disabled, .datepicker-controls .prev-button.disabled {
    visibility: hidden
}

.datepicker-grid, .datepicker-view {
    display: flex
}

.datepicker-view {
    align-items: stretch;
    width: 15.75rem
}

.datepicker-grid {
    flex: auto;
    flex-wrap: wrap
}

.datepicker .days {
    display: flex;
    flex: auto;
    flex-direction: column
}

.datepicker .days-of-week {
    display: flex
}

.datepicker .week-numbers {
    display: flex;
    flex: 0 0 9.6774193548%;
    flex-direction: column
}

.datepicker .weeks {
    align-items: stretch;
    display: flex;
    flex: auto;
    flex-direction: column
}

.datepicker span {
    -webkit-touch-callout: none;
    align-items: center;
    border-radius: 4px;
    cursor: default;
    display: flex;
    justify-content: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.datepicker .dow {
    font-size: .875rem;
    font-weight: 700;
    height: 1.5rem
}

.datepicker .week {
    color: #b8b8b8;
    flex: auto;
    font-size: .75rem
}

.datepicker .days .dow, .datepicker-cell {
    flex-basis: 14.2857142857%
}

.datepicker-cell {
    height: 2.25rem
}

.datepicker-cell:not(.day) {
    flex-basis: 25%;
    height: 4.5rem
}

.datepicker-cell:not(.disabled):hover {
    background-color: #f9f9f9;
    cursor: pointer
}

.datepicker-cell.focused:not(.selected) {
    background-color: #e9e9e9
}

.datepicker-cell.selected, .datepicker-cell.selected:hover {
    background-color: #3273dc;
    color: #fff;
    font-weight: 600
}

.datepicker-cell.disabled {
    color: #dcdcdc
}

.datepicker-cell.next:not(.disabled), .datepicker-cell.prev:not(.disabled) {
    color: #7a7a7a
}

.datepicker-cell.next.selected, .datepicker-cell.prev.selected {
    color: #e6e6e6
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today) {
    background-color: #f5f5f5;
    border-radius: 0
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover {
    background-color: #efefef
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused {
    background-color: #e9e9e9
}

.datepicker-cell.today:not(.selected) {
    background-color: #00d1b2
}

.datepicker-cell.today:not(.selected):not(.disabled) {
    color: #fff
}

.datepicker-cell.today.focused:not(.selected) {
    background-color: #00ccad
}

.datepicker-cell.range-end:not(.selected), .datepicker-cell.range-start:not(.selected) {
    background-color: #b8b8b8;
    color: #fff
}

.datepicker-cell.range-end.focused:not(.selected), .datepicker-cell.range-start.focused:not(.selected) {
    background-color: #b3b3b3
}

.datepicker-cell.range-start:not(.range-end) {
    border-radius: 4px 0 0 4px
}

.datepicker-cell.range-end:not(.range-start) {
    border-radius: 0 4px 4px 0
}

.datepicker-cell.range {
    background-color: #dcdcdc;
    border-radius: 0
}

.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover {
    background-color: #d7d7d7
}

.datepicker-cell.range.disabled {
    color: #c6c6c6
}

.datepicker-cell.range.focused {
    background-color: #d1d1d1
}

.datepicker-input.in-edit {
    border-color: #276bda
}

.datepicker-input.in-edit:active, .datepicker-input.in-edit:focus {
    box-shadow: 0 0 .25em .25em rgba(39, 107, 218, .2)
}