#jr-media-float{
  position: fixed;
  left: 20px !important;
  top: 120px !important;
  width: 240px !important;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(0,0,0,.08);
  padding: 12px 14px;
  z-index: 10009;
  font-family: inherit;
}
#jr-media-float .jrmfb-title{
  font-size: 12px; color: #475569; text-transform: uppercase;
  letter-spacing: .04em; margin-bottom: 8px;
}
#jr-media-float .jrmfb-row{ display:flex; align-items:center; justify-content:space-between;
  padding: 6px 0; border-top: 1px dashed #e5e7eb; }
#jr-media-float .jrmfb-row:first-of-type{ border-top: none; }
#jr-media-float .jrmfb-row strong{ font-weight:700; color:#0f172a; }
.jrmfb-window{ border-top:1px solid #eef2f7; margin-top:10px; padding-top:10px; max-height: 240px; overflow:auto; }
.jrmfb-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap:6px; }
.jrmfb-thumb{ position: relative; width: 100%; aspect-ratio: 1/1; border-radius:8px; overflow:hidden; background:#f1f5f9; cursor:pointer; }
.jrmfb-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.jrmfb-thumb .jrmfb-badge{ position:absolute; right:6px; bottom:6px; padding:2px 6px; font-size:10px; border-radius:999px; background:rgba(17,24,39,.65); color:#fff; }
.jrmfb-actions{ margin-top:10px; padding-top:10px; border-top:1px solid #eef2f7; display:flex; justify-content:space-between; align-items:center; gap:10px; }
.jrmfb-actions a, .jrmfb-upload-btn{ text-decoration:none; font-weight:600; color:#2563eb; }
.jrmfb-upload-btn{ display:inline-flex; align-items:center; gap:6px; border:1px solid #dbe3f0; padding:6px 10px; border-radius:8px; background:#f8fafc; cursor:pointer; }
.jrmfb-upload-btn:hover{ background:#f1f5f9; }
.jrmfb-actions a:hover{ text-decoration:underline; }
.jrmfb-footer-link{
  margin-top: 6px;
  text-align: right;
}
.jrmfb-footer-link a{
  font-size: 11px;
  color: #2563eb;
  text-decoration: none;
}
.jrmfb-footer-link a:hover{
  text-decoration: underline;
}
#jrmfb-file-input{ display:none; }
.jrmfb-status{ font-size:12px; color:#475569; margin-top:6px; }

/* Progress bar (overall + per-file) */
.jrmfb-progress{ margin-top:6px; background:#eef2f7; border-radius:999px; height:8px; overflow:hidden; }
.jrmfb-progress > span{ display:block; height:100%; width:0%; background:#2563eb; transition: width .15s linear; }
.jrmfb-filelist{ margin-top:6px; max-height:90px; overflow:auto; }
.jrmfb-filelist .item{ display:flex; justify-content:space-between; align-items:center; font-size:12px; padding:2px 0; }
.jrmfb-filelist .bar{ width:40%; height:6px; background:#eef2f7; border-radius:999px; overflow:hidden; }
.jrmfb-filelist .bar > span{ display:block; height:100%; width:0%; background:#64748b; transition: width .15s linear; }

@media (max-width: 782px){
  #jr-media-float{ right:12px; bottom:20px; top:auto; width: 240px; }
}

/* Overlay modal */
.jrmfb-overlay{ position: fixed; inset: 0; background: rgba(15,23,42,.5); z-index: 10050; display:none; align-items:center; justify-content:center; }
.jrmfb-modal{ width: min(100vw - 40px, 980px); max-height: min(100vh - 40px, 760px); background:#fff; border-radius:14px; box-shadow: 0 20px 60px rgba(0,0,0,.25); display:flex; flex-direction:column; overflow:hidden; }
.jrmfb-modal-header{ display:flex; align-items:center; justify-content:space-between; padding:12px 14px; border-bottom:1px solid #eef2f7; }
.jrmfb-modal-title{ font-weight:700; color:#0f172a; }
.jrmfb-modal-close{ border:0; background:transparent; font-size:22px; line-height:1; cursor:pointer; padding:6px 8px; }
.jrmfb-modal-body{ padding:14px; overflow:auto; }
.jrmfb-modal-grid{ display:grid; grid-template-columns: repeat(4, 1fr); gap:10px; }
.jrmfb-modal-thumb{ position:relative; width:100%; aspect-ratio:1/1; border-radius:10px; overflow:hidden; background:#f1f5f9; }
.jrmfb-modal-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.jrmfb-modal-thumb .jrmfb-badge{ position:absolute; right:6px; bottom:6px; padding:2px 6px; font-size:10px; border-radius:999px; background:rgba(17,24,39,.65); color:#fff; }
@media (max-width: 900px){
  .jrmfb-modal-grid{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px){
  .jrmfb-modal-grid{ grid-template-columns: repeat(2, 1fr); }
}
