@media (min-width: 400px) {
    .h-xs-50px {
        height: 50px !important;
    }

    .w-xs-50px {
        width: 50px !important;
    }
}

.success-checkmark {
    width: 40px;
    height: 40px;
    margin: 0 auto;

    .check-icon {
        width: 40px;
        height: 40px;
        position: relative;
        border-radius: 50%;
        box-sizing: content-box;
        border: 2px solid #9e2929;

        &::before {
            top: 1.5px;
            left: -1px;
            width: 15px;
            transform-origin: 100% 50%;
            border-radius: 100px 0 0 100px;
        }

        &::after {
            top: 0;
            left: 15px;
            width: 30px;
            transform-origin: 0 50%;
            border-radius: 0 100px 100px 0;
            animation: rotate-circle 4.25s ease-in;
        }

        &::before,
        &::after {
            content: '';
            height: 50px;
            position: absolute;
            background: #ffffff00;
            transform: rotate(-45deg);
            z-index: 2;
        }

        .icon-line {
            height: 2.5px;
            background-color: #9e2929;
            display: block;
            border-radius: 2px;
            position: absolute;
            z-index: 10;

            &.line-tip {
                top: 23px;
                left: 7px;
                width: 12.5px;
                transform: rotate(45deg);
                animation: icon-line-tip 0.75s;
            }

            &.line-long {
                top: 19px;
                right: 4px;
                width: 23.5px;
                transform: rotate(-45deg);
                animation: icon-line-long 0.75s;
            }
        }

        .icon-circle {
            top: -2px;
            left: -2px;
            z-index: 10;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            position: absolute;
            box-sizing: content-box;
            border: 2px solid rgba(158, 41, 41, .5);
        }

        .icon-fix {
            top: 4px;
            width: 2.5px;
            left: 13px;
            z-index: 1;
            height: 42.5px;
            position: absolute;
            transform: rotate(-45deg);
            background-color: #ffffff00;
        }
    }
}

@keyframes rotate-circle {
    0% {
        transform: rotate(-45deg);
    }

    5% {
        transform: rotate(-45deg);
    }

    12% {
        transform: rotate(-405deg);
    }

    100% {
        transform: rotate(-405deg);
    }
}

@keyframes icon-line-tip {
    0% {
        width: 0;
        left: 0.5px;
        top: 9.5px;
    }

    54% {
        width: 0;
        left: 0.5px;
        top: 9.5px;
    }

    70% {
        width: 25px;
        left: -4px;
        top: 18.5px;
    }

    84% {
        width: 8.5px;
        left: 10.5px;
        top: 24px;
    }

    100% {
        width: 12.5px;
        left: 7px;
        top: 22.5px;
    }
}

@keyframes icon-line-long {
    0% {
        width: 0;
        right: 23px;
        top: 27px;
    }

    65% {
        width: 0;
        right: 23px;
        top: 27px;
    }

    84% {
        width: 27.5px;
        right: 0px;
        top: 17.5px;
    }

    100% {
        width: 23.5px;
        right: 4px;
        top: 19px;
    }
}