:root {
  --night-bg: #0b1120;
  --night-bg-soft: #111827;
  --night-surface: #151f2f;
  --night-surface-2: #1d2738;
  --night-border: rgba(148, 163, 184, 0.22);
  --night-text: #f8fbff;
  --night-muted: #d7e2f0;
  --night-subtle: #c3d1e3;
  --night-accent: #38c695;
  --night-blue: #60a5fa;
  --night-red: #fb7185;
}

/* Light/dark switch */
.theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 5px 10px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}

.theme-toggle:hover,
.theme-toggle:focus-visible {
  color: #0f172a;
  border-color: rgba(56, 198, 149, 0.55);
  box-shadow: 0 10px 24px rgba(56, 198, 149, 0.22);
}

.theme-toggle-switch {
  position: relative;
  width: 38px;
  height: 22px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #e2e8f0;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.12);
}

.theme-toggle-switch span {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.25);
  transition: transform 0.25s ease, background-color 0.25s ease;
}

.theme-toggle[aria-pressed="true"],
html.theme-dark .theme-toggle {
  background: rgba(15, 23, 42, 0.95);
  color: var(--night-text);
  border-color: var(--night-border);
}

.theme-toggle[aria-pressed="true"] .theme-toggle-switch,
html.theme-dark .theme-toggle-switch {
  background: linear-gradient(135deg, #14532d, #0f766e);
  box-shadow: inset 0 0 0 1px rgba(187, 247, 208, 0.28);
}

.theme-toggle[aria-pressed="true"] .theme-toggle-switch span,
html.theme-dark .theme-toggle-switch span {
  transform: translateX(16px);
  background: #dcfce7;
}

.theme-toggle[aria-pressed="false"] .theme-toggle-label-dark,
.theme-toggle[aria-pressed="true"] .theme-toggle-label-light {
  color: #94a3b8;
}

@media (max-width: 575px) {
  .theme-toggle {
    gap: 6px;
    min-height: 34px;
    margin-right: 6px !important;
    padding: 4px 8px;
    font-size: 0.68rem;
  }

  .theme-toggle .theme-toggle-label-light {
    display: none;
  }

  .theme-toggle[aria-pressed="true"] .theme-toggle-label-light,
  html.theme-dark .theme-toggle .theme-toggle-label-light {
    display: inline;
  }

  .theme-toggle[aria-pressed="true"] .theme-toggle-label-dark,
  html.theme-dark .theme-toggle .theme-toggle-label-dark {
    display: none;
  }

  header .custom-cta-btn {
    margin-right: 6px !important;
  }

  .theme-toggle-switch {
    width: 34px;
    height: 20px;
  }

  .theme-toggle-switch span {
    width: 14px;
    height: 14px;
  }

  .theme-toggle[aria-pressed="true"] .theme-toggle-switch span,
  html.theme-dark .theme-toggle-switch span {
    transform: translateX(14px);
  }
}

/* Global dark palette */
html.theme-dark {
  color-scheme: dark;
  --bg-gradient: linear-gradient(135deg, #0b1120 0%, #111827 100%);
  --bg-body: #0b1120;
  --surface-color: #151f2f;
  --text-dark: #f8fafc;
  --text-muted: #b7c4d6;
  --card-border: rgba(148, 163, 184, 0.22);
  --card-shadow: 0 14px 40px rgba(0, 0, 0, 0.28);
  --card-hover-shadow: 0 24px 55px rgba(0, 0, 0, 0.38);
}

html.theme-dark,
html.theme-dark body {
  background: var(--night-bg) !important;
  color: var(--night-text) !important;
}

html.theme-dark body,
html.theme-dark p,
html.theme-dark li,
html.theme-dark label,
html.theme-dark span,
html.theme-dark .lead,
html.theme-dark .lead-text,
html.theme-dark .text-muted,
html.theme-dark .book-description,
html.theme-dark .event-address,
html.theme-dark .display-time,
html.theme-dark .date-badge,
html.theme-dark .page-subtitle,
html.theme-dark .edition-text,
html.theme-dark .newsletter-subtitle,
html.theme-dark .newsletter-content,
html.theme-dark .card-description,
html.theme-dark .history-text p,
html.theme-dark .stat-label,
html.theme-dark .timing-day,
html.theme-dark .detail-label,
html.theme-dark .meta-info {
  color: var(--night-muted) !important;
}

html.theme-dark h1,
html.theme-dark h2,
html.theme-dark h3,
html.theme-dark h4,
html.theme-dark h5,
html.theme-dark h6,
html.theme-dark .section-title,
html.theme-dark .section-title h2,
html.theme-dark .main-title,
html.theme-dark .book-title,
html.theme-dark .event-title,
html.theme-dark .display-date,
html.theme-dark .weekly-time,
html.theme-dark .channel-name,
html.theme-dark .video-title,
html.theme-dark .schedule-title,
html.theme-dark .newsletter-title,
html.theme-dark .card-title,
html.theme-dark .stat-number,
html.theme-dark .prayer-name,
html.theme-dark .prayer-type,
html.theme-dark .detail-value,
html.theme-dark .verse-reference,
html.theme-dark .auth-title,
html.theme-dark .pro-footer-title,
html.theme-dark .pro-footer-brand {
  color: var(--night-text) !important;
}

html.theme-dark a:not(.btn):not(.custom-cta-btn):not(.social-btn):not(.gallery-lightbox):not(.btn-map):not(.btn-read):not(.btn-read-book):not(.btn-download):not(.btn-subscribe) {
  color: #93c5fd;
}

html.theme-dark a:hover {
  color: var(--night-accent);
}

html.theme-dark .text-dark,
html.theme-dark .text-body,
html.theme-dark .text-secondary {
  color: var(--night-text) !important;
}

html.theme-dark .bg-light,
html.theme-dark .bg-gray-light,
html.theme-dark .bg-cement,
html.theme-dark .bg-cement-light,
html.theme-dark .bg-white,
html.theme-dark .bg-white-card {
  background: var(--night-bg-soft) !important;
  color: var(--night-text) !important;
}

html.theme-dark hr,
html.theme-dark .border,
html.theme-dark .border-top,
html.theme-dark .border-bottom,
html.theme-dark .card-footer-info,
html.theme-dark .section-header,
html.theme-dark .channel-logo-wrapper,
html.theme-dark .card-header-custom {
  border-color: var(--night-border) !important;
}

html.theme-dark ::selection {
  color: #052e2b;
  background: #a7f3d0;
}

/* Navbar */
/* html.theme-dark .custom-navbar,
html.theme-dark .custom-navbar.navbar-scrolled,
html.theme-dark header .custom-navbar,
html.theme-dark header .navbar.fixed-top {
  background: rgba(11, 17, 32, 0.96) !important;
  border-bottom: 1px solid var(--night-border) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.34) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
} */

/* Navbar */
html.theme-dark .custom-navbar,
html.theme-dark header .custom-navbar,
html.theme-dark header .navbar.fixed-top {
  background-color: transparent !important;
  border-bottom: 1px solid transparent !important;
  box-shadow: none !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html.theme-dark .custom-navbar.navbar-scrolled,
html.theme-dark header .custom-navbar.navbar-scrolled,
html.theme-dark header .navbar.fixed-top.navbar-scrolled {
 background: rgba(11, 17, 32, 0.96) !important;
  border-bottom: 1px solid var(--night-border) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.34) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}


html.theme-dark .custom-nav-link,
html.theme-dark .navbar-scrolled .custom-nav-link,
html.theme-dark #mainNavigation .nav-link {
  color: #e2e8f0 !important;
}

html.theme-dark .custom-nav-link:hover,
html.theme-dark .custom-nav-link:focus-visible {
  color: #fb7185 !important;
}

html.theme-dark .custom-nav-link::after {
  background-color: #fb7185;
}

html.theme-dark .navbar-toggler .mobile-icon,
html.theme-dark .mobile-icon,
html.theme-dark .navbar-scrolled .mobile-icon {
  background-color: var(--night-accent) !important;
}

@media (max-width: 1199px) {
  html.theme-dark #mainNavigation {
    background: rgba(11, 17, 32, 0.98) !important;
    border-top: 1px solid var(--night-border) !important;
    box-shadow: 0 18px 32px rgba(0, 0, 0, 0.38) !important;
  }

  html.theme-dark #mainNavigation .nav-link {
    border-bottom-color: var(--night-border) !important;
  }

  html.theme-dark #mainNavigation .nav-link:active {
    background: rgba(56, 198, 149, 0.12) !important;
    color: #a7f3d0 !important;
  }
}

