#hs-review-summary.hs-review-ui{
  --hs-primary:var(--primary-color,#102b4e);
  --hs-accent:var(--accent-color,#b21f5b);
  --hs-text:var(--text-color,#253044);
  --hs-muted:#748096;
  --hs-border:#e7e9ee;
  --hs-soft:#fff7fa;
  --hs-star:#f5b313;
  margin:34px 0;
  color:var(--hs-text);
  font:inherit;
}
#hs-review-summary.hs-review-ui,
#hs-review-summary.hs-review-ui *{box-sizing:border-box}

#hs-review-summary .hs-review-ui__title-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 0 18px;
  border-bottom:1px solid var(--hs-border);
}
#hs-review-summary .hs-review-ui__title-row h2{
  margin:0;
  color:var(--hs-primary);
  font-size:30px;
  line-height:1.2;
  font-weight:700;
}
#hs-review-summary .hs-review-ui__count{
  display:inline-flex;
  min-width:30px;
  height:26px;
  align-items:center;
  justify-content:center;
  margin-left:7px;
  padding:0 8px;
  border-radius:999px;
  background:#f1f2f5;
  color:var(--hs-primary);
  font-size:12px;
  font-weight:700;
  vertical-align:middle;
}

#hs-review-summary .hs-review-ui__summary{
  display:grid;
  grid-template-columns:minmax(190px,1fr) minmax(250px,1.2fr) minmax(360px,2fr);
  gap:24px;
  align-items:stretch;
  padding:20px 0;
  border-bottom:1px solid var(--hs-border);
}
#hs-review-summary .hs-review-ui__score,
#hs-review-summary .hs-review-ui__bars,
#hs-review-summary .hs-review-ui__gallery{
  min-width:0;
  padding:18px;
  border:1px solid var(--hs-border);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,var(--hs-soft));
}
#hs-review-summary .hs-review-ui__score{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
#hs-review-summary .hs-review-ui__score strong{
  display:block;
  color:var(--hs-primary);
  font-size:56px;
  line-height:1;
  letter-spacing:-2px;
}
#hs-review-summary .hs-review-ui__stars{
  margin:9px 0 5px;
  font-size:22px;
  letter-spacing:2px;
  color:#d9dde5;
  white-space:nowrap;
}
#hs-review-summary .hs-review-ui__stars .is-filled{color:var(--hs-star)}
#hs-review-summary .hs-review-ui__score small{
  color:var(--hs-muted);
  font-size:12px;
}

#hs-review-summary .hs-review-ui__bar{
  display:grid;
  grid-template-columns:34px minmax(70px,1fr) 28px;
  gap:8px;
  align-items:center;
  margin:8px 0;
  color:var(--hs-muted);
  font-size:12px;
}
#hs-review-summary .hs-review-ui__bar i{
  display:block;
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:#eceff3;
}
#hs-review-summary .hs-review-ui__bar b{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:var(--hs-accent);
}
#hs-review-summary .hs-review-ui__bar em{
  font-style:normal;
  text-align:right;
}

#hs-review-summary .hs-review-ui__gallery-title{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:11px;
  color:var(--hs-primary);
  font-size:15px;
  font-weight:700;
}
#hs-review-summary .hs-review-ui__gallery-track{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-bottom:2px;
  scrollbar-width:none;
}
#hs-review-summary .hs-review-ui__gallery-track::-webkit-scrollbar{display:none}
#hs-review-summary .hs-review-ui__gallery-track .hs-review-ui__photo-btn{
  flex:0 0 78px;
  width:78px;
  height:96px;
}
#hs-review-summary .hs-review-ui__photo-btn{
  position:relative;
  display:block;
  padding:0;
  margin:0;
  overflow:hidden;
  border:1px solid var(--hs-border);
  border-radius:9px;
  background:#f7f7f8;
  cursor:zoom-in;
}
#hs-review-summary .hs-review-ui__photo-btn img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
#hs-review-summary .hs-review-ui__photo-btn:hover{
  border-color:var(--hs-accent);
  box-shadow:0 4px 14px rgba(0,0,0,.08);
}
#hs-review-summary .hs-review-ui__more-photo{
  display:flex!important;
  flex:0 0 78px;
  width:78px;
  height:96px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  padding:0;
  border:1px solid var(--hs-border);
  border-radius:9px;
  background:#fff1f6;
  color:var(--hs-accent);
  text-decoration:none;
  cursor:pointer;
}
#hs-review-summary .hs-review-ui__more-photo strong{font-size:20px}
#hs-review-summary .hs-review-ui__more-photo small{font-size:10px}

