/*loading*/
#blazor-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #2c3e50;
    z-index: 9999;
    overflow: hidden;
}

.blazor-pacman-loader {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
}

.blazor-pacman-pacman {
    width: 50px;
    height: 50px;
    background-color: yellow;
    border-radius: 50%;
    position: relative;
    animation: pacman-bounce 1s infinite alternate ease-in-out;
    overflow: visible;
}

.blazor-pacman-mouth {
    position: absolute;
    width: 54px;
    height: 54px;
    background-color: #2c3e50;
    clip-path: polygon(100% 0%, 100% 100%, 50% 50%);
    transform-origin: 27px 27px;
    animation: blazor-pacman-eat 0.3s infinite;
    margin-left: -2px;
    margin-top: -2px;
    z-index: 5;
}

.blazor-pacman-word {
    font-size: 2em;
    color: white;
    margin-left: 5px;
    margin-right: -2px;
    padding-right: 2px;
    padding-bottom: 8px;
    z-index: 1;
    overflow: visible;
}

.blazor-pacman-dots {
    display: flex;
    gap: 8px;
    position: relative;
    overflow: hidden;
    width: 160px;
    height: 15px;
    animation: dots-move 0.7s linear infinite;
}

.blazor-pacman-dot {
    width: 10px;
    height: 10px;
    background-color: #ee9944;
    border-radius: 50%;
    opacity: 0.8;
}

/* Pacman Bounce */
@keyframes pacman-bounce {
    0% {
        transform: translateX(0px);
    }

    100% {
        transform: translateX(15px); /* Bigger bounce */
    }
}

/* Animation for Pacman mouth */
@keyframes blazor-pacman-eat {
    0% {
        clip-path: polygon(100% 0%, 100% 100%, 50% 50%);
    }

    50% {
        clip-path: polygon(100% 20%, 100% 80%, 50% 50%);
    }

    100% {
        clip-path: polygon(100% 0%, 100% 100%, 50% 50%);
    }
}

/* Dot Movement */
@keyframes dots-move {
    0% {
        transform: translateX(0px);
    }

    100% {
        transform: translateX(-18px); /* 6 dots * 8px gap */
    }
}
