:root { font-family: Arial, sans-serif; color: #263238; background: #f4f6f8; }
* { box-sizing: border-box; }
body { margin: 0; background: #f4f6f8; }
.crm-layout { min-height: 100vh; }
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 20; display: flex; flex-direction: column; width: 236px; color: #d9e5ef; background: #142d46; box-shadow: 2px 0 10px rgba(15, 35, 55, .16); }
.sidebar-brand { display: flex; align-items: center; gap: 11px; min-height: 70px; padding: 0 18px; color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.sidebar-brand-mark { display: grid; place-items: center; flex: 0 0 34px; height: 34px; border-radius: 8px; color: #142d46; background: #fff; font-size: 13px; font-weight: 800; }
.sidebar-brand-text { font-size: 20px; font-weight: 700; white-space: nowrap; }
.sidebar-nav { flex: 1; overflow-y: auto; padding: 14px 10px; }
.sidebar-group + .sidebar-group { margin-top: 20px; padding-top: 15px; border-top: 1px solid rgba(255, 255, 255, .1); }
.sidebar-group-title { padding: 0 10px 8px; color: #8fa8bd; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.sidebar-link { display: flex; align-items: center; gap: 11px; min-height: 42px; margin: 2px 0; padding: 9px 11px; border-radius: 7px; color: #d9e5ef; text-decoration: none; font-size: 14px; line-height: 1.2; }
.sidebar-icon { display: block; flex: 0 0 22px; width: 22px; min-width: 22px; max-width: 22px; height: 22px; min-height: 22px; max-height: 22px; fill: currentColor; }
.sidebar-link:hover { color: #fff; background: rgba(255, 255, 255, .08); }
.sidebar-link.active { color: #fff; background: #1769aa; box-shadow: inset 3px 0 0 #75c5ff; }
.sidebar-footer { padding: 10px; border-top: 1px solid rgba(255, 255, 255, .1); }
.workspace { min-width: 0; min-height: 100vh; margin-left: 236px; }
.workspace-content { width: 100%; padding: 28px 30px 40px; }
h1 { margin-top: 0; }
.page-heading, .actions, .button-group { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.button-group { justify-content: flex-start; flex-wrap: wrap; }
.button-group form { margin: 0; }
.button { display: inline-block; padding: 10px 16px; border: 0; border-radius: 5px; color: #fff; background: #1769aa; text-decoration: none; cursor: pointer; font-size: 14px; }
.button:disabled { background: #90a4ae; cursor: not-allowed; }
.button.small { padding: 7px 10px; white-space: nowrap; }
.secondary { background: #607d8b; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-bottom: 20px; }
.customer-picker{position:relative}.customer-picker-input{position:relative}.customer-picker-input input{width:100%;padding-right:38px}.customer-picker-clear{position:absolute;top:50%;right:8px;width:26px;height:26px;padding:0;transform:translateY(-50%);border:0;border-radius:50%;background:transparent;color:#64778a;font-size:20px;cursor:pointer}.customer-picker-status{min-height:19px;margin-top:5px;color:#65798c;font-size:12px}.customer-picker-results{position:absolute;z-index:40;top:calc(100% + 4px);right:0;left:0;max-height:330px;overflow-y:auto;border:1px solid #bdcfdf;border-radius:9px;background:#fff;box-shadow:0 12px 28px rgba(28,53,78,.16)}.customer-picker-option{display:grid;width:100%;gap:3px;padding:10px 12px;border:0;border-bottom:1px solid #e4ebf1;background:#fff;color:#233b50;text-align:left;cursor:pointer}.customer-picker-option:last-child{border-bottom:0}.customer-picker-option:hover,.customer-picker-option:focus{outline:0;background:#edf6fd}.customer-picker-option strong{font-size:14px}.customer-picker-option span{color:#64798c;font-size:12px}
.field { display: flex; flex-direction: column; gap: 6px; }
.field.wide { grid-column: 1 / -1; }
input, textarea, select { width: 100%; padding: 9px; border: 1px solid #b0bec5; border-radius: 4px; background: #fff; }
textarea { resize: vertical; }
.table-wrap { overflow-x: auto; margin: 16px 0; border: 1px solid #dce2e6; border-radius: 6px; background: #fff; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 10px; border-bottom: 1px solid #e5e9ec; text-align: left; vertical-align: top; }
th { background: #edf2f5; white-space: nowrap; }
td input { min-width: 90px; }
.delete-cell { text-align: center; }
.delete-cell input, .checkbox input { width: auto; min-width: auto; }
.empty { padding: 30px; color: #607d8b; text-align: center; }
.error, .errorlist { margin: 4px 0; color: #b71c1c; }
.details { display: grid; grid-template-columns: 150px 1fr; gap: 8px 16px; padding: 20px; border-radius: 6px; background: #fff; }
.details dt { font-weight: 700; }
.details dd { margin: 0; }
.source-text, .warning-text { padding: 16px; border-radius: 6px; background: #fff; white-space: pre-wrap; }
.filters { display: grid; grid-template-columns: 2fr 1fr 1fr auto auto; gap: 12px; align-items: center; }
.filters.compact { grid-template-columns: 2fr 1fr auto; margin: 18px 0; }
.checkbox { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.selection-row { background: #eef8ef; }
.offer-results { padding: 18px; background: #f8fafb; }
.insufficient-stock { background: #fff3e0; }
.stock-warning, .price-warning { margin-top: 5px; color: #b71c1c; font-weight: 700; white-space: nowrap; }
.markup-input { min-width: 85px; }
.sale-price { font-weight: 700; white-space: nowrap; }
.compact-selection-form input { display: none; }
.link-button { border: 0; color: #1769aa; background: none; text-decoration: underline; cursor: pointer; }
.link-button.danger { color: #b71c1c; }
.card { padding: 20px; border: 1px solid #dce2e6; border-radius: 6px; background: #fff; }
.form-stack { display: grid; gap: 16px; max-width: 800px; }
.message { margin-bottom: 16px; padding: 12px 16px; border-radius: 5px; background: #e3f2fd; }
.message.error { color: #b71c1c; background: #ffebee; }
.quote-actions { justify-content: flex-end; margin: 18px 0; }
.related-list { padding: 16px 16px 16px 36px; border-radius: 6px; background: #fff; }
.quote-totals { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 8px 24px; max-width: 520px; margin: 20px 0 20px auto; padding: 18px; border-radius: 6px; background: #fff; }
.quote-totals dt, .quote-totals dd { margin: 0; }
.quote-totals dd { text-align: right; }
.quote-totals .grand-total { padding-top: 10px; border-top: 2px solid #263238; font-size: 18px; font-weight: 700; }
.internal-column { display: none; }
.show-internal .internal-column { display: table-cell; }
.pending-delete { display: none; }
.delete-cell label { display: flex; align-items: center; gap: 5px; white-space: nowrap; }
.live-totals { border: 1px solid #cfd8dc; }
.company-profile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.company-profile-grid .company-assets, .company-profile-grid .company-doc-settings { grid-column: 1 / -1; }
.compact-details { grid-template-columns: 180px minmax(0, 1fr); padding: 0; }
.company-form { display: grid; gap: 16px; }
.company-form .card h2, .company-profile-grid .card h2 { margin-top: 0; font-size: 18px; }
.company-image-fields, .company-assets-grid { display: grid; grid-template-columns: repeat(4, minmax(150px, 1fr)); gap: 14px; }
.company-image-field, .company-assets-grid > div { display: grid; align-content: start; gap: 8px; padding: 12px; border: 1px solid #dce2e6; border-radius: 6px; }
.company-image-field img, .company-assets-grid img { width: 100%; height: 110px; object-fit: contain; }
.company-assets-grid span { color: #78909c; }
.company-form input[type="checkbox"] { width: auto; align-self: flex-start; }
@media (max-width: 900px) {
  .sidebar { width: 76px; }
  .sidebar-brand { justify-content: center; padding: 0; }
  .sidebar-brand-text, .sidebar-link span, .sidebar-group-title { display: none; }
  .sidebar-link { justify-content: center; padding: 10px; }
  .sidebar-link.active { box-shadow: inset 3px 0 0 #75c5ff; }
  .workspace { margin-left: 76px; }
  .workspace-content { padding: 22px 18px 32px; }
  .form-grid, .filters, .filters.compact, .company-profile-grid, .company-image-fields, .company-assets-grid { grid-template-columns: 1fr; }
  .company-profile-grid .company-assets, .company-profile-grid .company-doc-settings { grid-column: auto; }
  .field.wide { grid-column: auto; }
}

.workflow-status { display: inline-flex; padding: 3px 9px; border-radius: 999px; font-weight: 700; background: #edf2f7; }
.status-pending_approval { color: #8a5a00; background: #fff3cd; }
.status-revision_requested { color: #a12622; background: #fde4e2; }
.status-approved { color: #176b3a; background: #ddf5e7; }
.status-cancelled { color: #66727e; background: #e9edf0; }
.status-procurement_cancelled { color: #7b3e32; background: #f4e4df; }
.workflow-banner { margin-bottom: 16px; padding: 12px 16px; border-left: 4px solid #e5a300; background: #fff8df; border-radius: 6px; }
.workflow-actions { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; }
.workflow-actions h2 { flex-basis: 100%; }
.workflow-actions form { margin: 0; }
.workflow-actions textarea { min-width: 340px; min-height: 70px; display: block; margin: 6px 0; }
.workflow-history article { display: grid; grid-template-columns: 145px 180px 1fr; gap: 10px; padding: 10px 0; border-bottom: 1px solid #e5ebef; }
.workflow-history article p { grid-column: 2 / -1; margin: 0; }
.procurement-cancel-action textarea { display: block; width: min(620px, 100%); min-height: 76px; margin: 6px 0 10px; }
.procurement-cancellation-note { display: grid; gap: 3px; margin-bottom: 10px; padding: 9px 11px; border-left: 3px solid #bf765f; border-radius: 5px; background: #fbf0ec; color: #71463a; }
.procurement-cancellation-note span { font-size: 12px; }
.inquiry-item-cancelled td { background: #f5f1f0; color: #66727e; }
.inquiry-item-partially-cancelled td:first-child { background: #fbf5ed; }
.item-cancellation-status { display: inline-flex; margin: 5px 0; padding: 3px 8px; border-radius: 999px; background: #f2dfda; color: #824d41; font-size: 12px; font-weight: 700; }
.item-cancellation-form { margin-top: 10px; min-width: 260px; }
.item-cancellation-form summary { color: #9a5143; cursor: pointer; font-size: 13px; text-decoration: underline; }
.item-cancellation-form form, .item-cancellation-facts { display: grid; gap: 7px; margin-top: 9px; }
.item-cancellation-form label { display: grid; gap: 4px; font-size: 12px; }
.item-cancellation-form textarea { min-height: 62px; }
.order-revision-warning { display: grid; gap: 4px; margin-bottom: 14px; padding: 12px 15px; border-left: 4px solid #d6a53c; border-radius: 6px; background: #fff7df; color: #6d5622; }
.item-cancellation-history article { display: grid; grid-template-columns: 140px 180px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid #e5ebef; }
.item-cancellation-history article div { display: grid; gap: 3px; }
.supplier-invoice-navigation { display: flex; flex-wrap: wrap; gap: 10px; margin: -4px 0 16px; }
.approval-economics-table td:first-child { min-width: 220px; }
.approval-economics-table td small { display: block; margin-top: 4px; color: #71808d; white-space: nowrap; }
.economic-positive { color: #2f7a4d; }
.economic-negative { color: #a54848; }
.economic-neutral { color: #66727e; }
.sidebar-counter{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:10px;background:#e7f1ff;color:#145aa3;font-size:11px}
.supplier-payment-overview,.supplier-payment-summary{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:12px;margin:16px 0}
.payment-metric,.supplier-payment-summary>div{display:flex;min-height:92px;flex-direction:column;justify-content:center;padding:16px;border:1px solid #dbe5ef;border-radius:12px;background:#f8fbfe}
.payment-metric span,.supplier-payment-summary span{color:#64748b;font-size:13px}.payment-metric strong,.supplier-payment-summary strong{margin-top:7px;color:#16324f;font-size:21px}
.payment-metric.paid{background:#f0faf5;border-color:#bde5cf}.payment-metric.partial{background:#fff9e8;border-color:#eed894}.payment-metric.overdue{background:#fff2f2;border-color:#efb8b8}.payment-metric.overdue small,.payment-overdue{color:#b42318}
.supplier-payment-overview .payment-action{align-self:stretch;display:flex;align-items:center;justify-content:center;border-radius:12px}
.supplier-payment-summary{grid-template-columns:repeat(4,minmax(160px,1fr))}.supplier-payment-summary .accent{background:#edf6ff;border-color:#9bc9f5}
.supplier-payment-form{max-width:920px}.payment-type-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0 22px}
.payment-type-card{display:flex;gap:14px;min-height:145px;padding:20px;border:2px solid #d8e2ec;border-radius:14px;background:#fafcfe;cursor:pointer}.payment-type-card.selected{border-color:#287fc5;background:#eef7ff}.payment-type-card input{width:22px;height:22px;accent-color:#287fc5}.payment-type-card span{display:flex;flex-direction:column;gap:15px}.payment-type-card strong{font-size:18px}.payment-type-card small{font-size:15px;line-height:1.6}.payment-type-card small b{font-size:20px;color:#145a96}
.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:#c9372c;background:#fff5f4}.field-error{display:block;margin-top:5px;color:#b42318}
.supplier-payment-history{display:grid;gap:10px}.supplier-payment-history article{display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:start;padding:14px;border:1px solid #e1e8ef;border-radius:10px}.supplier-payment-history article div{display:grid;gap:4px}.supplier-payment-history article span{color:#596b7d;font-size:13px}
.payment-queue-card table small{display:block;margin-top:4px}.payment-overdue-row{background:#fff8f7}
.procurement-status.partial{background:#fff3cd;color:#7b5b00}
@media(max-width:1100px){.supplier-payment-overview{grid-template-columns:repeat(3,1fr)}.supplier-payment-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.payment-type-cards,.supplier-payment-summary,.supplier-payment-overview{grid-template-columns:1fr}.supplier-payment-history article{grid-template-columns:1fr}}
.supplier-payment-mode-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.supplier-payment-mode-card{display:flex;gap:12px;min-height:110px;padding:16px;border:2px solid #dbe4ed;border-radius:12px;background:#f9fbfd;cursor:pointer}.supplier-payment-mode-card.selected{border-color:#2780c6;background:#eef7ff}.supplier-payment-mode-card input{width:21px;height:21px;accent-color:#2780c6}.supplier-payment-mode-card span{display:flex;flex-direction:column;gap:10px}.supplier-payment-mode-card strong{font-size:14px}.supplier-payment-mode-card small{color:#617386;line-height:1.4}
.supplier-payment-overview-six{grid-template-columns:repeat(3,minmax(180px,1fr))}.state-overdue{background:#fff2f2;border-color:#efb8b8}.state-creditor,.state-partial{background:#fff9e8;border-color:#eed894}.state-paid{background:#f0faf5;border-color:#bde5cf}
.payment-queue-filters{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}.payment-queue-filters a{display:flex;gap:8px;align-items:center;padding:10px 13px;border:1px solid #d7e2ed;border-radius:10px;background:#fff;color:#38536d;text-decoration:none}.payment-queue-filters a.active{border-color:#2880c5;background:#edf6ff;color:#135a93}.payment-queue-filters b{min-width:20px;padding:2px 6px;border-radius:10px;background:#edf1f5;text-align:center;font-size:11px}
.link-button{padding:0;border:0;background:none;color:#1972b8;text-decoration:underline;cursor:pointer;font:inherit}.queue-history-row td{padding:0 16px 16px;background:#f7fafc}.document-history-compact{display:grid;gap:10px;padding:12px 0}.document-history-summary{display:flex;flex-wrap:wrap;gap:20px;padding:10px 12px;border-radius:8px;background:#edf5fb}.document-history-list{display:grid;gap:7px}.document-history-list article{display:grid;grid-template-columns:125px minmax(220px,1fr) 125px auto;gap:12px;align-items:center;padding:9px 12px;border:1px solid #e0e8ef;border-radius:8px;background:#fff}.document-history-list article div{display:grid}.document-history-list small{color:#6a7b8c}.document-kind{color:#47627c;font-size:12px;text-transform:uppercase}.document-archived{opacity:.72}.document-event{grid-template-columns:125px 1fr!important}.document-history-compact summary{color:#1972b8;cursor:pointer}
@media(max-width:1100px){.supplier-payment-mode-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.supplier-payment-mode-cards,.supplier-payment-overview-six{grid-template-columns:1fr}.document-history-list article{grid-template-columns:1fr}}
.queue-page-card{padding:20px;border:1px solid #dce6ef;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(31,55,78,.06)}.queue-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.queue-page-header h1{margin:0 0 5px;font-size:26px}.queue-page-header p{margin:0;color:#64778a}.queue-compact-table table{font-size:13px}.queue-compact-table th{padding:10px 9px;white-space:nowrap;color:#53697d;background:#f4f7fa}.queue-compact-table td{padding:10px 9px;vertical-align:middle}.queue-row-actions{display:flex;align-items:center;gap:7px}.button.ghost{border:1px solid #cbd9e5;background:#fff;color:#286b9d}.queue-empty-info{display:flex;align-items:center;gap:15px;margin:8px 0 14px;padding:15px 17px;border:1px solid #b9d8ef;border-radius:11px;background:#eff8ff;color:#285c82}.queue-empty-info strong{font-size:16px}.queue-empty-info p{margin:4px 0 0}.queue-empty-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#d7ecfb;color:#1671b3;font-size:20px}.compact-empty-row td{text-align:center!important;padding:18px!important;color:#61768a}.compact-empty-row strong,.compact-empty-row span{display:block}.compact-empty-row span{margin-top:4px;font-size:12px}
.payment-queue-filters .paid-filter{border-color:#b9dfc9;color:#27744a}.payment-queue-filters .paid-filter b{background:#e4f5eb;color:#27744a}.payment-queue-filters .paid-filter.active{border-color:#55a979;background:#edf9f2;color:#17653a}.payment-queue-table td small{display:block;margin-top:4px;color:#718293}.payment-state-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid transparent;border-radius:8px;font-weight:700;font-size:12px;line-height:1.2}.payment-state-badge.state-paid{border-color:#9fd1b4;background:#eaf8f0;color:#17683c}.payment-state-badge.state-partial{border-color:#e2c871;background:#fff6d9;color:#755900}.payment-state-badge.state-overdue{border-color:#e6a4a4;background:#fff0f0;color:#a62c2c}.payment-state-badge.state-creditor{border-color:#e3b078;background:#fff2e4;color:#98520e}.payment-state-badge.state-awaiting_due{border-color:#9fc8e8;background:#edf7ff;color:#236b9f}.payment-state-badge.state-due,.payment-state-badge.state-unpaid{border-color:#e5c27e;background:#fff7e4;color:#855a05}.payment-value-paid{color:#187241;background:#f1faf5}.payment-status-legend{margin-top:15px;padding:14px;border-radius:11px;background:#f6f9fb}.payment-status-legend h2{margin:0 0 11px;font-size:15px}.payment-status-legend>div{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:9px}.payment-status-legend article{display:flex;flex-direction:column;gap:6px}.payment-status-legend small{color:#64778a;font-size:11px;line-height:1.35}
@media(max-width:1200px){.payment-status-legend>div{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.queue-page-header{flex-direction:column}.payment-status-legend>div{grid-template-columns:1fr}}

/* Corporate ERP UI system. See UI_GUIDE.md. */
:root{
  --erp-surface:#fff;--erp-surface-soft:#f7f9fc;--erp-border:#dce6ef;
  --erp-text:#20364b;--erp-muted:#64778a;--erp-primary:#1769aa;
  --erp-radius:14px;--erp-shadow:0 5px 18px rgba(31,55,78,.06);
  --erp-space:16px;--erp-card-padding:20px;
}
.erp-page{display:grid;gap:var(--erp-space);color:var(--erp-text)}
.erp-page-header,.page-header.erp-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0}
.erp-page-header h1{margin:0 0 5px;font-size:26px;line-height:1.2}.erp-page-header p{margin:0;color:var(--erp-muted)}
.erp-card,.erp-page .card{padding:var(--erp-card-padding);border:1px solid var(--erp-border);border-radius:var(--erp-radius);background:var(--erp-surface);box-shadow:var(--erp-shadow)}
.erp-card>h2:first-child,.erp-page .card>h2:first-child{margin-top:0;font-size:18px}
.button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:9px 15px;border-radius:8px;font-weight:600;line-height:1.25}
.button.secondary{border:1px solid #cbd9e5;background:#fff;color:#315f82}.button.secondary:hover,.button.ghost:hover{border-color:#8db9d9;background:#f1f8fd}
.erp-table,.erp-page .table-wrap{margin:12px 0 0;border-color:var(--erp-border);border-radius:10px;box-shadow:none}
.erp-table th,.erp-page .table-wrap th{padding:10px;color:#53697d;background:#f3f6f9;font-size:12px;text-transform:none}
.erp-table td,.erp-page .table-wrap td{padding:10px;font-size:13px}
.erp-table td:has(> .money-value),.money-value,.quote-totals dd,.invoice-totals dd,.payment-metric strong,.supplier-payment-summary strong{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.erp-status{display:inline-flex;align-items:center;min-height:29px;padding:5px 10px;border:1px solid #a7cbe7;border-radius:9px;background:#edf7ff;color:#236b9f;font-size:12px;font-weight:700;line-height:1.15}
.erp-status-compact{min-height:21px;padding:2px 6px;border-radius:6px;font-size:11px}
.erp-status.status-paid,.erp-status.status-approved,.erp-status.status-completed,.erp-status.status-accepted{border-color:#9fd1b4;background:#eaf8f0;color:#17683c}
.erp-status.status-partially_paid,.erp-status.status-pending_approval,.erp-status.status-revision_requested{border-color:#e2c871;background:#fff6d9;color:#755900}
.erp-status.status-cancelled,.erp-status.status-rejected,.erp-status.status-procurement_cancelled{border-color:#e6a4a4;background:#fff0f0;color:#a62c2c}
.erp-status.status-draft{border-color:#cbd6df;background:#f2f5f7;color:#536575}
.document-detail-page .document-facts{grid-template-columns:170px minmax(0,1fr)}
.document-detail-page>.quote-totals,.document-detail-page>.invoice-totals{width:min(100%,560px);margin:0 0 0 auto;padding:var(--erp-card-padding);border:1px solid var(--erp-border);border-radius:var(--erp-radius);background:var(--erp-surface);box-shadow:var(--erp-shadow)}
.invoice-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--erp-space)}
.supplier-payment-overview{margin:0}.supplier-payment-overview .payment-metric{box-shadow:var(--erp-shadow)}
.document-history-compact{padding:0}.document-history-summary{border:1px solid #cfe2f1;border-radius:10px}
.document-history-summary strong,.document-history-list b{font-variant-numeric:tabular-nums}
.document-history-list article{border-radius:10px}.document-history-list article:hover{border-color:#b8d3e7;background:#fbfdff}
.queue-page-card.erp-page{display:block}.queue-page-card.erp-card{padding:var(--erp-card-padding)}
.queue-compact-table td:nth-last-child(n+2){font-variant-numeric:tabular-nums}
@media(max-width:900px){.erp-page-header,.page-header.erp-page-header{flex-direction:column}.invoice-info-grid{grid-template-columns:1fr}.document-detail-page .document-facts{grid-template-columns:130px minmax(0,1fr)}}

/* Payment queue — intentionally scoped to this page. */
.payment-queue-page{gap:0;padding:16px 18px}.payment-queue-page .queue-page-header{margin-bottom:9px}.payment-queue-page .queue-page-header h1{font-size:25px}.payment-queue-page .payment-queue-filters{gap:6px;margin:8px 0 12px}.payment-queue-page .payment-queue-filters a{min-height:34px;padding:7px 9px;border-radius:8px;font-size:12px}.payment-queue-page .payment-queue-filters a.active{border-width:2px;padding:6px 8px;font-weight:700}.payment-queue-page .payment-queue-filters .paid-filter{border-color:#8bc7a5;background:#f4fbf7;color:#216b42}.payment-queue-page .payment-queue-filters .paid-filter b{background:#dff3e7;color:#17653a}.payment-queue-page .payment-queue-filters .paid-filter.active{border-color:#3b9965;background:#e9f8ef;color:#155d36;box-shadow:0 0 0 2px rgba(59,153,101,.08)}
.payment-queue-table-wrap{margin:0!important;overflow-x:visible!important;border-radius:10px}.payment-queue-table{width:100%;table-layout:fixed}.payment-queue-table .payment-col-inquiry{width:6%}.payment-queue-table .payment-col-supplier{width:13%}.payment-queue-table .payment-col-number{width:8%}.payment-queue-table .payment-col-date{width:9%}.payment-queue-table .payment-col-money{width:9%}.payment-queue-table .payment-col-status{width:14%}.payment-queue-table .payment-col-actions{width:11%}.payment-queue-table th{height:36px;padding:7px 8px!important;font-size:11px!important;letter-spacing:.015em}.payment-queue-table td{height:62px;padding:7px 8px!important;vertical-align:middle!important;color:#263d52;line-height:1.25}.payment-invoice-row:hover td{background:#f8fbfd}.payment-inquiry-link,.payment-invoice-number{font-weight:700}.payment-supplier-cell{overflow-wrap:anywhere}.payment-date-primary{display:block;color:#263d52;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-date-note{display:block;margin-top:3px!important;color:#526b80!important;font-size:10px!important;line-height:1.2}.payment-money-cell{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-money-cell>span,.payment-money-cell>strong{display:inline-block;min-width:92px;text-align:right}.payment-paid-value.state-paid,.payment-balance-value.state-paid{color:#187241!important;background:transparent!important;font-weight:700}.payment-paid-value.state-partial{color:#a36500;font-weight:700}.payment-paid-value.state-overdue,.payment-paid-value.state-due,.payment-paid-value.state-unpaid{color:#a54848;font-weight:600}.payment-state-badge-large{width:100%;min-height:38px;justify-content:center;padding:7px 9px;border-width:1px;border-radius:9px;font-size:12px;text-align:center}.payment-status-cell{padding-left:6px!important;padding-right:6px!important}.payment-row-actions{display:grid;grid-template-columns:1fr;gap:5px}.payment-row-actions .button{width:100%;min-height:30px;padding:5px 7px;font-size:11px;white-space:normal}.payment-history-row td{height:auto!important;padding:0 10px 10px!important;background:#f3f7fa!important}
.payment-document-history{gap:8px;padding:10px 0 0}.payment-document-history .document-history-summary{display:grid;grid-template-columns:repeat(2,minmax(190px,1fr));gap:8px;padding:0;border:0;background:transparent}.payment-document-history .document-history-summary>span{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 12px;border:1px solid #cfe0ec;border-radius:8px;background:#fff}.payment-document-history .document-history-summary small{color:#516a7e;font-size:11px}.payment-document-history .document-history-summary strong{font-size:14px}.payment-document-history .document-history-list{gap:5px}.payment-document-history .document-history-entry{display:grid;grid-template-columns:130px minmax(220px,1fr) 120px 125px;gap:10px;min-height:44px;padding:6px 10px;border:1px solid #d9e5ed;border-radius:8px;background:#fff}.payment-document-history .document-kind{display:flex;align-items:center;gap:7px;color:#425f77;font-size:10px;font-weight:700}.payment-document-history .document-kind i{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:#e8f2f9;color:#1769aa;font-style:normal;font-size:13px}.payment-document-history .document-history-main{display:grid;gap:3px;min-width:0}.payment-document-history .document-history-main>strong{overflow:hidden;color:#243c51;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.payment-document-history .document-history-main small{display:flex;align-items:center;gap:7px;color:#536b7f;font-size:10px}.payment-document-history .document-history-main time{font-weight:700;font-variant-numeric:tabular-nums}.document-status-badge{display:inline-flex;padding:2px 6px;border:1px solid #a8cce7;border-radius:6px;background:#edf7ff;color:#236b9f;font-size:10px;font-weight:700}.document-status-badge.status-paid{border-color:#9fd1b4;background:#eaf8f0;color:#17683c}.document-status-badge.status-cancelled{border-color:#dfb0ae;background:#fff1f0;color:#9b3732}.payment-document-history .history-money-value{align-self:center;min-width:110px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-document-history .document-history-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:11px;white-space:nowrap}.payment-document-history .document-archived{opacity:.82;background:#f8fafb}.payment-document-history details{padding:2px 0}.payment-document-history details>summary{font-size:11px;font-weight:700}.payment-document-history .document-event{grid-template-columns:130px minmax(0,1fr)!important;min-height:42px;padding:7px 10px}.payment-queue-page .payment-status-legend{margin-top:10px;padding:10px 12px;border:1px solid #e0e8ef;border-radius:9px;background:#f7f9fb}.payment-queue-page .payment-status-legend h2{margin-bottom:8px;font-size:13px}.payment-queue-page .payment-status-legend>div{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.payment-queue-page .payment-status-legend article{min-height:68px;justify-content:flex-start;padding:7px;border:1px solid #e0e7ed;border-radius:8px;background:#fff}.payment-queue-page .payment-status-legend .payment-state-badge{width:100%;min-height:27px;justify-content:center;text-align:center}.payment-queue-page .payment-status-legend small{color:#4f667a;font-size:10px;line-height:1.25}
@media(max-width:1200px){.payment-queue-table-wrap{overflow-x:auto!important}.payment-queue-table{min-width:1050px}.payment-queue-page .payment-status-legend>div{grid-template-columns:repeat(3,1fr)}}

/* Supplier goods receipts. */
.goods-receipt-page{max-width:1280px;margin:0 auto}.receipt-overview,.receipt-invoice-summary,.fulfillment-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.receipt-overview>div,.receipt-invoice-summary>div,.fulfillment-summary-grid>article{display:flex;min-height:82px;flex-direction:column;justify-content:center;gap:5px;padding:12px;border:1px solid #dce6ef;border-radius:10px;background:#f8fbfd}.receipt-overview span,.receipt-invoice-summary span,.fulfillment-summary-grid span{color:#61768a;font-size:12px}.receipt-overview strong,.receipt-invoice-summary strong,.fulfillment-summary-grid strong{color:#20364b;font-size:16px;font-variant-numeric:tabular-nums}.receipt-state{display:inline-flex;width:max-content;align-items:center;min-height:31px;padding:5px 9px;border:1px solid #9fc8e8;border-radius:8px;background:#edf7ff;color:#236b9f!important;font-size:12px!important;font-weight:700}.receipt-state.state-partial,.receipt-state.state-draft{border-color:#e2c871;background:#fff6d9;color:#755900!important}.receipt-state.state-completed,.receipt-state.state-posted{border-color:#9fd1b4;background:#eaf8f0;color:#17683c!important}.receipt-state.state-cancelled{border-color:#e6a4a4;background:#fff0f0;color:#a62c2c!important}.receipt-document-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:10px 0 18px}.receipt-document-card{display:flex;gap:14px;min-height:112px;padding:18px;border:2px solid #d8e3ec;border-radius:13px;background:#fafcfe;cursor:pointer}.receipt-document-card.selected{border-color:#287fc5;background:#eef7ff;box-shadow:0 0 0 3px rgba(40,127,197,.08)}.receipt-document-card input{width:22px;height:22px;accent-color:#287fc5}.receipt-document-card>span:last-child{display:grid;align-content:start;gap:9px}.receipt-document-card strong{font-size:17px}.receipt-document-card small{color:#617386;line-height:1.4}.receipt-items-table td:first-child{min-width:300px}.receipt-items-table td small{display:block;color:#64778a}.receipt-items-table input{max-width:145px;font-variant-numeric:tabular-nums}.receipt-form-actions{justify-content:flex-end}.receipt-invoice-summary{grid-template-columns:repeat(4,minmax(130px,1fr)) auto}.receipt-summary-action{align-items:center}.receipt-history-list{display:grid;gap:7px}.receipt-history-list>article{display:grid;grid-template-columns:minmax(220px,1fr) 80px 120px 135px 130px 60px;gap:12px;align-items:center;padding:10px 12px;border:1px solid #dce6ef;border-radius:9px;background:#fff}.receipt-history-list article.state-cancelled{background:#fff8f7;color:#6d7277}.receipt-history-list article small{display:block;margin-top:3px;color:#64778a}.receipt-history-list b{text-align:right;font-variant-numeric:tabular-nums}.receipt-history-list.compact{margin-top:12px}.receipt-history-list.compact>article{grid-template-columns:minmax(220px,1fr) 120px 60px}.receipt-event-list{display:grid;gap:7px}.receipt-event-list article{display:grid;grid-template-columns:130px minmax(220px,1fr) 180px 90px;gap:12px;padding:9px;border-bottom:1px solid #e2e8ef}.receipt-event-list small{grid-column:2/-1}.receipt-cancel textarea{display:block;width:min(620px,100%);min-height:72px;margin:6px 0 10px}.receipt-cancelled-note{border-color:#e6a4a4!important;background:#fff4f3!important}.fulfillment-workspace{display:grid;gap:14px}.fulfillment-summary-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.fulfillment-summary-grid article{min-height:75px;background:#fff;box-shadow:0 3px 12px rgba(31,55,78,.04)}.fulfillment-summary-grid article.state-partial{background:#fffaf0}.fulfillment-summary-grid article.state-completed{background:#f2faf5}.fulfillment-invoice-list{display:grid;gap:12px}.fulfillment-invoice-card{display:grid;gap:14px}.fulfillment-invoice-card>header{display:flex;align-items:flex-start;justify-content:space-between}.fulfillment-invoice-card h3{margin:3px 0;font-size:18px}.fulfillment-card-states{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fulfillment-card-states>div{display:grid;gap:5px;padding:10px;border-radius:9px;background:#f6f9fb}.fulfillment-card-states>div>span{color:#64778a;font-size:11px}.fulfillment-invoice-card>dl{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:0;background:#dce6ef}.fulfillment-invoice-card>dl>div{display:flex;justify-content:space-between;padding:9px 12px;background:#fff}.fulfillment-invoice-card dt{color:#64778a}.fulfillment-invoice-card dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.receipt-overview,.fulfillment-summary-grid{grid-template-columns:repeat(3,1fr)}.receipt-invoice-summary{grid-template-columns:repeat(2,1fr)}.receipt-history-list>article{grid-template-columns:1fr 100px 120px}.fulfillment-card-states{grid-template-columns:1fr}}

/* Customer shipments. */
.customer-shipment-page{max-width:1280px;margin:0 auto}.shipping-workspace{display:grid;gap:14px}.shipment-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.shipment-summary-grid>article{display:flex;min-height:78px;flex-direction:column;justify-content:center;gap:5px;padding:12px;border:1px solid #dce6ef;border-radius:10px;background:#fff}.shipment-summary-grid>article.state-ready{border-color:#acd9bd;background:#f0faf4}.shipment-summary-grid span{color:#61768a;font-size:12px}.shipment-summary-grid strong{color:#20364b;font-size:16px;font-variant-numeric:tabular-nums}.shipment-state{display:inline-flex;width:max-content;align-items:center;min-height:29px;padding:5px 9px;border:1px solid #a5cce9;border-radius:8px;background:#edf7ff;color:#236b9f!important;font-size:12px!important;font-weight:700}.shipment-state.state-ready,.shipment-state.state-shipped,.shipment-state.state-posted{border-color:#9fd1b4;background:#eaf8f0;color:#17683c!important}.shipment-state.state-partial_ready,.shipment-state.state-partial_shipped,.shipment-state.state-draft{border-color:#e2c871;background:#fff6d9;color:#755900!important}.shipment-state.state-not_ready,.shipment-state.state-cancelled{border-color:#e6a4a4;background:#fff0f0;color:#a62c2c!important}.shipment-position-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shipment-position-card{display:grid;gap:13px}.shipment-position-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.shipment-position-card h3{margin:3px 0 0;font-size:17px}.shipment-position-card>header>div>span{color:#64778a;font-size:11px}.shipment-position-card dl{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin:0;background:#dce6ef}.shipment-position-card dl>div{display:grid;gap:4px;padding:9px;background:#f8fafc}.shipment-position-card dt{color:#64778a;font-size:11px}.shipment-position-card dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.shipment-history-list{display:grid;gap:7px}.shipment-history-list>article{display:grid;grid-template-columns:minmax(230px,1fr) 90px 130px 130px 60px;gap:12px;align-items:center;padding:10px 12px;border:1px solid #dce6ef;border-radius:9px;background:#fff}.shipment-history-list>article.state-cancelled{background:#fff8f7;color:#6d7277}.shipment-history-list small{display:block;margin-top:3px;color:#64778a}.shipment-history-list b{text-align:right;font-variant-numeric:tabular-nums}.shipment-detail-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.shipment-detail-summary>div{display:grid;align-content:start;gap:6px}.shipment-detail-summary span{color:#64778a;font-size:12px}.shipment-items-table td:first-child{min-width:280px}.shipment-items-table td small{display:block;color:#64778a}.shipment-items-table input{max-width:140px;font-variant-numeric:tabular-nums}.shipment-form-actions{justify-content:flex-end}.shipment-event-list{display:grid;gap:7px}.shipment-event-list article{display:grid;grid-template-columns:130px minmax(220px,1fr) 180px 80px;gap:12px;padding:9px;border-bottom:1px solid #e2e8ef}.shipment-event-list small{grid-column:2/-1}.shipment-cancel textarea{display:block;width:min(620px,100%);min-height:72px;margin:6px 0 10px}.shipment-cancelled-note{border-color:#e6a4a4!important;background:#fff4f3!important}
@media(max-width:1100px){.shipment-summary-grid,.shipment-detail-summary{grid-template-columns:repeat(3,1fr)}.shipment-position-grid{grid-template-columns:1fr}.shipment-history-list>article{grid-template-columns:1fr 100px 125px}}
@media(max-width:700px){.shipment-summary-grid,.shipment-detail-summary{grid-template-columns:1fr}.shipment-position-card dl{grid-template-columns:repeat(2,1fr)}.shipment-history-list>article,.shipment-event-list article{grid-template-columns:1fr}}

/* Deal completion and reopening. */
.deal-completion-page{max-width:1280px;margin:0 auto}.deal-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.deal-facts>div{display:grid;align-content:start;gap:5px}.deal-facts span{color:#64778a;font-size:12px}.deal-facts strong{font-variant-numeric:tabular-nums}.completion-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.completion-check{display:grid;align-content:start;gap:9px;min-height:190px;border-left-width:5px!important}.completion-check header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.completion-check h2{margin:0;font-size:17px}.completion-check header span{padding:4px 8px;border-radius:7px;font-size:11px;font-weight:700}.completion-check>strong{font-size:22px;font-variant-numeric:tabular-nums}.completion-check p{margin:0;color:#52677b;font-size:12px}.completion-check>a{align-self:end}.completion-check.check-ok{border-left-color:#55a979!important;background:#f2faf5}.completion-check.check-ok header span{background:#dff3e7;color:#17653a}.completion-check.check-blocked{border-left-color:#d4554d!important;background:#fff6f5}.completion-check.check-blocked header span{background:#fde3e1;color:#9d2f2a}.completion-check.check-warning{border-left-color:#e0a33b!important;background:#fffaf0}.completion-check.check-warning header span{background:#fff0c7;color:#805b0b}.completion-finance dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;background:#dce6ef}.completion-finance dl>div{display:flex;min-height:68px;flex-direction:column;justify-content:center;gap:5px;padding:11px;background:#f9fbfd}.completion-finance dt{color:#64778a;font-size:12px}.completion-finance dd{margin:0;text-align:right;font-size:17px;font-weight:700;font-variant-numeric:tabular-nums}.completion-ready{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,480px);gap:24px;border-color:#8fd0aa!important;background:#effaf4!important}.completion-ready h2{margin:0 0 7px;color:#17683c}.completion-ready form{display:grid;gap:9px}.completion-ready textarea{min-height:64px}.completion-blocked-summary{border-color:#e4a09d!important;background:#fff6f5!important}.completion-blocked-summary h2{color:#9d2f2a}.completion-blocked-summary p{margin:7px 0}.deal-completed-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border:1px solid #8fd0aa;border-radius:12px;background:#eaf8f0;color:#17683c}.deal-completed-banner>div:first-child{display:grid;gap:4px}.deal-completed-banner strong{font-size:19px}.deal-completed-banner span{font-size:12px}.deal-completed-inline{display:flex;justify-content:space-between;border-color:#8fd0aa!important;background:#effaf4!important;color:#17683c}.deal-complete-action{background:#23834e}.reopen-form{display:grid;gap:18px}.reopen-reason-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reopen-reason-card{display:flex;gap:12px;min-height:105px;padding:16px;border:2px solid #dbe4ed;border-radius:12px;background:#f9fbfd;cursor:pointer}.reopen-reason-card:has(input:checked){border-color:#287fc5;background:#eef7ff}.reopen-reason-card input{width:21px;height:21px;accent-color:#287fc5}.reopen-reason-card span{display:grid;align-content:start;gap:8px}.reopen-reason-card small{color:#64778a;line-height:1.35}.inquiry-category-nav{display:flex;align-items:center;gap:9px;margin:14px 0}.inquiry-category-nav>a{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #d7e2ed;border-radius:9px;background:#fff;text-decoration:none}.inquiry-category-nav>a.active{border-color:#287fc5;background:#edf6ff;font-weight:700}.inquiry-category-nav>a b{padding:2px 6px;border-radius:9px;background:#e7edf2;font-size:11px}.inquiry-category-nav form{display:flex;gap:8px;margin-left:auto}.inquiry-category-nav input{min-width:280px}
@media(max-width:1050px){.deal-facts{grid-template-columns:repeat(3,1fr)}.completion-check-grid{grid-template-columns:repeat(2,1fr)}.completion-finance dl{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.deal-facts,.completion-check-grid,.completion-finance dl,.reopen-reason-grid,.completion-ready{grid-template-columns:1fr}.inquiry-category-nav{align-items:stretch;flex-direction:column}.inquiry-category-nav form{width:100%;margin:0}.inquiry-category-nav input{min-width:0}.deal-completed-banner{align-items:flex-start;flex-direction:column}}
.deal-completion-page .completion-check{min-height:150px}.deal-completion-page .completion-finance dl>div{min-height:56px;padding:9px 11px}

/* Server-readiness supplier, Kanban and customer invoice additions. */
.supplier-list-search,.supplier-search-form,.kanban-search{display:flex;align-items:center;gap:10px;padding:14px}.supplier-list-search input,.supplier-search-form input,.kanban-search input{flex:1;min-width:260px}.supplier-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.supplier-list-card{display:grid;gap:14px}.supplier-list-card header{display:flex;justify-content:space-between;gap:14px}.supplier-list-card h2{margin:0 0 5px;font-size:18px}.supplier-list-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0;background:#dce6ef}.supplier-list-card dl>div{display:grid;gap:4px;padding:9px;background:#f8fafc}.supplier-list-card dt{color:#64778a;font-size:11px}.supplier-list-card dd{margin:0;font-weight:650}.supplier-search-empty{text-align:center;padding:50px 20px}.supplier-search-page td small{display:block;margin-top:3px;color:#64778a}.supplier-search-page td:last-child{display:grid;gap:5px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:14px}.kanban-search{margin:0 0 12px;padding:10px 12px}.kanban-column-heading h2{display:flex;align-items:center;gap:8px}.kanban-column-heading h2 b{color:#b23d3d;font-size:12px;font-variant-numeric:tabular-nums}.kanban-card-heading h3>span{color:#64748b}.kanban-invoice-number{color:#b23d3d;font-weight:800}.invoice-terms-summary{display:flex;align-items:center;justify-content:space-between;gap:20px}.invoice-terms-summary h2{margin-top:0}.invoice-terms-summary dl{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;margin:0}.invoice-terms-summary dl>div{display:grid;gap:4px}.invoice-terms-summary dt{color:#64778a;font-size:12px}.invoice-terms-summary dd{margin:0;font-weight:700}.invoice-terms-form{display:grid;gap:16px}.terms-choice-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0}.terms-choice-card{display:flex;gap:10px;min-height:64px;padding:13px;border:2px solid #d8e3ec;border-radius:11px;background:#fafcfe;cursor:pointer}.terms-choice-card:has(input:checked){border-color:#287fc5;background:#eef7ff}.terms-choice-card input{width:19px;height:19px;accent-color:#287fc5}.terms-choice-card span{font-weight:700}@media(max-width:1100px){.supplier-list-grid{grid-template-columns:1fr}.terms-choice-grid{grid-template-columns:repeat(3,1fr)}}

/* Deal failure lifecycle. */
.deal-failure-page{display:grid;gap:16px;max-width:1280px;margin:0 auto}.failure-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;overflow:hidden}.failure-facts>div{display:grid;gap:5px;min-height:68px;padding:13px 18px;border-right:1px solid #e3eaf1;border-bottom:1px solid #e3eaf1}.failure-facts span{color:#64748b;font-size:12px}.failure-facts strong{font-size:16px;font-variant-numeric:tabular-nums}.failure-blocked{border-left:4px solid #c75b5b}.failure-blocked h2{margin:12px 0 8px}.failure-blocked li{margin:7px 0;color:#7f1d1d}.failure-form{display:grid;gap:16px}.failure-form h2{margin:0 0 14px}.failure-reason-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.failure-reason-card{display:flex;align-items:flex-start;gap:10px;min-height:58px;padding:12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;cursor:pointer;transition:.15s}.failure-reason-card:hover{border-color:#94a3b8;background:#f8fafc}.failure-reason-card:has(input:checked){border-color:#b64a4a;background:#fff4f4;box-shadow:0 0 0 1px #b64a4a}.failure-reason-grid.reopen .failure-reason-card:has(input:checked){border-color:#2679b9;background:#eef7ff;box-shadow:0 0 0 1px #2679b9}.failure-reason-card input{width:18px;height:18px;margin:1px 0 0;accent-color:#b64a4a;flex:0 0 auto}.failure-reason-card span{font-weight:600;line-height:1.25}.failure-comment{display:grid;gap:8px}.failure-comment label{font-weight:700}.failure-comment textarea{width:100%;resize:vertical}.failure-confirm{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border:1px solid #e5b9b9;border-radius:14px;background:#fff5f5}.failure-confirm div{display:grid;gap:3px}.failure-confirm span{color:#6b7280}.failure-confirm.reopen{border-color:#b9d6ec;background:#f2f8fd}.button.danger{background:#a94444;border-color:#a94444;color:#fff}.button.danger:hover{background:#8f3636}.button.failure-secondary{border-color:#dca7a7;background:#fff7f7;color:#9a3838}.button.failure-secondary:hover{border-color:#bf7373;background:#fff0f0;color:#7f2929}.failure-unavailable{max-width:460px;color:#8a4b4b;font-size:13px;line-height:1.35}.failure-unavailable a{margin-left:4px;color:#9a3838;font-weight:700}.deal-failed-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border:1px solid #e2b4b4;border-left:5px solid #b34d4d;border-radius:14px;background:#fff4f4;box-shadow:0 5px 16px rgba(34,57,79,.06)}.deal-failed-banner>div{display:grid;gap:4px}.deal-failed-banner strong{font-size:20px;color:#8f2f2f}.deal-failed-banner span{color:#5f3b3b}@media(max-width:1100px){.failure-facts,.failure-reason-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.money-actions { display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-bottom:14px; }
.money-movement-panel { margin-bottom:16px; }
.money-movement-summary { display:grid; grid-template-columns:repeat(5,minmax(130px,1fr)); margin:0; gap:1px; background:#dce4ed; border:1px solid #dce4ed; border-radius:10px; overflow:hidden; }
.money-movement-summary div { background:#fff; padding:12px 14px; }
.money-movement-summary dt { color:#64748b; font-size:12px; margin-bottom:5px; }
.money-movement-summary dd { margin:0; font-weight:700; }
.money-movement-summary .money-effective { background:#eef8f5; }
.money-operation-page { max-width:920px; }
.money-operation-card { max-width:720px; }
.money-available { padding:14px; background:#f3f7fb; border-radius:8px; }
.money-target-search { margin:0 0 18px; }
.money-target-search label { display:block; margin-bottom:7px; color:#475569; font-size:13px; font-weight:600; }
.money-target-search div { display:flex; gap:8px; }
.money-target-search input { flex:1; min-width:0; }
.money-operation-form { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.money-operation-form .field:has(textarea), .money-operation-form .actions, .money-operation-form .errorlist { grid-column:1 / -1; }
.money-operation-form input, .money-operation-form select, .money-operation-form textarea { width:100%; }
.money-operation-details dl { display:grid; grid-template-columns:190px 1fr; gap:12px 20px; margin:0; }
.money-operation-details dt { color:#64748b; }
.money-operation-details dd { margin:0; font-weight:600; }
.failure-money-settlement { margin-top:16px; border-left:4px solid #d97706; }
@media (max-width:900px) { .money-movement-summary { grid-template-columns:1fr 1fr; } .money-operation-form { grid-template-columns:1fr; } }
