/* =========================================================
   Shop4Tour EasyComm V2
   Системную настройку ec_frontend_css очистить.
   Подключить вручную после основных CSS сайта.
   ========================================================= */

.ec-error,
.ec-antispam{
  display:none;
}

.ec-clearfix:before,
.ec-clearfix:after{
  content:" ";
  display:table;
}

.ec-clearfix:after{
  clear:both;
}

/* Stars output */
.ec-stars{
  position:relative;
  width:110px;
  height:20px;
  margin:0;
  overflow:hidden;
  background:none!important;
  line-height:20px;
}

.ec-stars:before,
.ec-stars span:before{
  content:"★★★★★";
  display:block;
  font-family:Arial,sans-serif;
  font-size:25px;
  line-height:20px;
  letter-spacing:1px;
  white-space:nowrap;
}

.ec-stars:before{
  color:#d8e0ec;
}

.ec-stars span{
  position:absolute;
  left:0;
  top:0;
  display:block;
  height:20px;
  overflow:hidden;
  background:none!important;
}

.ec-stars span:before{
  color:#ffb800;
}

.ec-stars span.rating-0{width:0;}
.ec-stars span.rating-1{width:20px;}
.ec-stars span.rating-2{width:41px;}
.ec-stars span.rating-3{width:62px;}
.ec-stars span.rating-4{width:83px;}
.ec-stars span.rating-5{width:110px;}

/* Rating input */
.ec-rating{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}

.ec-rating-stars{
  display:flex;
  gap:4px;
  margin:0;
  float:none;
}

.ec-rating-stars span{
  position:relative;
  width:26px;
  height:26px;
  display:block;
  float:none;
  margin:0;
  cursor:pointer;
  background:none!important;
}

.ec-rating-stars span:before{
  content:"★";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#d8e0ec;
  font-family:Arial,sans-serif;
  font-size:26px;
  line-height:1;
  transition:color .18s ease, transform .18s ease;
}

.ec-rating-stars span.active:before,
.ec-rating-stars span.active2:before,
.ec-rating-stars span:hover:before{
  color:#ffb800;
}

.ec-rating-stars span:hover:before{
  transform:scale(1.08);
}

.ec-rating-stars span.active-disabled:before{
  color:#d8e0ec;
}

.ec-rating-description{
  float:none;
  padding:0;
  color:#738095;
  font-size:14px;
}

/* Messages */
.ec-message{
  min-height:0;
  margin:0 0 16px;
  padding:18px 20px;
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(13,37,86,.06);
  color:#172033;
}

.ec-message p:last-child{
  margin-bottom:0;
}

.ec-message__meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 14px;
  margin:0 0 10px;
  line-height:1.3;
}

.ec-message__meta .ec-message__author,
.ec-message__meta .ec-message__date,
.ec-message__meta .ec-message__votes{
  float:none;
}

.ec-message__author{
  font-weight:700;
  color:#172033;
}

.ec-message__date{
  padding-left:0;
  color:#8a95a8;
  font-size:13px;
}

.ec-message__reply{
  margin:14px 0 0;
  padding:14px 16px;
  background:#f4f7fb;
  border:1px solid #e7edf5;
  border-radius:14px;
}

/* Votes */
.ec-message__votes{
  position:relative;
  margin-left:auto;
  padding:0;
  background:transparent;
  border-radius:0;
}

.ec-message__votes-item{
  float:none;
  display:inline-flex;
  align-items:center;
}

.ec-message__votes-item + .ec-message__votes-item{
  margin-left:10px;
}

.ec-message__votes-button{
  min-height:28px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:999px;
  background:#f4f7fb!important;
  color:#738095;
  line-height:1;
  text-decoration:none!important;
  cursor:default;
}

.ec-message__votes-button.enabled{
  cursor:pointer;
}

.ec-message__votes-button.enabled:hover,
.ec-message__votes-button.active{
  background:#eef3fb!important;
  color:#274684;
}

.ec-message__votes-button-like,
.ec-message__votes-button-dislike,
.ec-message__votes-button-like.enabled:hover,
.ec-message__votes-button-dislike.enabled:hover,
.ec-message__votes-button-like.active,
.ec-message__votes-button-dislike.active{
  background-image:none!important;
  background-position:0 0!important;
}

.ec-message__votes-button-like:before{
  content:"👍";
}

.ec-message__votes-button-dislike:before{
  content:"👎";
}

.ec-message__votes-bar{
  display:none;
}

/* Detailed rating */
.ec-d-rating{
  width:100%;
  max-width:560px;
  display:grid;
  grid-template-columns:140px minmax(0,1fr);
  gap:20px;
  padding:22px;
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:20px;
  box-shadow:0 12px 32px rgba(13,37,86,.08);
}

.ec-d-rating:after{
  display:none;
}

.ec-d-rating__col-info,
.ec-d-rating__col-lines{
  width:auto;
  padding-top:0;
}

.ec-d-rating__value{
  margin-bottom:8px;
  color:#172033;
  font-family:"Ubuntu","PT Sans",Arial,sans-serif;
  font-size:48px;
  line-height:1;
  font-weight:800;
}

.ec-d-rating__desc{
  margin-top:10px;
  color:#738095;
  font-size:14px;
}

.ec-d-rating__line{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) 42px;
  gap:10px;
  align-items:center;
  margin:10px 0;
  color:#738095;
  line-height:1;
}

.ec-d-rating__line:after{
  display:none;
}

.ec-d-rating__line-rate,
.ec-d-rating__line-volume{
  float:none;
  width:auto;
  padding:0;
  text-align:right;
}

.ec-d-rating__line-progress{
  position:static;
  margin:0;
  height:6px;
  border-radius:999px;
  overflow:hidden;
  background:#e7edf5;
}

.ec-d-rating__line-progress > span{
  display:block;
  height:6px;
  border-radius:999px;
  background:#ffb800;
}

@media(max-width:575px){
  .ec-message{
    padding:16px;
    border-radius:16px;
  }

  .ec-message__meta{
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
  }

  .ec-message__votes{
    margin-left:0;
  }

  .ec-d-rating{
    grid-template-columns:1fr;
    padding:18px;
  }

  .ec-d-rating__value{
    font-size:42px;
  }
}