.datepicker {
    background-color: #1e1e2f !important;
    color: #fff !important;
    border-radius: 0.4285rem;
    border: none;
}

.datepicker table tr td,
.datepicker table tr th {
    color: #fff;
}

.datepicker table tr td.old,
.datepicker table tr td.new {
    color: #6c757d;
}

.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
    background-color: #e14eca !important;
    background-image: none;
    border-color: #e14eca;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.focused {
    background: #3a3a5a;
    cursor: pointer;
}

.datepicker .datepicker-switch:hover,
.datepicker .prev:hover,
.datepicker .next:hover,
.datepicker tfoot tr th:hover {
    background: #3a3a5a;
}

.datepicker-dropdown:after {
    border-bottom-color: #1e1e2f;
}

.datepicker-dropdown.datepicker-orient-top:after {
    border-top-color: #1e1e2f;
}

.datepicker table tr td.today,
.datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover {
    background-color: #00bcd4;
    background-image: none;
    color: #fff;
}

.datepicker table tr td.day.focused,
.datepicker table tr td span.focused {
    background: #3a3a5a;
}

.input-group.date .input-group-append {
    cursor: pointer;
}

.input-group.date .input-group-text {
    background-color: #e14eca;
    border-color: #e14eca;
    color: #fff;
    cursor: pointer;
    transition: all 0.3s ease;
}

.input-group.date .input-group-text:hover {
    background-color: #ad3b9e;
    border-color: #ad3b9e;
}

.datepicker-dropdown {
    padding: 10px;
    box-shadow: 0 10px 50px 0px rgba(0, 0, 0, 0.2);
    border: none;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.datepicker-dropdown {
    animation: fadeIn 0.3s ease;
}
