:root{--navy:#10213f;--navy2:#182f5c;--gold:#c99736;--gold2:#f0d18b;--cream:#fff8ea;--ivory:#fffdf8;--maroon:#7a2436;--green:#12614d;--text:#263247;--muted:#647084;--line:#eadfcb;--shadow:0 24px 70px rgba(16,33,63,.13)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:linear-gradient(180deg,#fffdf8 0,#fff8ea 100%);line-height:1.65}
.container{width:min(1180px,92%);margin:auto}
a{color:inherit;text-decoration:none}
.topbar{background:var(--navy);color:#fff;font-size:.94rem}
.topbar-inner{display:flex;gap:22px;align-items:center;justify-content:flex-end;padding:9px 0;flex-wrap:wrap}
.topbar a{color:var(--gold2);font-weight:700}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,248,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:15px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:#fff;font:700 1.55rem Cinzel,serif}
.brand strong{display:block;font:700 1.28rem Cinzel,serif;color:var(--navy)}
.brand small{display:block;color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.nav-menu{display:flex;align-items:center}
.nav-menu a{padding:10px 15px;border-radius:999px;font-weight:700;color:var(--navy)}
.nav-menu a:hover,.nav-menu a.active{background:#f3e3bf;color:#6c4710}
.nav-cta{background:linear-gradient(135deg,var(--maroon),#b33754)!important;color:#fff!important;box-shadow:0 12px 28px rgba(122,36,54,.26)}
.menu-toggle{display:none;border:0;background:var(--navy);color:#fff;border-radius:12px;padding:9px 13px;font-size:1.25rem}
.hero{position:relative;overflow:hidden;color:#fff}
.hero:after{content:"";position:absolute;right:-120px;bottom:-160px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(240,209,139,.55),transparent 65%)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center;min-height:680px;padding:72px 0}
.eyebrow{padding:7px 13px;border:1px solid rgba(240,209,139,.55);border-radius:999px}
.hero h1,.page-hero h1{font:700 clamp(2.6rem,6vw,5.6rem)/1.02 Cinzel,serif;margin:18px 0 14px}
.hero p{max-width:710px;color:#f6ead2;font-size:1.12rem}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;font-weight:800;cursor:pointer;transition:.2s ease}
.btn-primary{box-shadow:0 16px 35px rgba(201,151,54,.35)}
.btn-secondary{border:1px solid rgba(255,255,255,.45)}
.hero-card{background:rgba(255,253,248,.12);border:1px solid rgba(240,209,139,.38);border-radius:32px;padding:24px;box-shadow:var(--shadow);backdrop-filter:blur(10px)}
.hero-card img{width:100%;border-radius:24px;display:block}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.stat{background:rgba(255,255,255,.12);padding:16px;border-radius:18px;text-align:center}
.stat strong{display:block;color:var(--gold2);font-size:1.55rem}
.section{padding:88px 0}
.section-title{text-align:center;margin-bottom:42px}
.section-title h2{font:700 clamp(2rem,4vw,3.4rem)/1.1 Cinzel,serif;color:var(--navy);margin:10px 0}
.section-title p{max-width:760px;margin:auto;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}
.panel{background:#fff;border:1px solid var(--line);border-radius:30px;padding:34px;box-shadow:var(--shadow)}
.panel h2,.panel h3{font-family:Cinzel,serif;color:var(--navy);line-height:1.15}
.program-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:-52px;position:relative;z-index:2}
.program-card,.focus-card,.job-card,.team-card,.gallery-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:var(--shadow);transition:.25s ease}
.program-card:hover,.focus-card:hover,.job-card:hover,.team-card:hover{transform:translateY(-5px)}
.program-card h3,.focus-card h3,.job-card h3,.team-card h3{margin:8px 0;color:var(--navy);font-family:Cinzel,serif}
.icon{width:52px;height:52px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#fff2c8,#e6b95d);color:#6b4205;font-weight:900;font-size:1.5rem}
.focus-grid,.jobs-grid,.team-grid,.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.team-grid{grid-template-columns:repeat(4,1fr)}
.team-avatar{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;color:#fff;font:700 2rem Cinzel,serif;margin-bottom:15px}
.classic-band{background:linear-gradient(135deg,var(--green),#183c5d);color:#fff}
.classic-band h2{color:#fff}
.classic-band p{color:#edf8f5}
.page-hero{text-align:center}
.page-hero p{margin:auto}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start}
.info-list{display:grid;gap:15px}
.info-item{background:#fff;border:1px solid var(--line);padding:20px;border-radius:22px;box-shadow:0 16px 35px rgba(16,33,63,.08)}
.form{display:grid;gap:16px}
.form input,.form textarea{width:100%;border:1px solid #dacda5;border-radius:16px;padding:14px 15px;font:inherit;background:#fffdf8}
.captcha-box{flex-wrap:wrap;background:#fff7e6;border:1px dashed var(--gold);border-radius:18px;padding:14px}
.donate-card{background:linear-gradient(135deg,#fff,var(--cream));border:1px solid var(--line);border-radius:30px;padding:32px;box-shadow:var(--shadow);text-align:center}
.qr-placeholder{margin:20px auto;border-radius:24px}
.gallery-card{min-height:230px;display:flex;align-items:flex-end;background:linear-gradient(135deg,rgba(16,33,63,.88),rgba(122,36,54,.76)),url("../img/pattern.svg");color:#fff}
.gallery-card h3{font-family:Cinzel,serif;font-size:1.45rem}
.site-footer{background:#0d1a32;color:#dae3f1;padding-top:62px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:34px}
.site-footer h3{font-family:Cinzel,serif;color:var(--gold2)}
.site-footer a{display:block;color:#fff4d8;margin:8px 0}
.footer-brand strong{color:#fff}
.footer-brand small{color:#d8c9a4}
.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding:18px;color:#adb9cd}
@media (max-width:900px){
.hero-grid,.split,.contact-grid,.footer-grid{grid-template-columns:1fr}
.hero-grid{min-height:auto;padding:56px 0}
.program-strip,.focus-grid,.jobs-grid,.team-grid,.gallery-grid{grid-template-columns:1fr 1fr}
.menu-toggle{display:block}
.nav-menu{position:absolute;left:4%;right:4%;top:78px;display:none;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:22px;padding:15px;box-shadow:var(--shadow)}
.nav-menu.open{display:flex}
.nav-menu a{text-align:center}
.topbar-inner{justify-content:center}
}
@media (max-width:580px){
.program-strip,.focus-grid,.jobs-grid,.team-grid,.gallery-grid,.stats{grid-template-columns:1fr}
.hero h1,.page-hero h1{font-size:2.45rem}
.section{padding:62px 0}
.panel{padding:24px}
.topbar-inner{gap:10px;font-size:.82rem}
.brand-mark{width:42px;height:42px}
.hero-actions .btn{width:100%}
}
/* Enhancement pack: logo, classic richness, and refreshable reCaptcha */
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 8%,rgba(240,209,139,.20),transparent 28%),radial-gradient(circle at 88% 18%,rgba(122,36,54,.10),transparent 30%);z-index:-1}
.brand-mark{overflow:hidden;background:#fff;border:2px solid rgba(201,151,54,.58);box-shadow:0 12px 30px rgba(16,33,63,.14),inset 0 0 0 4px rgba(255,248,234,.9)}
.brand-mark img{display:block}
.site-header{box-shadow:0 8px 26px rgba(16,33,63,.06)}
.hero{background:linear-gradient(135deg,rgba(16,33,63,.98),rgba(122,36,54,.90)),url("../img/pattern.svg")}
.hero:before{content:"";position:absolute;left:-140px;top:-110px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(240,209,139,.40),transparent 67%)}
.hero-card{position:relative}
.hero-card:before{content:"HOPE";position:absolute;top:20px;left:24px;font:700 clamp(2.8rem,8vw,5.2rem)/1 Cinzel,serif;color:rgba(255,255,255,.10);letter-spacing:.14em;z-index:1}
.hero-card img{position:relative;z-index:2;background:#fffdf8;padding:18px;min-height:320px;object-fit:contain}
.panel,.program-card,.focus-card,.job-card,.team-card,.donate-card,.info-item{position:relative;overflow:hidden}
.panel:before,.program-card:before,.focus-card:before,.job-card:before,.team-card:before,.donate-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--gold),var(--maroon),var(--green))}
.focus-card{color:var(--text)}
.btn:hover{transform:translateY(-2px);filter:saturate(1.08)}
.captcha-box{display:grid;grid-template-columns:auto minmax(110px,150px) auto 1fr;gap:12px;align-items:center}
.captcha-question{display:flex;align-items:center;gap:10px}
.captcha-question span{display:inline-flex;border-radius:999px;background:var(--navy);color:#fff;padding:5px 10px;font-weight:800;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.captcha-question strong{display:inline-flex;min-width:92px;justify-content:center;background:#fff;border:1px solid #e2c278;border-radius:12px;padding:10px 14px;color:var(--maroon);font-size:1.15rem;box-shadow:0 8px 18px rgba(201,151,54,.14)}
.captcha-box input{max-width:150px}
.captcha-refresh{border:1px solid rgba(16,33,63,.18);border-radius:999px;padding:11px 15px;background:#fff;color:var(--navy);font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(16,33,63,.08)}
.captcha-refresh:hover{background:var(--navy);color:#fff}
.captcha-refresh:disabled{opacity:.65;cursor:not-allowed}
.captcha-box small{color:var(--green);font-weight:800}
.page-hero{position:relative;overflow:hidden}
.page-hero:after{content:"";position:absolute;right:-90px;bottom:-130px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(240,209,139,.34),transparent 65%)}
@media (max-width:760px){
.captcha-box{grid-template-columns:1fr}
.captcha-box input{max-width:none}
.captcha-refresh{width:100%}
.captcha-question{justify-content:space-between}
.hero-card img{min-height:240px}
}
@media (max-width:580px){
.brand strong{font-size:1.06rem}
.brand small{font-size:.68rem}
.nav-wrap{padding:11px 0}
.hero-card{padding:16px}
.hero-card img{padding:12px}
.captcha-question{align-items:flex-start;flex-direction:column}
}
/* Text-only brand after removing logo from header and footer */
.brand-text-only{gap: 0;}
.brand-text-only strong{letter-spacing: 0.08em;}
/* Final readability and profile image overrides */
.focus-card p{color:#243044;font-weight:600;line-height:1.75}
.classic-band .section-title p{color:#fff7df;font-weight:700}
.team-avatar{overflow:hidden;background:#fff;border:3px solid rgba(201,151,54,.72);box-shadow:0 14px 30px rgba(16,33,63,.16)}
.team-avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
/* Normal readable text fix for Our Core Focus cards */
.classic-band .focus-card,.classic-band .focus-card *{filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    opacity: 1 !important;
    text-shadow: none !important;}
.classic-band .focus-card p{color: #1f2b3d !important;
    font-weight: 500 !important;
    line-height: 1.7 !important;
    letter-spacing: 0 !important;
    font-size: 1rem !important;
    background: transparent !important;}
.classic-band .focus-card{background: #ffffff !important;}
.qr-image{width:220px;max-width:100%;height:auto;display:block;margin:20px auto;border-radius:24px;background:#fff;border:12px solid #fff;box-shadow:0 10px 25px rgba(0,0,0,.15)}
.qr-note{display:block;color:var(--muted);font-weight:700;margin-top:8px}
/* NGO dashboard and membership additions */
.auth-wrap{max-width:620px;margin:auto}
.dashboard-grid{display:grid;grid-template-columns:330px 1fr;gap:26px;align-items:start}
.dashboard-main{display:grid;gap:22px}
.dashboard-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}
.membership-card{background:linear-gradient(135deg,var(--navy),var(--maroon));color:#fff;border-radius:24px;padding:24px;margin:18px 0;box-shadow:0 16px 35px rgba(16,33,63,.2)}
.membership-card small{color:var(--gold2);text-transform:uppercase;letter-spacing:.12em;font-weight:900}
.membership-card h3{font-size:1.65rem;color:#fff;margin:10px 0}
.membership-card span{display:inline-block;background:rgba(255,255,255,.12);padding:7px 12px;border-radius:999px}
.table-lite{display:grid;gap:12px}
.table-lite div{display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid var(--line);padding:10px 0}
.data-table{overflow:hidden;border-radius:16px}
.data-table th,.data-table td{border:1px solid var(--line)}
.data-table select,.form select{width:100%;border:1px solid #dacda5;border-radius:12px;padding:10px;background:#fffdf8}
@media (max-width:900px){
.dashboard-grid{grid-template-columns:1fr}
.data-table{display:block;overflow-x:auto}
.table-lite div{grid-template-columns:1fr}
}
/* Dashboard fixes */
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0}
.stat-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:22px;box-shadow:0 12px 35px rgba(0,0,0,.06)}
.stat-card strong{display:block;font-size:34px;color:#183b2d;line-height:1}
.stat-card span{display:block;margin-top:8px;color:#65756f;font-weight:700}
.inline-form{margin:0}
.data-table select{min-width:145px;padding:9px 10px;border:1px solid #d9e1dc;border-radius:10px;background:#fff}
.btn-small:hover{opacity:.88}
@media (max-width:760px){
.stats-grid{grid-template-columns:1fr}
.dashboard-top{gap:12px;align-items:flex-start}
.data-table{min-width:760px}
}
/* Donation dashboard additions */
.donation-balance strong{font-size:30px;color:#7a2436}
.donation-form{max-width:620px}
.data-table small{color:var(--muted);font-weight:700}
.dashboard-main .alert{margin-bottom:12px}
@media (max-width:1050px){
.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.payment-note{font-size:.92rem;line-height:1.5;}
/* DB storage confirmation/profile form */
.muted{color:var(--muted);font-weight:600;margin-top:0}
.form input[readonly]{background:#f6f0e4;color:#697386;cursor:not-allowed}
/* Attractive tab-based member dashboard UI */
.member-hero:after{bottom:-150px}
.member-id-card p{font-weight:800}
.member-badges{display:flex;gap:10px;flex-wrap:wrap}
.member-badges span{display:inline-flex;align-items:center}
.member-stat-card{position:relative}
.member-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--gold),var(--maroon),var(--green))}
.member-tabs-shell{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:32px;padding:18px;box-shadow:var(--shadow)}
.member-tabs{flex-wrap:wrap;margin-bottom:18px}
.tab-link:hover,.tab-link.active{background:linear-gradient(135deg,var(--navy),var(--maroon));color:#fff;box-shadow:0 12px 24px rgba(16,33,63,.18);transform:translateY(-1px)}
.tab-panel{display:none}
.tab-panel.active{display:block;animation:tabFade .22s ease}
@keyframes tabFade{
from{opacity:.4;transform:translateY(6px)}
to{opacity:1;transform:none}
}
.tab-card{box-shadow:none;border-radius:24px}
.tab-heading p{font-weight:600}
.dashboard-form{max-width:880px}
.large-card{backdrop-filter:none}
.status-details p{font-size:1.05rem}
@media (max-width:1000px){
.member-hero-grid,.account-status-card,.donation-layout{grid-template-columns:1fr}
.member-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
.member-hero{padding:52px 0}
.member-tabs-shell{padding:12px}
.member-tabs{display:grid;grid-template-columns:1fr}
.tab-link{width:100%}
.member-stat-grid,.form-two{grid-template-columns:1fr}
.member-id-card{padding:22px}
.tab-heading{display:block}
.member-quick-actions .btn{width:100%}
}
/* Attractive tab-based admin dashboard UI */
.donation-balance-card strong{color:var(--maroon);font-size:1.35rem}
.admin-tab-panel{display:none}
.admin-tab-panel.active{display:block;animation:adminTabFade .22s ease}
@keyframes adminTabFade{
from{opacity:.42;transform:translateY(6px)}
to{opacity:1;transform:none}
}
.admin-card-soft{box-shadow:none;border-radius:24px}
.admin-form-panel{max-width:980px}
.compact-table th,.compact-table td{padding:10px 12px}
.admin-action-table th{white-space:nowrap}
.status-pill{white-space:nowrap}
.mode-pill{border:1px solid rgba(201,151,54,.35)}
@media (max-width:640px){
.form-two{grid-template-columns:1fr}
}
/* Guest/member donation UI update */
.nav-menu .nav-cta{white-space:nowrap}
.payment-modal.active{display:flex}
.payment-modal-card{animation:modalIn .22s ease}
.payment-modal-card h2{font-family:Cinzel,serif;color:var(--navy);margin:10px 0}
.modal-close{line-height:1}
.removed-payment-box{color:#fff}
.removed-payment-box strong{font-size:1.35rem}
.removed-payment-box span{color:#eaf1ff;font-weight:700}
.small-qr{border-width:8px;border-radius:18px;margin:0}
.qr-donation-box,.guest-payment-box{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:#fff8ea;border:1px solid var(--line);border-radius:22px;padding:16px}
.qr-donation-box p{margin:0;color:var(--muted);font-weight:800}
.guest-donation-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:start}
.guest-donation-panel h2{font-family:Cinzel,serif;color:var(--navy);margin:10px 0}
.donate-side-card{background:linear-gradient(135deg,var(--navy),var(--maroon));color:#fff;border-radius:30px;padding:34px;box-shadow:var(--shadow);position:sticky;top:120px}
.donate-side-card h3{font-family:Cinzel,serif;color:#fff;font-size:1.8rem;margin-top:0}
.donate-side-card li{margin:10px 0;color:#fff4dc;font-weight:700}
.donate-side-card p{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:18px;color:#fff}
.donation-page-section{padding-top:64px}
@keyframes modalIn{
from{opacity:.45;transform:translateY(16px) scale(.98)}
to{opacity:1;transform:none}
}
@media (max-width:900px){
.guest-donation-grid{grid-template-columns:1fr}
.donate-side-card{position:static}
.guest-payment-box .btn{width:100%}
}
/* Dashboard UI Refresh - member + admin */
:root{--ngo-primary:#14532d;--ngo-primary-2:#16a34a;--ngo-dark:#0f172a;--ngo-muted:#64748b;--ngo-soft:#f0fdf4;--ngo-line:#dbeafe;--ngo-card:#ffffff;--ngo-warm:#fff7ed;--ngo-blue:#eff6ff;--ngo-shadow:0 22px 60px rgba(15,23,42,.12);--ngo-radius:26px}
.member-hero{overflow:hidden}
.member-hero:after{content:"";position:absolute;right:-90px;top:-90px;width:320px;height:320px;border-radius:50%;background:rgba(255,255,255,.12);box-shadow:-90px 170px 0 rgba(255,255,255,.08)}
.member-hero-grid{position:relative;z-index:1}
.member-hero h1{font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-1.4px;color:#fff}
.member-hero p{font-size:17px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:#bbf7d0}
.badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:800;font-size:12px;letter-spacing:.05em;text-transform:uppercase}
.member-quick-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.btn,.btn-small{border:0;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font-weight:800;transition:.2s ease}
.btn{padding:13px 20px}
.btn:hover,.btn-small:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.16)}
.btn-primary{background:linear-gradient(135deg,#22c55e,#15803d);color:#fff}
.btn-secondary{background:#fff;color:#14532d}
.btn-dark{background:#0f172a;color:#fff}
.member-id-card{position:relative;overflow:hidden}
.member-id-card:before{content:"";position:absolute;right:-35px;bottom:-45px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.12)}
.member-id-card small{display:block}
.member-id-card h2{font-size:28px}
.member-id-card p{color:rgba(255,255,255,.84);margin:0 0 18px}
.member-badges span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.24);padding:8px 12px;border-radius:999px;color:#fff;font-weight:800;font-size:13px}
.member-dashboard-section{background:linear-gradient(180deg,#f8fafc,#ecfdf5);padding:34px 0 70px}
.member-stat-grid{margin:-66px 0 24px;position:relative;z-index:2}
.member-stat-card{min-height:124px}
.member-stat-card strong{margin:8px 0}
.member-stat-card small{color:#64748b}
.donation-balance-card{background:linear-gradient(135deg,#fff,#fff7ed)}
.tab-link{transition:.18s}
.tab-link:hover{background:#f0fdf4;color:#14532d}
.tab-panel,.admin-tab-panel{display:none}
.tab-panel.active,.admin-tab-panel.active{animation:fadeDash .25s ease}
@keyframes fadeDash{
from{opacity:0;transform:translateY(8px)}
to{opacity:1;transform:none}
}
.panel,.tab-card,.admin-card-soft{background:#fff;border:1px solid rgba(20,83,45,.09);border-radius:var(--ngo-radius);box-shadow:0 16px 42px rgba(15,23,42,.08);padding:26px}
.tab-heading h2{font-size:28px}
.tab-heading p{max-width:700px}
.form label{font-weight:800;color:#334155;margin:12px 0 7px}
.form input,.form textarea,.form select,select,input,textarea{width:100%;border:1px solid #dbe5ef;border-radius:15px;padding:12px 13px;background:#fff;color:#0f172a}
.alert{margin-bottom:20px}
.data-table{border-spacing:0 10px}
.data-table th{text-align:left;text-transform:uppercase;font-size:12px;letter-spacing:.08em;padding:0 12px}
.data-table td{background:#f8fafc;padding:14px 12px;border-top:1px solid #eef2f7;border-bottom:1px solid #eef2f7}
.data-table td:first-child{border-left:1px solid #eef2f7;border-radius:15px 0 0 15px}
.data-table td:last-child{border-right:1px solid #eef2f7;border-radius:0 15px 15px 0}
.status-pill,.mode-pill{display:inline-flex;padding:7px 10px;border-radius:999px;background:#e0f2fe;color:#075985;font-weight:900;font-size:12px}
.compact-table td{font-size:14px}
.admin-action-table select{min-width:150px}
.account-status-card{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:center}
.large-card{background:linear-gradient(135deg,#052e16,#15803d);color:#fff}
.status-details{background:#f8fafc;border-radius:24px;padding:26px}
.qr-donation-box{margin:14px 0;padding:18px;border-radius:22px;background:#f8fafc;border:1px dashed #86efac;display:flex;align-items:center;gap:14px}
.qr-placeholder{width:112px;height:112px;background:repeating-linear-gradient(45deg,#0f172a 0 7px,#fff 7px 14px);border:10px solid #fff;box-shadow:0 6px 20px rgba(15,23,42,.12)}
.small-qr{width:92px;height:92px}
.payment-note{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;border-radius:16px;padding:12px;margin:10px 0}
.payment-modal-card{max-width:480px;position:relative}
.modal-close{position:absolute;right:18px;top:14px}
.removed-payment-box{border:1px solid #dbeafe;background:linear-gradient(135deg,#eff6ff,#fff);border-radius:22px;padding:20px;margin:16px 0;display:grid;gap:10px}
.dashboard-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.dashboard-chip{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);padding:10px 12px;border-radius:999px;color:#fff;font-weight:900;font-size:13px}
@media (max-width:920px){
.member-hero-grid,.member-tabs-shell,.donation-layout,.account-status-card{grid-template-columns:1fr}
.member-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}
.member-tabs{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.form-two{grid-template-columns:1fr}
}
@media (max-width:560px){
.member-stat-grid,.member-tabs{grid-template-columns:1fr}
.member-hero{padding:46px 0 36px}
.panel,.tab-card,.admin-card-soft{padding:20px}
.tab-heading{flex-direction:column}
.member-quick-actions{flex-direction:column}
.btn{width:100%}
}
/* Layout stability fix for dashboard.php and cp.php */
.member-dashboard-section{overflow-x: hidden;}
.member-hero .btn,.member-quick-actions .btn{min-width: 0;
  width: auto;
  color: inherit;
  white-space: nowrap;}
.member-hero .btn-secondary,.member-quick-actions .btn-secondary{background: #ffffff;
  color: #14532d !important;
  border: 1px solid rgba(255,255,255,.55);}
.member-hero .btn-primary,.member-quick-actions .btn-primary{color: #ffffff !important;}
.member-hero .btn-dark,.member-quick-actions .btn-dark{background: #0f172a;
  color: #ffffff !important;}
.member-tabs-shell{
  width: 100%;}
.member-tabs-shell > .tab-panel{min-width: 0;}
.member-tabs{align-self: start;}
.tab-panel,.admin-tab-panel{width: 100%;}
.tab-panel:not(.active),.admin-tab-panel:not(.active){display: none !important;}
.tab-panel.active,.admin-tab-panel.active{display: block !important;}
.tab-link{
  overflow: hidden;
  text-overflow: ellipsis;}
.form-two{display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;}
.form input,.form textarea,.form select,.dashboard-form input,.dashboard-form textarea,.dashboard-form select{max-width: 100%;
  box-sizing: border-box;}
.dashboard-form .btn,.donation-form .btn{width: auto;
  max-width: 100%;}
.table-wrap{width: 100%;
  overflow-x: auto;}
.data-table{min-width: 680px;}
.account-status-card,.donation-layout{min-width: 0;}
@media (max-width: 920px){
.member-tabs-shell{grid-template-columns: 1fr !important;}
.member-tabs{position: static !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;}
.form-two{grid-template-columns: 1fr !important;}
.member-quick-actions .btn{width: auto !important;}
}
@media (max-width: 560px){
.member-tabs{grid-template-columns: 1fr !important;}
.member-quick-actions{flex-direction: column;}
.member-quick-actions .btn,.dashboard-form .btn,.donation-form .btn{width: 100% !important;}
}
/* Popup Register/Login menu + modern auth pages */
.nav-popup-btn{border:0;background:transparent;padding:10px 15px;border-radius:999px;font-weight:800;color:var(--navy);font:inherit;cursor:pointer}
.nav-popup-btn:hover,.nav-popup-btn.active{background:#f3e3bf;color:#6c4710}
.compact-form-two textarea{min-height:54px}
.auth-page-hero p{font-size:1.08rem}
.auth-visual-card{width:min(360px,100%);text-align:center}
.auth-visual-card strong{display:block}
.auth-visual-card span{display:inline-flex;margin-top:14px;background:#f5e7c3;border-radius:999px;padding:9px 15px}
.auth-section{padding-top:58px}
.text-link{color:#7a2436;font-weight:900;text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){
.nav-popup-btn{text-align:center}
.auth-page-grid{grid-template-columns:1fr}
.auth-visual-card{justify-self:stretch}
.compact-form-two,.auth-card .form-two{grid-template-columns:1fr!important}
.auth-modal-card{padding:24px}
}
/* === Complete review responsive patch === */
img,svg,video{max-width:100%;height:auto}
.brand-mark img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.site-header{isolation:isolate}
.nav-menu{min-width:0}
.nav-menu .nav-popup-btn{white-space:nowrap}
.page-hero{background:linear-gradient(135deg,var(--navy),var(--green));color:#fff;padding:70px 0}
.page-hero p{color:#fff1d8;max-width:760px}
.form label{display:block}
.form input,.form textarea,.form select{width:100%;padding:12px 14px;border:1px solid #d9cba6;border-radius:14px;background:#fff;color:var(--text);font:inherit}
.form textarea{min-height:92px;resize:vertical}
.alert{border-radius:16px;padding:14px 16px;margin:0 0 22px;font-weight:800}
.alert.success{background:#e8f8ee;color:#14532d;border:1px solid #bce8c8}
.alert.error{background:#fff1f2;color:#991b1b;border:1px solid #fecdd3}
.table-wrap{border-radius:20px;border:1px solid var(--line);background:#fff;overflow:auto}
.data-table{border-collapse:collapse;width:100%}
.data-table th,.data-table td{padding:13px 14px;border-bottom:1px solid #f0e5cf;text-align:left;vertical-align:middle}
.data-table th{background:#fff7e6;color:var(--navy);font-weight:900}
.data-table tr:last-child td{border-bottom:0}
.btn-small{border:0;border-radius:999px;background:var(--navy);color:#fff;padding:9px 13px;font-weight:900;cursor:pointer}
.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.inline-form select,.inline-form input{min-width:135px;padding:9px 10px;border:1px solid #d9cba6;border-radius:12px}
.status-pill{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;background:#eef2ff;color:#1e3a8a;font-weight:900;font-size:.78rem}
.mode-pill{background:#e8f8ee;color:#14532d}
.empty-state{padding:26px;border:1px dashed #d6c59c;border-radius:20px;background:#fffaf0;color:var(--muted);font-weight:800;text-align:center}
/* Dashboard layout hardened after complete review */
.member-hero{background:radial-gradient(circle at 85% 20%,rgba(240,209,139,.30),transparent 28%),linear-gradient(135deg,#0b1f3d,#14532d 62%,#7a2436);color:#fff;padding:62px 0}
.member-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:28px;align-items:center}
.member-hero h1{font:700 clamp(2.2rem,4.5vw,4.4rem)/1.05 Cinzel,serif;margin:14px 0}
.member-hero p{color:#fff2d8;max-width:780px}
.dashboard-chips,.member-badges{display:flex;gap:10px;flex-wrap:wrap}
.dashboard-chip,.member-badges span{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(240,209,139,.35);color:#fff;font-weight:900;font-size:.82rem}
.member-id-card{background:rgba(255,255,255,.13);border:1px solid rgba(240,209,139,.42);border-radius:30px;padding:26px;box-shadow:0 24px 70px rgba(0,0,0,.18);backdrop-filter:blur(10px)}
.member-id-card small{text-transform:uppercase;letter-spacing:.1em;color:#f3d994;font-weight:900}
.member-id-card h2{font:700 1.8rem/1.15 Cinzel,serif;margin:10px 0;color:#fff}
.member-stat-grid{display:grid;gap:18px;margin-bottom:28px}
.member-stat-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}
.member-stat-card span{display:block;color:var(--muted);font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}
.member-stat-card strong{display:block;color:var(--navy);line-height:1.15;margin-top:8px}
.member-tabs-shell{display:grid!important;gap:24px!important;align-items:start}
.member-tabs{position:sticky;top:92px;display:flex!important;flex-direction:column!important;gap:10px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:14px;box-shadow:var(--shadow);min-width:0}
.tab-link{border:0;background:#fff7e8;color:var(--navy);border-radius:16px;padding:13px 15px;text-align:left;font-weight:900;cursor:pointer;width:100%;min-height:48px}
.tab-link.active{background:linear-gradient(135deg,var(--navy),var(--green));color:#fff;box-shadow:0 14px 28px rgba(16,33,63,.18)}
.tab-card,.admin-card-soft{border-radius:28px}
.tab-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.tab-heading h2{margin:.35rem 0;font:700 clamp(1.5rem,3vw,2.3rem)/1.1 Cinzel,serif;color:var(--navy)}
.tab-heading p{margin:0;color:var(--muted)}
.donation-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.dashboard-form .btn,.donation-form .btn{margin-top:14px}
.payment-modal{position:fixed;inset:0;background:rgba(8,18,35,.72);z-index:9998;display:none;align-items:center;justify-content:center;padding:20px}
.payment-modal-card{width:min(620px,96vw);max-height:92vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:0 34px 100px rgba(0,0,0,.34)}
.modal-close{float:right;border:0;background:#fee2e2;color:#991b1b;border-radius:50%;width:36px;height:36px;font-size:22px;cursor:pointer}
.certificate-page{background:#f8fafc;padding:30px}
.auth-modal-card .form-two{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.auth-modal-card label{font-weight:900;color:var(--navy)}
.auth-modal-card input,.auth-modal-card textarea{width:100%;padding:11px 13px;border:1px solid #d9cba6;border-radius:14px;background:#fffdf8}
.auth-modal-card textarea{min-height:54px}
@media (max-width:1100px){
.member-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.focus-grid,.jobs-grid,.team-grid,.gallery-grid,.program-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
.hero-grid,.split{grid-template-columns:1fr}
.hero-grid{min-height:auto;padding:64px 0}
.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:920px){
.topbar-inner{justify-content:center}
.nav-wrap{padding:12px 0}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center}
.nav-menu{position:absolute;left:4%;right:4%;top:100%;display:none;flex-direction:column;align-items:stretch;background:#fffdf8;border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:0 22px 60px rgba(16,33,63,.18)}
.nav-menu.open{display:flex}
.nav-menu a,.nav-menu button,.nav-menu .nav-popup-btn{text-align:center;width:100%;display:flex;align-items:center;justify-content:center}
.member-hero-grid,.auth-page-grid{grid-template-columns:1fr}
.member-tabs-shell{grid-template-columns:1fr!important}
.member-tabs{position:static;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
.form-two,.auth-modal-card .form-two{grid-template-columns:1fr!important}
.tab-heading{flex-direction:column}
.hero h1,.page-hero h1{font-size:clamp(2.2rem,10vw,3.4rem)}
}
@media (max-width:680px){
.container{width:min(100% - 28px,1180px)}
.topbar{font-size:.85rem}
.brand-mark{width:42px;height:42px}
.brand strong{font-size:1.05rem}
.brand small{font-size:.66rem}
.section{padding:54px 0}
.hero-grid{padding:52px 0}
.hero-actions,.member-quick-actions{flex-direction:column}
.btn,.hero-actions .btn,.member-quick-actions .btn{width:100%!important}
.program-strip,.focus-grid,.jobs-grid,.team-grid,.gallery-grid,.member-stat-grid{grid-template-columns:1fr}
.member-tabs{grid-template-columns:1fr!important}
.panel,.tab-card,.admin-card-soft,.auth-card,.auth-modal-card,.member-id-card{padding:20px;border-radius:22px}
.data-table{min-width:720px}
.inline-form{flex-direction:column;align-items:stretch}
.inline-form select,.inline-form input,.inline-form .btn-small{width:100%}
.auth-switch{grid-template-columns:1fr;border-radius:20px}
.auth-modal{padding:12px}
.auth-modal-card{max-height:95vh}
.auth-page-hero{padding:56px 0}
.auth-page-hero h1{font-size:2.4rem}
.footer-grid{grid-template-columns:1fr!important;text-align:center}
.footer-brand{justify-content:center}
}
@media (max-width:420px){
.container{width:min(100% - 20px,1180px)}
.member-hero{padding:46px 0}
.tab-link{font-size:.92rem;padding:12px}
.member-stat-card{padding:18px}
.auth-modal-head h2{font-size:1.65rem}
}
/* === Register/Login popup and auth page layout final fix === */
body.auth-lock{overflow:hidden}
.auth-modal[hidden]{display:none!important}
.auth-modal{position:fixed!important;inset:0!important;z-index:10000!important;display:none!important;align-items:center!important;justify-content:center!important;padding:18px!important;background:transparent!important}
.auth-modal.active{display:flex!important}
.auth-modal-backdrop{position:absolute;inset:0;background:rgba(8,18,35,.76);backdrop-filter:blur(6px)}
.auth-modal-card{position:relative!important;z-index:1!important;width:min(850px,96vw)!important;max-height:92vh!important;overflow:auto!important;background:linear-gradient(180deg,#fffdf8,#fff8ea)!important;border:1px solid rgba(201,151,54,.42)!important;border-radius:32px!important;box-shadow:0 36px 120px rgba(0,0,0,.38)!important;padding:30px!important}
.auth-modal-close{position:absolute!important;right:18px!important;top:16px!important;width:40px!important;height:40px!important;border:0!important;border-radius:50%!important;background:#fee2e2!important;color:#991b1b!important;font-size:28px!important;line-height:1!important;cursor:pointer!important}
.auth-modal-head{text-align:center!important;padding:4px 46px 0}
.auth-badge{display:inline-flex!important;padding:7px 14px!important;border-radius:999px!important;background:#f5e7c3!important;color:#7a4d07!important;font-weight:900!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.auth-modal-head h2{font:700 clamp(1.7rem,4vw,2.4rem)/1.08 Cinzel,serif!important;color:var(--navy)!important;margin:12px 0 8px!important}
.auth-modal-head p{color:var(--muted)!important;margin:0 auto 18px!important;max-width:610px!important}
.auth-switch{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:999px!important;padding:7px!important;margin:18px auto 22px!important;max-width:380px!important}
.auth-tab-btn{border:0!important;border-radius:999px!important;background:transparent!important;padding:12px 15px!important;font-weight:900!important;color:var(--navy)!important;cursor:pointer!important}
.auth-tab-btn.active{background:linear-gradient(135deg,var(--navy),var(--green))!important;color:#fff!important}
.auth-tab-panel{display:none!important}
.auth-tab-panel.active{display:block!important}
.auth-popup-form{display:grid!important;gap:16px!important}
.auth-popup-form .compact-form-two{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.auth-popup-form label{display:block!important;font-weight:900!important;color:var(--navy)!important}
.auth-popup-form input,.auth-popup-form textarea{margin-top:7px!important;width:100%!important;border:1px solid #d9cba6!important;border-radius:14px!important;background:#fffdf8!important;padding:12px 13px!important;color:var(--text)!important;font:inherit!important}
.auth-popup-form textarea{min-height:58px!important;resize:vertical!important}
.auth-popup-form .btn{width:100%!important;margin-top:4px!important}
.auth-page-hero{background:radial-gradient(circle at 86% 18%,rgba(240,209,139,.32),transparent 30%),linear-gradient(135deg,var(--navy),var(--green) 58%,var(--maroon))!important;color:#fff!important;padding:72px 0!important}
.auth-page-grid{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)!important;gap:28px!important;align-items:center!important}
.auth-page-hero h1{font:700 clamp(2.5rem,5vw,4.7rem)/1.02 Cinzel,serif!important;margin:14px 0 10px!important}
.auth-page-hero p{color:#fff1d8!important;max-width:670px!important}
.auth-section{padding:58px 0 78px!important}
.auth-shell{display:flex!important;justify-content:center!important}
.auth-card{width:min(560px,100%)!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:32px!important;padding:34px!important;box-shadow:var(--shadow)!important}
.auth-card.wide{width:min(880px,100%)!important}
.auth-card-head span{display:inline-flex!important;background:#e9f8ef!important;color:#126b39!important;border-radius:999px!important;padding:7px 13px!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.auth-card-head h2{font:700 clamp(1.7rem,3vw,2.25rem)/1.1 Cinzel,serif!important;color:var(--navy)!important;margin:14px 0 22px!important}
.auth-modern-form{display:grid!important;gap:16px!important}
.auth-modern-form .form-two,.auth-card .form-two{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.auth-modern-form label{font-weight:900!important;color:var(--navy)!important}
.auth-modern-form input,.auth-modern-form textarea{margin-top:7px!important;background:#fffdf8!important;border:1px solid #d9cba6!important;border-radius:14px!important;padding:12px 13px!important;width:100%!important}
.auth-modern-form textarea{min-height:92px!important}
.auth-modern-form .btn{width:100%!important;margin-top:6px!important}
.auth-bottom-text{text-align:center!important;font-weight:800!important;color:var(--muted)!important}
.page-login .auth-modal,.page-register .auth-modal{display:none!important}
@media (max-width:920px){
.auth-page-grid{grid-template-columns:1fr!important}
.auth-visual-card{justify-self:stretch!important}
.auth-popup-form .compact-form-two,.auth-modern-form .form-two,.auth-card .form-two{grid-template-columns:1fr!important}
.auth-modal-card{padding:24px!important}
.auth-modal-head{padding:4px 34px 0}
.auth-switch{border-radius:20px!important}
.nav-menu .nav-popup-btn{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important}
}
@media (max-width:560px){
.auth-modal{padding:10px!important}
.auth-modal-card{border-radius:22px!important;padding:20px!important;max-height:95vh!important}
.auth-modal-head{padding:4px 32px 0}
.auth-switch{grid-template-columns:1fr!important}
.auth-page-hero{padding:52px 0!important}
.auth-card{padding:22px!important;border-radius:24px!important}
}
/* Final clean auth/menu fixes */
.nav-menu .nav-auth-link,.nav-menu .nav-popup-btn{border:1px solid #eadfcb!important;
  background:#fffdf8!important;
  color:var(--navy)!important;
  border-radius:999px!important;
  padding:10px 15px!important;
  min-width:92px!important;
  min-height:42px!important;
  font:700 1rem Inter,system-ui,-apple-system,Segoe UI,sans-serif!important;
  line-height:1!important;
  cursor:pointer!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;}
.nav-menu .nav-auth-link:hover,.nav-menu .nav-auth-link.active,.nav-menu .nav-popup-btn:hover,.nav-menu .nav-popup-btn.active{background:#f3e3bf!important;
  color:#6c4710!important;}
.nav-menu .nav-cta.active{outline:2px solid rgba(201,151,54,.65)}
.auth-card-equal{width:min(620px,100%)!important;}
.auth-card-equal .auth-modern-form label{display:block!important;}
.auth-card-equal .auth-modern-form input{margin-top:7px!important;}
.auth-visual-card{background:rgba(255,253,248,.12);border:1px solid rgba(240,209,139,.38);border-radius:28px;padding:28px;box-shadow:0 24px 70px rgba(16,33,63,.18);display:grid;gap:8px;justify-self:end;min-width:260px}
.auth-visual-card strong{font:700 1.6rem Cinzel,serif;color:#fff}
.auth-visual-card span{color:#ffeec7;font-weight:800}
@media (max-width:920px){
.nav-menu .nav-auth-link,.nav-menu .nav-popup-btn{width:100%!important;min-width:0!important}
.nav-menu .nav-cta{order:3}
.nav-menu a[href="gallery.php"]{order:4}
.nav-menu a[href="contact.php"]{order:5}
.nav-menu .nav-auth-link{order:6}
}
/* Uniform menu tab layout - all top menu items use the same style */
.nav-menu{gap:8px!important;}
.nav-menu a,.nav-menu button,.nav-menu .nav-popup-btn,.nav-menu .nav-auth-link,.nav-menu .nav-cta{appearance:none!important;
  border:1px solid #eadfcb!important;
  background:#fffdf8!important;
  color:var(--navy)!important;
  border-radius:999px!important;
  padding:10px 16px!important;
  min-width:92px!important;
  min-height:42px!important;
  font:700 1rem Inter,system-ui,-apple-system,Segoe UI,sans-serif!important;
  line-height:1!important;
  cursor:pointer!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  box-shadow:none!important;}
.nav-menu a:hover,.nav-menu button:hover,.nav-menu a.active,.nav-menu button.active,.nav-menu .nav-popup-btn:hover,.nav-menu .nav-popup-btn.active,.nav-menu .nav-auth-link:hover,.nav-menu .nav-auth-link.active,.nav-menu .nav-cta:hover,.nav-menu .nav-cta.active{background:#f3e3bf!important;
  color:#6c4710!important;
  outline:0!important;}
@media (max-width:920px){
.nav-menu a,.nav-menu button,.nav-menu .nav-popup-btn,.nav-menu .nav-auth-link,.nav-menu .nav-cta{width:100%!important;
    min-width:0!important;}
.nav-menu a[href="index.php"]{order:1}
.nav-menu a[href="about.php"]{order:2}
.nav-menu a[href="gallery.php"]{order:3}
.nav-menu a[href="donate.php"]{order:4}
.nav-menu .nav-auth-link,.nav-menu .nav-popup-btn{order:6}
}
/* Volunteer donation invitation feature */
.invite-layout{display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 22px;
  align-items: start;}
.invite-donor-box{display: grid;
  gap: 6px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #fff8e8;
  border: 1px solid rgba(217, 143, 41, 0.25);
  margin-bottom: 16px;}
.invite-donor-box strong{color: #7a4217;}
.invite-donor-box span{color: #664b32;}
.invite-actions{display: flex;
  gap: 8px;
  align-items: center;
  min-width: 420px;}
.invite-link-input{min-width: 230px;
  border: 1px solid rgba(32, 53, 73, 0.15);
  border-radius: 12px;
  padding: 10px 12px;
  background: #f7faf9;
  color: #28404b;
  font-size: 13px;}
.invite-table .btn{padding: 10px 12px;
  min-height: 38px;
  white-space: nowrap;}
@media (max-width: 1050px){
.invite-layout{grid-template-columns: 1fr;}
.invite-actions{min-width: 360px;}
}
@media (max-width: 640px){
.invite-actions{flex-direction: column; align-items: stretch; min-width: 260px;}
.invite-link-input{min-width: 100%; width: 100%;}
}
.btn-small.danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}
.btn-small.danger:hover{background:#fecaca}
.admin-card-soft input[type=date]{width:100%;padding:12px 14px;border:1px solid #d9cba6;border-radius:14px;background:#fffdf8}
/* Final update: admin manage-member cards aligned with member dashboard */
.member-card-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(15,23,42,.08)}
.member-card-topline h3{margin:8px 0 4px;color:#0f172a;font-size:22px}
.member-card-topline p{margin:0;color:#64748b;font-weight:800}
.member-card-status{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.member-card-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
@media (max-width:560px){
.member-card-topline{display:block}
.member-card-status{justify-content:flex-start;margin-top:12px}
.member-card-actions .btn{width:100%}
}
/* Member charity/event invite request + admin approval UI */
.event-request-layout .tab-card{min-height:100%}
.admin-event-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}
.event-summary-card{background:#fff8e8;border:1px solid rgba(217,143,41,.22);border-radius:18px;padding:16px}
.event-summary-card span{display:block;color:#64748b;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.event-summary-card strong{display:block;color:#10213f;font-size:28px;margin-top:6px}
.event-review-form input{min-width:190px}
.event-status-pending{background:#fff7ed!important;color:#9a3412!important}
.event-status-accepted{background:#dcfce7!important;color:#166534!important}
.event-status-rejected{background:#fee2e2!important;color:#991b1b!important}
@media (max-width:800px){
.admin-event-summary-grid{grid-template-columns:1fr}
.event-review-form input{min-width:100%}
}
/* Final member dashboard fix: prevent Status/Position cards and tab buttons from overlapping */
.member-stat-grid{grid-template-columns:repeat(5,minmax(160px,1fr))!important;
  align-items:stretch!important;}
.member-stat-card{min-width:0!important;overflow:hidden!important;}
.member-stat-card strong{overflow-wrap:anywhere!important;
  word-break:normal!important;
  font-size:clamp(1.1rem,1.8vw,1.55rem)!important;}
.member-tabs-shell{grid-template-columns:280px minmax(0,1fr)!important;}
.member-tabs{overflow:hidden!important;}
.tab-link{display:flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:normal!important;
  line-height:1.2!important;
  overflow-wrap:anywhere!important;}
#account.tab-panel.active{display:grid!important;gap:22px!important;}
@media (max-width:1200px){
.member-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (max-width:920px){
.member-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;position:static!important}
.member-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:680px){
.member-stat-grid{grid-template-columns:1fr!important}
}
/* Wallet bonus for invite-donation flow */
.wallet-balance-card{display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 22px;
  margin: 18px 0;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 245, 224, .96), rgba(238, 255, 237, .96));
  border: 1px solid rgba(122, 66, 23, .16);
  box-shadow: 0 12px 28px rgba(71, 43, 10, .08);}
.wallet-balance-card span{font-weight: 800;
  color: #6a4b25;}
.wallet-balance-card strong{font-size: clamp(1.5rem, 4vw, 2.35rem);
  color: #12833a;
  white-space: nowrap;}
.invite-donor-box small{display: block;
  margin-top: 8px;
  font-weight: 800;
  color: #12833a;}
@media (max-width: 640px){
.wallet-balance-card{flex-direction: column;
    align-items: flex-start;}
}
/* Submit button sizing fix - login/register pages and popups */
.auth-modern-form .btn[type="submit"],.auth-popup-form .btn[type="submit"],.auth-wrap .form .btn[type="submit"],.auth-wrap .form button.btn{width: auto !important;
  min-width: 150px !important;
  max-width: 240px !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
  justify-self: center !important;
  align-self: center !important;
  margin: 10px auto 0 !important;
  display: inline-flex !important;}
.auth-modern-form,.auth-popup-form,.auth-wrap .form{justify-items: stretch !important;}
.auth-modern-form .form-two,.auth-popup-form .form-two{width: 100% !important;}
@media (max-width:560px){
.auth-modern-form .btn[type="submit"],.auth-popup-form .btn[type="submit"],.auth-wrap .form .btn[type="submit"],.auth-wrap .form button.btn{width: min(220px, 100%) !important;
    min-width: 140px !important;}
}
/* Final wallet payment + hero spacing update */
.wallet-topup-form select option[value="Bank Transfer"],.wallet-topup-form select option[value="Cash"]{display:none!important;}
@media (max-width:680px){
.member-dashboard-section{padding-top:54px!important;}
}
/* Profile password fields inside My Account */
/* Charity/Event Invite layout update: Member Invite full width, Approval Status below */
#event-invite .event-request-layout .tab-card{width:100%;
  max-width:100%;}
#event-invite .event-request-layout .dashboard-form textarea{min-height:130px;}
/* Invite Donors layout update: Volunteer Invite full width, Invite History below */
#invite .invite-layout{display:grid;
  grid-template-columns:1fr;
  gap:26px;
  width:100%;}
#invite .invite-layout .tab-card{width:100%;
  max-width:100%;}
#invite .invite-layout .dashboard-form textarea{min-height:130px;}
#invite .invite-layout .table-wrap{width:100%;
  overflow-x:auto;}
#invite .invite-layout .data-table{min-width:980px;}
#invite .invite-actions{min-width:520px;}
@media (max-width:760px){
#invite .invite-actions{min-width:260px;}
#invite .invite-layout{gap:20px;}
}
/* Razorpay payment model update */
.razorpay-wallet-form,.razorpay-donation-form{max-width: 760px;
  margin: 18px auto 24px;}
.wallet-payment-method{display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  padding: 14px 16px;
  border: 1px solid rgba(15, 118, 110, 0.18);
  border-radius: 16px;
  background: rgba(15, 118, 110, 0.06);
  margin-bottom: 14px;}
.wallet-payment-method small{color: #64748b; font-weight: 600;}
.razorpay-wallet-form .btn,.razorpay-donation-form .btn{width: fit-content;
  min-width: 240px;
  margin: 18px auto 0;
  justify-content: center;}
.razorpay-donation-form .btn{display: inline-flex;}
/* Account Status membership card update */
.account-status-card-updated{grid-template-columns:minmax(320px, 430px) minmax(0,1fr) !important;
  align-items:start !important;}
.account-card-left{display:flex;
  flex-direction:column;
  gap:16px;}
.colorful-membership-card{min-height:235px;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.26), transparent 28%),
    radial-gradient(circle at 82% 20%, rgba(240,209,139,.44), transparent 30%),
    linear-gradient(135deg,#0b1f3d 0%, #14532d 48%, #7a2436 100%) !important;
  border:1px solid rgba(240,209,139,.62) !important;
  color:#fff !important;
  box-shadow:0 24px 70px rgba(11,31,61,.26) !important;}
.colorful-membership-card:after{content:"";
  position:absolute;
  right:-45px;
  bottom:-55px;
  width:170px;
  height:170px;
  border-radius:50%;
  background:rgba(255,255,255,.12);}
.colorful-membership-card small{color:#f3d994 !important;}
.colorful-membership-card h2,.colorful-membership-card p{color:#fff !important;}
.membership-download-btn{width:fit-content !important;
  min-width:260px;
  justify-content:center;
  align-self:center;}
@media (max-width:920px){
.account-status-card-updated{grid-template-columns:1fr !important;}
.membership-download-btn{width:100% !important;}
}
/* Guest donation Pay Now button sizing */
.guest-razorpay-donation-form .pay-now-btn{width:auto;
  min-width:150px;
  max-width:220px;
  padding:12px 30px;
  display:inline-flex;
  justify-content:center;
  align-items:center;}
/* Final alignment fix: center Guest Donation Pay Now button */
.guest-razorpay-donation-form .donate-pay-now-wrap{width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  margin-top:18px !important;}
.guest-razorpay-donation-form .pay-now-btn,#guestRazorpayDonationBtn{width:auto !important;
  min-width:140px !important;
  max-width:190px !important;
  margin:0 auto !important;
  padding:12px 28px !important;
  display:inline-flex !important;
  justify-content:center !important;
  align-items:center !important;}
/* Centered compact Save Profile button */
.profile-save-action{display:flex;justify-content:center;align-items:center;margin-top:18px}
.profile-save-action .save-profile-btn{width:auto!important;min-width:160px;max-width:220px;padding-left:28px;padding-right:28px}
@media (max-width:640px){
.profile-save-action .save-profile-btn{width:auto!important;min-width:150px;max-width:210px}
}
/* Invite Donors button alignment */
#invite .invite-submit-action{display:flex;justify-content:center;align-items:center;margin-top:16px;}
#invite .invite-submit-btn{width:auto!important;min-width:130px;max-width:190px;padding-left:34px;padding-right:34px;}
@media (max-width:640px){
#invite .invite-submit-btn{min-width:120px;max-width:180px;}
}
/* Hero overlap fix: remove old negative dashboard/stat overlap behavior and add safe separation */
.member-hero{margin-bottom:0!important;
  position:relative!important;
  z-index:1!important;}
.member-dashboard-section{position:relative!important;
  z-index:2!important;
  clear:both!important;
  padding-top:96px!important;
  margin-top:0!important;}
.member-dashboard-section .container{position:relative!important;
  z-index:3!important;}
.member-dashboard-section .member-stat-grid{margin-top:0!important;
  margin-bottom:30px!important;
  transform:none!important;
  position:relative!important;
  z-index:4!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.member-dashboard-section .member-tabs-shell{position:relative!important;
  z-index:3!important;}
@media (max-width:920px){
.member-dashboard-section{padding-top:72px!important;}
.member-dashboard-section .member-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:680px){
.member-dashboard-section{padding-top:56px!important;}
.member-dashboard-section .member-stat-grid{grid-template-columns:1fr!important;}
}
/* Compact centered Add Fund button in My Wallet */
.razorpay-wallet-form #razorpayWalletBtn{display:flex!important;
  width:auto!important;
  min-width:140px!important;
  max-width:190px!important;
  padding-left:32px!important;
  padding-right:32px!important;
  margin:18px auto 0!important;
  justify-content:center!important;
  align-items:center!important;}
@media (max-width:640px){
.razorpay-wallet-form #razorpayWalletBtn{min-width:130px!important;max-width:180px!important;}
}
/* Final fix: full-width Charity Event member invite + approval status in dashboard.php */
#event-invite.tab-panel.active{width:100% !important;
  max-width:100% !important;
  min-width:0 !important;}
#event-invite .event-request-layout{display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:26px !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  align-items:stretch !important;}
#event-invite .event-request-layout > .panel.tab-card{width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;}
#event-invite .event-request-layout .dashboard-form{width:100% !important;
  max-width:none !important;}
#event-invite .event-request-layout .tab-heading{width:100% !important;}
#event-invite .event-request-layout .tab-heading p{max-width:none !important;}
#event-invite .event-request-layout .form-two{width:100% !important;}
#event-invite .event-request-layout .table-wrap{width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow-x:auto !important;}
#event-invite .event-request-layout .data-table{width:100% !important;
  min-width:760px !important;}
@media (max-width:920px){
#event-invite .event-request-layout{gap:20px !important;}
}
@media (max-width:680px){
#event-invite .event-request-layout .data-table{min-width:680px !important;}
}
/* Contact Form: compact Send Message button */
#contact-form .contact-submit-btn{width:auto !important;
  min-width:170px !important;
  max-width:220px !important;
  padding-left:30px !important;
  padding-right:30px !important;
  justify-self:center !important;}
@media (max-width:580px){
#contact-form .contact-submit-btn{width:auto !important;
    min-width:160px !important;
    max-width:210px !important;
    justify-self:center !important;}
}
/* === Admin CP overlap fix: keep stats below hero instead of pulling them over it === */
/* Compact centered button for CP > Members > Member Wallet */
.member-wallet-submit-action{display:flex;justify-content:center;align-items:center;margin-top:14px;}
.member-wallet-submit-action .member-wallet-submit-btn{width:auto!important;min-width:180px;max-width:240px;padding-left:30px;padding-right:30px;}
@media (max-width:640px){
.member-wallet-submit-action .member-wallet-submit-btn{width:auto!important;min-width:170px;max-width:230px;}
}
/* Compact centered Add Donation button in CP Action Tab */
.add-donation-submit-action{display:flex;justify-content:center;align-items:center;margin-top:14px;}
.add-donation-submit-action .add-donation-submit-btn{width:auto!important;min-width:150px;max-width:210px;padding-left:30px;padding-right:30px;}
@media (max-width:640px){
.add-donation-submit-action .add-donation-submit-btn{width:auto!important;min-width:145px;max-width:200px;}
}
/* Manage Member compact list + profile popup */
.manage-member-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:18px;align-items:end}
.manage-member-search-box label{display:block;font-weight:900;color:var(--navy);margin-bottom:7px}
.manage-member-search-box input{width:100%;border:1px solid #d9cba6;border-radius:999px;padding:12px 16px;background:#fffdf8;font:inherit}
.manage-member-table th:nth-child(2),.manage-member-table td:nth-child(2),.manage-member-table th:nth-child(3),.manage-member-table td:nth-child(3){text-align:center}
.manage-member-table td strong{display:block;color:var(--navy);font-size:1rem}
.manage-member-table td small{display:block;color:var(--muted);font-weight:700;margin-top:3px}
.donation-total-badge{display:inline-flex;justify-content:center;align-items:center;min-width:120px;border-radius:999px;background:#fff2cd;color:#7a4a00;border:1px solid rgba(201,151,54,.35);padding:9px 14px;font-weight:900}
.view-profile-btn{min-width:116px;background:linear-gradient(135deg,#10213f,#12614d)}
.manage-member-no-result{margin-top:14px}
.member-profile-modal[hidden]{display:none!important}
.member-profile-modal{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:18px}
.member-profile-backdrop{position:absolute;inset:0;background:rgba(8,18,35,.72);backdrop-filter:blur(5px)}
.member-profile-dialog{position:relative;width:min(860px,96vw);max-height:92vh;overflow:auto;background:linear-gradient(180deg,#fffdf8,#ffffff);border:1px solid rgba(201,151,54,.42);border-radius:30px;padding:30px;box-shadow:0 34px 110px rgba(0,0,0,.35)}
.member-profile-close{position:absolute;right:18px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:#fee2e2;color:#991b1b;font-size:28px;line-height:1;cursor:pointer}
.profile-modal-head{padding-right:48px;margin-bottom:18px}
.profile-modal-head h3{font:700 1.8rem/1.1 Cinzel,serif;color:var(--navy);margin:10px 0 6px}
.profile-modal-head p{margin:0;color:var(--muted);font-weight:800}
.member-profile-form textarea{min-height:92px}
.member-profile-actions{display:flex;justify-content:center;margin-top:18px}
.member-profile-actions .btn{width:auto!important;min-width:190px}
body.member-profile-open{overflow:hidden}
@media (max-width:760px){
.manage-member-heading{grid-template-columns:1fr}
.manage-member-table{min-width:640px}
.member-profile-dialog{padding:22px;border-radius:24px}
.member-profile-form .form-two{grid-template-columns:1fr!important}
.member-profile-actions .btn{width:100%!important}
}
/* Update: colored pagination controls for admin recent lists */
.admin-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:18px;flex-wrap:wrap}
.admin-page-btn{border:0;border-radius:999px;padding:9px 18px;font-weight:900;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.12);transition:.2s ease;font:inherit}
.admin-page-prev{background:#0d6efd;color:#fff}
.admin-page-next{background:#16a34a;color:#fff}
.admin-page-btn:disabled{background:#cbd5e1;color:#64748b;cursor:not-allowed;box-shadow:none}
.admin-page-btn:not(:disabled):hover{transform:translateY(-1px);filter:brightness(.96)}
.admin-page-info{font-weight:900;color:var(--navy);background:#fff8e6;border:1px solid #f0d28a;border-radius:999px;padding:8px 14px}
/* Admin Profile: compact centered Save button */
.admin-profile-save-action{width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin-top:18px !important;}
.admin-profile-save-action .admin-profile-save-btn{width:auto !important;
  min-width:120px !important;
  max-width:170px !important;
  padding:12px 34px !important;
  display:inline-flex !important;
  justify-content:center !important;
  align-items:center !important;}
@media (max-width:640px){
.admin-profile-save-action .admin-profile-save-btn{min-width:110px !important;
    max-width:160px !important;}
}
/* Events > Event Manager: compact centered Create Event button */
.create-event-submit-action{display:flex;justify-content:center;align-items:center;margin-top:14px;}
.create-event-submit-action .create-event-submit-btn{width:auto!important;min-width:150px;max-width:210px;padding-left:30px;padding-right:30px;}
@media (max-width:640px){
.create-event-submit-action .create-event-submit-btn{width:auto!important;min-width:145px;max-width:200px;}
}
/* Attendance tab refinement: reduced form width and centered Mark Attendance action */
#admin-tab-attendance .admin-form-panel{max-width:760px;margin-left:auto;margin-right:auto;}
#admin-tab-attendance .dashboard-form{max-width:640px;margin-left:auto;margin-right:auto;}
#admin-tab-attendance .attendance-submit-action{display:flex;justify-content:center;align-items:center;margin-top:18px;}
#admin-tab-attendance .attendance-submit-btn{min-width:190px;width:auto;margin-top:0;}
@media (max-width:680px){
#admin-tab-attendance .admin-form-panel,#admin-tab-attendance .dashboard-form{max-width:100%;}
#admin-tab-attendance .attendance-submit-btn{width:100%;}
}
/* === Enhanced Login/Register Pages + Popups === */
.enhanced-auth-hero{position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 12% 18%, rgba(240,209,139,.30), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(255,255,255,.16), transparent 32%),
    linear-gradient(135deg,#0f2140 0%,#12614d 56%,#7a2436 100%)!important;}
.enhanced-auth-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:38px 38px;opacity:.22;pointer-events:none;}
.enhanced-auth-grid{position:relative;z-index:1;min-height:360px!important;}
.auth-hero-copy p{font-size:1.08rem!important;line-height:1.8!important;}
.auth-hero-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.auth-hero-points span{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(240,209,139,.38);color:#fff7df;font-weight:900;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.enhanced-auth-visual{min-height:185px!important;background:rgba(255,255,255,.13)!important;backdrop-filter:blur(12px);border:1px solid rgba(240,209,139,.50)!important;box-shadow:0 26px 80px rgba(0,0,0,.22)!important;}
.enhanced-auth-visual .visual-icon{font-size:2.4rem;width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);}
.enhanced-auth-section{background:linear-gradient(180deg,#fffdf8 0%,#fff8ea 58%,#fffdf8 100%)!important;}
.enhanced-auth-card{position:relative!important;overflow:hidden!important;border:1px solid rgba(201,151,54,.30)!important;background:linear-gradient(180deg,#ffffff 0%,#fffdf8 100%)!important;box-shadow:0 30px 90px rgba(16,33,63,.16)!important;}
.enhanced-auth-card:before{content:"";position:absolute;left:0;right:0;top:0;height:7px;background:linear-gradient(90deg,var(--gold),var(--green),var(--maroon));}
.enhanced-auth-card .auth-card-head{text-align:center;margin-bottom:4px;}
.auth-card-subtitle{margin:-10px auto 22px!important;color:var(--muted)!important;font-weight:700!important;max-width:560px;}
.enhanced-form label,.enhanced-popup-form label{position:relative;}
.enhanced-form input,.enhanced-form textarea,.enhanced-popup-form input,.enhanced-popup-form textarea{transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;background:#fffefa!important;}
.enhanced-form input:focus,.enhanced-form textarea:focus,.enhanced-popup-form input:focus,.enhanced-popup-form textarea:focus{outline:0!important;border-color:var(--gold)!important;box-shadow:0 0 0 4px rgba(201,151,54,.18)!important;}
.auth-form-note{padding:12px 14px;border-radius:16px;background:#f0fdf4;border:1px solid rgba(18,97,77,.18);color:#12614d;font-weight:800;font-size:.92rem;text-align:center;}
.popup-note{margin-top:0!important;}
.enhanced-register-card{width:min(900px,100%)!important;}
.enhanced-auth-modal-card{background:linear-gradient(180deg,#ffffff,#fff8ea)!important;border:1px solid rgba(201,151,54,.46)!important;box-shadow:0 38px 140px rgba(4,10,24,.46)!important;}
.enhanced-auth-modal-card:before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:linear-gradient(90deg,var(--gold),var(--green),var(--maroon));border-radius:32px 32px 0 0;}
.enhanced-auth-modal-head{padding-top:10px!important;}
.auth-modal-benefits{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:14px auto 0;}
.auth-modal-benefits span{padding:7px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--navy);font-size:12px;font-weight:900;}
.enhanced-popup-form{background:rgba(255,255,255,.58);border:1px solid rgba(234,223,203,.72);border-radius:24px;padding:20px;box-shadow:0 16px 42px rgba(16,33,63,.08);}
.enhanced-popup-form .compact-form-two{gap:16px!important;}
.enhanced-popup-form .btn[type="submit"],.enhanced-form .btn[type="submit"]{background:linear-gradient(135deg,var(--maroon),#b33754)!important;color:#fff!important;border:0!important;border-radius:999px!important;box-shadow:0 15px 34px rgba(122,36,54,.24)!important;}
.enhanced-popup-form .btn[type="submit"]:hover,.enhanced-form .btn[type="submit"]:hover{transform:translateY(-1px);box-shadow:0 18px 42px rgba(122,36,54,.32)!important;}
@media (max-width:920px){
.enhanced-auth-grid{min-height:auto!important}
.auth-hero-points{gap:8px}
.enhanced-auth-visual{justify-self:stretch!important}
.enhanced-popup-form{padding:16px}
.auth-modal-benefits{margin-bottom:2px}
}
@media (max-width:560px){
.auth-hero-points{display:grid}
.auth-hero-points span{justify-content:center}
.enhanced-auth-card .auth-card-head{text-align:left}
.auth-card-subtitle{text-align:left!important}
.auth-form-note{text-align:left}
.enhanced-auth-modal-card:before{border-radius:22px 22px 0 0}
.enhanced-popup-form{border-radius:18px;padding:14px}
}
/* Session-aware menu dashboard links */
.nav-dashboard-link{display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    font-weight: 800;
    background: rgba(140, 88, 30, 0.10);
    border: 1px solid rgba(140, 88, 30, 0.22);}
.nav-dashboard-link::before{content: "▦";
    margin-right: 7px;
    font-size: 0.95em;}
.nav-dashboard-link.active,.member-dashboard-menu-link.active{background: linear-gradient(135deg, #8c581e, #c8923c);
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(140, 88, 30, 0.22);}
/* Wallet top-up single-row layout */
.wallet-topup-row{display:grid;
  grid-template-columns:minmax(240px,1fr) auto;
  gap:16px;
  align-items:end;
  width:100%;}
.wallet-amount-field label{margin-top:0;}
.wallet-addfund-action{display:flex;
  align-items:flex-end;
  justify-content:center;}
.razorpay-wallet-form .wallet-addfund-action .btn{min-width:180px;
  width:auto;
  margin:0;
  height:48px;
  justify-content:center;}
@media (max-width:700px){
.wallet-topup-row{grid-template-columns:1fr;}
.wallet-addfund-action{justify-content:center;}
.razorpay-wallet-form .wallet-addfund-action .btn{width:100%;}
}
/* CP > Member Wallet: single-row searchable member fund form */
.member-wallet-search-row{display:grid;
  grid-template-columns:minmax(300px,1.45fr) minmax(160px,.65fr) auto;
  gap:14px;
  align-items:end;
  width:100%;
  margin-bottom:14px;}
.member-wallet-member-field,.member-wallet-amount-field,.member-wallet-submit-field{min-width:0;}
.member-wallet-member-field label,.member-wallet-amount-field label{display:block;font-weight:900;color:var(--navy);margin-bottom:7px;}
.member-wallet-search-input{margin-bottom:8px;}
.member-wallet-amount-field input,.member-wallet-search-input{width:100%;}
.member-wallet-submit-field{display:flex;align-items:end;justify-content:flex-start;padding-bottom:22px;}
.member-wallet-submit-field .member-wallet-submit-btn{width:auto!important;min-width:190px;max-width:260px;white-space:nowrap;padding-left:24px;padding-right:24px;}
.member-wallet-search-status{display:block;min-height:18px;margin-top:6px;color:var(--muted);font-weight:800;font-size:.82rem;}
.member-wallet-results{margin-top:8px;border:1px solid rgba(20,36,76,.15);border-radius:14px;background:#fff;box-shadow:0 12px 28px rgba(20,36,76,.12);max-height:220px;overflow:auto;padding:7px;position:absolute;z-index:20;width:100%;}
.member-wallet-member-field{position:relative;}
.member-wallet-result{width:100%;border:0;background:#fff;text-align:left;border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:3px;font-weight:900;color:var(--navy);}
.member-wallet-result:hover,.member-wallet-result.is-selected{background:linear-gradient(135deg,rgba(24,119,242,.1),rgba(33,150,83,.1));}
.member-wallet-result small{font-weight:700;color:var(--muted);}
.member-wallet-results[hidden],.member-wallet-result[hidden]{display:none!important;}
@media (max-width:980px){
.member-wallet-search-row{grid-template-columns:1fr 1fr;}
.member-wallet-submit-field{grid-column:1 / -1;justify-content:center;padding-bottom:0;}
}
@media (max-width:640px){
.member-wallet-search-row{grid-template-columns:1fr;}
.member-wallet-submit-field{justify-content:center;}
.member-wallet-submit-field .member-wallet-submit-btn{min-width:180px;max-width:240px;}
}
/* Final compact Member Wallet admin row */
#admin-tab-add-fund .member-wallet-search-row{display:grid!important;
  grid-template-columns:minmax(230px,300px) minmax(110px,130px) auto!important;
  gap:12px!important;
  align-items:end!important;
  max-width:660px!important;}
#admin-tab-add-fund .member-wallet-member-field{position:relative!important;max-width:300px!important;}
#admin-tab-add-fund .member-wallet-amount-field{max-width:130px!important;}
#admin-tab-add-fund .member-wallet-search-input,#admin-tab-add-fund .member-wallet-amount-field input{width:100%!important;
  height:42px!important;
  padding:8px 10px!important;}
#admin-tab-add-fund .member-wallet-submit-field{display:flex!important;align-items:end!important;justify-content:flex-start!important;}
#admin-tab-add-fund .member-wallet-submit-field .member-wallet-submit-btn{height:42px!important;
  width:auto!important;
  min-width:168px!important;
  max-width:205px!important;
  padding:8px 18px!important;
  white-space:nowrap!important;}
#admin-tab-add-fund .member-wallet-results{position:absolute!important;
  top:calc(100% + 4px)!important;
  left:0!important;
  width:100%!important;
  max-height:190px!important;
  overflow:auto!important;
  z-index:999!important;
  border:1px solid rgba(20,36,76,.18)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 14px 30px rgba(20,36,76,.16)!important;
  padding:5px!important;}
#admin-tab-add-fund .member-wallet-results[hidden],#admin-tab-add-fund .member-wallet-result[hidden]{display:none!important;}
#admin-tab-add-fund .member-wallet-result{padding:8px 10px!important;}
#admin-tab-add-fund .member-wallet-search-status{font-size:.78rem!important;line-height:1.2!important;margin-top:5px!important;}
#admin-tab-add-fund input[name="fund_note"]{max-width:660px!important;}
@media (max-width:900px){
#admin-tab-add-fund .member-wallet-search-row{grid-template-columns:minmax(220px,1fr) minmax(110px,140px) auto!important;max-width:100%!important;}
}
@media (max-width:720px){
#admin-tab-add-fund .member-wallet-search-row{grid-template-columns:1fr!important;}
#admin-tab-add-fund .member-wallet-member-field,#admin-tab-add-fund .member-wallet-amount-field{max-width:100%!important;}
#admin-tab-add-fund .member-wallet-submit-field{justify-content:center!important;}
}
/* Dashboard payment controls (moved from inline CSS; layout unchanged) */
.donation-payment-single-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(220px,1.15fr) auto;gap:16px;align-items:end;}
.donation-payment-single-row .donation-field label{margin-top:0;}
.donation-action-cell{display:flex;align-items:end;justify-content:center;}
.pay-donation-btn{width:auto!important;min-width:132px;max-width:156px;padding:10px 16px!important;margin:0!important;font-size:.88rem;line-height:1.15;text-align:center;justify-content:center;white-space:nowrap;}
.pay-donation-btn[hidden]{display:none!important;}
@media (max-width:760px){
.donation-payment-single-row{grid-template-columns:1fr;}
.donation-action-cell{justify-content:center;}
.pay-donation-btn{width:auto!important;min-width:140px;max-width:180px;padding:10px 16px!important;}
}
.membership-logout-action{margin-top:14px;text-align:center;}
.membership-logout-action .btn{min-width:180px;}
.info-list-spaced,.table-wrap-spaced{margin-top:22px}
.gallery-card-image{position:relative;overflow:hidden;padding:0}
.gallery-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gallery-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(16,33,63,.80),rgba(122,36,54,.66))}
.gallery-card-image h3{position:relative;z-index:2;padding:26px;margin:0;color:#fff}
/* =========================================================
   Hope Global CP 2.0 — dashboard layout based on supplied UI
   ========================================================= */
body.page-admin.admin-shell-body{margin:0;background:#f6f8fc;color:#111827;min-width:320px;overflow-x:hidden}
body.page-admin.admin-shell-body:before{display:none!important}
.admin-shell-main{min-height:100vh}
.cp-app{--cp-sidebar:246px;min-height:100vh;background:#f6f8fc}
.cp-sidebar{position:fixed;inset:0 auto 0 0;width:var(--cp-sidebar);z-index:1200;display:flex;flex-direction:column;background:linear-gradient(180deg,#142237 0%,#142235 54%,#0e1d31 100%);color:#eef5ff;box-shadow:12px 0 35px rgba(17,31,51,.12)}
.cp-brand-wrap{min-height:104px;display:flex;align-items:center;justify-content:space-between;padding:17px 18px 17px 22px;border-bottom:1px solid rgba(255,255,255,.06)}
.cp-brand{display:flex;align-items:center;gap:10px;color:#fff;min-width:0}
.cp-brand img{width:48px;height:48px;border-radius:50%;background:#fff;object-fit:cover;box-shadow:0 7px 20px rgba(0,0,0,.18)}
.cp-brand span{display:grid;line-height:1}
.cp-brand strong{font-size:23px;letter-spacing:.08em;color:#fff}
.cp-brand small{font-size:12px;letter-spacing:.42em;margin-top:4px;color:#fff}
.cp-brand em{font-size:10px;letter-spacing:.04em;margin-top:8px;color:#d4deec;font-style:normal}
.cp-sidebar-close{display:none;width:36px;height:36px;border:0;border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-size:24px;cursor:pointer}
.cp-nav{display:flex;flex-direction:column;gap:4px;padding:12px 10px 16px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;flex:1}
.cp-nav-heading{padding:18px 10px 6px;color:#c8d1df;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.06em}
.cp-nav-link{position:relative;width:100%;min-height:42px;display:flex;align-items:center;gap:12px;padding:9px 12px;border:0;border-radius:8px;background:transparent;color:#eef3f9;text-align:left;font:600 13px/1.25 Inter,system-ui,sans-serif;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.cp-nav-link:hover{background:rgba(255,255,255,.075);transform:translateX(2px)}
.cp-nav-link.active{background:linear-gradient(135deg,#315bd8,#294bbd);color:#fff;box-shadow:0 8px 18px rgba(42,79,195,.32)}
.cp-nav-icon{width:22px;height:22px;display:grid;place-items:center;font-size:18px;font-weight:800;flex:none;color:inherit}
.cp-nav-count{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;font-size:11px}
.cp-logout{margin:10px 14px 18px;padding:11px 10px;display:flex;align-items:center;gap:10px;color:#ff6262;font-weight:700;font-size:13px;border-radius:8px}
.cp-logout:hover{background:rgba(239,68,68,.1)}
.cp-sidebar-overlay{display:none;position:fixed;inset:0;z-index:1150;border:0;background:rgba(7,16,31,.48);backdrop-filter:blur(2px)}
.cp-main-area{min-height:100vh;margin-left:var(--cp-sidebar);display:flex;flex-direction:column}
.cp-topbar{position:sticky;top:0;z-index:1000;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 28px;background:rgba(255,255,255,.94);border-bottom:1px solid #e9edf3;backdrop-filter:blur(15px)}
.cp-topbar-title{display:flex;align-items:center;gap:13px;min-width:0}
.cp-topbar-title h1{margin:0;font:700 21px/1.1 Inter,system-ui,sans-serif;color:#111827}
.cp-topbar-title p{display:inline;margin:0 0 0 8px;color:#697386;font-size:12px;font-weight:500}
.cp-topbar-title>div{display:flex;align-items:baseline;min-width:0}
.cp-menu-toggle{display:none;width:40px;height:40px;border:1px solid #dfe5ed;border-radius:10px;background:#fff;color:#17243a;font-size:20px;cursor:pointer}
.cp-topbar-actions{display:flex;align-items:center;gap:18px}
.cp-date-range{padding:9px 12px;border:1px solid #e4e8ee;border-radius:8px;background:#fff;color:#1f2937;font-size:11px;font-weight:600;box-shadow:0 2px 8px rgba(15,23,42,.04);white-space:nowrap}
.cp-profile-wrap{position:relative}
.cp-profile-button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#111827;cursor:pointer;padding:4px;border-radius:10px}
.cp-profile-button:hover{background:#f3f6fa}
.cp-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#dce9ff,#c3d6fa);border:3px solid #fff;box-shadow:0 0 0 1px #dbe2ec;color:#244997;font-weight:800;font-size:12px}
.cp-profile-copy{display:grid;text-align:left;line-height:1.25}
.cp-profile-copy strong{font-size:12px;color:#111827}
.cp-profile-copy small{font-size:10px;color:#6b7280;margin-top:3px}
.cp-profile-caret{font-size:16px;color:#374151;margin-left:3px}
.cp-profile-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:1400;width:170px;padding:7px;background:#fff;border:1px solid #e3e8ef;border-radius:11px;box-shadow:0 16px 42px rgba(15,23,42,.16)}
.cp-profile-menu[hidden]{display:none!important}
.cp-profile-menu button,.cp-profile-menu a{width:100%;display:block;border:0;background:transparent;padding:10px 11px;border-radius:8px;text-align:left;color:#1f2937;font:600 12px Inter,system-ui,sans-serif;cursor:pointer}
.cp-profile-menu button:hover,.cp-profile-menu a:hover{background:#f1f5fb;color:#2549aa}
.cp-content{padding:24px 26px 0;flex:1;min-width:0}
.cp-alert{max-width:100%;margin:0 0 18px}
.cp-panel-stack{min-width:0}
.cp-panel-stack>.admin-tab-panel{display:none!important;width:100%;min-width:0;animation:none}
.cp-panel-stack>.admin-tab-panel.active{display:block!important;animation:cpPanelIn .2s ease}
.cp-panel-stack>.admin-tab-panel[hidden]{display:none!important}
@keyframes cpPanelIn{
from{opacity:.35;transform:translateY(4px)}
to{opacity:1;transform:none}
}
.cp-app .panel,.cp-dashboard-card{background:#fff;border:1px solid #e6eaf0;border-radius:10px;box-shadow:0 3px 13px rgba(18,38,63,.045);overflow:visible}
.cp-app .panel{padding:22px}
.cp-app .panel:before,.cp-dashboard-card:before{display:none!important}
.cp-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.cp-stat-card{min-height:118px;display:flex;align-items:center;gap:16px;padding:17px;background:#fff;border:1px solid #e4e8ee;border-radius:10px;box-shadow:0 3px 13px rgba(18,38,63,.045)}
.cp-stat-icon{width:70px;height:70px;display:grid;place-items:center;border-radius:12px;font-size:30px;font-weight:800;flex:none}
.cp-stat-card small{display:block;color:#374151;font-weight:600;font-size:12px}
.cp-stat-card strong{display:block;margin:4px 0 3px;color:#111827;font-size:25px;line-height:1.05;letter-spacing:-.03em}
.cp-stat-card p{margin:0;color:#7b8595;font-size:10px}
.cp-stat-card p b{color:#12a65a;font-weight:700}
.cp-stat-blue .cp-stat-icon{background:#eaf2ff;color:#347df1}
.cp-stat-green .cp-stat-icon{background:#e6f7ee;color:#28ad65}
.cp-stat-amber .cp-stat-icon{background:#fff3dc;color:#f3a312}
.cp-stat-purple .cp-stat-icon{background:#f3e8ff;color:#a142e5}
.cp-chart-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.8fr);gap:16px;margin-bottom:16px}
.cp-bottom-grid{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);gap:16px}
.cp-dashboard-card{padding:17px}
.cp-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:12px}
.cp-card-heading h2{margin:0;color:#111827;font:700 14px/1.2 Inter,system-ui,sans-serif}
.cp-card-heading p{margin:5px 0 0;color:#8993a2;font-size:10px}
.cp-card-heading>span{padding:7px 10px;border:1px solid #e3e7ed;border-radius:7px;color:#374151;font-size:10px;font-weight:600;white-space:nowrap}
.cp-line-chart-wrap{width:100%;min-height:210px}
.cp-line-chart{display:block;width:100%;height:230px;overflow:visible}
.cp-line-chart line{stroke:#e7ebf1;stroke-width:1;stroke-dasharray:4 4}
.cp-line-area-edge{fill:none;stroke:#2f7df5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.cp-line-chart circle{fill:#3a82ef;stroke:#fff;stroke-width:2.5}
.cp-line-value{font-size:10px;font-weight:700;fill:#202a39}
.cp-line-label{font-size:9px;font-weight:500;fill:#6f7a8b}
.cp-donut-layout{display:grid;grid-template-columns:minmax(185px,.9fr) minmax(190px,1.1fr);gap:16px;align-items:center;min-height:230px}
.cp-donut-visual{position:relative;width:190px;height:190px;margin:auto}
.cp-donut-visual svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}
.cp-donut-track,.cp-donut-segment{fill:none;stroke-width:8}
.cp-donut-track{stroke:#edf1f5}
.cp-donut-segment{stroke-linecap:butt}
.cp-donut-verified{stroke:#3b82f6}
.cp-donut-pending{stroke:#4bbf73}
.cp-donut-refunded{stroke:#f6ae1b}
.cp-donut-failed{stroke:#ef4a4a}
.cp-donut-visual>div{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}
.cp-donut-visual strong{font-size:18px;color:#202633}
.cp-donut-visual span{font-size:10px;color:#7b8595}
.cp-donut-legend{display:grid;gap:13px}
.cp-donut-legend>div{display:grid;grid-template-columns:10px minmax(88px,1fr) 38px 72px;align-items:center;gap:7px;font-size:9px;color:#1f2937}
.cp-donut-legend b{font-weight:600}
.cp-donut-legend em{font-style:normal;color:#4b5563}
.cp-donut-legend strong{text-align:right;font-size:9px}
.cp-legend-dot{width:9px;height:9px;border-radius:50%}
.cp-legend-verified{background:#3b82f6}
.cp-legend-pending{background:#4bbf73}
.cp-legend-refunded{background:#f6ae1b}
.cp-legend-failed{background:#ef4a4a}
.cp-activity-list{display:grid}
.cp-activity-list>div{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:57px;padding:8px 0;border-bottom:1px solid #edf0f4}
.cp-activity-list>div:last-child{border-bottom:0}
.cp-activity-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:8px;font-weight:800;font-size:16px}
.cp-activity-member{background:#eaf2ff;color:#347df1}
.cp-activity-donation{background:#e6f7ee;color:#28ad65}
.cp-activity-event{background:#fff3dc;color:#f3a312}
.cp-activity-list p{display:grid;margin:0;min-width:0}
.cp-activity-list p strong{font-size:10px;color:#202633;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-activity-list p small{font-size:9px;color:#818b9a;margin-top:2px}
.cp-activity-list time{font-size:9px;color:#818b9a;white-space:nowrap}
.cp-card-link{margin:10px 0 -3px;padding:7px 0;border:0;background:transparent;color:#1671ee;font:600 10px Inter,system-ui,sans-serif;cursor:pointer}
.cp-simple-table{width:100%;border-collapse:collapse;font-size:9px}
.cp-simple-table thead{background:#f4f6f9}
.cp-simple-table th,.cp-simple-table td{padding:10px 8px;text-align:left;border-bottom:1px solid #e9edf2}
.cp-simple-table th{color:#111827;font-weight:600}
.cp-simple-table td{color:#202633}
.cp-status{display:inline-flex;padding:4px 8px;border-radius:7px;font-size:8px;font-weight:600}
.cp-status-verified{background:#dff6e8;color:#15934f}
.cp-status-pending{background:#fff0d4;color:#b56c00}
.cp-status-refunded{background:#e7efff;color:#315dbb}
.cp-status-failed{background:#ffe4e4;color:#c13333}
.cp-app .tab-heading{margin-bottom:18px}
.cp-app .tab-heading h2{font:700 20px/1.2 Inter,system-ui,sans-serif;color:#111827}
.cp-app .tab-heading p{font-size:12px}
.cp-app .eyebrow{border:0;padding:0;color:#315bd8;font-size:10px;letter-spacing:.08em}
.cp-app .form label{font-size:12px;color:#344054}
.cp-app .form input,.cp-app .form textarea,.cp-app .form select,.cp-app select,.cp-app input,.cp-app textarea{border-radius:8px;border-color:#dfe5ec;background:#fff;padding:10px 11px;font-size:12px}
.cp-app .form textarea{min-height:86px}
.cp-app .btn,.cp-app .btn-small{border-radius:7px;font-size:11px;min-height:36px}
.cp-app .btn-primary{background:#315bd8;color:#fff;box-shadow:none}
.cp-app .btn-dark{background:#142237}
.cp-app .btn-secondary{background:#eef3ff;color:#315bd8;border:1px solid #dbe5ff}
.cp-app .data-table{border-collapse:collapse;border-spacing:0;font-size:11px}
.cp-app .data-table th{padding:10px;background:#f4f6f9;color:#4b5563;font-size:9px;letter-spacing:.04em}
.cp-app .data-table td{padding:11px 10px;background:#fff;border:0;border-bottom:1px solid #e8ecf1;border-radius:0!important}
.cp-app .status-pill,.cp-app .mode-pill{border-radius:6px;padding:5px 7px;font-size:9px}
.cp-app .empty-state{border-radius:8px;padding:16px;font-size:11px}
.cp-app .admin-pagination{margin-top:14px}
.cp-app .admin-page-btn,.cp-app .admin-page-info{border-radius:7px;font-size:10px;padding:7px 11px}
.cp-audit-details{display:block;max-width:350px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#667085}
.cp-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px -26px 0;padding:17px 30px;border-top:1px solid #e6eaf0;color:#747e8d;font-size:9px;background:#fafbfc}
@media (max-width:1220px){
.cp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.cp-chart-grid{grid-template-columns:1fr}
.cp-bottom-grid{grid-template-columns:1fr}
.cp-donut-layout{grid-template-columns:minmax(180px,.75fr) minmax(260px,1.25fr)}
}
@media (max-width:900px){
.cp-app{--cp-sidebar:250px}
.cp-sidebar{transform:translateX(-102%);transition:transform .22s ease;box-shadow:14px 0 42px rgba(8,20,37,.26)}
.cp-app.sidebar-open .cp-sidebar{transform:translateX(0)}
.cp-app.sidebar-open .cp-sidebar-overlay{display:block}
.cp-sidebar-close,.cp-menu-toggle{display:grid;place-items:center}
.cp-main-area{margin-left:0}
.cp-topbar{min-height:72px;padding:11px 16px}
.cp-topbar-title>div{display:grid}
.cp-topbar-title p{margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:47vw}
.cp-date-range{display:none}
.cp-content{padding:16px 14px 0}
.cp-footer{margin-left:-14px;margin-right:-14px;padding-left:16px;padding-right:16px}
.cp-app .member-tabs-shell{display:block!important}
}
@media (max-width:640px){
.cp-topbar-actions{gap:7px}
.cp-profile-copy,.cp-profile-caret{display:none}
.cp-avatar{width:36px;height:36px}
.cp-stat-grid{grid-template-columns:1fr;gap:10px}
.cp-stat-card{min-height:94px;padding:13px}
.cp-stat-icon{width:56px;height:56px;font-size:24px}
.cp-stat-card strong{font-size:22px}
.cp-chart-grid,.cp-bottom-grid{gap:12px;margin-bottom:12px}
.cp-dashboard-card{padding:13px}
.cp-card-heading{margin-bottom:8px}
.cp-card-heading>span{display:none}
.cp-line-chart-wrap{min-height:170px;overflow:hidden}
.cp-line-chart{min-width:0;height:190px}
.cp-donut-layout{grid-template-columns:1fr;min-height:0}
.cp-donut-visual{width:170px;height:170px}
.cp-donut-legend{padding:0 4px}
.cp-donut-legend>div{grid-template-columns:10px minmax(80px,1fr) 36px 70px}
.cp-app .panel{padding:15px;border-radius:9px}
.cp-app .form-two{grid-template-columns:1fr!important}
.cp-app .tab-heading{flex-direction:column}
.cp-app .btn{width:100%}
.cp-activity-list>div{grid-template-columns:34px minmax(0,1fr) auto}
.cp-activity-icon{width:32px;height:32px}
.cp-activity-list p strong{white-space:normal}
.cp-footer{display:grid;text-align:center;justify-content:center}
}


/* Member My Account passport photograph upload */
.member-photo-upload{display:grid;grid-template-columns:126px minmax(0,1fr);gap:22px;align-items:center;margin:4px 0 24px;padding:20px;border:1px solid #e2d7c5;border-radius:20px;background:linear-gradient(135deg,#fffdf8,#f8fbf9)}
.passport-photo-frame{width:112px;aspect-ratio:7/9;border-radius:14px;overflow:hidden;border:3px solid #fff;outline:1px solid #d8c7a8;background:#eef3f1;box-shadow:0 10px 28px rgba(16,33,63,.14);display:flex;align-items:center;justify-content:center}
.passport-photo-frame img{width:100%;height:100%;object-fit:cover;display:block}
.passport-photo-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#53625e;text-align:center;background:linear-gradient(145deg,#edf5f1,#e6edf5)}
.passport-photo-placeholder span{font-size:30px;line-height:1}
.passport-photo-placeholder small{font-size:11px;line-height:1.25;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.member-photo-copy label{display:block;margin-bottom:8px;font-weight:800;color:var(--navy)}
.photo-upload-control-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;width:100%}
.member-photo-copy input[type=file]{width:100%;min-width:0;padding:9px 10px;border:1px dashed #bba573;border-radius:12px;background:#fff}
.photo-upload-btn{min-width:92px;margin:0;padding:10px 18px;align-self:stretch;white-space:nowrap;border-radius:12px}
.photo-upload-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.member-photo-copy>small{display:block;margin-top:8px;color:var(--muted);font-size:.84rem;line-height:1.45;font-weight:650}
.photo-upload-status{min-height:20px;margin-top:7px;color:#16794b;font-size:.84rem;font-weight:800}
.photo-upload-status.error{color:#b42318}
@media (max-width:640px){
.member-photo-upload{grid-template-columns:1fr;justify-items:center;text-align:center;padding:18px 14px;gap:14px}
.passport-photo-frame{width:118px}
.member-photo-copy{width:100%}
.member-photo-copy label{text-align:center}
.photo-upload-control-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
.photo-upload-btn{min-width:82px;padding:9px 13px}
.member-photo-copy>small{font-size:.8rem}
}
