.review-stars { display: flex; gap: 4px; width: fit-content; margin: 8px 0; }
.contact-form .review-star { position: relative; display: grid; place-items: center; width: 48px; height: 48px; margin: 0; border-radius: 8px; cursor: pointer; }
.contact-form .review-star input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; padding: 0; }
.review-star svg { width: 36px; height: 36px; fill: transparent; stroke: #796337; stroke-width: 1.5; stroke-linejoin: round; }
.review-star:has(input:focus-visible) { outline: 3px solid #174e80; outline-offset: 2px; }
@media (hover: hover) { .review-star:hover { background: #fff3d4; } }
.review-stars:has(input[value="1"]:checked) .review-star:nth-child(-n+1) svg { fill: #e8ae32; stroke: #796337; }
.review-stars:has(input[value="2"]:checked) .review-star:nth-child(-n+2) svg { fill: #e8ae32; stroke: #796337; }
.review-stars:has(input[value="3"]:checked) .review-star:nth-child(-n+3) svg { fill: #e8ae32; stroke: #796337; }
.review-stars:has(input[value="4"]:checked) .review-star:nth-child(-n+4) svg { fill: #e8ae32; stroke: #796337; }
.review-stars:has(input[value="5"]:checked) .review-star:nth-child(-n+5) svg { fill: #e8ae32; stroke: #796337; }
@media (forced-colors: active) { .review-star svg { stroke: ButtonText; } .review-star:has(input:checked) { outline: 2px solid Highlight; } }
