@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--green:#0e4b39;--deep:#082c22;--lime:#bce879;--ink:#16231e;--muted:#718078;--line:#e2e9e4;--paper:#f4f7f3;--white:#fff;--red:#b94141;--amber:#b36a15;--shadow:0 18px 55px rgba(18,48,37,.09)}*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 12%,#dff1d5 0,transparent 27%),radial-gradient(circle at 88% 85%,#dbece4 0,transparent 30%),#f4f7f3}.auth-card,.setup-card{width:min(460px,100%);background:rgba(255,255,255,.93);backdrop-filter:blur(18px);border:1px solid #fff;border-radius:28px;padding:34px;box-shadow:0 30px 90px rgba(15,55,41,.16)}.setup-card{width:min(780px,100%)}.admin-brand{display:flex;align-items:center;gap:11px}.admin-brand>span{width:43px;height:43px;border-radius:14px;background:linear-gradient(145deg,var(--green),#177256);color:#fff;display:grid;place-items:center;font:700 23px 'Playfair Display',serif;box-shadow:0 10px 24px rgba(14,75,57,.2)}.admin-brand div{display:grid}.admin-brand b{font-size:14px;letter-spacing:.12em}.admin-brand small{font-size:8px;letter-spacing:.13em;color:var(--muted)}.auth-badge{display:inline-flex;margin-top:30px;background:#eaf5e5;color:var(--green);padding:6px 9px;border-radius:999px;font-size:8px;font-weight:700;letter-spacing:.13em}.auth-card h1,.setup-card h1{font:700 39px/1.1 'Playfair Display',serif;margin:10px 0}.auth-card>p,.setup-card>p{color:var(--muted);line-height:1.65;font-size:13px}.admin-form{display:grid;gap:14px;margin-top:22px}.admin-form label,.verify-form label{font-size:10px;font-weight:700;color:#42534b}.admin-form input,.admin-form textarea,.verify-form textarea,.search-form input{width:100%;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 13px;outline:none;margin-top:6px}.admin-form input:focus,.admin-form textarea:focus,.verify-form textarea:focus,.search-form input:focus{border-color:#9bbe8e;box-shadow:0 0 0 3px #ecf5e8}.admin-form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-form hr{border:0;border-top:1px solid var(--line);width:100%;margin:6px 0}.admin-btn{border:0;border-radius:11px;padding:11px 14px;font-size:10px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px}.admin-btn.primary{background:var(--green);color:#fff}.admin-btn.secondary{background:#eef2ee;color:#345047}.admin-btn.success{background:#dff2d8;color:#2e6631}.admin-btn.danger{background:#f8dfdf;color:#9d3434}.admin-btn.full{width:100%;margin-top:18px}.back-site{display:block;text-align:center;font-size:10px;color:var(--muted);margin-top:20px}.setup-note{display:block;color:var(--muted);line-height:1.6;margin-top:18px}.alert{border-radius:12px;padding:11px 13px;font-size:11px;margin:15px 0}.alert.success{background:#e9f6e3;color:#315e32}.alert.danger{background:#fbe5e5;color:#883535}
.admin-body{min-height:100vh}.admin-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#092f25;color:#dcebe5;padding:24px 18px;display:flex;flex-direction:column;z-index:50}.sidebar .admin-brand{color:#fff;padding:0 8px 25px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar .admin-brand>span{background:var(--lime);color:#163f2f}.sidebar .admin-brand small{color:#87a79b}.sidebar nav{display:grid;gap:5px;margin-top:24px}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:11px;font-size:11px;font-weight:700;color:#9fbab0}.sidebar nav a i{font-style:normal;width:22px;text-align:center;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.09);color:#fff}.sidebar nav a.active:after{content:'';margin-left:auto;width:5px;height:5px;border-radius:50%;background:var(--lime)}.sidebar-bottom{margin-top:auto;display:grid;gap:8px;border-top:1px solid rgba(255,255,255,.1);padding-top:18px}.sidebar-bottom a{font-size:10px;color:#99b5aa;padding:7px 10px}.admin-main{grid-column:2;padding:25px 28px 55px;min-width:0}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-top>div:first-child{display:flex;align-items:center;gap:12px}.admin-top small{font-size:8px;letter-spacing:.14em;color:var(--muted)}.admin-top h1{font:700 31px 'Playfair Display',serif;margin:3px 0 0}.sidebar-toggle{display:none;border:0;background:#fff;border-radius:10px;width:38px;height:38px;box-shadow:var(--shadow)}.admin-profile{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);padding:7px 10px 7px 7px;border-radius:14px}.admin-profile>span{width:34px;height:34px;border-radius:10px;background:#e7f2e3;color:var(--green);display:grid;place-items:center;font-weight:800}.admin-profile div{display:grid}.admin-profile b{font-size:10px}.admin-profile small{font-size:8px;color:var(--muted)}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.metric-grid article{background:#fff;border:1px solid var(--line);border-radius:19px;padding:20px;box-shadow:0 9px 35px rgba(20,50,40,.04)}.metric-grid span,.metric-grid strong,.metric-grid small{display:block}.metric-grid span{font-size:9px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.metric-grid strong{font:700 31px 'Playfair Display',serif;margin:6px 0}.metric-grid small{font-size:9px;color:#829088}.metric-grid article.warn{background:#fff9ed}.metric-grid article.good{background:#f2f9ef}.metric-grid article.money{background:var(--deep);color:#fff;border-color:var(--deep)}.metric-grid article.money span,.metric-grid article.money small{color:#a5c1b6}.admin-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 10px 40px rgba(20,50,40,.04)}.panel-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:16px}.panel-head small{font-size:8px;letter-spacing:.14em;color:var(--muted)}.panel-head h2{font:700 21px 'Playfair Display',serif;margin:3px 0 0}.link-btn{font-size:9px;font-weight:800;color:var(--green);background:#eff5ec;padding:8px 10px;border-radius:999px;white-space:nowrap}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px}th{text-align:left;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#839087;border-bottom:1px solid var(--line);padding:10px}td{font-size:10px;border-bottom:1px solid #eef2ef;padding:12px 10px;vertical-align:middle}td b,td small{display:block}td small{font-size:8px;color:var(--muted);margin-top:3px}.mono-link,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.mono-link{color:var(--green);font-weight:700}.status{display:inline-flex!important;padding:5px 8px;border-radius:999px;font-size:8px!important;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.status.pending{background:#fff0d9;color:#9d5b0f}.status.verified{background:#e3f4dc;color:#356b34}.status.rejected{background:#fae3e3;color:#a23d3d}.empty-cell{text-align:center;color:var(--muted);padding:35px}.cause-bars{display:grid;gap:17px}.cause-bar>div{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.cause-bar span{color:var(--muted)}.cause-bar i{display:block;height:7px;background:#edf1ee;border-radius:999px;overflow:hidden}.cause-bar em{display:block;height:100%;background:linear-gradient(90deg,var(--green),#83b96f);border-radius:inherit}.empty-state{font-size:10px;color:var(--muted);background:#f7f9f7;border:1px dashed #dbe4dd;border-radius:14px;padding:20px;text-align:center}.empty-state.big{padding:50px}
.filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.search-form{display:flex;min-width:310px;flex:1}.search-form input{margin:0;border-radius:11px 0 0 11px}.search-form button{border:0;background:var(--deep);color:#fff;font-size:9px;font-weight:800;padding:0 15px;border-radius:0 11px 11px 0}.filter-pills{display:flex;gap:5px;background:#f0f3f0;padding:4px;border-radius:999px}.filter-pills a{font-size:8px;font-weight:800;padding:7px 9px;border-radius:999px;color:var(--muted)}.filter-pills a.active{background:#fff;color:var(--green);box-shadow:0 3px 12px rgba(20,50,40,.07)}.donation-list{display:grid;gap:10px}.donation-row{border:1px solid var(--line);border-radius:16px;overflow:hidden}.donation-main{display:grid;grid-template-columns:1fr 1.5fr .8fr auto;align-items:center;gap:14px;padding:14px}.donation-ref b,.donation-ref small,.donor-ident strong,.donor-ident span,.donor-ident small,.donation-amount strong,.donation-amount span{display:block}.donation-ref b{font-size:10px;margin-top:7px}.donation-ref small,.donor-ident span,.donor-ident small,.donation-amount span{font-size:8px;color:var(--muted);margin-top:4px}.donor-ident strong{font-size:11px}.donation-amount strong{font:700 20px 'Playfair Display',serif}.expand-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px;font-size:8px;font-weight:800;cursor:pointer}.donation-detail{display:none;background:#f7f9f7;border-top:1px solid var(--line);padding:15px}.donation-detail.open{display:block}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.detail-grid>div{background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px}.detail-grid span,.detail-grid b,.detail-grid a{display:block}.detail-grid span{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.detail-grid b,.detail-grid a{font-size:9px;margin-top:5px;overflow-wrap:anywhere}.detail-grid a{color:var(--green);font-weight:800}.verify-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin-top:12px}.verify-form>div{display:flex;gap:6px}.verify-form textarea{margin-top:5px}.settings-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.preview-bank{background:var(--deep);color:#fff;border-radius:17px;padding:18px}.preview-bank span,.preview-bank strong{display:block}.preview-bank span{font-size:8px;color:#9fb9af}.preview-bank strong{font:700 25px 'Playfair Display',serif;margin:5px 0 12px}.preview-bank button{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.09);color:#fff;border-radius:8px;padding:7px 9px;font-size:8px}.preview-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.preview-list>div{border:1px solid var(--line);border-radius:12px;padding:11px}.preview-list span,.preview-list b{display:block}.preview-list span{font-size:7px;text-transform:uppercase;color:var(--muted)}.preview-list b{font-size:10px;margin-top:4px}.admin-note{font-size:9px;color:var(--muted);line-height:1.55;margin-top:14px}
@media(max-width:1050px){.metric-grid{grid-template-columns:1fr 1fr}.admin-grid,.settings-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}.donation-main{grid-template-columns:1fr 1.3fr .8fr auto}}
@media(max-width:760px){.admin-shell{display:block}.sidebar{transform:translateX(-105%);transition:.22s;box-shadow:20px 0 60px rgba(0,0,0,.18)}.sidebar-open .sidebar{transform:none}.admin-main{padding:18px 14px 45px}.sidebar-toggle{display:block}.admin-profile div{display:none}.metric-grid{grid-template-columns:1fr 1fr}.admin-grid{display:grid}.filter-row{align-items:stretch}.search-form{min-width:100%}.filter-pills{overflow:auto}.donation-main{grid-template-columns:1fr 1fr}.donor-ident{grid-column:1/-1;grid-row:2}.donation-amount{text-align:right}.expand-btn{grid-column:2;grid-row:3;justify-self:end}.detail-grid{grid-template-columns:1fr}.verify-form{grid-template-columns:1fr}.verify-form>div{flex-wrap:wrap}.admin-form .two{grid-template-columns:1fr}.setup-card,.auth-card{padding:25px 19px}.panel{padding:15px}.admin-top h1{font-size:27px}}
@media(max-width:430px){.metric-grid{grid-template-columns:1fr}.admin-top{align-items:flex-start}.admin-profile{padding:5px}.preview-list{grid-template-columns:1fr}.donation-main{grid-template-columns:1fr auto}.donation-amount{grid-column:2}.donor-ident{grid-column:1/-1}.expand-btn{grid-column:1/-1;grid-row:auto;width:100%}}
