.wr-tf-wrap{
  display:flex;
  width:100%;
  max-width:100%;
  min-width:0;
  justify-content:center;
}

.wr-tf{
  width:100%;
  max-width:100%;
  min-width:0;
  position:relative;
  overflow:hidden; /* critical: prevents mobile horizontal overflow */
}

.wr-tf .swiper{
  overflow:hidden; /* critical: clip track/arrows */
}

.wr-tf .swiper-wrapper,
.wr-tf .swiper-slide{
  max-width:100%;
}

.wr-tf-card{
  position:relative;
  height:100%;
  background:#fff;
  border-radius:18px;
  padding:22px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  display:flex;
  flex-direction:column;
  gap:14px;
  box-sizing:border-box;
}

.wr-tf-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.wr-tf-left{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.wr-tf-avatar{
  width:44px;
  height:44px;
  border-radius:999px;
  overflow:hidden;
  flex:0 0 auto;
  background:rgba(0,0,0,.06);
}

.wr-tf-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.wr-tf-avatar-fallback{
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(135deg, rgba(0,0,0,.10), rgba(0,0,0,.03));
}

.wr-tf-meta{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}

.wr-tf-name{
  font-size:14px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.wr-tf-title{
  font-size:12px;
  opacity:.7;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.wr-tf-stars{
  font-size:16px;
  line-height:1;
  white-space:nowrap;
}
.wr-tf-stars span.is-on{ color:#111; }
.wr-tf-stars span.is-off{ color:rgba(0,0,0,.25); }

.wr-tf-text{
  font-size:14px;
  line-height:1.7;
  opacity:.92;
}

/* NAV */
.wr-tf-prev,
.wr-tf-next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.08);
  background:#111;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:10;
  padding:0;
}
.wr-tf-prev{ left:8px; }
.wr-tf-next{ right:8px; }
.wr-tf-prev:hover,
.wr-tf-next:hover{ filter:brightness(1.06); }

/* DOTS */
.wr-tf-pagination{
  margin-top:16px;
  text-align:center;
}
.wr-tf-pagination .swiper-pagination-bullet{
  width:8px;
  height:8px;
  opacity:.35;
}
.wr-tf-pagination .swiper-pagination-bullet-active{
  opacity:1;
}

/* Responsive defaults */
@media (max-width: 767px){
  .wr-tf-prev, .wr-tf-next{ display:none; } /* mobile: swipe only, no overflow risk */
}
