/**
 * Zad Consulting - Comprehensive Multi-Theme Controller (Dark / Light)
 * Palette: Emerald #00D2A0, Cyan #00C6FF, Royal Blue #1E5DF7
 */

/* =========================================================================
   1. ROOT THEME VARIABLES
   ========================================================================= */

:root {
  --zad-brand-emerald: #00D2A0;
  --zad-brand-cyan: #00C6FF;
  --zad-brand-royal: #1E5DF7;
  --zad-brand-gradient: linear-gradient(135deg, #00D2A0 0%, #00C6FF 50%, #1E5DF7 100%);
  --zad-brand-font-head: 'Tajawal', sans-serif;
  --zad-brand-font-body: 'IBM Plex Sans Arabic', sans-serif;
  --zad-theme-transition: background-color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
                          color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
                          border-color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
                          box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* DARK MODE (Default or selected) */
[data-theme="dark"] {
  --zad-bg-base: #070A12;
  --zad-bg-surface: #0C1222;
  --zad-card-glass: rgba(14, 22, 40, 0.78);
  --zad-glass-border: rgba(255, 255, 255, 0.08);
  --zad-text-main: #F8FAFC;
  --zad-text-muted: #94A3B8;
  --zad-header-bg: rgba(7, 10, 18, 0.85);
  --zad-footer-bg: #070A12;
}

/* LIGHT MODE */
[data-theme="light"] {
  --zad-bg-base: #F8FAFC;
  --zad-bg-surface: #FFFFFF;
  --zad-card-glass: rgba(255, 255, 255, 0.92);
  --zad-glass-border: rgba(0, 0, 0, 0.08);
  --zad-text-main: #0F172A;
  --zad-text-muted: #64748B;
  --zad-header-bg: rgba(255, 255, 255, 0.90);
  --zad-footer-bg: #F1F5F9;
}

html, body {
  transition: var(--zad-theme-transition);
}


/* =========================================================================
   2. THEME SWITCHER TOGGLE BUTTONS
   ========================================================================= */

.zad-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 999px;
  font-family: var(--zad-brand-font-head);
  font-size: 13.5px;
  font-weight: 700;
  cursor: pointer;
  border: 1px solid transparent;
  transition: all 0.25s ease;
  user-select: none;
  background: transparent;
  line-height: 1;
}

/* Dark Mode Button Appearance */
[data-theme="dark"] .zad-theme-toggle {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.14);
  color: #F8FAFC;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}
[data-theme="dark"] .zad-theme-toggle:hover {
  background: rgba(0, 210, 160, 0.16);
  border-color: var(--zad-brand-emerald);
  color: #FFFFFF;
  transform: translateY(-2px);
  box-shadow: 0 4px 18px rgba(0, 210, 160, 0.3);
}

/* Light Mode Button Appearance */
[data-theme="light"] .zad-theme-toggle {
  background: #FFFFFF;
  border-color: rgba(0, 0, 0, 0.12);
  color: #0A2A4D;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}
[data-theme="light"] .zad-theme-toggle:hover {
  background: rgba(0, 210, 160, 0.12);
  border-color: var(--zad-brand-emerald);
  color: #0A2A4D;
  transform: translateY(-2px);
  box-shadow: 0 4px 18px rgba(0, 210, 160, 0.25);
}

/* Icon Swap Logic */
.zad-toggle-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.35s ease;
}

/* In Dark mode: show Sun icon to switch to Light */
[data-theme="dark"] .zad-sun-icon {
  display: inline-flex;
  color: #FBBF24;
}
[data-theme="dark"] .zad-moon-icon {
  display: none;
}

/* In Light mode: show Moon icon to switch to Dark */
[data-theme="light"] .zad-sun-icon {
  display: none;
}
[data-theme="light"] .zad-moon-icon {
  display: inline-flex;
  color: #1E5DF7;
}

/* Header placement */
.zad-header-toggle {
  margin-left: 14px;
}

/* Floating Switcher (Fixed Bottom-Left) */
.zad-floating-toggle {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 99998;
  padding: 10px 18px;
  border-radius: 999px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}

@media (max-width: 768px) {
  .zad-floating-toggle {
    bottom: 18px;
    left: 18px;
    padding: 8px 14px;
    font-size: 12.5px;
  }
  .zad-floating-toggle .zad-toggle-text {
    display: none;
  }
}


/* =========================================================================
   3. HEADER - DYNAMIC THEMING
   ========================================================================= */

header.elementor-location-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
  width: 100% !important;
  transition: all 0.3s ease !important;
}

