/* Rating Stars Component */
.rating-stars {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 1.2rem;
}

.rating-stars .star {
    color: var(--color-gray-300);
    transition: color var(--transition-fast);
}

.rating-stars .star.filled {
    color: var(--color-accent);
}

.rating-stars .star.half {
    color: var(--color-accent);
    position: relative;
}

.rating-stars .star.half:after {
    content: "★";
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    overflow: hidden;
    color: var(--color-gray-300);
}

.rating-value {
    margin-left: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-text);
}

/* Large Rating (for hero sections) */
.rating-large {
    font-size: 2rem;
}

.rating-large .rating-value {
    font-size: 1.5rem;
    color: white;
}

/* Small Rating */
.rating-small {
    font-size: 1rem;
}

.rating-small .rating-value {
    font-size: 0.85rem;
}

/* Rating in cards */
.review-card .rating-stars {
    margin-bottom: 0.75rem;
}

/* Rating colors */
.rating-excellent .star.filled {
    color: #10b981; /* Green for excellent */
}

.rating-good .star.filled {
    color: var(--color-accent); /* Yellow for good */
}

.rating-average .star.filled {
    color: #f59e0b; /* Orange for average */
}

.rating-poor .star.filled {
    color: #ef4444; /* Red for poor */
}
