/* Monthly statements: clear cell boundaries, restrained color, aligned amounts. */
.billing-page{--bill-line:#dbe5e9;--bill-muted:#7c8f99;--bill-ink:#2b4856}
.billing-page .panel{border-color:var(--bill-line);border-radius:12px;box-shadow:0 3px 14px #26465704}
.statement-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:#fff}
.statement-header h2{margin:0;color:#244653;font-size:20px;line-height:1.4;font-weight:650;letter-spacing:.2px}
.statement-header p{margin:7px 0 0;font-size:12px;color:var(--bill-muted);line-height:1.6}
.statement-meta-dot{padding:0 5px;color:#b1bdc3}
.statement-history{display:inline-block;margin-left:8px;padding:1px 6px;border-radius:4px;background:#f1f4f6;color:#718590;font-size:11px}
.statement-header .calendar-trigger{flex:none;min-height:38px;padding:7px 11px;border-color:#d6e2e7;color:#3b6072;background:#f8fbfc;font-size:13px}
.statement-print-month{display:none}
.billing-balances{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.2fr);border-top:1px solid var(--bill-line);border-bottom:1px solid var(--bill-line)}
.billing-balance{padding:17px 18px 18px;border-right:1px solid var(--bill-line);min-width:0;background:#f5f8fb}
.billing-balance:last-child{border-right:0}
.billing-balance>span{display:flex;gap:6px;align-items:baseline;font-size:12px;font-weight:500;color:#6a828f;white-space:nowrap}
.billing-balance small{font-size:10px;font-weight:400;color:#95a5ad}
.billing-balance strong{display:block;margin-top:7px;font-size:23px;line-height:1.3;font-weight:600;letter-spacing:-.4px;font-variant-numeric:tabular-nums;white-space:nowrap;color:#36596c}
.balance-charges{background:#fdfaf3}.balance-charges strong{color:#716044}
.balance-payments{background:#f1f8f5}.balance-payments strong{color:#37715c}
.balance-deductions{background:#f8f7f4}.balance-deductions strong{color:#737469}
.balance-closing{background:#eaf3f4;box-shadow:inset 0 3px #568391}
.balance-closing>span{color:#3c6573}.balance-closing strong{color:#205363;font-size:25px;font-weight:650}
.billing-table{table-layout:fixed;width:100%;font-size:13px;line-height:1.5;color:var(--bill-ink)}
.billing-table th{padding:11px 10px;background:#edf3f7;border-right:1px solid var(--bill-line);border-bottom:1px solid var(--bill-line);font-size:12px;font-weight:500;color:#647f8f;white-space:normal;vertical-align:middle}
.billing-table th:last-child,.billing-table td:last-child{border-right:0}
.billing-table td{padding:11px 10px;border-top:1px solid var(--bill-line);border-right:1px solid var(--bill-line);white-space:normal;vertical-align:middle;overflow-wrap:anywhere}
.billing-table tbody tr:first-child td{border-top:0}
.billing-table tbody tr:nth-child(even)>td{background-image:linear-gradient(#678ca803,#678ca803)}
.billing-table tbody tr:hover>td{box-shadow:inset 0 0 0 100px #537f9108}
.billing-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.billing-unit{display:block;margin-top:2px;font-size:10px;font-weight:400;color:#93a3ae;white-space:nowrap}
.statement-table{min-width:920px}
.statement-table th:nth-child(1){width:12%}.statement-table th:nth-child(2){width:16%}.statement-table th:nth-child(3){width:10%}.statement-table th:nth-child(4){width:19%}.statement-table th:nth-child(5){width:11%}.statement-table th:nth-child(6){width:10%}.statement-table th:nth-child(7){width:9%}.statement-table th:nth-child(8){width:13%}
.billing-table .bill-date{background:#f4f8fb;color:#5c7786;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.billing-doc{display:block;margin-top:4px;font-size:10px;font-weight:400;line-height:1.4;color:#98a9b3;white-space:nowrap}
.bill-incoming{background:#f9fbfd}
.bill-kind{background:#fcfdfd}
.bill-name{background:#fff;font-weight:500;color:#335262}
.bill-name>span{display:block;line-height:1.6}
.bill-spec{background:#f8fafc;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;color:#3b6176}
.bill-weight{background:#fbfcfd;color:#456576}
.bill-price{background:#fdfbf7;color:#7e725a}
.bill-amount{background:#f0f7f5;color:#245d56;font-size:15px;font-weight:600}
.billing-kind{display:inline-block;max-width:100%;padding:3px 6px;border:1px solid #dfe8eb;border-radius:5px;font-size:11px;line-height:1.4;font-weight:500;background:#f1f6f7;color:#5a7b88}
.kind-sale{background:#fcf6e8;border-color:#ece0bd;color:#8c7340}
.kind-return,.kind-scrap{background:#f2f4f6;border-color:#e1e5e8;color:#7a8b95}
.kind-payment{background:#edf6f1;border-color:#d8e8df;color:#4a7a63}
.kind-deduction{background:#faf5ed;border-color:#e9dfcb;color:#8a7650}
.billing-page .incoming-dates{display:inline-flex;flex-direction:column;flex-wrap:nowrap;gap:4px;width:max-content;max-width:100%;align-items:stretch}
.billing-page .incoming-date{width:auto;min-width:64px;box-sizing:border-box;justify-content:center;text-align:center;padding:3px 8px;border-color:#d9e5ef;border-radius:4px;background:#eef5fb;color:#5a7a91;font-size:11px;line-height:1.5;font-weight:500}
.billing-page .incoming-source{padding:3px 6px;border-radius:4px;background:#f0f3f6;color:#718493;font-size:12px;line-height:1.5}
.excluded-note{display:block;margin-top:5px;color:#9b7c44;font-size:10px;font-weight:400;line-height:1.5}
.billing-excluded .bill-amount{color:#89999f;background:#f6f8f8}
.statement-bottom{display:flex;justify-content:space-between;gap:16px;padding:9px 14px;border-top:1px solid var(--bill-line);background:#fafcfd;color:#91a1aa;font-size:11px}
.billing-table .empty,.billing-empty{padding:32px 18px;text-align:center;color:#96a5ac;background:#fbfcfd;font-size:13px;font-weight:400}
.cash-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 22px;border-bottom:1px solid var(--bill-line);background:#fff}
.cash-heading h2{font-size:16px;line-height:1.5;font-weight:600;color:#345563;margin:0}
.cash-heading>span{font-size:12px;color:#879aa3}
.cash-table{min-width:740px}
.cash-table th:nth-child(1){width:14%}.cash-table th:nth-child(2){width:13%}.cash-table th:nth-child(3){width:17%}.cash-table th:nth-child(4){width:15%}.cash-table th:nth-child(5){width:27%}.cash-table th:nth-child(6){width:14%;text-align:right}
.cash-table td{padding-top:12px;padding-bottom:12px}
.cash-table td:nth-child(2){background:#fbfcfd}.cash-table td:nth-child(3){background:#f0f7f5}.cash-table td:nth-child(4){background:#f8fafb}.cash-table td:nth-child(5){background:#fff}.cash-table td:nth-child(6){background:#f9fbfc}
.cash-amount{font-size:15px;font-weight:600;color:#386b60}
.cash-note{color:#758b96;font-size:12px;line-height:1.6}
.billing-table .cash-actions{text-align:right;white-space:nowrap}
.cash-actions .link{padding:3px 4px;font-size:12px;font-weight:500}.cash-actions .cash-void{color:#929fa6}
.cash-table .tag{display:block;width:max-content;margin-top:4px;font-size:10px;padding:1px 5px}
.cash-history{padding:18px 22px;background:#f8fbfa}
.cash-history>div{display:flex;align-items:baseline;gap:18px;font-size:13px;color:#789087}
.cash-history strong{font-size:22px;font-weight:600;color:#4e796c;font-variant-numeric:tabular-nums}
.cash-history p{margin:8px 0 0;font-size:12px;color:#83978f;line-height:1.7}
.cash-archive{padding:0;margin-bottom:15px;border:1px solid var(--bill-line);border-radius:9px;overflow:hidden;background:#fff}
.cash-archive>summary{list-style:none;display:flex;align-items:center;gap:8px;padding:13px 16px;background:#f5f8fa;color:#76909e;font-size:13px;font-weight:500}
.cash-archive>summary::-webkit-details-marker{display:none}
.cash-archive-chevron{font-size:20px;line-height:1;transition:transform 240ms cubic-bezier(.22,.75,.25,1)}
.cash-archive>summary[aria-expanded=true] .cash-archive-chevron{transform:rotate(90deg)}
.cash-archive-count{margin-left:auto;color:#98a8b0;font-size:12px}
.billing-note{margin:10px 2px 22px;color:#879aa4;font-size:12px;line-height:1.7}
@media screen and (max-width:1100px){.billing-balance{padding:15px 12px}.billing-balance strong{font-size:19px}.balance-closing strong{font-size:21px}}
@media screen and (max-width:700px){
 .statement-header{padding:17px 16px;align-items:flex-start;gap:12px;flex-wrap:wrap}
 .statement-header h2{font-size:18px}.statement-header p{font-size:11px;margin-top:5px}
 .statement-header .calendar-trigger{font-size:12px;min-height:35px;padding:6px 9px}
 .billing-balances{grid-template-columns:repeat(2,minmax(0,1fr))}
 .billing-balance{padding:13px 16px;border-bottom:1px solid var(--bill-line)}
 .billing-balance:nth-child(even){border-right:0}.billing-balance strong{font-size:22px}
 .balance-closing{grid-column:1/-1;border-bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:none}
 .balance-closing strong{font-size:25px;margin-top:0}
 .cash-heading{padding:14px 16px}.cash-heading h2{font-size:15px}
 .billing-page .tablewrap{scrollbar-width:thin;scrollbar-color:#b9cbd5 #f4f7f9}
 .billing-table .bill-date,.billing-table th:first-child{position:sticky;left:0;z-index:1;box-shadow:1px 0 #dbe5e9}
 .billing-table th:first-child{background:#edf3f7}
 .cash-history{padding:16px}.cash-history>div{flex-wrap:wrap;gap:5px 14px}
}
@media(prefers-reduced-motion:reduce){.cash-archive-chevron{transition:none}}
@media print{
 .billing-page{--bill-line:#cbd5da;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .billing-page .panel{border:1px solid var(--bill-line);border-radius:0;box-shadow:none;overflow:visible;margin-bottom:14px}
 .statement-header{padding:12px 14px}.statement-header h2{font-size:17px}.statement-header p{font-size:10px}
 .statement-print-month{display:block;font-size:14px;color:#3d5d6c}
 .billing-balances{grid-template-columns:repeat(5,minmax(0,1fr))}
 .billing-balance{padding:10px 12px;break-inside:avoid}.billing-balance strong,.balance-closing strong{font-size:18px}
 .billing-balance>span{font-size:11px}.balance-closing{box-shadow:none}
 .billing-table{min-width:0!important;font-size:10px}.billing-table th{font-size:10px;padding:7px 6px}
 .billing-table td{padding:7px 6px}.billing-table .bill-date{font-size:10px;position:static}
 .bill-spec,.bill-amount,.cash-amount{font-size:11px}.billing-kind{font-size:9px;padding:2px 4px}
 .billing-unit{font-size:8px}.billing-page .incoming-date{font-size:9px;padding:2px 4px}.billing-page .incoming-source{font-size:9px}
 .billing-table thead{display:table-header-group}.billing-table tr{break-inside:avoid}
 .cash-table th:last-child,.cash-table td:last-child{display:none}
 .cash-table th:nth-child(1){width:15%}.cash-table th:nth-child(2){width:15%}.cash-table th:nth-child(3){width:18%}.cash-table th:nth-child(4){width:18%}.cash-table th:nth-child(5){width:34%}
 .cash-heading{padding:10px 12px}.cash-heading h2{font-size:13px}.statement-bottom{padding:7px 10px;font-size:9px}
}