/* --- DARK HEADER --- */
[data-theme="dark"] .elementor-location-header .elementor-element-46116457 {
  background: rgba(7, 10, 18, 0.85) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5) !important;
  padding: 12px 30px !important;
}
[data-theme="dark"] .elementor-location-header .elementor-element-717253e6 {
  background: rgba(7, 10, 18, 0.92) !important;
  backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}
[data-theme="dark"] .elementor-location-header .elementor-widget-image img {
  content: url("https://zadagency.com/wp-content/uploads/2025/11/zad-logo-white.webp") !important;
  max-height: 48px !important;
  width: auto !important;
  object-fit: contain !important;
}
[data-theme="dark"] .elementor-location-header .elementor-nav-menu--main .elementor-item {
  color: #E2E8F0 !important;
  font-family: var(--zad-brand-font-head) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 10px 16px !important;
  border-radius: 8px !important;
}
[data-theme="dark"] .elementor-location-header .elementor-nav-menu--main .elementor-item:hover {
  color: var(--zad-brand-emerald) !important;
  background: rgba(0, 210, 160, 0.08) !important;
  text-shadow: 0 0 12px rgba(0, 210, 160, 0.4) !important;
}
[data-theme="dark"] .elementor-location-header .sub-menu.elementor-nav-menu--dropdown {
  background: rgba(10, 16, 30, 0.96) !important;
  backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(0, 210, 160, 0.25) !important;
  border-radius: 14px !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7) !important;
  padding: 10px !important;
}
[data-theme="dark"] .elementor-location-header .sub-menu .elementor-sub-item {
  color: #CBD5E1 !important;
  font-family: var(--zad-brand-font-head) !important;
  font-size: 14px !important;
}
[data-theme="dark"] .elementor-location-header .sub-menu .elementor-sub-item:hover {
  background: rgba(0, 210, 160, 0.12) !important;
  color: #FFFFFF !important;
}

/* --- LIGHT HEADER --- */
[data-theme="light"] .elementor-location-header .elementor-element-46116457 {
  background: rgba(255, 255, 255, 0.90) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.05) !important;
  padding: 12px 30px !important;
}
[data-theme="light"] .elementor-location-header .elementor-element-717253e6 {
  background: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}
