/* ==========================================================
   LUDORUM — AVIS & CONFIANCE v1.0.0
   ========================================================== */

body.ludorum-avis-confiance {
  --lud-review-blue:#0B4DBB;
  --lud-review-red:#D72626;
  --lud-review-yellow:#F5C518;
  --lud-review-navy:#071A33;
  --lud-review-text:#354B65;
  --lud-review-muted:#68788D;
  --lud-review-line:#DFE7F1;
  --lud-review-soft:#F7FAFE;
  --lud-review-green:#16884B;
}

/* Étoiles accessibles. */
.lud-review-stars {
  position:relative;
  display:inline-block;
  flex:0 0 auto;
  width:84px;
  height:18px;
  overflow:hidden;
  white-space:nowrap;
  font-size:16px;
  letter-spacing:1px;
  line-height:18px;
}
.lud-review-stars__back,
.lud-review-stars__front {
  position:absolute;
  top:0;
  left:0;
}
.lud-review-stars__back { color:#D8E0EA; }
.lud-review-stars__front {
  overflow:hidden;
  color:var(--lud-review-yellow,#F5C518);
}

/* Résumé sous le titre produit. */
body.single-product.ludorum-avis-confiance .lud-product-review-summary {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px 9px;
  min-height:30px;
  margin:3px 0 8px;
}
body.single-product.ludorum-avis-confiance .lud-review-summary-link {
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--lud-review-blue);
  font:inherit;
  cursor:pointer;
}
body.single-product.ludorum-avis-confiance .lud-review-summary-link strong {
  color:var(--lud-review-navy);
  font-size:11px;
  font-weight:950;
}
body.single-product.ludorum-avis-confiance .lud-review-summary-link span {
  color:var(--lud-review-blue);
  font-size:10.5px;
  font-weight:800;
}
body.single-product.ludorum-avis-confiance .lud-review-summary-link:hover span {
  text-decoration:underline;
}
body.single-product.ludorum-avis-confiance .lud-review-summary-link.is-empty strong {
  padding:3px 6px;
  border-radius:999px;
  background:#EEF5FF;
  color:var(--lud-review-blue);
  font-size:8px;
  text-transform:uppercase;
}
body.single-product.ludorum-avis-confiance .lud-review-verified-count {
  display:inline-flex;
  align-items:center;
  min-height:21px;
  padding:3px 7px;
  border:1px solid #CFE9D9;
  border-radius:999px;
  background:#F3FBF6;
  color:var(--lud-review-green);
  font-size:8.5px;
  font-weight:900;
}

/* Onglet Avis. */
body.single-product.ludorum-avis-confiance #reviews {
  color:var(--lud-review-text);
}
body.single-product.ludorum-avis-confiance #reviews #comments {
  margin:0;
}
body.single-product.ludorum-avis-confiance #reviews .woocommerce-Reviews-title {
  margin:0 0 15px!important;
  color:var(--lud-review-navy)!important;
  font-size:19px!important;
  font-weight:950!important;
}
body.single-product.ludorum-avis-confiance .lud-review-overview {
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:22px;
  margin:0 0 20px;
  padding:18px;
  border:1px solid var(--lud-review-line);
  border-radius:14px;
  background:linear-gradient(135deg,#FFFFFF,#F8FBFF);
}
body.single-product.ludorum-avis-confiance .lud-review-overview__score {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:132px;
  padding:12px;
  border:1px solid #E4EAF2;
  border-radius:12px;
  background:#fff;
  text-align:center;
}
body.single-product.ludorum-avis-confiance .lud-review-overview__number {
  color:var(--lud-review-navy);
  font-size:34px;
  font-weight:950;
  letter-spacing:-.04em;
  line-height:1;
}
body.single-product.ludorum-avis-confiance .lud-review-overview__score .lud-review-stars {
  margin:8px 0 5px;
}
body.single-product.ludorum-avis-confiance .lud-review-overview__score p {
  margin:0!important;
  color:var(--lud-review-muted);
  font-size:10px;
  line-height:1.4;
}
body.single-product.ludorum-avis-confiance .lud-review-overview__verified {
  margin-top:7px;
  color:var(--lud-review-green);
  font-size:9px;
  font-weight:900;
}
body.single-product.ludorum-avis-confiance .lud-review-bars {
  display:grid;
  gap:7px;
  align-content:center;
}
body.single-product.ludorum-avis-confiance .lud-review-bar {
  display:grid;
  grid-template-columns:35px minmax(0,1fr) 28px;
  gap:8px;
  align-items:center;
  color:#53677F;
  font-size:9.5px;
  font-weight:800;
}
body.single-product.ludorum-avis-confiance .lud-review-bar__track {
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:#E9EEF5;
}
body.single-product.ludorum-avis-confiance .lud-review-bar__fill {
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--lud-review-yellow),#FFD84F);
}

