/* CCO Product Reviews: sección #cco-reviews de la ficha (mu-plugin cco-product-reviews.php).
   Usa las variables de redesign-product.css (navy / oro / crema, Cormorant + Jost).
   Sin selectores que dependan de clases añadidas por JS (seguro con RUCSS). */

.ccr{
  --ccr-gold:var(--gold-500,#c4a052);
  --ccr-gold-dk:#8a6a2c;           /* oro con contraste AA sobre crema/blanco para texto */
  --ccr-navy:var(--wine-800,#122238);
  --ccr-ink:var(--ink-900,#16273E);
  --ccr-ink-2:var(--ink-700,#324862);
  --ccr-mute:var(--ink-500,#5C6877);
  --ccr-line:var(--line-soft,#ece2cc);
  --ccr-empty:#e3d6b8;
  max-width:1360px;margin:72px auto 0;padding:0 32px;scroll-margin-top:110px;
  font-family:"Jost",-apple-system,system-ui,sans-serif;color:var(--ccr-ink);
}
.ccr *{box-sizing:border-box}

/* Cabecera */
.ccr-head{text-align:center;margin-bottom:30px}
.ccr-eyebrow{margin:0 0 8px;font-size:11.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ccr-gold-dk)}
.ccr-title{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-size:34px;line-height:1.15;color:var(--ccr-ink);letter-spacing:0;text-transform:none}
.ccr-title::before,.ccr-title::after{content:none!important;display:none!important}

.ccr-flash{max-width:720px;margin:0 auto 24px;padding:14px 18px;border:1px solid #cfe0c3;background:#f2f8ee;color:#2f5520;border-radius:8px;text-align:center;font-size:14px}

/* Estrellas (capa vacía + capa dorada recortada) */
.ccr-stars{position:relative;display:inline-flex;line-height:0;vertical-align:middle}
.ccr-stars svg{display:block;flex:none;margin-right:2px}
.ccr-stars-bg,.ccr-stars-fg{display:flex}
.ccr-stars-bg svg{fill:var(--ccr-empty,#e3d6b8)}
.ccr-stars-fg{position:absolute;inset:0 auto 0 0;width:var(--ccr-fill,0%);overflow:hidden}
.ccr-stars-fg svg{fill:var(--ccr-gold,#c4a052)}

/* Rejilla: resumen fijo a la izquierda + lista */
.ccr-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:40px;align-items:start}

.ccr-summary{position:sticky;top:110px;background:var(--ccr-navy);color:#f4ecde;border-radius:12px;padding:28px 26px 26px}
.ccr-score{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.ccr-avg{font-family:"Cormorant Garamond",Georgia,serif;font-size:62px;font-weight:600;line-height:.9;color:#fff}
.ccr-summary .ccr-stars-bg svg{fill:rgba(244,236,222,.22)}
.ccr-based{margin:8px 0 0;font-size:13px;color:rgba(244,236,222,.78)}
.ccr-dist{list-style:none;margin:0 0 24px;padding:18px 0 0;border-top:1px solid rgba(244,236,222,.14)}
.ccr-dist li{display:grid;grid-template-columns:52px 1fr 30px;align-items:center;gap:10px;margin:0 0 9px;font-size:12.5px;color:rgba(244,236,222,.85)}
.ccr-bar{height:6px;border-radius:6px;background:rgba(244,236,222,.14);overflow:hidden}
.ccr-bar span{display:block;height:100%;border-radius:6px;background:var(--ccr-gold)}
.ccr-dist-n{text-align:right;font-variant-numeric:tabular-nums}

/* Botones */
.ccr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 26px;border-radius:6px;
  font-family:"Jost",sans-serif;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.ccr-btn-solid{background:var(--ccr-gold)!important;color:var(--ccr-navy)!important;border:1px solid var(--ccr-gold)!important}
.ccr-btn-solid:hover{background:#d4b878!important}
.ccr-btn-outline{background:transparent;color:var(--ccr-ink);border:1px solid var(--ccr-ink)}
.ccr-btn-outline:hover{background:var(--ccr-ink);color:#fff}
.ccr-summary .ccr-btn{width:100%;border-color:var(--ccr-gold);color:var(--ccr-gold)}
.ccr-summary .ccr-btn:hover{background:var(--ccr-gold);color:var(--ccr-navy)}
.ccr-btn:focus-visible,.ccr-write summary:focus-visible{outline:2px solid var(--ccr-gold);outline-offset:3px}

/* Tarjetas */
.ccr-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ccr-card{display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid var(--ccr-line);border-radius:10px;padding:22px 24px 18px;scroll-margin-top:120px}
.ccr-card:focus{outline:2px solid var(--ccr-gold);outline-offset:2px}
.ccr-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ccr-date{font-size:12px;color:var(--ccr-mute);white-space:nowrap}
.ccr-text{font-size:14.5px;line-height:1.65;color:var(--ccr-ink-2);overflow-wrap:anywhere}
.ccr-text p{margin:0 0 8px;font-style:normal}
.ccr-text p:last-child{margin-bottom:0}
.ccr-card-foot{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--ccr-line)}
.ccr-avatar{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--cream-100,#f4ecda);color:var(--ccr-ink);
  font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:16px}
.ccr-name{font-weight:600;font-size:14px;color:var(--ccr-ink)}
.ccr-verified{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;color:#3c6b2a}

.ccr-more-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:26px}
.ccr-count{margin:0;font-size:13px;color:var(--ccr-mute)}

/* Estado vacío */
.ccr-empty{max-width:640px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--ccr-line);border-radius:12px;padding:36px 28px 32px}
.ccr-empty p{margin:16px auto 22px;max-width:460px;font-size:15.5px;line-height:1.6;color:var(--ccr-ink-2)}

/* Formulario colapsable */
.ccr-write{max-width:760px;margin:36px auto 0;background:#fff;border:1px solid var(--ccr-line);border-radius:12px;scroll-margin-top:110px}
.ccr-write summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;cursor:pointer;
  font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;font-weight:600;color:var(--ccr-ink)}
.ccr-write summary::-webkit-details-marker{display:none}
.ccr-write summary svg{transition:transform .25s ease;flex:none}
.ccr-write[open] summary svg{transform:rotate(180deg)}
.ccr-write-body{padding:0 24px 24px;border-top:1px solid var(--ccr-line)}
.ccr-write-intro{margin:18px 0 6px;font-size:13.5px;color:var(--ccr-mute)}
.ccr-write .comment-respond{margin:0;padding:0;border:0}
.ccr-write .comment-reply-title{display:none}
.ccr-form{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}
.ccr-form > *{grid-column:1/-1}
.ccr-form .comment-form-author{grid-column:1}
.ccr-form .comment-form-email{grid-column:2}
.ccr-field{margin:10px 0 0}
.ccr-field label,.ccr-rate legend{display:block;margin:0 0 6px;font-size:13px;font-weight:600;color:var(--ccr-ink);padding:0}
.ccr-field .required,.ccr-rate .required{color:#a3412f}
.ccr-field input,.ccr-field textarea{width:100%;margin:0;padding:12px 14px;border:1px solid #d9cba9;border-radius:6px;background:#fffdf8;
  font:15px/1.5 "Jost",sans-serif;color:var(--ccr-ink);box-shadow:none;height:auto;min-height:48px}
.ccr-field textarea{min-height:130px;resize:vertical}
.ccr-field input:focus,.ccr-field textarea:focus{outline:none;border-color:var(--ccr-ink);box-shadow:0 0 0 3px rgba(196,160,82,.28)}
.ccr-small{margin:2px 0 0;font-size:12px;color:var(--ccr-mute)}
.ccr-note{margin:16px 0 0;font-size:14px;color:var(--ccr-ink-2)}
.ccr-form .form-submit{margin:16px 0 0}
.ccr-form .ccr-btn{width:auto;min-width:200px;border-radius:6px}
.ccr-form .h-captcha{margin:14px 0 0;max-width:100%}

/* Selector de estrellas (sin JS: orden inverso + ~) */
.ccr-rate{border:0;margin:14px 0 0;padding:0;min-width:0}
.ccr-rate-stars{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}
.ccr-rate-stars input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.ccr-rate-stars label{cursor:pointer;line-height:0;padding:2px;margin:0;border-radius:4px}
.ccr-rate-stars svg{fill:var(--ccr-empty);transition:fill .12s,transform .12s}
.ccr-rate-stars label:hover svg,.ccr-rate-stars label:hover ~ label svg,
.ccr-rate-stars input:checked ~ label svg{fill:var(--ccr-gold)}
.ccr-rate-stars label:hover svg{transform:scale(1.08)}
.ccr-rate-stars input:focus-visible + label{outline:2px solid var(--ccr-ink);outline-offset:1px}
.ccr .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* Tablet */
@media (max-width:1024px){
  .ccr-grid{grid-template-columns:1fr;gap:26px}
  .ccr-summary{position:static;display:grid;grid-template-columns:auto 1fr;gap:10px 32px;align-items:center}
  .ccr-score{margin:0}
  .ccr-dist{margin:0;padding:0 0 0 28px;border-top:0;border-left:1px solid rgba(244,236,222,.14)}
  .ccr-summary .ccr-btn{grid-column:1/-1}
}
/* Móvil */
@media (max-width:640px){
  .ccr{margin-top:48px;padding:0 16px}
  .ccr-head{margin-bottom:22px}
  .ccr-title{font-size:27px}
  .ccr-summary{display:block;padding:22px 20px}
  .ccr-avg{font-size:54px}
  .ccr-dist{padding:16px 0 0;border-left:0;border-top:1px solid rgba(244,236,222,.14);margin-bottom:20px}
  .ccr-list{grid-template-columns:1fr;gap:12px}
  .ccr-card{padding:18px 18px 14px}
  .ccr-text{font-size:15px}
  .ccr-write{margin-top:26px}
  .ccr-write summary{padding:16px 18px;font-size:20px}
  .ccr-write-body{padding:0 18px 20px}
  .ccr-form{grid-template-columns:1fr}
  .ccr-form .comment-form-author,.ccr-form .comment-form-email{grid-column:1}
  .ccr-form .ccr-btn{width:100%}
  .ccr-rate-stars svg{width:36px;height:36px}
  .ccr-empty{padding:28px 18px 24px}
}
@media (prefers-reduced-motion:reduce){.ccr *{transition:none!important}}

/* Rating junto al título de la ficha (enlaza a la sección) */
.cco-rating-link{display:flex;width:fit-content;align-items:center;gap:8px;text-decoration:none;color:var(--ink-700,#324862);font-size:13px}
.cco-rating-link:hover span,.cco-rating-empty:hover{text-decoration:underline;text-underline-offset:3px}
.cco-rating-empty{font-weight:500;color:#8a6a2c}

/* Ajustes frente a estilos globales de Flatsome (fieldset/legend/submit) */
.ccr-write fieldset.ccr-rate{border:0!important;margin:14px 0 0!important;padding:0!important;background:none}
.ccr-write .ccr-rate legend{text-transform:none!important;letter-spacing:0!important;font-family:"Jost",sans-serif!important;font-size:13px!important;font-weight:600!important;
  border:0!important;width:auto!important;margin:0 0 6px!important;padding:0!important;color:var(--ccr-ink)!important;line-height:1.4}
.ccr-write .ccr-small{display:block;margin-top:5px}
.ccr-write .form-submit .ccr-btn,.ccr-write .form-submit input[type=submit]{min-height:50px!important;height:auto!important;line-height:1.2!important;padding:14px 30px!important;margin:0!important;
  border-radius:6px!important;font-family:"Jost",sans-serif!important;font-size:13px!important;letter-spacing:.1em!important}
.ccr-write .cco-ts,.ccr-write .h-captcha{margin:14px 0 0!important}
.ccr-write .cco-ts-msg{font-size:13px;color:var(--ccr-mute);margin:8px 0 0}
