/* RESET */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family: "Hind Siliguri", sans-serif;
}
a{
  text-decoration: none;
  color: #14532d;
}
a:hover{
  text-decoration: none;
  color: #000000;
}
body {
  background: #f5f6f7;
}
@media (max-width: 767px) {
  .hide-mobile {
    display: none !important;
  }
}

/* ===== TOP BAR ===== */
.top-bar {
  background: #0b1c2c;
  color: #cbd5e1;
  font-size: 13px;
  padding: 6px 0;
}
.top-bar .right a {
  color: #fff;
  margin-left: 20px;
  text-decoration: none;
}

/* ===== HEADER ===== */
.main-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: #ffffff;
  padding: 12px 0;
  transition: .3s;
}

.logo img {
  height: 50px;
}

/* NAV */
.nav-menu {
  gap: 35px;
  position: relative;
}
.nav-menu a {
  text-decoration: none;
  color: #000;
  font-weight: 500;
}

/* ===== DROPDOWN FIX ===== */
/* .nav-menu a:nth-child(2){
  position: relative;
} */
.category-wrapper:hover .category-dropdown{
  display:block;
}
/* DROPDOWN MENU */
.category-dropdown{
  position:absolute;
  top:50px;
  left:0;
  width:220px;
  background:#fff;
  border-radius:10px;
  box-shadow:0 10px 25px rgba(0,0,0,0.1);
  padding:10px 0;
  display:none;
  z-index:9999;
}

.category-dropdown a{
  display:block;
  padding:10px 20px;
  color:#333;
}

.category-dropdown a:hover{
  background:#f1f5f9;
}

.category-dropdown .active{
  background:#1d6054;
  color:#fff;
}

/* SHOW DROPDOWN */
.nav-menu a:nth-child(2):hover + .category-dropdown,
.category-dropdown:hover{
  display:block;
}

/* NAV BAR */
.nav-bar {
  padding: 12px 0;
  border-bottom: 1px solid #e5e7eb;
}

/* MENU */
.menu li {
  list-style: none;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  color: #1e293b;
  transition: 0.2s;
}
.menu li:hover {
  color: #14532d;
}

/* ICON AREA */
.header-icons {
  min-width: 300px;
  justify-content: flex-end;
}

.normal-icons i,
.nav-icons i {
  font-size: 16px;
  cursor: pointer;
  position: relative;
  padding: 0px 10px;
}

.header-account-link {
  display: inline-flex;
  align-items: center;
  color: inherit;
  text-decoration: none;
}
.header-account-link:hover {
  color: #14532d;
  text-decoration: none;
}
.header-account-link i {
  cursor: pointer;
}

/* SEARCH ACTIVE */
.search-active {
  display: none;
  align-items: center;
  width: 100%;
  justify-content: flex-end;
}
.search-active.active {
  display: flex;
}
.normal-icons.hide {
  display: none;
}

/* SEARCH INPUT */
.search-input {
  width: 420px;
  max-width: 100%;
  border: 1px solid #ddd;
  padding: 10px 16px;
  border-radius: 10px;
  outline: none;
  font-size: 15px;
}

/* SEARCH OVERLAY */
.search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  display: none;
  justify-content: center;
  padding-top: 80px;
  z-index: 99999;
}
.search-overlay.active {
  display: flex;
}

.search-box {
  width: 90%;
  max-width: 600px;
  position: relative;
}
.search-box input {
  width: 100%;
  padding: 14px;
  border-radius: 10px;
  border: 1px solid #ddd;
}

.close-search,
.search-close {
  cursor: pointer;
}

/* NOTIFICATION */
.notification {
  position: absolute;
  top: -5px;
  right: -8px;
  background: #0d6b57;
  color: #fff;
  font-size: 10px;
  padding: 2px 5px;
  border-radius: 50%;
}
.mobile-submenu li{
  padding-left:10px;
}

.mobile-submenu a{
  color:#333;
}
/* ===== BREAKING BAR ===== */
.breaking-bar {
  background: #1d6054;
  padding: 10px 0;
  overflow: hidden;
}
.breaking-label {
  background: #fff;
  color: #1d6054;
  padding: 4px 12px;
  border-radius: 8px;
  font-weight: 600;
  margin-right: 20px;
}

/* TICKER */
.ticker-wrapper {
  overflow: hidden;
  width: 100%;
}
.ticker-track {
  display: flex;
  gap: 60px;
  animation: tickerMove 18s linear infinite;
}
.ticker-item {
  color: #fff;
  font-size: 16px;
  white-space: nowrap;
}
.ticker-item::after {
  content: "|";
  margin-left: 60px;
}
.ticker-item a{
  color: #fff !important;
}

@keyframes tickerMove {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* MOBILE MENU IMPROVED */
.mobile-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 80%;
  max-width: 320px;
  height: 100%;
  background: #fff;
  z-index: 99999;
  transition: 0.3s;
  padding: 20px;
  border-radius:12px 0 0 12px;
}
.mobile-menu.active {
  right: 0;
}

.mobile-menu li {
  list-style: none;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
}

.mobile-menu li.active{
  background:#f1f5f9;
  border-radius:8px;
  padding-left:10px;
}

/* BACKDROP */
.menu-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3);
  display: none;
}
.menu-backdrop.active {
  display: block;
}

/* RESPONSIVE */
@media(max-width:991px){
  .nav-menu {
    display:none !important;
  }
  .search-input {
    width: 200px;
  }
}

/* HERO SECTION START */
/* HERO SECTION */
.hero-slider {
  border-radius: 16px;
  overflow: hidden;
}

.hero-slide {
  position: relative;
}

.hero-slide img {
  height: 420px;
  object-fit: cover;
}

/* OVERLAY */
.hero-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 30px;
  color: #fff;
  background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
}

.hero-overlay h2 {
  font-size: 28px;
  font-weight: 700;
}

.hero-overlay p {
  font-size: 14px;
  opacity: 0.9;
}

.category {
  background: #1d6054;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 13px;
  display: inline-block;
  margin-bottom: 10px;
}

/* CONTROLS */
.carousel-control-prev,
.carousel-control-next {
  width: 40px;
  height: 40px;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
}

/* RIGHT SIDE */
.side-news {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.news-card {
  background: #fff;
  padding: 10px;
  border-radius: 12px;
  gap: 10px;
  align-items: center;
}

.news-card img {
  width: 90px;
  height: 70px;
  object-fit: cover;
  border-radius: 10px;
}

.news-card h6 {
  font-size: 15px;
  margin: 5px 0;
  font-weight: 500;
}
.news-card h6 a {
  color: #14532d;
}
.news-card h6 a:hover {
  color: #000;
}


.tag {
  background: #e6f4f1;
  color: #1d6054;
  /* padding: 2px 8px; */
  border-radius: 6px;
  font-size: 12px;
}

/* TRENDING */
.trending-header .icon {
  background: #1d6054;
  color: #fff;
  padding: 10px;
  border-radius: 10px;
  margin-right: 10px;
}

/* TAGS */
.trending-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.trending-tags span {
  background: #eef2f7;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 14px;
}
.trending-tags b {
  background: #dbeafe;
  padding: 2px 6px;
  border-radius: 10px;
  margin-left: 5px;
  font-size: 12px;
}

/* CARD */
.trend-card {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  transition: 0.3s;
}
.trend-card:hover {
  transform: translateY(-5px);
}

/* IMAGE */
.img-box {
  position: relative;
}
.img-box img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}

/* RANK */
.rank {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #1d6054;
  color: #fff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
}

/* VIEWS */
.views {
  position: absolute;
  top: 10px;
  right: 10px;
  background: rgba(0,0,0,0.6);
  color: #fff;
  padding: 3px 8px;
  border-radius: 8px;
  font-size: 12px;
}

/* CONTENT */
.content {
  padding: 12px;
}
.cat {
  display: inline-block;
  background: #e6f4f1;
  color: #1d6054;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 12px;
}
.content h6 {
  margin-top: 6px;
  font-size: 15px;
  line-height: 1.4;
}
.content h6 a {
    color: #000;
    font-weight: 500;
}

/* SECTION TITLE */
.section-title h5 {
  border-left: 4px solid #1d6054;
  padding-left: 10px;
  font-weight: 700;
}

/* NEWS CARD */
.news-card-lg {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  transition: .3s;
}
.news-card-lg:hover {
  transform: translateY(-5px);
}

.news-card-lg img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}

.news-card-lg .content {
  padding: 12px;
}
.news-card-lg h6 {
  font-size: 16px;
  margin: 5px 0;
}
.news-card-lg p {
  font-size: 13px;
  color: #555;
}

/* SIDEBAR */
.sidebar-box {
  background: #fff;
  padding: 15px;
  border-radius: 12px;
}

.ad-box {
  text-align: center;
}
.ad-inner {
  background: #eef2f7;
  padding: 30px;
  border-radius: 10px;
}

/* LIST */
.side-list {
  padding-left: 0;
}
.side-list li {
  list-style: none;
  padding: 8px 0;
  border-bottom: 1px solid #eee;
  font-size: 14px;
}

