/* GPU-friendly badge effects: transform + opacity only */
@keyframes gpointBadgeShine {
    0%   { transform: translateX(-120%); }
    100% { transform: translateX(120%); }
}
@keyframes gpointBadgeGlow {
    0%, 100% { opacity: 0.35; }
    50%      { opacity: 0.85; }
}

.premium-badge,
.verified-badge {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(135deg, #D2AC47 0%, #F7EF8A 25%, #AE8625 50%, #F7EF8A 75%, #D2AC47 100%);
    border-radius: 4px;
    color: #000;
    display: inline-block;
    white-space: nowrap;
    line-height: 1.2;
    z-index: 5;
}

.premium-badge {
    padding: 3px 8px;
    font-size: 0.7rem;
    font-weight: bold;
}

.premium-badge::before,
.verified-badge::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, 0.45) 50%, transparent 65%);
    transform: translateX(-120%);
    animation: gpointBadgeShine 3s ease infinite;
    pointer-events: none;
}

.premium-badge::after,
.verified-badge:not(.verified-badge--similar)::after {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: inherit;
    background: radial-gradient(circle, rgba(247, 239, 138, 0.55) 0%, rgba(210, 172, 71, 0.15) 70%, transparent 100%);
    opacity: 0.4;
    z-index: -1;
    animation: gpointBadgeGlow 2s ease-in-out infinite;
    pointer-events: none;
}

.verified-badge--similar::after {
    display: none;
}
