.payment-editor{display:grid;gap:16px}.payment-node{border:1px solid #dce6ee;background:#f8fbfd;border-radius:12px;padding:16px}.payment-node-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.payment-node-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-node-amount{margin-top:12px;color:var(--fusion-accent-ink, #176595);font-weight:650}.payment-plan-total{padding:14px 16px;background:#eaf6ef;border-radius:10px;color:#226744;font-weight:650}.payment-plan-total.incomplete{background:#fff5e7;color:#8a6225}.collection-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.collection-stat{background:#fff;border:1px solid #e2e9ef;border-radius:12px;padding:18px;display:grid;gap:10px}.collection-stat span{color:#667688;font-size:13px}.collection-stat strong{font-size:26px;font-weight:650;color:var(--fusion-ink, #1a3652)}.collection-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.collection-controls select{padding:9px 12px;border:1px solid #dce5ec;border-radius:8px;background:white;color:var(--fusion-body, #30445c)}.collection-workspace .responsive-table{min-width:950px}.collection-workspace{overflow:auto}.payment-editor .form-field input,.payment-editor .form-field select{min-width:0;width:100%;box-sizing:border-box}@media(max-width:700px){.collection-workspace .responsive-table{min-width:0;width:100%}.payment-node-grid{grid-template-columns:1fr}.collection-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.collection-stat{padding:12px}.payment-node{padding:12px}}
.modal.payment-modal{width:1060px}.payment-generation-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.payment-generation-tools label{font-size:12px;color:#758397}.payment-generation-tools select{padding:9px 12px;max-width:260px}.payment-generation-warnings{border-left:3px solid #cfa567;background:#fff8ed;padding:10px 12px;border-radius:6px;color:#856437;font-size:12px;line-height:1.7}.payment-preview-scroll{overflow-x:auto;border:1px solid #dfe7ee;border-radius:9px}.payment-preview-table{width:100%;min-width:850px;table-layout:fixed;border-collapse:collapse;font-size:12px}.payment-preview-table th{background:#f6f9fb;text-align:left;color:#77869a;font-size:11px;font-weight:550;padding:10px 8px}.payment-preview-table td{border-top:1px solid #e6edf2;padding:12px 8px;vertical-align:top;line-height:1.6}.payment-preview-table th:nth-child(1){width:13%}.payment-preview-table th:nth-child(2){width:12%}.payment-preview-table th:nth-child(3){width:14%}.payment-preview-table th:nth-child(4){width:17%}.payment-preview-table th:nth-child(5){width:18%}.payment-preview-table th:nth-child(6){width:16%}.payment-preview-table th:nth-child(7){width:10%}.payment-preview-table input,.payment-preview-table select{width:100%;padding:7px 6px;min-width:0;font-size:12px;margin-top:6px}.payment-preview-table details{margin-top:7px;color:#8895a4;font-size:11px}.payment-preview-table summary{cursor:pointer}.payment-preview-amount{display:block;color:var(--fusion-accent-ink, #245475);margin-top:9px;white-space:nowrap;font-variant-numeric:tabular-nums}.payment-preview-date{display:block;margin-top:9px;white-space:nowrap;font-variant-numeric:tabular-nums}.payment-preview-date.pending{color:#9d7a43}.payment-preview-row>td:last-child{padding-top:23px}.payment-generated>.button{justify-self:start}@media(max-width:700px){.payment-generation-tools{gap:8px}.payment-generation-tools select{max-width:100%}.payment-preview-table{min-width:820px}}
.table-wrap tr.collection-overdue>td{background:#fff4f3}.table-wrap tr.collection-overdue>td:first-child{box-shadow:inset 3px 0 #bf5750}.table-wrap tr.collection-overdue .badge.danger{background:#fbe5e2;color:#ad3f37;font-weight:650}
.order-progress{display:grid;gap:8px;margin:14px 0 4px;padding:12px 14px;border:1px solid var(--line,#e3e1ea);border-radius:10px;background:var(--surface-2,#faf9fc);font-size:13px}
.order-progress.compact{margin:10px 0 0;padding:0;border:0;background:none;gap:5px;font-size:12px}
.order-progress.empty{padding:6px 10px;background:none;border-style:dashed}
.order-progress.compact.empty{border:1px dashed #e1d6b8;padding:4px 8px}
.op-terms{font-weight:600;color:#2a2640}
.op-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px}
.op-status{font-weight:700;color:#5b3f8f}.op-status.done{color:#1f7a4d}.op-status.unknown{color:#a0681c}
.op-sub,.op-next{color:#6b6880;font-size:12px}
.op-missing{color:#a0681c;background:#fdf3e2;border-radius:4px;padding:1px 6px;font-size:12px}
.op-bar{display:flex;gap:3px;height:22px}
.compact .op-bar{height:7px;gap:2px}
.op-seg{flex-basis:0;display:flex;align-items:center;justify-content:center;border-radius:5px;background:#ecebf1;border:1px solid #dcdae4;overflow:hidden;text-decoration:none}
a.op-seg:hover{outline:2px solid #5b3f8f;outline-offset:1px}
.op-seg em{font-style:normal;font-size:11px;color:#4b4760;white-space:nowrap}
.op-seg.done{background:#2f9e6a;border-color:#2f9e6a}.op-seg.done em{color:#fff}
.op-seg.partial{background:linear-gradient(90deg,#2f9e6a 50%,#ecebf1 50%)}
.op-seg.open{background:#fff;border-color:#b9b5c9}
.op-seg.unknown{background:repeating-linear-gradient(45deg,#f5f1e6,#f5f1e6 5px,#ece5d2 5px,#ece5d2 10px);border-color:#e1d6b8}
.op-steps{display:flex;list-style:none;margin:2px 0 0;padding:0;font-size:11px;color:#9a97ab}
.op-steps li{flex:1;text-align:center;padding-top:7px;border-top:3px solid #ecebf1;white-space:nowrap}
.op-steps li.past{border-color:#b7a6d6;color:#6b6880}
.op-steps li.now{border-color:#5b3f8f;color:#2a2640;font-weight:700}
@media (max-width:640px){.op-steps{display:none}}
.order-card-facts > .fact:nth-child(3):last-child{grid-column:span 2}
.order-more-menu{position:relative;display:inline-block;margin-top:6px}
.order-more-menu summary{list-style:none;cursor:pointer;width:32px;height:28px;line-height:22px;text-align:center;border:1px solid #dcdae4;border-radius:8px;color:#5b5770;font-weight:700;background:#fff}
.order-more-menu summary::-webkit-details-marker{display:none}
.order-more-items{position:absolute;right:0;top:32px;z-index:20;display:grid;gap:4px;min-width:110px;padding:8px;background:#fff;border:1px solid #e3e1ea;border-radius:10px;box-shadow:0 6px 18px rgba(40,30,70,.12)}
.order-more-items .text-link{text-align:left;white-space:nowrap}
.collection-groups{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.collection-group{border:1px solid var(--fusion-line,#e3e1ea);border-radius:12px;background:#fff;overflow:hidden}
.collection-group-head{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,320px);gap:16px;align-items:center;padding:12px 16px;background:var(--fusion-soft,#faf9fc);border-bottom:1px solid var(--fusion-line,#eeedf3)}
.collection-group.pending-only .collection-group-head{border-bottom:0;background:#fff}
.collection-group-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.collection-group-title .row-link{font-weight:700}
.collection-group-contract{font-weight:600}
.collection-group-progress .order-progress.compact{margin:0}
.collection-group-pending{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.collection-node-table{border:0}
.collection-node-table td,.collection-node-table th{padding-top:10px;padding-bottom:10px}
.muted-pending{color:#a0681c;font-size:12px}
@media(max-width:700px){.collection-group-head{grid-template-columns:1fr}.collection-group-pending{justify-content:flex-start}}
.collection-group-title .collection-group-contract,.collection-pending-row .collection-group-contract{border:0;background:none;padding:0;min-height:0;box-shadow:none;font-weight:600;color:var(--fusion-ink,#2a2640);cursor:pointer}
.collection-pending-group{border:1px dashed #e1d6b8;border-radius:12px;background:#fffdf8}
.collection-pending-group summary{cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:12px 16px;color:#8a5a14}
.collection-pending-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:2px 24px;padding:0 16px 12px}
.collection-pending-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:8px 0;border-top:1px solid #f1ece0}
.collection-pending-row .text-link{margin-left:auto}
.collection-pending-row .cn-region{min-width:0;max-width:100%;overflow-wrap:anywhere}
.collection-group-note{margin:0;padding:8px 16px 12px;color:var(--fusion-muted,#6b6880);font-size:12px;line-height:1.6;border-top:1px solid var(--fusion-line,#f1f0f5)}
.badge.green{background:#e6f4ec;color:#1f7a4d}
@media(max-width:700px){
.collection-groups .collection-node-table{min-width:0!important;width:100%}
.collection-node-table table,.collection-node-table tbody{display:block;width:100%}
.collection-node-table thead{display:none}
.collection-node-table tr{display:grid!important;grid-template-columns:1fr auto auto;align-items:center;gap:4px 10px;padding:10px 14px!important;margin:0!important;border:0!important;border-top:1px solid var(--fusion-line,#f1f0f5)!important;border-radius:0!important;box-shadow:none!important;background:none}
.collection-node-table td{display:block!important;padding:0!important;border:0!important;min-height:0!important;text-align:left!important}
.collection-node-table td::before{display:none!important}
.collection-node-table .cn-node{grid-column:1;grid-row:1}.collection-node-table .cn-node .cell-sub{display:inline;margin-left:6px}
.collection-node-table .cn-status{grid-column:2/4;grid-row:1;justify-self:end}.collection-node-table .cn-act{grid-column:3;grid-row:2;position:static!important;justify-self:end}
.collection-node-table .cn-due{grid-column:1;grid-row:2;font-size:12px}.collection-node-table .cn-due::before{content:'应收 ';display:inline!important;color:var(--fusion-muted,#8a879c)}
.collection-node-table .cn-paid{grid-column:2;grid-row:2;font-size:12px}.collection-node-table .cn-paid::before{content:'已收 ';display:inline!important;color:var(--fusion-muted,#8a879c)}.collection-node-table .cn-paid .cell-sub{display:none}
.collection-node-table .cn-out,.collection-node-table .cn-date{display:none!important}
.collection-node-table .amount{font-size:12px}
.collection-group-head{padding:12px 14px}
}
@media(max-width:700px){
.collection-group-head{grid-template-columns:minmax(0,1fr)}
.collection-group-head>*{min-width:0}
.collection-node-table tr{grid-template-columns:minmax(0,1fr) minmax(0,auto) auto}
.collection-node-table td{min-width:0}
.collection-node-table .cn-paid,.collection-node-table .cn-due{white-space:nowrap}
.collection-node-table .cn-paid .amount,.collection-node-table .cn-due .amount{font-size:11.5px}
}
@media(max-width:700px){.collection-node-table .cn-paid>div{display:inline}.collection-node-table .cn-paid>div>.amount{display:inline}}
@media(max-width:700px){
.collection-node-table .cn-status{grid-column:2;grid-row:1;justify-self:end}
.collection-node-table .cn-act{grid-column:3;grid-row:1}
.collection-node-table .cn-paid{grid-column:2/4;grid-row:2;justify-self:end}
.collection-node-table .cn-act .text-link{font-size:12px;white-space:nowrap}
}
@media(max-width:700px){.collection-node-table .cn-due>div{display:inline}.collection-node-table .cn-due>div>.amount{display:inline}.collection-node-table .cn-due .cell-sub{display:block}}
/* UX-01：桌面节点表把备注收进节点格，长状态可换行，登记列固定在右侧可见。 */
@media(min-width:701px){
.collection-groups .collection-node-table{min-width:0!important;width:100%}
.collection-node-table .numeric{min-width:0}.collection-node-table .amount{white-space:nowrap}
.collection-node-table th,.collection-node-table td{padding-left:10px;padding-right:10px}
.collection-node-table td.cn-status{min-width:120px}.collection-node-table td.cn-date{white-space:nowrap}
.collection-node-table .cn-status .badge{white-space:normal;max-width:220px;line-height:1.45;display:inline-block}
.collection-node-table .cn-node .collection-source-note{margin-top:4px;font-size:12px;color:var(--fusion-muted,#6b6880)}
.collection-node-table .cn-node .collection-source-note p{max-width:360px}
.collection-node-table th.cn-act,.collection-node-table td.cn-act{position:sticky;right:0;z-index:1;width:60px;text-align:right;background:var(--fusion-surface,#fff);box-shadow:-10px 0 10px -10px rgba(40,30,70,.22)}
.collection-node-table td.cn-act .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:32px;min-width:44px;padding:0 8px}
}
@media(max-width:700px){.collection-node-table .cn-node .collection-source-note{grid-column:1/-1;font-size:12px;color:var(--fusion-muted,#6b6880)}}
/* Manual scheduling: keep all three schedule fields visible on narrow screens. */
@media(max-width:700px){
 .collection-groups .collection-node-table tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 10px;padding:16px 14px!important}
 .collection-groups .collection-node-table td{min-width:0!important;justify-self:stretch}
 .collection-groups .collection-node-table .cn-node{grid-column:1;grid-row:1}
 .collection-groups .collection-node-table .cn-act{grid-column:2;grid-row:1;justify-self:end}
 .collection-groups .collection-node-table .cn-out{display:block!important;grid-column:1;grid-row:2;font-weight:700}
 .collection-groups .collection-node-table .cn-countdown{grid-column:2;grid-row:2}
 .collection-groups .collection-node-table .cn-due{grid-column:1;grid-row:3}
 .collection-groups .collection-node-table .cn-paid{grid-column:2;grid-row:3}
 .collection-groups .collection-node-table .cn-date{display:block!important;grid-column:1;grid-row:4}
 .collection-groups .collection-node-table .cn-received{grid-column:2;grid-row:4}
 .collection-groups .collection-node-table .cn-status{grid-column:1/-1;grid-row:5;justify-self:start}
 .collection-groups .collection-node-table :is(.cn-out,.cn-date,.cn-countdown,.cn-received)::before{display:block!important;font-size:11px;font-weight:400;color:var(--fusion-muted,#667788);margin-bottom:4px}
 .collection-groups .collection-node-table .cn-out::before{content:'剩余待收'}
 .collection-groups .collection-node-table .cn-date::before{content:'预计收款日期'}
 .collection-groups .collection-node-table .cn-countdown::before{content:'距收款 / 逾期天数'}
 .collection-groups .collection-node-table .cn-received::before{content:'实际收款日期'}
}
.payment-template-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.payment-template-buttons .label{font-size:12px;color:#758397;margin-right:4px}.payment-template-buttons .button{padding:7px 14px}
.conversion-adjust{margin:4px 0 12px;font-size:13px}.conversion-adjust>summary{cursor:pointer;color:#5f7186}.conversion-adjust[open]>summary{margin-bottom:10px}
