.hrs-frontend { width:100%; box-sizing:border-box; }
.hrs-empty { text-align:center; padding:40px; color:#9ca3af; font-style:italic; }

/* Grid */
.hrs-frontend--cards { display:grid; gap:24px; }
.hrs-frontend--cards.hrs-cols-1 { grid-template-columns:1fr; }
.hrs-frontend--cards.hrs-cols-2 { grid-template-columns:repeat(2,1fr); }
.hrs-frontend--cards.hrs-cols-3 { grid-template-columns:repeat(3,1fr); }
@media(max-width:900px){ .hrs-frontend--cards.hrs-cols-3 { grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .hrs-frontend--cards.hrs-cols-2,.hrs-frontend--cards.hrs-cols-3 { grid-template-columns:1fr; } }

/* Slider */
.hrs-frontend--slider { position:relative; overflow:hidden; }
.hrs-slider-track { display:flex; transition:transform .4s cubic-bezier(.4,0,.2,1); }
.hrs-frontend--slider .hrs-card { min-width:100%; box-sizing:border-box; padding:0 4px; }
.hrs-slider-nav { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:20px; }
.hrs-nav-btn { background:#fff; border:1px solid #e2e4e7; border-radius:50%; width:36px; height:36px; font-size:16px; cursor:pointer; transition:.15s; display:flex; align-items:center; justify-content:center; }
.hrs-nav-btn:hover { background:#f3f4f6; }
.hrs-slider-dots { display:flex; gap:6px; }
.hrs-dot { width:8px; height:8px; border-radius:50%; background:#d1d5db; border:none; cursor:pointer; padding:0; transition:.2s; }
.hrs-dot--active { background:#374151; transform:scale(1.3); }

/* Card */
.hrs-card__inner { background:#fff; border:1px solid #e5e7eb; border-radius:16px; padding:24px; height:100%; box-sizing:border-box; display:flex; flex-direction:column; gap:12px; transition:box-shadow .2s,transform .2s; }
.hrs-card__inner:hover { box-shadow:0 8px 24px rgba(0,0,0,.10); transform:translateY(-2px); }
.hrs-card__badge { display:flex; justify-content:flex-end; }
.hrs-card__badge svg,.hrs-card__badge img { display:block; max-height:24px; max-width:90px; object-fit:contain; }
.hrs-card__stars { display:flex; gap:2px; }
.hrs-star--filled { color:#f5a623; font-size:18px; }
.hrs-star--empty  { color:#d1d5db; font-size:18px; }

/* ── Texto con mostrar más — CSS puro, sin JS ─────────────────────────────── */

/* El checkbox está hidden, nunca se ve */
.hrs-expand-check { display:none; }

/* Texto: por defecto clamped a 3 líneas */
.hrs-card__text {
  font-size: 15px;
  line-height: 1.65;
  color: #374151;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Cuando el checkbox está marcado → mostrar texto completo */
.hrs-expand-check:checked ~ .hrs-card__text {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
}

/* Label con los dos textos */
.hrs-card__toggle-label {
  display: inline-block;
  margin-top: 4px;
  font-size: 14px;
  color: #6b7280;
  cursor: pointer;
  user-select: none;
}
.hrs-card__toggle-label:hover { color: #374151; }

/* Por defecto: mostrar "mostrar más", ocultar "mostrar menos" */
.hrs-more-txt { display: inline; }
.hrs-less-txt { display: none; }

/* Cuando está expandido: invertir */
.hrs-expand-check:checked ~ .hrs-card__toggle-label .hrs-more-txt { display: none; }
.hrs-expand-check:checked ~ .hrs-card__toggle-label .hrs-less-txt { display: inline; }

/* ── Author ───────────────────────────────────────────────────────────────── */
.hrs-card__author { display:flex; align-items:center; gap:12px; margin-top:auto; padding-top:12px; border-top:1px solid #f3f4f6; }
.hrs-card__name { display:block; font-size:14px; font-weight:600; color:#111827; }
.hrs-card__date { font-size:12px; color:#9ca3af; }
.hrs-avatar { width:44px; height:44px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.hrs-avatar--initials { width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:18px; flex-shrink:0; }
