/* =============================================================
 * BASE STYLES
 * ============================================================*/
.datepicker {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    z-index: 1;
    -webkit-user-select: none; /* Chrome all / Safari all */
    -moz-user-select: none; /* Firefox all */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Likely future */
}

.datepicker__inner {
    overflow: hidden;
}

.datepicker__month {
    border-collapse: collapse;
    text-align: center;
    width: 100%;
}

.datepicker__month--month2 {
    display: none;
}

.datepicker__month-day--valid {
    cursor: pointer;
}

.datepicker__month-day--lastMonth,
.datepicker__month-day--nextMonth {
    /* visibility: hidden; */
}

.datepicker__month-button {
    cursor: pointer;
}

.datepicker__info--feedback {
    display: none;
}

.datepicker__info--error,
.datepicker__info--help {
    display: block;
}

.datepicker__close-button {
    cursor: pointer;
}

.datepicker__tooltip {
    position: absolute;
}

/* =============================================================
 * THEME
 * ============================================================*/
.datepicker {
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(181,181,181,1);
    -moz-box-shadow: 0px 0px 10px 0px rgba(181,181,181,1);
    box-shadow: 0px 0px 10px 0px rgba(181,181,181,1);
    color: #484c55;
    font-family: 'Helvetica', 'Helvetica Neue', 'Arial', sans-serif;
    font-size: 14px;
    line-height: 14px;
}

.datepicker__month {
    font-size: 12px;
}

.datepicker__month-caption {
    height: 40px;
    vertical-align: middle;
    background: #f8f8f8;
    font-size: 16px;
    font-weight: 600;
}

    .datepicker__month-caption th {
        line-height: 40px;
        padding: 0;
    }

.datepicker__month-name {
    font-size: 16px;
    font-weight: 600;
}

.datepicker__week-days {
    height: 28px;
    vertical-align: middle;
}

.datepicker__week-name {
    font-size: 14.4px;
    line-height: 26px;
    font-weight: 700;
    text-transform: uppercase;
    color: #9e9e9e;
}

.datepicker__month-day {
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border-color;
    transition-property: color, background-color, border-color;
    -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    color: #4a4a4a;
    width: 46px;
    height: 46px;
    line-height: 44px;
    font-weight: 600;
    font-size: 15px;
    border-radius: 50%;
}

.datepicker__month-day--no-checkin {
    position: relative;
}

    .datepicker__month-day--no-checkin:after {
        background-color: rgba(255, 0, 0, 0.1);
        bottom: 0;
        content: '';
        display: block;
        left: 0;
        position: absolute;
        right: 50%;
        top: 0;
        z-index: -1;
    }

.datepicker__month-day--no-checkout {
    position: relative;
}

    .datepicker__month-day--no-checkout:after {
        background-color: rgba(255, 0, 0, 0.1);
        bottom: 0;
        content: '';
        display: block;
        left: 50%;
        position: absolute;
        right: 0;
        top: 0;
        z-index: -1;
    }

.datepicker__month-day--invalid {
    opacity: .3;
}

.datepicker__month-day--disabled {
    opacity: .3;
    position: relative;
}

    .datepicker__month-day--disabled:after {
        content: '\00d7';
        left: 50%;
        position: absolute;
        color: red;
        font-size: 16px;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

.datepicker__month-day--day-of-week-disabled {
    background-color: rgba(232, 235, 244, 0.5);
}

.datepicker__month-day--selected {
    border-radius: 0;
    background: -moz-linear-gradient(top, #fff 20%, #fcd793 20%, #fcd793 50%, #fcd793 80%, #fcd793 80%, #fff 80%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #fff 20%,#fcd793 20%, #fcd793 50%, #fcd793 80%, #fcd793 80%,#fff 80%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #fff 20%,#fcd793 20%, #fcd793 50%, #fcd793 80%, #fcd793 80%, #fff 80%);
    color: #fff;
}

    .datepicker__month-day--selected:after {
        display: none;
    }

.datepicker__month-day--hovering {
}

    .datepicker__month-day--hovering:hover {
        border-radius: 50%;
    }

.datepicker__month-day--today {
    background-color: #e8e8e8;
    border-radius: 50%;
}

.datepicker__month-day--first-day-selected,
.datepicker__month-day--last-day-selected {
    background: #f6bd55;
    border-radius: 50%;
    color: #fff;
    position: relative;
    z-index: 3;
}

.datepicker__month-day--first-day-selected-bg {
    position: absolute;
    top: 20%;
    left: 50%;
    right: 0;
    bottom: 20%;
    background: #fcd793;
    z-index: -1;
}

.datepicker__month-day--first-day-selected-circle {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: #f6bd55;
    z-index: -1;
}

.datepicker__month-day--last-day-selected-bg {
    position: absolute;
    top: 20%;
    left: 0;
    right: 50%;
    bottom: 20%;
    background: #fcd793;
    z-index: -1;
}

.datepicker__month-day--last-day-selected-circle {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: #f6bd55;
    z-index: -1;
}

.datepicker__month-day--last-day-selected:after {
    content: none;
}

.datepicker__month-button {
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border-color;
    transition-property: color, background-color, border-color;
    -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    background-color: transparent;
    color: #4a4a4a;
    display: inline-block;
    width: 40px;
}

    .datepicker__month-button:hover {
        background-color: transparent;
        border: none;
    }

.datepicker__topbar {
    margin-bottom: 20px;
    position: relative;
}

.datepicker__info-text {
    font-size: 13px;
}

.datepicker__info--selected {
    font-size: 11px;
    text-transform: uppercase;
}

.datepicker__info--selected-label {
    color: #acb2c1;
}

.datepicker__info-text--selected-days {
    font-size: 11px;
    font-style: normal;
}

.datepicker__info--error {
    color: red;
    font-size: 13px;
    font-style: italic;
}

.datepicker__info--help {
    color: #acb2c1;
    font-style: italic;
}

.datepicker__close-button {
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border-color;
    transition-property: color, background-color, border-color;
    -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    background-color: #746bfd;
    border-radius: 4px;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: 10px;
    color: #fff;
    margin-top: 20px;
    padding: 7px 13px;
    text-decoration: none;
    text-shadow: none;
    text-transform: uppercase;
}

    .datepicker__close-button:hover {
        background-color: #484c55;
        color: #fff;
    }

.datepicker__tooltip {
    background-color: #ffe684;
    border-radius: 2px;
    font-size: 11px;
    margin-top: -5px;
    padding: 5px 10px;
}

    .datepicker__tooltip:after {
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        border-top: 4px solid #ffe684;
        bottom: -4px;
        content: '';
        left: 50%;
        margin-left: -4px;
        position: absolute;
    }

@media (min-width: 480px) {
    .datepicker__months {
        overflow: hidden;
    }

    .datepicker__month--month1 {
        float: left;
    }

    .datepicker__month--month2 {
        display: table;
        float: right;
    }

    .datepicker__month-button--disabled {
        visibility: hidden;
    }

    .datepicker__months {
        position: relative;
    }
}

@media (min-width: 768px) {
    .datepicker__close-button {
        margin-top: 0;
        position: absolute;
        right: 0;
        top: 0;
    }
}