#hs-review-summary .hs-review-ui__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:18px 0;
}
#hs-review-summary .hs-review-ui__filters{
  display:flex;
  gap:8px;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}
#hs-review-summary .hs-review-ui__filters::-webkit-scrollbar{display:none}
#hs-review-summary .hs-review-ui__filters button{
  flex:0 0 auto;
  padding:9px 14px;
  border:1px solid var(--hs-border);
  border-radius:999px;
  background:#fff;
  color:var(--hs-text);
  font:inherit;
  font-size:12px;
  white-space:nowrap;
  cursor:pointer;
  transition:.18s ease;
}
#hs-review-summary .hs-review-ui__filters button.is-active,
#hs-review-summary .hs-review-ui__filters button:hover{
  border-color:var(--hs-accent);
  background:var(--hs-accent);
  color:#fff;
}
#hs-review-summary .hs-review-ui__write{
  flex:0 0 auto;
  padding:11px 19px;
  border:1px solid var(--hs-accent);
  border-radius:7px;
  background:var(--hs-accent);
  color:#fff;
  font:inherit;
  font-size:12px;
  font-weight:700;
  letter-spacing:.5px;
  cursor:pointer;
}

#hs-review-summary .hs-review-ui__list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  padding-top:2px;
}
#hs-review-summary .hs-review-ui__card{
  display:grid;
  grid-template-columns:126px minmax(0,1fr);
  gap:14px;
  min-width:0;
  min-height:245px;
  padding:12px;
  border:1px solid var(--hs-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 18px rgba(16,43,78,.06);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
#hs-review-summary .hs-review-ui__card:hover{
  transform:translateY(-2px);
  border-color:#dddfe5;
  box-shadow:0 9px 26px rgba(16,43,78,.09);
}
#hs-review-summary .hs-review-ui__media{
  position:relative;
  min-width:0;
}
#hs-review-summary .hs-review-ui__hero-photo{
  display:block;
  width:100%;
  height:198px;
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:10px;
  background:#f3f4f6;
  cursor:zoom-in;
}
#hs-review-summary .hs-review-ui__hero-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
#hs-review-summary .hs-review-ui__hero-photo:after{
  content:"⌕";
  position:absolute;
  left:96px;
  bottom:10px;
  width:25px;
  height:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(0,0,0,.72);
  color:#fff;
  font-size:15px;
  pointer-events:none;
}
#hs-review-summary .hs-review-ui__photo-count{
  position:absolute;
  right:7px;
  bottom:8px;
  min-width:30px;
  height:27px;
  padding:0 7px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.95);
  color:var(--hs-accent);
  font-size:11px;
  font-weight:700;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
#hs-review-summary .hs-review-ui__avatar{
  width:100%;
  height:198px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:linear-gradient(145deg,#fff1f6,#f3f5f8);
  color:var(--hs-accent);
  font-size:36px;
  font-weight:700;
}

