/*──────────────────────────────────────────────────────────*/
/*  Woo Custom Product Reviews - teljes, prefixelt CSS      */
/*──────────────────────────────────────────────────────────*/

/* 1. Külső konténer (keret + padding) */
.wcpr-reviews-container{
  border:1px solid #e1e1e1;
  background:#fff;
  padding:20px;
  margin-bottom:30px;
}

/* 2. Összefoglaló sor: átlag + számláló + gomb */
.wcpr-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  margin-bottom:20px;
}

/* 2.1 Átlag-blokk (szám + csillagok + felirat) */
.wcpr-average{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  margin-bottom:10px;
}
.wcpr-average-main{display:inline-flex;align-items:center;line-height:1}
.wcpr-average-number{font-size:2.5rem;font-weight:700;margin-right:10px;line-height:1}

/* 2.1.1 Átlagcsillagok – teljes | fél | üres */
.wcpr-average-stars{display:inline-flex;align-items:center;margin-left:5px}
.wcpr-average-stars .wcpr-star{
  font-size:1.5rem;color:#ccc;position:relative;margin-right:2px;line-height:1
}
.wcpr-average-stars .wcpr-star.wcpr-full{color:#f5b301}
.wcpr-average-stars .wcpr-star.wcpr-half::before{
  content:"★";position:absolute;top:0;left:0;width:50%;overflow:hidden;color:#f5b301
}
.wcpr-average-text{font-size:1rem;color:#666;line-height:1;margin-top:4px}

/* 2.2 Véleményszámláló */
.wcpr-review-count{text-align:center}
.wcpr-count-number{font-size:2.5rem;font-weight:700;margin-right:5px;line-height:1}
.wcpr-count-text{font-size:1rem;color:#666;line-height:1}

/* 2.3 Gomb */
.wcpr-button{
  background:#000;color:#fff;border:0;padding:10px 20px;font-size:1rem;
  border-radius:4px;cursor:pointer;transition:background .2s;white-space:nowrap
}
.wcpr-button:hover{background:#333}
#wcpr-load-more.wcpr-button{
  margin-top:16px;
}

/*──────────────────────────────────────────────────────────*/
/* 3. Lenyíló űrlap                                         */
#wcpr-form-container{
  background:#f7f7f7;border:1px solid #ddd;padding:15px;margin-bottom:20px
}
#wcpr-form-container p{margin-bottom:12px}
#wcpr-form-container label{
  font-weight:600;display:block;margin-bottom:4px;font-size:.95rem
}
#wcpr-form-container input[type=text],
#wcpr-form-container textarea{
  width:100%;border:1px solid #ccc;border-radius:3px;
  font-size:1rem;box-sizing:border-box
}
#wcpr-form-container textarea{min-height:80px}

/* 3.1 Csillag-input (balról-jobbra, 0.5 lépés) */
#wcpr_star_input{
  display:inline-flex;gap:4px;margin-top:4px
}
#wcpr_star_input .wcpr-star{
  font-size:2rem;color:#ccc;cursor:pointer;position:relative
}
#wcpr_star_input .wcpr-star.wcpr-full{color:#f5b301}
#wcpr_star_input .wcpr-star.wcpr-half::before{
  content:"★";position:absolute;top:0;left:0;width:50%;overflow:hidden;color:#f5b301
}
#wcpr_rating_value{font-size:1rem;font-weight:700;margin-left:8px;vertical-align:middle}

/* 3.2 Captcha widget */
.wcpr-captcha{margin:12px 0}

/*──────────────────────────────────────────────────────────*/
/* 4. Beküldött vélemények – rácsos kártyák                 */
#wcpr-reviews-list{
  display:flex;flex-wrap:wrap;gap:20px;margin-top:20px
}
.wcpr-review-card{
  background:#fff;border:1px solid #e1e1e1;padding:15px;border-radius:4px;
  flex:1 1 calc(33.333% - 20px);max-width:calc(33.333% - 20px)
}
@media(max-width:1024px){
  .wcpr-review-card{flex:1 1 calc(50% - 20px);max-width:calc(50% - 20px)}
}
@media(max-width:600px){
  .wcpr-review-card{flex:1 1 100%;max-width:100%}
}

.wcpr-review-title{margin:0 0 8px;font-size:1.1rem;font-weight:600}
.wcpr-review-rating{display:flex;align-items:center;margin-bottom:8px}

