:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17211d;background:#f5f7f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh}.topbar{height:68px;position:fixed;inset:0 0 auto 0;background:#fff;border-bottom:1px solid #e5e9e7;display:flex;align-items:center;padding:0 24px;z-index:20}.brand{display:flex;align-items:center;gap:10px}.brandmark{width:34px;height:34px;border-radius:10px;background:#11291f;color:#fff;display:grid;place-items:center;font-weight:800}.brand b{display:block}.brand small{display:block;color:#708078;font-size:11px;margin-top:2px}.brand.big .brandmark{width:44px;height:44px;border-radius:13px}.brand.big b{font-size:17px}.userpill{margin-left:auto;display:flex;align-items:center;gap:7px;background:#f3f6f4;border:1px solid #e1e8e4;padding:7px 10px;border-radius:999px;font-size:12px}.sidebar{position:fixed;left:0;top:68px;bottom:0;width:238px;background:#fff;border-right:1px solid #e5e9e7;padding:18px 12px;z-index:19;display:flex;flex-direction:column}.sidebar nav{display:grid;gap:5px}.sidebar nav button,.logout{border:0;background:transparent;display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:10px;color:#53635b;text-align:left}.sidebar nav button:hover,.sidebar nav button.active{background:#eef4f0;color:#113b2b;font-weight:650}.logout{margin-top:auto}.content{padding:94px 26px 40px 264px;max-width:1500px}.pagetitle{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:20px}.pagetitle h1{font-size:25px;margin:0}.pagetitle p{margin:5px 0 0;color:#74837b;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.stat{background:#fff;border:1px solid #e2e7e4;border-radius:14px;padding:16px;display:flex;align-items:center;gap:13px;min-width:0}.staticon{width:40px;height:40px;border-radius:11px;background:#eef4f0;display:grid;place-items:center;color:#174d38}.stat small{display:block;color:#718079}.stat strong{display:block;margin-top:5px;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel{background:#fff;border:1px solid #e2e7e4;border-radius:14px;padding:18px;margin-bottom:16px}.panelhead{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}.panel h2{font-size:17px;margin:0}.panelhead p{font-size:12px;color:#7b8982;margin:4px 0 0}.panel h3{font-size:14px;margin:18px 0 8px}.quickgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick{background:#fbfcfb;border:1px solid #e4e9e6;border-radius:12px;padding:14px;text-align:left;display:flex;justify-content:space-between;align-items:center}.quick b{display:block}.quick span{display:block;font-size:12px;color:#7b8982;margin-top:4px}.badge{border-radius:999px;font-size:11px;padding:5px 8px;white-space:nowrap}.badge.ok{background:#edf8f1;color:#17653f}.badge.warning{background:#fff5df;color:#8b5e00}.badge.danger{background:#fff0ef;color:#a3312a}.empty{display:flex;min-height:130px;align-items:center;justify-content:center;flex-direction:column;color:#819088;text-align:center;gap:6px}.empty b{color:#3d4b44}.empty span{font-size:12px}.loginpage{min-height:100vh;background:#f2f6f4;display:grid;place-items:center;padding:20px}.loginpanel{width:min(430px,100%);background:#fff;border:1px solid #e2e8e5;border-radius:18px;padding:28px;box-shadow:0 20px 70px #1c362a14}.loginpanel h1{margin:30px 0 5px;font-size:24px}.loginpanel>p{color:#708078;font-size:13px;margin:0 0 18px}.loginpanel form{display:grid;gap:14px}label{font-size:12px;color:#5c6d64;display:grid;gap:6px}input,select,textarea{width:100%;border:1px solid #d9e1dd;border-radius:10px;background:#fff;padding:11px 12px;outline:none;color:#17211d}input:focus,select:focus,textarea:focus{border-color:#6c9381;box-shadow:0 0 0 3px #41755b17}textarea{min-height:90px;resize:vertical}.primary{border:0;border-radius:10px;background:#123c2b;color:#fff;padding:11px 15px;font-weight:650;display:flex;gap:8px;align-items:center;justify-content:center}.primary:disabled{opacity:.55}.secure{font-size:11px;color:#738179;display:flex;gap:7px;align-items:center;margin-top:18px}.error,.notice{font-size:12px;border-radius:9px;padding:10px 11px;display:flex;gap:7px;align-items:center}.error{background:#fff0ef;color:#982f28}.error.box{margin-top:10px}.notice{background:#f2f6f4;color:#315543;margin-top:12px}.filters{display:grid;grid-template-columns:2fr 1fr;gap:12px}.memberlist{display:grid;gap:12px}.membercard{background:#fff;border:1px solid #e1e7e4;border-radius:14px;padding:16px}.memberhead{display:flex;justify-content:space-between;gap:15px}.memberhead b,.memberhead span{display:block}.memberhead>div span{font-size:12px;color:#7b8982;margin-top:3px}.loanmetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:13px 0}.metric{background:#f7f9f8;border-radius:10px;padding:9px}.metric small{display:block;color:#7b8982;font-size:10px}.metric b{display:block;margin-top:3px;font-size:13px}.collectioninputs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:11px}.searchrow{display:grid;grid-template-columns:1fr auto;gap:8px}.resultlist{margin-top:12px;display:grid;gap:5px}.resultlist button{border:1px solid #e5e9e7;background:#fff;border-radius:10px;padding:10px 12px;text-align:left;display:flex;align-items:center;justify-content:space-between}.resultlist span{font-size:11px;color:#7a8881;display:block;margin-top:3px}.accountgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.account{border:1px solid #e4e9e6;border-radius:11px;padding:12px}.account>b,.account>span{display:block}.account>span{font-size:11px;color:#7a8881;margin:3px 0 10px}.account>div{display:flex;justify-content:space-between;font-size:12px;margin-top:5px}.upload{max-width:720px;display:grid;gap:13px}.filepick{border:1px dashed #bfcac4;border-radius:12px;min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer}.filepick input{display:none}.receiptlist{display:grid}.receiptrow{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:11px 3px;border-bottom:1px solid #edf0ee}.receiptrow span{display:block;color:#7b8982;font-size:11px;margin-top:3px}.receiptrow strong{font-size:13px}.iconbtn{border:0;background:#f1f5f3;width:36px;height:36px;border-radius:9px;display:grid;place-items:center}.mobile,.scrim{display:none}@media(max-width:850px){.topbar{padding:0 13px;height:62px}.brand small,.userpill span{display:none}.mobile{display:grid}.sidebar{top:0;left:-260px;width:250px;z-index:40;transition:.2s;padding-top:10px}.sidebar.open{left:0}.sidehead{height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 4px 8px}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0a161059;z-index:35}.content{padding:82px 13px 30px}.pagetitle h1{font-size:21px}.stats{grid-template-columns:repeat(2,1fr)}.quickgrid,.filters{grid-template-columns:1fr}.loanmetrics{grid-template-columns:repeat(2,1fr)}.collectioninputs,.accountgrid{grid-template-columns:1fr}.membercard{padding:13px}.panel{padding:14px}.stat{padding:13px}.stat strong{font-size:15px}}@media(max-width:460px){.stats,.searchrow{grid-template-columns:1fr}.receiptrow{grid-template-columns:1fr auto}.receiptrow .iconbtn{grid-column:2;grid-row:1/3}}
