/**
 * Shohadaye Daneshjo — Memorial skin (ported look from new frontend)
 * Visual only: tokens, chrome, homepage, cards, forms. Keeps PHP architecture.
 * Load LAST after nm-public.css
 */

/* ========== Design tokens (green + gold memorial) ========== */
:root {
  --sd-green: #1e7a5b;
  --sd-green-hover: #19684e;
  --sd-green-soft: #ebf8f4;
  --sd-gold: #c39a22;
  --sd-gold-text: #ad891e;
  --sd-page: #f5f7f9;
  --sd-section: #f2f4f6;
  --sd-section-alt: #ffffff;
  --sd-card: #ffffff;
  --sd-card-border: #c5ddd2;
  --sd-text: #1e232d;
  --sd-text-2: #676e7e;
  --sd-text-muted: #8a92a0;
  --sd-border: #dbe0e4;
  --sd-footer: #eef1f4;
  --sd-footer-border: #dbe0e4;
  --sd-nav: #ffffff;
  --sd-hero-overlay: #1a2330;
  --sd-radius: 0.625rem;
  --sd-radius-lg: 1rem;
  --sd-radius-xl: 1.25rem;
  --sd-radius-2xl: 1.5rem;
  --sd-max: 80rem;
  --sd-shadow: 0 10px 30px rgba(15, 30, 40, 0.08);
  --sd-shadow-lg: 0 18px 40px rgba(15, 30, 40, 0.12);

  /* Remap Nomaydan / site tokens */
  --nm-azure: #1e7a5b;
  --nm-azure-50: #ebf8f4;
  --nm-azure-100: #d4f0e6;
  --nm-azure-200: #a8dcc9;
  --nm-azure-300: #5fb899;
  --nm-azure-400: #2f9772;
  --nm-azure-500: #1e7a5b;
  --nm-azure-600: #19684e;
  --nm-azure-700: #145640;
  --nm-azure-800: #0f4030;
  --nm-azure-900: #0a2b20;
  --nm-bg: #f5f7f9;
  --nm-bg-subtle: #f2f4f6;
  --nm-cream: #f5f7f9;
  --nm-gold: #c39a22;
  --nm-gold-500: #ad891e;
  --nm-heading: #1e7a5b;
  --nm-text: #1e232d;
  --nm-text-secondary: #676e7e;
  --nm-text-muted: #8a92a0;
  --nm-text-link: #1e7a5b;
  --nm-text-link-hover: #c39a22;
  --nm-border: #dbe0e4;
  --nm-border-strong: #c5ddd2;
  --nm-surface: #ffffff;
  --nm-surface-raised: #ffffff;
  --nm-radius-sm: 0.375rem;
  --nm-radius-md: 0.625rem;
  --nm-radius-lg: 1rem;
  --nm-radius-xl: 1.25rem;
  --nm-pattern-body-opacity: 0.04;

  --primary: #1e7a5b;
  --primary-dark: #19684e;
  --primary-soft: #ebf8f4;
  --accent: #c39a22;
  --bg: #f5f7f9;
  --surface: #ffffff;
  --text: #1e232d;
  --muted: #676e7e;
  --border: #dbe0e4;
  --azure: #1e7a5b;
}

html[data-theme="dark"] {
  --sd-green: #238e6b;
  --sd-green-hover: #2aa379;
  --sd-green-soft: #203b32;
  --sd-gold: #dcb43b;
  --sd-gold-text: #dcb43b;
  --sd-page: #0c141c;
  --sd-section: #101922;
  --sd-section-alt: #0e1720;
  --sd-card: #131e29;
  --sd-card-border: #234238;
  --sd-text: #f9f6ea;
  --sd-text-2: #84ad9f;
  --sd-text-muted: #6b9588;
  --sd-border: #234238;
  --sd-footer: #070c12;
  --sd-footer-border: #1a332a;
  --sd-nav: #0c141c;
  --sd-hero-overlay: #0c141c;
  --sd-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  --sd-shadow-lg: 0 18px 40px rgba(0, 0, 0, 0.45);

  --nm-azure: #238e6b;
  --nm-azure-50: rgba(35, 142, 107, 0.12);
  --nm-azure-100: rgba(35, 142, 107, 0.18);
  --nm-azure-200: rgba(35, 142, 107, 0.28);
  --nm-azure-300: #84ad9f;
  --nm-azure-400: #5fb899;
  --nm-azure-500: #238e6b;
  --nm-azure-600: #2aa379;
  --nm-azure-700: #c5e6d8;
  --nm-azure-800: #0f4030;
  --nm-azure-900: #0a2b20;
  --nm-bg: #0c141c;
  --nm-bg-subtle: #101922;
  --nm-cream: #101922;
  --nm-gold: #dcb43b;
  --nm-gold-500: #c39a22;
  --nm-heading: #f9f6ea;
  --nm-text: #f9f6ea;
  --nm-text-secondary: #84ad9f;
  --nm-text-muted: #6b9588;
  --nm-text-link: #dcb43b;
  --nm-text-link-hover: #f0d06a;
  --nm-border: #234238;
  --nm-border-strong: #2f5748;
  --nm-surface: #101922;
  --nm-surface-raised: #131e29;
  --nm-pattern-body-opacity: 0.06;

  --primary: #238e6b;
  --primary-dark: #2aa379;
  --primary-soft: #203b32;
  --accent: #dcb43b;
  --bg: #0c141c;
  --surface: #131e29;
  --text: #f9f6ea;
  --muted: #84ad9f;
  --border: #234238;
  --azure: #238e6b;
}

/* ========== Base ========== */
body.page-shell.nm-public {
  background-color: var(--sd-page) !important;
  color: var(--sd-text);
  padding-top: 0;
  padding-bottom: 0;
}

body.page-shell.nm-public::before {
  background-image: url(/dist/images/theme/pattern-bg.jpg) !important;
  background-size: cover !important;
  opacity: 0.03 !important;
}

html[data-theme="dark"] body.page-shell.nm-public::before {
  opacity: 0.05 !important;
}

body.page-shell.nm-public a {
  color: inherit;
}

body.page-shell.nm-public .nm-btn--primary,
body.page-shell.nm-public .membership-btn.nm-btn--primary {
  background: var(--sd-green) !important;
  color: #fff !important;
  border-radius: var(--sd-radius) !important;
  border: none !important;
}

body.page-shell.nm-public .nm-btn--primary:hover,
body.page-shell.nm-public .membership-btn.nm-btn--primary:hover {
  background: var(--sd-green-hover) !important;
}

body.page-shell.nm-public .nm-btn--outline {
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent) !important;
  color: var(--sd-text) !important;
  border-radius: var(--sd-radius) !important;
}

body.page-shell.nm-public .nm-btn--outline:hover {
  background: color-mix(in srgb, var(--sd-green) 10%, transparent) !important;
  border-color: var(--sd-green) !important;
  color: var(--sd-green) !important;
}

