.wp-block-firebox-form {
    --form-gap: var(--gap, 16px);
    width: 100%
}

.wp-block-firebox-form .form-error-message {
    color: var(--error-text-color);
    font-size: 14px
}

.wp-block-firebox-form .fb-fields {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: var(--form-gap)
}

.wp-block-firebox-form .fb-fields *[data-type="firebox/text"],
.wp-block-firebox-form .fb-fields *[data-type="firebox/textarea"],
.wp-block-firebox-form .fb-fields *[data-type="firebox/email"] {
    margin: 0
}

.wp-block-firebox-form .fb-fields>* {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.wp-block-firebox-form .fb-fields>div:not(.block-list-appender),
.wp-block-firebox-form .fb-fields>span,
.wp-block-firebox-form .fb-fields>p,
.wp-block-firebox-form .fb-fields .fb-form-control-group {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(var(--field-width, 100%) - var(--gap))
}

.wp-block-firebox-form .fb-fields>div:not(.block-list-appender).fb-form-response,
.wp-block-firebox-form .fb-fields>span.fb-form-response,
.wp-block-firebox-form .fb-fields>p.fb-form-response,
.wp-block-firebox-form .fb-fields .fb-form-control-group.fb-form-response {
    padding-top: 0;
    padding-bottom: 0
}

.wp-block-firebox-form.fb-hide-form .fb-fields {
    display: none
}

.wp-block-firebox-form .fb-form-control-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--form-control-group-gap, 8px)
}

