.flatpickr-calendar {
    --flatpickr-compact-width: 240px;   /* width of days cell */
    --flatpickr-compact-day-font: 12px;     /* Font size of date cell */
    --flatpickr-compact-month-font: 14px;   /* Font size of month selector */

    width: var(--flatpickr-compact-width);
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
    font-size: var(--flatpickr-compact-month-font);
    text-align: center;
}
.flatpickr-days .dayContainer {
    width: var(--flatpickr-compact-width);   /* width of days cell */
    min-width: unset;
    max-width: unset;
}
.flatpickr-days .dayContainer .flatpickr-day {
    font-size: var(--flatpickr-compact-day-font);
    height: auto;
    aspect-ratio: 1 / 1;
    line-height: unset;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.flatpickr-rContainer .flatpickr-weekdays {
    width: var(--flatpickr-compact-width);
    min-width: unset;
    max-width: unset;
}
.flatpickr-calendar .flatpickr-months {
    width: var(--flatpickr-compact-width);
}
.flatpickr-months .flatpickr-next-month, .flatpickr-months .flatpickr-prev-month {
    padding: 0;
    aspect-ratio: 1 / 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
input.flatpickr::placeholder {
    color: black;
}
input.flatpickr::-ms-input-placeholder { /* Edge 12 -18 */
    color: black;
}
input.flatpickr::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: black;
}
input.flatpickr:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: black;
}
input.flatpickr::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: black;
}
input.flatpickr:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: black;
}
