/* Community unit: reviews panel, review page, contact form. */
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
section.reviews { margin-top: 32px; padding-top: 16px; border-top: 1px solid var(--line); }
section.reviews h2 { margin: 0 0 12px; }
article.review { background: var(--card); border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; margin: 0 0 12px; }
.review-head { margin: 0 0 6px; font-size: 14px; color: var(--muted); }
.review-head .stars { color: var(--accent); letter-spacing: 1px; font-size: 16px; }
.review-head .rating { font-weight: 600; color: var(--fg); }
.review-body { margin: 0; white-space: pre-line; overflow-wrap: anywhere; }
.review-form, .contact-form { max-width: 560px; }
.review-rating { border: 0; padding: 0; margin: 8px 0; }
.review-rating legend { margin-bottom: 4px; }
.review-rating label { display: inline-flex; align-items: center; gap: 4px; margin: 0 12px 6px 0; }
.review-rating span[aria-hidden] { color: var(--accent); }
.review-form textarea, .contact-form input, .contact-form textarea { width: 100%; }
.review-note { font-size: 14px; }
.contact { max-width: 640px; }
p.sent { background: var(--card); border: 1px solid var(--accent); border-radius: 8px; padding: 10px 14px; }
