        /* ── Tables ── */
        .tbl-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:auto}
        table{width:100%;border-collapse:collapse;font-size:18px}
        thead th{
            padding:13px 14px;text-align:left;
            font-size:18px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text3);
            border-bottom:1px solid var(--border);white-space:nowrap;
            background:rgba(0,0,0,.18);position:sticky;top:0;
        }
        tbody tr{border-bottom:1px solid var(--border);transition:background .1s}
        tbody tr:last-child{border-bottom:none}
        tbody tr:hover{background:rgba(255,255,255,.02)}
        tbody td{padding:11px 14px;color:var(--text2);white-space:nowrap}
        tbody td:first-child{color:var(--text);font-weight:500}

        .inp{
            background:transparent;border:1px solid transparent;
            color:var(--text);font-family:inherit;font-size:18px;
            padding:4px 8px;border-radius:6px;width:110px;text-align:right;outline:none;
            transition:border-color .14s,background .14s;
        }
        .inp:focus{border-color:var(--border-g);background:rgba(42,120,70,.1)}
        .inp:hover:not(:focus){border-color:var(--border);background:rgba(255,255,255,.03)}

        /* ── Buttons ── */
        .btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;font-size:18px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid transparent;transition:all .14s}
        .btn-p{background:var(--g3);border-color:var(--border-g);color:var(--g2)}
        .btn-p:hover{background:var(--g4);color:#fff}
        .btn-g{background:transparent;border-color:var(--border);color:var(--text2)}
        .btn-g:hover{background:var(--bg-card-h);color:var(--text)}
        .btn-d{background:transparent;border-color:rgba(248,113,113,.25);color:var(--red);padding:4px 9px;font-size:18px}
        .btn-d:hover{background:var(--red-bg)}


        /* ── Empty state ── */
        .empty{text-align:center;padding:52px 24px;color:var(--text3)}
        .empty .ico{font-size:32px;margin-bottom:10px}
        .empty p{font-size:18px;margin-bottom:14px}


        /* ── Income Dashboard ── */
        .cd-tab-bar{display:flex;gap:4px;margin-bottom:22px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;padding:4px}
        .cd-tab{flex:1;padding:9px 12px;border-radius:7px;font-size:18px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid transparent;background:transparent;color:var(--text2);transition:all .14s;text-align:center}
        .cd-tab:hover{color:var(--text);background:rgba(255,255,255,.04)}
        .cd-tab.active{background:var(--gm);color:var(--g2);border-color:var(--border-g)}
        .cd-section{display:none}.cd-section.active{display:block}
        .inp-month-bar{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}
        .inp-section{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:16px}
        .inp-section-hdr{padding:13px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:9px}
        .inp-section-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
        .inp-section-title{font-size:18px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}
        .inp-row{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--border)}
        .inp-row:last-child{border-bottom:none}
        .inp-row-lbl{font-size:18px;color:var(--text2)}
        .inp-row-total{display:flex;align-items:center;justify-content:space-between;padding:13px 20px;background:rgba(42,120,70,.04);border-top:1px solid rgba(42,120,70,.15)}
        .inp-total-lbl{font-size:18px;font-weight:700;color:var(--g2)}
        .inp-total-val{font-size:18px;font-weight:700;color:var(--g1)}
        .cd-fml-ref{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px;margin-bottom:18px;font-size:18px;color:var(--text3);line-height:1.9}
        .cd-fml-ref strong{color:var(--text2);display:block;margin-bottom:2px}
        .roll-inner{font-size:18px;color:var(--text2);line-height:2.1;margin-top:8px}
        .roll-val-pos{color:var(--g1);font-weight:700}
        .roll-val-neg{color:var(--red);font-weight:700}
        .cv-pos{color:var(--g1)!important}
        .cv-neg{color:var(--red)!important}
        .cv-muted{color:var(--text3)!important}
        .cv-amber{color:var(--amber)!important}
        #page-cash .inp{width:140px}
        .di-2col{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
        @media(max-width:700px){.di-2col{grid-template-columns:1fr}}
        .inp-row-calc{font-weight:700;font-size:18px;color:var(--text);min-width:100px;text-align:right}
        .di-calc-row{display:flex;align-items:center;justify-content:space-between;padding:8px 20px;border-bottom:1px solid rgba(255,255,255,.04)}
        .di-calc-row:last-child{border-bottom:none}
        .di-calc-lbl{font-size:18px;color:var(--text3)}
        .modal-wide{max-width:520px!important}
