@layer lime {
    .lds-ripple {
        display: inline-block;
        position: relative;
        margin: 4px;
        height: 72px;
        box-sizing: content-box;
        aspect-ratio: 1;
    }

    .lds-ripple div {
        position: absolute;
        border: 4px solid #fff;
        box-sizing: border-box;
        opacity: 0;
        border-radius: 50%;
        animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
        transform: translate(-50%, -50%);
        top: 50%;
        left: 50%;
    }

    .lds-ripple.dark div {
        border: 4px solid var(--hover-bg-color);
    }

    .lds-ripple div:nth-child(2) {
        animation-delay: -0.5s;
    }

    @keyframes lds-ripple {
        0% {
            width: 0;
            height: 0;
            opacity: 0;
        }

        5% {
            width: 0;
            height: 0;
            opacity: 1;
        }

        100% {
            width: 100%;
            height: 100%;
            opacity: 0;
        }
    }
}