/* ============================================
   CASINO REVIEWS - Стили блока отзывов
   Version: 3.0.0 - Adapted to theme-vars.css
   Description: Стили для отзывов с Font Awesome звёздами
   Dependencies: theme-vars.css, Font Awesome 5
   ============================================ */

/* ============================================
   1. КОНТЕЙНЕР ОТЗЫВОВ
   ============================================ */
.review-block {
    /*background: linear-gradient(135deg, 
        var(--bg-secondary) 0%, 
        var(--bg-tertiary) 100%
    );
    border-radius: var(--radius-xl);*/
    border: 1px solid var(--border-color);
}

.reviews-container {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
    margin-top: var(--spacing-lg);
}

/* ============================================
   2. КАРТОЧКА ОТЗЫВА
   ============================================ */
.review-item {
/*    background: #ffffff;
    border-radius: var(--radius-xs); 
    padding: var(--spacing-xl);
    box-shadow: var(--shadow-sm);
    transition: var(--transition-base);
    border: 1px solid rgba(0, 0, 0, 0.05);*/
    
/*    background: var(--bg-secondary);*/
    background: var(--gt-table-light);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    padding: var(--spacing-lg);
    transition: var(--transition-base);

    
}

.review-item:hover {
/*    box-shadow: var(--shadow-md);
    transform: translateY(-2px);*/
    border-color: var(--primary);
    box-shadow: var(--shadow-lg);
}

/* ============================================
   3. ХЕДЕР ОТЗЫВА (Рейтинг + Имя)
   ============================================ */
.review-header {
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
    margin-bottom: var(--spacing-lg);
/*    margin-bottom: var(--spacing-10);*/
    padding-bottom: var(--spacing-lg);
/*    padding-bottom: var(--spacing-10);*/
/*    border-bottom: 1px solid #e9ecef;*/
    border-bottom: 3px solid var(--primary);
    flex-wrap: wrap;
}

/* Рейтинг звездами - FONT AWESOME */
.review-rating {
    display: flex;
    align-items: center;
    gap: 2px;
}

.review-rating .star {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
/*    font-size: var(--font-lg);*/
    line-height: 1;
    display: inline-block;
}

/* Заполненная звезда - solid (fas fa-star) */
.review-rating .star.filled {
    color: #ff9500;
}

.review-rating .star.filled::before {
    content: "\f005"; /* fas fa-star */
}

/* Половинная звезда - star-half-alt */
.review-rating .star.half {
    color: #ff9500;
}

.review-rating .star.half::before {
    content: "\f5c0"; /* fas fa-star-half-alt */
}

/* Пустая звезда - regular (far fa-star) */
.review-rating .star.empty {
    font-weight: 400; /* Regular weight для пустой */
    color: #e0e0e0;
}

.review-rating .star.empty::before {
    content: "\f005"; /* far fa-star */
}

.review-rating .rating-value {
    margin-left: 4px;
    font-weight: var(--font-bold);
    font-size: var(--font-base);
    color: #ff9500;
    background: #fff5e6;
    padding: 4px 10px;
    border-radius: var(--radius-sm);
    display: inline-block;
    line-height: 1.2;
}

/* Разделитель */
.review-separator {
/*    color: #6c757d;*/
    color: var(--primary);
    font-size: var(--font-base);
}

