.wtfs-appointment-form-wrap {
    max-width: 720px;
}

.wtfs-appointment-form {
    display: grid;
    gap: 1rem;
}

.wtfs-field {
    display: grid;
    gap: 0.35rem;
}

.wtfs-field input,
.wtfs-field select,
.wtfs-appointment-form button {
    font: inherit;
}

.wtfs-field input,
.wtfs-field select {
    width: 100%;
    box-sizing: border-box;
}

.wtfs-field-error {
    color: #b32d2e;
    font-size: 0.9em;
}

.wtfs-appointment-notice {
    margin-bottom: 1rem;
    padding: 1rem 0;
}

.wtfs-appointment-success {
    color: #008a20;
}

.wtfs-appointment-error {
    color: #b32d2e;
}

.wtfs-honeypot {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.wtfs-appointment-form .select2-container {
    width: 100% !important;
}

.wtfs-appointment-form .select2-container .select2-selection--single {

    width: 100%;
    border: 0;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
    background: transparent;
    font: inherit;
    box-sizing: border-box;

}

.select2-dropdown {
    border: 0 !important;
    border-radius: 5px !important;
    -webkit-box-shadow: 1px 0 0 #e6e6e6,
        -1px 0 0 #e6e6e6,
        0 1px 0 #e6e6e6,
        0 -1px 0 #e6e6e6,
        0 3px 13px rgba(0, 0, 0, 0.08);
    box-shadow: 1px 0 0 #e6e6e6,
        -1px 0 0 #e6e6e6,
        0 1px 0 #e6e6e6,
        0 -1px 0 #e6e6e6,
        0 3px 13px rgba(0, 0, 0, 0.08);
}

.wtfs-appointment-form button[type="submit"] {
    margin: 1rem 0;
}

.wtfs-appointment-form .form-control:focus,
.wtfs-appointment-form .form-control:active {
    border: 0;
    border-bottom: 1px solid currentColor;
    outline: 0;
    box-shadow: none;
    background: transparent;
}

/* Flatpickr days can be restyled here. */

.flatpickr-day {
    font-size: 12px;
}

.flatpickr-current-month {
    font-size: 14px;
    font-weight: bold;
    font-family: 'Untitled Sans Medium',
        'Helvetica Neue',
        'Helvetica',
        'Arial',
        sans-serif;
}

.flatpickr-day.nextMonthDay:not(.flatpickr-disabled) {
    color: #393939;
}

/* Flatpickr disabled days can be restyled here. */
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.nextMonthDay.flatpickr-disabled,
.flatpickr-day.notAllowed.nextMonthDay {
    opacity: 1 !important;
    text-decoration: line-through;
    cursor: not-allowed;
}


/*
 * Past dates, minimum-advance dates, weekends, single blocked dates,
 * and blocked ranges all receive Flatpickr's .flatpickr-disabled class.
 */
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.nextMonthDay.flatpickr-disabled:hover {
    opacity: 1 !important;
    text-decoration: line-through;
    cursor: not-allowed;
}