.drop-zone {
  border: 2px dashed rgba(12, 124, 109, .45);
  border-radius: 8px;
  min-height: 132px;
  display: grid;
  place-items: center;
  cursor: pointer;
  text-align: center;
  padding: 18px;
  color: #0f5c57;
  font-weight: 650;
  background: #f0faf8;
}
.drop-zone.is-dragover { border-color: #0c7c6d; background: #dff8f4; }
.drop-zone.is-disabled { cursor: wait; opacity: .58; }
.drop-zone input { display: none; }
.upload-pages-panel { display: grid; gap: 14px; }
.upload-pages-list { display:flex; flex-direction:row; gap:16px; overflow-x:auto; padding-bottom:10px; align-items:flex-start; }
.upload-page-card { display:flex; flex-direction:column; gap:8px; flex:0 0 auto; width:220px; padding:10px; border:2px solid #d9e2e8; border-radius:8px; background:#fff; cursor:grab; user-select:none; transition:box-shadow .15s,border-color .15s,opacity .15s; }
.upload-page-card:hover { border-color:#0c7c6d; box-shadow:0 4px 16px rgba(15,92,87,.12); }
.upload-page-card.is-dragging { opacity:.35; cursor:grabbing; }
.upload-page-thumb { aspect-ratio:.707; border-radius:5px; overflow:hidden; background:#edf5f3; border:1px solid rgba(15,92,87,.1); width:100%; }
.upload-page-thumb img { width:100%; height:100%; object-fit:contain; display:block; }
.upload-page-meta { display:grid; gap:1px; min-width:0; }
.upload-page-meta strong,.upload-page-meta span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.upload-page-meta span { color:#61748b; }
.upload-page-actions { display:flex; gap:4px; flex-wrap:nowrap; justify-content:center; }
.upload-page-actions button { min-height:30px; flex:1; padding:3px 10px; border:1px solid #d9e2e8; border-radius:5px; background:#fff; color:#11243a; cursor:pointer; }
.upload-page-actions button:disabled { cursor:not-allowed; opacity:.45; }
.upload-page-actions .danger-btn { background:#fff1f2; color:#b42318; border-color:rgba(180,35,24,.18); }
.upload-page-ghost { position:fixed; pointer-events:none; z-index:9999; opacity:.85; box-shadow:0 8px 28px rgba(0,0,0,.18); transform:rotate(1.5deg) scale(1.03); background:#fff; }
.upload-section-head { margin-bottom:0; }
.upload-section-head h3 { margin:0; font-size:20px; }
.upload-section-head .eyebrow { margin-bottom:4px; }
@media (max-width:760px) {
  .upload-pages-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; overflow:visible; }
  .upload-page-card { width:100%; }
}
@media (max-width:340px) { .upload-pages-list { grid-template-columns:1fr; } }

.upload-order-panel { margin-top: 1.5rem; }
.upload-order-panel[hidden], .upload-order-history[hidden] { display: none; }
.upload-order-document { padding: 1rem; margin: .8rem 0; border: 1px solid var(--line, #d8dfe6); border-radius: 10px; }
.upload-order-document h4 { margin: 0 0 .5rem; }
.upload-order-document > label { display: block; margin: .8rem 0; }
.upload-order-document input[type="checkbox"] { width: auto; margin-right: .5rem; }
.upload-order-summary { padding: .8rem; border-bottom: 1px solid var(--line, #d8dfe6); }
.upload-order-summary button { margin-left: .7rem; }
.upload-order-panel #order-card-element { margin: 1rem 0; }

.upload-pages-panel.is-hidden, .job-form[hidden] { display: none; }

.document-upload-section { display: grid; gap: 18px; padding: 22px; border: 1px solid var(--line, #d8dfe6); border-radius: 14px; min-width: 0; }
.document-upload-section h3 { margin: 0; }
.document-upload-section--admin { padding: 0; border: 0; }
.document-upload-section--error { border-color: #b42318; }
.document-section-status { margin: 0; overflow-wrap: anywhere; }
.document-section-status:empty { display: none; }
#additional-documents { display: grid; gap: 22px; }
#additional-documents:empty, #additional-documents[hidden], #add-document-btn[hidden] { display: none; }
.document-form-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.upload-file-type { font-weight: 700; color: #61748b; }
.order-payment-document + .order-payment-document { border-top: 1px solid #e4e9ee; margin-top: 20px; padding-top: 16px; }
.order-payment-document h3 { margin: 0 0 10px; }
.order-payment-document td { overflow-wrap: anywhere; }
@media (max-width: 600px) { .document-upload-section { padding: 14px; } .document-form-actions > button { width: 100%; } }
.upload-page-thumb--file { aspect-ratio: auto; min-height: 96px; display: grid; place-items: center; }
#payment-modal .express-checkout-wrap.is-hidden { display: none; }
#payment-modal .modal-box { flex-shrink: 0; min-width: 0; }
#payment-modal .modal-actions { flex-wrap: wrap; }
@media (max-width: 600px) { #payment-modal .modal-box { padding: 22px 18px; } #payment-modal .modal-actions > button { width: 100%; } }
