/* Developer: Tawhidul Islam, Asst. Manager, Real Capita Group */

:root{
  --primary:#0b63ce;
  --primary-dark:#084da3;
  --primary-soft:#eaf3ff;
  --green:#0f7b57;
  --dark:#0f172a;
  --text:#1f2937;
  --muted:#6b7280;
  --line:#dbe7ff;
  --white:#ffffff;
  --shadow:0 14px 40px rgba(11,99,206,.12);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:linear-gradient(180deg,#f6faff 0%,#ffffff 280px);
  color:var(--text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,"Noto Sans Bengali",sans-serif;
}
a{text-decoration:none}
.bg-primary-custom{
  background:linear-gradient(135deg,rgba(8,77,163,.96),rgba(11,99,206,.96));
  backdrop-filter:blur(8px);
}
.navbar{
  border-bottom:1px solid rgba(255,255,255,.08);
}
.navbar .nav-link{
  color:rgba(255,255,255,.9)!important;
  font-weight:500;
}
.navbar .nav-link:hover{color:#fff!important}
.brand-logo,.footer-logo{
  width:44px;height:44px;border-radius:14px;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;color:var(--primary-dark);font-weight:800;
  box-shadow:0 10px 25px rgba(255,255,255,.18);
}
.hero-section{
  padding:52px 0 28px;
}
.hero-banner{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  box-shadow:var(--shadow);
}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.14);
  color:#fff;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  padding:8px 14px;
  font-size:.92rem;
}
.card{
  border:none;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.card-body{padding:1.25rem}
.section-block{padding:24px 0}
.section-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
  flex-wrap:wrap;
}
.section-title{
  font-size:1.75rem;
  font-weight:800;
  margin:0;
  color:var(--dark);
}
.section-subtitle{
  margin:6px 0 0;
  color:var(--muted);
}
.soft-panel{
  background:linear-gradient(180deg,#fff,#f8fbff);
  border:1px solid var(--line);
  border-radius:28px;
  padding:24px;
}
.hero-stat{
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:14px 16px;
}
.hero-stat .num{
  font-size:1.35rem;
  font-weight:800;
  color:var(--primary-dark);
}
.btn{
  border-radius:14px;
  padding:.7rem 1rem;
  font-weight:600;
}
.btn-primary{
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  border:none;
  box-shadow:0 12px 24px rgba(11,99,206,.2);
}
.btn-outline-primary{
  border-color:#b7d2ff;
  color:var(--primary-dark);
}
.btn-outline-primary:hover{
  background:var(--primary);
  border-color:var(--primary);
}
.donation-box{
  position:sticky;
  top:94px;
  border:1px solid var(--line);
}
.donation-box .card-body{
  padding:1.5rem;
}
.donation-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:1rem;
}
.amount-chip{
  border:1px solid #c9dbff;
  border-radius:999px;
  padding:10px 16px;
  background:#fff;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:4px;
  font-weight:700;
  transition:.2s ease;
}
.amount-chip:hover{
  transform:translateY(-1px);
  border-color:var(--primary);
}
.amount-chip.active{
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  color:#fff;
  border-color:transparent;
}
.amount-grid{
  display:flex;
  flex-wrap:wrap;
}
.thumb{
  width:100%;
  height:220px;
  object-fit:cover;
  background:#eef4ff;
}
.card-title-tight{
  font-size:1.12rem;
  font-weight:800;
  line-height:1.35;
  color:var(--dark);
}
.card-summary{
  color:var(--muted);
  font-size:.96rem;
}
.video-card{
  min-height:170px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:28px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,#ffffff,#f6faff);
}
.video-card .play-ring{
  width:72px;height:72px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  margin:0 auto 14px;
  background:var(--primary-soft);
}
.green-section{
  background:linear-gradient(135deg,#0d7a53,#0b5f42);
  color:#fff;
  padding:56px 0;
}
.green-card{
  background:rgba(255,255,255,.09);
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:none;
}
.green-card .card-body{padding:1.5rem}
.method-icon{
  width:62px;height:62px;border-radius:18px;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.14);
  font-size:1.5rem;
  margin-bottom:14px;
}
.page-banner{
  padding:48px 0 24px;
}
.page-banner .soft-panel{
  background:linear-gradient(135deg,#f3f8ff,#ffffff);
}
.page-meta{
  color:var(--muted);
  max-width:800px;
}
.footer-section{
  background:linear-gradient(180deg,#072b5c,#051d40);
  color:#fff;
}
.footer-top{
  padding-top:56px;
}
.footer-links a{
  color:#dce9ff;
  display:block;
  padding:6px 0;
}
.footer-links a:hover{color:#fff}
.embed-box,.footer-box{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:16px;
}
.map-frame iframe{
  width:100%;
  min-height:380px;
  border:0;
  border-radius:22px;
}
.contact-card{
  border:1px solid var(--line);
}
.pagination .page-link{
  border:none;
  margin:0 4px;
  border-radius:12px!important;
  color:var(--primary-dark);
  background:#eef4ff;
}
.pagination .active .page-link{
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
}
.admin-wrapper{min-height:100vh;background:#f4f8ff}
.admin-sidebar{
  width:270px;min-height:100vh;position:fixed;
  background:linear-gradient(180deg,#072b5c,#051d40);
  color:#fff;padding:24px 16px;
}
.admin-sidebar a{
  color:#d5e4ff;text-decoration:none;display:block;
  padding:11px 14px;border-radius:12px;margin-bottom:7px;
}
.admin-sidebar a:hover,.admin-sidebar a.active{
  background:rgba(255,255,255,.1);color:#fff;
}
.admin-brand{
  display:flex;align-items:center;gap:10px;margin-bottom:20px;
}
.admin-content{margin-left:290px;padding:24px}
.admin-stat{
  border:1px solid var(--line);
}
.table img{
  width:74px;height:54px;object-fit:cover;border-radius:10px;
}
.auth-page{
  min-height:100vh;display:flex;align-items:center;
  background:linear-gradient(135deg,#eff5ff,#fff);
}
.swiper{
  padding-bottom:34px!important;
}
.swiper-pagination-bullet-active{
  background:var(--primary)!important;
}
.notice-strip{
  background:#eaf3ff;
  border:1px solid #cfe2ff;
  color:var(--primary-dark);
  border-radius:18px;
  padding:12px 16px;
}
.form-control,.form-select{
  border-radius:14px;
  border-color:#d7e3ff;
  padding:.78rem .95rem;
}
.form-control:focus,.form-select:focus{
  border-color:#8db8ff;
  box-shadow:0 0 0 .25rem rgba(11,99,206,.12);
}
.small-muted{color:var(--muted)}
@media (max-width:991px){
  .admin-sidebar{position:static;width:100%;min-height:auto}
  .admin-content{margin-left:0}
  .donation-box{position:static}
  .hero-section{padding-top:30px}
}

.slider-overlay{background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.75))}
.full-slider{box-shadow:var(--shadow)}



body, .form-control, .form-select, .btn, .card-title-tight, .section-title, .navbar, .footer-section, .admin-wrapper, .admin-sidebar, .admin-content {
  font-family:"SolaimanLipi","Solaiman Lipi","Noto Serif Bengali","Noto Sans Bengali",sans-serif;
}
body{font-weight:700}
p,li,span,small,label,input,textarea,select,option,a,button{font-weight:700}
.auth-page{
  min-height:calc(100vh - 86px);
  display:flex;
  align-items:center;
  padding:48px 0;
  background:radial-gradient(circle at top right, rgba(11,99,206,.12), transparent 30%), linear-gradient(180deg,#eff6ff,#ffffff);
}
.auth-shell{
  overflow:hidden;
  border-radius:28px;
  box-shadow:0 30px 70px rgba(8,77,163,.16);
  border:1px solid #d8e7ff;
}
.auth-aside{
  background:linear-gradient(135deg,#0b63ce,#063b7d);
  color:#fff;
  padding:38px;
  min-height:100%;
}
.auth-aside h2{font-size:2rem;font-weight:800}
.auth-feature{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.auth-feature i{font-size:1.2rem;margin-top:2px}
.auth-form{padding:38px;background:#fff}
.auth-form .form-control{border-radius:14px;padding:.9rem 1rem;border:1px solid #d6e5ff}
.auth-form .btn{padding:.9rem 1rem;border-radius:14px}
.donate-action .btn{min-width:160px;padding:.9rem 1.35rem;font-size:1rem}
.admin-wrapper{display:flex;min-height:100vh;background:#eef5ff}
.admin-sidebar{
  width:280px;flex:0 0 280px;position:sticky;top:0;height:100vh;overflow:auto;
  background:linear-gradient(180deg,#082f66,#0b63ce);padding:26px 18px;color:#fff;
  box-shadow:18px 0 40px rgba(8,47,102,.15)
}
.admin-sidebar a{
  display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.9);padding:12px 14px;margin:6px 0;
  border-radius:16px;font-weight:700;transition:.2s ease;background:rgba(255,255,255,.04)
}
.admin-sidebar a:hover,.admin-sidebar a.active{background:rgba(255,255,255,.14);color:#fff;transform:translateX(2px)}
.admin-brand{display:flex;align-items:center;gap:14px;padding:10px 6px 18px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.12)}
.admin-content{flex:1;padding:28px;margin-left:0;min-width:0}
.admin-hero{background:linear-gradient(135deg,#ffffff,#f4f9ff);border:1px solid #d6e6ff;border-radius:28px;padding:28px;box-shadow:var(--shadow)}
.admin-stat{border:1px solid #d8e7ff;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff)}
.admin-stat h2{font-size:2rem;font-weight:800;margin:8px 0 0}
.metric-icon{width:54px;height:54px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary-dark);font-size:1.35rem}
.stat-trend{font-size:.86rem;color:#0f7b57;background:#e9fff6;border-radius:999px;padding:6px 10px;display:inline-block}
.chart-card{border:1px solid #d8e7ff;border-radius:28px;background:#fff}
.info-list li{padding:8px 0;border-bottom:1px dashed #d9e6ff}
.info-list li:last-child{border-bottom:none}
@media (max-width:991.98px){
  .admin-wrapper{display:block}
  .admin-sidebar{position:relative;width:100%;height:auto}
  .admin-content{padding:18px}
}

.translate-holder,.goog-logo-link,.goog-te-gadget span{display:none!important}
body{top:0!important}
.goog-te-banner-frame.skiptranslate{display:none!important}
.skiptranslate iframe{display:none!important}
.image-preview{width:100%;max-height:220px;object-fit:cover;border-radius:16px;border:1px solid #d9e6ff;background:#f8fbff}
.admin-form-card{position:sticky;top:24px}
.detail-hero-image{width:100%;max-height:460px;object-fit:cover;border-radius:28px;border:1px solid #d8e7ff;box-shadow:var(--shadow)}
.payment-method-card{border:1px solid #d8e7ff;border-radius:20px;padding:18px;background:linear-gradient(180deg,#fff,#f8fbff)}
.payment-method-card.active{border-color:#0b63ce;box-shadow:0 12px 25px rgba(11,99,206,.12)}
.sidebar-widget{margin-top:18px;padding:16px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.sidebar-widget .ratio{border-radius:16px;overflow:hidden}
.stat-soft{background:#f5f9ff;border:1px dashed #cfe0ff;border-radius:16px;padding:14px}

/* Developer update: ABD Foundation branding */
.login-switch-note{font-size:.92rem;color:var(--muted)}
.admin-sidebar .brand-logo{background:#fff;color:#0b63ce}

.member-sidebar{background:linear-gradient(180deg,#0f4c81,#0a3457);}
.admin-sidebar .brand-logo{font-weight:800;}

.footer-logo-image{max-width:84px;max-height:84px;width:auto;height:auto;display:block;border-radius:18px;background:#fff;padding:8px;box-shadow:0 10px 25px rgba(255,255,255,.14)}
.footer-copyright a{color:#fff;text-decoration:underline}
.about-cover{height:420px;object-fit:cover;background:#eef4ff}
.about-rich-text{font-size:1rem;line-height:1.9}
.donate-action .btn{min-width:auto;padding:.55rem 1rem;font-size:.95rem}


.settings-shell{border:1px solid #d9e6ff;border-radius:28px;background:linear-gradient(180deg,#ffffff,#f8fbff)}
.settings-tabs .nav-link{border-radius:999px;padding:.72rem 1rem;font-weight:700;color:#0b63ce;background:#eef5ff;margin-right:8px}
.settings-tabs .nav-link.active{background:linear-gradient(135deg,#0b63ce,#084da3);color:#fff;box-shadow:0 12px 24px rgba(11,99,206,.18)}
.preview-card{border:1px solid #d8e7ff;border-radius:28px;background:linear-gradient(180deg,#fff,#f9fbff)}
.preview-mini-brand{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:#f5f9ff;border:1px dashed #cfe0ff}
.preview-mini-brand img{width:52px;height:52px;border-radius:16px;object-fit:cover;background:#fff;padding:6px;border:1px solid #dbe7ff}
.preview-mini-brand span{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#fff;color:#0b63ce;font-weight:800;border:1px solid #dbe7ff}
.detail-shell,.detail-card{border:1px solid #d8e7ff}
.detail-card .badge{font-size:.9rem}
.card-title-tight a:hover{text-decoration:underline}
@media (min-width:1200px){.admin-content>.card,.admin-content>.row{max-width:100%;}}