/* Liste d'avis. */
body.single-product.ludorum-avis-confiance #reviews ol.commentlist {
  display:grid;
  gap:10px;
  margin:0 0 20px!important;
  padding:0!important;
  list-style:none!important;
}
body.single-product.ludorum-avis-confiance #reviews ol.commentlist li.review {
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.single-product.ludorum-avis-confiance #reviews .comment_container {
  position:relative;
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:12px;
  padding:14px!important;
  border:1px solid var(--lud-review-line);
  border-radius:12px;
  background:#fff;
}
body.single-product.ludorum-avis-confiance #reviews .comment_container img.avatar {
  position:static!important;
  float:none!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #E2E8F0!important;
  border-radius:50%!important;
  object-fit:cover;
}
body.single-product.ludorum-avis-confiance #reviews .comment-text {
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.single-product.ludorum-avis-confiance #reviews .star-rating {
  float:none!important;
  margin:0 0 5px!important;
  color:var(--lud-review-yellow)!important;
  font-size:12px!important;
}
body.single-product.ludorum-avis-confiance #reviews .meta {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin:0 0 7px!important;
  color:var(--lud-review-muted)!important;
  font-size:9.5px!important;
}
body.single-product.ludorum-avis-confiance #reviews .woocommerce-review__author {
  color:var(--lud-review-navy);
  font-weight:900;
}
body.single-product.ludorum-avis-confiance #reviews .woocommerce-review__verified.verified {
  display:inline-flex;
  align-items:center;
  min-height:19px;
  margin:0!important;
  padding:3px 6px;
  border:1px solid #CFE9D9;
  border-radius:999px;
  background:#F3FBF6;
  color:transparent!important;
  font-size:0!important;
  font-style:normal!important;
}
body.single-product.ludorum-avis-confiance #reviews .woocommerce-review__verified.verified::before {
  content:"✓ Achat vérifié";
  color:var(--lud-review-green);
  font-size:8px;
  font-weight:900;
}
body.single-product.ludorum-avis-confiance #reviews .description {
  color:#43576F;
  font-size:11.5px;
  line-height:1.55;
}
body.single-product.ludorum-avis-confiance #reviews .description p:last-child {
  margin-bottom:0!important;
}
body.single-product.ludorum-avis-confiance #reviews .woocommerce-noreviews {
  margin:0 0 18px!important;
  padding:12px 14px;
  border:1px dashed #C9D7E7;
  border-radius:11px;
  background:#F8FBFF;
  color:#60738A;
  font-size:10.5px;
}

/* Formulaire. */
body.single-product.ludorum-avis-confiance #review_form_wrapper {
  margin-top:18px;
  padding:17px;
  border:1px solid var(--lud-review-line);
  border-radius:13px;
  background:#F9FBFE;
}
body.single-product.ludorum-avis-confiance #review_form .comment-reply-title {
  display:block;
  margin:0 0 4px;
  color:var(--lud-review-navy);
  font-size:17px;
  font-weight:950;
}
body.single-product.ludorum-avis-confiance #review_form .comment-form-rating label,
body.single-product.ludorum-avis-confiance #review_form .comment-form-comment label,
body.single-product.ludorum-avis-confiance #review_form .comment-form-author label,
body.single-product.ludorum-avis-confiance #review_form .comment-form-email label {
  display:block;
  margin-bottom:5px;
  color:#445A73;
  font-size:10px;
  font-weight:850;
}
body.single-product.ludorum-avis-confiance #review_form textarea,
body.single-product.ludorum-avis-confiance #review_form input[type="text"],
body.single-product.ludorum-avis-confiance #review_form input[type="email"] {
  width:100%;
  border:1px solid #CED9E8!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#102844!important;
}
body.single-product.ludorum-avis-confiance #review_form textarea {
  min-height:105px;
  padding:10px!important;
}
body.single-product.ludorum-avis-confiance #review_form input[type="text"],
body.single-product.ludorum-avis-confiance #review_form input[type="email"] {
  min-height:42px;
  padding:8px 10px!important;
}
body.single-product.ludorum-avis-confiance #review_form input:focus,
body.single-product.ludorum-avis-confiance #review_form textarea:focus {
  border-color:var(--lud-review-blue)!important;
  outline:none!important;
  box-shadow:0 0 0 3px rgba(11,77,187,.10)!important;
}
body.single-product.ludorum-avis-confiance #review_form .stars a {
  color:var(--lud-review-yellow)!important;
}
body.single-product.ludorum-avis-confiance #review_form #submit {
  min-height:40px;
  padding:8px 15px!important;
  border:0!important;
  border-radius:9px!important;
  background:linear-gradient(120deg,#07336F,var(--lud-review-blue))!important;
  color:#fff!important;
  font-size:10.5px!important;
  font-weight:900!important;
}