#hs-review-summary .hs-review-ui__content{
  display:flex;
  min-width:0;
  flex-direction:column;
}
#hs-review-summary .hs-review-ui__topline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}
#hs-review-summary .hs-review-ui__identity{min-width:0}
#hs-review-summary .hs-review-ui__author{
  display:block;
  overflow:hidden;
  color:var(--hs-primary);
  font-size:14px;
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#hs-review-summary .hs-review-ui__verified{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-top:4px;
  color:#159447;
  font-size:10px;
  font-weight:600;
}
#hs-review-summary .hs-review-ui__verified[hidden]{
  display:none;
}
#hs-review-summary .hs-review-ui__verified span{
  display:inline-flex;
  width:14px;
  height:14px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#18a957;
  color:#fff;
  font-size:9px;
}
#hs-review-summary .hs-review-ui__date{
  flex:0 0 auto;
  color:var(--hs-muted);
  font-size:10px;
  white-space:nowrap;
}
#hs-review-summary .hs-review-ui__rating{
  margin:7px 0 5px;
  color:var(--hs-star);
  font-size:16px;
  letter-spacing:1px;
  line-height:1;
}
#hs-review-summary .hs-review-ui__text{
  display:-webkit-box;
  overflow:hidden;
  color:var(--hs-text);
  font-size:12px;
  line-height:1.55;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:6;
}
#hs-review-summary .hs-review-ui__photos-title{
  margin-top:auto;
  margin-bottom:7px;
  padding-top:10px;
  color:var(--hs-primary);
  font-size:10px;
  font-weight:700;
}
#hs-review-summary .hs-review-ui__photos{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}
#hs-review-summary .hs-review-ui__photos .hs-review-ui__photo-btn{
  width:42px;
  height:52px;
  border-radius:5px;
}
#hs-review-summary .hs-review-ui__photo-more{
  width:42px;
  height:52px;
  padding:0;
  border:1px solid #f2c5d5;
  border-radius:5px;
  background:#fff0f5;
  color:var(--hs-accent);
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
#hs-review-summary .hs-review-ui__actions{
  display:flex;
  align-items:center;
  margin-top:8px;
}
#hs-review-summary .hs-review-ui__helpful{
  padding:6px 9px;
  border:1px solid var(--hs-border);
  border-radius:6px;
  background:#fff;
  color:var(--hs-muted);
  font:inherit;
  font-size:10px;
  cursor:default;
}
#hs-review-summary .hs-review-ui__helpful:disabled{opacity:1}

#hs-review-summary .hs-review-ui__empty{
  grid-column:1/-1;
  text-align:center;
  padding:30px;
  color:var(--hs-muted);
  font-size:13px;
}
#hs-review-summary .hs-review-ui__more{
  display:block;
  margin:22px auto 0;
  min-width:250px;
  padding:12px 26px;
  border:1px solid var(--hs-accent);
  border-radius:8px;
  background:var(--hs-accent);
  color:#fff;
  font:inherit;
  font-size:12px;
  font-weight:700;
  letter-spacing:.4px;
  cursor:pointer;
}
#hs-review-summary .hs-review-ui__more:hover{filter:brightness(.95)}
#hs-review-summary .hs-review-ui__more:disabled{opacity:.65;cursor:wait}

#hs-review-ui-lightbox[hidden],
#hs-review-ui-lightbox.hs-review-ui__lightbox[hidden]{display:none!important}
#hs-review-ui-lightbox.hs-review-ui__lightbox{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(15,19,28,.86);
}
#hs-review-ui-lightbox.hs-review-ui__lightbox.is-open{display:flex!important}
#hs-review-ui-lightbox .hs-review-ui__lightbox-backdrop{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
#hs-review-ui-lightbox-image{
  position:relative;
  z-index:2;
  display:block;
  width:auto;
  height:auto;
  max-width:90vw;
  max-height:86vh;
  object-fit:contain;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 60px rgba(0,0,0,.35);
}
#hs-review-ui-lightbox>button{
  position:fixed;
  z-index:3;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#222;
  font-size:28px;
  line-height:44px;
  text-align:center;
  cursor:pointer;
}
#hs-review-ui-lightbox [data-hs-lb-close]{top:18px;right:18px}
#hs-review-ui-lightbox [data-hs-lb-prev]{left:18px;top:50%;margin-top:-22px}
#hs-review-ui-lightbox [data-hs-lb-next]{right:18px;top:50%;margin-top:-22px}
#hs-review-ui-lightbox>span{
  position:fixed;
  z-index:3;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  padding:6px 11px;
  border-radius:999px;
  background:rgba(0,0,0,.68);
  color:#fff;
  font-size:12px;
}