/* Kártyák csillagai ugyanazzal a logikával */
.wcpr-review-card .wcpr-star{
  font-size:1.3rem;color:#ccc;position:relative;margin-right:2px
}
.wcpr-review-card .wcpr-full{color:#f5b301}
.wcpr-review-card .wcpr-half::before{
  content:"★";position:absolute;top:0;left:0;width:50%;overflow:hidden;color:#f5b301
}

.wcpr-rating-number{font-size:1rem;color:#333;margin-left:6px}
.wcpr-review-content{margin-bottom:10px;font-size:.98rem;line-height:1.4}
.wcpr-review-author{font-size:.9rem;color:#555}

/* Verified-purchase badge (Pro) – on review cards */
.wcpr-verified-badge{
  display:inline-flex;align-items:center;gap:4px;vertical-align:middle;
  margin-left:8px;padding:2px 8px;border-radius:11px;
  font-size:.72rem;font-weight:600;line-height:1.5;
  color:#00795c;background:#e6f6f0;border:1px solid #b6e6d6;white-space:nowrap;
}
.wcpr-verified-badge .wcpr-verified-check{font-weight:700}
.wcpr-review-card.wcpr-is-verified{border-color:#b6e6d6}

/* Verified-purchase notice – above the form */
.wcpr-verified-notice{
  display:flex;align-items:center;gap:8px;
  margin:0 0 16px;padding:10px 14px;border-radius:6px;
  font-size:.95rem;color:#00684a;background:#e6f6f0;border:1px solid #b6e6d6;
}
.wcpr-verified-notice .wcpr-verified-check{
  flex:0 0 auto;width:20px;height:20px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:.8rem;font-weight:700;color:#fff;background:#00a884;
}

/* Photo upload field */
.wcpr-photo-field .wcpr-photo-hint{display:block;font-size:.82rem;color:#777;margin-top:4px;font-weight:400}
.wcpr-photo-previews{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.wcpr-preview-thumb{width:64px;height:64px;object-fit:cover;border-radius:6px;border:1px solid #ddd}

/* Review photos on cards */
.wcpr-review-photos{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.wcpr-photo{display:block;line-height:0;border-radius:6px;overflow:hidden;border:1px solid #e1e1e1;cursor:zoom-in;transition:transform .15s,border-color .15s}
.wcpr-photo:hover{transform:translateY(-1px);border-color:#6c5ce7}
.wcpr-photo .wcpr-photo-img{width:72px;height:72px;object-fit:cover;display:block}

/* Lightbox */
.wcpr-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.82);display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:24px}
.wcpr-lightbox img{max-width:92vw;max-height:88vh;border-radius:6px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.wcpr-lightbox-close{position:absolute;top:16px;right:24px;color:#fff;font-size:40px;line-height:1;cursor:pointer;font-weight:300}

/* Store reply */
.wcpr-store-reply{margin-top:12px;padding:10px 14px;background:#f4f2ff;border-left:3px solid #6c5ce7;border-radius:0 6px 6px 0}
.wcpr-store-reply-label{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:#5a4bd1;margin-bottom:4px}
.wcpr-store-reply-icon{font-size:.95rem}
.wcpr-store-reply-text{font-size:.92rem;line-height:1.45;color:#333}

/* Filter / sort toolbar */
.wcpr-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:20px 0 4px}
.wcpr-filters{display:flex;flex-wrap:wrap;gap:6px}
.wcpr-filter{background:#f0f0f1;border:0;color:#50575e;font-size:.85rem;padding:6px 14px;border-radius:20px;cursor:pointer;transition:background .15s,color .15s}
.wcpr-filter:hover{background:#e7e3fb;color:#5a4bd1}
.wcpr-filter.is-active{background:#6c5ce7;color:#fff}
.wcpr-sort-select{border:1px solid #ccc;border-radius:6px;padding:6px 10px;font-size:.85rem;background:#fff;cursor:pointer}
.wcpr-no-results{text-align:center;color:#777;padding:24px 0;font-size:.95rem}

/*──────────────────────────────────────────────────────────*/
/* 5. Woo star-rating (régi sablon) csak vélemény-kártyán   */
/*    – marad szürke/sárga, de nem globális ütközés         */
.wcpr-review-card .star-rating::before{color:#ccc!important}
.wcpr-review-card .star-rating span::before{color:#f5b301!important}

/*──────────────────────────────────────────────────────────*/
/* 6. Accessibility affordances                             */

/* Visually hidden, still announced (matches WP's screen-reader-text). */
.wcpr-sr-only{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0
}

/* Visible focus on every interactive element, incl. high-contrast mode. */
.wcpr-reviews-container :focus-visible,
.wcpr-lightbox :focus-visible{outline:2px solid #6c5ce7;outline-offset:2px}
@media (forced-colors: active){
  .wcpr-reviews-container :focus-visible,
  .wcpr-lightbox :focus-visible{outline:2px solid CanvasText}
}

/* Rating: label, hint and the focusable slider. */
.wcpr-field-label{font-weight:600;display:block;margin-bottom:4px;font-size:.95rem}
.wcpr-field-hint,
.wcpr-photo-hint{display:block;font-size:.82rem;color:#666;margin-top:4px;font-weight:400}
.wcpr-star-input{display:inline-flex;gap:4px;margin-top:4px;border-radius:4px}

/* Form status / validation message. */
.wcpr-form-status{
  margin:0 0 12px;padding:10px 14px;border-radius:6px;font-size:.95rem;
  background:#eef6ff;border:1px solid #bcd9f5;color:#124a80
}
.wcpr-form-status.is-error{background:#fef7f7;border-color:#f0c5c6;color:#a4292b}

/* Sort control label. */
.wcpr-sort{display:inline-flex;align-items:center;gap:8px}
.wcpr-sort-label{font-size:.85rem;color:#555}

/* Lightbox close as a real button. */
.wcpr-lightbox-close{
  position:absolute;top:12px;right:20px;background:transparent;border:0;color:#fff;
  font-size:40px;line-height:1;cursor:pointer;font-weight:300;padding:4px 12px;border-radius:6px
}
.wcpr-lightbox-close:hover{background:rgba(255,255,255,.12)}

/* Respect a reduced-motion preference for the non-essential transitions. */
@media (prefers-reduced-motion: reduce){
  .wcpr-photo,.wcpr-button,.wcpr-filter{transition:none}
}
