/* v0.1.3 — Property Reviews Shortcode (cleaned)
   Colors: Dark #11574A, Light #52B5A3, Very Light #F5FAF9, Gold #DCA602 */
   
/* remove gap usage */
.hfai-pr__left { display:flex; align-items:center; }
.hfai-pr__left > * + * { margin-left: 8px; }   /* gap fallback */
.hfai-pr__score { font-weight:700; font-size:.95rem; color:var(--hfai-dark); line-height:1; }
.hfai-pr__sep { opacity:.4; margin:0 4px; }

.hfai-pr {
  --hfai-dark: #11574A;
  --hfai-light: #52B5A3;
  --hfai-verylight: #F5FAF9;
  --hfai-gold: #DCA602;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  color: var(--hfai-dark);
}

.hfai-pr__score {
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--hfai-verylight);
  border: 1px solid rgba(17,87,74,0.18);
  font-weight: 700;
  line-height: 1;
}

/* Scroll area: styling only. Height will be controlled inline via shortcode (vh_offset/height). */
.hfai-pr__scroll {
  background: var(--hfai-verylight);
  border: 1px solid rgba(17,87,74,0.12);
  border-radius: 10px;
  padding: 16px;
  overflow-y: auto;         /* enables scrolling when inline max-height is set */
  /* No flex, no height, no max-height here to avoid conflicts */
}

/* Review card */
.hfai-pr__item {
  background: #fff;
  border: 1px solid rgba(17,87,74,0.10);
  border-radius: 10px;
  padding: 14px 16px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}
.hfai-pr__item + .hfai-pr__item { margin-top: 12px; }

/* Header line */
.hfai-pr__head {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: center;
  margin-bottom: 8px;
}
.hfai-pr__left {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}
.hfai-pr__date {
  font-size: 0.95rem;
  color: var(--hfai-dark);
  opacity: 0.8;
}
.hfai-pr__title {
  text-align: center;
  margin: 0;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--hfai-dark);
}

/* Body + byline */
.hfai-pr__body {
  font-size: 0.98rem;
  line-height: 1.5;
  color: #213a34;
  margin-bottom: 6px;
}
.hfai-pr__byline {
  text-align: right;
  font-style: italic;
  color: var(--hfai-dark);
  opacity: 0.9;
  margin-bottom: 8px;
}

/* Category grid */
.hfai-pr__cats {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
  border-top: 1px dashed rgba(17,87,74,0.25);
  padding-top: 8px;
}
@media (max-width: 640px) {
  .hfai-pr__cats { grid-template-columns: repeat(3, 1fr); }
}
.hfai-pr__cat { text-align: center; }
.hfai-pr__cat-label {
  font-size: 0.78rem;
  color: var(--hfai-light);
  font-weight: 600;
  margin-bottom: 2px;
}
.hfai-pr__cat-val {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.hfai-pr__num {
  font-weight: 700;
  color: var(--hfai-dark);
  min-width: 2ch;
}

/* Stars */
.hfai-pr__stars { display: inline-flex; vertical-align: middle; }
.hfai-pr__stars .hfai-pr__star { width: 18px; height: 18px; fill: var(--hfai-gold); }
.hfai-pr__stars--sm .hfai-pr__star { width: 14px; height: 14px; }

/* Messages */
.hfai-pr .error {
  color: #a00;
  background: #fff8f8;
  border: 1px solid #f1c0c0;
  padding: 12px;
  border-radius: 8px;
}
.hfai-pr .none {
  color: var(--hfai-dark);
  background: var(--hfai-verylight);
  border: 1px dashed rgba(17,87,74,0.25);
  padding: 12px;
  border-radius: 8px;
}

.hfai-pr__gutter { height: 24px; flex: 0 0 24px; }

/* Removed: .hfai-vhfit utilities and any max-height caps to avoid fighting popup layout */

/* Dynamic property rating (works without gap) */
.hfai-stars{
  display:inline-flex;            /* sit nicely next to text */
  align-items:center;
  vertical-align:middle;
}

/* add spacing between the star group and the number */
.hfai-stars > .hfai-pr__stars{ 
  margin-right:6px;               /* ← replaces gap */
  line-height:0;                  /* tightens svg line box */
}

/* number styling */
.hfai-stars__num{
  font-weight:700;
  opacity:.95;
}

/* small star size helper (matches your reviews CSS) */
.hfai-stars .hfai-pr__stars--sm .hfai-pr__star{
  width:14px; 
  height:14px;
}