/* Shortcode avis récents, disponible pour l'accueil. */
.lud-recent-reviews {
  width:min(1160px,100%);
  margin:24px auto;
}
.lud-recent-reviews__head {
  margin-bottom:15px;
  text-align:center;
}
.lud-recent-reviews__head>span {
  color:#0B4DBB;
  font-size:9px;
  font-weight:950;
  letter-spacing:.08em;
}
.lud-recent-reviews__head h2 {
  margin:4px 0 5px;
  color:#071A33;
  font-size:clamp(23px,2.8vw,31px);
  font-weight:950;
}
.lud-recent-reviews__head p {
  max-width:650px;
  margin:0 auto;
  color:#68788D;
  font-size:11px;
  line-height:1.5;
}
.lud-recent-reviews__grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.lud-recent-review-card {
  padding:15px;
  border:1px solid #DFE7F1;
  border-radius:13px;
  background:#fff;
  box-shadow:0 7px 20px rgba(7,26,51,.05);
}
.lud-recent-review-card__top {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:7px;
}
.lud-review-verified-badge {
  padding:3px 6px;
  border:1px solid #CFE9D9;
  border-radius:999px;
  background:#F3FBF6;
  color:#16884B;
  font-size:8px;
  font-weight:900;
}
.lud-recent-review-card blockquote {
  margin:12px 0;
  color:#3E536C;
  font-size:11.5px;
  line-height:1.55;
}
.lud-recent-review-card footer {
  display:flex;
  flex-direction:column;
  gap:2px;
}
.lud-recent-review-card footer strong {
  color:#071A33;
  font-size:10.5px;
}
.lud-recent-review-card footer a {
  color:#0B4DBB;
  font-size:9.5px;
  font-weight:800;
  text-decoration:none;
}

@media(max-width:767px) {
  body.single-product.ludorum-avis-confiance .lud-product-review-summary {
    gap:5px 7px;
  }
  body.single-product.ludorum-avis-confiance .lud-review-overview {
    grid-template-columns:1fr;
    gap:12px;
    padding:13px;
  }
  body.single-product.ludorum-avis-confiance .lud-review-overview__score {
    min-height:110px;
  }
  body.single-product.ludorum-avis-confiance #reviews .comment_container {
    grid-template-columns:36px minmax(0,1fr);
    gap:9px;
    padding:11px!important;
  }
  body.single-product.ludorum-avis-confiance #reviews .comment_container img.avatar {
    width:34px!important;
    height:34px!important;
  }
  .lud-recent-reviews__grid {
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   LUDORUM — AVIS & CONFIANCE v1.0.1
   FINITION DU BLOC AVIS
   ========================================================== */

/* État "aucune note" plus explicite que le simple tiret. */
body.single-product.ludorum-avis-confiance .lud-review-overview__number.is-empty {
  max-width: 150px;
  color: var(--lud-review-navy);
  font-size: 15px;
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1.2;
  text-align: center;
}

/* Étoiles grisées bien lisibles lorsqu'il n'y a encore aucune note. */
body.single-product.ludorum-avis-confiance .lud-review-overview__number.is-empty + .lud-review-stars {
  margin-top: 10px;
}

/* Le message natif WooCommerce n'a plus besoin d'occuper un second bloc vide. */
body.single-product.ludorum-avis-confiance #reviews .woocommerce-noreviews[hidden] {
  display: none !important;
}

/* Formulaire plus compact et mieux accompagné. */
body.single-product.ludorum-avis-confiance .lud-review-form-helper {
  margin: 0 0 12px !important;
  color: var(--lud-review-muted);
  font-size: 10px;
  font-weight: 650;
  line-height: 1.45;
}

body.single-product.ludorum-avis-confiance #review_form textarea {
  min-height: 84px !important;
}

/* CTA légèrement plus présent, sans dominer la fiche produit. */
body.single-product.ludorum-avis-confiance #review_form #submit {
  min-height: 42px !important;
  padding: 9px 17px !important;
  font-size: 11px !important;
  box-shadow: 0 5px 12px rgba(11,77,187,.14) !important;
}

body.single-product.ludorum-avis-confiance #review_form #submit:hover,
body.single-product.ludorum-avis-confiance #review_form #submit:focus-visible {
  filter: brightness(1.035) !important;
  box-shadow: 0 7px 16px rgba(11,77,187,.20) !important;
  outline: none !important;
}

/* Un peu plus de respiration interne, sans agrandir le bloc global. */
body.single-product.ludorum-avis-confiance #review_form_wrapper {
  padding: 16px !important;
}

@media(max-width:767px) {
  body.single-product.ludorum-avis-confiance .lud-review-overview__number.is-empty {
    font-size: 14px;
  }

  body.single-product.ludorum-avis-confiance #review_form textarea {
    min-height: 78px !important;
  }
}
