:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#17253c;background:#f6f8fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a5baff;outline-offset:2px}.layout{display:flex;min-height:100vh}.sidebar{width:238px;position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid #e8edf4;padding:28px 15px;display:flex;flex-direction:column;flex-shrink:0}.brand{display:flex;align-items:center;gap:12px;padding:0 12px 39px}.brandmark{background:#2455e8;border-radius:12px;color:#fff;font-size:24px;padding:9px 12px}.brand b{display:block;font-size:19px;letter-spacing:-.6px}.brand small{font-weight:700;letter-spacing:2px;color:#8c98ad;font-size:10px}.navtitle,.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.6px;color:#8997ad}.navtitle{padding:0 12px 12px}.nav{padding:13px 15px;background:transparent;border:0;border-radius:9px;text-align:left;color:#617087;font-weight:650;margin-bottom:5px}.nav:hover,.nav.active{background:#edf3ff;color:#2655df}.sidebottom{margin-top:auto;border-top:1px solid #eef0f5;padding:18px 6px}.info{font-size:11px;color:#8a96a8;line-height:2}.main{flex:1;min-width:0}.top{background:#fff;height:76px;border-bottom:1px solid #e7edf4;display:flex;align-items:center;justify-content:space-between;padding:0 35px;gap:16px}.breadcrumbs{font-size:11px;font-weight:800;letter-spacing:1.4px;color:#9ba5b6}.breadcrumbs span{color:#2c466e}.topactions{display:flex;gap:9px;align-items:center}.btn{border-radius:9px;padding:11px 15px;border:1px solid #dfe6ef;font-weight:700;font-size:12px;white-space:nowrap;display:inline-block}.btn.light{background:#fff;color:#51617a}.btn.primary{background:#2857df;color:white;border-color:#2857df}.btn:hover{filter:brightness(.96)}.content{max-width:1460px;margin:auto;padding:34px 36px}.headline{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:27px}.eyebrow{color:#2858db;margin:0 0 8px}h1{font-size:29px;letter-spacing:-1.1px;margin:0 0 6px}h2{font-size:17px;letter-spacing:-.35px;margin:0 0 5px}.muted{color:#8794a8;font-size:12px;margin:0}.filters label{font-size:11px;color:#74829a;font-weight:700;display:flex;flex-direction:column;gap:7px}select,input{background:#fff;border:1px solid #e0e6ef;border-radius:9px;padding:11px;color:#33445e;min-width:150px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:22px}.kpi{background:#fff;border:1px solid #e8edf4;box-shadow:0 6px 16px #1e334e05;text-align:left;border-radius:13px;padding:22px;min-height:150px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;transition:transform .15s,box-shadow .15s}.kpi:hover{transform:translateY(-3px);box-shadow:0 10px 24px #1e334e13}.kpi-label{color:#66748c;font-size:13px;font-weight:700;display:flex;gap:9px;align-items:center}.kpi-label>span:last-child{margin-left:auto;font-size:17px;color:#9daabd}.dot{height:10px;width:10px;display:inline-block;border-radius:50%}.green,.dot.green{background:#0ca76b}.red,.dot.red{background:#ed5064}.blue,.dot.blue{background:#386de8}.amber,.dot.amber{background:#f0a641}.kpi strong{font-size:27px;letter-spacing:-1px;font-weight:800;white-space:nowrap}.credit strong{color:#079f6a}.debit strong{color:#e04459}.balance strong{color:#2655dc}.pending strong{color:#b9791b}.kpi small{color:#8997aa;font-size:11px}.panelrow{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:19px;margin-bottom:22px}.panel{background:#fff;border:1px solid #e8edf4;border-radius:13px;padding:23px;min-width:0;margin-bottom:22px}.panelrow .panel{margin:0}.panelhead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px}.legend{display:flex;align-items:center;gap:8px;color:#8995a5;font-size:11px;white-space:nowrap}.legend i{width:9px;height:9px;border-radius:50%;display:inline-block;margin-left:8px}.chart{height:230px;display:flex;align-items:flex-end;justify-content:space-around;gap:24px;border-bottom:1px solid #e8edf2;padding:10px 15px 0}.chartgroup{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:25px}.bars{width:100%;height:190px;display:flex;align-items:flex-end;justify-content:center;gap:5px}.bar{min-height:2px;max-width:32px;width:28%;border-radius:5px 5px 0 0}.bar.credit{background:#11b980}.bar.debit{background:#ed6072}.axislabel{height:22px;padding-top:7px;font-size:11px;font-weight:700;color:#8795a9}.donutwrap{display:flex;justify-content:center;align-items:center;margin:9px auto 16px;width:175px;height:175px;border-radius:100%}.donutinner{width:125px;height:125px;border-radius:100%;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}.donutinner b{font-size:22px}.donutinner small{color:#8290a6;font-size:11px}.donutlegend{display:flex;gap:16px;justify-content:center;color:#69758b;font-size:12px}.donutlegend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;padding:14px 11px;color:#8996a8;font-size:10px;letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid #ecf0f5}td{padding:14px 11px;border-bottom:1px solid #f0f3f8;color:#52617a}td strong{font-size:12px;color:#283852}tr:last-child td{border:0}td.amount{text-align:right;font-weight:800;white-space:nowrap}td.amount.credit{color:#0caa70}td.amount.debit{color:#e34d62}.pill{padding:5px 9px;border-radius:8px;font-size:10px;font-weight:800;display:inline-block}.pill.paid{color:#078c61;background:#e4f8ef}.pill.open{color:#bc8219;background:#fff5dd}.pill.entry{color:#1166bb;background:#eaf2ff}.pill.historic{color:#7d899a;background:#f0f3f7}.textbtn{color:#2b5bda;background:none;border:0;font-size:12px;font-weight:750}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.toolbar input{flex:1;min-width:250px}.toolbar select{min-width:150px;max-width:250px}.tableaction{border:0;background:#edf2ff;color:#3158cb;border-radius:7px;padding:7px 10px}.categoryline{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px;border:0;border-bottom:1px solid #eff1f5;padding:16px 7px;background:white;text-align:left;color:#3e4d62}.categoryline:hover{background:#f8faff}.categoryline b{color:#e04459}.modal{position:fixed;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;padding:20px}.modal[hidden],[hidden]{display:none!important}.backdrop{position:absolute;inset:0;background:#11203a99;backdrop-filter:blur(2px)}.dialog{position:relative;width:min(920px,100%);max-height:min(90vh,900px);overflow:auto;background:white;border-radius:17px;padding:27px;box-shadow:0 30px 100px #0004}.modalhead{display:flex;justify-content:space-between;gap:20px;margin-bottom:21px}.modalhead h2{font-size:24px}.close{border:0;background:#f0f3f9;width:35px;height:35px;border-radius:10px;font-size:24px;color:#57667b}.modalstats{background:#f6f8fd;border-radius:10px;padding:15px;margin-bottom:16px;display:flex;gap:18px;justify-content:space-between;align-items:center}.modalstats b{font-size:22px}.empty{text-align:center;color:#93a0b1;padding:35px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.formgrid label{display:flex;flex-direction:column;gap:6px;color:#58677e;font-size:12px;font-weight:700}.formgrid input,.formgrid select{width:100%}.formgrid .full{grid-column:1/-1}.formactions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.alert{background:#fff6e3;border:1px solid #f6dfa4;color:#865e14;padding:12px;border-radius:9px;font-size:12px;margin:13px 0}.mobilebrand{display:none}footer{color:#9ba6b7;font-size:11px;text-align:center;padding:14px}#categoryList{max-height:600px;overflow:auto}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.panelrow{grid-template-columns:1fr}.sidebar{width:205px}.top{padding:0 20px}.content{padding:25px 20px}}@media(max-width:700px){.layout{display:block}.sidebar{position:static;width:100%;height:auto;padding:10px;display:flex;flex-direction:row;flex-wrap:wrap;gap:4px}.brand{padding:5px 8px}.navtitle,.sidebottom{display:none}.nav{font-size:11px;padding:10px;margin:0}.top{height:auto;padding:12px;flex-wrap:wrap}.breadcrumbs{display:none}.mobilebrand{display:block;font-weight:800}.topactions{flex-wrap:wrap}.btn{padding:9px 11px}.content{padding:22px 12px}.headline{align-items:flex-start;flex-wrap:wrap}.cards{gap:9px}.kpi{padding:14px;min-height:125px}.kpi strong{font-size:20px}.kpi-label{font-size:11px}.panel{padding:15px}.formgrid{grid-template-columns:1fr}.dialog{padding:17px}}
