*{box-sizing:border-box}
:root{--navy:#171717;--navy2:#292929;--ink:#202020;--muted:#77736b;--line:#e9e5dc;--bg:#f7f6f2;--white:#fff;--accent:#b18a45;--danger:#b94b4b;--warning:#a77a2c;--shadow:0 12px 35px rgba(35,30,20,.07)}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.public-nav{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 7%;position:sticky;top:0;z-index:20}
.public-nav nav{display:flex;align-items:center;gap:25px;color:#526070;font-weight:600}.public-nav nav a:hover{color:var(--navy)}
.brand{display:flex;align-items:center;gap:11px}.brand strong{display:block;font-size:17px;letter-spacing:-.3px}.brand span{display:block;color:#8791a0;font-size:11px;margin-top:-2px}
.brand-mark{width:39px;height:39px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:21px;box-shadow:0 8px 18px rgba(16,35,63,.2)}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--navy);color:#fff;padding:12px 18px;border-radius:10px;font-weight:800;cursor:pointer}.btn:hover{filter:brightness(1.08)}.btn.small{padding:9px 14px;font-size:13px}.btn.success{background:var(--accent)}.btn.danger{background:var(--danger)}.btn.ghost{background:#eef2f6;color:var(--navy)}.btn.full{width:100%}
.public-hero{padding:95px 7% 90px;background:linear-gradient(135deg,#f2eee5,#fff 55%);display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.hero-copy h1{font-size:58px;line-height:1.02;letter-spacing:-2.8px;margin:15px 0 20px;color:var(--navy)}.hero-copy p{font-size:18px;color:#657181;max-width:600px}.eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--accent);font-weight:900}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-card{background:var(--navy);border-radius:25px;padding:30px;color:#fff;box-shadow:0 25px 60px rgba(16,35,63,.25)}.hero-card .balance{font-size:36px;font-weight:900;margin:18px 0}.hero-card .mini{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;color:#dbe6f3}
.public-section{padding:70px 7%;background:#fff}.public-section h2{font-size:36px;letter-spacing:-1.4px;margin:8px 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.feature{border:1px solid var(--line);border-radius:17px;padding:25px;background:#fff}.feature .icon{font-size:28px;color:var(--accent)}.feature h3{margin:14px 0 6px}.feature p{color:var(--muted);font-size:14px}
.public-footer{padding:45px 7%;background:#10233f;color:#fff;display:flex;justify-content:space-between;gap:30px}.public-footer p,.public-footer small{color:#aab8ca}.public-footer p{max-width:420px}.auth-page{min-height:calc(100vh - 78px);display:grid;place-items:center;padding:40px 20px}.auth-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;max-width:470px;width:100%;box-shadow:var(--shadow)}.auth-card h1{margin:5px 0 8px}.auth-card>p{color:var(--muted);font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin:14px 0}.field label{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #d9dee6;border-radius:10px;background:#fff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7187a2;box-shadow:0 0 0 3px rgba(113,135,162,.1)}.field small{display:block;color:var(--muted);margin-top:5px}.auth-meta{display:flex;justify-content:space-between;margin-top:18px;font-size:13px;color:var(--muted)}
.app-shell,.admin-shell{min-height:100vh;display:flex}.sidebar,.admin-sidebar{width:245px;background:#10233f;color:#dbe6f3;position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column}.admin-sidebar{background:#152b49}.sidebar .brand,.admin-sidebar .brand{padding:25px 20px}.sidebar .brand span,.admin-sidebar .brand span{color:#9dafc4}.side-nav{padding:5px 13px;display:flex;flex-direction:column;gap:3px}.side-nav a{padding:12px 12px;border-radius:9px;color:#b8c7d8;font-size:14px;font-weight:650;display:flex;gap:12px;align-items:center}.side-nav a.active,.side-nav a:hover{background:rgba(255,255,255,.1);color:#fff}.nav-label{padding:23px 12px 7px;text-transform:uppercase;letter-spacing:1.4px;font-size:9px;color:#7890aa;font-weight:900}.sidebar-bottom{margin-top:auto;padding:15px}.sidebar-bottom a{display:flex;padding:12px;color:#b8c7d8;gap:12px}
.main{margin-left:245px;flex:1;min-width:0}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 35px;position:sticky;top:0;z-index:15}.topbar>div:nth-child(2){flex:1}.top-user{display:flex;align-items:center;gap:10px}.avatar{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#f2eadb;color:#8b682d;font-weight:900}.top-user-text small{display:block;color:#8a94a1;font-size:10px}.menu-btn{display:none;border:0;background:transparent;font-size:22px}
.content{padding:35px}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.page-heading h1{margin:3px 0;font-size:29px;letter-spacing:-.8px}.page-heading p{margin:0;color:var(--muted);font-size:13px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px;box-shadow:0 4px 20px rgba(16,35,63,.025)}.stat-label{font-size:11px;color:var(--muted);font-weight:750}.stat-value{font-size:25px;font-weight:900;margin-top:7px;letter-spacing:-.6px}.stat-meta{font-size:11px;color:#8a95a4;margin-top:4px}.balance-card{background:linear-gradient(135deg,#10233f,#1c4269);color:#fff;border:0}.balance-card .stat-label,.balance-card .stat-meta{color:#b9cadc}.balance-card .stat-value{font-size:33px}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.card-title h3{margin:0;font-size:15px}.card-title a{font-size:12px;color:#26755f;font-weight:800}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:#7c8795;font-size:10px;text-transform:uppercase;letter-spacing:.7px;padding:11px;border-bottom:1px solid var(--line)}.table td{padding:14px 11px;border-bottom:1px solid #edf0f4;white-space:nowrap}.table tr:last-child td{border-bottom:0}.amount-credit{color:#087a58;font-weight:850}.amount-debit{color:#b8404a;font-weight:850}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef1f4;color:#657181;font-size:10px;font-weight:850}.badge.success{background:#e4f5ee;color:#14785c}.badge.warning{background:#fff3d8;color:#93650a}.badge.danger{background:#fde9eb;color:#a53c45}
.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick-actions a{padding:15px;border:1px solid var(--line);border-radius:12px;font-size:12px;font-weight:800}.quick-actions a:hover{background:#f7f9fb}.notice{padding:13px 15px;border-radius:11px;font-size:12px;margin-bottom:15px}.notice.info{background:#edf5fb;color:#315b79}.notice.warning{background:#fff6df;color:#825d13}
.flash{position:fixed;right:20px;top:90px;z-index:100;max-width:380px;padding:13px 17px;border-radius:11px;color:#fff;box-shadow:var(--shadow);font-size:13px}.flash.success{background:#16785e}.flash.error{background:#bd3f4a}.flash.warning{background:#9c7018}
.empty{padding:40px;text-align:center;color:var(--muted)}.empty strong{display:block;color:var(--ink);margin-bottom:5px}
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.filter-bar input,.filter-bar select{padding:10px 12px;border:1px solid #d9dee6;border-radius:9px;background:#fff}
.kpi{font-size:11px;color:var(--muted)}.kpi strong{display:block;font-size:21px;color:var(--ink)}
.bar-list{display:flex;flex-direction:column;gap:13px}.bar-row{display:grid;grid-template-columns:110px 1fr 80px;gap:10px;align-items:center;font-size:11px}.bar{height:8px;background:#edf1f4;border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:#2c987a;border-radius:inherit}
.admin-shell .content{padding-top:30px}.admin-actions{display:flex;gap:8px}.admin-actions form{display:inline}
@media(max-width:1000px){.grid-4{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr}.public-hero{grid-template-columns:1fr}.hero-copy h1{font-size:48px}}
@media(max-width:760px){.sidebar,.admin-sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open,.admin-sidebar.open{transform:translateX(0)}.main{margin-left:0}.menu-btn{display:block}.topbar{padding:0 17px}.top-user-text{display:none}.content{padding:20px 15px}.grid-4,.grid-3,.grid-2,.form-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr}.page-heading{align-items:start;flex-direction:column}.public-nav{padding:0 20px}.public-nav nav a:not(.nav-login){display:none}.public-hero{padding:60px 20px}.public-section{padding:50px 20px}.hero-copy h1{font-size:40px}.feature-grid{grid-template-columns:1fr}.public-footer{padding:35px 20px;display:block}.public-footer div+div{margin-top:25px}.auth-card{padding:25px}}
