:root{
  --ink:#16351f;--forest:#166534;--forest-dark:#14532d;--forest-deep:#0f3d24;--forest-mid:#15803d;
  --orange:#f59e0b;--yellow:#fbbf24;--paper:#f4faf5;--card:#ffffff;--line:#d7e8da;
  --muted:#64746a;--green:#166534;--green-soft:#dcfce7;--danger:#b91c1c;--radius:18px
}
*{box-sizing:border-box}
html{background:var(--paper)}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#eaf7ed 0,#f7fcf8 280px,var(--paper) 280px);color:var(--ink)}
button,input,select{font:inherit}button{cursor:pointer}.wrap{max-width:1040px;margin:auto;padding:18px}
.topbar{display:flex;justify-content:center;align-items:center;padding:8px 0 14px;border-bottom:1px solid var(--line);color:var(--ink);text-align:center}
.brand-logo{display:block;width:min(470px,92vw);height:auto;max-height:210px;object-fit:contain;object-position:center;margin:0 auto;filter:drop-shadow(0 10px 18px rgba(22,101,52,.10))}
.badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:var(--green-soft);color:var(--forest-dark);font-size:12px;font-weight:900;white-space:nowrap;border:1px solid #bbf7d0}.account-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.account-heading h2{margin-bottom:0}
.nav-wrap{position:relative}.nav{display:flex;gap:8px;overflow:auto;padding:14px 34px 6px 0;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-scroll-hint{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--forest-dark);font-size:12px;font-weight:900;letter-spacing:.02em;padding:0 4px 12px;opacity:.85;text-align:center}.nav-wrap::after{content:"";position:absolute;top:14px;right:0;width:62px;height:48px;pointer-events:none;background:linear-gradient(90deg,rgba(244,250,245,0),rgba(244,250,245,1) 70%)}
.nav button,.btn{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:11px 14px;border-radius:12px;font-weight:850;min-height:44px}
.nav button{border-color:#bdd8c3;background:#ffffff;color:var(--forest-dark);white-space:nowrap}.nav button.active{background:var(--forest);border-color:var(--forest);color:white}
.btn.primary{background:linear-gradient(135deg,var(--forest),var(--forest-mid));border-color:var(--forest);color:#fff}.btn.primary:hover{background:var(--forest-dark)}.btn.full{width:100%}
.hero{background:linear-gradient(145deg,var(--forest-deep) 0%,var(--forest) 58%,#237a45 100%);border:1px solid #2b6c42;border-radius:24px;padding:0;overflow:hidden;color:white;box-shadow:0 14px 38px rgba(22,101,52,.16)}
.hero-content{padding:24px}.hero h1{font-size:clamp(30px,7vw,52px);line-height:1.02;margin:8px 0 12px;max-width:720px}.hero p{color:#e4f6e8;line-height:1.65;max-width:720px}.hero .eyebrow{color:#fcd34d}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.hero .panel{background:rgba(255,255,255,.10);color:white;border-color:rgba(255,255,255,.22)}.hero .panel .stat{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18)}.hero .panel small{color:#d9f3df}.hero .panel strong{color:white}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900;color:var(--forest)}.grid{display:grid;gap:12px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{background:#fafaf9;border:1px solid #f0efed;border-radius:14px;padding:14px}.stat small{display:block;color:var(--muted);margin-bottom:4px}.stat strong{font-size:18px}.section{margin-top:16px}.field{display:grid;gap:6px}.field label{font-size:14px;font-weight:850}.field input,.field select,input[type="search"]{width:100%;min-height:48px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 12px;font-size:16px;outline:none}.field input:focus,.field select:focus,input[type="search"]:focus{border-color:var(--forest-mid);box-shadow:0 0 0 3px rgba(21,128,61,.14)}
.notice{padding:14px;border:1px solid #fbbf24;background:#fffbeb;border-radius:12px;line-height:1.5}.success{padding:14px;border:1px solid #a7f3d0;background:#ecfdf5;border-radius:12px}.error{padding:14px;border:1px solid #fecaca;background:#fef2f2;color:var(--danger);border-radius:12px}.hidden{display:none!important}.actions{display:flex;gap:10px;flex-wrap:wrap}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.yn{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.yn label{display:flex;gap:7px;align-items:center;min-height:44px}.report-q{padding:12px;border:1px solid var(--line);border-radius:12px}.footer{padding:28px 4px;color:#737373;font-size:13px}.footer a{color:var(--forest);font-weight:700}.list{display:grid;gap:10px}.result{padding:14px;border:1px solid var(--line);background:white;border-radius:14px}.result h3{margin:0 0 5px}.result button{margin-top:10px}.lock{font-size:13px;color:var(--muted)}
.view:not(.hero){box-shadow:0 8px 24px rgba(15,23,42,.04)}
.donation-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(10,44,25,.58);backdrop-filter:blur(4px)}
.donation-card{position:relative;width:min(480px,100%);background:#fff;border:1px solid #b9d9c1;border-radius:22px;padding:26px;box-shadow:0 26px 70px rgba(10,44,25,.28);text-align:center}
.donation-card h2{margin:7px 0 10px;font-size:clamp(24px,6vw,34px)}
.donation-card p{margin:0;color:var(--muted);line-height:1.6}
.donation-icon{width:54px;height:54px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--forest);font-size:28px;font-weight:900}
.donation-close{position:absolute;top:10px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:30px;line-height:1}
.donation-close:hover{background:#eef8f0;color:var(--forest-dark)}
.donation-actions{justify-content:center;margin-top:18px}.donation-actions .btn{min-width:120px}
.donation-message{min-height:20px;margin-top:10px;font-size:13px}
body.modal-open{overflow:hidden}

@media(max-width:720px){body{background:linear-gradient(180deg,#eaf7ed 0,#f7fcf8 245px,var(--paper) 245px)}.wrap{padding:12px}.split,.grid.two,.grid.three{grid-template-columns:1fr}.topbar{align-items:center}.brand-logo{width:min(340px,94vw);max-height:170px}.nav{padding-right:44px}.nav-scroll-hint{justify-content:center;padding:2px 2px 12px;font-size:11px}.nav-wrap::after{width:50px;height:46px}.actions .btn{flex:1}.badge{font-size:11px;padding:7px 9px}.brand-banner{max-height:290px;object-fit:cover}.hero-content{padding:18px}.panel{padding:16px}.donation-card{padding:24px 18px 20px}.account-heading{align-items:flex-start}}