.form-builder-app:has(.form-landing-text) .form-builder {

    display: none;
}

.form-builder-app {

    width: 100%;

    margin-right: auto;

    margin-left: auto;
}

@media (min-width: 640px) {

    .form-builder-app {

        max-width: 640px;
    }
}

@media (min-width: 768px) {

    .form-builder-app {

        max-width: 768px;
    }
}

@media (min-width: 1024px) {

    .form-builder-app {

        max-width: 1024px;
    }
}

@media (min-width: 1280px) {

    .form-builder-app {

        max-width: 1280px;
    }
}

@media (min-width: 1536px) {

    .form-builder-app {

        max-width: 1536px;
    }
}

.form-builder-app {

    margin-left: auto;

    margin-right: auto;

    --tw-bg-opacity: 1;

    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

@media (min-width: 1024px) {

    .form-builder-app {

        max-width: 64rem;
    }
}

.form-builder {

    padding-left: 2rem;

    padding-right: 2rem;

    padding-top: 4rem;

    padding-bottom: 4rem;
}

.fb-form-intro {

    margin-bottom: 2.5rem;
}

/* Loading Spinner */

.fb-loading {

    display: flex;

    flex-direction: column;
}

.fb-loading svg {

    margin-left: auto;

    margin-right: auto;

    height: 3.5rem;

    width: 3.5rem;

    stroke: currentColor;

    stroke-width: 2;

    --tw-text-opacity: 1;

    color: rgb(147 197 253 / var(--tw-text-opacity));
}

.fb-loading span {

    margin-top: 0.5rem;

    display: block;

    text-align: center;
}

.fb-step-title {

    margin-bottom: 1.75rem;

    font-size: 1.5rem;

    line-height: 2rem;

    text-transform: uppercase;

    line-height: 1;
}

@media (min-width: 1024px) {

    .fb-step-title {

        line-height: 1;
    }
}

.fb-step-description {

    margin-bottom: 2.5rem;

    font-size: 1rem;

    line-height: 1.5rem;
}

@media (min-width: 768px) {

    .fb-step-description {

        font-size: 1.125rem;

        line-height: 1.75rem;
    }
}

.fb-field .fb-error-wrapper {

    position: absolute;

    top: 100%;
}

.fb-fields-wrapper {

    display: flex;

    flex-direction: column;
}

@media (min-width: 768px) {

    .fb-fields-wrapper {

        flex-direction: row;

        flex-wrap: wrap;

        align-items: flex-end;

        justify-content: space-between;
    }
}

.fb-field-wrapper {

    position: relative;

    margin-bottom: 1rem;

    width: 100%;

    align-self: baseline;
}

/* .fb-field-wrapper.fb-1\/2:nth-child(2n + 1):has(+ .fb-field-wrapper.fb-1\/2 .fb-error-wrapper) {
  .fb-field {
    @apply mb-10 bg-red-500;
  }
} */

@media (min-width: 768px) {

    .fb-force-new-row {

        height: 0px;

        flex-basis: 100%;
    }
}

.fb-button-wrapper {

    margin-top: 2rem;

    display: flex;

    width: 100%;

    justify-content: center;
}

.fb-button-wrapper button {

    width: 100%;

    min-width: 9.375rem;

    border-width: 1px;
}

@media (min-width: 768px) {

    .fb-button-wrapper button {

        width: auto;
    }
}

.fb-error-message {

    text-align: center;

    font-size: 1.125rem;

    line-height: 1.75rem;

    font-weight: 400;

    --tw-text-opacity: 1;

    color: rgb(239 68 68 / var(--tw-text-opacity));
}

.fb-success-wrapper {

    line-height: 1.25;
}

.fb-label {

    margin-bottom: 0.125rem;

    display: block;

    font-weight: 700;

    line-height: 1.25;
}

.fb-message {

    margin-bottom: 0.125rem !important;

    line-height: 1.25;
}

.fb-error-text-color {

    --tw-text-opacity: 1 !important;

    color: rgb(239 68 68 / var(--tw-text-opacity)) !important;
}

.fb-error-text-color::-moz-placeholder {

    --tw-text-opacity: 1 !important;

    color: rgb(239 68 68 / var(--tw-text-opacity)) !important;
}

.fb-error-text-color::placeholder {

    --tw-text-opacity: 1 !important;

    color: rgb(239 68 68 / var(--tw-text-opacity)) !important;
}

.fb-error-border-color {

    --tw-border-opacity: 1 !important;

    border-color: rgb(239 68 68 / var(--tw-border-opacity)) !important;
}

.fb-input-error-text {

    margin-top: 0.25rem;

    font-size: 0.75rem;

    line-height: 1rem;

    font-weight: 400;
}

.fb-error-wrapper {

    margin-top: 0.25rem;

    margin-bottom: 0.25rem;

    display: flex;

    align-items: center;
}

.fb-error-icon {

    margin-right: 0.25rem;

    height: 0.75rem;

    width: 0.75rem;

    --tw-text-opacity: 1;

    color: rgb(239 68 68 / var(--tw-text-opacity));
}

.fb-text-input,
.fb-date-input {

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;

    background-color: #fff;

    border-color: #6b7280;

    border-width: 1px;

    border-radius: 0px;

    padding-top: 0.5rem;

    padding-right: 0.75rem;

    padding-bottom: 0.5rem;

    padding-left: 0.75rem;

    font-size: 1rem;

    line-height: 1.5rem;

    --tw-shadow: 0 0 #0000;
}

.fb-text-input:focus,
.fb-date-input:focus {

    outline: 2px solid transparent;

    outline-offset: 2px;

    --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);

    --tw-ring-offset-width: 0px;

    --tw-ring-offset-color: #fff;

    --tw-ring-color: #2563eb;

    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);

    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);

    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);

    border-color: #2563eb;
}