/* Имя пользователя */
.reviewer-name {
/*    font-weight: var(--font-semibold);
    font-size: var(--font-base);
    color: #495057;*/
    font-size: var(--font-md);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

/* ============================================
   4. ТЕКСТ ОТЗЫВА
   ============================================ */
.review-text {
    color: #333333;
    font-size: var(--font-base);
    line-height: var(--line-height-relaxed);
    margin-bottom: var(--spacing-lg);
}

.review-text p {
    margin-bottom: var(--spacing-sm);
/*    color: #333333;*/
    color: var(--text-secondary);
}

.review-text p:last-child {
    margin-bottom: 0;
}

/* ============================================
   5. ОТВЕТ РЕДАКЦИИ (Синий блок)
   ============================================ */
.admin-reply {
/*    background: #e3f2fd;*/
    background: var(--bg-secondary);
    border-left: 4px solid var(--info);
    border-radius: var(--radius-md);
    padding: var(--spacing-lg);
/*    margin-bottom: var(--spacing-lg);*/
    margin-bottom: var(--spacing-10);
    position: relative;
}

.admin-reply-icon {
    position: absolute;
    top: var(--spacing-lg);
    left: var(--spacing-lg);
    font-size: var(--font-lg);
    color: var(--info);
    font-weight: var(--font-bold);
}

.admin-reply-label {
    padding-left: var(--spacing-xl);
    font-weight: var(--font-bold);
    color: var(--info);
    font-size: var(--font-sm);
    margin-bottom: var(--spacing-xs);
}

.admin-reply-text {
/*    padding-left: var(--spacing-xl);*/
    color: #495057;
    font-size: var(--font-sm);
    line-height: var(--line-height-relaxed);
}

.admin-reply-text p {
    margin-bottom: var(--spacing-xs);
    color: #495057;
}

.admin-reply-text p:last-child {
    margin-bottom: 0;
    color: var(--text-secondary);
}

/* ============================================
   6. КНОПКИ ОБРАТНОЙ СВЯЗИ - ТОЧНАЯ КОПИЯ FAQ
   ============================================ */
.review-feedback {
    margin: 0 !important;
    padding: var(--spacing-md) var(--spacing-lg);
    border-top: var(--border-thin) solid var(--border-secondary);
/*    background: #f8f9fa;*/
    background: var(--bg-secondary);
    display: flex;
    align-items: center;
    gap: var(--spacing-md);
    flex-wrap: wrap;
}

.review-feedback-question {
    font-size: var(--font-sm);
/*    color: #333333 !important;*/
    color: var(--text-secondary);
    font-weight: var(--font-medium);
    margin: 0 !important;
    padding-top: 6px;
    padding-bottom: 6px;
}

.review-feedback-buttons {
    display: flex;
    gap: var(--spacing-sm);
    margin: 0 !important;
}

.feedback-btn {
    padding: 6px 16px;
    font-size: var(--font-sm);
    font-weight: var(--font-semibold);
    border: 2px solid;
    border-radius: var(--radius-xs);    /*border-radius: var(--radius-sm);*/
    cursor: pointer;
    transition: var(--transition-base);
    background: #ffffff;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.feedback-yes {
/*    color: var(--success);*/
    color: var(--info);
/*    border-color: var(--success);*/
    border-color: var(--info);
    background: var(--bg-secondary);
}

.feedback-yes:hover {
/*    background: var(--success);*/
    background: var(--info);
    color: var(--text-on-dark);
}

.feedback-no {
/*    color: var(--error);*/
    color: var(--text-on-red);
/*    border-color: var(--error);*/
    border-color: var(--text-on-red);    
    background: var(--bg-secondary);
}

.feedback-no:hover {
/*    background: var(--error);*/
    background: var(text-on-red);
    color: var(--text-on-dark);
}

.feedback-icon {
    font-size: var(--font-base);
}

.feedback-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.review-feedback-thanks {
/*    color: var(--success) !important;*/
    color: var(--info) !important;
    font-size: var(--font-sm);
    font-weight: var(--font-semibold);
    display: none;
    margin: 0 !important;
}

.review-feedback-thanks i {
    font-size: var(--font-md);
}

/* ============================================
   7. АДАПТИВНОСТЬ
   ============================================ */

/* Планшеты и мобильные (≤768px) */
@media (max-width: 768px) {
    .review-item {
        padding: var(--spacing-lg);
    }
    
    .review-header {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--spacing-xs);
        padding-bottom: var(--spacing-md);
    }
    
    .review-separator {
        display: none;
    }
    
    .reviewer-name {
        width: 100%;
        padding-top: var(--spacing-xs);
        border-top: 1px solid #e9ecef;
    }
    
    .review-text {
        font-size: var(--font-sm);
    }
    
    .review-feedback {
        padding: var(--spacing-md);
    }
    
    /* ✅ КНОПКИ НА ВСЮ ШИРИНУ */
    .review-feedback-buttons {
        width: 100%;
        gap: 12px;
    }
    
    .feedback-btn {
        flex: 1; /* ← Равномерное распределение */
        justify-content: center; /* ✅ ТЕКСТ ПО ЦЕНТРУ */
        text-align: center;
    }
}

/* Смартфоны (≤480px) */
@media (max-width: 480px) {
    .review-rating .star {
        font-size: var(--font-base);
    }
    
    .rating-value {
        font-size: var(--font-sm);
    }
    
    .admin-reply {
        padding: var(--spacing-md);
    }
    
    .admin-reply-label,
    .admin-reply-text {
        padding-left: var(--spacing-lg);
    }
    
    .admin-reply-icon {
        top: var(--spacing-md);
        left: var(--spacing-md);
    }
    
    .review-feedback {
        padding: var(--spacing-sm) var(--spacing-md);
        flex-direction: column;
        align-items: flex-start;
    }
    
    /* ✅ ВЕРТИКАЛЬНЫЕ КНОПКИ НА ВСЮ ШИРИНУ */
    .review-feedback-buttons {
        width: 100%;
        flex-direction: column;
        gap: 8px;
    }
    
    .feedback-btn {
        width: 100%; /* ← На всю ширину */
        justify-content: center; /* ✅ ТЕКСТ ПО ЦЕНТРУ */
        text-align: center;
    }
}

/* ============================================
   8. БЛОК ПОЛЬЗОВАТЕЛЯ (перенесено из content-blocks.css)
   ============================================ */
.review-block__user-info {
    display: flex;
    align-items: center;
    gap: var(--spacing-md);
    margin-bottom: var(--spacing-md);
}

.review-block__avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--primary);
    color: var(--bg-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-xl);
    font-weight: var(--font-bold);
    text-transform: uppercase;
    flex-shrink: 0;
}

.review-block__user-name {
    font-size: var(--font-md);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    margin-bottom: 3px;
}

.review-block__admin-reply-content {
    font-size: var(--font-sm);
    line-height: var(--line-height-normal);
    color: var(--text-secondary);
}

.review-block__admin-reply-header {
    display: flex;
    align-items: center;
    gap: var(--spacing-xs);
    margin-bottom: var(--spacing-sm);
    font-size: var(--font-sm);
    color: var(--primary);
}

.review-block__admin-reply-content p:last-child {
    margin-bottom: 0;
}
