:root{
  --rwg-panel:#ffffff;
  --rwg-card:#eef2f6;
  --rwg-text:#1f2937;
  --rwg-muted:#7a8699;
  --rwg-accent:#00869F;
  --rwg-border:#d9e1ea;
  --rwg-star:#E7A900;
  --rwg-shadow:none;
  --rwg-radius-panel:30px;
  --rwg-radius-card:28px;
  --rwg-radius-pill:999px;
  --rwg-gap:24px;
  --rwg-side:24px;
  --rwg-card-pad:26px;
  --rwg-line-clamp:4;
  --rwg-source-2gis:#2FA000;
  --rwg-source-yandex:#FC3F1D;
  --rwg-source-flamp:#3D6DEB;
  --rwg-modal-overlay:rgba(0,0,0,.56);
}

#reviews-widget-grid,
[data-widget-grid="reviews"]{
  width:100%;
}

.rwg-wrap,
.rwg-wrap *{
  box-sizing:border-box;
}

.rwg-wrap{
  width:100%;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--rwg-text);
}

.rwg-panel{
  width:100%;
  background:transparent;
}

.rwg-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  margin-bottom:18px;
}

.rwg-toolbar{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
  padding:22px 18px;
  border-radius:40px;
  background:#e8edf3;
}

.rwg-filter-all,
.rwg-filter-source{
  appearance:none;
  border:none;
  background:transparent;
  padding:0;
  margin:0;
  cursor:pointer;
  color:var(--rwg-text);
  font:inherit;
}

.rwg-filter-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 22px;
  border-radius:999px;
  background:#ffffff;
  font-size:18px;
  font-weight:600;
  box-shadow:none;
}

.rwg-filter-all.is-active{
  background:#ffffff;
}

.rwg-filter-source{
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-size:18px;
  font-weight:700;
}

.rwg-filter-rating{
  line-height:1;
  color:#1e293b;
}

.rwg-source-icon{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  min-height:52px !important;
  flex:0 0 52px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:contain !important;
}

.rwg-source-icon.has-image{
  color:transparent !important;
  font-size:0 !important;
}

.rwg-source-icon.is-fallback{
  color:#fff;
  font-size:22px;
  font-weight:700;
}

.rwg-source-icon-fallback{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}

.rwg-summary{
  margin:8px 0 24px;
  color:#23314c;
  font-size:18px;
  line-height:1.4;
}

.rwg-grid-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

.rwg-card{
  min-width:0;
  min-height:364px;
  background:var(--rwg-card);
  border:1px solid var(--rwg-border);
  border-radius:var(--rwg-radius-card);
  padding:var(--rwg-card-pad);
  display:flex;
  flex-direction:column;
  box-shadow:var(--rwg-shadow);
}

.rwg-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:22px;
}

.rwg-author{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
}

.rwg-author-meta{
  min-width:0;
}

.rwg-avatar,
.rwg-avatar-lg{
  position:relative !important;
  overflow:hidden !important;
  border-radius:999px !important;
  background:#cfe3ec;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.rwg-avatar{
  width:60px;
  height:60px;
}

.rwg-avatar-lg{
  width:68px;
  height:68px;
}

.rwg-avaimg{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:inherit !important;
}

.rwg-avafallback{
  position:relative;
  z-index:1;
  font-size:22px;
  font-weight:700;
  color:#0b7f99;
}

.rwg-name{
  color:#283244;
  font-size:20px;
  font-weight:700;
  line-height:1.15;
  margin-bottom:6px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.rwg-sub{
  color:var(--rwg-muted);
  font-size:14px;
  line-height:1.2;
}

.rwg-stars{
  display:flex;
  gap:2px;
  flex:0 0 auto;
  color:var(--rwg-star);
  font-size:18px;
  line-height:1;
  margin-top:2px;
}

.rwg-star{
  user-select:none;
}

.rwg-text{
  color:#465264;
  font-size:18px;
  line-height:1.55;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:var(--rwg-line-clamp);
  overflow:hidden;
  margin-bottom:24px;
}

.rwg-card-footer{
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}

.rwg-link-btn{
  appearance:none;
  border:none;
  background:transparent;
  color:var(--rwg-accent);
  font-size:18px;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  padding:0;
}

.rwg-link-btn:hover{
  text-decoration:underline;
}

.rwg-loadmore-wrap{
  display:flex;
  justify-content:center;
  margin-top:30px;
}

.rwg-loadmore-btn{
  appearance:none;
  border:none;
  background:var(--rwg-accent);
  color:#fff;
  padding:15px 28px;
  border-radius:999px;
  font-size:18px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
}

.rwg-loadmore-btn:hover{
  opacity:.95;
}

/* modal */
body.rwg-modal-open{
  overflow:hidden;
}

body .rwg-modal-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
  background:var(--rwg-modal-overlay) !important;
}

