.hc-date-calendar-box {
    position: relative;
    .hc-date-picker-box {
        display: flex;
        position: relative;
        align-items: center;
        padding-bottom: 24px;
        border-bottom: 1px solid #E9E9E9;
        .hc-date-picker {
            width: 140px;
            position: relative;
        }
        .hc-date-btn-box {
            flex: 1;
            display: flex;
            position: relative;
            align-items: center;
            justify-content: flex-end;
            .hc-div-btn {
                width: 40px;
                height: 40px;
                display: flex;
                transition: .1s;
                align-items: center;
                justify-content: center;
                font-size: 22px;
                user-select: none;
                cursor: pointer;
                background: #f1f5f8;
                border-radius: 10px;
                color: var(--el-color-primary-light-3);
                box-shadow: 4px 4px 8px 0 rgba(54,92,167,0.15), -4px -4px 8px 0 #ffffff;
                &:hover {
                    background: var(--el-color-primary-light-9)
                }
            }
            .hc-div-btn + .hc-div-btn {
                margin-left: 20px;
            }
        }
    }
    .hc-date-weekdays {
        position: relative;
        display: grid;
        grid-template-columns: repeat(7, 45.7px);
        grid-template-rows: repeat(1, 45px);
        align-items: center;
        justify-items: center;
        margin: auto auto 8px;
        .hc-date-weekdays-day {
            text-align: center;
            font-size: 14px;
            color: #CCCCCC;
        }
    }
    .hc-date-dates {
        position: relative;
        margin: auto;
        display: grid;
        grid-template-columns: repeat(7, 45.7px);
        grid-template-rows: repeat(6, 45px);
        align-items: center;
        justify-items: center;
        flex-wrap: wrap;
        .hc-date-dates-day {
            position: relative;
            width: 40px;
            height: 40px;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 14px;
            font-weight: 700;
            cursor: pointer;
            z-index: 0;
            color: #1A1A1A;
            border: 2px solid transparent;
            border-radius: 6px;
            transition: background-color 0.2s, color 0.1s;
            &:before {
                content: "";
                position: absolute;
                bottom: -5px;
                width: 5px;
                height: 5px;
                background: initial;
                border-radius: 50%;
                transition: background-color 0.3s, color 0.1s;
            }
            &:hover:not([class*='choice']):not([class*='excluded']):not([class*='selected']):not([class*='cur']) {
                background-color: var(--el-color-primary-light-7);
                border: 2px solid #f1f5f8;
            }
            &.cur:not([class*='choice']):not([class*='selected']) {
                &:before {
                    background-color: #0081ff;
                }
                &:hover::before {
                    background-color: rgba(0, 129, 255, 0);
                }
                &:hover {
                    color: white;
                    background-color: #0081ff;
                    border: 2px solid #f1f5f8;
                }
            }
            &.selected {
                color: white;
                border: 2px solid #f1f5f8;
                background: var(--el-color-primary);
            }
            &.choice {
                color: white;
                border: 2px solid #f1f5f8;
                background: linear-gradient(135deg,var(--el-color-primary) 25%, var(--hc-shadow-color-5) 100%);
                box-shadow: 4px 4px 8px 0 rgba(54,92,167,0.15), -4px -4px 8px 0 #ffffff;
                &.cur {
                    background: linear-gradient(135deg,var(--el-color-primary) 25%, #0081ff 100%);
                }
            }
            &.excluded {
                color: #c2c2c2;
                cursor: default;
            }
        }
    }
}