.fb-text-input::-moz-placeholder, .fb-date-input::-moz-placeholder {

    color: #6b7280;

    opacity: 1;
}

.fb-text-input::placeholder,
.fb-date-input::placeholder {

    color: #6b7280;

    opacity: 1;
}

.fb-text-input::-webkit-datetime-edit-fields-wrapper,
.fb-date-input::-webkit-datetime-edit-fields-wrapper {

    padding: 0;
}

.fb-text-input::-webkit-date-and-time-value,
.fb-date-input::-webkit-date-and-time-value {

    min-height: 1.5em;
}

.fb-text-input::-webkit-datetime-edit,.fb-text-input::-webkit-datetime-edit-year-field,.fb-text-input::-webkit-datetime-edit-month-field,.fb-text-input::-webkit-datetime-edit-day-field,.fb-text-input::-webkit-datetime-edit-hour-field,.fb-text-input::-webkit-datetime-edit-minute-field,.fb-text-input::-webkit-datetime-edit-second-field,.fb-text-input::-webkit-datetime-edit-millisecond-field,.fb-text-input::-webkit-datetime-edit-meridiem-field,
.fb-date-input::-webkit-datetime-edit,
.fb-date-input::-webkit-datetime-edit-year-field,
.fb-date-input::-webkit-datetime-edit-month-field,
.fb-date-input::-webkit-datetime-edit-day-field,
.fb-date-input::-webkit-datetime-edit-hour-field,
.fb-date-input::-webkit-datetime-edit-minute-field,
.fb-date-input::-webkit-datetime-edit-second-field,
.fb-date-input::-webkit-datetime-edit-millisecond-field,
.fb-date-input::-webkit-datetime-edit-meridiem-field {

    padding-top: 0;

    padding-bottom: 0;
}

.fb-text-input,
.fb-date-input {

    width: 100%;

    border-width: 1px;

    --tw-border-opacity: 1;

    border-color: rgb(209 213 219 / var(--tw-border-opacity));

    padding-left: 1rem;

    padding-right: 1rem;

    padding-top: 0.75rem;

    padding-bottom: 0.75rem;

    outline: 2px solid transparent;

    outline-offset: 2px;
}