/* Shared sections and cards */
html.theme-dark .about-section,
html.theme-dark .ministries-section,
html.theme-dark .social-section,
html.theme-dark .church-timing-section,
html.theme-dark .prayer-contact-section,
html.theme-dark .magazine-section,
html.theme-dark .history-wrapper,
html.theme-dark .prayer-book-section,
html.theme-dark .schedule-section,
html.theme-dark .media-library-section,
html.theme-dark .gallery-section,
html.theme-dark .offering-section
 {
  background: var(--night-bg) !important;
}

html.theme-dark .testimonials-section,
html.theme-dark .newsletter-section,
html.theme-dark .portrait-gallery-section,
html.theme-dark .today-word-section {
  background: var(--night-bg-soft) !important;
}

html.theme-dark .about-content-card,
html.theme-dark .ministry-card,
html.theme-dark .video-card,
html.theme-dark .social-card,
html.theme-dark .schedule-card,
html.theme-dark .contact-box,
html.theme-dark .contact-form-box,
html.theme-dark .single-testimonial,
html.theme-dark .magazine-card,
html.theme-dark .newsletter-card,
html.theme-dark .history-card,
html.theme-dark .stat-box,
html.theme-dark .portrait-card,
html.theme-dark .book-card,
html.theme-dark .premium-card,
html.theme-dark .weekly-card,
html.theme-dark .channel-card,
html.theme-dark .prayer-card,
html.theme-dark .verse-box,
html.theme-dark .card,
html.theme-dark .admin-card,
html.theme-dark .empty-state,
html.theme-dark .auth-form-wrapper,
html.theme-dark .offcanvas,
html.theme-dark .modal-content {
  background: var(--night-surface) !important;
  border-color: var(--night-border) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28) !important;
  color: var(--night-text) !important;
}

