.sht-reviews-page { max-width: 860px; margin: 0 auto; }

.sht-reviews-page { max-width: 860px; margin: 0 auto; }

.sht-reviews-controls {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin: 10px 0 18px;
}

.sht-reviews-controls__left {
  color:#0f172a;
  font-size:14px;
  line-height:1.2;
  margin-top: auto;
  margin-bottom: auto;
}

.sht-reviews-controls__left strong {
  font-size:16px;
  font-weight:800;
}

.sht-reviews-toolbar {
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:14px;
  flex-wrap:wrap;
}

.sht-toolbar-field {
  display:flex;
  flex-direction:column;
  gap:6px;
}

.sht-toolbar-label {
  font-size:12px;
  font-weight:700;
  color:rgba(15,23,42,0.65);
	display:none;
}

.sht-toolbar-select {
  appearance:none;
  -webkit-appearance:none;
  min-width:220px;
  height:46px;
  padding:0 42px 0 14px;
  border:1px solid rgba(15,23,42,0.14);
  border-radius:12px;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%230f172a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  box-shadow:0 8px 20px rgba(15,23,42,0.05);
  color:#0f172a;
  font-size:15px;
  font-weight:600;
  cursor:pointer;
}

.sht-toolbar-select:focus {
  outline:none;
  border-color:rgba(37,99,235,0.45);
  box-shadow:0 0 0 4px rgba(37,99,235,0.12);
}

.sht-toolbar-check {
  min-height:46px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  border:1px solid rgba(15,23,42,0.14);
  border-radius:12px;
  background:#fff;
  box-shadow:0 8px 20px rgba(15,23,42,0.05);
  cursor:pointer;
  user-select:none;
}

.sht-toolbar-check input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.sht-toolbar-check__box {
  width:18px;
  height:18px;
  border-radius:6px;
  border:1.5px solid rgba(15,23,42,0.24);
  background:#fff;
  position:relative;
  flex:0 0 auto;
}

.sht-toolbar-check__box::after {
  content:'';
  position:absolute;
  left:5px;
  top:1px;
  width:5px;
  height:10px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
  opacity:0;
}

.sht-toolbar-check input:checked + .sht-toolbar-check__box {
  background:#2563eb;
  border-color:#2563eb;
}

.sht-toolbar-check input:checked + .sht-toolbar-check__box::after {
  opacity:1;
}

.sht-toolbar-check__text {
  color:#0f172a;
  font-size:15px;
  font-weight:600;
}

.sht-toolbar-check:focus-within {
  border-color:rgba(37,99,235,0.45);
  box-shadow:0 0 0 4px rgba(37,99,235,0.12);
}

.sht-reviews-list { display:flex; flex-direction:column; gap:12px; }

.sht-review {
  background:#fff;
  border:1px solid rgba(15,23,42,0.08);
  border-radius:14px;
  padding:18px;
  box-shadow:0 8px 20px rgba(15,23,42,0.06);
  display:flex;
  flex-direction:column;
}

.sht-review__top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  order: 1;
}

.sht-review__starswrap {
  display:flex;
  align-items:center;
  color:#f59e0b;
}

.sht-stars-row {
  display:block;
  width:150px;
  height:30px;
}

.sht-review__meta {
  margin-left:auto;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
  color: rgba(15,23,42,0.65);
  font-size:13px;
}

.sht-review__date { color: rgba(15,23,42,0.65); }

.sht-verified {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,0.12);
  background: rgba(15,23,42,0.02);
  color:#0f172a;
  font-weight:700;
}

