/* ==================================================
   Trigger Widget Box Styles
================================================== */
.custom-sales-trigger-box { 
    background: #ffffff !important; 
    border: 1px solid #eaeaea !important; 
    border-radius: var(--trigger-br, 8px) !important; 
    box-shadow: 0 4px 12px rgba(0,0,0,0.05) !important; 
    padding: 12px 18px !important; 
    margin-bottom: 15px !important; 
    font-size: 14px; 
    color: #444; 
    line-height: 1.5; 
    
    /* Forces the box to shrink-wrap to the text width */
    display: inline-flex !important; 
    width: max-content !important; 
    max-width: 100% !important; 
    box-sizing: border-box !important;
    
    align-items: center; 
    gap: 12px;
}

/* Forces multiple triggers to stack vertically on their own lines */
.custom-sales-trigger-box {
    clear: both;
    float: left;
}
.custom-sales-trigger-box + .custom-sales-trigger-box {
    clear: both;
}

.trigger-star-rating { 
    cursor: pointer; 
    color: #ffb700; 
    font-weight: bold; 
    text-decoration: none; 
    font-size: 14px; 
}

.live-viewers-wrapper { 
    display: flex; 
    align-items: center; 
    gap: 10px; 
    font-size: 14px;
}

.live-dot { 
    height: 10px; 
    width: 10px; 
    background-color: #ff4c4c; 
    border-radius: 50%; 
    display: inline-block; 
    animation: pulse-dot 1.5s infinite; 
    flex-shrink: 0;
}

@keyframes pulse-dot { 
    0% { box-shadow: 0 0 0 0 rgba(255, 76, 76, 0.7); } 
    70% { box-shadow: 0 0 0 8px rgba(255, 76, 76, 0); } 
    100% { box-shadow: 0 0 0 0 rgba(255, 76, 76, 0); } 
}

/* ==================================================
   Strict Grid Layout for Reviews
================================================== */
.brand-reviews-grid { 
    display: grid !important; 
    grid-template-columns: repeat(var(--desk-cols, 2), 1fr) !important; 
    gap: 25px !important; 
    margin-top: 30px; 
    align-items: start; 
    clear: both;
}

@media (max-width: 768px) { 
    .brand-reviews-grid { 
        grid-template-columns: repeat(var(--mob-cols, 1), 1fr) !important; 
    } 
}

/* ==================================================
   Review Card Styles
================================================== */
.review-card { 
    background: #ffffff !important; 
    color: #333 !important; 
    border: 1px solid #eaeaea !important;
    border-radius: 12px !important; 
    box-shadow: 0 8px 25px rgba(0,0,0,0.15) !important; 
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
}

.review-card img { 
    width: 100% !important; 
    height: auto !important; 
    display: block !important; 
    margin: 0 !important; 
    padding: 0 !important;
    border-radius: 0 !important; 
}

.review-card-content { 
    padding: 25px 20px !important; 
}

.review-stars { 
    color: var(--star-color, #202020) !important; 
    margin-bottom: 12px !important; 
    font-size: 24px !important; 
    letter-spacing: 2px !important;
}

.review-title { 
    font-size: 16px !important; 
    font-weight: bold !important; 
    margin: 0 0 10px 0 !important; 
    color: #111 !important; 
}

.review-text { 
    font-size: 15px !important; 
    line-height: 1.6 !important; 
    margin-bottom: 20px !important; 
    color: #444 !important; 
}

.review-text p {
    margin-bottom: 0 !important;
}

.review-author { 
    font-size: 14px !important; 
    font-weight: 600 !important; 
    color: #111 !important; 
    display: flex !important; 
    align-items: center !important; 
}

.btn-load-more { 
    display: block !important; 
    margin: 30px auto !important; 
    padding: 12px 35px !important; 
    background: #333 !important; 
    color: #fff !important; 
    border: none !important; 
    border-radius: 6px !important; 
    cursor: pointer !important; 
    font-weight: bold !important; 
    transition: background 0.2s !important;
    clear: both;
}

.btn-load-more:hover { 
    background: #111 !important; 
}