.wp-block-firebox-form .fb-form-control-group.fb-hide {
    display: none;
    pointer-events: none
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input input,
.wp-block-firebox-form .fb-form-control-group .fb-form-control-input textarea {
    width: 100%
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input {
    margin: 0;
    width: 100%;
    max-width: 100%;
    line-height: normal;
    border: none;
    outline: none;
    text-transform: none;
    font-family: inherit;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: var(--input-font-size, 1em);
    padding: var(--input-padding);
    color: var(--input-text-color);
    border: var(--input-border);
    background-color: var(--input-background-color);
    -webkit-transition: .15s all ease-in-out;
    transition: .15s all ease-in-out
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::-webkit-input-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::-moz-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input:-ms-input-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::-ms-input-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::placeholder,
.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input:has(option:disabled:checked) {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::-webkit-input-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::-moz-placeholder {
    color: var(--input-placeholder-text-color);
    opacity: 1
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input:-ms-input-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::-ms-input-placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input::placeholder {
    color: var(--input-placeholder-text-color)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input:not([type=checkbox]):not([type=radio]) {
    height: auto;
    border-radius: var(--input-border-radius)
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input[type=radio],
.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input[type=checkbox] {
    min-width: auto;
    width: auto;
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    appearance: auto !important;
    outline: none
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input[type=radio]:before,
.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-input[type=checkbox]:before {
    display: none
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input textarea.fb-form-input {
    resize: vertical;
    -webkit-transition: .15s border ease-in-out;
    transition: .15s border ease-in-out
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-select-wrapper {
    position: relative
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input .fb-form-select-wrapper:after {
    content: "";
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    right: 10px;
    bottom: 0;
    margin: auto;
    border-style: solid;
    border-width: 5px 5px 0 5px;
    border-color: #a0a0a0 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    pointer-events: none
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-input select.fb-form-input {
    background-image: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-label {
    color: var(--label-text-color);
    font-size: var(--label-font-size);
    font-weight: var(--label-font-weight, 400);
    -ms-flex-item-align: start;
    align-self: flex-start
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-helptext {
    color: #999;
    font-size: 13px
}

.wp-block-firebox-form .fb-form-control-group .fb-form-control-required {
    display: inline;
    margin-left: 3px;
    color: var(--error-text-color)
}

.wp-block-firebox-form .fb-form-control-group.has-errors>.fb-form-control-label {
    --label-text-color: var(--error-text-color)
}

.wp-block-firebox-form .fb-form-control-group.has-errors .fb-form-input,
.wp-block-firebox-form .fb-form-control-group.has-errors .fpf-phone-control {
    border-color: var(--error-text-color)
}

.wp-block-firebox-form .fb-form-control-group.has-errors .fb-form-field-error {
    font-size: var(--error-font-size, 14px);
    color: var(--error-text-color)
}

.wp-block-firebox-form .fb-form-control-group:not(.has-errors) .fb-form-input:hover {
    border-color: var(--input-border-hover-color)
}

.wp-block-firebox-form .fb-form-control-group:not(.has-errors) .fb-form-input:focus {
    border-color: var(--input-border-focus-color)
}

.wp-block-firebox-form .wp-block-firebox-buttons .firebox-block-button-element.is-working {
    pointer-events: none;
    opacity: .75
}

@media only screen and (min-width: 992px) {
    .wp-block-firebox-form {
        width: var(--max-width, auto)
    }
}

@media only screen and (min-width: 576px) {
    .wp-block-firebox-form.label-position-left .fb-form-control-group {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: unset;
        -webkit-box-direction: unset;
        -ms-flex-direction: unset;
        flex-direction: unset
    }
    .wp-block-firebox-form.label-position-left .fb-form-control-group>*:not(.fb-form-field-error) {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
    .wp-block-firebox-form.label-position-left .fb-form-control-group .fb-form-control-label {
        max-width: 30%;
        padding-right: 10px
    }
    .wp-block-firebox-form.label-position-left .fb-form-control-group .fb-form-field-error {
        width: 100%
    }
}

@media only screen and (max-width: 575px) {
    .wp-block-firebox-form .fb-form-control-group {
        --field-width: 100% !important
    }
}

.wp-block-firebox-form .fb-form-response {
    font-family: var(--response-font-family);
    font-weight: var(--response-font-weight);
    font-style: var(--response-font-style);
    font-size: var(--response-font-size);
    text-align: var(--response-text-align);
    color: var(--response-text-color);
    background: var(--response-background-color);
    padding: var(--response-padding);
    margin: var(--response-margin)
}

.wp-block-firebox-form .fb-form-response:not(.fb-msg-is-visible) {
    display: none
}

.wp-block-firebox-form .fb-form-response.is-error {
    --response-text-color: var(--error-text-color)
}

.wp-block-firebox-form:not(.fb-hide-form) .fb-form-response {
    margin-top: var(--form-gap)
}

.wp-block-firebox-form .fb-field-hp {
    display: none;
    position: absolute;
    left: -9000px
}

.fb-form-list[class*=fb-list-] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px
}

.fb-form-list .fb-form-radio-group,
.fb-form-list .fb-form-checkbox-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    padding: 2px 0
}

.fb-form-list .fb-form-radio-group input,
.fb-form-list .fb-form-checkbox-group input {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    width: auto
}

.fb-form-list .fb-form-radio-group label,
.fb-form-list .fb-form-checkbox-group label {
    display: block;
    margin: 0;
    padding: 0;
    font-weight: normal;
    line-height: 1.3;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: var(--input-text-color);
    font-size: var(--input-font-size, 1em)
}

.fb-form-list.fb-list-2-columns>div {
    -ms-flex-preferred-size: calc(50% - 4px);
    flex-basis: calc(50% - 4px)
}

.fb-form-list.fb-list-3-columns>div {
    -ms-flex-preferred-size: calc(33.33% - 8px);
    flex-basis: calc(33.33% - 8px)
}

.fb-form-list.fb-list-auto-columns {
    -webkit-column-gap: 16px;
    -moz-column-gap: 16px;
    column-gap: 16px
}

@media screen and (min-width: 601px) {
    .fb-form-list.fb-list-2-columns {
        display: grid;
        grid-auto-rows: 1fr;
        grid-template-columns: 1fr 1fr
    }
    .fb-form-list.fb-list-3-columns {
        display: grid;
        grid-auto-rows: 1fr;
        grid-template-columns: 1fr 1fr 1fr
    }
}

.fb-form-list.fb-list-image-mode {
    margin-top: 5px;
    gap: 16px
}

.fb-form-list.fb-list-image-mode:not(.fb-list-auto-columns)>div {
    width: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%
}

.fb-form-list.fb-list-image-mode img {
    width: 100%
}

.fb-form-list.fb-list-image-mode.fb-list-auto-columns>div {
    width: var(--choice-image-width, 120px)
}

.fb-form-list.fb-list-image-mode label {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    height: 100%;
    cursor: pointer;
    color: var(--label-text-color);
    font-size: var(--label-font-size);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    -webkit-transition: .15s all ease-in-out;
    transition: .15s all ease-in-out
}

.fb-form-list.fb-list-image-mode label .fb-form-selected-mark {
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    text-align: center;
    position: absolute;
    top: -20px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--checked-border-color, #057eff);
    color: #fff;
    -webkit-transition: .15s all linear;
    transition: .15s all linear
}

.fb-form-list.fb-list-image-mode label .fb-form-selected-mark svg {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.fb-form-list.fb-list-image-mode label img {
    border-radius: var(--input-border-radius)
}

.fb-form-list.fb-list-image-mode label .fb-form-choice-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-item-align: stretch;
    align-self: stretch
}

.fb-form-list.fb-list-image-mode label .fb-form-choice-image:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-radius: var(--input-border-radius);
    -webkit-transition: .15s all ease-in-out;
    transition: .15s all ease-in-out
}

.fb-form-list.fb-list-image-mode label:hover>.fb-form-choice-image:after {
    -webkit-box-shadow: 0 0 0 2px var(--input-border-hover-color) inset;
    box-shadow: 0 0 0 2px var(--input-border-hover-color) inset
}

.fb-form-list.fb-list-image-mode input[type=checkbox],
.fb-form-list.fb-list-image-mode input[type=radio] {
    display: none
}

.fb-form-list.fb-list-image-mode input[type=checkbox]:checked+label>.fb-form-choice-image:after,
.fb-form-list.fb-list-image-mode input[type=radio]:checked+label>.fb-form-choice-image:after {
    -webkit-box-shadow: 0 0 0 var(--checked-border-size, 2px) var(--checked-border-color, #057eff) inset;
    box-shadow: 0 0 0 var(--checked-border-size, 2px) var(--checked-border-color, #057eff) inset
}

.fb-form-list.fb-list-image-mode input[type=checkbox]:checked+label .fb-form-selected-mark,
.fb-form-list.fb-list-image-mode input[type=radio]:checked+label .fb-form-selected-mark {
    top: -10px;
    opacity: 1;
    visibility: visible;
    z-index: 2
}

.fb-form-list.fb-image-size-small {
    --choice-image-width: 120px
}

.fb-form-list.fb-image-size-medium {
    --choice-image-width: 150px
}

.fb-form-list.fb-image-size-large {
    --choice-image-width: 180px
}

.fb-form-list.fb-list-button-mode:not(.fb-list-auto-columns)>div {
    width: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%
}

.fb-form-list.fb-list-button-mode label {
    margin: 0;
    width: 100%;
    line-height: normal;
    border: none;
    outline: none;
    text-transform: none;
    font-family: inherit;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: var(--input-font-size, 1em);
    padding: var(--input-paddin, 10px);
    color: var(--input-text-color);
    border: var(--input-border);
    background-color: var(--input-background-color);
    border-radius: var(--input-border-radius);
    cursor: pointer;
    -webkit-transition: .15s all ease-in-out;
    transition: .15s all ease-in-out
}

.fb-form-list.fb-list-button-mode label:hover {
    border-color: var(--input-border-hover-color)
}

.fb-form-list.fb-list-button-mode input[type=checkbox],
.fb-form-list.fb-list-button-mode input[type=radio] {
    display: none
}

.fb-form-list.fb-list-button-mode input[type=checkbox]:checked+label,
.fb-form-list.fb-list-button-mode input[type=radio]:checked+label {
    border-color: rgba(0, 0, 0, 0);
    background: var(--checked-background-color, #057eff);
    color: var(--checked-text-color, #fff)
}

.flatpickr-current-month {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: auto
}

.flatpickr-time input {
    border: 0 !important
}