/* Race Reviews: Search By Race + Community Scoop Score panel (Sep 29 2026).
   Loaded only by race-reviews.html. Built from the existing tokens in
   styles.css and the existing race-autocomplete.css menu. Nothing sitewide. */

.review-search{
  background:var(--navy); color:var(--white); border-radius:var(--radius);
  padding:22px 24px 18px; margin:0 0 22px;
  box-shadow:0 10px 26px rgba(12,14,69,0.16);
}
.review-search-label{
  display:block; font-family:var(--font-head); font-size:15px; letter-spacing:1.4px;
  text-transform:uppercase; color:var(--yellow); margin:0 0 10px;
}
.review-search-row{ display:flex; gap:12px; align-items:stretch; }
.review-search-field{ flex:1 1 auto; min-width:0; }
.review-search-input{
  width:100%; font:inherit; font-size:17px; line-height:1.3; color:var(--ink);
  background:var(--white); border:3px solid var(--white); border-radius:12px;
  padding:14px 16px; outline:none; -webkit-appearance:none; appearance:none;
}
.review-search-input:focus{ border-color:var(--pink); box-shadow:0 0 0 3px rgba(238,27,108,0.25); }
.review-search-input::placeholder{ color:#8A8AA0; }
.review-search .race-autocomplete-menu{ color:var(--ink); max-height:340px; }
.review-search .race-autocomplete-option.is-active{ background:#fff4f8; }
.review-search-clear{
  flex:0 0 auto; white-space:nowrap; background:var(--white); color:var(--navy);
  border-color:var(--white); padding:12px 20px; font-size:14px;
}
.review-search-clear[hidden]{ display:none; }
.review-search-hint{ margin:10px 0 0; font-size:13px; color:#D8D9F0; }

/* Race -> Scoop Score -> Community Reviews */
.race-scoop-panel{
  background:var(--white); border-radius:var(--radius); border-top:6px solid var(--yellow);
  padding:22px 24px; margin:0 0 22px; box-shadow:0 8px 22px rgba(12,14,69,0.08);
}
.race-scoop-panel[hidden]{ display:none; }
.rsp-eyebrow{ display:block; font-family:var(--font-head); font-size:11px; letter-spacing:1.2px;
  text-transform:uppercase; color:var(--pink-deep); }
.rsp-race{ margin:4px 0 2px; color:var(--navy); font-size:28px; line-height:1.1; }
.rsp-meta{ margin:0 0 12px; font-size:13px; font-weight:600; color:var(--gray); letter-spacing:.3px; }
.rsp-score{
  display:flex; flex-wrap:wrap; align-items:center; gap:6px 16px;
  background:var(--cream); border-radius:12px; padding:14px 18px; margin:10px 0 8px;
}
.rsp-score-label{ font-family:var(--font-head); font-size:13px; letter-spacing:1.2px;
  text-transform:uppercase; color:var(--pink-deep); flex:1 1 100%; }
.rsp-score-num{ font-family:var(--font-head); font-size:44px; line-height:1; font-weight:700; color:var(--navy); }
.rsp-score-denom{ font-size:16px; color:var(--gray); margin-left:6px; font-weight:600; }
.rsp-tier{ font-family:var(--font-head); font-size:20px; color:var(--navy); letter-spacing:.5px; }
.rsp-score-pending{ font-family:var(--font-head); font-size:24px; color:var(--gray); letter-spacing:.5px; }
.rsp-basis{ margin:0; font-size:13px; line-height:1.5; color:var(--gray); }
.rsp-count{ margin:12px 0 0; font-size:14px; color:var(--navy); }

.review-more{ grid-column:1/-1; text-align:center; }
.review-empty-race{ margin:16px 0 0; padding:18px 0 0; border-top:1px solid #ECE9DD; }
.review-empty-title{ font-family:var(--font-head); font-size:22px; color:var(--navy); margin:0 0 14px; letter-spacing:.5px; }

@media (max-width: 640px){
  .review-search{ padding:18px 16px 14px; }
  .review-search-row{ flex-direction:column; gap:10px; }
  .review-search-input{ font-size:16px; padding:13px 14px; } /* 16px stops iOS zoom-on-focus */
  .review-search-clear{ width:100%; justify-content:center; }
  .review-search .race-autocomplete-menu{ max-height:280px; }
  .race-scoop-panel{ padding:18px 16px; }
  .rsp-race{ font-size:23px; }
  .rsp-score-num{ font-size:38px; }
}
