/* Kick chat tek emoji — iddia sayfaları kenar animasyonu */
.id-keo-stage {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 9990;
    overflow: hidden;
}

.id-keo-stage .keo-particle {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    opacity: 0;
    filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.35));
    will-change: transform, opacity;
    animation-duration: 4.2s;
    animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
    animation-fill-mode: forwards;
}

.id-keo-stage .keo-particle img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    opacity: 0.9;
}

.id-keo-stage .keo-particle-text {
    font-size: 42px;
    line-height: 1;
    opacity: 0.86;
    user-select: none;
}

.id-keo-stage .keo-from-left {
    left: -4%;
    top: var(--keo-axis, 50%);
    animation-name: id-keo-drift-left;
}

.id-keo-stage .keo-from-right {
    right: -4%;
    top: var(--keo-axis, 50%);
    animation-name: id-keo-drift-right;
}

.id-keo-stage .keo-from-top {
    top: -6%;
    left: var(--keo-axis, 50%);
    animation-name: id-keo-drift-top;
}

.id-keo-stage .keo-from-bottom {
    bottom: -6%;
    left: var(--keo-axis, 50%);
    animation-name: id-keo-drift-bottom;
}

@keyframes id-keo-drift-left {
    0% { opacity: 0; transform: translate(var(--keo-burst-lane, 0px), 0) rotate(-18deg) scale(0.72); }
    10% { opacity: 0.82; }
    50% { opacity: 0.78; transform: translate(calc(8vw + var(--keo-drift, 0px) + var(--keo-burst-lane, 0px)), calc(var(--keo-sway, 0px) * -1)) rotate(145deg) scale(1); }
    100% { opacity: 0; transform: translate(calc(11vw + var(--keo-drift, 0px) + var(--keo-burst-lane, 0px)), calc(var(--keo-sway, 0px) * -1.6)) rotate(240deg) scale(0.88); }
}

@keyframes id-keo-drift-right {
    0% { opacity: 0; transform: translate(var(--keo-burst-lane, 0px), 0) rotate(18deg) scale(0.72); }
    10% { opacity: 0.82; }
    50% { opacity: 0.78; transform: translate(calc(-8vw + var(--keo-drift, 0px) + var(--keo-burst-lane, 0px)), var(--keo-sway, 0px)) rotate(-145deg) scale(1); }
    100% { opacity: 0; transform: translate(calc(-11vw + var(--keo-drift, 0px) + var(--keo-burst-lane, 0px)), calc(var(--keo-sway, 0px) * 1.6)) rotate(-240deg) scale(0.88); }
}

@keyframes id-keo-drift-top {
    0% { opacity: 0; transform: translate(var(--keo-burst-lane, 0px), 0) rotate(-12deg) scale(0.72); }
    10% { opacity: 0.82; }
    50% { opacity: 0.78; transform: translate(calc(var(--keo-sway, 0px) + var(--keo-burst-lane, 0px)), calc(7vh + var(--keo-drift, 0px))) rotate(160deg) scale(1); }
    100% { opacity: 0; transform: translate(calc(var(--keo-sway, 0px) * 1.4 + var(--keo-burst-lane, 0px)), calc(10vh + var(--keo-drift, 0px))) rotate(250deg) scale(0.88); }
}

@keyframes id-keo-drift-bottom {
    0% { opacity: 0; transform: translate(var(--keo-burst-lane, 0px), 0) rotate(12deg) scale(0.72); }
    10% { opacity: 0.82; }
    50% { opacity: 0.78; transform: translate(calc(var(--keo-sway, 0px) * -1 + var(--keo-burst-lane, 0px)), calc(-7vh + var(--keo-drift, 0px))) rotate(-160deg) scale(1); }
    100% { opacity: 0; transform: translate(calc(var(--keo-sway, 0px) * -1.4 + var(--keo-burst-lane, 0px)), calc(-10vh + var(--keo-drift, 0px))) rotate(-250deg) scale(0.88); }
}
