/* Remark Review Comments - minimal clean UI with blurred dark overlay */
.rrc-wrap{ position:relative; display:inline-block; }
.rrc-open{
  border:0;
  padding:12px 18px;
  border-radius:999px;
  cursor:pointer;
  font-weight:600;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}
body.rrc-noscroll{ overflow:hidden; }

.rrc-overlay{
  position:fixed;
  inset:0;
  background:rgba(10,10,12,.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
  z-index:99998;
}

.rrc-modal{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%) scale(.98);
  width:min(860px, 94vw);
  max-height:86vh;
  overflow:auto;
  background:#fff;
  border-radius:16px;
  box-shadow:0 22px 70px rgba(0,0,0,.25);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  z-index:99999;
}

.rrc-wrap.rrc-opened .rrc-overlay{ opacity:1; pointer-events:auto; }
.rrc-wrap.rrc-opened .rrc-modal{ opacity:1; pointer-events:auto; transform:translate(-50%,-50%) scale(1); }

.rrc-modal__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:18px 20px;
  border-bottom:1px solid #eee;
}
.rrc-title{ margin:0; font-size:18px; font-weight:700; }
.rrc-close{
  width:36px; height:36px;
  border-radius:999px;
  border:1px solid #ddd;
  background:#fff;
  cursor:pointer;
  font-size:20px;
  line-height:1;
}

.rrc-form{ padding:18px 20px 22px; }
.rrc-subtitle{ margin:10px 0 10px; font-weight:700; }
.rrc-field{ margin-top:14px; }
.rrc-field label{ display:block; font-weight:600; margin-bottom:8px; }
.rrc-field input[type="text"], .rrc-field input[type="email"], .rrc-field textarea{
  width:100%;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:12px 12px;
  outline:none;
}
.rrc-field textarea{ resize:vertical; min-height:120px; }

.rrc-grid2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width:640px){
  .rrc-grid2{ grid-template-columns:1fr; }
}

.rrc-ratings{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 20px;
}
@media (max-width:740px){
  .rrc-ratings{ grid-template-columns:1fr; }
}
.rrc-rating-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid #eee;
  border-radius:12px;
}
.rrc-rating-label{ font-weight:600; }

.rrc-stars{ display:flex; gap:6px; align-items:center; }
.rrc-star{
  border:1px solid #e6e6e6;
  background:#fff;
  width:28px; height:28px;
  border-radius:999px;
  cursor:pointer;
  line-height:1;
  display:flex; align-items:center; justify-content:center;
  font-size:14px;
  transition:transform .12s ease;
}
.rrc-star:hover{ transform:scale(1.06); } /* avoids "weird movement" */
.rrc-star.is-on{
  border-color:#d1a24a;
  color:#d1a24a;
}

.rrc-uploader{
  position:relative;
  border:2px dashed #ddd;
  border-radius:14px;
  padding:20px;
  text-align:center;
}
.rrc-uploader input[type="file"]{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
}
.rrc-uploader__hint{
  display:inline-block;
  padding:10px 14px;
  border-radius:10px;
  background:#f5f5f7;
  font-weight:600;
}
.rrc-preview{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));
  gap:10px;
  margin-top:12px;
}
.rrc-preview__item{
  border:1px solid #eee;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.rrc-preview__item img{
  width:100%;
  height:100px;
  object-fit:cover;
  display:block;
}
.rrc-preview__icon{
  height:100px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  background:#fafafa;
}
.rrc-preview__meta{ padding:8px 10px; }
.rrc-preview__name{ font-weight:600; font-size:12px; }
.rrc-preview__size{ font-size:12px; opacity:.7; }

.rrc-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding-top:18px;
}
.rrc-submit{
  border:0;
  border-radius:12px;
  padding:12px 18px;
  cursor:pointer;
  font-weight:700;
  background:#d1a24a;
  color:#fff;
}
.rrc-status{ font-size:13px; opacity:.8; }

/* Front-end comment display */
.rrc-inline{ margin:0 0 10px; padding:10px 12px; border:1px solid #eee; border-radius:12px; background:#fafafa; }
.rrc-avg{ margin-bottom:6px; }
.rrc-badge{ display:inline-block; margin:4px 6px 0 0; font-size:12px; }
.rrc-stars-inline{ letter-spacing:1px; }
.rrc-media{ margin-top:10px; display:flex; gap:10px; flex-wrap:wrap; }
.rrc-media img{ max-width:220px; height:auto; border-radius:12px; }
.rrc-media video{ max-width:320px; border-radius:12px; }
