.product-review-summary {
    align-items: center;
    color: inherit;
    display: inline-flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin: .15rem 0 .8rem;
    text-decoration: none;
}

.product-review-summary:hover span:last-child { text-decoration: underline; }
.product-review-stars { color: #d99a16; letter-spacing: .08em; white-space: nowrap; }
.product-reviews__intro { align-items: baseline; display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; }
.product-reviews__intro h2, .product-reviews__intro p { margin-top: 0; }
.product-review { border-top: 1px solid var(--color-border, #ddd); padding: 1.25rem 0; }
.product-review__meta { align-items: center; display: flex; flex-wrap: wrap; gap: .4rem .75rem; margin-bottom: .65rem; }
.product-review__meta time { color: var(--color-text-muted, #666); }
.product-review__verified { background: #eaf6ee; border-radius: 999px; color: #236b3a; font-size: .82rem; font-weight: 700; padding: .2rem .55rem; }
.product-review > p { margin: 0; overflow-wrap: anywhere; }
.product-reviews__notice { background: var(--color-surface-muted, #f6f6f6); border-radius: .4rem; font-size: .9rem; margin: 1rem 0 0; padding: .9rem 1rem; }
.product-reviews__pagination { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1rem; }
.product-reviews__pagination a { align-items: center; border: 1px solid var(--color-border, #ddd); border-radius: .3rem; display: inline-flex; justify-content: center; min-height: 2.25rem; min-width: 2.25rem; text-decoration: none; }
.product-reviews__pagination a.is-active { background: var(--color-primary, #222); color: #fff; }
.product-review-form-card { margin-inline: auto; max-width: 760px; }
.product-review-form-card__product { margin-bottom: 1.25rem; }
.product-review-rating { border: 0; margin: 0 0 1.25rem; padding: 0; }
.product-review-rating legend { font-weight: 700; margin-bottom: .5rem; }
.product-review-rating__choices { display: flex; flex-direction: row-reverse; gap: .35rem; justify-content: flex-end; }
.product-review-rating__choices label { cursor: pointer; position: relative; }
.product-review-rating__choices input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.product-review-rating__choices span[aria-hidden] { color: #9a9a9a; display: block; font-size: 2rem; line-height: 1; }
.product-review-rating__choices input:checked + span,
.product-review-rating__choices label:has(input:checked) ~ label span[aria-hidden] { color: #d99a16; }
.product-review-rating__choices input:focus-visible + span { outline: 2px solid currentColor; outline-offset: 3px; }
.product-review-order-state { color: var(--color-text-muted, #666); font-size: .88rem; }

@media (max-width: 640px) {
    .product-review__meta { align-items: flex-start; flex-direction: column; }
    .product-review-form-card { max-width: 100%; }
}
