/* Forced styles for full review page.
   This file is intentionally more specific than theme CSS. */

.reviews-component.review-full-page{
  padding-top:48px!important;
  padding-bottom:64px!important;
  background:transparent!important;
}

.reviews-component .review-full-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 290px!important;
  gap:30px!important;
  align-items:start!important;
}

.reviews-component .review-full{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  background:#fff!important;
  color:#111827!important;
  border:1px solid #e5e7eb!important;
  border-radius:28px!important;
  padding:30px!important;
  box-shadow:0 18px 55px rgba(15,23,42,.08)!important;
  box-sizing:border-box!important;
}

.reviews-component .reviews-back{
  display:inline-flex!important;
  align-items:center!important;
  color:var(--primary,#0054FF)!important;
  font-weight:600!important;
  text-decoration:none!important;
  margin-bottom:16px!important;
}

.reviews-component .review-author{
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  margin:20px 0 0!important;
}

.reviews-component .review-author-big{
  display:flex!important;
  align-items:center!important;
}

.reviews-component .review-author-info{
  min-width:0!important;
}

.reviews-component .review-author-info h1,
.reviews-component .review-author-big h1{
  margin:0!important;
  padding:0!important;
  font-size:28px!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
  color:#111827!important;
  font-weight:600!important;
}

.reviews-component .review-author-info .muted,
.reviews-component .review-author-big .muted{
  margin:8px 0 0!important;
  color:#6b7280!important;
  font-size:15px!important;
  line-height:1.35!important;
}

.reviews-component .review-avatar{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  object-fit:cover!important;
  flex-shrink:0!important;
}

.reviews-component .review-avatar-big{
  width:82px!important;
  height:82px!important;
  flex:0 0 82px!important;
  font-size:32px!important;
}

.reviews-component .review-avatar-letter{
  color:#fff!important;
  font-weight:800!important;
}

.reviews-component .review-color-1{background:#ff6b00!important}
.reviews-component .review-color-2{background:#f03d3d!important}
.reviews-component .review-color-3{background:#005bff!important}

.reviews-component .review-rating,
.reviews-component .review-rating-full{
  margin-top:8px!important;
  color:#ffb800!important;
  letter-spacing:1px!important;
  font-size:16px!important;
  white-space:nowrap!important;
}

.reviews-component .review-full-text{
  margin-top:24px!important;
  color:#1f2937!important;
  font-size:18px!important;
  line-height:1.65!important;
  font-weight:400!important;
}

.reviews-component .review-full-actions{
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-top:24px!important;
}

.reviews-component .review-btn,
.reviews-component .review-btn-secondary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:12px 18px!important;
  border-radius:14px!important;
  text-decoration:none!important;
  font-weight:600!important;
}

.reviews-component .review-btn{
  background:var(--primary,#0054FF)!important;
  color:#fff!important;
}

.reviews-component .review-btn-secondary{
  background:#f3f4f6!important;
  color:#111827!important;
}

.reviews-component .reviews-side-list{
  display:block!important;
  background:#fff!important;
  color:#111827!important;
  border:1px solid #e5e7eb!important;
  border-radius:24px!important;
  padding:18px!important;
  position:sticky!important;
  top:100px!important;
  box-shadow:0 14px 40px rgba(15,23,42,.06)!important;
  box-sizing:border-box!important;
}

.reviews-component .reviews-side-list h3{
  margin:0 0 12px!important;
  color:#111827!important;
  font-size:20px!important;
  line-height:1.2!important;
  font-weight:600!important;
}

.reviews-component .reviews-side-list a{
  display:block!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  text-decoration:none!important;
  color:#111827!important;
  font-weight:600!important;
}

.reviews-component .reviews-side-list a:hover,
.reviews-component .reviews-side-list a.active{
  background:#f3f4f6!important;
  color:var(--primary,#0054FF)!important;
}

@media(max-width:900px){
  .reviews-component .review-full-layout{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .reviews-component .reviews-side-list{
    position:static!important;
  }

  .reviews-component .review-full{
    padding:22px!important;
    border-radius:24px!important;
  }

  .reviews-component .review-author{
    align-items:flex-start!important;
  }

  .reviews-component .review-avatar-big{
    width:64px!important;
    height:64px!important;
    flex-basis:64px!important;
    font-size:26px!important;
  }

  .reviews-component .review-author-info h1,
  .reviews-component .review-author-big h1{
    font-size:30px!important;
  }

  .reviews-component .review-full-text{
    font-size:16px!important;
  }
}
