.supplier-workspace{min-width:0}.supplier-filter-panel{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin:16px 0}.supplier-filters-primary{display:flex;gap:10px;padding:14px;flex-wrap:wrap}.supplier-filters-primary input{flex:1;min-width:220px}.supplier-filters-primary select{min-width:136px}.supplier-filters-primary input,.supplier-filters-primary select,.supplier-result-bar select,.supplier-pagination select,.supplier-detail-filters input:not([type=checkbox]),.supplier-detail-filters select,.supplier-date-toolbar input{border:1px solid #dbe3ed;border-radius:7px;padding:8px 10px;background:#fff;font:inherit;font-size:13px;color:#334155;min-height:36px;box-sizing:border-box}.supplier-result-bar{border-top:1px solid #eef2f7;padding:8px 14px;display:flex;align-items:center;justify-content:space-between;color:#64748b;font-size:12px}.supplier-result-bar b{color:#2563eb}.supplier-result-bar select{min-height:30px;padding:5px 8px;font-size:12px}.supplier-workspace-table table{min-width:1120px}.supplier-workspace-table th{background:#f4f7fb!important;font-size:12px!important;padding:13px 12px!important}.supplier-workspace-table td{padding:15px 12px!important;line-height:1.5}.supplier-workspace-table small{color:#64748b!important;line-height:1.5}.supplier-name{border:0;background:none;padding:0;font:inherit;font-weight:600;text-align:left;color:#2563eb;cursor:pointer}.supplier-name:hover{text-decoration:underline}.supplier-business-tags{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.supplier-business-tags span{background:#f0f5fb;color:#52667c;padding:2px 7px;border-radius:5px;font-size:11px;white-space:nowrap}.supplier-row-actions{display:flex;gap:5px;flex-wrap:wrap;max-width:210px}.supplier-row-actions button{padding:5px 8px;font-size:12px;white-space:nowrap;min-height:29px}.supplier-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;color:#64748b;font-size:12px}.supplier-pagination>div{display:flex;align-items:center;gap:12px}.supplier-pagination select{padding:4px 7px;min-height:30px;border:1px solid #dbe3ed;border-radius:6px}.supplier-profile-card{background:#fff;border:1px solid #e2e8f0;border-radius:9px;margin:16px 0}.supplier-profile-card summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;color:#334155;font-weight:500;font-size:13px;list-style:none}.supplier-profile-card summary::-webkit-details-marker{display:none}.supplier-profile-card summary>span:last-child{color:#64748b;font-weight:400}.supplier-profile-card summary>span:last-child:after{content:'⌄';margin-left:10px}.supplier-profile-card[open] summary>span:last-child:after{content:'⌃'}.supplier-profile-card summary i{font-style:normal;margin-left:6px;font-size:11px}.supplier-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 22px;padding:16px;border-top:1px solid #eef2f7}.supplier-profile-grid>div{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:13px;color:#334155;overflow-wrap:anywhere;white-space:pre-wrap}.supplier-profile-grid small{color:#94a3b8}.supplier-profile-grid>div:nth-last-child(-n+2){grid-column:1/-1}.supplier-form-note{grid-column:1/-1}.v4-supplier-form-grid textarea{border:1px solid #dbe3ed;border-radius:7px;padding:9px;font:inherit;font-size:13px;resize:vertical}.v4-supplier-form-grid small{color:#94a3b8;font-size:11px}.supplier-date-toolbar,.supplier-detail-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid #e2e8f0;background:#fff;border-radius:8px;margin-bottom:12px;color:#64748b;font-size:12px}.supplier-date-toolbar label{display:flex;align-items:center;gap:8px}.supplier-date-toolbar input{max-width:165px}.supplier-detail-filters input:not([type=checkbox]){flex:1;min-width:220px}.supplier-detail-filters select{min-width:140px}.supplier-unpaid-check{display:flex;align-items:center;gap:6px;white-space:nowrap}.supplier-unpaid-check input{width:15px;height:15px}.supplier-selection-bar{margin:12px 0!important;justify-content:flex-end}.supplier-selection-bar>span{margin-right:auto}.supplier-selection-bar button{white-space:nowrap}.procurement-record-images img{cursor:default}
.supplier-profile-card+.metric-band{grid-template-columns:repeat(5,minmax(0,1fr))}.supplier-workspace-table th:last-child,.supplier-workspace-table td:last-child{position:sticky;right:0;background:#fff;box-shadow:-1px 0 #e2e8f0;z-index:1;min-width:185px}.supplier-workspace-table th:last-child{background:#f4f7fb!important}.supplier-workspace-table th:first-child,.supplier-workspace-table td:first-child{position:sticky;left:0;z-index:1;background:#fff}.supplier-workspace-table th:first-child{background:#f4f7fb!important}.supplier-selection-bar button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1100px){.supplier-filters-primary input{flex-basis:100%}.supplier-filters-primary select{flex:1}.supplier-workspace-table td{padding:12px 9px!important}.supplier-row-actions{max-width:190px}.supplier-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-selection-bar{justify-content:flex-start}.supplier-selection-bar>span{flex-basis:100%}.supplier-profile-card+.metric-band{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.supplier-filters-primary{padding:10px;gap:8px}.supplier-filters-primary input{min-width:0;width:100%}.supplier-filters-primary select{min-width:120px}.supplier-result-bar{gap:10px}.supplier-pagination{flex-wrap:wrap}.supplier-profile-card summary{align-items:flex-start}.supplier-profile-grid{grid-template-columns:1fr}.supplier-date-toolbar label{flex-wrap:wrap}.supplier-detail-filters input:not([type=checkbox]){min-width:100%}.supplier-selection-bar button{flex:1}.supplier-profile-card summary>span:last-child{font-size:11px}}
/* Supplier payment facts use text + color, independent of document lifecycle. */
.supplier-payment-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-weight:650;font-size:12px;line-height:1.5;border-radius:6px;padding:4px 9px;border:1px solid transparent;width:max-content;max-width:100%}
.supplier-payment-badge:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.supplier-payment-badge.is-due{color:#b42318;background:#fff1ef;border-color:#fbd4ce}.supplier-payment-badge.is-partial{color:#9a5700;background:#fff7e6;border-color:#f6dc9f}.supplier-payment-badge.is-paid{color:#087553;background:#eaf8f1;border-color:#bfe7d4}.supplier-payment-badge.is-system{color:#245b9d;background:#edf4ff;border-color:#cddff8}.supplier-payment-badge.is-neutral{color:#5d6c7a;background:#f1f4f7;border-color:#dbe3eb}
.supplier-payment-cell{display:flex;flex-direction:column;gap:5px;min-width:0;text-align:left;font-size:12px}.supplier-payment-primary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.supplier-payment-primary>span:not(.supplier-payment-badge){white-space:nowrap;font-variant-numeric:tabular-nums}.supplier-payment-cell small{max-width:175px;font-size:11px;white-space:normal;line-height:1.5}.supplier-payment-cell small b{font-size:inherit}.supplier-paid-amount{color:#087553!important}.supplier-due-amount{color:#526477!important}.supplier-due-amount.has-due{color:#b42318!important}.supplier-due-amount>.supplier-payment-badge{display:flex;margin-top:5px}
.supplier-payment-history-link{color:#2563eb;border:0;background:transparent;padding:0;text-align:left;font:inherit;font-size:11px;width:max-content;cursor:pointer}.supplier-payment-history-link:hover{text-decoration:underline}
.supplier-payment-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:16px 0 12px}.supplier-payment-intro h2{font-size:16px;margin:0 0 5px;color:#172b40}.supplier-payment-intro p{font-size:12px;color:#64748b;line-height:1.6;margin:0;max-width:760px}.supplier-payment-intro button{white-space:nowrap}
.supplier-payment-filters{display:flex;gap:10px;align-items:center;margin-bottom:12px}.supplier-payment-filters input,.supplier-payment-filters select{font:inherit;color:#334155;font-size:13px;min-height:38px;border:1px solid #dbe3ed;border-radius:7px;padding:8px 10px;background:#fff}.supplier-payment-filters input{min-width:0;flex:1}.supplier-payment-filters span{font-size:12px;color:#64748b;white-space:nowrap}
.supplier-payment-stats{display:flex;background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:14px}.supplier-payment-stats>div{flex:1;padding:14px 18px;display:flex;flex-direction:column;gap:7px}.supplier-payment-stats>div+div{border-left:1px solid #e2e8f0}.supplier-payment-stats small{font-size:12px;color:#64748b}.supplier-payment-stats b{font-size:20px;color:#172b40;font-variant-numeric:tabular-nums}
.supplier-payment-table table{min-width:1000px}.supplier-payment-table td{vertical-align:top!important;padding:16px 12px!important;font-size:13px!important}.supplier-payment-table small{display:block;font-size:11px;color:#64748b;margin-top:5px;line-height:1.6;white-space:normal;overflow-wrap:anywhere}.supplier-payment-actions{display:flex;flex-direction:column;gap:7px;align-items:flex-start}.supplier-payment-actions button{font-size:12px;white-space:nowrap}.supplier-payment-empty{padding:28px!important;color:#64748b;text-align:center}
.supplier-snapshot-note{background:#f6f9fc;border:1px solid #dce5ef;border-left:3px solid #5c7fa6;border-radius:8px;padding:16px 18px;margin:14px 0;color:#334155;font-size:13px;line-height:1.6}.supplier-snapshot-note p{font-size:12px;color:#526477;margin:6px 0 12px}.supplier-snapshot-table td{vertical-align:top!important}.supplier-snapshot-table small{display:block;color:#64748b;font-size:11px;line-height:1.6;margin-top:4px}.supplier-snapshot-table table{min-width:900px}
.supplier-allocation-preview{background:#f6f9fc;border:1px solid #dce5ef;border-radius:8px;padding:12px 14px;margin:16px 0;font-size:13px}.supplier-allocation-heading,.supplier-allocation-preview article{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.supplier-allocation-heading{margin-bottom:8px;color:#172b40}.supplier-allocation-preview article{padding:9px 0;border-top:1px solid #e2e8f0}.supplier-allocation-preview article>div:last-child{text-align:right}.supplier-allocation-preview small{display:block;color:#64748b;font-size:11px;line-height:1.6;margin-top:4px}.supplier-allocation-preview article b{overflow-wrap:anywhere}.supplier-allocation-preview article strong{color:#087553;white-space:nowrap}
.supplier-payment-document-preview{overflow:auto}.supplier-payment-document-preview>.supplier-payment-sheet{min-width:760px;width:100%;box-sizing:border-box}.supplier-payment-dialog .finance-original{font-size:12px;overflow-wrap:anywhere}.supplier-payment-dialog .dialog-actions{flex-wrap:wrap}.supplier-payment-dialog .dialog-actions button{font-size:12px}
@media(max-width:640px){
 .supplier-payment-intro{flex-wrap:wrap;gap:10px}.supplier-payment-filters{flex-wrap:wrap}.supplier-payment-filters input{flex-basis:100%}.supplier-payment-filters select{flex:1}.supplier-payment-stats{flex-direction:column}.supplier-payment-stats>div{padding:12px 14px}.supplier-payment-stats>div+div{border-left:0;border-top:1px solid #e2e8f0}.supplier-payment-stats b{font-size:18px}
 #content .supplier-payment-table .mobile-record-card>td,#content .supplier-snapshot-table .mobile-record-card>td{display:block!important}#content .supplier-payment-table .mobile-record-more,#content .supplier-snapshot-table .mobile-record-more{display:none!important}.supplier-payment-table td,.supplier-snapshot-table td{padding:9px 12px!important}.supplier-payment-actions{width:100%;flex-direction:row;flex-wrap:wrap}.supplier-payment-actions button{min-height:36px}.supplier-payment-cell{min-width:0;width:100%}.supplier-payment-cell>span:not(.supplier-payment-badge){justify-content:flex-start}.supplier-payment-cell small{max-width:none}
 .supplier-allocation-preview{padding:10px}.supplier-allocation-heading{flex-wrap:wrap}.supplier-allocation-preview article>div{min-width:0}.supplier-payment-dialog .dialog-actions{position:static!important}.supplier-payment-dialog .document-output-actions{display:flex;flex-wrap:wrap;gap:6px}.supplier-payment-dialog .document-output-actions button{flex:1;min-height:36px}.supplier-payment-dialog .workspace-dialog-body{min-height:0}
 .supplier-payment-dialog .supplier-payment-sheet{min-width:0;width:100%;padding:16px!important}.supplier-payment-dialog .supplier-payment-sheet header{flex-direction:column;gap:14px}.supplier-payment-dialog .supplier-payment-sheet h1{font-size:22px}.supplier-payment-dialog .payment-sheet-meta{flex-direction:column;gap:8px!important}.supplier-payment-dialog .supplier-payment-sheet table,.supplier-payment-dialog .supplier-payment-sheet tbody{display:block;width:100%}.supplier-payment-dialog .supplier-payment-sheet thead{display:none}.supplier-payment-dialog .supplier-payment-sheet tr{display:block;margin:12px 0;border:1px solid #cfd8e3;border-radius:7px;overflow:hidden}.supplier-payment-dialog .supplier-payment-sheet td{display:block;width:auto!important;border:0!important;border-top:1px solid #e2e8f0!important;padding:10px!important}.supplier-payment-dialog .supplier-payment-sheet td:first-child{background:#f3f6fa;border-top:0!important}.supplier-payment-dialog .supplier-payment-sheet td:before{display:block;color:#64748b;font-size:11px;margin-bottom:4px}.supplier-payment-dialog .supplier-payment-sheet td:nth-child(1):before{content:'采购单 / 供应商原单号'}.supplier-payment-dialog .supplier-payment-sheet td:nth-child(2):before{content:'支付项目 / 关联订单'}.supplier-payment-dialog .supplier-payment-sheet td:nth-child(3):before{content:'本次有效核销'}.supplier-payment-dialog .supplier-payment-sheet td:nth-child(4):before{content:'当前付款状态'}.supplier-payment-dialog .payment-sheet-total{font-size:18px!important;text-align:left!important}
 .supplier-payment-dialog .supplier-payment-sheet table{min-width:0!important}.supplier-payment-dialog .supplier-payment-sheet :is(td,small,.payment-sheet-meta span,.payment-document-note){white-space:normal!important;overflow-wrap:anywhere;max-width:100%;min-width:0}
 .supplier-payment-dialog .supplier-payment-document-preview>.supplier-payment-sheet{min-width:0!important;width:100%!important;max-width:100%!important}
}
