/* ══════════════════════════════════════════════════════════════════════════════
   SHARED — Buttons, Stars, Glimmer
   ══════════════════════════════════════════════════════════════════════════════ */

.affiliate-abbtn,
.affiliate-sp-btn,
.affiliate-productverdict-btn,
.affiliate-coupon-btn a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    font-family: var(--ab-font);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    color: #fff;
    background: var(--ab-btn-bg);
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.25s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.affiliate-abbtn:hover,
.affiliate-sp-btn:hover,
.affiliate-productverdict-btn:hover,
.affiliate-coupon-btn a:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(231, 22, 58, 0.3);
    color: #fff;
    text-decoration: none;
}

.btn-is-small { font-size: 14px; padding: 10px 20px; }
.btn-is-fullw { width: 100%; text-align: center; }
.btn-is-rounded { border-radius: 50px; }

.glimmer-effect::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.25) 50%, transparent 100%);
    animation: ab-glimmer 3s ease-in-out infinite;
}

@keyframes ab-glimmer {
    0% { left: -100%; }
    50% { left: 120%; }
    100% { left: 120%; }
}

.affiliate-abbtn-icon {
    font-size: 12px;
}

.af-icon-is-left { margin-right: 4px; }
.af-icon-is-right { margin-left: 4px; }

.affiliate-star-item {
    display: inline-block;
    width: 18px;
    height: 18px;
}

.affiliate-star-item svg {
    width: 100%;
    height: 100%;
}

