/* Monthly statements and the day matrix share the existing palette. */
.payment-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px 22px;margin:16px 0}
.payment-metrics>div{min-width:0;padding:10px 12px;border-radius:8px;background:#f5f8f6}
.payment-metrics dt{font-size:13px;color:#61776a}
.payment-metrics dd{margin:6px 0 0;font-size:20px;font-weight:700;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.payment-metrics .payment-remaining{background:#e7f3eb;border:1px solid #afcdb9}
@media(max-width:700px){.payment-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.payment-metrics dd{font-size:18px}.payment-metrics .payment-remaining{grid-column:1/-1;grid-row:1;padding:16px}.payment-metrics .payment-remaining dd{font-size:32px}.payment-metrics .payment-remaining dt{font-size:15px}}
main,.panel,.page-header>div{min-width:0}
.table-scroll{max-width:100%;overflow-x:auto}
.statement-panel{padding:22px}
.statement-table{min-width:1150px;font-size:14px}
.statement-table th{vertical-align:top;min-width:105px;white-space:normal;line-height:1.4}
.statement-table th:first-child{min-width:180px}
.statement-table th:last-child{min-width:165px}
.statement-table td{vertical-align:top;font-variant-numeric:tabular-nums}
.statement-table tfoot{background:#edf4ef;font-weight:650}
.statement-table .row-actions{justify-content:flex-start;gap:8px}
.statement-table .button{font-size:13px;padding:8px 10px}
.opening-balance{display:block;font-size:12px;margin-top:6px;font-weight:400}
.closing-balance{font-weight:750;font-size:16px}
.month-info{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding-top:20px;color:#587164}
.day-table{border-collapse:collapse;width:100%;text-align:left}
.day-table th,.day-table td{padding:14px 12px;border-bottom:1px solid #e3ebe5;vertical-align:middle}
.day-table th{background:#f7f9f8;min-width:110px}
.day-table th:first-child{min-width:210px}
.day-table .day-student{font-weight:600;overflow-wrap:anywhere}
.day-table .meal-check{margin:0;justify-content:center}
.day-table .meal-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.day-counts{margin-bottom:18px}
.day-table input:disabled{opacity:.35}
.form-panel input:disabled{background:#edf1ef;color:#566b60}
@media(max-width:700px){
  .statement-panel{padding:16px}
  .statement-table{min-width:0;font-size:15px}
  .statement-table tbody,.statement-table tfoot{display:block}
  .statement-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;padding:15px}
  .statement-table td{min-width:0;padding:4px 0;overflow-wrap:anywhere}
  .statement-table td[data-label]::before{content:attr(data-label);display:block;color:#64786c;font-size:11px;line-height:1.3;margin-bottom:5px;font-weight:400}
  .statement-table .student-name,.statement-table .statement-actions{grid-column:1/-1}
  .statement-table .student-name{padding-bottom:9px;border-bottom:1px solid #e6ede8;font-size:17px}
  .statement-table .closing-balance{font-size:19px}
  .statement-table .statement-actions .row-actions{border:0;margin:0;padding:0;gap:18px}
  .statement-table .statement-actions .button{flex:1;font-size:15px}
  .statement-table tfoot tr{background:#edf4ef}
  .statement-panel .table-scroll{overflow:visible}
  .month-info{gap:10px 16px}
  .day-table,.day-table tbody{display:block;width:100%}
  .day-table thead{display:none}
  .day-table tr{display:flex;flex-wrap:wrap;gap:8px 14px;border:1px solid #dfe8e2;padding:14px;border-radius:10px;margin-bottom:12px}
  .day-table td{display:block;border:0;padding:0;min-width:0}
  .day-table .day-student{flex-basis:100%;border-bottom:1px solid #e6ede8;padding-bottom:10px;font-size:17px}
  .day-table .day-cell{flex:1 1 120px;max-width:100%}
  .day-table .meal-check{justify-content:flex-start;padding:8px 0;min-height:54px;overflow-wrap:anywhere;gap:9px}
  .day-table .meal-label{position:static;width:auto;height:auto;overflow:visible;clip-path:none;min-width:0}
  .day-table .opening-balance{font-size:13px}
}