body.page-shell.nm-public .nm-card,
body.page-shell.nm-public .news-item,
body.page-shell.nm-public .stat-card,
body.page-shell.nm-public .featured-martyr-card,
body.page-shell.nm-public .martyr-group-card,
body.page-shell.nm-public .search-result-card,
body.page-shell.nm-public .profile-card {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
  box-shadow: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

body.page-shell.nm-public .nm-card:hover,
body.page-shell.nm-public .featured-martyr-card:hover,
body.page-shell.nm-public .martyr-group-card:hover,
body.page-shell.nm-public .search-result-card:hover {
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent) !important;
  transform: translateY(-2px);
  box-shadow: var(--sd-shadow);
}

/* ========== Hide old chrome pieces when using new shell ========== */
body.sd-skin .site-header,
body.sd-skin .top-header {
  display: none !important;
}

body.sd-skin .nav-lang-switcher {
  display: none !important;
}

/* Keep scroll-to-top as floating FAB */
body.sd-skin .sd-scroll-top {
  position: fixed !important;
  bottom: 5.5rem;
  inset-inline-end: 1.25rem;
  z-index: 70;
}

body.sd-skin .sd-scroll-top .scroll-top-btn {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  background: var(--sd-green);
  color: #fff;
  border: none;
  box-shadow: var(--sd-shadow);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

@media (min-width: 769px) {
  body.sd-skin .sd-scroll-top {
    bottom: 1.5rem;
  }
}

/* ========== Fixed navbar ========== */
/* !important: nm-public sets body > * { position: relative } with higher specificity */
body.sd-skin .sd-navbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1000 !important;
  width: 100%;
  transition: background 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
  /* Always keep a readable frosted bar so nav text never blends into hero */
  background: color-mix(in srgb, var(--sd-nav) 82%, transparent);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid color-mix(in srgb, var(--sd-border) 55%, transparent);
}

body.sd-skin .sd-navbar.is-scrolled,
body.sd-skin .sd-navbar.is-solid {
  background: color-mix(in srgb, var(--sd-nav) 95%, transparent);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  border-bottom-color: var(--sd-border);
}

body.sd-skin .sd-navbar .sd-nav-inner {
  max-width: var(--sd-max);
  margin: 0 auto;
  padding: 0 1rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

@media (min-width: 768px) {
  body.sd-skin .sd-navbar .sd-nav-inner {
    height: 5rem;
    padding: 0 1.5rem;
  }
}

body.sd-skin .sd-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  text-decoration: none;
  flex-shrink: 0;
  color: var(--sd-text);
}

body.sd-skin .sd-brand-mark {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: var(--sd-green);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

body.sd-skin .sd-brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.sd-skin .sd-brand-mark i {
  color: var(--sd-gold);
  font-size: 1.1rem;
}

body.sd-skin .sd-brand-title {
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: -0.01em;
  color: var(--sd-text);
}

@media (max-width: 640px) {
  body.sd-skin .sd-brand-title {
    display: none;
  }
}

body.sd-skin .sd-nav-menu {
  display: none;
}

@media (min-width: 900px) {
  body.sd-skin .sd-nav-menu {
    display: flex;
    align-items: center;
    gap: 0.15rem;
    flex: 1;
    justify-content: center;
  }
}

body.sd-skin .sd-nav-menu .nav-list {
  display: flex;
  align-items: center;
  gap: 0.15rem;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
  justify-content: center;
}

body.sd-skin .sd-nav-menu .nav-item {
  position: relative;
}

body.page-shell.sd-skin .sd-nav-menu .nav-link,
body.page-shell.sd-skin .sd-nav-menu .nav-link:link,
body.page-shell.sd-skin .sd-nav-menu .nav-link:visited,
body.page-shell.sd-skin .sd-nav-menu a.nav-link,
body.page-shell.sd-skin .sd-nav-menu button.nav-link {
  display: inline-flex !important;
  align-items: center;
  gap: 0.35rem;
  padding: 0.5rem 0.85rem !important;
  border-radius: 0.65rem;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  color: var(--sd-text) !important;
  text-decoration: none !important;
  transition: color 0.15s ease, background 0.15s ease;
  white-space: nowrap;
  background: transparent !important;
  border: none;
  cursor: pointer;
  font-family: inherit;
  line-height: 1.3;
  min-height: auto !important;
}

body.page-shell.sd-skin .sd-nav-menu .nav-link:hover,
body.page-shell.sd-skin .sd-nav-menu .nav-link:focus-visible,
body.page-shell.sd-skin .sd-nav-menu .nav-link.is-active,
body.page-shell.sd-skin .sd-nav-menu .nav-item.is-open > .nav-link {
  color: var(--sd-green) !important;
  background: color-mix(in srgb, var(--sd-green) 12%, transparent) !important;
}

body.sd-skin .sd-nav-menu .nav-dd-chevron {
  font-size: 0.65rem;
  opacity: 0.75;
  transition: transform 0.18s ease;
}

body.sd-skin .sd-nav-menu .nav-item.is-open .nav-dd-chevron {
  transform: rotate(180deg);
}

body.sd-skin .sd-nav-menu .nav-dropdown {
  position: absolute;
  top: calc(100% + 0.35rem);
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  min-width: 12.5rem;
  margin: 0;
  padding: 0.35rem;
  list-style: none;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: 0.85rem;
  box-shadow: var(--sd-shadow);
  z-index: 130;
}

body.sd-skin .sd-nav-menu .nav-dropdown[hidden] {
  display: none !important;
}

body.sd-skin .sd-nav-menu .nav-dropdown-link {
  display: block;
  padding: 0.65rem 0.85rem;
  border-radius: 0.65rem;
  color: var(--sd-text) !important;
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  white-space: nowrap;
  transition: color 0.15s ease, background 0.15s ease;
}

body.sd-skin .sd-nav-menu .nav-dropdown-link:hover,
body.sd-skin .sd-nav-menu .nav-dropdown-link:focus-visible {
  color: var(--sd-gold-text) !important;
  background: color-mix(in srgb, var(--sd-green) 10%, transparent);
}

body.sd-skin .sd-nav-actions {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  flex-shrink: 0;
}

body.sd-skin .sd-icon-btn {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.65rem;
  border: none;
  background: transparent;
  color: var(--sd-text) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.15s, background 0.15s;
}

body.sd-skin .sd-icon-btn:hover {
  color: var(--sd-gold-text);
  background: rgba(0, 0, 0, 0.04);
}

html[data-theme="dark"] body.sd-skin .sd-icon-btn:hover {
  background: rgba(255, 255, 255, 0.06);
}

body.sd-skin .sd-search-pill {
  display: none;
  position: relative;
}

@media (min-width: 1100px) {
  body.sd-skin .sd-search-pill {
    display: block;
  }
}

body.sd-skin .sd-search-pill input {
  width: 14rem;
  height: 2.15rem;
  border-radius: 999px;
  border: 1px solid var(--sd-card-border);
  background: var(--sd-card);
  color: var(--sd-text);
  padding: 0 1rem 0 2.4rem;
  font-size: 0.85rem;
  outline: none;
}

html[dir="rtl"] body.sd-skin .sd-search-pill input {
  padding: 0 2.4rem 0 1rem;
}

body.sd-skin .sd-search-pill input:focus {
  border-color: var(--sd-green);
}

body.sd-skin .sd-search-pill i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  inset-inline-start: 0.85rem;
  color: var(--sd-text-muted);
  font-size: 0.85rem;
  pointer-events: none;
}

