:root{--crp-green:#244390;--crp-blue:#244390;--crp-star:#f7b500;--crp-text:#10213b;--crp-muted:#6b7891;--crp-border:#e4ebf4;--crp-soft:#f7fafc}.crp-single-bar,.crp-loop-bar{box-sizing:border-box;font-family:Montserrat,Arial,sans-serif}.crp-single-bar{display:flex;align-items:center;gap:18px;margin:14px 0 18px;flex-wrap:wrap}.crp-stars{display:inline-flex;align-items:center;gap:2px;line-height:1}.crp-star{appearance:none;border:0;background:transparent;color:#d5dce7;font-size:22px;line-height:1;padding:0 1px;cursor:default}.crp-stars-clickable .crp-star{cursor:pointer}.crp-star.is-active,.crp-stars:hover .crp-star:hover,.crp-stars-clickable .crp-star:hover~.crp-star{color:#d5dce7}.crp-star.is-active{color:var(--crp-star)}.crp-stars-clickable:hover .crp-star{color:var(--crp-star)}.crp-stars-clickable .crp-star:hover~.crp-star{color:#d5dce7}.crp-stars-small .crp-star{font-size:17px}.crp-single-score{font-size:15px;color:var(--crp-text)}.crp-single-score strong{font-weight:800}.crp-heart{border:0;background:transparent;display:inline-flex;align-items:center;gap:7px;color:var(--crp-green);cursor:pointer;padding:4px 6px;font-size:15px;font-weight:700}.crp-heart svg{width:24px;height:24px;stroke:var(--crp-green);stroke-width:2;fill:transparent;transition:.18s ease}.crp-heart.is-active svg,.crp-heart:hover svg{fill:var(--crp-green);transform:scale(1.08)}.crp-heart-compact{color:var(--crp-text);padding:0}.crp-heart-compact svg{width:23px;height:23px;stroke:var(--crp-text)}.crp-heart-compact.is-active svg,.crp-heart-compact:hover svg{stroke:var(--crp-green);fill:var(--crp-green)}.crp-open-modal{border:1.4px solid var(--crp-green)!important;background:#fff!important;color:var(--crp-green)!important;border-radius:8px!important;padding:10px 34px!important;min-height:38px!important;font-weight:800!important;font-size:14px!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important}.crp-open-modal:hover{background:var(--crp-green)!important;color:#fff!important}.crp-loop-bar{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:10px auto 8px!important;width:100%;min-height:26px}.crp-loop-count{appearance:none;border:0!important;background:transparent!important;color:#66758f!important;font-size:14px!important;padding:0 4px!important;cursor:pointer!important}.crp-loop-bar .crp-heart{margin-left:8px}.crp-overlay{position:fixed;inset:0;background:rgba(15,23,42,.54);backdrop-filter:blur(3px);z-index:999999;display:flex;justify-content:flex-end;align-items:stretch}.crp-panel{position:relative;background:#fff;width:min(560px,calc(100vw - 22px));height:calc(100vh - 44px);margin:22px;border-radius:10px;box-shadow:0 30px 80px rgba(16,33,59,.22);overflow:auto;padding:28px;color:var(--crp-text);font-family:Montserrat,Arial,sans-serif}.crp-close{position:absolute;right:20px;top:18px;border:0;background:#fff;font-size:24px;color:#27364e;cursor:pointer}.crp-panel h3{font-size:17px;margin:0 0 22px;font-weight:800}.crp-summary-grid{display:grid;grid-template-columns:132px 1fr 94px;gap:20px;align-items:center;border-bottom:1px solid var(--crp-border);padding-bottom:22px}.crp-big-score{font-size:44px;font-weight:500;letter-spacing:-.04em}.crp-score-box p{font-size:13px;color:var(--crp-muted);margin:8px 0 0}.crp-bars{display:flex;flex-direction:column;gap:7px}.crp-bar-row{display:grid;grid-template-columns:28px 1fr 62px;gap:8px;align-items:center;font-size:12px;color:#526079}.crp-bar-row b{color:var(--crp-star)}.crp-bar-row i{height:7px;background:#edf2f7;border-radius:20px;overflow:hidden}.crp-bar-row em{display:block;height:100%;background:var(--crp-green);border-radius:20px}.crp-fav-summary{text-align:center;color:var(--crp-text);font-size:13px}.crp-fav-summary .crp-heart{justify-content:center;margin:auto}.crp-fav-summary strong{display:block;font-size:22px}.crp-fav-summary span{color:var(--crp-muted)}.crp-section-title{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px}.crp-section-title h4,.crp-review-form h4{font-size:16px;margin:0;font-weight:800}.crp-section-title select{border:1px solid var(--crp-border);border-radius:8px;padding:9px 28px 9px 12px;background:#fff;color:#39465d}.crp-reviews-list{display:flex;flex-direction:column;gap:12px}.crp-empty{background:#f7faff;border-radius:12px;padding:16px 20px;color:#62708c;font-size:14px}.crp-review-card{border:1px solid var(--crp-border);border-radius:9px;padding:13px;display:flex;gap:12px}.crp-avatar{width:38px;height:38px;border-radius:50%;background:#eef1f5;display:flex;align-items:center;justify-content:center;color:#566176;font-size:13px;flex:none}.crp-review-body{flex:1}.crp-review-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.crp-review-head strong{font-size:13px}.crp-review-head span{background:#dbf6ea;color:#008757;padding:4px 9px;border-radius:20px;font-size:11px}.crp-review-head small{margin-left:auto;color:#7c879b;font-size:11px}.crp-review-card p{margin:8px 0 0;font-size:13px;line-height:1.45;color:#26324a}.crp-review-form{border-top:1px solid var(--crp-border);margin-top:22px;padding-top:22px}.crp-form-grid{display:grid;grid-template-columns:150px 1fr;gap:24px}.crp-form-grid label{display:block;font-size:12px;color:#20304c;font-weight:700;margin:0 0 8px}.crp-form-grid small{display:block;color:#687692;margin-top:7px}.crp-form-grid input,.crp-form-grid textarea{width:100%;border:1px solid #d7e1ee;border-radius:8px;padding:12px 14px;box-sizing:border-box;font-size:13px;font-family:inherit;outline:none}.crp-form-grid textarea{height:92px;resize:vertical;margin-bottom:14px}.crp-form-grid button[type=submit]{float:right;background:var(--crp-green);color:#fff;border:0;border-radius:8px;padding:13px 25px;font-weight:800;cursor:pointer;box-shadow:0 14px 26px rgba(0,155,98,.18)}.crp-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#10213b;color:#fff;padding:10px 16px;border-radius:999px;z-index:9999999;font-family:Montserrat,Arial,sans-serif;font-size:13px}@media(max-width:640px){.crp-panel{width:100vw;height:100vh;margin:0;border-radius:0;padding:22px}.crp-summary-grid{grid-template-columns:1fr}.crp-form-grid{grid-template-columns:1fr}.crp-single-bar{gap:10px}.crp-open-modal{padding:10px 20px!important}.crp-loop-bar{gap:5px}.crp-stars-small .crp-star{font-size:15px}.crp-heart-compact svg{width:21px;height:21px}}


/* ===== Cosmeticon Reviews PRO v7 - Savvy stars + Harumi heart + blue review block ===== */
.crp-single-bar,.crp-loop-bar,.crp-reviews-block,.crp-panel{
  font-family:"Montserrat",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif!important;
}
.crp-star{
  color:#d7d7d7!important;
  font-size:22px!important;
  font-weight:700!important;
  text-shadow:none!important;
}
.crp-star.is-active{color:#f5b301!important}
.crp-stars-clickable:hover .crp-star{color:#f5b301!important}
.crp-stars-clickable .crp-star:hover~.crp-star{color:#d7d7d7!important}
.crp-stars-small .crp-star{font-size:16px!important}
.crp-single-bar{
  gap:10px!important;
  margin:12px 0 16px!important;
}
.crp-single-score strong{
  color:#244390!important;
  font-weight:800!important;
}
.crp-heart{
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  border-radius:50%!important;
  border:1px solid #d7dfeb!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-decoration:none!important;
  color:#244390!important;
  background:#fff!important;
  font-size:20px!important;
  line-height:1!important;
  padding:0!important;
  box-shadow:none!important;
  transition:.22s ease!important;
}
.crp-heart:hover{
  transform:translateY(-1px)!important;
  border-color:#244390!important;
  background:#f8fbff!important;
}
.crp-heart-symbol{
  display:block!important;
  line-height:1!important;
  color:#244390!important;
}
.crp-heart.is-active .crp-heart-symbol{color:#244390!important}
.crp-heart-count{
  position:absolute!important;
  transform:translate(18px,-17px)!important;
  min-width:18px!important;
  height:18px!important;
  border-radius:999px!important;
  background:#3985C6!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:10px!important;
  font-weight:800!important;
}
.crp-heart svg{display:none!important}
.crp-heart-compact{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  font-size:17px!important;
  margin-left:6px!important;
}
.crp-open-modal{
  border:1px solid rgba(36,67,144,.18)!important;
  color:#244390!important;
  border-radius:999px!important;
  padding:10px 18px!important;
  font-weight:800!important;
}
.crp-open-modal:hover{
  background:#244390!important;
  color:#fff!important;
}
.crp-bar-row em{background:#244390!important}
.crp-review-head span{
  background:#f4f8ff!important;
  color:#244390!important;
  border:1px solid rgba(36,67,144,.18)!important;
}
.crp-form-grid button[type=submit]{
  background:#244390!important;
  box-shadow:0 14px 26px rgba(36,67,144,.18)!important;
}

.crp-reviews-block{
  width:100%;
  background:#fff;
  border:1px solid rgba(36,67,144,.12);
  border-radius:22px;
  padding:26px;
  box-shadow:0 12px 26px rgba(16,24,40,.06);
  color:#10213b;
  box-sizing:border-box;
}
.crp-block-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:22px;
}
.crp-block-head h3{
  margin:0!important;
  color:#10213b!important;
  font-size:21px!important;
  line-height:1.2!important;
  font-weight:800!important;
}
.crp-block-link{
  border:0!important;
  background:transparent!important;
  color:#244390!important;
  font-weight:800!important;
  cursor:pointer!important;
  padding:6px!important;
  font-size:14px!important;
}
.crp-quick-rate{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border:1px solid rgba(36,67,144,.10);
  border-radius:18px;
  padding:18px 22px;
  margin-bottom:20px;
  background:#fff;
}
.crp-quick-rate strong{
  display:block;
  font-size:17px!important;
  font-weight:800!important;
  color:#10213b!important;
  margin-bottom:4px;
}
.crp-quick-rate span{
  display:block;
  font-size:13px!important;
  color:#667085!important;
}
.crp-block-grid{
  display:grid;
  grid-template-columns:210px minmax(260px,1fr) minmax(280px,420px);
  gap:20px;
  align-items:stretch;
}
.crp-block-score,.crp-featured-review{
  border:1px solid rgba(36,67,144,.10);
  border-radius:18px;
  padding:22px;
  background:#fff;
}
.crp-block-score{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.crp-block-score .crp-big-score{
  font-size:56px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.04em;
  color:#10213b!important;
}
.crp-block-score p{
  margin:10px 0 0!important;
  color:#667085!important;
  font-size:14px!important;
}
.crp-block-bars{
  justify-content:center;
  border:0;
  padding:10px 0;
}
.crp-block-bars .crp-bar-row{
  grid-template-columns:42px 1fr 48px;
  font-size:14px!important;
}
.crp-block-bars .crp-bar-row span{
  color:#10213b!important;
  font-weight:800!important;
}
.crp-block-bars .crp-bar-row i{
  height:10px!important;
  background:#edf2f7!important;
}
.crp-featured-review{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.crp-featured-review p{
  margin:18px 0 14px!important;
  color:#10213b!important;
  font-size:18px!important;
  line-height:1.6!important;
}
.crp-featured-review span{
  color:#667085!important;
  font-size:14px!important;
  font-weight:700!important;
}
@media(max-width:900px){
  .crp-reviews-block{padding:18px;border-radius:18px}
  .crp-block-head{align-items:flex-start}
  .crp-quick-rate{flex-direction:column;align-items:flex-start;padding:16px}
  .crp-block-grid{grid-template-columns:1fr}
  .crp-block-score .crp-big-score{font-size:48px!important}
}

/* ===== v8 fixes: cards tienda limpias, corazón grande y móvil estable ===== */
.crp-loop-bar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 42px!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  padding:0 10px!important;
  margin:10px auto 8px!important;
  overflow:hidden!important;
}
.crp-loop-bar .crp-stars{width:100%!important;min-width:0!important;justify-content:center!important;overflow:hidden!important;}
.crp-loop-bar .crp-loop-count{display:none!important;}
.crp-heart-compact{width:38px!important;min-width:38px!important;height:38px!important;font-size:21px!important;margin:0!important;position:relative!important;}
.crp-heart-compact .crp-heart-symbol{font-size:22px!important;}
.crp-heart-compact .crp-heart-count{display:none!important;}
.crp-single-bar .crp-heart{width:44px!important;min-width:44px!important;height:44px!important;font-size:23px!important;position:relative!important;}
.crp-single-bar .crp-heart-symbol{font-size:24px!important;}
@media(max-width:640px){
  .crp-loop-bar{grid-template-columns:minmax(0,1fr) 38px!important;gap:6px!important;padding:0 8px!important;margin:8px auto 8px!important;}
  .crp-stars-small .crp-star{font-size:14px!important;padding:0!important;}
  .crp-heart-compact{width:36px!important;min-width:36px!important;height:36px!important;font-size:20px!important;}
  .crp-heart-compact .crp-heart-symbol{font-size:21px!important;}
  .crp-single-bar{display:flex!important;gap:8px!important;align-items:center!important;}
  .crp-single-bar .crp-stars .crp-star{font-size:20px!important;}
  .crp-open-modal{padding:10px 14px!important;font-size:12px!important;}
  .crp-reviews-block{margin-top:14px!important;}
}

/* ===== v9: corazon Bandar premium con SVG grueso ===== */
.crp-heart{
  border:1.6px solid #cfd9e8!important;
  box-shadow:0 3px 10px rgba(36,67,144,.04)!important;
  color:#244390!important;
  overflow:visible!important;
}
.crp-heart:hover{
  border-color:#244390!important;
  background:#f7faff!important;
  transform:translateY(-1px) scale(1.02)!important;
}
.crp-heart-symbol{
  width:24px!important;
  height:24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.crp-heart .crp-heart-svg,
.crp-heart svg.crp-heart-svg{
  display:block!important;
  width:22px!important;
  height:22px!important;
  stroke:#244390!important;
  stroke-width:2.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  fill:transparent!important;
  transition:transform .18s ease, fill .18s ease, stroke .18s ease!important;
}
.crp-heart.is-active .crp-heart-svg,
.crp-heart.is-active svg.crp-heart-svg{
  fill:#244390!important;
  stroke:#244390!important;
  transform:scale(1.08)!important;
}
.crp-heart:active .crp-heart-svg,
.crp-heart:active svg.crp-heart-svg{
  transform:scale(.92)!important;
}
.crp-heart-compact{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  margin-left:8px!important;
}
.crp-heart-compact .crp-heart-symbol{
  width:24px!important;
  height:24px!important;
}
.crp-heart-compact .crp-heart-svg,
.crp-heart-compact svg.crp-heart-svg{
  width:23px!important;
  height:23px!important;
}
.crp-single-bar .crp-heart{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
}
.crp-single-bar .crp-heart .crp-heart-svg,
.crp-single-bar .crp-heart svg.crp-heart-svg{
  width:25px!important;
  height:25px!important;
}
@media(max-width:640px){
  .crp-heart-compact{width:38px!important;min-width:38px!important;height:38px!important;}
  .crp-heart-compact .crp-heart-svg,
  .crp-heart-compact svg.crp-heart-svg{width:23px!important;height:23px!important;}
}

/* =====================================================
   v9.3 PRO - UX: estrellas dinamicas, loading, mensajes y bloqueo doble clic
===================================================== */
.crp-stars-clickable .crp-star{
  transition:transform .18s ease,color .18s ease,filter .18s ease,opacity .18s ease!important;
}
.crp-star.is-active,
.crp-star.is-preview{
  color:#f5b301!important;
  filter:drop-shadow(0 2px 3px rgba(245,179,1,.24))!important;
}
.crp-stars-clickable .crp-star:hover,
.crp-stars-clickable .crp-star:focus-visible{
  transform:scale(1.16) rotate(-4deg)!important;
  outline:none!important;
}
.crp-stars-clickable.is-saving .crp-star,
.crp-heart.is-saving,
.crp-review-form.is-saving{
  pointer-events:none!important;
  opacity:.72!important;
}
.crp-stars-clickable.is-saving::after,
.crp-heart.is-saving::after{
  content:""!important;
  width:14px!important;
  height:14px!important;
  border:2px solid rgba(36,67,144,.18)!important;
  border-top-color:#244390!important;
  border-radius:50%!important;
  animation:crpSpin .7s linear infinite!important;
  display:inline-block!important;
  margin-left:6px!important;
}
.crp-heart.is-saving::after{
  position:absolute!important;
  right:-4px!important;
  top:-4px!important;
  margin:0!important;
  background:#fff!important;
}
.crp-inline-status{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:16px!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:800!important;
  color:#244390!important;
  white-space:nowrap!important;
  opacity:.95!important;
}
.crp-inline-status.is-saving{color:#667085!important}
.crp-inline-status.is-ok{color:#244390!important}
.crp-inline-status.is-error{color:#b42318!important}
.crp-toast.is-error{background:#b42318!important}
.crp-toast.is-ok{background:#10213b!important}
.crp-review-form button[disabled]{opacity:.75!important;cursor:not-allowed!important}
@keyframes crpSpin{to{transform:rotate(360deg)}}
@keyframes crpStarPop{0%{transform:scale(.72) rotate(-8deg);opacity:.45}70%{transform:scale(1.18) rotate(4deg);opacity:1}100%{transform:scale(1) rotate(0);opacity:1}}
ul.products li.product .crp-star.is-active{animation:crpStarPop .42s ease both}
ul.products li.product .crp-star.is-active:nth-child(1){animation-delay:.02s}
ul.products li.product .crp-star.is-active:nth-child(2){animation-delay:.05s}
ul.products li.product .crp-star.is-active:nth-child(3){animation-delay:.08s}
ul.products li.product .crp-star.is-active:nth-child(4){animation-delay:.11s}
ul.products li.product .crp-star.is-active:nth-child(5){animation-delay:.14s}
@media(hover:hover){ul.products li.product:hover .crp-star.is-active{transform:scale(1.08)!important;filter:drop-shadow(0 3px 5px rgba(245,179,1,.34))!important}}
@media(max-width:767px){.crp-loop-bar{grid-template-columns:minmax(0,1fr) 42px!important}.crp-loop-bar .crp-inline-status{grid-column:1 / -1!important;margin-top:2px!important;justify-content:flex-start!important}.crp-loop-bar .crp-star{font-size:17px!important}.crp-heart-compact{width:40px!important;min-width:40px!important;height:40px!important}.crp-heart-compact .crp-heart-svg,.crp-heart-compact svg.crp-heart-svg{width:23px!important;height:23px!important}}
