.reviews-container {
    padding: 20px;
    background: #f8f9fa;
    min-height: calc(100vh - 120px);
}

.reviews-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    background: #fff;
    padding: 16px 20px;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.reviews-header h2 { margin: 0; font-size: 18px; color: #1a1a2e; }
.reviews-header-right { display: flex; gap: 10px; align-items: center; }
.rev-filter-select { padding: 6px 12px; border: 1px solid #d0d0d0; border-radius: 6px; font-size: 13px; }

.reviews-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 20px;
}

.stat-card {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.stat-value {
    font-size: 32px;
    font-weight: 700;
    color: #0050b3;
}

.stat-label {
    font-size: 13px;
    color: #888;
    margin-top: 4px;
}

.reviews-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.review-card {
    background: #fff;
    border-radius: 10px;
    padding: 18px 22px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.review-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.review-guest {
    display: flex;
    align-items: center;
    gap: 10px;
}

.review-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
}

.review-avatar.booking { background: #003580; }
.review-avatar.airbnb { background: #FF5A5F; }

.review-name { font-weight: 600; font-size: 14px; color: #1a1a2e; }
.review-meta { font-size: 12px; color: #999; }

.review-score {
    font-size: 22px;
    font-weight: 700;
    width: 44px;
    height: 44px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.review-score.high { background: #27ae60; }
.review-score.medium { background: #f39c12; }
.review-score.low { background: #e74c3c; }

.review-content { margin: 10px 0; }

.review-positive, .review-negative {
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 13px;
    margin-bottom: 6px;
    line-height: 1.4;
}

.review-positive { background: #e8f5e9; border-left: 3px solid #27ae60; }
.review-negative { background: #fce4ec; border-left: 3px solid #e74c3c; }
.review-text-plain { font-size: 13px; color: #444; line-height: 1.5; padding: 6px 0; }

.review-reply {
    background: #f0f4ff;
    border-left: 3px solid #0050b3;
    padding: 10px 14px;
    border-radius: 6px;
    margin-top: 10px;
    font-size: 13px;
}

.review-reply-label { font-weight: 600; color: #0050b3; font-size: 12px; margin-bottom: 4px; }
.review-no-reply { font-size: 12px; color: #e74c3c; font-style: italic; margin-top: 8px; }

.btn-sync { padding: 6px 14px; border: 1px solid #0050b3; background: #fff; color: #0050b3; border-radius: 6px; font-size: 13px; cursor: pointer; }
.btn-sync:hover { background: #0050b3; color: #fff; }

.loading-placeholder { padding: 40px; text-align: center; color: #999; }

@media (max-width: 768px) {
    .reviews-stats { grid-template-columns: 1fr; }
}
.btn-reply { margin-left: 10px; padding: 4px 12px; background: #0050b3; color: #fff; border: none; border-radius: 4px; cursor: pointer; font-size: 12px; }
.btn-reply:hover { background: #003d8a; }
.reply-form { margin-top: 12px; padding: 12px; background: #f8f9fa; border-radius: 8px; }
.reply-textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 6px; font-size: 13px; font-family: inherit; resize: vertical; box-sizing: border-box; }
.reply-textarea:focus { border-color: #0050b3; outline: none; }
.reply-actions { display: flex; gap: 8px; margin-top: 8px; justify-content: flex-end; }
.btn-send-reply { padding: 6px 16px; background: #0050b3; color: #fff; border: none; border-radius: 6px; cursor: pointer; font-size: 13px; }
.btn-send-reply:hover { background: #003d8a; }
.btn-cancel-reply { padding: 6px 16px; background: #eee; color: #666; border: none; border-radius: 6px; cursor: pointer; font-size: 13px; }