/* Bookkeeping Ledger — clean green ledger workspace with tabs, tables and reports. */
.lg-hero{background:radial-gradient(circle at 92% 18%,#2ecc8a33,transparent 38%),linear-gradient(120deg,#16302a,#1d2140 75%)}
.lg{--g:#2ecc8a}.lg-frame{border:1px solid var(--usp-line,#3a3352);border-radius:16px;background:#161a24;margin-top:14px;overflow:hidden;display:flex;flex-direction:column;color:#e4e8ef}
.lg-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 10px;background:#1e2330;border-bottom:1px solid #313849}
.lg-group{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.lg-right{margin-left:auto}
.lg .lg-btn{min-height:32px;padding:4px 10px;font-size:.84rem;border-radius:8px;background:#161a24;border:1px solid #39415a;color:#e4e8ef;display:inline-flex;align-items:center;gap:4px;cursor:pointer;white-space:nowrap}
.lg .lg-btn.usp-primary{background:var(--g);color:#05261a;border-color:transparent;font-weight:700}.lg .lg-btn[aria-pressed=true]{background:#2d3550;border-color:#8aa}.lg .lg-btn.small{min-height:26px;padding:1px 8px;font-size:.78rem}.lg .lg-btn.danger{color:#ff8a8a}
.lg .lg-frame input,.lg .lg-frame select{height:32px;min-height:0;padding:2px 8px;font-size:.84rem;background:#10131b;border:1px solid #39415a;color:#e4e8ef;border-radius:7px;width:auto}
.lg .lg-frame input[type=checkbox]{width:16px;height:16px;accent-color:var(--g);padding:0}
.lg .lg-biz{font-weight:700;width:200px;max-width:44vw}.lg-lab{display:inline-flex;gap:5px;align-items:center;font-size:.82rem;color:#aab3c5}
.lg-tabs{display:flex;gap:2px;padding:6px 8px 0;border-bottom:1px solid #313849;overflow-x:auto;background:#1a1f2b}.lg .lg-tabs button{min-height:34px;padding:4px 12px;font-size:.84rem;border-radius:8px 8px 0 0;background:none;border:0;color:#aab3c5;white-space:nowrap}.lg .lg-tabs button[aria-selected=true]{background:#161a24;color:#fff;font-weight:700;box-shadow:inset 0 2px 0 var(--g)}
.lg-body{padding:14px;min-height:520px;height:min(74vh,760px);overflow:auto}
.lg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.lg-card{background:#1e2330;border:1px solid #313849;border-radius:12px;padding:10px 12px}.lg-card small{display:block;color:#aab3c5;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em}.lg-card b{font-size:1.35rem;display:block;margin-top:2px}.lg-card .pos{color:var(--g)}.lg-card .neg{color:#ff8a8a}
.lg-grid2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px;margin-top:12px}
.lg-panel{background:#1e2330;border:1px solid #313849;border-radius:12px;padding:10px 12px;min-width:0}.lg-panel h3{margin:0 0 8px;font-size:.92rem}
.lg-chart{width:100%;height:220px;display:block}
.lg-bar{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:6px;align-items:center;font-size:.8rem;margin:5px 0}.lg-bar i{display:block;height:6px;border-radius:3px;background:var(--g);margin-top:3px}
.lg-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:10px}
.lg-tablewrap{overflow:auto;border:1px solid #313849;border-radius:10px;max-height:calc(100% - 52px)}
.lg-table{width:100%;border-collapse:collapse;font-size:.82rem}.lg-table th,.lg-table td{padding:5px 8px;border-bottom:1px solid #2a3040;text-align:left;white-space:nowrap}.lg-table th{position:sticky;top:0;background:#232a3a;z-index:1;font-weight:700;color:#cbd3e1;cursor:pointer;user-select:none}
.lg-table td.num,.lg-table th.num{text-align:right;font-variant-numeric:tabular-nums}.lg-table tr:hover td{background:#1e2330}.lg-table .in{color:var(--g)}.lg-table .out{color:#ffb0b0}.lg-table .desc{max-width:260px;overflow:hidden;text-overflow:ellipsis}
.lg-table select{height:26px!important;font-size:.78rem!important;max-width:170px}.lg-table tr.dup td{background:#3a2a1a}.lg-table tr.tot td{font-weight:700;border-top:2px solid #39415a;background:#1a1f2b}.lg-table tr.sec td{font-weight:700;color:var(--g);background:#161a24}
.lg-tag{display:inline-block;padding:1px 7px;border-radius:9px;font-size:.72rem;background:#2d3550}.lg-tag.warn{background:#5a3b12;color:#ffd08a}
.lg-empty{color:#aab3c5;text-align:center;padding:30px}
.lg-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;align-items:end;margin-bottom:12px}.lg-form label{display:flex;flex-direction:column;gap:3px;font-size:.76rem;color:#aab3c5}.lg .lg-form input,.lg .lg-form select{width:100%}
.lg-drop{border:2px dashed #39415a;border-radius:12px;padding:22px;text-align:center;color:#aab3c5}.lg-drop.over{border-color:var(--g);background:#1e2330}
.lg-hint{font-size:.78rem;color:#aab3c5;line-height:1.5}
.lg-frame .usp-status:empty{display:none}.lg-frame .usp-status{margin:0;padding:6px 12px}
.lg-dlg{position:fixed;inset:0;margin:auto;height:fit-content;max-height:92vh;overflow:auto;box-sizing:border-box;border:1px solid var(--g);border-radius:14px;background:#161a24;color:#e4e8ef;padding:16px 18px;width:min(520px,94vw)}.lg-dlg::backdrop{background:#000a}.lg-dlg h3{margin:0 0 10px;padding-right:36px}.lg .lg-x{position:absolute;top:10px;right:10px;width:32px;height:32px;min-height:0;padding:0;border-radius:8px;background:#10131b;border:1px solid #39415a;color:#e4e8ef;font-size:16px;cursor:pointer}.lg .lg-x:hover{background:#2d3550}.lg-dlg .lg-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:14px;flex-wrap:wrap}
.lg .lg-dlg input,.lg .lg-dlg select,.lg .lg-dlg textarea{min-height:0;font-size:.86rem;height:32px;min-height:0;padding:2px 8px;background:#10131b;border:1px solid #39415a;color:#e4e8ef;border-radius:7px;width:100%;box-sizing:border-box}.lg-dlg textarea{height:60px}
.lg-dlg .lg-form{grid-template-columns:1fr 1fr}.lg-dlg .lg-form .wide{grid-column:1/-1}.lg-dlg label{display:flex;flex-direction:column;gap:3px;font-size:.76rem;color:#aab3c5}
.lg-seg{display:inline-flex;border:1px solid #39415a;border-radius:8px;overflow:hidden}.lg .lg-seg button{min-height:30px;padding:2px 10px;font-size:.8rem;background:#10131b;border:0;color:#cbd3e1;border-radius:0}.lg .lg-seg button[aria-pressed=true]{background:var(--g);color:#05261a;font-weight:700}
.lg-frame:fullscreen,.lg-frame.lg-full{position:fixed;inset:0;z-index:1000;margin:0;border:0;border-radius:0}.lg-frame:fullscreen .lg-body,.lg-frame.lg-full .lg-body{flex:1;height:auto}
@media(max-width:900px){.lg-grid2{grid-template-columns:minmax(0,1fr)}.lg-right{margin-left:0}.lg-body{height:auto;min-height:420px;padding:10px}.lg-tablewrap{max-height:65vh}
 .lg-frame:fullscreen,.lg-frame.lg-full{overflow-y:auto;display:block}.lg-frame:fullscreen .lg-body,.lg-frame.lg-full .lg-body{flex:none;height:auto}.lg-dlg .lg-form{grid-template-columns:1fr}}
