/* Incoming order documents share the workspace's warm paper and rose palette. */
.po-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:18px; margin-bottom:24px; }
.po-heading p, .po-muted { color:var(--ink-2); font-size:13px; line-height:1.8; }
.po-heading p { margin-top:8px; }
.po-filters { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
.po-filters input { flex:1; min-width:200px; }
.po-filters select { width:auto; max-width:260px; }
.po-panel { background:var(--surface); border:1px solid var(--line); border-radius:6px; padding:22px; }
.po-empty { padding:55px 20px; text-align:center; color:var(--ink-2); }
.po-empty i { display:block; color:var(--brand-ink); font-size:30px; margin-bottom:16px; }
.po-empty strong { display:block; color:var(--ink); font-size:16px; margin-bottom:10px; }
.po-empty .btn { margin-top:20px; }
.po-file-name { display:block; font-size:11px; color:var(--ink-2); margin-top:5px; overflow-wrap:anywhere; }
.po-tag { display:inline-flex; align-items:center; gap:6px; padding:4px 8px; border-radius:4px; background:var(--bg-2); color:var(--ink-2); font-size:11px; white-space:nowrap; }
.po-tag.confirmed { background:var(--brand-bg); color:var(--brand-ink); }
.po-tag.linked { background:var(--good-bg, #eef5ee); color:var(--good, #3e6a48); }
.po-upload { border:1.5px dashed var(--brand-line); background:var(--brand-bg); border-radius:7px; text-align:center; padding:40px 24px; margin:20px 0; }
.po-upload.is-dragging { border-color:var(--brand); background:var(--brand-bg-2); }
.po-upload > i { display:block; font-size:28px; color:var(--brand-ink); margin-bottom:15px; }
.po-upload p { margin-top:12px; }
.po-upload input[type=file] { max-width:100%; font-size:13px; margin:18px auto 0; }
.po-progress { display:grid; gap:12px; padding:18px; background:var(--bg-2); border-radius:6px; margin-top:18px; }
.po-progress progress { height:8px; }
.po-error { border:1px solid var(--bad, #bd4658); color:var(--bad, #bd4658); background:var(--bad-bg, #fff1f2); padding:12px 15px; border-radius:5px; font-size:13px; margin:14px 0; line-height:1.7; }
.po-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:22px; }
.po-editor.modal-box { max-width:1440px; width:96vw; padding:26px; }
.po-editor-header { display:flex; justify-content:space-between; align-items:start; gap:35px; margin-bottom:20px; padding-right:20px; }
.po-editor-header h3 { font-size:20px; font-weight:700; line-height:1.6; }
.po-editor-header p { margin-top:6px; overflow-wrap:anywhere; }
.po-editor-grid { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.15fr); gap:26px; align-items:start; }
.po-original { position:sticky; top:0; min-width:0; }
.po-preview-bar { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:12px; font-size:13px; }
.po-original iframe { display:block; width:100%; height:660px; max-height:73vh; border:1px solid var(--line); border-radius:5px; background:var(--bg-2); }
.po-original .po-muted { margin-top:9px; }
.po-extracted { margin-top:18px; border:1px solid var(--line); border-radius:5px; }
.po-extracted summary { cursor:pointer; padding:14px; font-size:13px; font-weight:600; }
.po-extracted pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.8; max-height:360px; overflow:auto; padding:0 15px 15px; }
.po-review { min-width:0; }
.po-review fieldset { min-inline-size:0; width:100%; }
.po-review .table-scroll { width:100%; max-width:100%; min-width:0; }
.po-fields { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:14px; }
.po-fields > div { min-width:0; }
.po-fields .po-full { grid-column:1/-1; }
.po-review h4 { font-size:14px; font-weight:700; margin:24px 0 12px; }
.po-review .form-label { font-size:12px; }
.po-review .po-table { min-width:610px; }
.po-table .form-input { min-height:37px; padding:7px; font-size:12px; }
.po-table .po-desc { min-width:155px; }
.po-table .po-qty, .po-table .po-price { width:90px; }
.po-table .po-unit { width:58px; }
.po-table td, .po-table th { padding:9px 5px !important; }
.po-table .po-amount { min-width:87px; text-align:right; }
.po-amount small { display:block; font-size:10px; color:var(--ink-2); margin-top:4px; }
.po-totals { background:var(--bg-2); border-radius:5px; padding:16px; margin-top:18px; font-size:13px; }
.po-totals > div { display:flex; justify-content:space-between; gap:10px; margin:7px 0; }
.po-totals .po-grand-total { border-top:1px solid var(--line); padding-top:12px; margin-top:12px; align-items:center; font-weight:700; }
.po-grand-total strong { font-size:23px; color:var(--brand-ink); }
.po-warning { background:var(--warn-bg, #fff4de); color:var(--warn, #825e29); border-radius:5px; padding:13px 15px; margin-bottom:17px; font-size:12px; line-height:1.8; }
.po-warning ul { list-style:disc; margin-left:17px; }
.po-match { margin-top:7px; font-size:12px; color:var(--brand-ink); }
.po-check { display:flex; align-items:start; gap:10px; font-size:13px; line-height:1.7; margin-top:20px; }
.po-check input { margin-top:4px; width:18px; height:18px; flex:none; accent-color:var(--brand); }
.po-integrations { border-top:1px solid var(--line); margin-top:24px; padding-top:20px; }
.po-integrations h4 { margin:0 0 10px; }
.po-integrations .po-actions { justify-content:flex-start; margin-top:12px; }
.po-locked { border:1px solid var(--brand-line); background:var(--brand-bg); color:var(--brand-ink); border-radius:5px; padding:13px 15px; font-size:13px; line-height:1.8; margin-bottom:16px; }
.po-job-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:18px; }
.po-readonly-subtotal { color:var(--brand-ink); font-size:24px; font-weight:700; margin:10px 0 15px; }
.po-recognition-summary { display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; background:var(--warn-bg, #fff4de); padding:13px 15px; border-radius:6px; font-size:12px; margin-bottom:16px; }
.po-recognition-summary.is-matched { background:var(--good-bg, #eef5ee); color:var(--good, #3e6a48); }
.po-editor-header .btn { margin-top:10px; }
.po-source-section { border-top:1px solid var(--line); margin-top:24px; }
.po-delivery-card { background:var(--bg-2); border:1px solid var(--line-soft); border-radius:6px; padding:15px; margin:14px 0; min-width:0; }
.po-delivery-head { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:13px; margin-bottom:14px; }
.po-delivery-card .form-label { line-height:1.8; }
.po-reference { border:1px solid var(--line); border-radius:6px; padding:15px; margin-top:20px; }
.po-reference h4 { margin:0 0 8px; }
.po-reference li { padding:12px 0; border-top:1px solid var(--line-soft); font-size:12px; overflow-wrap:anywhere; }
.po-reference ul { margin-top:8px; }
.po-reference li span, .po-reference li small { display:block; color:var(--ink-2); margin-top:5px; }
.po-reference-totals { margin-top:18px; border:1px solid var(--line); border-radius:6px; padding:14px; }
.po-reference-totals summary { cursor:pointer; font-weight:600; font-size:13px; }
.po-reference-totals p { margin:12px 0; }
@media (max-width:900px) {
  .po-editor-grid { grid-template-columns:1fr; }
  .po-original { position:static; }
  .po-original iframe { height:450px; }
  .po-editor.modal-box { padding:20px; }
}
@media (max-width:520px) {
  .po-fields, .po-job-grid { grid-template-columns:minmax(0, 1fr); }
  .po-filters select { max-width:none; width:100%; }
  .po-editor-header { display:block; }
  .po-editor-header .po-tag { margin-top:10px; }
  .po-actions .btn { flex:1; }
  .po-upload { padding:28px 16px; }
}
.po-row-evidence{display:block;margin-top:6px;font-size:10px;font-weight:400;color:#8b7e6b;text-align:left}
.po-row-evidence .form-input{min-height:29px;padding:4px 6px;font-size:11px;width:100%;min-width:75px}
