.pmc-upload-wrap {
	margin: 0 0 1.5em;
	padding: 1.25em;
	border: 2px dashed #c9d2dd;
	border-radius: 8px;
	background: #f8fafc;
}
.pmc-upload-wrap.pmc-dragover { border-color: #2563eb; background: #eff6ff; }
.pmc-upload-label { display: block; font-weight: 700; margin-bottom: .35em; }
.pmc-required { color: #dc2626; }
.pmc-upload-help { font-size: .85em; color: #52616f; margin: 0 0 .9em; }
.pmc-file-input { display: block; width: 100%; }
.pmc-upload-status { margin-top: .75em; font-size: .9em; min-height: 1.2em; }
.pmc-upload-status.pmc-error { color: #b91c1c; font-weight: 600; }
.pmc-upload-status.pmc-warn { color: #b45309; }
.pmc-upload-status.pmc-ok { color: #15803d; font-weight: 600; }
.pmc-upload-preview { margin-top: 1em; display: flex; align-items: center; gap: 1em; flex-wrap: wrap; }
.pmc-preview-img { max-width: 130px; height: auto; border-radius: 6px; border: 1px solid #d5dce4; }
.pmc-preview-meta { font-size: .85em; color: #52616f; }
.pmc-progress { height: 6px; background: #e2e8f0; border-radius: 3px; overflow: hidden; margin-top: .6em; }
.pmc-progress span { display: block; height: 100%; width: 0; background: #2563eb; transition: width .2s; }
