.renderer-core-submit-btn {
    overflow: visible !important;
}

.renderer-core-submit-btn > .renderer-core-arrow-icon {
    transform-origin: 50% 50%;
    transition:
        width 160ms ease,
        margin 160ms ease,
        opacity 120ms ease,
        transform 160ms ease !important;
}

.renderer-core-submit-btn > .qfbwg-submit-spinner {
    display: inline-grid;
    place-items: center;
    width: 0;
    height: 1em;
    margin-inline-start: 0;
    flex: 0 0 auto;
    opacity: 0;
    pointer-events: none;
    transition:
        width 160ms ease,
        margin-inline-start 160ms ease,
        opacity 120ms ease;
}

.renderer-core-submit-btn > .qfbwg-submit-spinner::before {
    content: '';
    display: block;
    width: 1em;
    height: 1em;
    box-sizing: border-box;
    border-width: 0.11em;
    border-style: solid;
    border-color: currentColor currentColor currentColor transparent;
    border-radius: 50%;
    opacity: 0;
    transform: translateZ(0) rotate(0turn);
    transform-origin: 50% 50%;
    backface-visibility: hidden;
    will-change: transform, opacity;
    transition: opacity 120ms ease;
}

.renderer-core-submit-btn.qfbwg-is-submitting.qfbwg-has-arrow
> .renderer-core-arrow-icon {
    width: 0 !important;
    margin-inline-start: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    transform: scale(0.72) !important;
}

.renderer-core-submit-btn.qfbwg-is-submitting.qfbwg-has-arrow
> .qfbwg-submit-spinner {
    width: 1em;
    margin-inline-start: 0.78em;
    opacity: 1;
}

.renderer-core-submit-btn.qfbwg-is-submitting.qfbwg-has-arrow
> .qfbwg-submit-spinner::before {
    opacity: 1;
    animation: qfbwg-submit-spin 0.72s linear infinite;
}

.renderer-core-submit-btn.qfbwg-is-submitting.qfbwg-has-arrow
.renderer-core-submit-btn__loader {
    display: none !important;
}

.renderer-core-submit-btn.qfbwg-is-submitting:not(.qfbwg-has-arrow)
.renderer-core-submit-btn__loader {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin-inline-start: 0.78em;
    overflow: visible !important;
}

.renderer-core-submit-btn.qfbwg-is-submitting:not(.qfbwg-has-arrow)
.renderer-core-submit-btn__loader svg {
    width: 1em !important;
    height: 1em !important;
    overflow: visible !important;
}

.renderer-core-submit-btn.qfbwg-is-submitting:not(.qfbwg-has-arrow)
.renderer-core-submit-btn__loader svg path {
    stroke-width: 3.5 !important;
    stroke-linecap: round !important;
}

@keyframes qfbwg-submit-spin {
    from {
        transform: translateZ(0) rotate(0turn);
    }

    to {
        transform: translateZ(0) rotate(1turn);
    }
}

@media (prefers-reduced-motion: reduce) {
    .renderer-core-submit-btn.qfbwg-is-submitting.qfbwg-has-arrow
    > .qfbwg-submit-spinner::before {
        animation-duration: 1.2s;
    }
}
