.bs-rating-vote-box {
	padding: 15px 20px;
	background: #fff;
	border: 1px solid #eee;
	border-radius: 6px;
	max-width: 400px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
	text-align: center;
	margin: 15px auto;
}
.post-meta-top {
	display: flex;
	gap: 20px;
	margin: 10px 0;
	flex-wrap: wrap;
}
.bs-vote-title { font-weight: bold; margin: 0 0 10px 0; color: #333; font-size: 15px; }
.bs-stars-wrapper {
	display: flex;
	gap: 6px;
	margin-bottom: 8px;
	justify-content: center;
}
.bs-star { font-size: 26px; color: #ccc; cursor: pointer; transition: color 0.2s ease, transform 0.1s ease; line-height: 1; user-select: none; }
.bs-rating-vote-box:not(.voted) .bs-stars-wrapper:hover .bs-star { color: #ffcc00; }
.bs-rating-vote-box:not(.voted) .bs-star:hover ~ .bs-star { color: #ccc; }
.bs-star:active { transform: scale(0.9); }
.bs-star.active, .bs-rating-vote-box.voted .bs-star.active { color: #ffcc00; }
.bs-rating-vote-box.voted { opacity: 0.9; }
.bs-rating-vote-box.voted .bs-star { cursor: default; }
.bs-vote-message { font-size: 13px; color: #2e7d32; min-height: 18px; margin-bottom: 4px; font-weight: 500; }
.bs-vote-summary { font-size: 13px; color: #777; margin: 0; }
