.cr-reviews{max-width:500px;margin:10px auto 20px;padding:26px 14px 30px;box-sizing:border-box;
  scroll-margin-top:80px;border-radius:20px;font-family:'Open Sans',Arial,sans-serif;
  background:radial-gradient(circle at top left,rgba(152,232,59,.18),transparent 32%),
             linear-gradient(180deg,#f7fbf4 0%,#fff 100%);}
.cr-head{text-align:center;margin-bottom:14px}
.cr-title{font-family:'Ubuntu',sans-serif;font-size:26px;font-weight:700;color:#222;margin:0 0 6px;
  text-shadow:1px 1px 2px rgba(0,0,0,.08)}
.cr-sub{margin:0;color:#667085;font-size:14px}

.cr-summary{padding:16px;margin-bottom:12px;background:#fff;border:1px solid #e7efdf;
  border-radius:24px;box-shadow:0 10px 30px rgba(16,24,40,.08)}
.cr-rating-box{display:flex;align-items:center;gap:14px}
.cr-rating{width:70px;height:70px;flex:0 0 70px;display:flex;align-items:center;justify-content:center;
  border-radius:22px;background:#f2ffe8;color:#4f8023;font-size:30px;font-weight:900;line-height:1;
  font-family:'Ubuntu',sans-serif}
.cr-stars{position:relative;display:inline-block;font-size:21px;letter-spacing:1px;line-height:1}
.cr-stars-base{color:#e4e7ec}
.cr-stars-fill{position:absolute;top:0;left:0;overflow:hidden;white-space:nowrap;color:#ffb800 } 
.cr-count{margin-top:6px;color:#667085;font-size:13px}

.cr-loader{text-align:center;color:#667085;font-size:14px;padding:18px 0}
.cr-spinner{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin-right:6px;
  border:3px solid #d9efc4;border-top-color:#4f8023;border-radius:50%;animation:crSpin .8s linear infinite}
@keyframes crSpin{to{transform:rotate(360deg)}}

.cr-list{display:grid;gap:14px}
.cr-card{padding:16px;background:#fff;border-radius:24px;border:1px solid #edf1e8;
  box-shadow:0 8px 24px rgba(16,24,40,.08);text-align:left;animation:crFade .3s ease}
@keyframes crFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.cr-card-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.cr-avatar{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;color:#fff;font-size:20px;font-weight:900;
  background:linear-gradient(135deg,#4f8023,#98e83b);box-shadow:inset 0 -8px 16px rgba(0,0,0,.12)}
.cr-name{color:#101828;font-size:16px;font-weight:900}
.cr-meta{margin-top:3px;color:#667085;font-size:13px}
.cr-rate{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.cr-rate span{color:#ffb800;font-size:18px;letter-spacing:1px}
.cr-rate b{color:#344054;font-size:14px}

.cr-product{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;padding:5px 12px;
  border-radius:999px;background:#f2ffe8;border:1px solid #d9efc4;color:#4f8023;font-size:12px;
  font-weight:700;text-decoration:none;max-width:100%}
.cr-product::before{content:"🛒"}
.cr-text{margin:0;color:#344054;font-size:15px;line-height:1.5}
.cr-media{margin-top:14px}
.cr-media img{width:60%;max-width:220px;height:auto;border-radius:16px;display:block;cursor:pointer;
  box-shadow:0 5px 14px rgba(16,24,40,.1)}
.cr-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:14px;
  color:#98a2b3;font-size:13px}
.cr-verified{color:#4f8023;font-weight:800}
.cr-verified::before{content:"✔ "}

.cr-more{display:block;width:100%;margin:16px auto 0;padding:15px 18px;border:none;border-radius:60px;
  background:linear-gradient(335deg,#4f8023,#98e83b);color:#fff;font-size:15px;font-weight:700;
  font-family:'AvenirNextCyr',sans-serif;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;
  box-shadow:0 8px 20px rgba(79,128,35,.4)}
.cr-more:active{transform:scale(.98)}

.cr-photo-modal{position:fixed;inset:0;z-index:20001;display:none;align-items:center;
  justify-content:center;padding:20px;box-sizing:border-box}
.cr-photo-modal.is-open{display:flex}
.cr-photo-overlay{position:absolute;inset:0;background:rgba(16,24,40,.72);backdrop-filter:blur(5px)}
.cr-photo-modal img{position:relative;z-index:1;max-width:90vw;max-height:75vh;border-radius:16px;
  background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.35)}
body.cr-photo-open{overflow:hidden}