.fb-text-input:focus,
.fb-date-input:focus {

    --tw-border-opacity: 1;

    border-color: rgb(209 213 219 / var(--tw-border-opacity));
}

.fb-checkbox-wrapper,
.fb-radio-wrapper {

    margin-top: 0.625rem;

    display: flex;
}

.fb-checkbox-input {

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;

    padding: 0;

    -webkit-print-color-adjust: exact;

            print-color-adjust: exact;

    display: inline-block;

    vertical-align: middle;

    background-origin: border-box;

    -webkit-user-select: none;

       -moz-user-select: none;

            user-select: none;

    flex-shrink: 0;

    height: 1rem;

    width: 1rem;

    color: #2563eb;

    background-color: #fff;

    border-color: #6b7280;

    border-width: 1px;

    --tw-shadow: 0 0 #0000;

    border-radius: 0px;
}

.fb-checkbox-input:focus {

    outline: 2px solid transparent;

    outline-offset: 2px;

    --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);

    --tw-ring-offset-width: 2px;

    --tw-ring-offset-color: #fff;

    --tw-ring-color: #2563eb;

    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);

    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);

    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

.fb-checkbox-input:checked {

    border-color: transparent;

    background-color: currentColor;

    background-size: 100% 100%;

    background-position: center;

    background-repeat: no-repeat;

    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
}

.fb-checkbox-input:checked:hover,.fb-checkbox-input:checked:focus {

    border-color: transparent;

    background-color: currentColor;
}

.fb-checkbox-input:indeterminate {

    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");

    border-color: transparent;

    background-color: currentColor;

    background-size: 100% 100%;

    background-position: center;

    background-repeat: no-repeat;
}

.fb-checkbox-input:indeterminate:hover,.fb-checkbox-input:indeterminate:focus {

    border-color: transparent;

    background-color: currentColor;
}

.fb-checkbox-input {

    height: 1.25rem;

    width: 1.25rem;

    cursor: pointer;

    border-width: 1px;

    --tw-border-opacity: 1;

    border-color: rgb(209 213 219 / var(--tw-border-opacity));
}

.fb-checkbox-input:checked {

    --tw-border-opacity: 1;

    border-color: rgb(30 64 175 / var(--tw-border-opacity));

    --tw-text-opacity: 1;

    color: rgb(30 64 175 / var(--tw-text-opacity));
}

.fb-select-input {

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;

    background-color: #fff;

    border-color: #6b7280;

    border-width: 1px;

    border-radius: 0px;

    padding-top: 0.5rem;

    padding-right: 0.75rem;

    padding-bottom: 0.5rem;

    padding-left: 0.75rem;

    font-size: 1rem;

    line-height: 1.5rem;

    --tw-shadow: 0 0 #0000;
}

.fb-select-input:focus {

    outline: 2px solid transparent;

    outline-offset: 2px;

    --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);

    --tw-ring-offset-width: 0px;

    --tw-ring-offset-color: #fff;

    --tw-ring-color: #2563eb;

    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);

    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);

    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);

    border-color: #2563eb;
}

.fb-select-input {

    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");

    background-position: right 0.5rem center;

    background-repeat: no-repeat;

    background-size: 1.5em 1.5em;

    padding-right: 2.5rem;

    -webkit-print-color-adjust: exact;

            print-color-adjust: exact;
}

.fb-select-input:where([size]:not([size="1"])) {

    background-image: initial;

    background-position: initial;

    background-repeat: unset;

    background-size: initial;

    padding-right: 0.75rem;

    -webkit-print-color-adjust: unset;

            print-color-adjust: unset;
}

.fb-select-input {

    --tw-border-opacity: 1;

    border-color: rgb(209 213 219 / var(--tw-border-opacity));

    padding-top: 0.75rem;

    padding-bottom: 0.75rem;

    padding-left: 0.5rem;

    padding-right: 0.5rem;
}