html.theme-dark .about-section .calling-quote,
html.theme-dark .timing-item,
html.theme-dark .time-badge,
html.theme-dark .contact-badge,
html.theme-dark .newsletter-date,
html.theme-dark .book-cover,
html.theme-dark .book-image-wrapper,
html.theme-dark .book-promo-section .milestone-icon,
html.theme-dark .prayer-message-box,
html.theme-dark .prayer-link,
html.theme-dark .cart-item,
html.theme-dark .input-group-text,
html.theme-dark .offcanvas-header,
html.theme-dark .btn-qty,
html.theme-dark .sub-title {
  background: var(--night-surface-2) !important;
  border-color: var(--night-border) !important;
  color: var(--night-text) !important;
}

html.theme-dark .about-section .calling-quote,
html.theme-dark .prayer-message-box {
  border-left-color: var(--night-blue) !important;
}

html.theme-dark .book-promo-section {
  background:
    linear-gradient(rgba(11, 17, 32, 0.92), rgba(11, 17, 32, 0.94)),
    url("https://hkstudio.b-cdn.net/photos/pdf/website%20book%20bg%20design%20copy.jpg") !important;
  background-size: cover !important;
  background-position: center !important;
}

html.theme-dark .app-promo-section {
  background: linear-gradient(135deg, #111827 0%, #312e81 54%, #164e63 100%) !important;
  border: 1px solid var(--night-border);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28) !important;
}

