:root{--bg:#f4f6f9;--card:#fff;--ink:#1f2733;--muted:#6b7684;--line:#e4e8ee;--brand:#4f7d5c;--brand-d:#3a5f45;--green:#2f8f63;--red:#b9564e;--chip:#e9efe9}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}.app{max-width:1120px;margin:0 auto}header.top{background:var(--brand);color:#fff;align-items:center;gap:10px;padding:16px 20px;display:flex}header.top .logo{background:#ffffff2b;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;display:flex}header.top h1{margin:0;font-size:18px}header.top .sub{opacity:.85;margin-top:1px;font-size:12px}nav.tabs{border-bottom:1px solid var(--line);z-index:5;background:#fff;gap:2px;padding:0 12px;display:flex;position:sticky;top:0;overflow-x:auto}nav.tabs button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;padding:14px 16px;font-size:14px;font-weight:600}nav.tabs button.on{color:var(--brand);border-bottom-color:var(--brand)}.wrap{padding:14px 20px 60px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spacer{flex:1}.btn{cursor:pointer;border:none;border-radius:9px;padding:10px 14px;font-size:13px;font-weight:700}.btn.p{background:var(--brand);color:#fff}.btn.g{color:var(--brand-d);background:#eaf3ec}.btn.o{color:var(--ink);border:1px solid var(--line);background:#fff}select,input,textarea{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:8px 10px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-top:14px;padding:16px}.card h3{margin:0 0 2px;font-size:15px}.card .desc{color:var(--muted);margin-bottom:12px;font-size:12.5px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px}th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:#fafbfc;font-size:11.5px}td.num{text-align:right;font-variant-numeric:tabular-nums}td.desc-cell{text-overflow:ellipsis;max-width:220px;overflow:hidden}table td select,table td input{box-sizing:border-box;width:100%;min-width:0}:is(table td:has(select),table td:has(input)){min-width:110px}.tablefoot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.tablefoot .note{margin:0}.cardhead{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.cardhead h3{margin:0}.credit{color:var(--green);font-weight:600}.debit{color:var(--red);font-weight:600}.pill{background:var(--chip);color:var(--brand-d);border-radius:20px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-block}.srcfilter{flex-wrap:wrap;gap:8px;margin-top:0;display:flex}.filterbar{flex-wrap:wrap;gap:10px;display:flex}.filterbar select{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:170px;padding:8px 12px;font-size:13px}.srcfilter .s{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:20px;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;display:flex}.srcfilter .s.on{background:var(--brand);color:#fff;border-color:var(--brand)}.empty{color:var(--muted);text-align:center;padding:28px 10px}.catlist .item{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:11px 12px;display:flex}.catlist .item .x{color:var(--red);cursor:pointer;font-size:12.5px;font-weight:700}.catgroup{margin-bottom:8px}.catgroup .item{margin-bottom:0}.arw{width:14px;color:var(--muted);font-size:11px;display:inline-block}.cnt{color:var(--muted);font-size:12px}.subwrap{border:1px solid var(--line);background:#fafbfc;border-top:none;border-radius:0 0 10px 10px;margin-top:-8px;padding:10px 12px}.subitem{justify-content:space-between;align-items:center;padding:6px 4px;font-size:13px;display:flex}.subitem .x{color:var(--red);cursor:pointer;font-size:12px;font-weight:700}.subempty{color:var(--muted);padding:4px;font-size:12.5px}.note{color:var(--muted);margin-top:10px;font-size:12px}.tablewrap{overflow-x:auto}header.top .logo-img{object-fit:contain;background:#fff2;border-radius:9px;width:40px;height:40px;padding:3px}.catlist .item input{border:1px solid var(--line);border-radius:6px;padding:4px 6px}.btn.o{cursor:pointer}.katblok{margin-bottom:20px}.katbar{background:#eef2f7;border-radius:7px;height:28px;margin-top:6px;display:flex;overflow:hidden}.katseg{color:#fff;white-space:nowrap;justify-content:center;align-items:center;min-width:2px;height:100%;padding:0 4px;font-size:11px;font-weight:600;display:flex;overflow:hidden}.katleg{flex-wrap:wrap;gap:16px;margin-top:9px;display:flex}.katlegit{font-size:12.5px;line-height:1.35}.katlegit .dot{vertical-align:middle;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.katpct{color:var(--muted);font-size:11.5px}.katval{font-size:12.5px;font-weight:700}.katblok-klik{cursor:pointer;border-radius:8px;margin:0 -6px 14px;padding:6px;transition:background .12s}.katblok-klik:hover{background:#f4f7f5}.subdet{margin-top:4px}.subdet-h,.subdet-r{border-bottom:1px solid var(--line);grid-template-columns:1fr 60px 140px;align-items:center;gap:8px;padding:9px 4px;display:grid}.subdet-h{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:11px;font-weight:600}.subdet-h span:nth-child(2),.subdet-h span:nth-child(3),.subdet-r span:nth-child(2),.subdet-r span:nth-child(3){text-align:right}.subdet-r{font-size:13px}.subdet-r .dot{vertical-align:middle;border-radius:3px;width:10px;height:10px;margin-right:7px;display:inline-block}.loantbl{border-collapse:collapse;width:100%;font-size:13px}.loantbl th,.loantbl td{border-bottom:1px solid var(--line);white-space:nowrap;padding:9px 10px}.loantbl th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);text-align:left;background:#fafbfc;font-size:11px}.loantbl th.num,.loantbl td.num{text-align:right;font-variant-numeric:tabular-nums}.loantbl .loan-cat td{background:#f7faf8;font-weight:700}.loantbl .loan-sub td{color:var(--muted);padding-left:18px}.loantbl .loan-sub td:first-child{font-weight:400}.loantbl .loan-tot td{border-top:2px solid var(--line);background:#fafbfc;font-weight:700}.bottomnav{display:none}@media (width<=640px){.app{flex-direction:column;max-width:100%;height:100dvh;min-height:0;display:flex}header.top{flex:none}nav.tabs{display:none}.wrap{flex:1;min-height:0;padding:12px 14px;overflow:auto}.bottomnav{border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#fff;flex:none;display:flex;box-shadow:0 -4px 18px #0f172a12}.bottomnav button{cursor:pointer;color:#9bb3a4;background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:12px 2px;display:flex}.bottomnav button.on{color:var(--brand)}}