@media (max-width:1180px){
  #hs-review-summary .hs-review-ui__summary{
    grid-template-columns:170px minmax(230px,1fr);
  }
  #hs-review-summary .hs-review-ui__gallery{grid-column:1/-1}
  #hs-review-summary .hs-review-ui__list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:800px){
  #hs-review-summary .hs-review-ui__summary{display:block}
  #hs-review-summary .hs-review-ui__score,
  #hs-review-summary .hs-review-ui__bars,
  #hs-review-summary .hs-review-ui__gallery{margin-bottom:12px}
  #hs-review-summary .hs-review-ui__toolbar{display:block}
  #hs-review-summary .hs-review-ui__filters{margin-bottom:12px}
  #hs-review-summary .hs-review-ui__write{width:100%}
  #hs-review-summary .hs-review-ui__list{grid-template-columns:1fr}
  #hs-review-summary .hs-review-ui__card{grid-template-columns:112px minmax(0,1fr);min-height:220px}
  #hs-review-summary .hs-review-ui__hero-photo,
  #hs-review-summary .hs-review-ui__avatar{height:175px}
}
@media (max-width:480px){
  #hs-review-summary.hs-review-ui{margin:22px 0}
  #hs-review-summary .hs-review-ui__title-row h2{font-size:23px}
  #hs-review-summary .hs-review-ui__summary{padding:14px 0}
  #hs-review-summary .hs-review-ui__score,
  #hs-review-summary .hs-review-ui__bars,
  #hs-review-summary .hs-review-ui__gallery{padding:14px}
  #hs-review-summary .hs-review-ui__score strong{font-size:48px}
  #hs-review-summary .hs-review-ui__card{
    grid-template-columns:92px minmax(0,1fr);
    gap:10px;
    padding:9px;
    border-radius:11px;
  }
  #hs-review-summary .hs-review-ui__hero-photo,
  #hs-review-summary .hs-review-ui__avatar{height:150px}
  #hs-review-summary .hs-review-ui__hero-photo:after{left:65px}
  #hs-review-summary .hs-review-ui__text{
    font-size:11px;
    line-height:1.48;
    -webkit-line-clamp:7;
  }
  #hs-review-summary .hs-review-ui__photos-title{font-size:9px}
  #hs-review-summary .hs-review-ui__photos .hs-review-ui__photo-btn,
  #hs-review-summary .hs-review-ui__photo-more{width:36px;height:46px}
  #hs-review-summary .hs-review-ui__more{width:100%;min-width:0}
}


/* HeenaStyle V8: keep Journal #review AJAX container alive, but hide
   the original review tables/pagination after the custom cards are built. */
#review .hs-review-source-hidden{
  display:none!important;
}
#review table.hs-review-source-hidden,
#review .row.hs-review-source-hidden{
  display:none!important;
}


/* V8.0.2: hide ONLY Journal's native review pager.
   Keep #review, the review form, and AJAX pagination machinery in the DOM. */
#review .pagination,
#review ul.pagination,
#review .review-pagination,
#review .pagination-wrapper,
#review .pager,
#review .review-list-pagination,
#review .review-pagination-wrapper{
  display:none!important;
}


#review nav[aria-label*="pagination" i],
#review nav.pagination,
#review .row:has(> .pagination),
#review .row:has(> .col-sm-12 > .pagination),
#review .row:has(> .col-md-12 > .pagination){
  display:none!important;
}

#hs-review-summary .hs-review-ui__helpful{
  transition:.18s ease;
}
#hs-review-summary .hs-review-ui__helpful:not(:disabled){
  cursor:pointer;
}
#hs-review-summary .hs-review-ui__helpful:not(:disabled):hover{
  border-color:var(--hs-accent);
  color:var(--hs-accent);
}
#hs-review-summary .hs-review-ui__helpful.is-voted{
  border-color:#c9dfd0;
  background:#f1fbf4;
  color:#16833f;
  cursor:default;
}