html.theme-dark .promo-bg-circle {
  background: linear-gradient(135deg, rgba(96, 165, 250, 0.22), rgba(56, 198, 149, 0.08)) !important;
}




html.theme-dark .gallery-card {
  background: var(--night-surface-2) !important;
  border-color: var(--night-border) !important;
}

html.theme-dark .divider-professional,
html.theme-dark .media-library-section .neat-line::before,
html.theme-dark .media-library-section .neat-line::after,
html.theme-dark .neat-line::before,
html.theme-dark .neat-line::after {
  background-color: rgba(148, 163, 184, 0.35) !important;
}

html.theme-dark .professional-divider,
html.theme-dark .divider-professional::after,
html.theme-dark .divider-circle,
html.theme-dark .section-divider,
html.theme-dark .neat-line .accent {
  box-shadow: 0 0 18px rgba(96, 165, 250, 0.28);
}

/* Forms */
html.theme-dark input,
html.theme-dark textarea,
html.theme-dark select,
html.theme-dark .form-control,
html.theme-dark .form-select {
  background-color: #0f172a !important;
  border-color: rgba(148, 163, 184, 0.34) !important;
  color: var(--night-text) !important;
}

html.theme-dark input::placeholder,
html.theme-dark textarea::placeholder,
html.theme-dark .form-control::placeholder {
  color: var(--night-subtle) !important;
}

html.theme-dark input:focus,
html.theme-dark textarea:focus,
html.theme-dark select:focus,
html.theme-dark .form-control:focus,
html.theme-dark .form-select:focus {
  background-color: #111827 !important;
  border-color: var(--night-blue) !important;
  box-shadow: 0 0 0 4px rgba(96, 165, 250, 0.16) !important;
}

html.theme-dark .form-floating > label {
  color: var(--night-subtle) !important;
}

html.theme-dark .form-floating > .form-control:focus ~ label,
html.theme-dark .form-floating > .form-control:not(:placeholder-shown) ~ label {
  color: #bfdbfe !important;
}

/* Tables and admin areas */
html.theme-dark .table,
html.theme-dark table {
  color: var(--night-text) !important;
  border-color: var(--night-border) !important;
}

html.theme-dark .table > :not(caption) > * > * {
  background-color: var(--night-surface) !important;
  border-color: var(--night-border) !important;
  color: var(--night-text) !important;
}

html.theme-dark .table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(148, 163, 184, 0.08) !important;
}

html.theme-dark .table-hover > tbody > tr:hover > * {
  background-color: rgba(96, 165, 250, 0.12) !important;
}

html.theme-dark .admin-navbar {
  background-color: #050914 !important;
  border-bottom: 1px solid var(--night-border);
}

html.theme-dark .admin-card-header {
  color: var(--night-text) !important;
  border-bottom-color: var(--night-border) !important;
}

html.theme-dark .prayer-link:hover {
  background-color: rgba(96, 165, 250, 0.14) !important;
  color: #bfdbfe !important;
}

html.theme-dark .subject-badge,
html.theme-dark .selected-badge {
  background-color: rgba(56, 198, 149, 0.18) !important;
  color: #bbf7d0 !important;
}