body.sd-skin .sd-lang {
  position: relative;
}

body.sd-skin .sd-lang-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.65rem;
  border-radius: 0.65rem;
  border: none;
  background: transparent;
  color: var(--sd-text) !important;
  font-size: 0.85rem;
  cursor: pointer;
}

body.sd-skin .sd-lang-btn:hover {
  color: var(--sd-gold-text);
  background: rgba(0, 0, 0, 0.04);
}

body.sd-skin .sd-lang-dropdown {
  position: absolute;
  top: calc(100% + 0.4rem);
  inset-inline-end: 0;
  min-width: 7.5rem;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: 0.75rem;
  box-shadow: var(--sd-shadow);
  overflow: hidden;
  z-index: 120;
  list-style: none;
  margin: 0;
  padding: 0.25rem 0;
}

body.sd-skin .sd-lang-dropdown a {
  display: block;
  padding: 0.55rem 1rem;
  font-size: 0.85rem;
  color: var(--sd-text-2);
  text-decoration: none;
}

body.sd-skin .sd-lang-dropdown a:hover,
body.sd-skin .sd-lang-dropdown a.active {
  background: var(--sd-green-soft);
  color: var(--sd-gold-text);
}

body.sd-skin .sd-cta-btn {
  display: none;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.9rem;
  border-radius: 0.75rem;
  background: var(--sd-green);
  color: #fff !important;
  font-size: 0.85rem;
  font-weight: 600;
  text-decoration: none;
}

@media (min-width: 900px) {
  body.sd-skin .sd-cta-btn {
    display: inline-flex;
  }
}

body.sd-skin .sd-cta-btn:hover {
  background: var(--sd-green-hover);
  color: #fff !important;
}

body.sd-skin .sd-burger {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid var(--sd-border) !important;
  background: color-mix(in srgb, var(--sd-card) 70%, transparent) !important;
  border-radius: 0.65rem;
  cursor: pointer;
  padding: 0.5rem;
}

@media (min-width: 900px) {
  body.sd-skin .sd-burger {
    display: none;
  }
}

body.page-shell.sd-skin .sd-burger.nav-toggle .bar,
body.page-shell.sd-skin .sd-burger.nm-burger span,
body.sd-skin .sd-burger .bar {
  display: block !important;
  height: 2px !important;
  width: 100% !important;
  background: var(--sd-text) !important;
  border-radius: 2px !important;
  transition: transform 0.2s, opacity 0.2s;
}

body.sd-skin .sd-burger.active .bar:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
body.sd-skin .sd-burger.active .bar:nth-child(2) {
  opacity: 0;
}
body.sd-skin .sd-burger.active .bar:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* Mobile drawer */
body.sd-skin .sd-nav-drawer {
  display: none;
  background: color-mix(in srgb, var(--sd-card) 98%, transparent);
  backdrop-filter: blur(14px);
  border-top: 1px solid var(--sd-card-border);
}

body.sd-skin.nav-open .sd-nav-drawer,
body.sd-skin .sd-nav-drawer.active {
  display: block;
}

body.sd-skin .sd-nav-drawer .nav-list {
  list-style: none;
  margin: 0;
  padding: 0.75rem 1rem 1rem;
}

body.sd-skin .sd-nav-drawer .nav-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  width: 100%;
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  color: var(--sd-text) !important;
  text-decoration: none;
  font-size: 0.95rem;
  font-weight: 600;
  background: transparent;
  border: none;
  cursor: pointer;
  font-family: inherit;
  text-align: inherit;
}

body.sd-skin .sd-nav-drawer .nav-link:hover,
body.sd-skin .sd-nav-drawer .has-drawer-group.is-open > .nav-link {
  color: var(--sd-gold-text) !important;
  background: color-mix(in srgb, var(--sd-green) 10%, transparent);
}

body.sd-skin .sd-nav-drawer .nav-dd-chevron {
  font-size: 0.7rem;
  opacity: 0.7;
  transition: transform 0.18s ease;
}

body.sd-skin .sd-nav-drawer .has-drawer-group.is-open .nav-dd-chevron {
  transform: rotate(180deg);
}

body.sd-skin .sd-nav-drawer .nav-drawer-sub {
  list-style: none;
  margin: 0.15rem 0 0.35rem;
  padding: 0 0.35rem 0.35rem;
}

body.sd-skin .sd-nav-drawer .nav-drawer-sub[hidden] {
  display: none !important;
}

body.sd-skin .sd-nav-drawer .nav-drawer-link {
  font-weight: 500 !important;
  padding-inline-start: 1.35rem !important;
  color: var(--sd-text-2) !important;
}

body.sd-skin .sd-nav-drawer .nav-drawer-link:hover {
  color: var(--sd-gold-text) !important;
}

body.sd-skin .sd-nav-drawer .sd-drawer-actions {
  padding: 0.5rem 1rem 1.25rem;
  border-top: 1px solid var(--sd-card-border);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

body.sd-skin .sd-nav-drawer .sd-drawer-actions a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  min-height: 44px;
  border-radius: 0.75rem;
  text-decoration: none;
  font-size: 0.9rem;
}

body.sd-skin .sd-nav-drawer .sd-drawer-actions .primary {
  background: var(--sd-green);
  color: #fff !important;
}

body.sd-skin .sd-nav-drawer .sd-drawer-actions .ghost {
  border: 1px solid var(--sd-card-border);
  color: var(--sd-text);
}

/* Offset content under fixed nav (fixed chrome is out of flow) */
body.sd-skin:not(.sd-home) {
  padding-top: 5rem;
}

body.sd-skin.sd-home {
  padding-top: 0;
}

/* ========== Hero ========== */
.sd-hero {
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: var(--sd-text);
}

.sd-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.sd-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sd-hero__veil {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to bottom, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0.5) 45%, var(--sd-page)),
    linear-gradient(to left, transparent, rgba(255, 255, 255, 0.35));
}

html[data-theme="dark"] .sd-hero__veil {
  background:
    linear-gradient(to bottom, rgba(12, 20, 28, 0.88), rgba(12, 20, 28, 0.65) 45%, var(--sd-page)),
    linear-gradient(to left, transparent, rgba(12, 20, 28, 0.45));
}

.sd-hero__content {
  position: relative;
  z-index: 2;
  max-width: 56rem;
  margin: 0 auto;
  padding: 6.5rem 1.25rem 4rem;
  text-align: center;
  transition: transform 0.1s linear, opacity 0.1s linear;
}

.sd-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 1rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--sd-green) 30%, transparent);
  background: color-mix(in srgb, var(--sd-green) 18%, transparent);
  color: var(--sd-text-2);
  font-size: 0.875rem;
  margin-bottom: 1.75rem;
}

.sd-hero__badge i {
  color: var(--sd-gold);
}

