.pc-upload-review { position:fixed; inset:0; z-index:12000; display:flex; align-items:center; justify-content:center; background:rgba(15,23,42,.55); padding:20px; }
.pc-upload-panel { background:var(--bg-primary,#fff); color:var(--text-primary,#172033); width:640px; max-width:100%; max-height:90dvh; display:flex; flex-direction:column; overflow:hidden; border-radius:18px; box-shadow:0 20px 60px #0003; }
.pc-upload-header { padding:20px; border-bottom:1px solid var(--border-normal,#e2e8f0); flex-shrink:0; }
.pc-upload-header h2 { font-size:20px; margin:0 0 8px; }
.pc-upload-header p { margin:0; overflow-wrap:anywhere; }
.pc-upload-body { padding:20px; overflow:auto; min-height:0; overscroll-behavior:contain; }
.pc-upload-body>p { margin:0 0 16px; font-size:14px; line-height:1.5; }
.pc-upload-items { display:grid; gap:14px; }
.pc-upload-item { display:flex; flex-direction:column; gap:8px; padding:14px; border:1px solid var(--border-normal,#e2e8f0); border-radius:12px; overflow-wrap:anywhere; }
.pc-upload-item strong { font-size:15px; }
.pc-upload-item span { font-size:13px; }
.pc-upload-preview { width:100%; height:220px; object-fit:contain; background:#f1f5f9; border-radius:8px; }
.pc-upload-file-icon { padding:28px; background:#f1f5f9; color:#475569; text-align:center; font-weight:700; }
.pc-upload-item-status { margin:0; font-size:14px; line-height:1.5; }
.pc-upload-item[data-state=sent] { border-color:#10b981; }
.pc-upload-item[data-state=uncertain],.pc-upload-item[data-state=invalid],.pc-upload-item[data-state=failed] { border-color:#d97706; }
.pc-upload-received { font-size:14px; overflow-wrap:anywhere; }
.pc-upload-footer { flex-shrink:0; display:flex; flex-wrap:wrap; gap:10px; padding:16px; border-top:1px solid var(--border-normal,#e2e8f0); }
.pc-upload-footer .btn { min-height:46px; white-space:normal; }
.pc-upload-footer .btn-primary { flex:1; }
.pc-upload-review [hidden] { display:none!important; }
@media(max-width:767px) {
 .pc-upload-review { padding:0; }
 .pc-upload-panel { width:100%; height:var(--mobile-viewport-height,100dvh); max-height:100dvh; border-radius:0; }
 .pc-upload-header,.pc-upload-body { padding:16px; }
 .pc-upload-footer { padding:12px 16px calc(12px + env(safe-area-inset-bottom)); }
 .pc-upload-preview { height:240px; }
}
