/* ===== Product Reviews Styles ===== */
.pk-reviews-section {
  max-width: 900px;
  margin: 40px auto;
  padding: 32px 24px;
  background: var(--bg-dark, #0a0a0a);
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
}
.pk-reviews-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; flex-wrap:wrap; gap:12px; }
.pk-reviews-title { font-family:var(--font-heading, 'Anton', sans-serif); font-size:1.8rem; color:#fff; margin:0; }
.pk-reviews-loading { text-align:center; color:var(--text-gray, #888); padding:40px 0; font-size:24px; }
.pk-reviews-error { color:#c33; text-align:center; padding:20px; }
.pk-reviews-empty { text-align:center; padding:32px; color:var(--text-gray, #888); font-size:16px; }

.pk-reviews-summary { display:flex; gap:32px; padding:24px; background:#111; border-radius:10px; margin-bottom:24px; flex-wrap:wrap; }
.pk-reviews-score { text-align:center; min-width:160px; }
.pk-big-score { font-size:3.5rem; font-weight:700; color:#fff; line-height:1; }
.pk-reviews-count { color:var(--text-gray, #888); font-size:14px; margin-top:8px; }
.pk-dist { flex:1; min-width:240px; display:flex; flex-direction:column; justify-content:center; gap:6px; }
.pk-dist-row { display:flex; align-items:center; gap:10px; font-size:13px; color:var(--text-gray, #888); }
.pk-dist-star { width:28px; color:#d4af37; }
.pk-dist-bar { flex:1; height:8px; background:#222; border-radius:4px; overflow:hidden; }
.pk-dist-fill { height:100%; background:#d4af37; transition:width .4s; }
.pk-dist-count { width:30px; text-align:right; }

.pk-reviews-list { display:flex; flex-direction:column; gap:16px; }
.pk-review { background:#111; border:1px solid #1f1f1f; border-radius:10px; padding:20px; }
.pk-review-head { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:10px; flex-wrap:wrap; gap:8px; }
.pk-review-meta { display:flex; flex-direction:column; gap:4px; }
.pk-review-author { font-weight:600; color:#fff; font-size:15px; }
.pk-verified { color:#5b9; font-size:12px; }
.pk-review-date { color:var(--text-gray, #888); font-size:12px; }
.pk-review-title { color:#fff; font-size:16px; margin:0 0 8px; font-family:var(--font-heading, 'Inter', sans-serif); }
.pk-review-body { color:#ccc; line-height:1.6; margin:0 0 12px; font-size:14px; white-space:pre-wrap; }
.pk-helpful-btn { background:none; border:1px solid #333; color:var(--text-gray, #888); padding:5px 12px; border-radius:20px; font-size:12px; cursor:pointer; transition:all .2s; }
.pk-helpful-btn:hover { border-color:#d4af37; color:#d4af37; }
.pk-helpful-btn[data-voted] { opacity:.7; cursor:default; }

.pk-review-form-wrap { margin-top:24px; padding:24px; background:#111; border-radius:10px; border:1px solid #222; }
.pk-form-title { color:#fff; font-family:var(--font-heading, sans-serif); margin:0 0 16px; font-size:1.3rem; }
.pk-review-form { display:flex; flex-direction:column; gap:14px; }
.pk-form-row { display:flex; flex-direction:column; gap:6px; }
.pk-form-row label { color:var(--text-gray, #aaa); font-size:13px; font-weight:500; }
.pk-form-row input, .pk-form-row textarea {
  background:#0a0a0a; border:1px solid #333; color:#fff; padding:10px 12px; border-radius:6px; font-size:14px; font-family:inherit;
}
.pk-form-row input:focus, .pk-form-row textarea:focus { outline:none; border-color:#d4af37; }
.pk-star-input { font-size:28px; letter-spacing:4px; }
.pk-star-pick { color:#444; cursor:pointer; transition:color .15s; }
.pk-star-pick.active, .pk-star-pick.selected { color:#d4af37; }
.pk-form-actions { display:flex; gap:12px; margin-top:8px; }
.pk-btn { padding:10px 24px; border-radius:6px; font-size:14px; font-weight:600; cursor:pointer; border:none; transition:all .2s; }
.pk-btn-gold { background:#d4af37; color:#000; }
.pk-btn-gold:hover { background:#e6c14f; }
.pk-btn-gold:disabled { opacity:.6; cursor:not-allowed; }
.pk-btn-ghost { background:transparent; color:var(--text-gray, #888); border:1px solid #333; }
.pk-btn-ghost:hover { color:#fff; border-color:#555; }
.pk-form-msg { font-size:13px; margin:0; min-height:18px; }
.pk-form-msg.pk-ok { color:#5b9; }
.pk-form-msg.pk-err { color:#c33; }

@media (max-width:640px) {
  .pk-reviews-section { padding:24px 16px; margin:24px auto; }
  .pk-reviews-summary { flex-direction:column; gap:20px; padding:18px; }
  .pk-reviews-score { min-width:auto; }
  .pk-big-score { font-size:2.5rem; }
  .pk-write-btn { width:100%; }
  .pk-reviews-header { flex-direction:column; align-items:stretch; }
}
/* ===== End Reviews Styles ===== */