.sd-hero h1 {
  font-size: clamp(1.75rem, 4vw, 3.5rem);
  font-weight: 800;
  line-height: 1.25;
  color: var(--sd-text) !important;
  margin: 0 0 1.25rem;
}

.sd-hero__sub {
  font-size: clamp(1rem, 2vw, 1.25rem);
  color: var(--sd-text-2);
  max-width: 42rem;
  margin: 0 auto 1rem;
  line-height: 1.8;
}

.sd-hero__quote {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 1.75rem 0;
  color: color-mix(in srgb, var(--sd-gold) 90%, transparent);
  font-style: italic;
  font-size: 0.95rem;
}

.sd-hero__quote::before,
.sd-hero__quote::after {
  content: "";
  width: 3rem;
  height: 1px;
  background: color-mix(in srgb, var(--sd-green) 40%, transparent);
}

.sd-hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  justify-content: center;
  margin-top: 1.75rem;
}

.sd-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.85rem 1.75rem;
  border-radius: 0.85rem;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s, box-shadow 0.2s, transform 0.2s, border-color 0.2s;
  border: 1px solid transparent;
  cursor: pointer;
}

.sd-btn--primary {
  background: var(--sd-green);
  color: #fff !important;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--sd-green) 35%, transparent);
}

.sd-btn--primary:hover {
  background: var(--sd-green-hover);
  color: #fff !important;
  transform: translateY(-1px);
}

.sd-btn--ghost {
  background: transparent;
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent);
  color: var(--sd-text) !important;
}

.sd-btn--ghost:hover {
  background: color-mix(in srgb, var(--sd-green) 10%, transparent);
}

.sd-hero__stats {
  margin-top: 3.5rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

@media (min-width: 768px) {
  .sd-hero__stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.sd-hero__stat {
  border-radius: var(--sd-radius-lg);
  border: 1px solid color-mix(in srgb, var(--sd-card-border) 70%, transparent);
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(8px);
  padding: 1.1rem 0.75rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

html[data-theme="dark"] .sd-hero__stat {
  background: color-mix(in srgb, var(--sd-card) 45%, transparent);
}

.sd-hero__stat-value {
  font-size: clamp(1.4rem, 3vw, 1.85rem);
  font-weight: 800;
  color: var(--sd-gold);
  margin-bottom: 0.25rem;
}

.sd-hero__stat-label {
  font-size: 0.8rem;
  color: var(--sd-text-muted);
}

.sd-hero__scroll {
  position: absolute;
  bottom: 1.75rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  width: 1.5rem;
  height: 2.5rem;
  border: 2px solid color-mix(in srgb, var(--sd-green) 40%, transparent);
  border-radius: 999px;
  display: flex;
  justify-content: center;
  padding-top: 0.45rem;
  animation: sd-bounce 1.6s infinite;
}

.sd-hero__scroll span {
  width: 0.25rem;
  height: 0.5rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--sd-gold) 70%, transparent);
}

@keyframes sd-bounce {
  0%, 100% { transform: translate(-50%, 0); }
  50% { transform: translate(-50%, 8px); }
}

/* ========== Sections ========== */
.sd-section {
  position: relative;
  padding: 4rem 0;
}

@media (min-width: 768px) {
  .sd-section {
    padding: 5rem 0;
  }
}

.sd-section--alt {
  background: var(--sd-section-alt);
}

.sd-section--muted {
  background: var(--sd-section);
}

.sd-wrap {
  max-width: var(--sd-max);
  margin: 0 auto;
  padding: 0 1rem;
}

@media (min-width: 768px) {
  .sd-wrap {
    padding: 0 1.5rem;
  }
}

.sd-section-head {
  text-align: center;
  margin-bottom: 2.5rem;
}

.sd-section-head--row {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  text-align: start;
  margin-bottom: 2.5rem;
}

@media (min-width: 768px) {
  .sd-section-head--row {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }
}

.sd-section-head h2 {
  font-size: clamp(1.4rem, 2.5vw, 1.9rem);
  font-weight: 800;
  color: var(--sd-text) !important;
  margin: 0 0 0.65rem;
}

.sd-section-head p {
  color: var(--sd-text-muted);
  margin: 0;
  font-size: 1rem;
  max-width: 40rem;
}

.sd-section-head--center p {
  margin-inline: auto;
}

.sd-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.9rem;
  border-radius: 999px;
  font-size: 0.85rem;
  margin-bottom: 0.85rem;
}

.sd-chip--red {
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.2);
  color: #f87171;
}

.sd-chip--green {
  background: color-mix(in srgb, var(--sd-green) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--sd-green) 25%, transparent);
  color: var(--sd-green);
}

.sd-chip--gold {
  background: color-mix(in srgb, var(--sd-gold) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--sd-gold) 25%, transparent);
  color: var(--sd-gold-text);
}

/* Quick links */
.sd-quick-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.15rem;
}

@media (min-width: 640px) {
  .sd-quick-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .sd-quick-grid { grid-template-columns: repeat(4, 1fr); }
}

.sd-quick-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 1.5rem 1.25rem;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: var(--sd-radius-2xl);
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.sd-quick-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--sd-shadow-lg);
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent);
}

.sd-quick-icon {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  font-size: 1.35rem;
}

.sd-quick-icon--green { background: rgba(16, 185, 129, 0.15); color: #10b981; border-color: rgba(16, 185, 129, 0.2); }
.sd-quick-icon--amber { background: rgba(245, 158, 11, 0.15); color: #f59e0b; border-color: rgba(245, 158, 11, 0.2); }
.sd-quick-icon--cyan { background: rgba(6, 182, 212, 0.15); color: #06b6d4; border-color: rgba(6, 182, 212, 0.2); }
.sd-quick-icon--purple { background: rgba(168, 85, 247, 0.15); color: #a855f7; border-color: rgba(168, 85, 247, 0.2); }

.sd-quick-card h3 {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 0.5rem;
  color: var(--sd-text) !important;
}

.sd-quick-card:hover h3 {
  color: var(--sd-green) !important;
}

.sd-quick-card p {
  font-size: 0.875rem;
  color: var(--sd-text-muted);
  margin: 0 0 1rem;
  line-height: 1.6;
}

.sd-quick-card .sd-more {
  color: var(--sd-gold);
  font-size: 0.875rem;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}

/* Martyr cards */
.sd-martyrs-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.15rem;
}

@media (min-width: 640px) {
  .sd-martyrs-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .sd-martyrs-grid { grid-template-columns: repeat(4, 1fr); }
}

.sd-martyr-card {
  position: relative;
  display: block;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: var(--sd-radius-2xl);
  overflow: hidden;
  color: inherit;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.sd-martyr-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.sd-martyr-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--sd-shadow-lg);
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent);
}

.sd-martyr-card__media {
  position: relative;
  height: 11rem;
  overflow: hidden;
  background: var(--sd-section);
}

.sd-martyr-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.75;
  transition: opacity 0.45s, transform 0.45s;
}

.sd-martyr-card:hover .sd-martyr-card__media img {
  opacity: 1;
  transform: scale(1.05);
}

