.ppr-reviews { --ppr-ink:#243c35; --ppr-muted:#63716c; --ppr-line:#dce4df; --ppr-green:#315b49; --ppr-gold:#a77928; color:var(--ppr-ink); font:inherit; line-height:1.6; width:100%; min-width:0; overflow-wrap:anywhere; }
.ppr-reviews *, .ppr-reviews *::before, .ppr-reviews *::after { box-sizing:border-box; }
.ppr-reviews h3 { font-size:22px; font-weight:600; line-height:1.35; margin:0 0 22px; color:var(--ppr-ink); }
.ppr-reviews p { margin:0 0 14px; }
.ppr-reviews .ppr-review-summary { padding:24px 0 32px; border-bottom:1px solid var(--ppr-line); }
.ppr-reviews .ppr-summary-grid { display:grid; grid-template-columns:minmax(180px,1fr) minmax(0,1.5fr); gap:32px; align-items:center; }
.ppr-reviews .ppr-summary-score { text-align:left; }
.ppr-reviews .ppr-average { display:flex; gap:6px; align-items:baseline; margin:10px 0 2px; }
.ppr-reviews .ppr-average strong { font-size:40px; font-weight:600; line-height:1.3; }
.ppr-reviews .ppr-average span, .ppr-reviews .ppr-summary-score > p:last-of-type { color:var(--ppr-muted); }
.ppr-reviews .ppr-stars { position:relative; display:inline-block; color:var(--ppr-gold); font-family:Arial,sans-serif; font-size:23px; line-height:1.2; letter-spacing:2px; white-space:nowrap; vertical-align:middle; }
.ppr-reviews .ppr-stars-fill { position:absolute; inset:0 auto 0 0; overflow:hidden; color:var(--ppr-gold); }
.ppr-reviews .ppr-distribution { display:grid; gap:12px; }
.ppr-reviews .ppr-distribution-row { display:grid; grid-template-columns:32px minmax(0,1fr) 38px; gap:12px; align-items:center; font-size:14px; }
.ppr-reviews .ppr-distribution-row > span:last-child { text-align:right; font-variant-numeric:tabular-nums; }
.ppr-reviews progress { display:block; width:100%; height:9px; border:0; border-radius:12px; overflow:hidden; appearance:none; background:#edf1ee; color:var(--ppr-green); }
.ppr-reviews progress::-webkit-progress-bar { background:#edf1ee; border-radius:12px; }
.ppr-reviews progress::-webkit-progress-value { background:var(--ppr-green); border-radius:12px; }
.ppr-reviews progress::-moz-progress-bar { background:var(--ppr-green); border-radius:12px; }
.ppr-reviews .ppr-review-card { padding:26px 0; border-bottom:1px solid var(--ppr-line); }
.ppr-reviews .ppr-card-top { display:flex; flex-wrap:wrap; gap:10px 20px; align-items:center; justify-content:space-between; margin-bottom:12px; }
.ppr-reviews .ppr-date { color:var(--ppr-muted); font-size:13px; }
.ppr-reviews .ppr-card-author { display:flex; flex-wrap:wrap; gap:8px 16px; align-items:center; margin-bottom:12px; }
.ppr-reviews .ppr-card-author strong { font-weight:600; }
.ppr-reviews .ppr-verified { display:inline-flex; align-items:center; gap:5px; color:#315b49; background:#eff5f0; border-radius:5px; padding:2px 8px; font-size:12px; }
.ppr-reviews .ppr-review-text { white-space:pre-line; overflow-wrap:anywhere; margin:0; }
.ppr-reviews .ppr-pagination { display:flex; flex-wrap:wrap; gap:14px; align-items:center; justify-content:center; margin:24px 0; }
.ppr-reviews .ppr-previous { min-height:44px; display:inline-flex; align-items:center; }
.ppr-reviews .ppr-button { appearance:none; display:inline-flex; align-items:center; justify-content:center; min-height:46px; max-width:100%; padding:10px 22px; border:1px solid var(--ppr-green); border-radius:6px; background:var(--ppr-green); color:#fff; font:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:center; text-decoration:none; cursor:pointer; }
.ppr-reviews .ppr-button:hover { background:#244536; color:#fff; }
.ppr-reviews .ppr-button-outline { background:transparent; color:var(--ppr-green); }
.ppr-reviews .ppr-button-outline:hover { background:#f0f5f1; color:var(--ppr-green); }
.ppr-reviews .ppr-button:disabled, .ppr-reviews .ppr-button[aria-disabled="true"] { opacity:.65; cursor:wait; }
.ppr-reviews :is(a,button,input,textarea):focus-visible { outline:3px solid #a77928; outline-offset:3px; }
.ppr-reviews .ppr-empty { padding:8px 0; color:var(--ppr-muted); }
.ppr-reviews .ppr-empty-title { font-weight:600; font-size:18px; color:var(--ppr-ink); }
.ppr-reviews .ppr-form-section { padding:32px 0 20px; }
.ppr-reviews .ppr-review-form { width:100%; max-width:720px; }
.ppr-reviews .ppr-form-hint { color:var(--ppr-muted); font-size:13px; }
.ppr-reviews .ppr-field { margin-bottom:20px; }
.ppr-reviews .ppr-field label { display:block; margin-bottom:7px; font-weight:600; font-size:14px; }
.ppr-reviews .ppr-field input, .ppr-reviews .ppr-field textarea { display:block; width:100%; min-width:0; padding:12px 14px; border:1px solid #b8c6be; border-radius:6px; background:#fff; color:var(--ppr-ink); font:inherit; font-size:16px; line-height:1.5; }
.ppr-reviews .ppr-field textarea { resize:vertical; min-height:140px; }
.ppr-reviews .ppr-field [aria-invalid="true"] { border-color:#a33131; }
.ppr-reviews .ppr-rating-input { border:0; padding:0; margin:0 0 20px; min-width:0; }
.ppr-reviews .ppr-rating-input legend { width:auto; border:0; padding:0; margin:0 0 7px; color:var(--ppr-ink); font-size:14px; font-weight:600; }
.ppr-reviews .ppr-star-options { display:flex; width:max-content; max-width:100%; gap:4px; }
.ppr-reviews .ppr-star-option { display:inline-flex; position:relative; align-items:center; justify-content:center; margin:0; width:48px; height:48px; cursor:pointer; }
.ppr-reviews .ppr-star-option input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; margin:0; }
.ppr-reviews .ppr-star-option span { display:block; font-family:Arial,sans-serif; color:var(--ppr-gold); font-size:34px; line-height:1; pointer-events:none; }
.ppr-reviews .ppr-star-option:has(input:focus-visible) { outline:3px solid #a77928; outline-offset:2px; border-radius:4px; }
.ppr-reviews .ppr-star-option:focus-within { outline:3px solid #a77928; outline-offset:2px; border-radius:4px; }
.ppr-reviews .ppr-captcha { max-width:100%; margin:0 0 18px; overflow-wrap:anywhere; }
.ppr-reviews .ppr-captcha img, .ppr-reviews .ppr-captcha iframe { max-width:100%; }
.ppr-reviews .ppr-captcha input { max-width:100%; font-size:16px; min-height:44px; }
.ppr-reviews .ppr-field-error { color:#9c2929; font-size:13px; margin:6px 0 0; }
.ppr-reviews .ppr-field-error:empty, .ppr-reviews .ppr-message:empty { display:none; }
.ppr-reviews .ppr-message { font-size:14px; margin:16px 0; }
.ppr-reviews .ppr-message.ppr-error { color:#9c2929; }
.ppr-reviews.ppr-mini-rating { display:inline-flex; width:auto; }
.ppr-reviews.ppr-mini-rating a { display:inline-flex; flex-wrap:wrap; gap:8px; align-items:center; color:var(--ppr-ink); }
@media (max-width:600px) {
  .ppr-reviews .ppr-summary-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .ppr-reviews .ppr-review-summary { padding-top:16px; }
  .ppr-reviews h3 { font-size:20px; }
  .ppr-reviews .ppr-review-card { padding:22px 0; }
  .ppr-reviews .ppr-pagination .ppr-button, .ppr-reviews .ppr-review-form > .ppr-button { width:100%; }
  .ppr-reviews .ppr-button { padding:11px 16px; }
}
@media (prefers-reduced-motion:reduce) { .ppr-reviews { scroll-behavior:auto; } }
.ppr-reviews .ppr-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