.fb-radio-input {

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;

    padding: 0;

    -webkit-print-color-adjust: exact;

            print-color-adjust: exact;

    display: inline-block;

    vertical-align: middle;

    background-origin: border-box;

    -webkit-user-select: none;

       -moz-user-select: none;

            user-select: none;

    flex-shrink: 0;

    height: 1rem;

    width: 1rem;

    color: #2563eb;

    background-color: #fff;

    border-color: #6b7280;

    border-width: 1px;

    --tw-shadow: 0 0 #0000;

    border-radius: 100%;
}

.fb-radio-input:focus {

    outline: 2px solid transparent;

    outline-offset: 2px;

    --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);

    --tw-ring-offset-width: 2px;

    --tw-ring-offset-color: #fff;

    --tw-ring-color: #2563eb;

    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);

    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);

    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

.fb-radio-input:checked {

    border-color: transparent;

    background-color: currentColor;

    background-size: 100% 100%;

    background-position: center;

    background-repeat: no-repeat;

    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
}

.fb-radio-input:checked:hover,.fb-radio-input:checked:focus {

    border-color: transparent;

    background-color: currentColor;
}

.fb-radio-input {

    cursor: pointer;

    border-width: 1px;

    --tw-border-opacity: 1;

    border-color: rgb(209 213 219 / var(--tw-border-opacity));
}

.fb-radio-input:checked {

    --tw-border-opacity: 1;

    border-color: rgb(30 64 175 / var(--tw-border-opacity));

    --tw-text-opacity: 1;

    color: rgb(30 64 175 / var(--tw-text-opacity));
}

.fb-checkbox-label {

    margin-left: 0.375rem;

    display: block;

    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));

    -webkit-user-select: none;

       -moz-user-select: none;

            user-select: none;

    font-weight: 300;
}

.fb-checkbox-label:hover {

    cursor: pointer;
}

@media (min-width: 768px) {

    .fb-checkbox-label {

        --tw-translate-y: -2px;

        transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    }
}

.fb-radio-label {

    display: inline-flex;

    --tw-translate-y: -0.25rem;

    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));

    cursor: pointer;

    -webkit-user-select: none;

       -moz-user-select: none;

            user-select: none;

    padding-left: 0.5rem;
}

.fb-radio-label:focus-within {

    --tw-text-opacity: 1;

    color: rgb(30 64 175 / var(--tw-text-opacity));
}

.fb-other-input-wrapper {

    margin-top: 0.5rem;
}

.form-builder-app :is(.absolute) {

    position: absolute;
}

.form-builder-app :is(.relative) {

    position: relative;
}

.form-builder-app :is(.ml-0) {

    margin-left: 0px;
}

.form-builder-app :is(.ml-0\.5) {

    margin-left: 0.125rem;
}

.form-builder-app :is(.block) {

    display: block;
}

.form-builder-app :is(.\!inline) {

    display: inline !important;
}

.form-builder-app :is(.inline) {

    display: inline;
}

.form-builder-app :is(.transform) {

    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.form-builder-app :is(.blur) {

    --tw-blur: blur(8px);

    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.form-builder-app :is(.filter) {

    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.form-builder-app  :is(.fb-full) {

    width: 100%;
}

.form-builder-app  :is(.fb-1\/2) {

    width: 100%;
}

@media (min-width: 768px) {

    .form-builder-app  :is(.fb-1\/2) {

        width: 49%;
    }
}

.form-builder-app  :is(.fb-1\/3) {

    width: 100%;
}

@media (min-width: 768px) {

    .form-builder-app  :is(.fb-1\/3) {

        width: 32%;
    }
}

.form-builder-app  :is(.fb-2\/3) {

    width: 100%;
}

@media (min-width: 768px) {

    .form-builder-app  :is(.fb-2\/3) {

        width: 66.666667%;
    }
}

.form-builder-app  :is(.fb-1\/4) {

    width: 100%;
}

@media (min-width: 768px) {

    .form-builder-app  :is(.fb-1\/4) {

        width: 25%;
    }
}
