:root { --real-btn: #2563eb; }
.real-upload-form { max-width: 760px; padding: 18px; border: 1px solid #ddd; border-radius: 10px; }
.real-upload-form .real-row { margin-bottom: 14px; }
.real-upload-form label { display:block; font-weight:600; margin-bottom:6px; }
.real-upload-form input[type="text"],
.real-upload-form input[type="email"],
.real-upload-form textarea { width:100%; padding:12px; border:1px solid #ccc; border-radius:8px; font-size: 16px; }
.real-upload-form textarea { min-height: 120px; }
.real-purpose { display:flex; gap:14px; flex-wrap:wrap; }
.real-purpose label { font-weight: 500; }
.real-notice { padding: 12px 14px; border-radius: 8px; margin-bottom: 14px; display:none; font-size: 15px; }
.real-notice.success { background:#e7f7ec; border:1px solid #b7e2c1; }
.real-notice.error { background:#fde8e8; border:1px solid #f5b5b5; }
.real-dropzone { border: 2px dashed #cbd5e1; border-radius: 12px; padding: 18px; background: #f8fafc; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.real-dropzone.is-dragover { background: #dfe7ff; border-color: var(--real-btn); box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12); }
.real-dropzone .real-dropzone-text { font-size: 15px; color: #334155; }
.real-dropzone .real-dropzone-hint { font-size: 13px; color: #64748b; margin-top: 4px; }
.real-btn { background: var(--real-btn); color:#fff; border:none; border-radius:10px; padding:12px 16px; font-size:16px; cursor:pointer; text-decoration:none; display:inline-block; }
.real-btn:hover { filter: brightness(0.95); }
.real-btn:disabled { opacity:0.7; cursor:not-allowed; }
.real-file-list { margin-top: 12px; display: flex; flex-direction: column; gap: 10px; }
.real-file-empty { color: #64748b; font-size: 14px; }
.real-file-item { display:flex; align-items:center; justify-content: space-between; gap: 10px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:10px; background:#fff; }
.real-file-name { font-weight:600; overflow-wrap:anywhere; }
.real-file-size { color:#64748b; font-size:13px; white-space:nowrap; }
.real-file-remove { background:transparent; border:1px solid #cbd5e1; border-radius:10px; padding:8px 10px; cursor:pointer; }
.real-file-remove:hover { background:#f1f5f9; }
.real-progress-wrap { display:none; margin: 14px 0; }
.real-progress-track { width:100%; height: 14px; background:#eee; border-radius: 999px; overflow:hidden; border:1px solid #ddd; }
.real-progress-bar { width:0%; height:100%; background: var(--real-btn); }
.real-progress-meta { margin-top:8px; font-size:13px; color:#334155; }
.real-processing-wrap { display:none; align-items:center; gap:10px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:10px; background:#f8fafc; margin-top:10px; }
.real-spinner { width:18px; height:18px; border:3px solid #cbd5e1; border-top-color: var(--real-btn); border-radius:999px; animation: realspin 0.8s linear infinite; }
@keyframes realspin { from { transform: rotate(0deg);} to { transform: rotate(360deg);} }


.real-dropzone.is-dragover {
  background: #dfe7ff;
  border-color: var(--real-btn);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}
.real-file-summary {
  margin-top: 10px;
  font-size: 14px;
  color: #334155;
  font-weight: 600;
}
.real-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  filter: grayscale(0.1);
}
