.collect-pending{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding:10px 12px 10px 14px;border-radius:var(--radius-sm);background:rgba(255,77,77,.08)}
.collect-pending-label{font-size:12px;font-weight:600;color:var(--text-mid)}
.collect-pending-amount{color:var(--danger);font-size:15px;margin-right:auto}
.collect-form{display:flex;flex-direction:column;gap:14px;color:var(--text-mid);font-size:14px;line-height:1.6}
.collect-form p{margin:0}
.collect-form strong{color:var(--text-hi)}
.collect-breakdown{margin:0;display:grid;gap:6px;background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);padding:12px 16px}
.collect-breakdown div{display:flex;justify-content:space-between;gap:16px}
.collect-breakdown dt{color:var(--text-lo)}
.collect-breakdown dd{margin:0;color:var(--text-hi)}
.collect-breakdown .collect-due{border-top:1px solid var(--hairline-strong);padding-top:8px;margin-top:2px;font-weight:600}
.collect-breakdown .collect-due dd{color:var(--danger)}
.collect-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.collect-fields div{display:flex;flex-direction:column;gap:6px;min-width:0}
.collect-form label{font-size:12px;font-weight:600;color:var(--text-hi)}
.collect-form input,.collect-form select{width:100%;box-sizing:border-box;padding:11px 14px;background:var(--surface-2);color:var(--text-hi);font:inherit;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);color-scheme:dark}
.collect-form input:focus-visible,.collect-form select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.collect-form input[aria-invalid=true]{border-color:var(--danger)}
.collect-hint{font-size:12px;color:var(--text-lo)}
.collect-form .collect-error{font-size:13px;color:var(--danger);padding:10px 12px;border-radius:var(--radius-sm);background:rgba(255,77,77,.08)}
.collect-alert{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
/* Collect all pending (CollectAllPending.jsx): every owing plan, oldest first. */
.collect-all-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);overflow:hidden}
.collect-all-table th,.collect-all-table td{padding:9px 12px;text-align:right;vertical-align:top;border-bottom:1px solid var(--hairline)}
.collect-all-table th:first-child,.collect-all-table td:first-child{text-align:left}
.collect-all-table thead th{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-lo)}
.collect-all-table td strong{display:block;color:var(--text-hi);overflow-wrap:anywhere}
.collect-all-table td span{display:block;font-size:12px;color:var(--text-lo)}
.collect-all-table td{color:var(--text-hi);white-space:nowrap}
.collect-all-table td:first-child{white-space:normal}
.collect-all-table td[data-paying]{color:var(--accent);font-weight:600}
.collect-all-table tfoot th,.collect-all-table tfoot td{border-bottom:none;font-weight:700;color:var(--text-hi)}
.collect-all-table tfoot td:nth-child(2){color:var(--danger)}
