/* SRP: Upload progress bar, status text, and submit button */

.upload-progress-wrap {
  width: 100%;
  height: 5px;
  background: var(--card-border);
  border-radius: 4px;
  overflow: hidden;
  display: none;
}
.upload-progress-wrap.visible { display: block; }

.upload-progress-bar {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, var(--accent), #38bdf8);
  border-radius: 4px;
  transition: width 0.2s;
}

.upload-status {
  font-size: 13px;
  color: var(--muted);
  text-align: center;
  min-height: 20px;
}
.upload-status.error   { color: #f87171; }
.upload-status.success { color: #4ade80; }

.upload-submit {
  margin-top: 8px;
  padding: 14px 24px;
  background: linear-gradient(135deg, var(--accent), #38bdf8);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  width: 100%;
  transition: opacity 0.15s, transform 0.12s;
}

.upload-submit:hover:not(:disabled) {
  opacity: 0.9;
  transform: translateY(-1px);
}

.upload-submit:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