.sht-verified__icon { display:inline-flex; color:#16a34a; }
.sht-verified__text { font-size:12px; }

.sht-review__text {
  margin-top:12px;
  color:#0f172a;
  font-size:16px;
  line-height:1.6;
  order: 2;
}

.sht-review__reco {
  margin-top:12px;
  color: rgba(15,23,42,0.9);
  font-size:13px;
  line-height:1.35;
  background: rgba(37,99,235,0.06);
  border: 1px solid rgba(37,99,235,0.18);
  padding:10px 12px;
  border-radius:12px;
  order: 3;
}

.sht-review__reco strong {
  font-weight:800;
  margin-right:6px;
}

.sht-pagination {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
  margin:18px 0;
}

.sht-page-link a,
.sht-page-link span {
  display:inline-flex;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(15,23,42,0.12);
  text-decoration:none;
}

.sht-page-link .current { border-color: rgba(15,23,42,0.35); }

.sht-reviews-summary { display:flex; align-items:center; justify-content:center; gap:12px; flex-wrap:wrap; text-align:center; }
.sht-reviews-summary__text { color:#0f172a; font-size:14px; }
.sht-stars { display:block; color: var(--sht-blue, #2563eb); }

.sht-reviews-latest { display:grid; gap:12px; }
@media (min-width: 640px) {
  .sht-reviews-latest { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.sht-review--compact { padding:14px; }

@media (min-width: 900px) {
  .sht-review { padding: 20px 22px; }
  .sht-review__text { font-size:17px; }
}


@media (max-width: 767px) {
  .sht-reviews-controls {
    flex-direction:column;
    align-items:stretch;
  }

  .sht-reviews-toolbar {
    width:100%;
    justify-content:stretch;
    align-items:stretch;
    gap:10px;
  }

  .sht-toolbar-field,
  .sht-toolbar-select,
  .sht-toolbar-check {
    width:100%;
  }
}

@media (max-width: 399px) {
  .sht-review__top {
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }

  .sht-review__meta {
    width:100%;
    justify-content:flex-start;
  }
}

/* Summary box (compact) */
.sht-summarybox {
  background:#fff;
  border:1px solid rgba(15,23,42,0.08);
  border-radius:14px;
  padding:14px;
  box-shadow:0 10px 26px rgba(15,23,42,0.06);
  margin: 0 0 12px;
}

.sht-summarybox__head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom: 10px;
}

.sht-summarybox__title {
  font-weight:900;
  font-size:14px;
  color:#0f172a;
}

.sht-summarybox__main {
  display:flex;
  flex-direction:column;
  gap:10px;
}

.sht-summarybox__ratingrow {
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(15,23,42,0.08);
  border-radius:12px;
  padding:10px 12px;
}

.sht-summarybox__avgnum {
  font-size:26px;
  font-weight:900;
  color:#0f172a;
  line-height:1;
}

.sht-summarybox__stars {
  color:#f59e0b;
  display:flex;
  align-items:center;
}

.sht-summarybox__count {
  margin-left:auto;
  color: rgba(15,23,42,0.65);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.sht-summarybox__badge {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,0.12);
  background: rgba(15,23,42,0.02);
  color:#0f172a;
  font-weight:800;
  font-size:12px;
  width: fit-content;
}

.sht-summarybox__badgeicon { display:inline-flex; color:#16a34a; }
.sht-summarybox__badgetext { font-weight:900; }
.sht-summarybox__badgedetail { color: rgba(15,23,42,0.65); font-weight:800; }

/* Distribution */
.sht-summarybox__dist {
  margin-top: 10px;
  border-top: 1px solid rgba(15,23,42,0.08);
  padding-top: 10px;
  display:grid;
  gap:6px;
}

.sht-distrow {
  display:grid;
  grid-template-columns: 34px 1fr 34px;
  gap:10px;
  align-items:center;
}

.sht-distrow__label {
  font-weight:900;
  color:#0f172a;
  font-size:12px;
}

.sht-distrow__bar {
  height:6px;
  border-radius:999px;
  background: rgba(15,23,42,0.08);
  overflow:hidden;
}

.sht-distrow__fill {
  display:block;
  height:100%;
  width:0;
  background: rgba(245,158,11,0.95);
  border-radius:999px;
}

.sht-distrow__count {
  text-align:right;
  font-weight:800;
  color: rgba(15,23,42,0.75);
  font-size:12px;
}

/* Rating box */
.sht-rating-box { margin: 0 0 12px; }

.sht-rating-box__inner {
  background:#ffffff;
  border-radius:12px;
  padding:16px;
  border:1px solid rgba(15,23,42,0.08);
  box-shadow:0 8px 20px rgba(15,23,42,0.06);
  position:relative;
  text-align:center;
}

.sht-rating-box__row {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.sht-rating-box__stars { display:inline-flex; align-items:center; color: var(--sht-blue, #2563eb); }
.sht-rating-box__score { color:#0f172a; font-weight:800; font-size:15px; }

.sht-rating-box__info {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer;
}

.sht-rating-box__desc {
  margin-top:6px;
  color: rgba(15,23,42,0.55);
  font-size:13px;
  font-weight:500;
}

.sht-rating-box__link {
  font-size:13px;
}

.sht-rating-box__info-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.sht-rating-box__tooltip {
  position: absolute;
  top: calc(100% + 12px);
  right: -55px;
  width: 300px;
  max-width: calc(100vw - 32px);
  box-sizing: border-box;
  background: #0f172a;
  color: #ffffff;
  padding: 11px 12px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.45;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(6px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index: 60;
  box-shadow: 0 14px 30px rgba(15,23,42,0.22);
  text-align: left;
}

.sht-rating-box.is-open .sht-rating-box__tooltip {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

/* Summary box variants */
.sht-summarybox--v2 {
  border-radius:18px;
  padding:16px;
}

.sht-summarybox--v2 .sht-summarybox__ratingrow {
  border-radius:16px;
  padding:12px 14px;
}

.sht-summarybox--v2 .sht-summarybox__badge {
  background: rgba(37,99,235,0.06);
  border-color: rgba(37,99,235,0.18);
}

.sht-summarybox--v3 {
  padding:0;
  border:0;
  box-shadow:none;
  background:transparent;
}

.sht-summarybox--v3 .sht-summarybox__main {
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
}

.sht-summarybox--v3 .sht-summarybox__ratingrow {
  width:auto;
  border-radius:999px;
  padding:10px 12px;
}

.sht-summarybox--v3 .sht-summarybox__badge {
  border-radius:999px;
}

.sht-summarybox__link {
  margin-top:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-weight:900;
  font-size:13px;
  color:#0f172a;
}

.sht-reviews-filter {
  margin: 0 0 16px;
}

.sht-filter-check {
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:14px;
  color:#0f172a;
  cursor:pointer;
}

.sht-filter-check input {
  width:16px;
  height:16px;
  margin:0;
}

.sht-review--empty {
  text-align:center;
  color: rgba(15,23,42,0.72);
}

.sht-order-proof {
  margin: 0 auto 12px;
  max-width: 500px;
}

.sht-order-proof__inner {
  position: relative;
  overflow: visible;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border: 1px solid rgba(15,23,42,0.1);
  border-radius: 12px;
  padding: 13px 13px 13px;
  box-shadow: 0 10px 28px rgba(15,23,42,0.06);
  text-align: center;
}

.sht-order-proof__top {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 0 12px;
  padding: 9px 12px;
  border-radius: 12px;
  background: rgba(37,99,235,0.08);
  color: #1d4ed8;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
}

.sht-order-proof__topicon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #2563eb;
  flex: 0 0 auto;
}

.sht-order-proof__topicon svg {
  display: block;
}

.sht-order-proof__rating {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 8px;
}

.sht-order-proof__stars {
  display: inline-flex;
  align-items: center;
  color: #f59e0b;
}

.sht-order-proof__stars .sht-stars {
  width: 138px;
  height: 28px;
  display: block;
  color: currentColor;
}

.sht-order-proof__score {
  color: #0f172a;
  font-weight: 800;
  font-size: 15px;
  line-height: 1;
  letter-spacing: -0.01em;
}

.sht-order-proof__info-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.sht-order-proof__info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  color: rgba(15,23,42,0.4);
}

.sht-order-proof__info:hover,
.sht-order-proof__info:focus {
  color: #2563eb;
  outline: none;
}

.sht-order-proof__desc {
  margin-top: 4px;
  color: rgba(15,23,42,0.62);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 500;
  max-width: 420px;
  margin-left: auto;
  margin-right: auto;
}

.sht-order-proof__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  font-size: 13px;
  font-weight: 800;
  color: #2563eb;
  text-decoration: none;
}

.sht-order-proof__link:hover {
  text-decoration: underline;
}

.sht-order-proof__tooltip {
  position: absolute;
  top: calc(100% + 12px);
  right: -50px;
  width: 320px;
  max-width: calc(100vw - 32px);
  box-sizing: border-box;
  background: #0f172a;
  color: #ffffff;
  padding: 11px 12px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.45;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(6px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index: 60;
  box-shadow: 0 14px 30px rgba(15,23,42,0.22);
  text-align: left;
}

.sht-order-proof__info-wrap:hover .sht-order-proof__tooltip,
.sht-order-proof__info-wrap:focus-within .sht-order-proof__tooltip {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}