/* STATS */
.stat {
  padding: 12px;
  border-radius: 8px;
  color: #fff;
  text-align: center;
  font-size: 13px;
}
.stat.blue { background: #2563eb; }
.stat.sky { background: #0ea5e9; }
.stat.red { background: #dc2626; }
.stat.dark { background: #1e293b; }

/* HEADER ICON */
.rep-icon {
  background: #1e293b;
  color: #fff;
  padding: 10px;
  border-radius: 10px;
}

/* CARD */
.rep-card {
  background: #fff;
  padding: 20px;
  border-radius: 16px;
  transition: 0.3s;
}
.rep-card:hover {
  transform: translateY(-5px);
}

/* IMAGE */
.img-wrap {
  position: relative;
  margin-bottom: 10px;
}
.img-wrap img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
}

/* AGE */
.age {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: #1d6054;
  color: #fff;
  font-size: 12px;
  padding: 2px 8px;
  border-radius: 10px;
}

/* ROLE */
.role {
  display: inline-block;
  background: #0f172a;
  color: #fff;
  padding: 3px 10px;
  border-radius: 8px;
  font-size: 12px;
  margin: 6px 0;
}

/* META */
.meta {
  margin-top: 10px;
  font-size: 13px;
  color: #555;
}
.meta div {
  margin-top: 4px;
}

/* STATS */
.stats-banner {
  background: linear-gradient(90deg, #1d6054, #0f172a);
  color: #fff;
  padding: 30px;
  border-radius: 16px;
}
.stats-banner h4 {
  font-weight: 700;
}
.stats-banner p {
  font-size: 14px;
  opacity: 0.9;
}

/* ICON */
.op-icon {
  background: #e6f4f1;
  color: #1d6054;
  padding: 10px;
  border-radius: 10px;
}

/* CARD */
.op-card {
  background: #fff;
  padding: 20px;
  border-radius: 16px;
  position: relative;
  transition: 0.3s;
}
.op-card:hover {
  transform: translateY(-5px);
}

/* AUTHOR */
.author img {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  margin-right: 10px;
}

/* TITLE */
.op-card .title {
  font-size: 18px;
  font-weight: 600;
}

/* TEXT */
.op-card p {
  font-size: 14px;
  color: #555;
}

/* BOTTOM */
.op-card .bottom a {
  color: #1d6054;
  font-weight: 500;
  text-decoration: none;
}

/* QUOTE */
.quote {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 40px;
  color: #e5e7eb;
}

/* CTA */
.op-cta {
  background: #eef3f1;
  padding: 20px 25px;
  border-radius: 14px;
}
.op-cta h6 {
  margin-bottom: 4px;
}

/* FOOTER */
.footer-section {
  background: linear-gradient(90deg, #0f172a, #1d2939);
  color: #cbd5e1;
}

.footer-logo img {
  height: 60px;
}

/* TEXT */
.footer-text {
  font-size: 14px;
  line-height: 1.6;
  max-width: 300px;
}

/* LINKS */
.footer-section h6 {
  color: #fff;
  margin-bottom: 12px;
}

.footer-section ul {
  padding-left: 0;
}
.footer-section ul li {
  list-style: none;
  padding: 6px 0;
  font-size: 14px;
  cursor: pointer;
  transition: 0.2s;
}
.footer-section ul li:hover {
  color: #22c55e;
}

/* SOCIAL */
.social-icons {
  display: flex;
  gap: 10px;
}
.social-icons span {
  width: 35px;
  height: 35px;
  background: #1e293b;
  border-radius: 6px;
  display: inline-block;
  cursor: pointer;
}

/* BOTTOM */
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.1);
}

/* SINGLE NEWS */
/* TITLE */
.news-title {
    font-size: 25px;
    font-weight: 700;
}

/* SUBTITLE */
.subtitle {
  color: #555;
  font-size: 16px;
}

/* AUTHOR */
.author-box img {
  width: 45px;
  height: 45px;
  border-radius: 50%;
}

.actions button {
  border: 1px solid #ddd;
  background: #fff;
  padding: 6px 10px;
  margin-left: 5px;
  border-radius: 6px;
}

/* IMAGE */
.featured-img img {
  width: 100%;
  border-radius: 12px;
}

/* AD */
.ad-box {
  background: #eef2f7;
  text-align: center;
  padding: 30px;
  border-radius: 10px;
  color: #888;
}

/* CONTENT */
.news-content {
  font-size: 18px;
  line-height: 1.8;
}
.news-content ul {
  padding-left: 20px;
}

/* TAGS */
.tags span {
  background: #eef2f7;
  padding: 4px 10px;
  margin-right: 5px;
  border-radius: 6px;
}

/* SHARE */
.share-box button {
  border: none;
  padding: 8px 12px;
  margin-right: 5px;
  border-radius: 6px;
  color: #fff;
}
.fb { background:#1877f2; }
.tw { background:#1da1f2; }
.wa { background:#25d366; }
/* RELATED */
.related-card {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  transition: 0.3s;
}
.related-card:hover {
  transform: translateY(-5px);
}

/* IMAGE */
.related-card .img-box {
  position: relative;
}
.related-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}

/* CATEGORY */
.related-card .cat {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #1d6054;
  color: #fff;
  font-size: 12px;
  padding: 3px 8px;
  border-radius: 6px;
}
.sidbar-title h6 {
    border-left: 4px solid #1d6054;
    padding-left: 10px;
    font-weight: 700;
}

/* CONTENT */
.related-card .content {
  padding: 12px;
}
.related-card h6 {
  font-size: 16px;
  margin-bottom: 5px;
}
.related-card small {
  color: #777;
  font-size: 13px;
}
/*Archive HERO */




/* Desktop image */









/*Archive  SIDEBAR */
.sidebar-box {
  background: #fff;
  padding: 15px;
  border-radius: 12px;
}

.trend-list {
  padding-left: 0;
}
.trend-list li {
  list-style: none;
  padding: 8px 0;
  border-bottom: 1px solid #eee;
}
.trend-list li a{
  color: #0d6b57;
  font-weight:500;
}
.trend-list li a:hover{
  color: #000000;
}

/*Archive PAGINATION */
.pagination-box button {
  margin: 3px;
  padding: 6px 10px;
  border: none;
  background: #eee;
  border-radius: 6px;
}
.pagination-box .active {
  background: #1d6054;
  color: #fff;
}
.pagination-box ul {
  list-style: none;
  padding: 0;
  display: inline-flex;
  gap: 5px;
}

.pagination-box li {
  display: inline;
}

.pagination-box a,
.pagination-box span {
  padding: 6px 12px;
  border: 1px solid #ddd;
  border-radius: 6px;
  text-decoration: none;
  color: #333;
}

.pagination-box .current {
  background: #1d6054;
  color: #fff;
  border-color: #1d6054;
}
/* ===== HERO ===== */
.rep-hero{
  background: linear-gradient(90deg,#1d2939,#0f172a);
  color:#fff;
  padding:50px 0;
}
.rep-hero h1{
  font-size:36px;
  font-weight:700;
}
.rep-hero p {
    opacity: .8;
    font-size: 16px;
}

/* STATS */
.stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:15px;
  margin-top:20px;
}
.stats-grid div{
  background:rgba(255,255,255,0.1);
  padding:15px;
  border-radius:12px;
  text-align:center;
}
.stats-grid span{
  display:block;
  font-size:13px;
  opacity:.7;
}

/* ===== FILTER ===== */
.rep-filter{
  display:flex;
  gap:12px;
  background:#eef2f7;
  padding:12px;
  border-radius:14px;
  margin-top:-25px;
}

/* SEARCH */
.filter-box{
  flex:1;
  position:relative;
}
.filter-box i{
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
  color:#888;
}
.filter-box input{
  width:100%;
  padding:10px 12px 10px 35px;
  border:none;
  border-radius:10px;
  outline:none;
}

/* SELECT */
.rep-filter select{
  padding:10px;
  border-radius:10px;
  border:none;
}

/* BUTTON */
.filter-btn{
  background:#fff;
  border:none;
  padding:10px 15px;
  border-radius:10px;
  font-weight:500;
}

/* ===== CARD ===== */
.rep-card{
  display:block;
  text-decoration:none;
  color:inherit;
  background:#fff;
  padding:20px;
  border-radius:16px;
  text-align:center;
  border:1px solid #e5e7eb;
  transition:.3s;
}

/* HOVER */
.rep-card:hover{
  transform:translateY(-6px);
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
  border-color:transparent;
}

/* IMAGE */
.img-wrap{
  position:relative;
  width:90px;
  height:90px;
  margin:0 auto 10px;
}
.img-wrap img{
  width:100%;
  height:100%;
  border-radius:50%;
  border: 4px solid #1e293b2e;
}

/* AGE */
.age {
    position: absolute;
    bottom: -2px;
    left: 80%;
    transform: translateX(-50%);
    background: #1d6054;
    color: #fff;
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 10px;
    width: 65px;
}

/* ROLE */
.role{
  display:inline-block;
  background:#0f172a;
  color:#fff;
  padding:4px 10px;
  border-radius:8px;
  font-size:12px;
  margin:6px 0;
}

.rep-card p{
  font-size:13px;
  margin:3px 0;
  color:#555;
}

/* ===== MOBILE ===== */
@media(max-width:991px){
  .stats-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .rep-filter{
    flex-direction:column;
  }
}

@media(max-width:576px){
  .stats-grid{
    grid-template-columns:1fr;
  }
  .rep-hero h1{
    font-size:24px;
  }
}
/* ===== HERO ===== */
.rep-hero{
  background: linear-gradient(90deg,#1d2939,#0f172a);
  color:#fff;
  padding:40px 0;
}

.hero-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

/* LEFT */
.hero-left{
  display:flex;
  gap:20px;
  align-items:center;
}

.hero-left img{
  width:110px;
  height:110px;
  border-radius:50%;
  border:4px solid rgba(255,255,255,0.2);
}

.hero-left h1{
  font-size:32px;
  font-weight:700;
}

/* ROLE */
.role{
  background:#1d6054;
  padding:4px 10px;
  border-radius:8px;
  font-size:13px;
  display:inline-block;
  margin:6px 0;
}

/* META */
.meta{
  display:flex;
  gap:15px;
  font-size:13px;
  opacity:.85;
  color: #fff;
}

/* DESC */
.desc{
  margin-top:8px;
  max-width:500px;
  opacity:.9;
}

/* RIGHT */
.hero-right{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.stat-box{
  background:rgba(255,255,255,0.08);
  padding:15px;
  border-radius:10px;
  text-align:center;
  width:80px;
}

.stat-box h4{
  margin:0;
}

/* ===== TABS ===== */
.tab-nav{
  display:flex;
  gap:10px;
  background:#eef2f7;
  padding:8px;
  border-radius:12px;
  margin-top:20px;
}

.tab-btn{
  flex:1;
  text-align:center;
  padding:10px;
  border-radius:10px;
  cursor:pointer;
  font-size:14px;
  transition:.3s;
}

.tab-btn i{
  margin-right:5px;
}

.tab-btn.active{
  background:#fff;
  box-shadow:0 2px 8px rgba(0,0,0,0.05);
}

/* CONTENT */
.tab-content{
  display:none;
}
.tab-content.active{
  display:block;
}

/* CARD */
.card-box{
  background:#fff;
  padding:20px;
  border-radius:12px;
}
.rep-about {
    font-size: 20px;
    font-weight: 700;
    border-left: 4px solid #1d6054;
    padding: 0px 5px;
    color: #0f172a;
}

/* TIMELINE */
.timeline ul{
  padding-left:0;
}
.timeline li{
  list-style:none;
  padding-left:20px;
  position:relative;
  margin-bottom:10px;
}
.timeline li::before{
  content:'';
  width:8px;
  height:8px;
  background:#1d6054;
  border-radius:50%;
  position:absolute;
  left:0;
  top:6px;
}

/* NEWS */
.news-card{
  background:#fff;
  border-radius:12px;
  overflow:hidden;
}
.news-card img{
  width:100%;
  height:160px;
  object-fit:cover;
}
.news-card h6{
  padding:10px;
}

/* ALERT */
.alert-box{
  background:#fff3cd;
  padding:15px;
  border-radius:10px;
  margin-top:15px;
}

/* COMPLAIN */
.complain-item{
  background:#fff;
  padding:15px;
  border-radius:10px;
  margin-top:10px;
}

/* REVIEW */
.review-item{
  background:#fff;
  padding:15px;
  border-radius:10px;
  margin-top:10px;
}

/* ===== MOBILE ===== */
@media(max-width:768px){

  .hero-inner{
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .hero-left{
    flex-direction:column;
  }

  .meta{
    flex-wrap:wrap;
    justify-content:center;
  }

  .hero-right{
    flex-direction:row;
    justify-content:center;
    margin-top:15px;
  }

  .tab-nav{
    flex-direction:column;
  }

}
.news-card-lg {
  display: block;
  text-decoration: none;
  color: inherit;
}

.news-card-lg:hover {
  transform: translateY(-5px);
  transition: 0.3s;
}

/* ===== HERO ===== */
.op-hero{
  background:linear-gradient(90deg,#1d2939,#0f172a);
  color:#fff;
  padding:50px 0 100px;
}
.op-hero h1{
  font-size:34px;
  font-weight:700;
}
.op-hero p{
  opacity:.85;
}

/* ===== FEATURED ===== */
.featured-wrap{
  margin-top:-70px;
}

.featured{
  background:#fff;
  border-radius:20px;
  display:flex;
  overflow:hidden;
  min-height:340px;
}

/* LEFT */
.featured-left{
  flex:1;
  padding:35px;
}

/* QUOTE */
.quote{
  font-size:40px;
  color:#cbd5d1;
}

/* BADGE */
.badge-custom{
  background:#eef2f7;
  padding:6px 12px;
  border-radius:20px;
  font-size:12px;
  margin-left:10px;
}

/* TITLE */
.featured-left h3{
  font-size:26px;
  font-weight:700;
  margin:15px 0;
}

/* TEXT */
.featured-left p{
  color:#555;
  font-size:15px;
}

/* AUTHOR */
.author{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:15px;
}
.author img{
  width:50px;
  height:50px;
  border-radius:50%;
}

/* BUTTON */
.read-btn{
  margin-top:20px;
  background:#1d6054;
  color:#fff;
  padding:12px 22px;
  border-radius:10px;
  border:none;
}

/* IMAGE */
.featured-right{
  width:45%;
}
.featured-right img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ===== SECTION TITLE ===== */
.ideology_section_title{
  font-weight:700;
  margin:50px 0 25px;
  padding-left:10px;
  position:relative;
  font-size:22px;
  border-left: 4px solid #1d6054;
}
/* .section-title::before{
  content:'';
  width:4px;
  height:22px;
  background:#1d6054;
  position:absolute;
  left:0;
  top:4px;
} */

/* ===== COLUMNIST ===== */
.columnist{
  background:#fff;
  border-radius:16px;
  padding:30px 20px;
  text-align:center;
  border:1px solid #e6e8eb;
  transition:.3s;
  height:100%;
}
.columnist:hover{
  transform:translateY(-6px);
  box-shadow:0 12px 25px rgba(0,0,0,0.08);
}
.columnist img{
  width:80px;
  height:80px;
  border-radius:50%;
  margin-bottom:12px;
  transition:.3s;
}
.columnist:hover img{
  border:3px solid #1d6054;
  padding:3px;
}
.columnist h6{
  font-weight:700;
}
.columnist small{
  display:block;
  color:#6b7280;
}
.columnist small:last-child{
  color:#1d6054;
}

/* ===== OPINION ===== */
.op-card{
  background:#fff;
  border-radius:16px;
  padding:22px;
  border:1px solid #e6e8eb;
  transition:.3s;
  height:100%;
}
.op-card:hover{
  transform:translateY(-6px);
  box-shadow:0 12px 25px rgba(0,0,0,0.08);
}
.op-meta{
  font-size:13px;
  color:#6b7280;
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:10px;
}
.op-card h6{
  font-weight:700;
  font-size:18px;
  transition:.3s;
}
.op-card:hover h6{
  color:#1d6054;
}
.op-card p{
  font-size:14px;
  color:#6b7280;
}

/* BUTTON CENTER */
.center-btn{
  text-align:center;
  margin-top:25px;
}

/* ===== MOBILE ===== */
@media(max-width:768px){

  .featured{
    flex-direction:column;
  }

  .featured-right{
    width:100%;
    height:200px;
  }

}
/* About Us Page */
    @media(max-width:991px){

      .hero h1{
        font-size:36px;
      }

      .section-title h2,
      .story-content h2,
      .cta-section h2{
        font-size:36px;
      }

      .newsletter-form{
        flex-direction:column;
      }

     
    }

    @media(max-width:576px){

      .hero{
        padding:90px 0 80px;
      }

      .hero h1{
        font-size:34px;
      }

      .hero p{
        font-size:16px;
      }

      .stat-box h2{
        font-size:34px;
      }

      .info-card,
      .value-card,
      .team-card{
        padding:28px 20px;
      }

      .section-padding{
        padding:70px 0;
      }

      .story-content h2,
      .section-title h2,
      .cta-section h2{
        font-size:30px;
      }
    }
    .hero{
      background:#0f172a;
      padding:120px 0 100px;
      text-align:center;
      color:#fff;
    }

    .hero-badge{
      display:inline-block;
      background:#0f766e;
      padding:6px 18px;
      border-radius:50px;
      font-size:13px;
      margin-bottom:20px;
    }

    .hero h1{
      font-size:48px;
      font-weight:700;
      line-height:60px;
      margin-bottom:20px;
    }

    .hero h1 span{
      color:#0f766e;
    }

    .hero p{
      max-width:850px;
      margin:auto;
      font-size:18px;
      line-height:1.8;
      color:#d1d5db;
    }

    .stats-section{
      background:#0f766e;
      padding:45px 0;
    }

    .stat-box{
      text-align:center;
      color:#fff;
    }

    .stat-box h2{
      font-size:42px;
      font-weight:700;
      margin-bottom:8px;
    }

    .stat-box p{
      margin:0;
      font-size:16px;
    }

    .section-padding{
      padding:90px 0;
    }

    .info-card{
      background:#fff;
      padding:40px;
      border-radius:18px;
      height:100%;
      border:1px solid #e5e7eb;
      transition:.3s;
    }

    .info-card:hover{
      transform:translateY(-5px);
    }

    .info-icon{
      width:60px;
      height:60px;
      background:#eef6f4;
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:25px;
      color:#0f766e;
      font-size:24px;
    }

    .info-card h3{
      font-size:24px;
      font-weight:700;
      margin-bottom:20px;
    }

    .info-card p{
      font-size:16px;
      line-height:1.9;
      color:#4b5563;
    }

    .about-section-title{
      text-align:center;
      margin-bottom:60px;
    }

    .about-section-title h2{
      font-size:30px;
      font-weight:700;
      margin-bottom:10px;
    }

    .about-section-title p{
      color:#6b7280;
      font-size:17px;
    }

    .value-card{
      background:#fff;
      padding:35px 25px;
      border-radius:16px;
      text-align:center;
      height:100%;
      border:1px solid #e5e7eb;
    }

    .value-card .icon{
      width:60px;
      height:60px;
      margin:auto auto 25px;
      background:#eef6f4;
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#0f766e;
      font-size:24px;
    }

    .value-card h4{
      font-size:16px;
      margin-bottom:15px;
      font-weight:700;
    }

    .value-card p{
      color:#6b7280;
      line-height:20px;
      font-size: 14px;
    }

    .story-image img{
      border-radius:24px;
      height:100%;
      object-fit:cover;
    }

    .story-content small{
      color:#0f766e;
      font-weight:600;
      letter-spacing:.5px;
    }

    .story-content h2{
      font-size:46px;
      font-weight:700;
      margin:20px 0;
    }

    .story-content p{
      line-height:2;
      color:#4b5563;
      margin-bottom:22px;
    }

    .team-card{
      background:#fff;
      border-radius:16px;
      padding:35px 20px;
      text-align:center;
      border:1px solid #e5e7eb;
      transition:.3s;
    }

    .team-card:hover{
      transform:translateY(-6px);
    }

    .team-card img{
      width:110px;
      height:110px;
      border-radius:50%;
      object-fit:cover;
      margin:0 auto 20px;
    }

    .team-card h4{
      font-size:24px;
      font-weight:700;
      margin-bottom:8px;
    }

    .team-card p{
      color:#6b7280;
      margin:0;
    }

    .cta-section{
      background:#0f172a;
      color:#fff;
      padding:100px 0;
      text-align:center;
    }

    .cta-section h2{
      font-size:52px;
      font-weight:700;
      margin-bottom:20px;
    }

    .cta-section p{
      max-width:850px;
      margin:auto;
      color:#d1d5db;
      line-height:1.9;
      margin-bottom:40px;
    }

    .btn-custom{
      padding:14px 34px;
      border-radius:10px;
      font-weight:600;
      font-size:16px;
    }

    .btn-primary-custom{
      background:#0f766e;
      color:#fff;
      border:none;
    }

    .btn-outline-custom{
      border:1px solid #4b5563;
      color:#fff;
    }

    .newsletter{
      margin-top:90px;
    }

    .newsletter h3{
      font-size:38px;
      font-weight:700;
      margin-bottom:12px;
    }

    .newsletter p{
      color:#d1d5db;
      margin-bottom:30px;
    }

    .newsletter-form{
      max-width:650px;
      margin:auto;
      display:flex;
      gap:15px;
    }

    .newsletter-form input{
      flex:1;
      height:58px;
      border:none;
      border-radius:10px;
      padding:0 20px;
      outline:none;
    }
/* ==========================================================================
   REGISTRATION PAGE STYLES
   ========================================================================= */
/* =========================================================================
   REGISTRATION PAGE STYLES  –  append to assets/css/style.css
   Theme: Baganbazar Graph  |  Font: Hind Siliguri
   ========================================================================= */

/* ── Hero Banner ─────────────────────────────────────────────────────────── */
.reg-hero {
  background: linear-gradient(135deg, #14532d 0%, #1d6054 100%);
  padding: 60px 0 52px;
  color: #fff;
}
.reg-hero h1 {
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 12px;
  line-height: 1.3;
}
.reg-hero p {
  font-size: 16px;
  color: rgba(255,255,255,.82);
  max-width: 560px;
  margin: 0;
  line-height: 1.7;
}

/* ── Section Wrapper ─────────────────────────────────────────────────────── */
.reg-section {
  background: #f5f6f7;
  padding: 52px 0 60px;
}

/* ── Card ────────────────────────────────────────────────────────────────── */
.reg-card {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 32px rgba(0,0,0,.08);
  padding: 40px 44px;
  max-width: 720px;
}
@media (max-width: 576px) {
  .reg-card { padding: 24px 18px; }
  .reg-hero h1 { font-size: 26px; }
}

/* ── Section block (numbered sections inside card) ───────────────────────── */
.reg-section-block {
  margin-bottom: 36px;
  padding-bottom: 36px;
  border-bottom: 1px solid #f1f5f9;
}
.reg-section-block:last-of-type {
  border-bottom: none;
  margin-bottom: 24px;
  padding-bottom: 0;
}

/* ── Section head (number + title) ──────────────────────────────────────── */
.reg-section-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}
.reg-step-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #14532d;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  flex-shrink: 0;
}
.reg-section-title {
  font-size: 19px;
  font-weight: 700;
  color: #1e293b;
  margin: 0;
}

/* ── Labels ──────────────────────────────────────────────────────────────── */
.reg-label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #475569;
  margin-bottom: 6px;
}
.reg-label .req { color: #ef4444; }

/* ── Inputs & Selects ───────────────────────────────────────────────────── */
.reg-input {
  display: block;
  width: 100%;
  padding: 11px 14px;
  font-size: 14px;
  font-family: "Hind Siliguri", sans-serif;
  color: #1e293b;
  background: #fff;
  border: 1.5px solid #e2e8f0;
  border-radius: 9px;
  outline: none;
  transition: border-color .18s, box-shadow .18s;
}
.reg-input:focus {
  border-color: #14532d;
  box-shadow: 0 0 0 3px rgba(20,83,45,.1);
}
.reg-input::placeholder { color: #94a3b8; }

/* ── Select arrow ────────────────────────────────────────────────────────── */
.reg-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2364748b' d='M8 11L2 5h12z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 14px;
  padding-right: 36px;
}

/* ── Photo upload button ─────────────────────────────────────────────────── */
.reg-upload-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 11px 14px;
  font-size: 14px;
  color: #475569;
  background: #f8fafc;
  border: 1.5px dashed #cbd5e1;
  border-radius: 9px;
  cursor: pointer;
  transition: border-color .18s, background .18s;
}
.reg-upload-btn:hover,
.reg-upload-btn.reg-upload-has-file {
  border-color: #14532d;
  background: #f0fdf4;
  color: #14532d;
}
.reg-upload-btn i { font-size: 16px; }

/* ── Photo preview ───────────────────────────────────────────────────────── */
.reg-photo-preview {
  position: relative;
  display: inline-block;
  margin-top: 10px;
}
.reg-photo-preview img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #14532d;
}
.reg-photo-remove {
  position: absolute;
  top: -4px;
  right: -4px;
  background: #fff;
  border: none;
  color: #ef4444;
  font-size: 18px;
  cursor: pointer;
  line-height: 1;
  padding: 0;
}

/* ── Password wrapper ───────────────────────────────────────────────────── */
.reg-pw-wrap {
  position: relative;
}
.reg-pw-wrap .reg-input {
  padding-right: 42px;
}
.reg-pw-toggle {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  font-size: 16px;
  padding: 0;
  line-height: 1;
}
.reg-pw-toggle:hover { color: #14532d; }

/* ── Hint text ───────────────────────────────────────────────────────────── */
.reg-hint {
  font-size: 12px;
  color: #94a3b8;
  margin-top: 5px;
  margin-bottom: 0;
}
.reg-note {
  font-size: 12.5px;
  color: #64748b;
  margin-bottom: 0;
}

/* ── Checkboxes ──────────────────────────────────────────────────────────── */
.reg-checks { display: flex; flex-direction: column; gap: 4px; }

.reg-check-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  color: #334155;
  cursor: pointer;
  line-height: 1.5;
}
.reg-check-label input[type="checkbox"] {
  display: none;
}
.reg-check-box {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #cbd5e1;
  border-radius: 4px;
  margin-top: 2px;
  transition: background .18s, border-color .18s;
  position: relative;
}
.reg-check-label input:checked ~ .reg-check-box {
  background: #14532d;
  border-color: #14532d;
}
.reg-check-label input:checked ~ .reg-check-box::after {
  content: '';
  position: absolute;
  top: 1px; left: 4px;
  width: 6px; height: 10px;
  border: 2px solid #fff;
  border-top: none; border-left: none;
  transform: rotate(42deg);
}
.reg-check-label a { color: #14532d; text-decoration: underline; }
.reg-check-label a:hover { color: #1d6054; }

/* ── Submit button ───────────────────────────────────────────────────────── */
.reg-submit-btn {
  display: block;
  width: 100%;
  padding: 14px;
  background: #14532d;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  font-family: "Hind Siliguri", sans-serif;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  transition: background .2s, transform .15s;
}
.reg-submit-btn:hover  { background: #166534; transform: translateY(-1px); }
.reg-submit-btn:active { background: #14532d; transform: none; }
.reg-submit-btn:disabled { opacity: .7; cursor: not-allowed; transform: none; }

/* ── Login link ──────────────────────────────────────────────────────────── */
.reg-login-link { font-size: 14px; color: #64748b; }
.reg-login-link a { color: #14532d; font-weight: 600; }

/* ── Error alert ─────────────────────────────────────────────────────────── */
.reg-alert-error {
  background: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: 10px;
  padding: 14px 18px;
  color: #991b1b;
  font-size: 14px;
  margin-bottom: 28px;
  display: flex;
  gap: 10px;
}
.reg-alert-error i { font-size: 18px; margin-top: 1px; flex-shrink: 0; }

/* ── Success box ─────────────────────────────────────────────────────────── */
.reg-success-box { padding: 28px 20px; }

.reg-success-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #dcfce7;
}
.reg-success-icon i {
  font-size: 42px;
  color: #16a34a;
}
.reg-success-title {
  font-size: 30px;
  font-weight: 700;
  color: #14532d;
  margin-bottom: 6px;
}
.reg-success-sub {
  font-size: 16px;
  color: #475569;
  margin-bottom: 28px;
}
.reg-success-notice {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  background: #fefce8;
  border: 1px solid #fde68a;
  border-radius: 10px;
  padding: 16px 22px;
  color: #92400e;
  font-size: 15px;
  text-align: left;
  max-width: 480px;
  line-height: 1.6;
}
.reg-success-notice i {
  font-size: 20px;
  flex-shrink: 0;
  margin-top: 2px;
  color: #b45309;
}
.reg-btn-home {
  display: inline-block;
  padding: 12px 32px;
  background: #14532d;
  color: #fff;
  border-radius: 9px;
  font-weight: 600;
  font-size: 15px;
  text-decoration: none;
  transition: background .2s;
}
.reg-btn-home:hover { background: #166534; color: #fff; }

/* ── Required star ───────────────────────────────────────────────────────── */
.req { color: #ef4444; }

/* ── Feature cards ───────────────────────────────────────────────────────── */
.reg-features { background: #fff; }
.reg-feat-card {
  background: #fff;
  border: 1.5px solid #e5e7eb;
  border-radius: 14px;
  padding: 32px 24px 28px;
  transition: box-shadow .2s;
}
.reg-feat-card:hover { box-shadow: 0 6px 28px rgba(0,0,0,.07); }
.reg-feat-icon {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: #f0fdf4;
  color: #1d6054;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
}
.reg-feat-card h6 {
  font-size: 16px;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 6px;
}
.reg-feat-card p {
  font-size: 13px;
  color: #64748b;
  margin: 0;
}

/* ── Newsletter ──────────────────────────────────────────────────────────── */
.newsletter-section {
  background: #0f172a;
  color: #fff;
}
.newsletter-title {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 10px;
}
.newsletter-sub {
  font-size: 15px;
  color: #94a3b8;
  margin-bottom: 28px;
}
.newsletter-form {
  display: flex;
  gap: 10px;
  max-width: 520px;
}
.newsletter-input {
  flex: 1;
  height: 48px;
  border: none;
  border-radius: 9px;
  padding: 0 18px;
  font-size: 14px;
  font-family: "Hind Siliguri", sans-serif;
  outline: none;
  color: #1e293b;
}
.newsletter-btn {
  padding: 0 24px;
  height: 48px;
  background: #1d6054;
  color: #fff;
  border: none;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 600;
  font-family: "Hind Siliguri", sans-serif;
  cursor: pointer;
  white-space: nowrap;
  transition: background .2s;
}
.newsletter-btn:hover { background: #0f766e; }

@media (max-width: 480px) {
  .newsletter-form { flex-direction: column; }
  .newsletter-btn  { width: 100%; }
}

/* ==========================================================================
   LOGIN PAGE STYLES
   ========================================================================= */
/* =========================================================================
   LOGIN PAGE STYLES  –  appended to assets/css/style.css
   Theme: Baganbazar Graph
   ========================================================================= */

/* ── Page background ─────────────────────────────────────────────────────── */
.lp-bg {
  background: #f5f6f7;
  padding: 64px 0 70px;
  min-height: calc(100vh - 280px);
  display: flex;
  align-items: center;
}
.lp-row {
  min-height: 0;
}

/* ── LEFT: Branding ──────────────────────────────────────────────────────── */
.lp-brand { max-width: 420px; }

.lp-logo {
  height: 52px;
  width: auto;
  display: block;
}

.lp-welcome-title {
  font-size: 30px;
  font-weight: 700;
  color: #1e293b;
  line-height: 1.35;
  margin-bottom: 14px;
}

.lp-welcome-sub {
  font-size: 15px;
  color: #64748b;
  line-height: 1.75;
  margin-bottom: 0;
}

/* Feature list */
.lp-features {
  list-style: none;
  padding: 0;
  margin: 32px 0 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.lp-features li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.lp-feat-icon {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #dcfce7;
  color: #16a34a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  margin-top: 1px;
}
.lp-features li strong {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 3px;
  line-height: 1.3;
}
.lp-features li p {
  font-size: 13px;
  color: #64748b;
  margin: 0;
  line-height: 1.5;
}

/* ── RIGHT: Login Card ───────────────────────────────────────────────────── */
.lp-card {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 6px 36px rgba(0,0,0,.1);
  padding: 38px 42px 32px;
}
@media (max-width: 576px) {
  .lp-bg   { padding: 36px 0 40px; }
  .lp-card { padding: 26px 20px 22px; }
  .lp-welcome-title { font-size: 23px; }
}

.lpc-title {
  font-size: 25px;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 5px;
}
.lpc-sub {
  font-size: 14px;
  color: #64748b;
  margin-bottom: 26px;
}

/* Error alert */
.lpc-error {
  background: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 14px;
  color: #991b1b;
  margin-bottom: 22px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.lpc-error i { font-size: 16px; flex-shrink: 0; margin-top: 1px; }

/* Field group */
.lpc-group { margin-bottom: 18px; }

.lpc-label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #475569;
  margin-bottom: 6px;
}
.lpc-label-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}
.lpc-forgot {
  font-size: 13px;
  color: #14532d;
  font-weight: 500;
  text-decoration: none;
}
.lpc-forgot:hover { text-decoration: underline; color: #166534; }

/* Input with icon */
.lpc-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.lpc-icon {
  position: absolute;
  left: 14px;
  color: #94a3b8;
  font-size: 15px;
  pointer-events: none;
  z-index: 1;
  line-height: 1;
}
.lpc-input {
  display: block;
  width: 100%;
  padding: 12px 42px 12px 40px;
  font-size: 14px;
  font-family: "Hind Siliguri", sans-serif;
  color: #1e293b;
  background: #fff;
  border: 1.5px solid #e2e8f0;
  border-radius: 9px;
  outline: none;
  transition: border-color .18s, box-shadow .18s;
}
.lpc-input:focus {
  border-color: #14532d;
  box-shadow: 0 0 0 3px rgba(20,83,45,.1);
}
.lpc-input::placeholder { color: #94a3b8; }

/* Eye toggle */
.lpc-eye {
  position: absolute;
  right: 12px;
  background: none;
  border: none;
  color: #94a3b8;
  font-size: 16px;
  cursor: pointer;
  padding: 0;
  line-height: 1;
  transition: color .15s;
}
.lpc-eye:hover { color: #14532d; }

/* Remember me checkbox */
.lpc-remember { margin-bottom: 0; }
.lpc-check-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #334155;
  cursor: pointer;
}
.lpc-check-label input[type="checkbox"] { display: none; }
.lpc-check-box {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #cbd5e1;
  border-radius: 4px;
  transition: background .18s, border-color .18s;
  position: relative;
}
.lpc-check-label input:checked ~ .lpc-check-box {
  background: #1d4ed8;
  border-color: #1d4ed8;
}
.lpc-check-label input:checked ~ .lpc-check-box::after {
  content: '';
  position: absolute;
  top: 1px; left: 4px;
  width: 6px; height: 10px;
  border: 2px solid #fff;
  border-top: none; border-left: none;
  transform: rotate(42deg);
}

/* Submit button */
.lpc-submit {
  display: block;
  width: 100%;
  padding: 14px;
  background: #14532d;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  font-family: "Hind Siliguri", sans-serif;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  transition: background .2s, transform .15s;
  margin-top: 16px;
}
.lpc-submit:hover  { background: #166534; transform: translateY(-1px); }
.lpc-submit:active { transform: none; }
.lpc-submit:disabled { opacity: .7; cursor: not-allowed; transform: none; }

/* OR divider */
.lpc-divider {
  position: relative;
  text-align: center;
  margin: 22px 0 16px;
  color: #94a3b8;
  font-size: 13px;
}
.lpc-divider::before {
  content: '';
  position: absolute;
  top: 50%; left: 0; right: 0;
  border-top: 1px solid #e2e8f0;
}
.lpc-divider span {
  position: relative;
  background: #fff;
  padding: 0 12px;
}

/* Social buttons */
.lpc-social-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px 8px;
  background: #fff;
  border: 1.5px solid #e2e8f0;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 600;
  font-family: "Hind Siliguri", sans-serif;
  color: #1e293b;
  cursor: pointer;
  transition: border-color .18s, background .18s, box-shadow .18s;
  gap: 2px;
}
.lpc-social-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}

/* Register link */
.lpc-reg-link {
  text-align: center;
  font-size: 14px;
  color: #64748b;
  margin: 0 0 18px;
}
.lpc-reg-link a {
  color: #14532d;
  font-weight: 700;
  text-decoration: none;
}
.lpc-reg-link a:hover { text-decoration: underline; }

/* Security notice */
.lpc-security {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 13px;
  color: #1e40af;
  line-height: 1.55;
}
.lpc-security i {
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 1px;
  color: #3b82f6;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 991.98px) {
  .lp-left  { order: 2; }
  .lp-right { order: 1; }
  .lp-brand { max-width: 100%; }
}

/* =========================================================================
   DASHBOARD PAGE STYLES
   ========================================================================= */

/* Hero */
.db-hero{background:#f1f5f9;border-bottom:1px solid #e2e8f0;padding:28px 0 24px}
.db-hero-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.db-hero-title{font-size:26px;font-weight:700;color:#1e293b;margin-bottom:4px}
.db-hero-sub{font-size:14px;color:#64748b;margin:0}

/* Completion badge */
.db-compl-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.db-compl-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 18px;border-radius:30px;font-size:13px;font-weight:700}
.db-compl-btn.warning{background:#fef9c3;color:#854d0e;border:1px solid #fde68a}
.db-compl-btn.pending{background:#fef9c3;color:#854d0e;border:1px solid #fde68a}
.db-compl-btn.rejected{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.db-compl-count{font-size:12px;color:#64748b;text-align:right;margin:0}

/* Body */
.db-body{background:#f5f6f7;padding:28px 0 60px;min-height:55vh}

/* Sidebar */
.db-sidebar{background:#fff;border-radius:14px;box-shadow:0 2px 16px rgba(0,0,0,.07);padding:22px 16px;position:sticky;top:88px}
.db-profile-block{padding-bottom:18px;border-bottom:1px solid #f1f5f9;margin-bottom:4px}
.db-av-wrap{position:relative;width:84px;height:84px;margin:0 auto 12px}
.db-avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid #14532d}
.db-av-cam{position:absolute;bottom:0;right:0;width:26px;height:26px;border-radius:50%;background:#14532d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;border:2px solid #fff}
.db-sb-name{font-size:15px;font-weight:700;color:#1e293b;margin-bottom:2px}
.db-sb-email{font-size:12px;color:#64748b;margin-bottom:10px}
.db-sb-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}
.sb-act{background:#dcfce7;color:#15803d}.sb-pend{background:#fef9c3;color:#854d0e}.sb-rej{background:#fee2e2;color:#991b1b}

/* Sidebar nav */
.db-nav{display:flex;flex-direction:column;gap:4px;margin-top:12px}
.db-nav-item{display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:9px;font-size:14px;font-weight:500;color:#475569;background:none;border:none;cursor:pointer;text-decoration:none;width:100%;text-align:left;transition:background .15s,color .15s;font-family:"Hind Siliguri",sans-serif}
.db-nav-item:hover{background:#f8fafc;color:#14532d}.db-nav-item.active{background:#14532d;color:#fff}
.db-logout{color:#dc2626!important}.db-logout:hover{background:#fef2f2!important;color:#991b1b!important}

/* Content card */
.db-card{background:#fff;border-radius:14px;box-shadow:0 2px 16px rgba(0,0,0,.07);overflow:hidden}
.db-card-head{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;border-bottom:1px solid #f1f5f9}
.db-card-title{font-size:17px;font-weight:700;color:#1e293b;margin:0}
.db-btn-save{display:inline-flex;align-items:center;padding:9px 22px;background:#14532d;color:#fff;border:none;border-radius:9px;font-size:14px;font-weight:600;font-family:"Hind Siliguri",sans-serif;cursor:pointer;transition:background .18s,transform .15s;white-space:nowrap}
.db-btn-save:hover{background:#166534;transform:translateY(-1px)}.db-btn-save:disabled{opacity:.7;cursor:not-allowed;transform:none}

/* Form sections */
.db-sec{padding:20px 26px;border-bottom:1px solid #f8fafc}
.db-sec.last{border-bottom:none}
.db-sec-hd{font-size:13px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px}

/* Labels & inputs */
.db-lbl{display:block;font-size:13px;font-weight:500;color:#475569;margin-bottom:5px}
.db-inp{display:block;width:100%;padding:10px 13px;font-size:14px;font-family:"Hind Siliguri",sans-serif;color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;outline:none;transition:border-color .18s,box-shadow .18s}
.db-inp:focus{border-color:#14532d;box-shadow:0 0 0 3px rgba(20,83,45,.1)}
.db-inp[readonly]{background:#f8fafc;color:#94a3b8;cursor:not-allowed}
.db-inp::placeholder{color:#94a3b8}
.db-sel{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2364748b' d='M8 11L2 5h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:13px;padding-right:32px;cursor:pointer}

/* Toast */
.db-toast{padding:12px 16px;border-radius:10px;font-size:14px;font-weight:500;margin-bottom:16px;animation:dbFade .25s ease}
.db-toast.success{background:#f0fdf4;border:1px solid #86efac;color:#15803d}
.db-toast.error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}
.db-toast.info{background:#eff6ff;border:1px solid #93c5fd;color:#1d4ed8}
@keyframes dbFade{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

/* Status alert */
/* ── Alert full-width row (between hero and body) ─── */
.db-alert-row {
  background: #f8fafc;
  padding: 12px 0 0;
}
@media (max-width: 767.98px) {
  .db-alert-row { padding: 10px 0 0; }
}

.db-status-alert{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;border-radius:12px;font-size:14px;margin-bottom:16px;line-height:1.6;border-left:4px solid}
.db-status-alert .db-alert-icon{font-size:22px;flex-shrink:0;margin-top:2px}
.db-alert-head{display:block;font-size:15px;font-weight:700;margin:0 0 6px}
.db-alert-body{font-size:14px;margin:0;line-height:1.6}
.db-alert-body strong{font-weight:700}
.db-alert-body em{font-style:italic}
.db-status-alert code{font-size:12px;padding:1px 5px;border-radius:4px;background:rgba(0,0,0,.06)}

/* ── warning (registered / incomplete) ── yellow/amber */
.db-alert-warning{background:#fffbeb;border-color:#f59e0b;color:#92400e}
.db-alert-warning .db-alert-icon{color:#d97706}
.db-alert-warning small strong{color:#b45309}

/* ── danger (pending review, suspended) ── RED */
.db-alert-danger{background:#fef2f2;border-color:#ef4444;color:#991b1b}
.db-alert-danger .db-alert-icon{color:#dc2626}
.db-alert-danger small strong{color:#b91c1c}

/* ── success (active) ── green */
.db-alert-success{background:#f0fdf4;border-color:#22c55e;color:#15803d}
.db-alert-success .db-alert-icon{color:#16a34a}
.db-alert-success small strong{color:#15803d}

/* Login registered notice */
.lpc-registered-notice{display:flex;align-items:center;background:#f0fdf4;border:1px solid #86efac;border-radius:10px;padding:12px 16px;font-size:14px;color:#15803d;margin-bottom:20px;gap:6px}

/* Responsive */
@media(max-width:991.98px){.db-sidebar{position:static}}
@media(max-width:576px){.db-hero-title{font-size:20px}.db-card-head{flex-direction:column;align-items:flex-start;gap:10px}.db-btn-save{width:100%;justify-content:center}.db-sec{padding:16px 14px}.db-compl-wrap{align-items:flex-start}}

/* =========================================================================
   GENERIC THEME MODAL/POPUP (replaces all browser alert/confirm calls)
   ========================================================================= */
.graph-modal-overlay{
  position:fixed; inset:0; z-index:99999;
  background:rgba(15,23,42,.55);
  display:flex; align-items:center; justify-content:center;
  padding:20px;
  animation:gmFadeIn .18s ease;
}
.graph-modal-overlay.d-none{ display:none; }
@keyframes gmFadeIn{ from{opacity:0} to{opacity:1} }

.graph-modal-card{
  background:#fff;
  border-radius:18px;
  max-width:440px;
  width:100%;
  padding:36px 32px 30px;
  text-align:center;
  box-shadow:0 20px 60px rgba(0,0,0,.28);
  animation:gmPop .22s cubic-bezier(.34,1.56,.64,1);
}
@keyframes gmPop{ from{opacity:0; transform:scale(.92) translateY(8px);} to{opacity:1; transform:none;} }

.graph-modal-icon{
  width:72px; height:72px;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:34px;
  margin:0 auto 18px;
  background:#dcfce7; color:#16a34a;
}
.graph-modal-icon.success{ background:#dcfce7; color:#16a34a; }
.graph-modal-icon.info   { background:#dbeafe; color:#1d4ed8; }
.graph-modal-icon.warn   { background:#fef9c3; color:#b45309; }
.graph-modal-icon.error  { background:#fee2e2; color:#dc2626; }

.graph-modal-title{
  font-size:22px; font-weight:700; color:#14532d;
  margin-bottom:12px;
}
.graph-modal-text{
  font-size:14.5px; color:#475569; line-height:1.75;
  margin-bottom:26px;
}
.graph-modal-text strong{
  color:#0f766e;
  font-weight:700;
}
.graph-modal-text a{
  color:#14532d; font-weight:600; text-decoration:underline;
}
.graph-modal-text a:hover{ color:#166534; }
.graph-modal-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 30px;
  background:#14532d; color:#fff;
  border:none; border-radius:9px;
  font-size:15px; font-weight:600;
  font-family:"Hind Siliguri",sans-serif;
  text-decoration:none; cursor:pointer;
  transition:background .2s, transform .15s;
}
.graph-modal-btn:hover{ background:#166534; color:#fff; transform:translateY(-1px); }

.graph-modal-btn-outline{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 26px;
  background:#fff; color:#475569;
  border:1.5px solid #e2e8f0; border-radius:9px;
  font-size:15px; font-weight:600;
  font-family:"Hind Siliguri",sans-serif;
  cursor:pointer;
  transition:background .18s, border-color .18s;
}
.graph-modal-btn-outline:hover{ background:#f8fafc; border-color:#cbd5e1; }

.graph-modal-actions{
  display:flex; gap:10px; justify-content:center;
}

@media (max-width:480px){
  .graph-modal-card{ padding:28px 22px 24px; }
  .graph-modal-actions{ flex-direction:column-reverse; }
  .graph-modal-btn, .graph-modal-btn-outline{ width:100%; }
}

/* =========================================================================
   DASHBOARD — sidebar caption + locked-note (active account)
   ========================================================================= */
.db-sb-caption{
  font-size:11px;
  color:#94a3b8;
  text-transform:uppercase;
  letter-spacing:.4px;
  margin:0 0 4px;
}

.db-locked-note{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 14px;
  background:#fef9c3;
  border:1px solid #fde68a;
  color:#854d0e;
  border-radius:8px;
  font-size:12.5px;
  font-weight:600;
}

/* =========================================================================
   OTP VERIFICATION POPUP (email-verification step during registration)
   ========================================================================= */

/* Inline highlight for masked email / important inline values inside
   modal text — keeps copy flowing as one paragraph instead of breaking
   into a separate line, per design requirement. */
.db-highlight{
  color:#14532d;
  font-weight:700;
}

/* Large, evenly-spaced numeric code field (visually reads like separate
   boxes without the complexity of 6 separate inputs). */
.otp-input{
  display:block;
  width:100%;
  margin:18px 0 6px;
  padding:14px 10px;
  text-align:center;
  font-size:28px;
  font-weight:700;
  letter-spacing:14px;
  font-family:"Hind Siliguri",sans-serif;
  color:#14532d;
  background:#f8fafc;
  border:1.5px solid #e2e8f0;
  border-radius:10px;
  outline:none;
  transition:border-color .18s, box-shadow .18s, background .18s;
}
.otp-input:focus{
  border-color:#14532d;
  background:#fff;
  box-shadow:0 0 0 3px rgba(20,83,45,.1);
}
.otp-input::placeholder{
  letter-spacing:14px;
  color:#cbd5e1;
}

.otp-error{
  background:#fef2f2;
  border:1px solid #fca5a5;
  color:#991b1b;
  border-radius:8px;
  padding:10px 14px;
  font-size:13px;
  margin-bottom:4px;
  text-align:center;
}

.otp-resend-row{
  margin:16px 0 0;
  text-align:center;
  font-size:13px;
  color:#64748b;
}
.otp-resend-btn{
  background:none;
  border:none;
  color:#14532d;
  font-weight:700;
  font-size:13px;
  font-family:"Hind Siliguri",sans-serif;
  cursor:pointer;
  padding:0;
  margin-left:4px;
  text-decoration:underline;
}
.otp-resend-btn:hover{ color:#166534; }
.otp-resend-btn:disabled{ color:#94a3b8; cursor:not-allowed; text-decoration:none; }

#otpResendTimer{
  font-weight:600;
  color:#94a3b8;
  margin-left:4px;
}

@media (max-width:420px){
  .otp-input{ letter-spacing:8px; font-size:22px; padding:12px 6px; }
}

/* =========================================================================
   COMMUNITY COMMENT SECTION
   ========================================================================= */
.cm-section{background:#f8fafc;padding:40px 0 60px;border-top:1px solid #e2e8f0}
.cm-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.cm-heading{font-size:20px;font-weight:700;color:#1e293b;margin:0;display:flex;align-items:center;gap:8px}
.cm-total-badge{display:inline-flex;align-items:center;justify-content:center;background:#14532d;color:#fff;font-size:12px;font-weight:700;border-radius:20px;padding:2px 10px;min-width:28px}
.cm-open-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 20px;background:#14532d;color:#fff;border:none;border-radius:9px;font-size:14px;font-weight:600;font-family:"Hind Siliguri",sans-serif;cursor:pointer;text-decoration:none;transition:background .18s,transform .15s}
.cm-open-btn:hover{background:#166534;color:#fff;transform:translateY(-1px)}
.cm-not-active-note{font-size:13px;color:#94a3b8;display:flex;align-items:center;gap:4px}

/* Privacy alert */
.cm-privacy-alert{display:flex;align-items:flex-start;gap:10px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:12px 16px;font-size:13.5px;color:#1e40af;margin-bottom:22px;line-height:1.55}
.cm-privacy-alert i{font-size:16px;flex-shrink:0;margin-top:1px;color:#3b82f6}
.cm-privacy-alert strong{color:#1d4ed8}

/* Comment card */
.cm-list{display:flex;flex-direction:column;gap:14px}
.cm-card{display:flex;gap:12px;background:#fff;border-radius:14px;padding:18px;box-shadow:0 1px 8px rgba(0,0,0,.06);transition:box-shadow .2s}
.cm-card:hover{box-shadow:0 4px 18px rgba(0,0,0,.1)}
.cm-reply{margin-left:40px;background:#f8fafc;border-left:3px solid #14532d}
.cm-avatar-anon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;flex-shrink:0}
.cm-body{flex:1;min-width:0}
.cm-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.cm-name{font-size:14px;color:#1e293b}
.cm-profession{font-size:12px;color:#14532d;background:#dcfce7;padding:2px 8px;border-radius:20px;font-weight:500}
.cm-time{font-size:12px;color:#94a3b8;margin-left:auto}
.cm-text{font-size:14.5px;color:#334155;line-height:1.7;margin:0 0 10px}

/* Actions */
.cm-actions{display:flex;align-items:center;gap:14px}
.cm-like-btn,.cm-reply-btn,.cm-edit-btn{background:none;border:none;cursor:pointer;font-size:13px;color:#64748b;padding:4px 6px;border-radius:6px;font-family:"Hind Siliguri",sans-serif;display:inline-flex;align-items:center;gap:4px;transition:color .15s,background .15s}
.cm-like-btn:hover,.cm-reply-btn:hover,.cm-edit-btn:hover{background:#f1f5f9;color:#14532d}
.cm-like-btn.liked{color:#ef4444}
.cm-like-btn.liked i{color:#ef4444}
.cm-like-count{font-weight:600}

/* Empty state */
.cm-empty{text-align:center;padding:40px 20px;color:#94a3b8}
.cm-empty i{font-size:40px;display:block;margin-bottom:12px;color:#cbd5e1}
.cm-empty p{font-size:15px;margin:0}

/* Reply wrap */
.cm-replies-wrap{display:flex;flex-direction:column;gap:10px;margin-top:0}

/* Modal */
.cm-modal-card{max-width:520px;width:100%;padding:28px 28px 24px}
.cm-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.cm-modal-title{font-size:17px;font-weight:700;color:#1e293b;margin:0}
.cm-modal-close{background:none;border:none;cursor:pointer;font-size:18px;color:#94a3b8;padding:4px;line-height:1;transition:color .15s}
.cm-modal-close:hover{color:#1e293b}
.cm-textarea{display:block;width:100%;padding:12px 14px;font-size:14px;font-family:"Hind Siliguri",sans-serif;color:#1e293b;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;resize:vertical;outline:none;transition:border-color .18s;min-height:110px;line-height:1.6}
.cm-textarea:focus{border-color:#14532d;background:#fff;box-shadow:0 0 0 3px rgba(20,83,45,.08)}
.cm-textarea::placeholder{color:#94a3b8}
.cm-modal-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px}
.cm-char{font-size:12px;color:#94a3b8}

@media(max-width:576px){
  .cm-reply{margin-left:16px}
  .cm-card{padding:14px}
  .cm-header{flex-direction:column;align-items:flex-start}
  .cm-modal-card{padding:22px 18px 18px}
}

/* ─── Single post: hide ad sidebar on mobile ─────────────────────── */
@media (max-width:991.98px){
  .single-sidebar{ display:none !important; }
}

/* ─── Admin: Member Management Tab ──────────────────────────────── */
.member-search-bar{
  display:flex; flex-wrap:wrap; gap:8px;
  padding:16px 20px; border-bottom:1px solid #f1f5f9;
}
.member-srch-input{ flex:1; min-width:130px; }
.member-srch-btn{ white-space:nowrap; }

.member-sort-row{
  padding:8px 20px; font-size:13px; color:#64748b;
  border-bottom:1px solid #f1f5f9;
  display:flex; align-items:center; gap:6px; flex-wrap:wrap;
}
.member-sort-btn{
  background:none; border:1px solid #e2e8f0; border-radius:6px;
  padding:3px 10px; font-size:12px; cursor:pointer; color:#475569;
  font-family:"Hind Siliguri",sans-serif;
}
.member-sort-btn:hover{ background:#f1f5f9; border-color:#cbd5e1; }

.member-table-wrap{ overflow-x:auto; }
.member-table{
  width:100%; border-collapse:collapse; font-size:13.5px;
}
.member-table thead tr{
  background:#f8fafc; border-bottom:2px solid #e2e8f0;
}
.member-table th{
  padding:10px 14px; text-align:left; font-size:12px; font-weight:700;
  color:#64748b; text-transform:uppercase; letter-spacing:.4px; white-space:nowrap;
}
.member-table td{
  padding:12px 14px; border-bottom:1px solid #f1f5f9;
  vertical-align:middle; color:#1e293b;
}
.member-table tbody tr:hover{ background:#f8fafc; }
.member-empty{ text-align:center; color:#94a3b8; padding:28px; }

.member-status-badge{
  display:inline-block; padding:3px 10px; border-radius:20px;
  font-size:12px; font-weight:600;
}
.st-reg { background:#f1f5f9; color:#475569; }
.st-pend{ background:#fef9c3; color:#854d0e; }
.st-act { background:#dcfce7; color:#15803d; }
.st-sus { background:#fee2e2; color:#991b1b; }

.member-action-trigger{
  background:none; border:1px solid #e2e8f0; border-radius:6px;
  padding:4px 8px; cursor:pointer; color:#64748b;
  transition:background .15s, color .15s;
}
.member-action-trigger:hover{ background:#f1f5f9; color:#14532d; }

.member-pagination{ padding:12px 20px; }
.member-pages{ display:flex; gap:4px; flex-wrap:wrap; }
.member-pages button{
  padding:5px 10px; border:1px solid #e2e8f0; border-radius:6px;
  background:#fff; cursor:pointer; font-size:13px;
  font-family:"Hind Siliguri",sans-serif; color:#475569;
}
.member-pages button:hover{ background:#f1f5f9; }
.member-pages button.active{ background:#14532d; color:#fff; border-color:#14532d; }

.db-total-members-badge{
  font-size:12px; padding:3px 10px; min-width:30px;
  background:#14532d; color:#fff; border-radius:20px; font-weight:700;
}

/* Action popup menu items */
.mam-list{ display:flex; flex-direction:column; gap:4px; }
.mam-item{
  display:flex; align-items:center; padding:10px 12px;
  border-radius:8px; font-size:14px; font-family:"Hind Siliguri",sans-serif;
  color:#1e293b; text-decoration:none; cursor:pointer;
  border:none; background:none; width:100%; text-align:left;
  transition:background .15s;
}
.mam-item:hover{ background:#f1f5f9; color:#14532d; }
.mam-item-danger{ color:#991b1b !important; }
.mam-item-danger:hover{ background:#fef2f2 !important; color:#dc2626 !important; }

@media(max-width:576px){
  .member-search-bar{ padding:12px; }
  .member-table th,.member-table td{ padding:8px 10px; }
}

/* ─── Admin View Profile popup card ──────────────── */
.apv-header{display:flex;align-items:center;padding-bottom:14px;border-bottom:1px solid #f1f5f9;margin-bottom:2px}
.apv-fields{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.apv-row{display:flex;align-items:flex-start;gap:10px;font-size:14px}
.apv-lbl{flex-shrink:0;width:100px;color:#94a3b8;font-weight:500}
.apv-val{color:#1e293b;flex:1;word-break:break-all}

/* ─── Admin view-user popup ──────────────────────────────── */
.apv-header{
  display:flex;align-items:center;gap:14px;
  padding-bottom:16px;border-bottom:1px solid #f1f5f9;
  margin-bottom:10px;
}
.apv-fields{display:flex;flex-direction:column;gap:6px}
.apv-row{
  display:flex;justify-content:space-between;align-items:flex-start;
  gap:8px;padding:7px 0;border-bottom:1px solid #f8fafc;font-size:13.5px;
}
.apv-lbl{color:#64748b;font-weight:500;flex-shrink:0;min-width:90px}
.apv-val{color:#1e293b;text-align:right;word-break:break-word}

/* ═══════════════════════════════════════════════════════════
   ADMIN EDIT MODAL — Premium design
   ═══════════════════════════════════════════════════════════ */
.adm-edit-card{
  background:#fff;border-radius:16px;overflow:hidden;
  max-width:620px;width:100%;
  box-shadow:0 20px 60px rgba(0,0,0,.2);
  display:flex;flex-direction:column;max-height:90vh;
}
.adm-edit-header{
  display:flex;align-items:center;gap:14px;
  padding:18px 22px;border-bottom:1px solid #f1f5f9;
  flex-shrink:0;
}
.adm-edit-av{
  width:52px;height:52px;border-radius:50%;
  background:#14532d;color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;flex-shrink:0;
}
.adm-edit-hinfo{ flex:1;min-width:0; }
.adm-edit-body{
  flex:1;overflow-y:auto;padding:0 22px 6px;
}
.adm-edit-footer{
  padding:14px 22px;border-top:1px solid #f1f5f9;
  text-align:right;flex-shrink:0;
}
.adm-field-section{
  padding:16px 0 10px;border-bottom:1px solid #f8fafc;
  margin-bottom:4px;
}
.adm-section-label{
  font-size:11px;font-weight:700;text-transform:uppercase;
  letter-spacing:.6px;color:#94a3b8;margin-bottom:10px;
}
/* Status radio row */
.adm-status-row{
  display:flex;gap:8px;flex-wrap:wrap;
}
.adm-status-opt{
  cursor:pointer;padding:6px 14px;border-radius:20px;
  border:1.5px solid #e2e8f0;background:#f8fafc;
  font-size:13px;font-weight:500;color:#475569;
  transition:all .18s;user-select:none;
}
.adm-status-opt:hover{ border-color:#14532d;color:#14532d; }
.adm-status-opt.active[data-val="registered"]{ background:#f1f5f9;border-color:#94a3b8;color:#475569; }
.adm-status-opt.active[data-val="pending"]   { background:#fef9c3;border-color:#fde68a;color:#854d0e; }
.adm-status-opt.active[data-val="active"]    { background:#dcfce7;border-color:#86efac;color:#15803d; }
.adm-status-opt.active[data-val="suspended"] { background:#fee2e2;border-color:#fca5a5;color:#991b1b; }

/* ═══════════════════════════════════════════════════════════
   ADMIN VIEW MODAL — Premium CV-style card
   ═══════════════════════════════════════════════════════════ */
.adm-view-card{
  background:#fff;border-radius:16px;overflow:hidden;
  max-width:440px;width:100%;
  box-shadow:0 20px 60px rgba(0,0,0,.2);
  max-height:90vh;display:flex;flex-direction:column;
}
.adm-view-hero{
  background:linear-gradient(135deg,#14532d,#0f766e);
  padding:24px 22px 22px;
  display:flex;align-items:center;gap:14px;flex-shrink:0;
}
.adm-view-av{
  width:62px;height:62px;border-radius:50%;
  background:rgba(255,255,255,.25);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:28px;flex-shrink:0;
  border:2px solid rgba(255,255,255,.4);
}
.adm-view-hinfo{ flex:1;min-width:0; }
.adm-view-name{ margin:0 0 2px;font-size:17px;font-weight:700;color:#fff; }
.adm-view-pseudo{ margin:0 0 6px;font-size:12px;color:rgba(255,255,255,.75); }
.adm-view-body{ flex:1;overflow-y:auto;padding:8px 0 8px; }
.adm-cv-section{ padding:14px 22px 8px; border-bottom:1px solid #f1f5f9; }
.adm-cv-section:last-child{ border-bottom:none; }
.adm-cv-section-title{
  font-size:10.5px;font-weight:700;text-transform:uppercase;
  letter-spacing:.6px;color:#94a3b8;margin-bottom:8px;
}
.adm-cv-row{
  display:flex;align-items:flex-start;gap:10px;
  padding:6px 0;
}
.adm-cv-icon{
  width:28px;height:28px;border-radius:8px;
  background:#f1f5f9;color:#14532d;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;flex-shrink:0;margin-top:1px;
}
.adm-cv-lbl{ font-size:11px;color:#94a3b8;display:block;line-height:1.2; }
.adm-cv-val{ font-size:14px;color:#1e293b;font-weight:500;line-height:1.4; }

@media(max-width:576px){
  .adm-edit-card{ max-height:100vh;border-radius:0; }
  .adm-view-card{ max-height:100vh;border-radius:0; }
  .adm-edit-header{ padding:14px 16px; }
  .adm-edit-body{ padding:0 16px 4px; }
  .adm-edit-footer{ padding:12px 16px; }
  .adm-cv-section{ padding:12px 16px 6px; }
  .adm-status-opt{ padding:5px 10px;font-size:12px; }
}



/* ╔══════════════════════════════════════════════════════╗
   ║  CATEGORY / ARCHIVE — MOBILE RESPONSIVE (100% FIX)  ║
   ╚══════════════════════════════════════════════════════╝
   Breakpoints:
     lg: 992px  (Bootstrap col-lg threshold)
     md: 768px
     sm: 480px
*/

/* ── Category hero: compact on mobile ─────────────────── */
@media (max-width: 991.98px) {
  
  .category-hero p {
    font-size: 13px;
    margin: 4px 0 0;
    opacity: .85;
  }
}

/* ── Archive section ──────────────────────────────────── */
@media (max-width: 991.98px) {
  .archive-section {
    padding-top: 14px !important;
    padding-bottom: 28px !important;
  }
}

/* ── Archive card: FULL mobile rewrite ────────────────── */
@media (max-width: 991.98px) {

  /* Card wrapper */
  .archive-card {
    flex-direction: column !important; /* override Bootstrap d-flex row */
    gap: 0 !important;
    padding: 0 !important;
    margin-bottom: 16px !important;
    border-radius: 12px !important;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,.07);
    border: none !important;
  }

  /* Image link wrapper */
  .archive-card > a {
    width: 100% !important;
    flex-shrink: 0;
    display: block;
    position: relative;
    /* 16:9 aspect ratio container */
    padding-top: 52.5%;
    overflow: hidden;
  }

  /* Image: fills the aspect-ratio container */
  .archive-card > a > img,
  .archive-card > a img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  /* Content area */
  

  /* Category badge */
  

  /* Title */
  .archive-card h5 {
    margin: 0 0 5px !important;
  }
  .archive-card h5 a {
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 700;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* Excerpt */
  .archive-card p {
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: #555;
    margin-bottom: 6px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* Date */
  .archive-card small {
    font-size: 11px;
    color: #94a3b8;
    display: block;
  }
}

/* ── Very small phones (< 400px) ──────────────────────── */
@media (max-width: 399.98px) {
  .archive-card > a {
    padding-top: 56.25%; /* 16:9 on very small screens */
  }
  .archive-card h5 a {
    font-size: 14px !important;
  }
  .archive-card p {
    -webkit-line-clamp: 1;
  }
  
}

/* ── Pagination: touch-friendly ───────────────────────── */
@media (max-width: 767.98px) {
  .pagination-box {
    margin-top: 10px;
  }
  .pagination-box ul {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .pagination-box li {
    display: inline-block;
  }
  .pagination-box a,
  .pagination-box span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    font-size: 14px;
    border-radius: 8px;
    text-decoration: none;
  }
}


/* ╔══════════════════════════════════════════════════════════
   ║  ARCHIVE / CATEGORY PAGE — Full Redesign
   ║  Desktop + Tablet + Mobile (100% Responsive)
   ╚══════════════════════════════════════════════════════════ */

/* ── Category Hero ─────────────────────────────────────── */
.cat-hero {
  background: linear-gradient(135deg, #0f766e 0%, #14532d 60%, #052e16 100%);
  padding: 40px 0 36px;
  color: #fff;
}
.cat-hero-title {
  font-size: 36px;
  font-weight: 800;
  margin: 0 0 8px;
  letter-spacing: -.3px;
  line-height: 1.2;
}
.cat-hero-sub {
  font-size: 15px;
  color: rgba(255,255,255,.8);
  margin: 0;
  max-width: 600px;
  line-height: 1.6;
}

/* ── Archive Section ────────────────────────────────────── */
.arc-section { padding: 28px 0 48px; background: #f8fafc; }

/* ── Topbar: count + sort ───────────────────────────────── */
.arc-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid #e2e8f0;
  padding-bottom: 12px;
}
.arc-count {
  font-size: 14px;
  color: #64748b;
  font-weight: 500;
}
.arc-sort-label {
  font-size: 13px;
  color: #475569;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: 5px 14px;
  cursor: pointer;
}

/* ── Archive Card ───────────────────────────────────────── */
.arc-card {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  background: #fff;
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 14px;
  border: 1px solid #e2e8f0;
  transition: box-shadow .2s, transform .2s;
}
.arc-card:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,.08);
  transform: translateY(-1px);
}

/* Thumbnail */
.arc-card-img {
  flex-shrink: 0;
  width: 148px;
  height: 108px;
  border-radius: 8px;
  overflow: hidden;
  display: block;
  background: #f1f5f9;
}
.arc-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s;
}
.arc-card:hover .arc-card-img img { transform: scale(1.04); }
.arc-card-img--no-img {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
}

/* Content */
.arc-card-body { flex: 1; min-width: 0; }

.arc-cat {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  color: #0f766e;
  background: #f0fdfa;
  border: 1px solid #99f6e4;
  border-radius: 4px;
  padding: 2px 8px;
  text-decoration: none;
  margin-bottom: 7px;
  letter-spacing: .3px;
}
.arc-cat:hover { background: #ccfbf1; color: #0f766e; }

.arc-title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.45;
  margin: 0 0 7px;
}
.arc-title a {
  color: #1e293b;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.arc-title a:hover { color: #0f766e; }

.arc-excerpt {
  font-size: 13.5px;
  color: #64748b;
  line-height: 1.6;
  margin: 0 0 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.arc-meta {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.arc-author, .arc-date {
  font-size: 12px;
  color: #94a3b8;
  display: flex;
  align-items: center;
}
.arc-author i, .arc-date i { font-size: 11px; }

/* ── Empty state ────────────────────────────────────────── */
.arc-empty {
  text-align: center;
  padding: 48px 0;
  color: #94a3b8;
}
.arc-empty i { font-size: 40px; display: block; margin-bottom: 12px; }
.arc-empty p { font-size: 15px; }

/* ── Pagination ─────────────────────────────────────────── */
.arc-pagination { text-align: center; }
.arc-pagination .page-numbers {
  display: inline-flex;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 4px;
  flex-wrap: wrap;
  justify-content: center;
}
.arc-pagination .page-numbers li { display: inline-block; }
.arc-pagination .page-numbers a,
.arc-pagination .page-numbers span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 10px;
  border-radius: 8px;
  font-size: 14px;
  text-decoration: none;
  color: #475569;
  background: #fff;
  border: 1px solid #e2e8f0;
  font-family: "Hind Siliguri", sans-serif;
  transition: all .18s;
}
.arc-pagination .page-numbers .current,
.arc-pagination .page-numbers a:hover {
  background: #14532d;
  color: #fff;
  border-color: #14532d;
}
.arc-pagination .page-numbers .prev,
.arc-pagination .page-numbers .next {
  padding: 0 16px;
  font-size: 13px;
}

/* ── Sidebar Widgets ────────────────────────────────────── */
.arc-widget {
  background: #fff;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  padding: 18px 20px;
  margin-bottom: 20px;
}
.arc-widget-title {
  font-size: 15px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 14px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.arc-widget-bar {
  display: inline-block;
  width: 4px;
  height: 16px;
  background: #14532d;
  border-radius: 2px;
  margin-right: 6px;
}

/* Trending items */
.arc-trend-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid #f1f5f9;
}
.arc-trend-item:last-child { border-bottom: none; padding-bottom: 0; }
.arc-trend-num {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  background: #f0fdf4;
  color: #14532d;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}
.arc-trend-item a {
  font-size: 13.5px;
  font-weight: 600;
  color: #1e293b;
  text-decoration: none;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.arc-trend-item a:hover { color: #14532d; }

/* Ad box */
.arc-ad-box { border: 1px dashed #cbd5e1; background: #f8fafc; }
.arc-ad-label {
  font-size: 11px;
  color: #94a3b8;
  text-align: center;
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.arc-ad-inner {
  text-align: center;
  padding: 20px 10px;
  background: #fff;
  border-radius: 8px;
}
.arc-ad-inner p { font-size: 14px; font-weight: 600; color: #334155; margin: 10px 0 4px; }
.arc-ad-inner small { font-size: 12px; color: #94a3b8; display: block; margin-bottom: 14px; }
.arc-ad-btn {
  display: inline-block;
  background: #14532d;
  color: #fff;
  border-radius: 6px;
  padding: 8px 18px;
  font-size: 13px;
  text-decoration: none;
  font-weight: 600;
  transition: background .18s;
}
.arc-ad-btn:hover { background: #166534; color: #fff; }

/* Category list */
.arc-cat-list { list-style: none; padding: 0; margin: 0; }
.arc-cat-list li { border-bottom: 1px solid #f1f5f9; }
.arc-cat-list li:last-child { border-bottom: none; }
.arc-cat-list li a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 0;
  color: #334155;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: color .18s, gap .18s;
}
.arc-cat-list li a:hover { color: #14532d; gap: 12px; }
.arc-cat-list li a i { font-size: 13px; color: #14532d; }

/* ╔══════════════════════════════════════════════════════════
   ║  RESPONSIVE
   ╚══════════════════════════════════════════════════════════ */

/* ── Tablet (768px–991px) ────────────────────────────────── */
@media (min-width: 768px) and (max-width: 991.98px) {
  .cat-hero-title { font-size: 28px; }
  .arc-card-img   { width: 120px; height: 88px; }
  .arc-title      { font-size: 16px; }
}




/* ╔══════════════════════════════════════════════════════════
   ARCHIVE PAGE — RESPONSIVE CSS
   (CSS-controlled, no Bootstrap class dependency)
   ╚══════════════════════════════════════════════════════════ */

/* ── Sidebar: hidden below lg (992px) ───────────────────── */
/* CSS-based hiding (more reliable than d-none d-lg-block)  */
.arc-sidebar-col {
  display: none;
}
@media (min-width: 992px) {
  .arc-sidebar-col {
    display: block;
  }
}

/* ── Tablet: 768px – 991px ──────────────────────────────── */
@media (min-width: 768px) and (max-width: 991.98px) {
  .cat-hero           { padding: 28px 0 24px; }
  .cat-hero-title     { font-size: 26px; }
  .arc-card-img       { width: 120px !important; height: 90px !important; }
  .arc-title          { font-size: 15px; }
  .arc-excerpt        { font-size: 13px; }
}

/* ── Mobile: below 768px ────────────────────────────────── */
@media (max-width: 767.98px) {

  /* Hero */
  .cat-hero           { padding: 20px 0 18px; }
  .cat-hero-title     { font-size: 22px !important; margin: 0; }
  .cat-hero-sub       { font-size: 13px !important; margin-top: 4px; }

  /* Section */
  .arc-section        { padding: 14px 0 28px !important; }

  /* Topbar */
  .arc-topbar         { padding-bottom: 10px; margin-bottom: 12px !important; }
  .arc-count          { font-size: 12px !important; }
  .arc-sort-label     { font-size: 11px !important; padding: 4px 10px; }

  /* ── Card: vertical stack ── */
  .arc-card {
    flex-direction: column  !important;
    gap:            0       !important;
    padding:        0       !important;
    border-radius:  10px    !important;
    overflow:       hidden;
    margin-bottom:  12px    !important;
    border:         1px solid #e2e8f0 !important;
  }
  .arc-card:hover {
    transform: none; /* disable lift on touch devices */
  }

  /* ── Card image: full width, controlled height ── */
  .arc-card-img {
    width:          100%    !important;
    height:         175px   !important;
    border-radius:  0       !important;
    flex-shrink:    0;
  }
  .arc-card-img img {
    width:          100%    !important;
    height:         175px   !important;
    max-height:     175px   !important;
    object-fit:     cover   !important;
    border-radius:  0       !important;
    position:       static  !important; /* reset any positioning */
  }

  /* ── Card body ── */
  .arc-card-body    { padding: 10px 12px 12px !important; }
  .arc-cat          { font-size: 11px !important; margin-bottom: 4px; }
  .arc-title        { margin: 0 0 4px !important; }
  .arc-title a {
    font-size:          14px   !important;
    -webkit-line-clamp: 2      !important;
    line-height:        1.4    !important;
  }
  .arc-excerpt {
    font-size:          12.5px !important;
    -webkit-line-clamp: 2      !important;
    margin-bottom:      6px    !important;
    line-height:        1.5    !important;
  }
  .arc-meta         { gap: 8px !important; margin-top: 0; }
  .arc-author,
  .arc-date         { font-size: 11px !important; }

  /* ── Pagination ── */
  .arc-pagination   { margin-top: 8px; }
  .arc-pagination .page-numbers {
    gap: 3px !important;
  }
  .arc-pagination .page-numbers a,
  .arc-pagination .page-numbers span {
    min-width:  36px    !important;
    height:     36px    !important;
    font-size:  13px    !important;
    padding:    0 8px   !important;
  }
}

/* ── Very small phones: below 400px ─────────────────────── */
@media (max-width: 399.98px) {
  .cat-hero-title     { font-size: 19px !important; }
  .arc-card-img,
  .arc-card-img img   { height: 155px !important; max-height: 155px !important; }
  .arc-title a        { font-size: 13.5px !important; }
  .arc-excerpt        { -webkit-line-clamp: 1 !important; }
  .arc-card-body      { padding: 8px 10px 10px !important; }
}


/* ═══════════════════════════════════════════════
   MARKETING POPUP — Single post page
   ═══════════════════════════════════════════════ */
.mktg-popup-overlay {
  position: fixed; inset: 0; z-index: 9999;
  background: rgba(10,24,14,.75);
  backdrop-filter: blur(4px);
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
  animation: mktgFade .3s ease;
  opacity: 1;
  transition: opacity .3s;
}
.mktg-popup-overlay.hiding { opacity: 0; pointer-events: none; }

@keyframes mktgFade {
  from { opacity: 0; transform: scale(.96); }
  to   { opacity: 1; transform: scale(1); }
}

.mktg-popup-card {
  background: #fff;
  border-radius: 20px;
  max-width: 460px;
  width: 100%;
  overflow: hidden;
  box-shadow: 0 24px 64px rgba(0,0,0,.3);
  position: relative;
}

.mktg-popup-banner {
  background: linear-gradient(135deg, #14532d, #1d7a4a);
  padding: 28px 28px 20px;
  text-align: center;
}
.mktg-popup-icon {
  width: 56px; height: 56px; border-radius: 50%;
  background: rgba(255,255,255,.15);
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 14px;
  font-size: 24px; color: #fff;
}
.mktg-popup-headline {
  color: #fff;
  font-size: 20px; font-weight: 700;
  line-height: 1.35; margin: 0;
}

.mktg-popup-body { padding: 22px 28px 24px; text-align: center; }
.mktg-popup-sub {
  color: #475569; font-size: 15px; line-height: 1.6; margin: 0 0 20px;
}
.mktg-popup-sub strong { color: #14532d; }

.mktg-popup-cta {
  display: block; width: 100%;
  background: #14532d; color: #fff;
  border: none; border-radius: 10px;
  padding: 14px; font-size: 16px; font-weight: 700;
  font-family: 'Hind Siliguri', sans-serif;
  cursor: pointer; text-decoration: none;
  text-align: center; transition: background .2s;
}
.mktg-popup-cta:hover { background: #16a34a; color: #fff; }

.mktg-popup-skip {
  display: block; margin-top: 10px;
  color: #94a3b8; font-size: 13px; cursor: pointer;
  background: none; border: none;
  width: 100%; font-family: 'Hind Siliguri', sans-serif;
}
.mktg-popup-skip:hover { color: #475569; }

.mktg-popup-close {
  position: absolute; top: 12px; right: 14px;
  background: rgba(255,255,255,.2); border: none;
  width: 30px; height: 30px; border-radius: 50%;
  cursor: pointer; color: #fff; font-size: 14px;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s;
}
.mktg-popup-close:hover { background: rgba(255,255,255,.35); }

@media (max-width: 480px) {
  .mktg-popup-banner  { padding: 22px 20px 16px; }
  .mktg-popup-headline{ font-size: 17px; }
  .mktg-popup-body    { padding: 18px 20px 20px; }
  .mktg-popup-sub     { font-size: 14px; }
}

/* ── Dashboard field hints ──────────────────────────────── */
.db-field-hint {
  display: block;
  font-size: 11px;
  color: #94a3b8;
  margin-top: 4px;
  line-height: 1.5;
}
.db-field-hint code {
  font-size: 11px;
  background: #f1f5f9;
  padding: 1px 4px;
  border-radius: 3px;
  color: #0f766e;
}

/* ── Date picker styling ─────────────────────────────────── */
input[type="date"].db-inp {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  color: #1e293b;
  font-family: inherit;
}
input[type="date"].db-inp::-webkit-calendar-picker-indicator {
  opacity: .6;
  cursor: pointer;
}
input[type="date"].db-inp:focus::-webkit-calendar-picker-indicator {
  opacity: 1;
}

/* ── Empty field red border ───────────────────────────────── */
.db-inp.is-empty,
.db-sel.is-empty {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,.1);
  animation: shakeField .3s ease;
}
@keyframes shakeField {
  0%,100%{transform:translateX(0)}
  20%{transform:translateX(-4px)}
  60%{transform:translateX(4px)}
}
.db-inp.is-empty:focus,
.db-sel.is-empty:focus { border-color: #ef4444 !important; }

/* ── Modern Date Picker ──────────────────────────────────── */
input[type="date"].db-inp {
  position: relative;
  cursor: pointer;
  color-scheme: light;
}
input[type="date"].db-inp::-webkit-calendar-picker-indicator {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%2314532d' d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z'/%3E%3C/svg%3E");
  background-size: 16px 16px;
  cursor: pointer;
  opacity: .7;
  padding: 0 4px;
  transition: opacity .2s;
}
input[type="date"].db-inp::-webkit-calendar-picker-indicator:hover { opacity: 1; }
input[type="date"].db-inp:focus { border-color: #14532d; }

/* ── Red dot inline indicator in alert text ─────────────────── */
.db-red-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #ef4444;
  border-radius: 50%;
  margin: 0 2px;
  vertical-align: middle;
}
