.upload-progress {
  margin-top: 14px;
  padding: 14px 16px;
  border: 1px solid #eadfd6;
  border-radius: 14px;
  background: #fffaf6;
}

.upload-progress[hidden] {
  display: none !important;
}

.upload-progress__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.upload-progress__title {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #8b7355;
}

.upload-progress__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.upload-progress__item {
  display: grid;
  gap: 6px;
}

.upload-progress__meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.upload-progress__name {
  font-size: 0.92rem;
  font-weight: 600;
  word-break: break-word;
}

.upload-progress__size {
  font-size: 0.82rem;
  color: #8b7355;
  white-space: nowrap;
}

.upload-progress__bar {
  height: 8px;
  border-radius: 999px;
  background: #efe5dc;
  overflow: hidden;
}

.upload-progress__bar-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c9a89a 0%, #8b7355 100%);
  transition: width 0.2s ease;
}

.upload-progress__item--done .upload-progress__bar-fill {
  background: #5f8f6b;
}

.upload-progress__item--failed .upload-progress__bar-fill {
  background: #c96a6a;
}

.upload-progress__status {
  margin: 0;
  font-size: 0.82rem;
  color: #8b7355;
}

.upload-progress__item--failed .upload-progress__status {
  color: #9a3f3f;
}

.upload-progress__item--done .upload-progress__status {
  color: #3f6d4b;
}

.upload-progress__retry {
  margin-top: 10px;
}

/* Admin invoice queue uses the same visual system. */
.admin-mockup-upload-queue {
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid var(--border, #eadfd6);
  border-radius: 14px;
  background: #fffaf6;
}

.admin-mockup-upload-queue__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.admin-mockup-upload-queue__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.admin-mockup-upload-queue__item {
  display: grid;
  gap: 6px;
}

.admin-mockup-upload-queue__meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.admin-mockup-upload-queue__name {
  font-size: 0.92rem;
  font-weight: 600;
  word-break: break-word;
}

.admin-mockup-upload-queue__size {
  font-size: 0.82rem;
  color: var(--muted, #8b7355);
  white-space: nowrap;
}

.admin-mockup-upload-queue__bar {
  height: 8px;
  border-radius: 999px;
  background: #efe5dc;
  overflow: hidden;
}

.admin-mockup-upload-queue__bar-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c9a89a 0%, #8b7355 100%);
  transition: width 0.2s ease;
}

.admin-mockup-upload-queue__item--done .admin-mockup-upload-queue__bar-fill {
  background: #5f8f6b;
}

.admin-mockup-upload-queue__item--failed .admin-mockup-upload-queue__bar-fill {
  background: #c96a6a;
}

.admin-mockup-upload-queue__status {
  margin: 0;
  font-size: 0.82rem;
  color: var(--muted, #8b7355);
}

.admin-mockup-upload-queue__item--failed .admin-mockup-upload-queue__status {
  color: #9a3f3f;
}

.admin-mockup-upload-queue__item--done .admin-mockup-upload-queue__status {
  color: #3f6d4b;
}