[data-theme="light"] .elementor-location-header .elementor-widget-image img {
  content: url("https://zadagency.com/wp-content/uploads/2025/11/zad-logo.webp") !important;
  max-height: 48px !important;
  width: auto !important;
  object-fit: contain !important;
}
[data-theme="light"] .elementor-location-header .elementor-nav-menu--main .elementor-item {
  color: #0A2A4D !important;
  font-family: var(--zad-brand-font-head) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 10px 16px !important;
  border-radius: 8px !important;
}
[data-theme="light"] .elementor-location-header .elementor-nav-menu--main .elementor-item:hover {
  color: #00A880 !important;
  background: rgba(0, 210, 160, 0.08) !important;
}
[data-theme="light"] .elementor-location-header .sub-menu.elementor-nav-menu--dropdown {
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12) !important;
  border-top: 2px solid var(--zad-brand-emerald) !important;
  padding: 10px !important;
}
[data-theme="light"] .elementor-location-header .sub-menu .elementor-sub-item {
  color: #1E293B !important;
  font-family: var(--zad-brand-font-head) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
[data-theme="light"] .elementor-location-header .sub-menu .elementor-sub-item:hover {
  background: rgba(0, 210, 160, 0.08) !important;
  color: #0A2A4D !important;
}

/* Header Button (Always High-Converting Zad Gradient) */
.elementor-location-header .elementor-element-6c1baea .elementor-button {
  background: var(--zad-brand-gradient) !important;
  color: #070A12 !important;
  font-family: var(--zad-brand-font-head) !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  padding: 12px 24px !important;
  border-radius: 12px !important;
  border: none !important;
  box-shadow: 0 4px 20px rgba(0, 210, 160, 0.35) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}


/* =========================================================================
   4. FOOTER - DYNAMIC THEMING
   ========================================================================= */

/* --- DARK FOOTER --- */
[data-theme="dark"] footer.elementor-location-footer {
  background-color: var(--zad-brand-dark) !important;
  background-image: 
    radial-gradient(at 15% 20%, rgba(0, 210, 160, 0.07) 0px, transparent 50%),
    radial-gradient(at 85% 80%, rgba(30, 93, 247, 0.09) 0px, transparent 50%) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: #F8FAFC !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-widget-image img {
  content: url("https://zadagency.com/wp-content/uploads/2025/11/zad-logo-white.webp") !important;
  max-height: 52px !important;
  width: auto !important;
  object-fit: contain !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-element-37016021 .elementor-heading-title {
  color: #94A3B8 !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-element-ae7c7a1 .elementor-heading-title,
[data-theme="dark"] .elementor-location-footer .elementor-element-39b511e6 .elementor-heading-title {
  color: #FFFFFF !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-social-icon {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-social-icon svg {
  fill: #94A3B8 !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-element-f099c07 .elementor-heading-title,
[data-theme="dark"] .elementor-location-footer .elementor-element-f099c07 .elementor-heading-title a,
[data-theme="dark"] .elementor-location-footer .elementor-element-4d2b001b .elementor-icon-list-item {
  color: #CBD5E1 !important;
}
[data-theme="dark"] .elementor-location-footer .elementor-element-232ee080 .elementor-heading-title {
  color: #64748B !important;
}

/* --- LIGHT FOOTER --- */
[data-theme="light"] footer.elementor-location-footer {
  background-color: #F8FAFC !important;
  background-image: 
    radial-gradient(at 15% 20%, rgba(0, 210, 160, 0.05) 0px, transparent 50%),
    radial-gradient(at 85% 80%, rgba(30, 93, 247, 0.05) 0px, transparent 50%) !important;
  border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 -4px 30px rgba(0, 0, 0, 0.04) !important;
  color: #0F172A !important;
}
[data-theme="light"] .elementor-location-footer .elementor-widget-image img {
  content: url("https://zadagency.com/wp-content/uploads/2025/11/zad-logo.webp") !important;
  max-height: 52px !important;
  width: auto !important;
  object-fit: contain !important;
}
[data-theme="light"] .elementor-location-footer .elementor-element-37016021 .elementor-heading-title {
  color: #64748B !important;
}
[data-theme="light"] .elementor-location-footer .elementor-element-ae7c7a1 .elementor-heading-title,
[data-theme="light"] .elementor-location-footer .elementor-element-39b511e6 .elementor-heading-title {
  color: #0A2A4D !important;
}
[data-theme="light"] .elementor-location-footer .elementor-social-icon {
  background: #FFFFFF !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
}
[data-theme="light"] .elementor-location-footer .elementor-social-icon svg {
  fill: #64748B !important;
}
[data-theme="light"] .elementor-location-footer .elementor-social-icon:hover {
  background: rgba(0, 210, 160, 0.15) !important;
  border-color: var(--zad-brand-emerald) !important;
}
[data-theme="light"] .elementor-location-footer .elementor-social-icon:hover svg {
  fill: #00A880 !important;
}
[data-theme="light"] .elementor-location-footer .elementor-element-f099c07 .elementor-heading-title,
[data-theme="light"] .elementor-location-footer .elementor-element-f099c07 .elementor-heading-title a,
[data-theme="light"] .elementor-location-footer .elementor-element-4d2b001b .elementor-icon-list-item {
  color: #334155 !important;
}
[data-theme="light"] .elementor-location-footer .elementor-element-f099c07 .elementor-heading-title a:hover,
[data-theme="light"] .elementor-location-footer .elementor-element-4d2b001b .elementor-icon-list-item:hover {
  color: #00A880 !important;
}
[data-theme="light"] .elementor-location-footer .elementor-element-232ee080 .elementor-heading-title {
  color: #94A3B8 !important;
}


/* =========================================================================
   5. SINGLE POST TEMPLATE - LIGHT MODE OVERRIDES
   ========================================================================= */

[data-theme="light"] body.single-post {
  background-color: #F8FAFC !important;
  background-image: 
    radial-gradient(at 10% 20%, rgba(0, 210, 160, 0.05) 0px, transparent 50%),
    radial-gradient(at 90% 10%, rgba(30, 93, 247, 0.06) 0px, transparent 50%) !important;
  color: #1E293B !important;
}

[data-theme="light"] .zad-post-h1 {
  color: #0F172A !important;
}

[data-theme="light"] .zad-breadcrumbs {
  color: #64748B !important;
}
[data-theme="light"] .zad-breadcrumbs a {
  color: #475569 !important;
}

[data-theme="light"] .zad-takeaways {
  background: #FFFFFF !important;
  border-color: rgba(0, 210, 160, 0.35) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06) !important;
}
[data-theme="light"] .zad-takeaways-title {
  color: #0F172A !important;
}
[data-theme="light"] .zad-takeaways-list li {
  color: #334155 !important;
}

[data-theme="light"] .zad-article-body {
  color: #334155 !important;
}
[data-theme="light"] .zad-article-body h1,
[data-theme="light"] .zad-article-body h2,
[data-theme="light"] .zad-article-body h3,
[data-theme="light"] .zad-article-body h4,
[data-theme="light"] .zad-article-body h5,
[data-theme="light"] .zad-article-body h6,
[data-theme="light"] #zad-content-root h1,
[data-theme="light"] #zad-content-root h2,
[data-theme="light"] #zad-content-root h3,
[data-theme="light"] #zad-content-root h4,
[data-theme="light"] #zad-content-root h5,
[data-theme="light"] #zad-content-root h6 {
  color: #0F172A !important;
}
[data-theme="light"] .zad-article-body h2 {
  border-bottom-color: rgba(0, 0, 0, 0.08) !important;
}
[data-theme="light"] .zad-article-body p,
[data-theme="light"] #zad-content-root p {
  color: #334155 !important;
}
[data-theme="light"] .zad-article-body li,
[data-theme="light"] #zad-content-root li {
  color: #334155 !important;
}
[data-theme="light"] .zad-article-body strong,
[data-theme="light"] .zad-article-body b,
[data-theme="light"] #zad-content-root strong,
[data-theme="light"] #zad-content-root b {
  color: #0F172A !important;
}
[data-theme="light"] .zad-article-body blockquote,
[data-theme="light"] #zad-content-root blockquote {
  background: #F1F5F9 !important;
  color: #1E293B !important;
  border-top-color: #E2E8F0 !important;
  border-bottom-color: #E2E8F0 !important;
  border-left-color: #E2E8F0 !important;
  border-right-color: var(--zad-brand-emerald) !important;
}
[data-theme="light"] .zad-article-body blockquote p,
[data-theme="light"] #zad-content-root blockquote p {
  color: #1E293B !important;
}

