button.form-submit-spinner-active,
input.form-submit-spinner-active {
    background-color: #ddd !important;
    color: transparent !important;
    position: relative;
}

.form-submit-spinner-indicator {
    animation: form-submit-spinner-rotate 0.8s linear infinite;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    color: #555;
    display: block;
    height: 1.2em;
    left: 50%;
    margin: -0.6em 0 0 -0.6em;
    pointer-events: none;
    position: absolute;
    top: 50%;
    width: 1.2em;
}

button.form-submit-spinner-active .form-submit-spinner-indicator {
    color: #555;
}

.form-submit-spinner-input-wrapper {
    display: inline-block;
    position: relative;
}

.form-submit-spinner-input-wrapper input.form-submit-spinner-active {
    width: 100%;
}

@keyframes form-submit-spinner-rotate {
    to { transform: rotate(360deg); }
}
