.nug-login-entry-host {
    position: relative !important;
    overflow: visible !important;
}

.nug-login-entry {
    display: block;
    width: 45px;
    height: 45px;
    border-radius: 12px;
    overflow: hidden;
    background: center / contain no-repeat url('./0083050050d65f58.webp');
    outline: 0;
    text-decoration: none;
    will-change: transform;
}

.nug-login-entry--desktop {
    position: absolute;
    top: 61%;
    right: auto;
    left: calc(100% + 12px);
    animation: nug-login-entry-float-desktop 2.3s ease-in-out infinite;
}

.nug-login-entry--mobile {
    position: fixed;
    right: max(16px, env(safe-area-inset-right, 0px));
    bottom: max(180px, calc(env(safe-area-inset-bottom, 0px) + 168px));
    z-index: 30;
    animation: nug-login-entry-float-mobile 2.3s ease-in-out infinite;
}

.nug-login-entry::after {
    position: absolute;
    top: -20%;
    left: -70%;
    width: 42%;
    height: 140%;
    content: '';
    pointer-events: none;
    background: linear-gradient(105deg, transparent 18%, rgba(255, 255, 255, 0.78) 50%, transparent 82%);
    opacity: 0;
    transform: skewX(-18deg) translateX(-180%);
    animation: nug-login-entry-sheen 3.8s ease-in-out infinite;
}

.nug-login-entry:focus-visible {
    outline: 2px solid #ff6b32;
    outline-offset: 3px;
}

@keyframes nug-login-entry-float-desktop {
    0%, 100% {
        transform: translateY(-50%) rotate(0deg);
    }

    50% {
        transform: translateY(calc(-50% - 3px)) rotate(-1.5deg);
    }
}

@keyframes nug-login-entry-float-mobile {
    0%, 100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-3px) rotate(-1.5deg);
    }
}

@keyframes nug-login-entry-sheen {
    0%, 56% {
        opacity: 0;
        transform: skewX(-18deg) translateX(-180%);
    }

    64% {
        opacity: 0.9;
    }

    80%, 100% {
        opacity: 0;
        transform: skewX(-18deg) translateX(420%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .nug-login-entry {
        animation: none;
        will-change: auto;
    }

    .nug-login-entry::after {
        animation: none;
    }
}
