/* Plumb Job ledger and Reconciliation (ledger.js). 2026-10-27 */
.lg-card{margin-bottom:18px;border-left:4px solid var(--navy)}
.lg-card .cardhead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.lg-card .cardhead p{margin:4px 0 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.lg-acts{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.lg-revnote{margin:0 0 12px;font-size:13px;color:var(--muted)}
.lg-flag{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 14px;margin:0 0 8px;border-radius:var(--r-md,6px);background:var(--info-soft,#eef4fb);font-size:13px}
.lg-flag div{display:flex;flex-direction:column;gap:2px;min-width:0}.lg-flag b{color:var(--navy)}.lg-flag span{color:var(--muted)}
.lg-flag.red{background:var(--danger-soft,#fdecee)}.lg-flag.red b{color:var(--danger,#b4232f)}
.lg-flag.amber{background:var(--amber-soft,#fdf3e2)}.lg-flag.amber b{color:var(--amber,#9a5b00)}
.lg-flag .btn{flex-shrink:0}
.lg-stats{margin:14px 0 18px}
.lg-owe{color:var(--danger,#b4232f)!important}.lg-over{color:var(--amber,#9a5b00)!important}.lg-under{color:var(--blue-ink,#1d5f99)!important}
.lg-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.lg-cols h3,.lg-fam h3{font:700 13px var(--text,inherit);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 6px}
table.lg-t{width:100%;border-collapse:collapse}
table.lg-t td{padding:8px 4px;border-bottom:1px solid var(--line-soft,#edf0f4);font-size:14px;vertical-align:top}
table.lg-t td small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
table.lg-t td.num{text-align:right;white-space:nowrap}
table.lg-t tr.muted td{color:var(--muted)}
table.lg-t tr.strong td{font-weight:600}
table.lg-t tr.total td{border-top:2px solid var(--navy);border-bottom:0;font:700 16px var(--head,inherit);color:var(--navy);padding-top:10px}
table.lg-t tr.lg-split td{font-size:13px;color:var(--muted);padding-left:14px}
.lg-segsum{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:12px;color:var(--muted)}.lg-segsum b{color:var(--ink)}
.lg-fam{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
.lg-fam tr.here td{background:var(--sunken,#f3f5f8)}
.lg-fam td small,.lg-jobs td small{display:block;font-size:12px;color:var(--muted)}
.lg-note{font-size:13px;color:var(--muted);margin:8px 0 0}
.lg-lead{margin:0 0 14px;max-width:900px}
.lg-more{margin:0 0 18px}
.lg-more>summary{cursor:pointer;font-weight:600;color:var(--muted);padding:8px 0;font-size:13px}
.lg-more[open]>summary{margin-bottom:10px}
.lg-dialog form .two{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.lg-dialog .check{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;font-weight:400}
.lg-dialog fieldset.lg-out{border:1px solid var(--line);border-radius:var(--r-md,6px);padding:6px 14px 12px;margin:6px 0 4px}
.lg-dialog fieldset.lg-out legend{font-weight:600;padding:0 6px}
.lg-dlgacts{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.lg-confirm{max-width:560px}
.lg-bulk{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 14px;margin:0 0 12px;background:var(--navy);color:#fff;border-radius:var(--r-md,6px)}
.lg-bulk b{margin-right:6px}
.lg-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:320px}
.lg-gap{color:var(--amber,#9a5b00)!important}
.lg-jobs td{vertical-align:top}
.lg-jobs tr.click,.lg-fam tr.click,.card.tablewrap tr.click{cursor:pointer}
.lg-codes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.lg-code{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-left:4px solid var(--steel,#8a96a8);border-radius:var(--r-md,6px);background:var(--raised,#fff);cursor:pointer;font:inherit;color:var(--ink)}
.lg-code:hover{box-shadow:var(--sh1)}
.lg-code b{font:700 24px var(--head,inherit);color:var(--navy)}
.lg-code span{font-weight:600}
.lg-code small{font-size:12px;color:var(--muted);line-height:1.35}
.lg-code.red{border-left-color:var(--danger,#b4232f)}.lg-code.amber{border-left-color:var(--amber,#c27a00)}.lg-code.blue{border-left-color:var(--blue,#8cc1e8)}
tr.lg-sub td{border-top:2px solid var(--navy);font-weight:600}
@media(max-width:1100px){.lg-cols{grid-template-columns:1fr}}
@media(max-width:640px){.lg-flag{flex-direction:column;align-items:flex-start}.lg-dialog form .two{grid-template-columns:1fr}.lg-chips{max-width:none}}