/* Page-specific details */
html.theme-dark .page-header-container {
  background: linear-gradient(135deg, #111827 0%, #312e81 100%) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.34) !important;
}

html.theme-dark .book-cover {
  background-color: #101827 !important;
}

html.theme-dark .selected-card {
  border-color: var(--night-accent) !important;
  box-shadow: 0 0 0 4px rgba(56, 198, 149, 0.18) !important;
}

html.theme-dark .floating-cart-btn {
  box-shadow: 0 14px 32px rgba(79, 70, 229, 0.48) !important;
}

html.theme-dark .btn-custom-outline,
html.theme-dark .gallery-filter li a,
html.theme-dark .filter-btn {
  background: var(--night-surface) !important;
  border-color: var(--night-border) !important;
  color: var(--night-muted) !important;
}

html.theme-dark .btn-custom-outline:hover,
html.theme-dark .gallery-filter li a:hover,
html.theme-dark .gallery-filter li a.active,
html.theme-dark .filter-btn:hover,
html.theme-dark .filter-btn.active {
  background: linear-gradient(90deg, #2563eb, #0d9488) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

html.theme-dark .btn-map {
  background-color: rgba(96, 165, 250, 0.14) !important;
  color: #bfdbfe !important;
  border-color: rgba(96, 165, 250, 0.32) !important;
}

html.theme-dark .btn-map:hover {
  background-color: var(--night-blue) !important;
  color: #0f172a !important;
}

html.theme-dark .premium-card.past-event {
  background: #121a2b !important;
  opacity: 0.78;
}

html.theme-dark .title-muted {
  background: linear-gradient(135deg, #cbd5e1, #94a3b8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

html.theme-dark .timing-time {
  background: rgba(96, 165, 250, 0.16) !important;
  color: #bfdbfe !important;
}

html.theme-dark .channel-logo-wrapper img,
html.theme-dark .bank-logo {
  filter: drop-shadow(0 3px 8px rgba(255, 255, 255, 0.08));
}

html.theme-dark .bank-qr {
  background-color: #ffffff !important;
  border-color: rgba(226, 232, 240, 0.8) !important;
}

html.theme-dark .bible-verse {
  color: #dbeafe !important;
}

html.theme-dark .auth-bg .text-light,
html.theme-dark .auth-brand-content,
html.theme-dark .auth-brand-content h1 {
  color: #ffffff !important;
}

html.theme-dark .auth-overlay {
  background: linear-gradient(135deg, rgba(2, 6, 23, 0.94) 0%, rgba(30, 64, 175, 0.76) 100%) !important;
}

html.theme-dark .img-holder,
html.theme-dark .form-body,
html.theme-dark .form-holder,
html.theme-dark .form-content,
html.theme-dark .form-items {
  background: var(--night-bg) !important;
  color: var(--night-text) !important;
}

html.theme-dark .form-items h3 {
  color: var(--night-text) !important;
}

html.theme-dark .ibtn,
html.theme-dark .btn-login,
html.theme-dark .btn-update,
html.theme-dark .btn-submit {
  color: #ffffff !important;
}

html.theme-dark .flatpickr-calendar {
  background: var(--night-surface) !important;
  border-color: var(--night-border) !important;
  color: var(--night-text) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .flatpickr-day,
html.theme-dark .flatpickr-weekday,
html.theme-dark .flatpickr-current-month,
html.theme-dark .numInputWrapper span,
html.theme-dark .flatpickr-monthDropdown-months {
  color: var(--night-text) !important;
}

/* Footer */
html.theme-dark #footer-top,
html.theme-dark footer {
  background: #080d19 !important;
  border-top: 1px solid var(--night-border) !important;
}

html.theme-dark .pro-footer-link,
html.theme-dark .single-widget ul li a {
  color: var(--night-muted) !important;
}

html.theme-dark .pro-footer-link:hover,
html.theme-dark .single-widget ul li a:hover {
  color: #fb7185 !important;
}

html.theme-dark .pro-copyright-text {
  color: var(--night-subtle) !important;
}

/* Final dark-mode readability pass */
html.theme-dark strong,
html.theme-dark b,
html.theme-dark .fw-bold,
html.theme-dark .fw-bolder,
html.theme-dark .font-weight-bold {
  color: var(--night-text) !important;
}

html.theme-dark small,
html.theme-dark .small,
html.theme-dark .small-text,
html.theme-dark figcaption,
html.theme-dark caption,
html.theme-dark .text-muted,
html.theme-dark .lead-text,
html.theme-dark .lead,
html.theme-dark .subtitle,
html.theme-dark .section-subtitle,
html.theme-dark .title-english,
html.theme-dark .page-subtitle,
html.theme-dark .book-description,
html.theme-dark .video-subtitle,
html.theme-dark .event-address,
html.theme-dark .edition-text,
html.theme-dark .newsletter-subtitle,
html.theme-dark .newsletter-content,
html.theme-dark .card-description,
html.theme-dark .history-wrapper .history-text p,
html.theme-dark .ministry-desc,
html.theme-dark .gallery-section .lead-text,
html.theme-dark .schedule-section .lead-text,
html.theme-dark .media-library-section .lead-text {
  color: var(--night-muted) !important;
}

html.theme-dark .church-timing-section .schedule-card {
  background: #152033 !important;
  border-left-color: #60a5fa !important;
}

html.theme-dark .church-timing-section .schedule-title,
html.theme-dark .church-timing-section .schedule-title strong {
  color: #ffffff !important;
}

html.theme-dark .church-timing-section .schedule-title svg {
  color: #7dd3fc !important;
}

html.theme-dark .church-timing-section .time-slot,
html.theme-dark .church-timing-section .time-slot span {
  color: #e2edfb !important;
}

html.theme-dark .church-timing-section .time-slot strong {
  color: #ffffff !important;
  font-weight: 800 !important;
}

html.theme-dark .church-timing-section .contact-details h4,
html.theme-dark .prayer-contact-section .contact-info-item h4,
html.theme-dark .detail-label,
html.theme-dark .date-badge,
html.theme-dark .meta-info,
html.theme-dark .timing-day {
  color: #dbeafe !important;
}

html.theme-dark .church-timing-section .contact-details p,
html.theme-dark .prayer-contact-section .contact-info-item p,
html.theme-dark .detail-value,
html.theme-dark .timing-time,
html.theme-dark .weekly-time,
html.theme-dark .display-date,
html.theme-dark .display-time {
  color: #f8fbff !important;
}

html.theme-dark .timing-item,
html.theme-dark .time-badge,
html.theme-dark .newsletter-date,
html.theme-dark .contact-badge {
  color: #f8fbff !important;
  background: #233047 !important;
}

html.theme-dark .social-name,
html.theme-dark .store-text,
html.theme-dark .store-text span,
html.theme-dark .large-text,
html.theme-dark .magazine-info h3,
html.theme-dark .book-content-wrapper h3,
html.theme-dark .milestone-content h4 {
  color: #f8fbff !important;
}

html.theme-dark .magazine-section .lead-text,
html.theme-dark .newsletter-section .lead-text,
html.theme-dark .prayer-book-section .lead-text,
html.theme-dark .book-promo-section .milestone-content p,
html.theme-dark .book-content-wrapper p,
html.theme-dark .app-promo-section p,
html.theme-dark .app-promo-section .text-muted {
  color: #d7e2f0 !important;
}

html.theme-dark .app-promo-section h2,
html.theme-dark .app-promo-section h2 span,
html.theme-dark .app-promo-section h2[style],
html.theme-dark .app-promo-section h2 span[style] {
  color: #f5e8ff !important;
}

html.theme-dark .book-price,
html.theme-dark .price,
html.theme-dark .newsletter-content strong,
html.theme-dark .history-wrapper .text-highlight-blue,
html.theme-dark .history-wrapper .text-highlight-red,
html.theme-dark .about-section .highlight-text {
  color: #93c5fd !important;
}

html.theme-dark .btn-custom-outline,
html.theme-dark .gallery-filter li a,
html.theme-dark .filter-btn {
  color: #e2edfb !important;
}

html.theme-dark .form-label,
html.theme-dark .form-floating > label,
html.theme-dark label,
html.theme-dark .form-items label,
html.theme-dark .wizard-form-field label {
  color: #dbeafe !important;
}

html.theme-dark input,
html.theme-dark textarea,
html.theme-dark select,
html.theme-dark .form-control,
html.theme-dark .form-select {
  color: #ffffff !important;
}

html.theme-dark input::placeholder,
html.theme-dark textarea::placeholder,
html.theme-dark .form-control::placeholder {
  color: #c6d3e4 !important;
  opacity: 1 !important;
}

html.theme-dark .prayer-message-box p,
html.theme-dark .single-testimonial blockquote,
html.theme-dark .bible-verse,
html.theme-dark .prayer-card p,
html.theme-dark .empty-state p {
  color: #e7effb !important;
}

html.theme-dark .pro-footer-link,
html.theme-dark .single-widget ul li a,
html.theme-dark .pro-copyright-text {
  color: #d7e2f0 !important;
}

html.theme-dark .badge,
html.theme-dark .selected-badge,
html.theme-dark .subject-badge {
  color: #ffffff !important;
}



/* =========================================
   CCC RECAP - DARK MODE
   Dark mode selector: html.theme-dark
========================================= */

html.theme-dark .recap-wrapper {
    background:
        radial-gradient(circle at top left, rgba(214, 165, 68, 0.18), transparent 36%),
        radial-gradient(circle at bottom right, rgba(120, 76, 20, 0.16), transparent 38%),
        linear-gradient(180deg, #080808 0%, #111111 45%, #050505 100%);
}

html.theme-dark .recap-container {
    color: #ffffff;
}

html.theme-dark .recap-header {
    color: #ffffff;
}

html.theme-dark .recap-label {
    background: rgba(214, 165, 68, 0.13);
    color: #f3c766;
    border: 1px solid rgba(214, 165, 68, 0.24);
    box-shadow: 0 8px 24px rgba(214, 165, 68, 0.08);
}

html.theme-dark .recap-subtitle {
    color: #cfcfcf;
}

html.theme-dark .recap-logo {
    filter:
        drop-shadow(0 0 10px rgba(214, 165, 68, 0.28))
        drop-shadow(0 0 22px rgba(214, 165, 68, 0.14));
}

/* CARD DARK MODE */
html.theme-dark .recap-card {
    background: #151515;
    border: 1px solid rgba(214, 165, 68, 0.2);
    box-shadow:
        0 24px 55px rgba(0, 0, 0, 0.6),
        0 8px 20px rgba(0, 0, 0, 0.35),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

html.theme-dark .recap-card img {
    opacity: 0.68;
    filter: saturate(0.9) contrast(0.95) brightness(0.72);
}

/* faded center overlay */
html.theme-dark .recap-card::before {
    background:
        radial-gradient(
            circle at center,
            rgba(18, 18, 18, 0.9) 0%,
            rgba(18, 18, 18, 0.78) 30%,
            rgba(0, 0, 0, 0.55) 62%,
            rgba(0, 0, 0, 0.9) 100%
        );
}

html.theme-dark .recap-card::after {
    border: 1px solid rgba(214, 165, 68, 0.24);
    box-shadow:
        inset 0 0 35px rgba(214, 165, 68, 0.08),
        0 0 0 1px rgba(255, 255, 255, 0.03);
}

/* title inside card */
html.theme-dark .recap-overlay-title {
    color: #ffffff;
    text-shadow:
        0 3px 10px rgba(0, 0, 0, 0.9),
        0 0 18px rgba(214, 165, 68, 0.2);
}

/* click here button */
html.theme-dark .recap-click-text {
    background: linear-gradient(135deg, #9b681b, #e2b95a);
    color: #111111;
    box-shadow:
        0 12px 28px rgba(214, 165, 68, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.45);
}



/* MODAL DARK MODE */
html.theme-dark .recap-modal {
    background: rgba(0, 0, 0, 0.98);
}

html.theme-dark .recap-modal-header {
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.92),
        rgba(0, 0, 0, 0)
    );
}

html.theme-dark .recap-modal-title {
    color: #ffffff;
    text-shadow: 0 3px 14px rgba(0, 0, 0, 0.7);
}

html.theme-dark .recap-close-btn {
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.12);
}

html.theme-dark .recap-close-btn:hover {
    background: rgba(214, 165, 68, 0.24);
    color: #f3c766;
}