.jmrp-uploader {
  margin: 1rem 0;
  padding: 1rem;
  border: 1px solid #d9e2e7;
  border-radius: 8px;
  background: #f8fbfc;
}
.jmrp-title { display:block; font-weight:700; margin-bottom:.25rem; }
.jmrp-help { color:#66757f; font-size:.875rem; margin-bottom:.75rem; }
.jmrp-choose { cursor:pointer; margin-bottom:.75rem; }
.jmrp-preview { display:flex; flex-wrap:wrap; gap:.6rem; }
.jmrp-preview-item { position:relative; width:82px; height:82px; }
.jmrp-preview-item img { width:100%; height:100%; object-fit:cover; border-radius:7px; border:1px solid #d5dde2; }
.jmrp-remove { position:absolute; top:-7px; right:-7px; width:24px; height:24px; border:0; border-radius:50%; background:#263238; color:#fff; line-height:20px; font-size:20px; cursor:pointer; }
.jmrp-error { margin-top:.65rem; color:#b00020; font-weight:600; }
.jmrp-gallery { display:flex; flex-wrap:wrap; gap:.55rem; margin: .8rem 0; }
.jmrp-gallery-item { width:92px; height:92px; padding:0; border:1px solid #d8e0e4; border-radius:7px; overflow:hidden; background:#fff; cursor:zoom-in; }
.jmrp-gallery-item img { width:100%; height:100%; object-fit:cover; display:block; }
.jmrp-lightbox { position:fixed; z-index:100000; inset:0; background:rgba(0,0,0,.86); display:flex; align-items:center; justify-content:center; padding:2rem; }
.jmrp-lightbox img { max-width:94vw; max-height:90vh; object-fit:contain; box-shadow:0 10px 40px rgba(0,0,0,.5); }
.jmrp-lightbox-close { position:fixed; top:14px; right:18px; border:0; background:transparent; color:#fff; font-size:44px; line-height:1; cursor:pointer; }
@media (max-width: 575px) {
  .jmrp-gallery-item { width:76px; height:76px; }
  .jmrp-lightbox { padding:1rem; }
}