.sd-martyr-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--sd-card), transparent);
  pointer-events: none;
}

.sd-martyr-card__year {
  position: absolute;
  bottom: 0.75rem;
  inset-inline-start: 0.75rem;
  z-index: 1;
  padding: 0.2rem 0.55rem;
  border-radius: 0.4rem;
  font-size: 0.72rem;
  color: #fff;
  background: color-mix(in srgb, var(--sd-green) 70%, transparent);
  border: 1px solid color-mix(in srgb, var(--sd-green) 50%, transparent);
}

.sd-martyr-fav {
  position: absolute;
  top: 0.7rem;
  inset-inline-end: 0.7rem;
  z-index: 2;
  width: 2rem;
  height: 2rem;
  border: none;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(6px);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.15s, background 0.15s, color 0.15s;
}

.sd-martyr-fav:hover {
  background: rgba(0, 0, 0, 0.45);
}

.sd-martyr-fav:active {
  transform: scale(0.9);
}

.sd-martyr-fav.is-active {
  color: #ef4444;
}

.sd-martyr-card__body {
  padding: 1rem 1.1rem 1.25rem;
}

.sd-martyr-card__body h3 {
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0 0 0.45rem;
  color: var(--sd-text) !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sd-martyr-card:hover .sd-martyr-card__body h3 {
  color: var(--sd-green) !important;
}

.sd-martyr-card__meta {
  font-size: 0.78rem;
  color: var(--sd-text-muted);
  margin: 0 0 0.45rem;
}

.sd-martyr-card__quote {
  font-size: 0.75rem;
  color: color-mix(in srgb, var(--sd-gold-text) 75%, transparent);
  font-style: italic;
  margin: 0;
  line-height: 1.6;
}

/* Today cards */
.sd-today-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 768px) {
  .sd-today-grid { grid-template-columns: repeat(3, 1fr); }
}

.sd-today-card {
  position: relative;
  display: flex;
  gap: 1rem;
  padding: 1.4rem;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: var(--sd-radius-2xl);
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
  overflow: hidden;
}

.sd-today-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(to left, rgba(239, 68, 68, 0.6), rgba(248, 113, 113, 0.3));
}

.sd-today-card--birth::before {
  background: linear-gradient(to left, color-mix(in srgb, var(--sd-gold) 70%, transparent), color-mix(in srgb, var(--sd-gold) 30%, transparent));
}

.sd-today-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--sd-shadow);
  border-color: rgba(239, 68, 68, 0.3);
}

.sd-today-card--birth:hover {
  border-color: color-mix(in srgb, var(--sd-gold) 40%, transparent);
}

.sd-today-card__icon {
  width: 3rem;
  height: 3rem;
  border-radius: 0.85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.2);
  color: #f87171;
}

.sd-today-card--birth .sd-today-card__icon {
  background: color-mix(in srgb, var(--sd-gold) 12%, transparent);
  border-color: color-mix(in srgb, var(--sd-gold) 25%, transparent);
  color: var(--sd-gold);
}

.sd-today-card h3 {
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0 0 0.55rem;
  color: var(--sd-text) !important;
}

.sd-today-card:hover h3 {
  color: #f87171 !important;
}

.sd-today-card--birth:hover h3 {
  color: var(--sd-gold-text) !important;
}

.sd-today-card__body {
  flex: 1;
  min-width: 0;
}

.sd-today-card__row {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  margin: 0 0 0.35rem;
  font-size: 0.78rem;
  color: var(--sd-text-muted);
}

.sd-today-card__row i {
  color: var(--sd-green);
  width: 0.9rem;
  text-align: center;
  flex-shrink: 0;
}

.sd-today-card__date {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0.55rem 0 0.45rem;
  padding-top: 0.55rem;
  border-top: 1px solid var(--sd-card-border);
  font-size: 0.75rem;
  color: var(--sd-text-muted);
}

.sd-today-card__date i {
  color: #f87171;
}

.sd-today-card__date strong {
  color: #f87171;
  font-weight: 600;
}

.sd-today-card__date--gold i,
.sd-today-card__date--gold strong {
  color: var(--sd-gold);
}

.sd-today-card__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.2rem 0.55rem;
  border-radius: 0.4rem;
  font-size: 0.72rem;
  color: #f87171;
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.2);
}

.sd-today-card__badge--gold {
  color: var(--sd-gold-text);
  background: color-mix(in srgb, var(--sd-gold) 12%, transparent);
  border-color: color-mix(in srgb, var(--sd-gold) 25%, transparent);
}

/* Stats section */
.sd-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

@media (min-width: 768px) {
  .sd-stats-grid { grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
}

.sd-stat-card {
  --sd-stat-from: #059669;
  --sd-stat-to: #10b981;
  position: relative;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: var(--sd-radius-2xl);
  padding: 1.5rem;
  overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.sd-stat-card--emerald { --sd-stat-from: #059669; --sd-stat-to: #10b981; }
.sd-stat-card--amber { --sd-stat-from: #d97706; --sd-stat-to: #f59e0b; }
.sd-stat-card--teal { --sd-stat-from: #0d9488; --sd-stat-to: #14b8a6; }
.sd-stat-card--cyan { --sd-stat-from: #0891b2; --sd-stat-to: #22d3ee; }
.sd-stat-card--slate { --sd-stat-from: #64748b; --sd-stat-to: #94a3b8; }
.sd-stat-card--indigo { --sd-stat-from: #6366f1; --sd-stat-to: #818cf8; }

.sd-stat-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(to left, var(--sd-stat-from), var(--sd-stat-to));
  opacity: 0.65;
  transition: opacity 0.2s;
}

.sd-stat-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--sd-shadow);
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent);
}

.sd-stat-card:hover::before {
  opacity: 1;
}

.sd-stat-card__icon {
  width: 3rem;
  height: 3rem;
  border-radius: 0.85rem;
  background: linear-gradient(135deg, var(--sd-stat-from), var(--sd-stat-to));
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  box-shadow: 0 8px 18px color-mix(in srgb, var(--sd-stat-from) 30%, transparent);
}

.sd-stat-card__value {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--sd-gold);
  margin-bottom: 0.35rem;
  font-variant-numeric: tabular-nums;
}

.sd-stat-card__label {
  font-size: 0.875rem;
  color: var(--sd-text-muted);
}

/* News grid home */
.sd-news-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.15rem;
}

@media (min-width: 768px) {
  .sd-news-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .sd-news-grid { grid-template-columns: repeat(3, 1fr); }
}

.sd-news-card {
  display: flex;
  flex-direction: column;
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: var(--sd-radius-2xl);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.sd-news-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--sd-shadow);
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent);
}

.sd-news-card__media {
  position: relative;
  height: 9.5rem;
  overflow: hidden;
  background: var(--sd-section);
}

.sd-news-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}

.sd-news-card:hover .sd-news-card__media img {
  transform: scale(1.05);
}

.sd-news-card__date {
  position: absolute;
  bottom: 0.65rem;
  inset-inline-start: 0.65rem;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.25rem 0.55rem;
  border-radius: 0.45rem;
  font-size: 0.7rem;
  color: #fff;
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(6px);
}

