/* ═══════════════════════════════════════
   KOFE.AL VERIFIED BADGE
   ═══════════════════════════════════════ */

.kf-badge{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:1em;height:1em;
    font-size:inherit;
    vertical-align:middle;
}

/* Shield — rotates */
.kf-badge-shield{
    position:absolute;inset:0;
    animation:kfSpin 3s ease-in-out infinite;
}
.kf-badge-shield svg{width:100%;height:100%;display:block}

/* Check — counter-rotates to stay fixed */
.kf-badge-check{
    position:absolute;inset:0;z-index:2;
    animation:kfCheckSpin 3s ease-in-out infinite;
}
.kf-badge-check svg{width:100%;height:100%;display:block}

/* Shine sweep */
.kf-badge-shine{
    position:absolute;inset:-5%;z-index:3;
    overflow:hidden;pointer-events:none;
}
.kf-badge-shine::after{
    content:'';position:absolute;
    top:-30%;left:-80%;width:45%;height:160%;
    background:linear-gradient(105deg,
        transparent 30%,
        rgba(255,255,255,0.5) 42%,
        rgba(255,255,255,0.92) 50%,
        rgba(255,255,255,0.5) 58%,
        transparent 70%
    );
    transform:rotate(20deg);
    animation:kfShine 3s ease-in-out infinite;
}

/* Gradient stops — purple → gradient flash → purple */
.kf-g1{stop-color:#5A03FC;animation:kfC1 3s ease-in-out infinite}
.kf-g2{stop-color:#5A03FC;animation:kfC2 3s ease-in-out infinite}

/* ─── Keyframes ─── */

@keyframes kfSpin{
    0%{transform:rotate(0deg)}
    35%{transform:rotate(360deg)}
    100%{transform:rotate(360deg)}
}
@keyframes kfCheckSpin{
    0%{transform:rotate(0deg)}
    35%{transform:rotate(-360deg)}
    100%{transform:rotate(-360deg)}
}

/* Gradient flash: solid purple → brand gradient → solid purple */
@keyframes kfC1{
    0%,34%{stop-color:#5A03FC}
    42%{stop-color:#5A03FC}
    50%{stop-color:#5A03FC}
    58%,100%{stop-color:#5A03FC}
}
@keyframes kfC2{
    0%,34%{stop-color:#5A03FC}
    42%{stop-color:#b966e7}
    50%{stop-color:#d4a0f5}
    58%,100%{stop-color:#5A03FC}
}

@keyframes kfShine{
    0%,36%{left:-80%;opacity:0}
    38%{opacity:1}
    54%{left:140%;opacity:1}
    56%,100%{left:140%;opacity:0}
}
