# Ledger
Sổ sách / biên lai cuối ngày: tiêu đề mục, các dòng thu chi, bảng kê theo món và dòng tổng; số căn phải, chữ số đều cột.
## Khi nào dùng
- Màn tổng kết ngày: Doanh thu, Tiền thuê, Điện nước, Lương, Lãi.
- Bảng kê bán theo món (món | giá TB | thu) kèm thanh doanh thu.
- Bảng nhỏ nhiều cột bằng `
`.
## Biến thể
| Biến thể | Lớp | Dùng khi |
|---|---|---|
| Khối | `tt-ledger` | Bao ngoài, bật `tabular-nums` |
| Tiêu đề mục | `tt-ledger__heading` | .rh: 1.1rem đậm, gạch dưới 2px |
| Dòng "nhãn — số" | `tt-ledger__line` (+ `--sub`) | Dòng chi phí, dòng con thụt 8px |
| Lưới 3 cột | `tt-ledger__head` / `__row` (+ `--sub`) | Món / giá / thu (62px, 76px) |
| Tổng | `tt-ledger__total` | Dòng cuối, đậm .95rem |
| Nhóm | `tt-ledger__group` | Nhãn nhóm .72rem |
| Bảng | `tt-ledger__table`, `__th`, `__td` | Bảng `` thực |
| Số | `tt-ledger__amount` (+ `--in` `link`, `--out` `warn`) | Số tiền không xuống dòng |
## Cấu trúc
```html
Tổng kết ngày 2
Doanh thu+1,02tr
Tiền thuê−40k
Lãi852k
```
Tiền đi qua `TTMU.formatMoney` ("−" là dấu trừ thật).
## Trạng thái
| Trạng thái | Hiệu ứng |
|---|---|
| `tt-ledger__row.is-zero` | Dòng mờ 55% (món không bán được) |
## Token sử dụng
`line`, `soft`, `link`, `warn`, `alpha-ledger-zero` (độ đục hàng không số liệu), `radius-*` (qua Progress), `space-4/6/8`.
## Khả năng tiếp cận
- Bảng dữ liệu thật nên dùng `` với `| `; lưới `div` chỉ là trình bày.
- Dấu "+" / "−" nằm trong chữ nên không chỉ dựa vào màu `link`/`warn`.
- Thanh doanh thu bên trong là Progress với `role="progressbar"`.
## Nên / Không nên
| Nên | Không nên |
|---|---|
| Số luôn ở cột phải | Căn trái số tiền |
| Giữ "Lãi" là dòng `__total` cuối | Dùng màu thay cho dấu +/− |
## Nguồn
`.rh`, `.thead`, `.trow`, `.trow.zero`, `.trow.sub`, `.tgrp`, `.ttot`, `.crow`, `.crow.sub`, `.ledger div`, `.ledger .tot`, `.revc`, `.gtab` — css/style.css; markup tổng kết ngày trong js/game.js.
- `.revc` gốc #2b78c5 → `link`. `.neg` không tìm thấy luật: dùng `warn`.
- Biến thể `.tt-ledger__line` theo `.crow` (.84rem, gạch đứt); `.ledger div` gốc (flex, 1.05rem cho `.tot`) gộp vào `__total`.
|