body .rwg-modal-overlay .rwg-wrap{
  width:100% !important;
  max-width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
}

body .rwg-modal-card{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  margin:0 auto !important;
  width:min(760px, calc(100vw - 32px)) !important;
  max-width:min(760px, calc(100vw - 32px)) !important;
  max-height:calc(100vh - 40px) !important;
  overflow:auto !important;
  background:#ffffff !important;
  color:#1f2937 !important;
  border-radius:28px !important;
  padding:24px !important;
  box-shadow:0 20px 80px rgba(0,0,0,.22) !important;
}

.rwg-modal-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
  flex-wrap:wrap;
}

.rwg-modal-source{
  display:flex;
  align-items:center;
  gap:12px;
}

.rwg-modal-source-text{
  font-size:16px;
  font-weight:700;
  color:#243047;
}

.rwg-modal-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.rwg-modal-link,
.rwg-modal-close{
  appearance:none;
  border:none;
  text-decoration:none;
  background:#ffffff;
  color:var(--rwg-accent);
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  padding:0;
}

.rwg-modal-close{
  background:var(--rwg-accent);
  color:#fff;
  padding:12px 18px;
  border-radius:999px;
}

.rwg-modal-author-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.rwg-modal-author-meta{
  min-width:0;
  flex:1 1 auto;
}

.rwg-modal-author{
  font-size:22px;
  font-weight:700;
  color:#283244;
  line-height:1.15;
  margin-bottom:6px;
}

.rwg-modal-sub{
  color:var(--rwg-muted);
  font-size:14px;
  line-height:1.2;
}

.rwg-modal-text{
  white-space:pre-wrap;
  color:#445166;
  font-size:18px;
  line-height:1.7;
}

@media (max-width: 1200px){
  .rwg-grid-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 980px){
  .rwg-header{
    display:block;
  }

  .rwg-toolbar{
    gap:18px;
  }

  .rwg-filter-all{
    font-size:17px;
  }

  .rwg-filter-source,
  .rwg-filter-rating{
    font-size:17px;
  }
}

@media (max-width: 680px){
  .rwg-toolbar{
    padding:16px 14px;
    gap:16px;
    border-radius:28px;
  }

  .rwg-grid-list{
    grid-template-columns:1fr;
    gap:18px;
  }

  .rwg-card{
    min-height:unset;
    padding:20px;
  }

  .rwg-card-head{
    gap:10px;
    margin-bottom:18px;
  }

  .rwg-avatar{
    width:54px;
    height:54px;
  }

  .rwg-name{
    font-size:17px;
  }

  .rwg-sub{
    font-size:13px;
  }

  .rwg-text{
    font-size:17px;
    line-height:1.5;
    -webkit-line-clamp:5;
  }

  .rwg-link-btn{
    font-size:17px;
  }

  .rwg-summary{
    font-size:17px;
    margin-bottom:18px;
  }

  .rwg-source-icon{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
    flex:0 0 46px !important;
  }

  .rwg-filter-source{
    gap:10px;
  }

  .rwg-filter-all{
    min-height:48px;
    padding:0 18px;
  }

  .rwg-modal-card{
    padding:18px !important;
    border-radius:22px !important;
  }

  .rwg-modal-author{
    font-size:18px;
  }

  .rwg-modal-text{
    font-size:16px;
    line-height:1.6;
  }

  .rwg-modal-author-row{
    align-items:flex-start;
  }

  .rwg-card-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}