.sd-news-card__body {
  padding: 1rem 1.1rem 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}

.sd-news-card__body h3 {
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0;
  color: var(--sd-text) !important;
  line-height: 1.5;
}

.sd-news-card__body p {
  font-size: 0.82rem;
  color: var(--sd-text-muted);
  margin: 0;
  line-height: 1.7;
  flex: 1;
}

.sd-news-card__more {
  font-size: 0.82rem;
  color: var(--sd-gold);
}

/* Map / groups / quote restyle inside home */
body.sd-skin .sd-home-panel {
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: var(--sd-radius-2xl);
  padding: 1.5rem;
}

body.sd-skin .iran-map-section h2,
body.sd-skin .martyr-groups-header h2 {
  color: var(--sd-text) !important;
}

body.sd-skin .martyr-groups-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

@media (min-width: 640px) {
  body.sd-skin .martyr-groups-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  body.sd-skin .martyr-groups-grid { grid-template-columns: repeat(3, 1fr); }
}

body.sd-skin .martyr-group-card {
  padding: 1.25rem !important;
}

/* CTA membership */
.sd-cta-box {
  max-width: 56rem;
  margin: 0 auto;
  text-align: center;
  background: linear-gradient(135deg, color-mix(in srgb, var(--sd-green) 18%, transparent), color-mix(in srgb, var(--sd-gold) 10%, transparent));
  border: 1px solid color-mix(in srgb, var(--sd-green) 30%, transparent);
  border-radius: 1.75rem;
  padding: 2.5rem 1.5rem;
}

@media (min-width: 768px) {
  .sd-cta-box { padding: 3rem; }
}

.sd-cta-box > i {
  font-size: 2.5rem;
  color: var(--sd-green);
  margin-bottom: 1rem;
  display: inline-block;
}

.sd-cta-box h2 {
  font-size: clamp(1.4rem, 2.5vw, 1.9rem);
  font-weight: 800;
  color: var(--sd-text) !important;
  margin: 0 0 0.75rem;
}

.sd-cta-box p {
  color: var(--sd-text-muted);
  max-width: 32rem;
  margin: 0 auto 1.5rem;
}

.sd-cta-box__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
}

/* ========== Footer ========== */
body.sd-skin .sd-footer {
  background: var(--sd-footer);
  border-top: 1px solid var(--sd-footer-border);
  color: var(--sd-text);
  margin-top: 0;
}

body.sd-skin .sd-footer .sd-footer-grid {
  max-width: var(--sd-max);
  margin: 0 auto;
  padding: 3.5rem 1rem 2.5rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.25rem;
}

@media (min-width: 768px) {
  body.sd-skin .sd-footer .sd-footer-grid {
    grid-template-columns: repeat(2, 1fr);
    padding-inline: 1.5rem;
  }
}

@media (min-width: 1024px) {
  body.sd-skin .sd-footer .sd-footer-grid {
    grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  }
}

body.sd-skin .sd-footer h3,
body.sd-skin .sd-footer h4 {
  color: var(--sd-text) !important;
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0 0 1.1rem;
}

body.sd-skin .sd-footer p,
body.sd-skin .sd-footer li,
body.sd-skin .sd-footer a {
  color: var(--sd-text-muted);
  font-size: 0.875rem;
  line-height: 1.7;
}

body.sd-skin .sd-footer a:hover {
  color: var(--sd-gold-text);
}

body.sd-skin .sd-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

body.sd-skin .sd-footer-contact li {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
}

body.sd-skin .sd-footer-contact i {
  color: var(--sd-green);
  margin-top: 0.2rem;
}

body.sd-skin .sd-footer-bottom {
  border-top: 1px solid var(--sd-footer-border);
  padding: 1.1rem 1rem;
}

body.sd-skin .sd-footer-bottom .sd-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  justify-content: space-between;
  text-align: center;
}

@media (min-width: 768px) {
  body.sd-skin .sd-footer-bottom .sd-wrap {
    flex-direction: row;
    text-align: start;
  }
}

body.sd-skin .sd-footer-bottom p {
  margin: 0;
  font-size: 0.75rem;
  color: var(--sd-text-muted);
}

@media (max-width: 768px) {
  body.sd-skin .sd-footer {
    display: none;
  }
}

/* ========== Mobile bottom nav ========== */
.sd-bottom-nav {
  display: none;
}

@media (max-width: 768px) {
  .sd-bottom-nav {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 90;
    background: color-mix(in srgb, var(--sd-nav) 95%, transparent);
    backdrop-filter: blur(14px);
    border-top: 1px solid var(--sd-card-border);
    padding-bottom: env(safe-area-inset-bottom);
    justify-content: space-around;
  }

  body.sd-skin {
    padding-bottom: calc(4.25rem + env(safe-area-inset-bottom));
  }

  .sd-bottom-nav a {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    min-height: 3.5rem;
    padding: 0.5rem 0.25rem;
    text-decoration: none;
    color: var(--sd-text-muted);
    font-size: 0.62rem;
    font-weight: 600;
  }

  .sd-bottom-nav a i {
    font-size: 1.1rem;
  }

  .sd-bottom-nav a.is-active {
    color: var(--sd-gold-text);
  }

  .sd-bottom-nav a.is-active i {
    transform: scale(1.08);
  }
}

/* ========== Forms / inner pages soft restyle ========== */
body.sd-skin .nm-input,
body.sd-skin .nm-select,
body.sd-skin .nm-textarea,
body.sd-skin input[type="text"],
body.sd-skin input[type="email"],
body.sd-skin input[type="password"],
body.sd-skin input[type="tel"],
body.sd-skin input[type="search"],
body.sd-skin select,
body.sd-skin textarea {
  border-radius: 0.85rem !important;
  border-color: var(--sd-card-border) !important;
  background: var(--sd-section) !important;
  color: var(--sd-text) !important;
}

body.sd-skin .nm-input:focus,
body.sd-skin input:focus,
body.sd-skin select:focus,
body.sd-skin textarea:focus {
  border-color: var(--sd-green) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--sd-green) 18%, transparent) !important;
}

body.sd-skin h1,
body.sd-skin h2,
body.sd-skin .page-title,
body.sd-skin .nm-page-title {
  color: var(--sd-text) !important;
}

body.sd-skin .nm-pattern-bg,
body.sd-skin .navbar.nm-pattern-bg {
  background: transparent !important;
}

body.sd-skin .nm-pattern-bg::before {
  display: none !important;
}

/* Kill old homepage layout leftovers when on new home */
body.sd-home .homepage-layout,
body.sd-home .home-hero-slider,
body.sd-home .left_sidebar,
body.sd-home .sidebar-left {
  display: none !important;
}

body.sd-home .main-content > .container {
  max-width: none;
  padding: 0;
}

/* Empty states */
.sd-empty {
  text-align: center;
  color: var(--sd-text-muted);
  padding: 2rem 1rem;
  font-size: 0.95rem;
}

/* ========== Polish: particles, reveal, pattern ========== */
.sd-hero__particles {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
}

