.pap-portal { max-width: 640px; margin-inline: auto; }
.pap-step h2 { margin-bottom: 0.5em; }
.pap-spec-note { font-size: 0.9rem; color: var(--baat-grey-text, #5B5B60); margin-bottom: 1em; }

.pap-dropzone {
	border: 2px dashed var(--baat-red-primary, #C1121F);
	border-radius: 12px;
	padding: 2.5em 1.5em;
	text-align: center;
	cursor: pointer;
	transition: background 150ms ease, border-color 150ms ease;
}
.pap-dropzone:hover,
.pap-dropzone:focus-visible,
.pap-dropzone.is-dragover {
	background: rgba(193, 18, 31, 0.04);
	border-color: var(--baat-red-action, #DC2626);
}
.pap-dropzone__accepted { font-size: 0.8rem; color: var(--baat-grey-text, #5B5B60); margin: 0.5em 0 1em; }

.pap-file-list { list-style: none; padding: 0; margin: 1.5em 0; display: flex; flex-direction: column; gap: 0.75em; }
.pap-file-row {
	display: grid;
	grid-template-columns: 1fr 2fr auto auto;
	align-items: center;
	gap: 0.75em;
	font-size: 0.85rem;
}
.pap-file-row__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pap-file-row__bar { height: 8px; background: var(--baat-grey-line, #E3DFDB); border-radius: 999px; overflow: hidden; }
.pap-file-row__fill { height: 100%; background: var(--baat-red-action, #DC2626); transition: width 200ms ease; }
.pap-file-row.is-done .pap-file-row__fill { background: #1B5E20; }
.pap-file-row.is-error .pap-file-row__fill { background: #991B1B; }
.pap-file-row__percent { min-width: 3em; text-align: right; }
.pap-file-row__cancel { background: none; border: none; font-size: 1.2rem; cursor: pointer; color: var(--baat-grey-text, #5B5B60); line-height: 1; }
.pap-file-row__cancel:hover { color: var(--baat-red-action, #DC2626); }