[data-theme="light"] .zad-sidebar-card {
  background: #FFFFFF !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
}
[data-theme="light"] .zad-sidebar-head span {
  color: #0F172A !important;
}
[data-theme="light"] .zad-toc-item a {
  color: #475569 !important;
}
[data-theme="light"] .zad-toc-item.active a {
  color: #00A880 !important;
  font-weight: 700 !important;
}

[data-theme="light"] .zad-card-post {
  background: #FFFFFF !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.05) !important;
}
[data-theme="light"] .zad-card-title {
  color: #0F172A !important;
}
[data-theme="light"] .zad-card-excerpt {
  color: #64748B !important;
}
[data-theme="light"] .zad-all-posts-h2 {
  color: #0F172A !important;
}
[data-theme="light"] .zad-search-input {
  background: #FFFFFF !important;
  border-color: #CBD5E1 !important;
  color: #0F172A !important;
}


/* =========================================================================
   6. RELIGIOUS TOURISM LANDING PAGE - LIGHT MODE OVERRIDES
   ========================================================================= */

[data-theme="light"] .zad-tourism-page {
  background-color: #F8FAFC !important;
  background-image: 
    radial-gradient(at 10% 15%, rgba(0, 210, 160, 0.05) 0px, transparent 45%),
    radial-gradient(at 90% 20%, rgba(30, 93, 247, 0.06) 0px, transparent 50%) !important;
  color: #1E293B !important;
}

