:root{font:15px/1.5 system-ui,sans-serif;color:#162b25;background:#f4f6f3;--green:#17664f;--line:#e1e8e2;--muted:#60756b}
*{box-sizing:border-box}body{margin:0;display:grid;grid-template-columns:228px minmax(0,1fr);min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #55a789;outline-offset:2px}
aside{background:#102b26;color:#fff;padding:26px 18px;display:flex;flex-direction:column;gap:46px}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:750;letter-spacing:-1px}.mark{display:grid;place-items:center;background:#d2efd9;color:#103f31;border-radius:12px;width:44px;height:44px;font-size:29px}.brand small{display:block;color:#9bb9ad;font-size:9px;letter-spacing:1.5px}nav{display:grid;gap:7px}nav button{display:flex;gap:10px;align-items:center;text-align:left;border:0;background:transparent;color:#c4d7d0;padding:12px;border-radius:9px}nav button[aria-current]{background:#254c40;color:#fff;font-weight:650}nav span{width:20px;font-size:19px}.device{margin-top:auto;color:#a7c9bb;font-size:12px}
main{padding:0 36px 36px;max-width:1460px;width:100%;margin:auto;align-self:start}header{display:flex;justify-content:space-between;gap:10px;padding:22px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}header span:first-child,.eyebrow{font-weight:750;letter-spacing:1.5px;color:var(--green)}.intro{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:32px 0 22px}.eyebrow{font-size:11px;margin:0 0 6px}h1,h2,p{margin-top:0}h1{font-size:clamp(27px,4vw,43px);letter-spacing:-.045em;line-height:1.1;margin-bottom:8px}h2{font-size:18px;margin-bottom:5px}p{color:var(--muted);margin-bottom:0}.actions{display:flex;gap:9px;flex-wrap:wrap}.primary,.secondary,.link{border:1px solid transparent;border-radius:9px;padding:10px 14px;font-weight:650}.primary{background:var(--green);color:white}.secondary{background:white;border-color:var(--line);color:#173d30}.link{background:#edf5ef;color:var(--green);padding:7px 10px}.primary:hover{background:#104e3b}.secondary:hover,.link:hover{background:#e2eee5}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.metric,.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:19px}.metric:first-child{background:#e5f3e8;border-color:#cce5d3}.metric .icon{display:grid;place-items:center;background:#eff6f0;width:32px;height:32px;border-radius:9px;color:var(--green);font-weight:800;margin-bottom:13px}.metric strong{display:block;font-size:clamp(19px,2.6vw,30px);letter-spacing:-.035em}.metric p,.sub{font-size:13px}.grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:15px;margin-bottom:16px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.bars{display:flex;justify-content:space-around;align-items:end;gap:12px;height:160px;padding-top:12px}.bar-item{width:12%;height:100%;display:flex;flex-direction:column;justify-content:end;gap:6px;text-align:center;color:var(--muted);font-size:11px}.bar{border-radius:6px 6px 1px 1px;background:#b0d6bd;min-height:3px}.bar-item:last-child .bar{background:var(--green)}.due-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.due-row small,.cell-sub{display:block;color:var(--muted)}.badge{display:inline-block;font-size:12px;padding:3px 9px;border-radius:20px;background:#fcf0d9;color:#7a5017;white-space:nowrap}.badge.good{background:#e6f4e9;color:#27613f}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th,td{padding:11px 9px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:12px}tr:last-child td{border-bottom:0}.money{font-weight:700}.empty{padding:17px 0}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.filters input{max-width:320px}.filters select{width:auto}.demo-note{margin:13px 0;font-size:12px}dialog{border:1px solid var(--line);border-radius:16px;padding:22px;width:min(480px,calc(100% - 24px));max-height:90vh}dialog::backdrop{background:#09211eb3}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.dialog-heading button{border:0;background:#eef4ef;border-radius:8px;font-size:22px;width:34px}label{display:grid;gap:4px;margin:12px 0;font-weight:600}input,select{width:100%;padding:9px;border:1px solid #cedbd2;border-radius:8px;color:inherit;background:#fff}#error{color:#a32524;margin:10px 0}#toast{position:fixed;bottom:16px;right:16px;z-index:3;background:#103f31;color:white;padding:10px 15px;border-radius:8px}#toast:empty{display:none}
@media(max-width:900px){main{padding:0 20px 25px}.grid{grid-template-columns:1fr}.intro{align-items:start;flex-direction:column}}
@media(max-width:650px){body{display:block}aside{padding:13px;gap:10px}.brand{font-size:20px}.mark{width:34px;height:34px;font-size:22px}nav{display:flex;flex-wrap:wrap;gap:3px}nav button{font-size:12px;padding:7px;gap:4px}nav span{font-size:14px;width:auto}.device{display:none}main{padding:0 12px 20px}header{padding:12px 0}.intro{margin:19px 0 15px}.metrics{gap:6px}.metric,.panel{padding:11px}.metric p{font-size:11px}.metric strong{font-size:16px}.metric .icon{margin-bottom:6px}.primary,.secondary{padding:8px 10px}}
