/* ------------------------------- */
/* Style pour tous les avis */
/* ------------------------------- */

.hai-reviews-grid-wrap {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 2.5em;
  align-items: start;
  margin: 2em 0;
}
.hai-reviews-sidebar {
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 2px 10px #00000033;
  padding: 2em 1.4em;
  min-width: 220px;
  max-width: 320px;
  position: sticky;
  top: 2em;
  height: fit-content;
  transition: box-shadow .2s;
}
.hai-filter-group {
  margin-bottom: 2.2em;
  display: flex;
  flex-direction: column;
}
.hai-filter-group label {
  font-weight: 600;
  color: #ae6d40;
  font-size: 1.03em;
  margin-bottom: .6em;
  display: flex;
  align-items: center;
  gap: 0.4em;
}
.hai-filter-group select {
  border-radius: 7px;
  border: 1px solid #f5d4b9;
  background: #fff6f0;
  color: #85502a;
  padding: .45em .7em;
  font-size: 1em;
  outline: none;
  margin-bottom: 0;
  transition: border-color .2s;
}
.hai-filter-group select:focus {
  border-color: #f8ba45;
}

.hai-reviews-main {
  min-width: 0;
}

/* Liste des avis en responsive grid - 3 colonnes sur grands écrans */
.hai-reviews-list-all {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5em;
}

/* Responsive : 2 colonnes sur écrans moyens */
@media (max-width: 1280px) {
  .hai-reviews-list-all {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Responsive : 1 colonne sur mobile */
@media (max-width: 700px) {
  .hai-reviews-list-all {
    grid-template-columns: 1fr;
  }
}

/* Responsive à garder absolument */
@media (max-width: 900px) {
  .hai-reviews-grid-wrap {
    grid-template-columns: 1fr;
    gap: 2em;
  }
  .hai-reviews-sidebar {
    max-width: 100%;
    margin-bottom: 1.2em;
    position: static;
  }
}
@media (max-width: 480px) {
  .hai-review-item {
    padding: 1em 1.2em;
  }
  .hai-content {
    font-size: 0.95em;
  }
}

.hai-agent { 
color:#ff3e01; 
font-weight:bold; 

}

.hai-astro {
    color: #258fde;
    font-weight: bold;
}

.hai-coaching {
    color: #26ae56;
    font-weight: bold;
}


.hai-review-item {
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 2px 16px #e2c6bb40;
  padding: 1.2em 1.6em;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: box-shadow .2s;
  border: 1.5px dashed #e1cba3;
}
.hai-review-item:hover {
  box-shadow: 0 8px 24px #f8ba4526;
}
.hai-rating {
  font-size: 1.3em;
  color: #ca0060;
  margin-bottom: 0.5em;
  letter-spacing: 0.07em;
}
.hai-content {
  font-size: 1em;
  color: #442d17;
  margin-bottom: 0.7em;
}
.hai-footer {
	font-family: times;
    font-size: 17px;
    color: #9a7856;
    text-align: right;
}
.hai-pseudo { 
font-weight: bold; 
}


.hai-date { font-style: italic; margin-left: 0.5em; }

/* Pagination */
.hai-pagination {
  margin-top:1.5em; 
  text-align:center;
}
.hai-pagination a,
.hai-pagination span {
  padding:0.5em 1em;
  border-radius:7px;
  margin: 0 .13em;
  font-size: 1.07em;
}
.hai-pagination a {
    color: #363636 !important;
    text-decoration: none;
    background: #ffffff;
    transition: background .15s;
    font-family: times;
	font-weight: bold;
}
.hai-pagination a:hover {
    background: #7ba389 !important;
    color: #fff !important;
}
.hai-pagination span {
    background: #fff !important;
    color: #363636;
	border: 1.5px solid #e9e9e9;
}

/* Filtres étoiles */
.hai-rating-radio-group {
  display: flex;
  flex-direction: column;
  gap: 0.45em;
  margin-top: 0.6em;
}
.hai-rating-radio {
  display: flex;
  align-items: center;
  cursor: pointer;
  gap: 0.8em;
  font-size: 1.08em;
  padding: 0.18em 0;
  user-select: none;
}
.hai-rating-radio input[type="radio"] {
  accent-color: #c72c48;
  margin-right: 0.4em;
  width: 1.15em;
  height: 1.15em;
}
.hai-radio-stars {
  display: flex;
  gap: 0.09em;
}
.hai-radio-stars .star {
  font-size: 1.28em;
  color: #e0dfdf;
  transition: color .18s;
}
.hai-rating-radio input[type="radio"]:checked + .hai-radio-stars .star.filled,
.hai-rating-radio:hover .hai-radio-stars .star.filled {
  color: #f8ba45;
}

.hai-filter-label {
  margin-bottom: 0.2em;
  display: inline-block;
}