.sd-particle {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--sd-gold) 35%, transparent);
  animation: sd-pulse 3s ease-in-out infinite;
}

@keyframes sd-pulse {
  0%, 100% { opacity: 0.2; transform: scale(0.8); }
  50% { opacity: 0.9; transform: scale(1.2); }
}

.sd-section--pattern {
  isolation: isolate;
}

.sd-section--pattern::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: url(/dist/images/theme/pattern-bg.jpg);
  background-size: cover;
  opacity: 0.035;
}

html[data-theme="dark"] .sd-section--pattern::before {
  opacity: 0.055;
}

.sd-section--pattern > .sd-wrap {
  position: relative;
  z-index: 1;
}

.sd-reveal {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.45s ease, transform 0.45s ease;
}

.sd-reveal.is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .sd-reveal,
  .sd-particle,
  .sd-hero__scroll {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

.sd-bottom-nav {
  transition: transform 0.3s ease;
}

.sd-bottom-nav.is-hidden {
  transform: translateY(110%);
}

/* ========== Inner page band / chrome ========== */
body.sd-skin:not(.sd-home) .main-content > .container,
body.sd-skin:not(.sd-home) .main-column {
  max-width: var(--sd-max);
}

body.sd-skin .page-header,
body.sd-skin .search-results-header,
body.sd-skin .auth-page-header,
body.sd-skin .news-page .page-header {
  background: var(--sd-section-alt) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
  padding: 1.5rem 1.35rem !important;
  margin-bottom: 1.5rem !important;
  box-shadow: none !important;
}

body.sd-skin .search-title,
body.sd-skin .page-title,
body.sd-skin .auth-page-title {
  color: var(--sd-text) !important;
  font-weight: 800 !important;
}

body.sd-skin .results-count,
body.sd-skin .search-stats .results-count {
  display: inline-flex !important;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.85rem;
  border-radius: 0.75rem;
  background: var(--sd-green-soft) !important;
  color: var(--sd-green) !important;
  border: 1px solid color-mix(in srgb, var(--sd-green) 22%, transparent);
  font-weight: 600;
}

body.sd-skin .tag-filter,
body.sd-skin .view-btn {
  border-radius: 0.75rem !important;
  border: 1px solid var(--sd-card-border) !important;
  background: var(--sd-card) !important;
  color: var(--sd-text-2) !important;
  min-height: 2.4rem;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}

body.sd-skin .tag-filter:hover,
body.sd-skin .view-btn:hover {
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent) !important;
  color: var(--sd-green) !important;
}

body.sd-skin .tag-filter.active,
body.sd-skin .view-btn.active {
  background: color-mix(in srgb, var(--sd-green) 12%, transparent) !important;
  color: var(--sd-gold-text) !important;
  border-color: color-mix(in srgb, var(--sd-green) 35%, transparent) !important;
}

/* List martyr cards */
body.sd-skin .martyr-card-square {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
  overflow: hidden !important;
  box-shadow: none !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

body.sd-skin .martyr-card-square::before {
  display: none !important;
}

body.sd-skin .martyr-card-square:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--sd-shadow-lg) !important;
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent) !important;
}

body.sd-skin .martyr-card-square .martyr-image-container {
  height: 11rem !important;
  overflow: hidden;
  background: var(--sd-section);
}

body.sd-skin .martyr-card-square .martyr-image {
  opacity: 0.78;
  transition: opacity 0.45s, transform 0.45s !important;
}

body.sd-skin .martyr-card-square:hover .martyr-image {
  opacity: 1;
  transform: scale(1.05) !important;
}

body.sd-skin .martyr-card-square .martyr-name {
  color: var(--sd-text) !important;
  font-weight: 700 !important;
}

body.sd-skin .martyr-card-square:hover .martyr-name {
  color: var(--sd-green) !important;
}

body.sd-skin .martyr-card-square .detail-item {
  color: var(--sd-text-muted) !important;
  font-size: 0.8rem !important;
}

body.sd-skin .martyr-card-square .detail-item i {
  color: var(--sd-green) !important;
}

body.sd-skin .martyrs-grid {
  gap: 1.15rem !important;
}

/* Pagination */
body.sd-skin .pagination a,
body.sd-skin .pagination span,
body.sd-skin .page-link,
body.sd-skin .pagination-link {
  border-radius: 0.7rem !important;
  border: 1px solid var(--sd-card-border) !important;
  background: var(--sd-card) !important;
  color: var(--sd-text-2) !important;
  min-width: 2.4rem;
  min-height: 2.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.sd-skin .pagination a:hover,
body.sd-skin .page-link:hover {
  border-color: var(--sd-green) !important;
  color: var(--sd-green) !important;
}

body.sd-skin .pagination .active a,
body.sd-skin .pagination a.active,
body.sd-skin .page-link.active,
body.sd-skin .pagination-link.active {
  background: var(--sd-green) !important;
  border-color: var(--sd-green) !important;
  color: #fff !important;
}

/* News */
body.sd-skin .news-item,
body.sd-skin .news-card,
body.sd-skin article.news-item {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
  overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

body.sd-skin .news-item:hover,
body.sd-skin .news-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--sd-shadow);
  border-color: color-mix(in srgb, var(--sd-green) 40%, transparent) !important;
}

body.sd-skin .news-item h3 a,
body.sd-skin .news-item .news-title,
body.sd-skin .read-more {
  color: var(--sd-text) !important;
}

body.sd-skin .read-more {
  color: var(--sd-gold-text) !important;
  font-weight: 600;
}

body.sd-skin .news-item:hover h3 a {
  color: var(--sd-green) !important;
}

/* Martyr profile */
body.sd-skin .martyr-profile,
body.sd-skin .profile-hero,
body.sd-skin .shahid-hero,
body.sd-skin .martyr-header,
body.sd-skin .profile-main-card {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
}

body.sd-skin .martyr-photo img,
body.sd-skin .profile-image img,
body.sd-skin .shahid-image img {
  border-radius: 1rem;
  border: 3px solid color-mix(in srgb, var(--sd-gold) 55%, transparent);
}

body.sd-skin .info-badge,
body.sd-skin .martyr-meta-item,
body.sd-skin .badge {
  border-radius: 0.65rem !important;
}

body.sd-skin .tab-btn,
body.sd-skin .profile-tabs button,
body.sd-skin .martyr-tabs a {
  border-radius: 0.75rem !important;
  color: var(--sd-text-muted) !important;
}

body.sd-skin .tab-btn.active,
body.sd-skin .profile-tabs button.active,
body.sd-skin .martyr-tabs a.active {
  color: var(--sd-green) !important;
  background: color-mix(in srgb, var(--sd-green) 10%, transparent) !important;
}

/* Auth */
body.sd-skin .auth-forms-container,
body.sd-skin .auth-form-container,
body.sd-skin .auth-single-form {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
  box-shadow: var(--sd-shadow) !important;
  overflow: hidden;
}

body.sd-skin .auth-forms-container::before,
body.sd-skin .auth-page-header::before {
  display: none !important;
}