[data-theme="light"] .zad-hero-title {
  color: #0F172A !important;
}
[data-theme="light"] .zad-hero-desc {
  color: #475569 !important;
}

[data-theme="light"] .zad-quick-nav-inner {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
}
[data-theme="light"] .zad-nav-item {
  color: #475569 !important;
}
[data-theme="light"] .zad-nav-item:hover {
  color: #00A880 !important;
  background: rgba(0, 210, 160, 0.08) !important;
}

[data-theme="light"] .zad-stats-bar {
  background: #FFFFFF !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06) !important;
}
[data-theme="light"] .zad-stat-num {
  color: #0F172A !important;
}
[data-theme="light"] .zad-stat-label {
  color: #64748B !important;
}

[data-theme="light"] .zad-section-title {
  color: #0F172A !important;
}
[data-theme="light"] .zad-section-subtitle {
  color: #64748B !important;
}

[data-theme="light"] .zad-ps-card,
[data-theme="light"] .zad-pillar-card,
[data-theme="light"] .zad-timeline-card,
[data-theme="light"] .zad-table-wrapper,
[data-theme="light"] .zad-calc-card,
[data-theme="light"] .zad-faq-item,
[data-theme="light"] .zad-form-box,
[data-theme="light"] .zad-branch-card {
  background: #FFFFFF !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.06) !important;
  color: #1E293B !important;
}

[data-theme="light"] .zad-ps-title,
[data-theme="light"] .zad-pillar-title,
[data-theme="light"] .zad-step-title,
[data-theme="light"] .zad-calc-inputs h3,
[data-theme="light"] .zad-faq-question,
[data-theme="light"] .zad-form-info h3,
[data-theme="light"] .zad-branch-title {
  color: #0F172A !important;
}

[data-theme="light"] .zad-ps-list li,
[data-theme="light"] .zad-pillar-desc,
[data-theme="light"] .zad-step-desc,
[data-theme="light"] .zad-calc-inputs p,
[data-theme="light"] .zad-faq-answer,
[data-theme="light"] .zad-form-info p,
[data-theme="light"] .zad-fp-item {
  color: #475569 !important;
}

[data-theme="light"] .zad-compare-table th {
  background: #F8FAFC !important;
  color: #0F172A !important;
}
[data-theme="light"] .zad-compare-table td {
  border-bottom-color: rgba(0, 0, 0, 0.06) !important;
  color: #334155 !important;
}
[data-theme="light"] .zad-compare-table th.highlight,
[data-theme="light"] .zad-compare-table td.highlight {
  background: rgba(0, 210, 160, 0.06) !important;
  color: #0F172A !important;
}

[data-theme="light"] .zad-calc-results {
  background: #F8FAFC !important;
  border-color: #E2E8F0 !important;
}
[data-theme="light"] .zad-res-label {
  color: #64748B !important;
}
[data-theme="light"] .zad-res-num {
  color: #0F172A !important;
}

[data-theme="light"] .zad-input-field,
[data-theme="light"] .zad-select-field {
  background: #F8FAFC !important;
  border-color: #CBD5E1 !important;
  color: #0F172A !important;
}
[data-theme="light"] .zad-input-label {
  color: #334155 !important;
}
[data-theme="light"] .zad-select-field option {
  background: #FFFFFF !important;
  color: #0F172A !important;
}
