/* Person-first payment records keep their existing source, owner and amounts. */
body.minimal-calm .page-payments .minimal-payments-table{font-variant-numeric:tabular-nums}
body.minimal-calm .page-payments .minimal-payment-ledger{min-width:940px}
body.minimal-calm .page-payments .minimal-payments-table th{height:35px;font-size:10.5px;font-weight:500;color:var(--secondary);white-space:nowrap}
body.minimal-calm .page-payments .minimal-payments-table td{height:48px;padding-block:8px;vertical-align:middle;text-align:left}
body.minimal-calm .page-payments .minimal-payments-table .minimal-payment-person{display:inline-flex;align-items:center;gap:9px;max-width:100%;min-height:28px;padding:0;text-align:left;text-decoration:none;line-height:1.3}
body.minimal-calm .minimal-payment-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--secondary);font-size:10px;font-weight:550;line-height:1;text-transform:uppercase}
body.minimal-calm .minimal-payment-avatar{position:relative;overflow:hidden}
body.minimal-calm .minimal-payment-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--soft)}
body.minimal-calm .minimal-payment-name{color:var(--ink);font-size:12px;font-weight:550;white-space:nowrap}
body.minimal-calm .minimal-payment-person:hover .minimal-payment-name{color:var(--accent)}
body.minimal-calm .minimal-payment-student-cell{min-width:190px}
body.minimal-calm .minimal-payment-date-cell{color:var(--secondary)!important;white-space:nowrap}
body.minimal-calm .minimal-payment-amount-cell{min-width:96px;white-space:nowrap}
body.minimal-calm .minimal-payment-amount-cell strong{font-weight:550}
body.minimal-calm .minimal-payment-state{display:inline-flex;align-items:center;gap:5px;min-height:21px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--line));border-radius:5px;background:color-mix(in srgb,var(--accent) 5%,var(--surface));color:var(--accent);font-size:10px;font-weight:450;line-height:1.4;white-space:nowrap}
body.minimal-calm .minimal-payment-state::before{content:'';width:4px;height:4px;flex:0 0 4px;border-radius:50%;background:currentColor}
body.minimal-calm .minimal-payment-state.is-adjustment{background:var(--soft);border-color:var(--line);color:var(--secondary)}
body.minimal-calm .page-payments .minimal-payment-ledger .sx-badge{border-color:var(--line);background:var(--surface);color:var(--secondary)}
body.minimal-calm .page-payments .minimal-payments-surface tbody tr:hover td{background:var(--record-hover)}
body.minimal-calm.minimal-linear .minimal-payment-state{border-radius:4px}

/* The overdue count is separate from installments due today. */
body.minimal-calm .page-payments .sx-payments-has-overdue > .sx-metrics > .sx-stat:last-child > small{color:#b83c3c;font-weight:500}
body.minimal-calm.theme-dark .page-payments .sx-payments-has-overdue > .sx-metrics > .sx-stat:last-child > small{color:#ff9b9b}

/* Payment amounts and owners stay readable without another layer of chips. */
body.balanced-blue.minimal-calm .page-payments .minimal-payments-table :is(th,td){font-size:14px}
body.balanced-blue.minimal-calm .page-payments .minimal-payments-table th{background:var(--surface);font-size:13px}
body.balanced-blue.minimal-calm .page-payments .minimal-payment-name{font-size:14px;font-weight:500}
body.balanced-blue.minimal-calm .page-payments .minimal-payment-state{min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:13px}
body.balanced-blue.minimal-calm .page-payments .minimal-payment-state::before{display:none}
body.balanced-blue.minimal-calm .page-payments .minimal-payment-state.is-adjustment{color:var(--secondary)}
body.balanced-blue.minimal-calm .page-payments .minimal-payments-table .minimal-payment-person{min-height:28px;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--ink)}
body.balanced-blue.minimal-calm .page-payments .minimal-payment-person:hover .minimal-payment-name{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
body.balanced-blue.minimal-calm .page-payments .minimal-payment-ledger .sx-badge{padding:0;border:0;background:transparent;color:var(--ink);font-size:13px}
