/* Card */
.rpt-card{border:1px solid #e5e7eb;background:#fafafa;border-radius:12px;padding:16px}
.rpt-header{font-weight:700;margin-bottom:8px;font-size:16px}

/* Buttons - darker blue */
.rpt-primary {
  background: #1e40af;   /* Blue 800 */
  color: #ffffff;
  font-weight: 600;
  border: none;
  border-radius: 10px;
  padding: 10px 18px;
  cursor: pointer;
  transition: transform 0.08s ease, box-shadow 0.15s ease, background 0.2s ease;
  box-shadow: 0 2px 6px rgba(30,64,175,0.25);
}
.rpt-primary:hover { background:#1e3a8a; box-shadow:0 4px 12px rgba(30,64,175,0.35); }
.rpt-primary:active { transform: scale(0.97); }

/* Secondary Button */
.rpt-btn {
  background: #f3f4f6;
  color: #111827;
  font-weight: 500;
  border-radius: 10px;
  padding: 10px 16px;
  border: 1px solid #e5e7eb;
  cursor: pointer;
  transition: background 0.2s ease;
}
.rpt-btn:hover { background: #e5e7eb; }

/* Danger Button */
.rpt-danger { background:#ef4444;color:#fff;border:0; }
.rpt-danger:hover { background:#dc2626; }

/* Upload + list */
.rpt-upload{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.rpt-hint{font-size:12px;color:#6b7280}
.rpt-list{list-style:none;padding:0;margin:10px 0;display:flex;flex-direction:column;gap:8px}
.rpt-item{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e5e7eb;padding:8px;border-radius:10px;gap:10px}
.rpt-item.dragging{opacity:0.6;border-style:dashed}
.rpt-left{display:flex;align-items:center;gap:10px}
.rpt-thumb{width:54px;height:72px;background:#e5e7eb;border-radius:6px;object-fit:cover;border:1px solid #e5e7eb}
.rpt-name{font-size:14px;color:#111827}
.rpt-handle{cursor:grab;user-select:none;font-size:18px;line-height:1;color:#6b7280;padding:0 6px}
.rpt-handle:active{cursor:grabbing}

/* Progress */
.rpt-progress{height:8px;background:#e5e7eb;border-radius:8px;margin-top:10px;overflow:hidden}
.rpt-bar{height:8px;background:#1e40af}

/* Results */
.rpt-results .rpt-out{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e5e7eb;padding:10px;border-radius:10px;margin-top:10px}
.rpt-download:focus{outline:2px solid #1e40af;outline-offset:2px}

/* Download feedback */
@keyframes pulse {
  0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(16,185,129,.6); }
  70% { transform: scale(1.02); box-shadow: 0 0 0 12px rgba(16,185,129,0); }
  100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(16,185,129,0); }
}
.rpt-out.downloading { animation: pulse 0.8s ease; border-color:#10b981; }
.rpt-badge { display:none; margin-left:8px; font-size:12px; color:#065f46; background:#d1fae5; border:1px solid #10b981; padding:2px 6px; border-radius:999px; }
.rpt-out.downloaded .rpt-badge { display:inline-block; }