body.sd-skin .auth-tab {
  color: var(--sd-text-muted) !important;
  border-bottom: 2px solid transparent !important;
}

body.sd-skin .auth-tab.active {
  color: var(--sd-green) !important;
  border-bottom-color: var(--sd-green) !important;
  background: transparent !important;
}

body.sd-skin .auth-tab.active::after {
  display: none !important;
}

body.sd-skin .auth-submit-btn,
body.sd-skin .auth-form button[type="submit"] {
  background: var(--sd-green) !important;
  border: none !important;
  border-radius: 0.85rem !important;
  color: #fff !important;
  min-height: 2.85rem;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--sd-green) 28%, transparent);
}

body.sd-skin .auth-submit-btn:hover {
  background: var(--sd-green-hover) !important;
}

body.sd-skin .auth-features,
body.sd-skin .auth-feature-card,
body.sd-skin .feature-item {
  background: var(--sd-section) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-xl) !important;
}

/* About / contact */
body.sd-skin .about-section,
body.sd-skin .contact-section,
body.sd-skin .contact-info-card {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
  padding: 1.35rem !important;
}

body.sd-skin .contact-icon {
  width: 3rem;
  height: 3rem;
  border-radius: 0.85rem;
  background: var(--sd-green-soft) !important;
  color: var(--sd-green) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Advanced search / send content panels */
body.sd-skin .advanced-search-form,
body.sd-skin .search-form-card,
body.sd-skin .send-content-card,
body.sd-skin .form-section,
body.sd-skin .content-panel {
  background: var(--sd-card) !important;
  border: 1px solid var(--sd-card-border) !important;
  border-radius: var(--sd-radius-2xl) !important;
}

body.sd-skin .btn-primary,
body.sd-skin button.btn-primary,
body.sd-skin .search-submit-btn {
  background: var(--sd-green) !important;
  border-color: var(--sd-green) !important;
  border-radius: 0.85rem !important;
  color: #fff !important;
}

body.sd-skin .btn-primary:hover,
body.sd-skin .search-submit-btn:hover {
  background: var(--sd-green-hover) !important;
}

/* Hide decorative empty sidebars on inner pages for cleaner layout */
body.sd-skin:not(.sd-home) .sidebar-minimal {
  display: none !important;
}

body.sd-skin:not(.sd-home) .homepage-layout {
  display: block !important;
}

body.sd-skin:not(.sd-home) .main-column {
  width: 100% !important;
  max-width: var(--sd-max);
  margin-inline: auto;
}

/* Mobile footer strip */
.sd-mobile-footer {
  display: none;
}

@media (max-width: 768px) {
  .sd-mobile-footer {
    display: block;
    text-align: center;
    padding: 1.5rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));
    margin-bottom: 3.5rem;
    color: var(--sd-text-muted);
    font-size: 0.75rem;
    line-height: 1.7;
  }

  .sd-mobile-footer .sd-brand {
    justify-content: center;
    margin-bottom: 0.75rem;
  }

  .sd-mobile-footer__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem 1.1rem;
    margin: 0.65rem 0 0.85rem;
  }

  .sd-mobile-footer__links a {
    color: var(--sd-text-muted);
    text-decoration: none;
    font-size: 0.8rem;
  }

  .sd-mobile-footer__links a:hover {
    color: var(--sd-gold-text);
  }

  body.sd-skin .sd-scroll-top {
    bottom: 5.75rem;
    inset-inline-end: 1rem;
  }
}

/* Notification bell */
.sd-notif {
  position: relative;
}

.sd-notif__btn {
  position: relative;
}

.sd-notif__badge {
  position: absolute;
  top: -0.2rem;
  inset-inline-end: -0.2rem;
  min-width: 1rem;
  height: 1rem;
  padding: 0 0.2rem;
  border-radius: 999px;
  background: #ef4444;
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.sd-notif__panel {
  position: absolute;
  top: calc(100% + 0.5rem);
  inset-inline-end: 0;
  width: min(20rem, calc(100vw - 1.5rem));
  background: var(--sd-card);
  border: 1px solid var(--sd-card-border);
  border-radius: 0.85rem;
  box-shadow: var(--sd-shadow-lg);
  overflow: hidden;
  z-index: 80;
}

.sd-notif__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid var(--sd-card-border);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--sd-text);
}

.sd-notif__head-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.sd-notif__mark {
  border: none;
  background: transparent;
  color: var(--sd-green);
  font-size: 0.75rem;
  cursor: pointer;
  padding: 0;
}

.sd-notif__mark:hover {
  text-decoration: underline;
}

.sd-notif__close {
  border: none;
  background: transparent;
  color: var(--sd-text-muted);
  cursor: pointer;
  padding: 0.15rem;
}

.sd-notif__close:hover {
  color: var(--sd-text);
}

.sd-notif__list {
  max-height: 18rem;
  overflow-y: auto;
}

.sd-notif__empty {
  margin: 0;
  padding: 1.25rem 1rem;
  text-align: center;
  font-size: 0.8rem;
  color: var(--sd-text-muted);
}

.sd-notif__item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  width: 100%;
  padding: 0.75rem 1rem;
  text-decoration: none;
  color: inherit;
  text-align: start;
  border: none;
  background: transparent;
  transition: background 0.15s, opacity 0.15s;
}

.sd-notif__item.is-unread {
  background: color-mix(in srgb, var(--sd-green) 6%, transparent);
}

.sd-notif__item:hover {
  background: var(--sd-section);
}

.sd-notif__item.is-read {
  opacity: 0.65;
}

.sd-notif__icon {
  width: 2rem;
  height: 2rem;
  border-radius: 0.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 0.85rem;
}

.sd-notif__icon--anniversary {
  color: #f87171;
  background: rgba(239, 68, 68, 0.1);
}

.sd-notif__icon--birth {
  color: #f59e0b;
  background: rgba(245, 158, 11, 0.1);
}

.sd-notif__icon--news {
  color: #60a5fa;
  background: rgba(96, 165, 250, 0.12);
}

.sd-notif__icon--featured {
  color: #34d399;
  background: rgba(52, 211, 153, 0.12);
}

.sd-notif__body {
  flex: 1;
  min-width: 0;
}

.sd-notif__title {
  display: block;
  font-size: 0.78rem;
  color: var(--sd-text);
  line-height: 1.5;
}

.sd-notif__item.is-unread .sd-notif__title {
  font-weight: 700;
}

.sd-notif__meta {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.65rem;
  color: var(--sd-text-muted);
}

.sd-notif__dot {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: var(--sd-green);
  margin-top: 0.35rem;
  flex-shrink: 0;
}

@media (max-width: 640px) {
  .sd-notif__panel {
    position: fixed;
    top: 4.25rem;
    inset-inline: 0.75rem auto;
    inset-inline-end: 0.75rem;
    width: auto;
  }
}

/* Focus rings */
body.sd-skin a:focus-visible,
body.sd-skin button:focus-visible,
body.sd-skin input:focus-visible,
body.sd-skin select:focus-visible,
body.sd-skin textarea:focus-visible {
  outline: 2px solid var(--sd-green);
  outline-offset: 2px;
}
