/* ========================================
   BAMDAD CLOUD - WHMCS Custom Theme
   Glass Morphism + Dark/Light Mode  
   ابربامداد - قالب سفارشی
   ======================================== */

/* ===== FONTS ===== */
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 100; src: url('./woff2/DoranFaNum-Thin.woff2') format('woff2'), url('./woff/DoranFaNum-Thin.woff') format('woff'); }
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 300; src: url('./woff2/DoranFaNum-Light.woff2') format('woff2'), url('./woff/DoranFaNum-Light.woff') format('woff'); }
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 400; src: url('./woff2/DoranFaNum-Regular.woff2') format('woff2'), url('./woff/DoranFaNum-Regular.woff') format('woff'); }
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 500; src: url('./woff2/DoranFaNum-Medium.woff2') format('woff2'), url('./woff/DoranFaNum-Medium.woff') format('woff'); }
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 700; src: url('./woff2/DoranFaNum-Bold.woff2') format('woff2'), url('./woff/DoranFaNum-Bold.woff') format('woff'); }
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 800; src: url('./woff2/DoranFaNum-ExtraBold.woff2') format('woff2'), url('./woff/DoranFaNum-ExtraBold.woff') format('woff'); }
@font-face { font-family: 'Doran'; font-style: normal; font-weight: 900; src: url('./woff2/DoranFaNum-Black.woff2') format('woff2'), url('./woff/DoranFaNum-Black.woff') format('woff'); }

@font-face {
  font-family: 'Lahzeh Variable';
  src: url('./lahzeh/Lahzeh-FamilyVF.woff2') format('woff2-variations'),
       url('./lahzeh/Lahzeh-FamilyVF.woff') format('woff-variations');
  font-weight: 100 900; font-style: normal; font-display: swap;
  font-variation-settings: 'wght' var(--font-weight, 400);
}
@font-face {
  font-family: 'Lahzeh Variable';
  src: url('./lahzeh/Lahzeh-FamilyVF.woff2') format('woff2'),
       url('./lahzeh/Lahzeh-FamilyVF.woff') format('woff');
  font-weight: 100 900; font-style: normal; font-display: swap;
}

/* ===== WHMCS VARIABLE OVERRIDES ===== */
:root {
  --white: #fff;
  --neutral-50: #f0fdf4; --neutral-100: #dcfce7; --neutral-200: #bbf7d0;
  --neutral-300: #86efac; --neutral-400: #4ade80; --neutral-500: #22c55e;
  --neutral-600: #16a34a; --neutral-700: #15803d; --neutral-800: #166534;
  --neutral-900: #14532d; --neutral-950: #052e16;

  --primary-50: #ecfdf5; --primary-100: #d1fae5; --primary-200: #a7f3d0;
  --primary-300: #6ee7b7; --primary-400: #34d399; --primary-500: #10b981;
  --primary-600: #059669; --primary-700: #047857; --primary-800: #065f46;
  --primary-900: #064e3b; --primary-950: #022c22;

  --primary: #059669; --primary-lifted: #047857; --primary-accented: #065f46;
  --secondary: #64748b; --secondary-lifted: #475569; --secondary-accented: #334155;
  --success: #10b981; --success-lifted: #059669; --success-accented: #047857;
  --info: #06b6d4; --info-lifted: #0891b2; --info-accented: #0e7490;
  --notice: #8b5cf6; --notice-lifted: #7c3aed; --notice-accented: #6d28d9;
  --warning: #f59e0b; --warning-lifted: #d97706; --warning-accented: #b45309;
  --error: #ef4444; --error-lifted: #dc2626; --error-accented: #b91c1c;

  --text-inverted: var(--white); --text-muted: #94a3b8; --text-lifted: #64748b;
  --text-accented: #475569; --text: #1e293b;
  --border-muted: rgba(0,0,0,0.06); --border: rgba(0,0,0,0.08);
  --border-lifted: rgba(0,0,0,0.12); --border-accented: rgba(0,0,0,0.18);
  --bg: #f6faf8; --bg-muted: #f0fdf4; --bg-lifted: #ecfdf5; --bg-accented: #d1fae5;
  --bg-inverted: #020a07;

  --rounding-sm: 0.5rem; --rounding-md: 0.75rem; --rounding-lg: 1rem;
  --text-xs: 0.625rem; --text-sm: 0.75rem; --text-md: 0.875rem; --text-lg: 1rem;
  --letter-spacing: 0em; --disabled-opacity: 25%;
}

/* ===== BAMDAD DESIGN SYSTEM VARIABLES ===== */
:root {
  --bd-bg-body: #f6faf8; --bd-text-body: #1e293b;
  --bd-glass-bg: rgba(255,255,255,0.7); --bd-glass-border: rgba(0,0,0,0.08);
  --bd-glass-card-bg: rgba(255,255,255,0.65); --bd-glass-card-border: rgba(0,0,0,0.06);
  --bd-glass-card-hover-bg: rgba(255,255,255,0.95); --bd-glass-card-hover-border: rgba(16,185,129,0.3);
  --bd-glass-card-shadow: 0 20px 40px -12px rgba(16,185,129,0.08), 0 4px 16px rgba(0,0,0,0.04);
  --bd-glow-inner-bg: rgba(255,255,255,0.9); --bd-glow-inner-border: rgba(0,0,0,0.06);
  --bd-grid-line: rgba(16,185,129,0.06);
  --bd-aurora-opacity: 0.35;
  --bd-nav-scroll-bg: rgba(255,255,255,0.85); --bd-nav-scroll-shadow: rgba(0,0,0,0.05);
  --bd-mobile-menu-bg: rgba(255,255,255,0.97);
  --bd-scrollbar-track: #f6faf8; --bd-scrollbar-thumb: rgba(16,185,129,0.25);
}

body.dark-mode, html.dark-mode {
  --bd-bg-body: #020a07; --bd-text-body: #e2e8f0;
  --bd-glass-bg: rgba(255,255,255,0.03); --bd-glass-border: rgba(255,255,255,0.06);
  --bd-glass-card-bg: rgba(255,255,255,0.02); --bd-glass-card-border: rgba(255,255,255,0.05);
  --bd-glass-card-hover-bg: rgba(255,255,255,0.05); --bd-glass-card-hover-border: rgba(52,211,153,0.2);
  --bd-glass-card-shadow: 0 20px 40px -12px rgba(16,185,129,0.15), 0 0 0 1px rgba(52,211,153,0.1);
  --bd-glow-inner-bg: rgba(5,15,12,0.8); --bd-glow-inner-border: rgba(255,255,255,0.04);
  --bd-grid-line: rgba(16,185,129,0.03);
  --bd-aurora-opacity: 1;
  --bd-nav-scroll-bg: rgba(2,10,7,0.85); --bd-nav-scroll-shadow: rgba(16,185,129,0.05);
  --bd-mobile-menu-bg: rgba(3,26,20,0.97);
  --bd-scrollbar-track: #020a07; --bd-scrollbar-thumb: rgba(16,185,129,0.3);
  --bg: #020a07; --bg-muted: #031a14; --bg-lifted: #052e16; --bg-accented: #064e3b;
  --text: #e2e8f0; --text-accented: #cbd5e1; --text-lifted: #94a3b8; --text-muted: #64748b;
  --border-muted: rgba(255,255,255,0.04); --border: rgba(255,255,255,0.06);
  --border-lifted: rgba(255,255,255,0.1); --border-accented: rgba(255,255,255,0.15);
}

/* ===== KEYFRAMES ===== */
@keyframes slide-up { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
@keyframes aurora-1 {
  0%, 100% { transform: translate(0,0) scale(1); }
  25% { transform: translate(30px,-50px) scale(1.1); }
  50% { transform: translate(-20px,20px) scale(0.9); }
  75% { transform: translate(50px,30px) scale(1.05); }
}
@keyframes aurora-2 {
  0%, 100% { transform: translate(0,0) scale(1); }
  25% { transform: translate(-40px,30px) scale(0.95); }
  50% { transform: translate(30px,-40px) scale(1.1); }
  75% { transform: translate(-20px,-20px) scale(1); }
}
@keyframes aurora-3 {
  0%, 100% { transform: translate(0,0) scale(1.05); }
  25% { transform: translate(20px,40px) scale(1); }
  50% { transform: translate(-50px,-10px) scale(1.1); }
  75% { transform: translate(10px,-30px) scale(0.95); }
}
@keyframes gradient-shift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
@keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-15px); } }
@keyframes pulse-glow { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } }
@keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } }

/* Scroll animation opt-in classes */
.scroll-animate { opacity: 0; transform: translateY(30px); }
.animate-slide-up { animation: slide-up 0.6s ease forwards; }

/* ===== RESET & BASE ===== */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; direction: rtl !important; scrollbar-gutter: stable; }

body {
  font-family: 'Lahzeh Variable', 'Doran', system-ui, sans-serif !important;
  background: var(--bd-bg-body) !important;
  color: var(--bd-text-body) !important;
  -moz-font-feature-settings: "ss01";
  -webkit-font-feature-settings: "ss01";
  font-feature-settings: "ss01";
  transition: background-color 0.3s ease, color 0.3s ease;
  overflow-x: hidden;
  min-height: 100vh;
  direction: rtl !important;
  position: relative;
}

/* ===== GLOBAL BACKGROUND EFFECTS ===== */
/* Grid pattern overlay - visible in both modes */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image:
    linear-gradient(var(--bd-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--bd-grid-line) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
  z-index: 0;
  opacity: 0.6;
  transition: opacity 0.3s ease;
}
body.dark-mode::before { opacity: 1; }

/* Noise texture overlay - visible in both modes */
body::after {
  content: '';
  position: fixed;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 0;
  opacity: 0.5;
  transition: opacity 0.3s ease;
}
body.dark-mode::after { opacity: 1; }

/* Aurora orbs - solid bg color + blur creates the glow (matches HTML template) */
.aurora-orb {
  position: fixed;
  border-radius: 50%;
  filter: blur(100px);
  pointer-events: none;
  opacity: var(--bd-aurora-opacity);
  transition: opacity 0.5s ease;
  z-index: 0;
}

/* Floating particles */
.floating-particle {
  position: fixed;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  opacity: 0;
  transition: opacity 0.5s ease;
}
body.dark-mode .floating-particle { opacity: 1; }

/* Ensure main content layers above background effects */
#header, #footer, .master-breadcrumb,
.btn-return-to-admin, .invoice-container { position: relative; z-index: 1; }
/* #main-body must NOT have z-index set — it would create a stacking context
   that traps .modal (z-index:1050) inside, while .modal-backdrop (z-index:1040)
   is appended to <body> at root level, causing the backdrop to cover the modal
   and block all clicks. */
#main-body { position: relative; }
.modal-backdrop {
  z-index: 1040 !important;
  background-color: rgba(0,0,0,0.6) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}
body.dark-mode .modal-backdrop {
  background-color: rgba(0,0,0,0.75) !important;
}
.modal { z-index: 1050 !important; pointer-events: auto !important; }
.modal .modal-dialog { pointer-events: none; }
.modal .modal-content { pointer-events: auto; }
.modal-open #header { z-index: 1020 !important; }

p, button, a, li, input, select, textarea, label, span, th, td, .btn {
  font-family: 'Lahzeh Variable', 'Doran', system-ui, sans-serif !important;
  -moz-font-feature-settings: "ss01";
  -webkit-font-feature-settings: "ss01";
  font-feature-settings: "ss01";
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: 'Doran', system-ui, sans-serif !important;
  font-weight: 800 !important;
}
h4, h5, h6, .h4, .h5, .h6 { font-weight: 700 !important; }

/* ===== UTILITY CLASSES ===== */
.gradient-text {
  background: linear-gradient(135deg, #34d399, #10b981, #059669, #34d399);
  background-size: 300% 300%;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text; animation: gradient-shift 6s ease infinite;
}

.glass {
  background: var(--bd-glass-bg) !important;
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--bd-glass-border) !important;
  transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.glass-card {
  background: var(--bd-glass-card-bg) !important;
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 1rem; transition: all 0.5s cubic-bezier(0.4,0,0.2,1);
}
.glass-card:hover {
  background: var(--bd-glass-card-hover-bg) !important;
  border-color: var(--bd-glass-card-hover-border) !important;
  box-shadow: var(--bd-glass-card-shadow);
}

.aurora-orb {
  position: absolute; border-radius: 50%; filter: blur(100px);
  opacity: var(--bd-aurora-opacity); pointer-events: none; z-index: 0;
}

.grid-bg {
  background-image: linear-gradient(var(--bd-grid-line) 1px, transparent 1px),
                    linear-gradient(90deg, var(--bd-grid-line) 1px, transparent 1px);
  background-size: 80px 80px; pointer-events: none;
}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bd-scrollbar-track); }
::-webkit-scrollbar-thumb { background: var(--bd-scrollbar-thumb); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(16,185,129,0.4); }

/* ==========================================
   HEADER / NAVBAR
   ========================================== */
#header {
  position: fixed !important; top: 0; left: 0; right: 0; z-index: 1030;
  background: transparent !important; border: none !important; box-shadow: none !important;
  transition: all 0.5s ease;
  pointer-events: none; /* Let clicks pass through to content below */
}
#header .bamdad-nav-glass,
#header .bamdad-nav-glass * {
  pointer-events: auto; /* Re-enable clicks only on the actual navbar */
}
.topbar { display: none !important; }

.bamdad-nav {
  max-width: 1200px; margin: 0 auto;
  padding: 0 1rem;
}
.bamdad-nav-glass {
  background: var(--bd-glass-bg); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--bd-glass-border);
  border-radius: 1rem; padding: 0.6rem 1.5rem; margin-top: 1rem;
  transition: all 0.5s ease;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
}
.bamdad-nav-glass.nav-scrolled {
  background: var(--bd-nav-scroll-bg); box-shadow: 0 4px 20px var(--bd-nav-scroll-shadow);
  margin-top: 0; border-radius: 0 0 1rem 1rem;
}
.bamdad-nav-glass .logo-link { display: flex; align-items: center; flex-shrink: 0; }
.bamdad-nav-glass .logo-link img { height: 28px; }

.bamdad-nav-glass .nav-links { display: flex; align-items: center; gap: 0.25rem; flex-grow: 1; justify-content: center; }
.bamdad-nav-glass .nav-links a, .bamdad-nav-glass .nav-links .dropdown > a {
  color: var(--bd-text-body) !important; font-size: 0.82rem; font-weight: 500;
  padding: 0.45rem 0.85rem !important; border-radius: 0.75rem;
  transition: all 0.3s ease; opacity: 0.7; text-decoration: none; white-space: nowrap;
}
.bamdad-nav-glass .nav-links a:hover, .bamdad-nav-glass .nav-links .dropdown > a:hover { opacity: 1; background: rgba(16,185,129,0.08); }

.bamdad-nav-glass .nav-actions { display: flex; align-items: center; gap: 0.5rem; flex-shrink: 0; }

/* Theme toggle */
#themeToggle {
  width: 38px; height: 38px; display: flex; align-items: center; justify-content: center;
  border-radius: 0.75rem; background: transparent; border: none; cursor: pointer;
  color: var(--bd-text-body); opacity: 0.7; transition: all 0.3s ease; font-size: 1rem;
}
#themeToggle:hover { opacity: 1; background: rgba(16,185,129,0.08); }
body:not(.dark-mode) #themeToggle .fa-sun { display: none; }
body.dark-mode #themeToggle .fa-moon { display: none; }

/* Cart */
.nav-cart-link {
  width: 38px; height: 38px; display: flex; align-items: center; justify-content: center;
  border-radius: 0.75rem; color: var(--bd-text-body); opacity: 0.7; transition: all 0.3s ease;
  position: relative; text-decoration: none !important; font-size: 1rem;
}
.nav-cart-link:hover { opacity: 1; background: rgba(16,185,129,0.08); }
.nav-cart-link .badge, .nav-cart-count {
  position: absolute; top: 2px; right: 2px; min-width: 16px; height: 16px;
  display: flex; align-items: center; justify-content: center;
  background: #059669 !important; color: white !important;
  font-size: 0.6rem; font-weight: 700; border-radius: 9999px; padding: 0 4px;
}

/* CTA button */
.nav-cta-btn {
  display: inline-flex; align-items: center; gap: 0.5rem;
  padding: 0.5rem 1.25rem; background: linear-gradient(135deg, #059669, #10b981);
  color: white !important; font-size: 0.8rem; font-weight: 600;
  border-radius: 0.75rem; text-decoration: none !important;
  transition: all 0.3s ease; white-space: nowrap;
  box-shadow: 0 4px 15px rgba(16,185,129,0.25);
}
.nav-cta-btn:hover { background: linear-gradient(135deg, #10b981, #34d399); box-shadow: 0 8px 25px rgba(16,185,129,0.35); transform: translateY(-1px); color: white !important; }

/* Mobile menu toggle */
.bamdad-menu-toggle {
  display: none; width: 38px; height: 38px; align-items: center; justify-content: center;
  border-radius: 0.75rem; background: transparent; border: none; cursor: pointer;
  color: var(--bd-text-body); opacity: 0.7; font-size: 1.1rem;
}
@media (max-width: 991px) { .bamdad-menu-toggle { display: flex; } .bamdad-nav-glass .nav-links { display: none; } }

/* Dropdown menus */
.bamdad-nav-glass .dropdown-menu, .navbar .dropdown-menu, .dropdown-menu {
  background: rgba(255,255,255,0.85) !important;
  backdrop-filter: blur(40px) saturate(180%); -webkit-backdrop-filter: blur(40px) saturate(180%);
  border: 1px solid var(--bd-glass-border) !important;
  border-radius: 0.75rem !important; box-shadow: 0 20px 40px rgba(0,0,0,0.1) !important;
  padding: 0.5rem !important; margin-top: 0.5rem !important;
}
body.dark-mode .bamdad-nav-glass .dropdown-menu,
body.dark-mode .navbar .dropdown-menu,
body.dark-mode .dropdown-menu {
  background: rgba(5,25,18,0.88) !important;
  backdrop-filter: blur(40px) saturate(180%); -webkit-backdrop-filter: blur(40px) saturate(180%);
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5), 0 0 0 1px rgba(52,211,153,0.08) !important;
}
.bamdad-nav-glass .dropdown-menu a, .navbar .dropdown-menu a, .dropdown-menu .dropdown-item {
  color: var(--bd-text-body) !important; border-radius: 0.5rem !important;
  padding: 0.5rem 0.75rem !important; font-size: 0.8rem; transition: all 0.2s ease;
}
.bamdad-nav-glass .dropdown-menu a:hover, .navbar .dropdown-menu a:hover, .dropdown-menu .dropdown-item:hover {
  background: rgba(16,185,129,0.1) !important; color: #059669 !important;
}

/* Old navbar elements hidden */
.navbar.navbar-default, .main-navbar-wrapper { display: none !important; }

/* Mobile menu panel */
.bamdad-mobile-overlay {
  position: fixed; inset: 0; z-index: 9998; background: rgba(0,0,0,0.5);
  backdrop-filter: blur(4px); display: none; opacity: 0; transition: opacity 0.3s ease;
}
.bamdad-mobile-overlay.active { display: block; opacity: 1; }

.bamdad-mobile-menu {
  position: fixed; top: 0; right: 0; width: 300px; max-width: 85vw; height: 100vh;
  z-index: 9999; background: var(--bd-mobile-menu-bg); backdrop-filter: blur(20px);
  border-left: 1px solid var(--bd-glass-border); padding: 1.5rem;
  transform: translateX(100%); transition: transform 0.3s ease; overflow-y: auto;
}
.bamdad-mobile-menu.active { transform: translateX(0); }
.bamdad-mobile-menu .mobile-close {
  position: absolute; top: 1rem; left: 1rem; width: 38px; height: 38px;
  display: flex; align-items: center; justify-content: center;
  background: transparent; border: none; cursor: pointer;
  color: var(--bd-text-body); font-size: 1.1rem; border-radius: 0.75rem;
}
.bamdad-mobile-menu .mobile-close:hover { background: rgba(16,185,129,0.08); }
.bamdad-mobile-menu .mobile-nav-links { margin-top: 3rem; display: flex; flex-direction: column; gap: 0.25rem; }
.bamdad-mobile-menu .mobile-nav-links a {
  display: flex; align-items: center; gap: 0.75rem;
  padding: 0.75rem 1rem; color: var(--bd-text-body) !important;
  font-size: 0.88rem; font-weight: 500; border-radius: 0.75rem;
  text-decoration: none; transition: all 0.2s ease;
}
.bamdad-mobile-menu .mobile-nav-links a:hover { background: rgba(16,185,129,0.08); }

/* ==========================================
   BREADCRUMB
   ========================================== */
.master-breadcrumb {
  background: transparent !important; padding-top: 6rem !important; padding-bottom: 0.5rem;
  border: none !important; margin: 0 !important;
}
.breadcrumb { background: transparent !important; padding: 0 !important; margin: 0; font-size: 0.8rem; }
.breadcrumb-item a { color: #059669; text-decoration: none; }
.breadcrumb-item a:hover { color: #10b981; }
.breadcrumb-item.active { color: var(--bd-text-body); opacity: 0.5; }
.breadcrumb-item + .breadcrumb-item::before { content: "›" !important; color: var(--bd-text-body); opacity: 0.3; float: right; padding-left: 0.5rem; padding-right: 0; }

/* ==========================================
   MAIN BODY
   ========================================== */
#main-body { padding-top: 1rem; padding-bottom: 3rem; min-height: 50vh; position: relative; }
.container-fluid { max-width: 1200px; }

/* (Aurora orbs are rendered as HTML elements in header.tpl — no body::before/::after aurora needed) */

/* ==========================================
   CARDS (Bootstrap override)
   ========================================== */
.card, .panel {
  background: var(--bd-glass-card-bg) !important; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 1rem !important; box-shadow: none !important;
  transition: all 0.4s cubic-bezier(0.4,0,0.2,1); overflow: hidden;
  color: var(--bd-text-body) !important;
}
.card:hover {
  border-color: var(--bd-glass-card-hover-border) !important;
  box-shadow: var(--bd-glass-card-shadow) !important;
}
.card-header, .panel-heading {
  background: transparent !important;
  border-bottom: 1px solid var(--bd-glass-card-border) !important;
  padding: 1rem 1.25rem; color: var(--bd-text-body) !important;
}
.card-header .card-title, .card-title, .panel-title { color: var(--bd-text-body) !important; font-size: 0.95rem; font-weight: 700; }
.card-body, .panel-body { padding: 1.25rem; color: var(--bd-text-body) !important; }
.card-footer, .panel-footer {
  background: transparent !important;
  border-top: 1px solid var(--bd-glass-card-border) !important;
  padding: 0.75rem 1.25rem; color: var(--bd-text-body) !important;
}

/* Card accents (RTL = border-right) */
.card-accent-teal { border-right: 3px solid #10b981 !important; }
.card-accent-pomegranate { border-right: 3px solid #ef4444 !important; }
.card-accent-sun-flower { border-right: 3px solid #f59e0b !important; }
.card-accent-asbestos { border-right: 3px solid #64748b !important; }
.card-accent-green { border-right: 3px solid #10b981 !important; }
.card-accent-midnight-blue { border-right: 3px solid #6366f1 !important; }
.card-accent-blue { border-right: 3px solid #3b82f6 !important; }
.card-accent-red { border-right: 3px solid #ef4444 !important; }
.card-accent-gold { border-right: 3px solid #f59e0b !important; }

/* ==========================================
   SIDEBAR
   ========================================== */
.sidebar .card-sidebar, .sidebar .card {
  background: var(--bd-glass-card-bg) !important; backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important; border-radius: 1rem !important;
}
.sidebar .card-header { background: transparent !important; border-bottom: 1px solid var(--bd-glass-card-border) !important; }
.sidebar .card-title { font-size: 0.85rem; font-weight: 700; color: var(--bd-text-body) !important; }
.sidebar .list-group-item {
  background: transparent !important; border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important; font-size: 0.85rem; padding: 0.65rem 1rem; transition: all 0.3s ease;
}
.sidebar .list-group-item:hover, .sidebar .list-group-item.active {
  background: rgba(16,185,129,0.08) !important; color: #059669 !important;
}
.sidebar .list-group-item.active { border-right: 3px solid #10b981 !important; font-weight: 600; }
.sidebar select.form-control { padding: 0.5rem 0.75rem; font-size: 0.82rem; }

/* ==========================================
   BUTTONS
   ========================================== */
.btn {
  border-radius: 0.75rem !important; font-weight: 600; font-size: 0.85rem;
  transition: all 0.3s ease; border: none !important;
}
.btn-primary, .btn-primary:focus, .btn-primary:active {
  background: linear-gradient(135deg, #059669, #10b981) !important;
  color: white !important; box-shadow: 0 4px 15px rgba(16,185,129,0.25);
}
.btn-primary:hover { background: linear-gradient(135deg, #10b981, #34d399) !important; box-shadow: 0 8px 25px rgba(16,185,129,0.35); transform: translateY(-1px); }

.btn-success, .btn-success:focus { background: linear-gradient(135deg, #047857, #059669) !important; color: white !important; box-shadow: 0 4px 15px rgba(16,185,129,0.2); }
.btn-danger, .btn-danger:focus { background: linear-gradient(135deg, #ef4444, #dc2626) !important; color: white !important; }
.btn-info, .btn-info:focus { background: linear-gradient(135deg, #06b6d4, #0891b2) !important; color: white !important; }
.btn-warning, .btn-warning:focus { background: linear-gradient(135deg, #f59e0b, #d97706) !important; color: white !important; }

.btn-default, .btn-outline-primary, .btn-outline-secondary, .btn-light, .btn-secondary {
  background: var(--bd-glass-card-bg) !important;
  border: 1px solid var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important; backdrop-filter: blur(8px);
}
.btn-default:hover, .btn-outline-primary:hover, .btn-outline-secondary:hover, .btn-light:hover, .btn-secondary:hover {
  background: var(--bd-glass-card-hover-bg) !important; border-color: #34d399 !important; color: #059669 !important;
}
.btn-outline-primary { color: #059669 !important; border-color: #34d399 !important; }

.btn-link { color: #059669 !important; text-decoration: none; }
.btn-link:hover { color: #10b981 !important; }

/* ==========================================
   FORM CONTROLS
   ========================================== */
.form-control, .form-select, select.form-control, .custom-select {
  background: var(--bd-glass-card-bg) !important; backdrop-filter: blur(8px);
  border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 0.75rem !important; color: var(--bd-text-body) !important;
  font-size: 0.85rem; transition: all 0.3s ease;
}
.form-control:focus, .form-select:focus, select.form-control:focus, .custom-select:focus {
  border-color: #10b981 !important; box-shadow: 0 0 0 3px rgba(16,185,129,0.1) !important; outline: none;
}
.form-control::placeholder { color: var(--bd-text-body); opacity: 0.35; }

.input-group-text {
  background: var(--bd-glass-card-bg) !important; border: 1px solid var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important; opacity: 0.5; border-radius: 0.75rem !important;
}
.input-group .form-control { border-radius: 0.75rem !important; }
.input-group .input-group-prepend .input-group-text { border-radius: 0 0.75rem 0.75rem 0 !important; border-left: none !important; }
.input-group .input-group-append .input-group-text, .input-group .input-group-append .btn { border-radius: 0.75rem 0 0 0.75rem !important; }

label, .form-control-label, .control-label { font-size: 0.82rem; font-weight: 600; color: var(--bd-text-body); opacity: 0.8; margin-bottom: 0.4rem; }

.custom-control-input:checked ~ .custom-control-label::before { background-color: #059669; border-color: #059669; }

/* ==========================================
   TABLES (DataTables)
   ========================================== */
.table { color: var(--bd-text-body) !important; border-collapse: separate; border-spacing: 0; }
.table thead th {
  background: rgba(16,185,129,0.05) !important; border: none !important;
  color: var(--bd-text-body) !important; font-size: 0.78rem; font-weight: 700;
  padding: 0.75rem 1rem; text-align: right; white-space: nowrap;
}
.table thead th:first-child { border-radius: 0 0.75rem 0.75rem 0; }
.table thead th:last-child { border-radius: 0.75rem 0 0 0.75rem; }
.table tbody td {
  border-top: 1px solid var(--bd-glass-card-border) !important;
  padding: 0.8rem 1rem; font-size: 0.83rem; vertical-align: middle; transition: background 0.2s ease;
}
.table tbody tr:hover td { background: rgba(16,185,129,0.04) !important; }
.table-striped tbody tr:nth-of-type(odd) { background: rgba(16,185,129,0.02); }

/* Status labels */
.label, .badge {
  display: inline-flex; align-items: center; padding: 0.25rem 0.75rem;
  font-size: 0.72rem; font-weight: 600; border-radius: 9999px; white-space: nowrap;
}
.status-active, .label-success, .badge-success { background: rgba(16,185,129,0.1) !important; color: #059669 !important; }
.status-paid { background: rgba(16,185,129,0.1) !important; color: #059669 !important; }
.status-pending, .status-unpaid, .label-warning, .badge-warning { background: rgba(245,158,11,0.1) !important; color: #d97706 !important; }
.status-suspended, .status-overdue, .status-cancelled, .label-danger, .badge-danger { background: rgba(239,68,68,0.1) !important; color: #dc2626 !important; }
.status-terminated { background: rgba(100,116,139,0.1) !important; color: #64748b !important; }
.label-default, .badge-secondary { background: rgba(100,116,139,0.1) !important; color: #64748b !important; }
.label-info, .badge-info { background: rgba(6,182,212,0.1) !important; color: #0891b2 !important; }
.label-primary, .badge-primary { background: rgba(16,185,129,0.1) !important; color: #059669 !important; }

/* DataTables */
.dataTables_wrapper .dataTables_paginate .paginate_button {
  border: none !important; border-radius: 0.5rem !important; margin: 0 2px;
  font-size: 0.8rem; color: var(--bd-text-body) !important; transition: all 0.2s ease;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: linear-gradient(135deg, #059669, #10b981) !important;
  color: white !important; border: none !important; box-shadow: 0 4px 12px rgba(16,185,129,0.25);
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover { background: rgba(16,185,129,0.1) !important; color: #059669 !important; }
.dataTables_wrapper .dataTables_info { font-size: 0.78rem; opacity: 0.6; color: var(--bd-text-body); }
.dataTables_wrapper .dataTables_filter input { border-radius: 0.75rem !important; }
.dataTables_wrapper .dataTables_length select { border-radius: 0.5rem !important; }

/* ==========================================
   TILES (Client Area Home)
   ========================================== */
.tiles .tile {
  background: var(--bd-glass-card-bg) !important; backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 1rem !important; padding: 1.5rem; text-align: center;
  color: var(--bd-text-body) !important; transition: all 0.4s cubic-bezier(0.4,0,0.2,1);
  display: flex; flex-direction: column; align-items: center; gap: 0.5rem; text-decoration: none; margin: 0.5rem;
}
.tiles .tile:hover {
  background: var(--bd-glass-card-hover-bg) !important; border-color: var(--bd-glass-card-hover-border) !important;
  box-shadow: var(--bd-glass-card-shadow) !important; transform: translateY(-4px);
}
.tiles .tile i { font-size: 1.75rem; color: #10b981; margin-bottom: 0.25rem; }
.tiles .tile .stat { font-size: 2rem; font-weight: 900; color: var(--bd-text-body); }
.tiles .tile .title { font-size: 0.78rem; opacity: 0.6; font-weight: 500; }
.tiles .tile .highlight { display: none; }

/* ==========================================
   ACTION ICON BUTTONS (Homepage)
   ========================================== */
.action-icon-btns a {
  display: flex; flex-direction: column; align-items: center; gap: 0.75rem;
  padding: 1.5rem 1rem; background: var(--bd-glass-card-bg) !important;
  backdrop-filter: blur(12px); border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 1rem !important; color: var(--bd-text-body) !important;
  text-decoration: none; font-size: 0.85rem; font-weight: 600;
  transition: all 0.4s cubic-bezier(0.4,0,0.2,1); text-align: center;
}
.action-icon-btns a:hover {
  background: var(--bd-glass-card-hover-bg) !important; border-color: var(--bd-glass-card-hover-border) !important;
  box-shadow: var(--bd-glass-card-shadow) !important; transform: translateY(-6px);
}
.action-icon-btns .ico-container {
  width: 56px; height: 56px; display: flex; align-items: center; justify-content: center;
  background: rgba(16,185,129,0.1); border-radius: 1rem; margin: 0;
}
.action-icon-btns .ico-container i { font-size: 1.5rem; color: #10b981; }

/* ==========================================
   HOMEPAGE  
   ========================================== */
.home-promo-carousel { display: none !important; }

.home-domain-search { background: transparent !important; border: none !important; position: relative; }
.home-domain-search .container { position: relative; }
.home-domain-search .p-5 {
  background: var(--bd-glass-card-bg) !important; backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 1.25rem !important; max-width: 700px; margin: 0 auto;
}
.home-domain-search h2 { color: var(--bd-text-body) !important; font-size: 1.25rem !important; font-weight: 800 !important; }

/* Product group cards on homepage */
.product-group-cards .card { margin-bottom: 1rem; }
.product-group-cards .card img { border-radius: 1rem 1rem 0 0; }

/* ==========================================
   DOMAIN SEARCH
   ========================================== */
.domain-checker-container, .domain-search-container {
  background: var(--bd-glass-card-bg) !important; backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important;
  border-radius: 1rem; padding: 2rem;
}

/* ==========================================
   ALERTS
   ========================================== */
.alert {
  border-radius: 0.75rem !important; border: none !important;
  font-size: 0.85rem; backdrop-filter: blur(8px);
}
.alert-success { background: rgba(16,185,129,0.1) !important; color: #047857 !important; border-right: 4px solid #10b981 !important; }
.alert-danger { background: rgba(239,68,68,0.1) !important; color: #dc2626 !important; border-right: 4px solid #ef4444 !important; }
.alert-warning { background: rgba(245,158,11,0.1) !important; color: #d97706 !important; border-right: 4px solid #f59e0b !important; }
.alert-info { background: rgba(6,182,212,0.1) !important; color: #0891b2 !important; border-right: 4px solid #06b6d4 !important; }

/* ==========================================
   LOGIN PAGE
   ========================================== */
.login-container .card { max-width: 480px; margin: 2rem auto !important; }
.login-container .card .card-body { padding: 2.5rem !important; }

/* ==========================================
   MODAL
   ========================================== */
.modal-content {
  background: var(--bd-glass-bg) !important; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--bd-glass-border) !important; border-radius: 1rem !important;
  color: var(--bd-text-body) !important;
}
.modal-header { border-bottom: 1px solid var(--bd-glass-card-border) !important; }
.modal-header .modal-title { color: var(--bd-text-body) !important; }
.modal-header .close { color: var(--bd-text-body) !important; opacity: 0.5; }
.modal-footer { border-top: 1px solid var(--bd-glass-card-border) !important; }
.modal-body { color: var(--bd-text-body) !important; }

/* ==========================================
   FOOTER
   ========================================== */
#footer, .footer-wrapper {
  background: var(--bd-glass-card-bg) !important;
  backdrop-filter: blur(12px);
  border-top: 1px solid var(--bd-glass-card-border) !important;
  padding: 0; margin-top: 2rem; color: var(--bd-text-body) !important;
  position: relative; overflow: hidden;
}

/* Grid background overlay inside footer */
#footer .footer-grid-bg {
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 0h60v60H0z' fill='none' stroke='%2310b981' stroke-width='0.3' opacity='0.12'/%3E%3C/svg%3E");
  background-size: 60px 60px;
  opacity: 0.5;
  pointer-events: none;
}
body.dark-mode #footer .footer-grid-bg { opacity: 0.8; }

/* Footer columns area */
#footer .footer-columns { padding: 3rem 0 2rem; }

/* Column headings */
#footer .footer-heading {
  font-weight: 700; font-size: 0.95rem;
  color: var(--bd-text-heading);
  margin-bottom: 1.25rem;
  position: relative;
  padding-bottom: 0.65rem;
}
#footer .footer-heading::after {
  content: ''; position: absolute;
  bottom: 0; right: 0; width: 28px; height: 2px;
  background: linear-gradient(90deg, #10b981, #34d399);
  border-radius: 2px;
}

/* Footer links list */
#footer .footer-links {
  list-style: none; padding: 0; margin: 0;
}
#footer .footer-links li { margin-bottom: 0.65rem; }
#footer .footer-links a {
  color: var(--bd-text-body); opacity: 0.55;
  font-size: 0.83rem; text-decoration: none;
  transition: all 0.3s ease; display: inline-block;
}
#footer .footer-links a:hover {
  opacity: 1; color: #059669 !important;
  transform: translateX(-3px);
}

/* Footer info text (address, phone, etc) */
#footer .footer-info-text {
  color: var(--bd-text-body); opacity: 0.55;
  font-size: 0.8rem; line-height: 1.8;
  margin-bottom: 0.35rem;
}
#footer .footer-info-text strong {
  opacity: 0.8; color: var(--bd-text-heading);
}

/* eNamad badge */
#footer .footer-enamad { margin-top: 1rem; }

/* Footer bottom bar */
#footer .footer-bottom {
  border-top: 1px solid var(--bd-glass-card-border);
  padding: 1.5rem 0;
}

/* Existing link/social/copyright styles */
footer .nav-link, #footer .nav-link { color: var(--bd-text-body) !important; opacity: 0.6; font-size: 0.83rem; }
footer .nav-link:hover, #footer .nav-link:hover { opacity: 1; color: #059669 !important; }
footer .copyright, #footer .copyright { color: var(--bd-text-body) !important; opacity: 0.4; font-size: 0.78rem; }
footer .social-icons a { color: var(--bd-text-body) !important; opacity: 0.5; font-size: 1.1rem; transition: all 0.3s ease; }
footer .social-icons a:hover { opacity: 1; color: #10b981 !important; }
footer .btn-lang { color: var(--bd-text-body) !important; border-color: var(--bd-glass-card-border) !important; font-size: 0.78rem; opacity: 0.7; border-radius: 0.75rem !important; }

/* Footer responsive */
@media (max-width: 767px) {
  #footer .footer-columns { padding: 2rem 0 1.5rem; }
  #footer .footer-col { margin-bottom: 1.5rem; }
}

/* ==========================================
   TABS & NAVS
   ========================================== */
.nav-tabs { border-bottom: 1px solid var(--bd-glass-card-border) !important; }
.nav-tabs .nav-link {
  color: var(--bd-text-body) !important; opacity: 0.6; border: none !important;
  font-size: 0.85rem; font-weight: 600; padding: 0.75rem 1.25rem;
  border-radius: 0.75rem 0.75rem 0 0; transition: all 0.3s ease;
}
.nav-tabs .nav-link.active, .nav-tabs .nav-link:hover {
  opacity: 1; color: #059669 !important; background: rgba(16,185,129,0.05) !important;
  border-bottom: 2px solid #10b981 !important;
}
.nav-pills .nav-link { border-radius: 0.75rem; color: var(--bd-text-body) !important; transition: all 0.3s ease; }
.nav-pills .nav-link.active { background: linear-gradient(135deg, #059669, #10b981) !important; color: white !important; }

/* ==========================================
   PAGINATION
   ========================================== */
.pagination .page-item .page-link {
  background: var(--bd-glass-card-bg) !important; border: 1px solid var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important; border-radius: 0.5rem !important;
  font-size: 0.8rem; margin: 0 2px; transition: all 0.2s ease;
}
.pagination .page-item.active .page-link {
  background: linear-gradient(135deg, #059669, #10b981) !important;
  color: white !important; border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(16,185,129,0.25);
}
.pagination .page-item .page-link:hover { background: rgba(16,185,129,0.1) !important; color: #059669 !important; }

/* ==========================================
   PROGRESS BARS
   ========================================== */
.progress { background: var(--bd-glass-card-bg) !important; border-radius: 9999px; height: 8px; }
.progress-bar { background: linear-gradient(90deg, #059669, #34d399) !important; border-radius: 9999px; }

/* ==========================================
   LIST GROUP
   ========================================== */
.list-group-item {
  background: transparent !important; border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important; transition: all 0.2s ease; font-size: 0.85rem;
}
.list-group-item:hover { background: rgba(16,185,129,0.05) !important; }
.list-group-item.active { background: rgba(16,185,129,0.08) !important; color: #059669 !important; border-color: rgba(16,185,129,0.2) !important; }

/* ==========================================
   MISC
   ========================================== */
a { color: #059669; transition: color 0.2s ease; }
a:hover { color: #10b981; text-decoration: none; }
.text-primary { color: #059669 !important; }
.text-success { color: #10b981 !important; }
.text-muted { color: var(--bd-text-body) !important; opacity: 0.5; }
.bg-primary { background: linear-gradient(135deg, #059669, #10b981) !important; }
.bg-success { background: #10b981 !important; }
.bg-color-blue { background: #3b82f6 !important; }
.bg-color-green { background: #10b981 !important; }
.bg-color-red { background: #ef4444 !important; }
.bg-color-gold { background: #f59e0b !important; }

::selection { background: rgba(16,185,129,0.15); color: var(--bd-text-body); }
.card-minimise { cursor: pointer; opacity: 0.3; transition: opacity 0.2s; }
.card-minimise:hover { opacity: 0.6; }

/* Loading spinner */
#fullpage-overlay { background: var(--bd-glass-bg) !important; backdrop-filter: blur(20px); }

/* Return to admin */
.btn-return-to-admin {
  position: fixed !important; bottom: 1rem; left: 1rem; z-index: 1100;
  background: linear-gradient(135deg, #ef4444, #dc2626) !important;
  color: white !important; border: none !important; border-radius: 0.75rem !important;
  padding: 0.5rem 1rem; font-size: 0.78rem; box-shadow: 0 4px 15px rgba(239,68,68,0.3);
  height: 33px !important;
}

/* Well */
.well { background: var(--bd-glass-card-bg) !important; border: 1px solid var(--bd-glass-card-border) !important; border-radius: 1rem !important; color: var(--bd-text-body) !important; }

/* WHMCS specific */
#order-standard_cart .domain-selection-options .option .iradio_square-blue { margin-right: unset; margin-left: 10px; }
.domain-promo-box i { float: left !important; }
.domain-promo-box h3 { font-size: 16px !important; }
div.product-details div.product-icon {
  margin: 0; background: var(--bd-glass-card-bg); border-radius: 1rem;
  padding: 30px; line-height: 1em; font-size: 60px;
  display: flex; flex-direction: column; align-items: center; gap: 28px;
  border: 1px solid var(--bd-glass-card-border);
}
#order-standard_cart .font-size-36 { font-size: 24px !important; }

/* Ticket view styling */
.ticket-reply { background: var(--bd-glass-card-bg) !important; border: 1px solid var(--bd-glass-card-border) !important; border-radius: 1rem !important; margin-bottom: 1rem; padding: 1.25rem; }
.ticket-reply.staff { border-right: 3px solid #10b981 !important; background: rgba(16,185,129,0.03) !important; }
.ticket-staff-reply { border-right: 3px solid #10b981 !important; }

/* Product details tabs */
.product-details-tab-container { background: var(--bd-glass-card-bg) !important; border: 1px solid var(--bd-glass-card-border) !important; border-top: none !important; border-radius: 0 0 1rem 1rem !important; color: var(--bd-text-body) !important; }
.product-status-text { font-size: 0.9rem; padding: 0.35rem 1rem; background: rgba(16,185,129,0.08); border-radius: 8px; display: inline-block; margin-top: 0.5rem; }
.product-status-active .product-status-text { background: rgba(16,185,129,0.1); color: #059669; }
.product-status-suspended .product-status-text { background: rgba(239,68,68,0.1); color: #ef4444; }
.product-status-pending .product-status-text { background: rgba(245,158,11,0.1); color: #f59e0b; }
.product-status-terminated .product-status-text { background: rgba(107,114,128,0.1); color: #6b7280; }
.product-status-cancelled .product-status-text { background: rgba(107,114,128,0.1); color: #6b7280; }
.product-actions-wrapper a.btn { margin-bottom: 0.5rem; border-radius: 0.75rem !important; }
.responsive-tabs-sm-connector .channel { background: var(--bd-glass-card-bg) !important; }
.responsive-tabs-sm-connector .bottom-border { border-color: var(--bd-glass-card-border) !important; }

/* Card accent */
.card-accent-blue { border-top: 3px solid #3b82f6 !important; }
.card-footer { background: rgba(16,185,129,0.03) !important; border-top: 1px solid var(--bd-glass-card-border) !important; }

/* Addon cards */
.card-accent-blue .card-header { background: transparent !important; border-bottom: 1px solid var(--bd-glass-card-border) !important; }

/* Client stats */
.client-home-panels .card { margin-bottom: 1rem; }

/* Knowledgebase */
.article-content { line-height: 1.8; font-size: 0.9rem; }
.article-content img { border-radius: 0.75rem; max-width: 100%; }
.kb-article-item { background: transparent !important; border-color: var(--bd-glass-border) !important; color: var(--bd-text-body) !important; transition: all 0.3s ease; }
.kb-article-item:hover { background: rgba(16,185,129,0.03) !important; transform: translateX(-3px); }
.kb-article-item small { display: block; opacity: 0.6; margin-top: 0.15rem; }

/* Announcements */
.announcements .announcement { transition: all 0.3s ease; }
.announcements .announcement:hover { transform: translateY(-2px); }
.announcements .announcement article { line-height: 1.8; }

/* Invoice page */
.invoice-container { font-family: 'Doran', sans-serif !important; }
.invoice-container .invoice-header { margin-bottom: 1rem; }
.invoice-container .invoice-status span { font-size: 1.1rem; font-weight: 600; padding: 0.5rem 1.25rem; border-radius: 10px; display: inline-block; }
.invoice-container .invoice-status .unpaid { background: rgba(239,68,68,0.1); color: #ef4444; }
.invoice-container .invoice-status .paid { background: rgba(16,185,129,0.1); color: #10b981; }
.invoice-container .invoice-status .draft { background: rgba(107,114,128,0.1); color: #6b7280; }
.invoice-container .invoice-status .refunded { background: rgba(139,92,246,0.1); color: #8b5cf6; }
.invoice-container .invoice-status .cancelled { background: rgba(107,114,128,0.1); color: #6b7280; }
.invoice-container .invoice-status .collections { background: rgba(245,158,11,0.1); color: #f59e0b; }
.invoice-container hr { border-color: var(--bd-glass-border) !important; }
.invoice-container address { opacity: 0.85; }
.invoice-container .total-row { font-weight: 600; border-top: 2px solid var(--bd-glass-border) !important; }
.invoice-container .transactions-container { border-radius: 0 0 1rem 1rem; }

/* Password reset */
.mw-540 { max-width: 540px; width: 100%; }

/* Two-factor */
.two-factor-card { max-width: 480px; margin: 0 auto; }

/* Remove unwanted shadows */
.shadow, .shadow-sm, .shadow-lg { box-shadow: none !important; }

/* ==========================================
   RESPONSIVE
   ========================================== */
@media (max-width: 991px) {
  .bamdad-nav-glass { padding: 0.5rem 1rem; }
  .master-breadcrumb { padding-top: 5rem !important; }
}
@media (max-width: 767px) {
  .master-breadcrumb { padding-top: 5rem !important; }
  .tiles .tile { padding: 1rem; }
  .tiles .tile .stat { font-size: 1.5rem; }
  h1, .h1 { font-size: 1.5rem !important; }
  h2, .h2 { font-size: 1.25rem !important; }
  .card-body { padding: 1rem; }
}

/* ==========================================
   DARK MODE - COMPREHENSIVE OVERRIDES
   Override all white/light backgrounds from theme.min.css
   ========================================== */
body.dark-mode .card-body,
body.dark-mode .mc-promo-manage .content,
body.dark-mode .mc-promo-login .content,
body.dark-mode .card,
body.dark-mode .panel,
body.dark-mode .well,
body.dark-mode .modal-content,
body.dark-mode .popover,
body.dark-mode .tooltip-inner,
body.dark-mode .dropdown-menu,
body.dark-mode .list-group-item,
body.dark-mode .page-link,
body.dark-mode .form-control,
body.dark-mode .custom-select,
body.dark-mode .input-group-text,
body.dark-mode .jumbotron,
body.dark-mode .breadcrumb,
body.dark-mode .navbar-light,
body.dark-mode .bg-light,
body.dark-mode .bg-white,
body.dark-mode .table {
  color: var(--bd-text-body) !important;
}

/* Kill ALL white/light backgrounds in dark mode */
body.dark-mode .card-body,
body.dark-mode .mc-promo-manage .content,
body.dark-mode .mc-promo-login .content {
  background: transparent !important;
}

body.dark-mode .bg-white,
body.dark-mode .bg-light {
  background: var(--bd-glass-card-bg) !important;
}

/* Order cart products - the specific "background: white" from theme.min.css */
body.dark-mode #order-standard_cart .products .product {
  background: var(--bd-glass-card-bg) !important;
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .products .product header {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .products .product footer {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .products .product div.product-desc {
  color: var(--bd-text-body) !important;
}

/* Cart sidebar */
body.dark-mode #order-standard_cart .cart-sidebar .card-header {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .cart-sidebar .card-footer {
  background: transparent !important;
}
body.dark-mode #order-standard_cart .cart-sidebar .list-group-item {
  background: transparent !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .cart-sidebar .list-group-item.active {
  background: rgba(16,185,129,0.08) !important;
  color: #059669 !important;
}
body.dark-mode #order-standard_cart .cart-body {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}

/* Generic Bootstrap elements with white bg */
body.dark-mode .table thead th {
  background: rgba(16,185,129,0.05) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode .table td,
body.dark-mode .table th {
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode .table-striped tbody tr:nth-of-type(odd) {
  background: rgba(255,255,255,0.01) !important;
}
body.dark-mode .table-hover tbody tr:hover {
  background: rgba(16,185,129,0.04) !important;
}

/* Popover */
body.dark-mode .popover {
  background: rgba(5,25,18,0.92) !important;
  backdrop-filter: blur(30px); -webkit-backdrop-filter: blur(30px);
  border: 1px solid rgba(255,255,255,0.08) !important;
}
body.dark-mode .popover-header {
  background: transparent !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode .popover-body {
  color: var(--bd-text-body) !important;
}
body.dark-mode .bs-popover-auto .arrow::after,
body.dark-mode .bs-popover-bottom .arrow::after {
  border-bottom-color: rgba(5,25,18,0.92) !important;
}

/* Misc white background elements */
body.dark-mode .mc-promo-manage,
body.dark-mode .mc-promo-login {
  background: var(--bd-glass-card-bg) !important;
  border: 1px solid var(--bd-glass-card-border) !important;
}

body.dark-mode .featured-tld {
  background: var(--bd-glass-card-bg) !important;
  border: 1px solid var(--bd-glass-card-border) !important;
}

body.dark-mode .domain-pricing .tld-row {
  border-color: var(--bd-glass-card-border) !important;
}

/* DataTables dark mode */
body.dark-mode .dataTables_wrapper table.table-list {
  background: transparent !important;
}
body.dark-mode .dataTables_wrapper table.table-list thead th {
  background: rgba(16,185,129,0.05) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode .dataTables_wrapper table.table-list td {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode .dataTables_wrapper .dataTables_filter label .form-control {
  background: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
  border-color: var(--bd-glass-card-border) !important;
}

/* Registration form */
body.dark-mode #registration .field,
body.dark-mode #registration .form-control {
  background: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
  border-color: var(--bd-glass-card-border) !important;
}
body.dark-mode #registration .sub-heading {
  color: var(--bd-text-body) !important;
}
body.dark-mode #registration label {
  color: var(--bd-text-body) !important;
}

/* Credit card widget */
body.dark-mode div.credit-card {
  background: var(--bd-glass-card-bg) !important;
  border: 1px solid var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Domain pricing header */
body.dark-mode .domain-pricing .tld-pricing-header div {
  color: var(--bd-text-body) !important;
}

/* Catch-all: any remaining white backgrounds */
body.dark-mode [style*="background: white"],
body.dark-mode [style*="background-color: white"],
body.dark-mode [style*="background:#fff"],
body.dark-mode [style*="background: #fff"] {
  background: var(--bd-glass-card-bg) !important;
}

/* Order cart domain selection */
body.dark-mode #order-standard_cart .domain-selection-options .option-selected {
  background: rgba(16,185,129,0.06) !important;
}
body.dark-mode #order-standard_cart .domain-selection-options .option {
  background: transparent !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .domain-selection-options {
  background: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
}

/* Cart: domain promo box */
body.dark-mode #order-standard_cart .domain-promo-box {
  background: var(--bd-glass-card-bg) !important;
  border: 1px solid var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Cart: product header/footer in cart body */
body.dark-mode #order-standard_cart .cart-body .products .product header {
  background: transparent !important;
  border-color: var(--bd-glass-card-border) !important;
}

/* Cart: panel heading/footer */
body.dark-mode #order-standard_cart .panel .panel-heading {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .panel .panel-footer {
  background: transparent !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .panel label {
  color: var(--bd-text-body) !important;
}

/* Cart: domain pricing header & badge */
body.dark-mode #order-standard_cart .domain-pricing .tld-pricing-header div {
  background: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .domain-pricing .tld-pricing-header .tld-column {
  background: var(--bd-glass-card-bg) !important;
}
body.dark-mode #order-standard_cart .domain-pricing .tld-filters .badge {
  background: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
  border-color: var(--bd-glass-card-border) !important;
}
body.dark-mode #order-standard_cart .domain-pricing .tld-filters .badge.badge-success {
  background-color: #059669 !important;
  color: white !important;
}

/* Cart: secondary cart tabs */
body.dark-mode #order-standard_cart .secondary-cart-body .view-cart-tabs .nav-tabs a[aria-expanded=true] {
  background-color: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .secondary-cart-body .view-cart-tabs .tab-content {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Cart: sub-heading span */
body.dark-mode #order-standard_cart .sub-heading span {
  background: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
}

/* Cart: configure product form */
body.dark-mode #frmConfigureProduct .form-control {
  color: var(--bd-text-body) !important;
}
body.dark-mode #frmConfigureProduct label {
  color: var(--bd-text-body) !important;
}

/* Cart: product info */
body.dark-mode #order-standard_cart .product-info {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Cart: order summary */
body.dark-mode #order-standard_cart .order-summary {
  background-color: var(--bd-glass-card-bg) !important;
}
body.dark-mode #order-standard_cart .order-summary h2 {
  color: var(--bd-text-body) !important;
  border-color: var(--bd-glass-card-border) !important;
}
body.dark-mode #order-standard_cart .order-summary .summary-container {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
}

/* Cart: checkout credit card fields */
body.dark-mode #order-standard_cart #frmCheckout #creditCardInputFields {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Cart: mc-promo */
body.dark-mode #order-standard_cart .mc-promo {
  border-color: var(--bd-glass-card-border) !important;
  background: var(--bd-glass-card-bg) !important;
}

/* ==========================================
   CART (all.css) - COMPREHENSIVE DARK MODE
   Override all white/light bgs and dark text colors
   from orderforms/standard_cart/css/all.css
   ========================================== */

/* Global text color overrides */
body.dark-mode #order-standard_cart label,
body.dark-mode #order-standard_cart p.domain-renewal-desc,
body.dark-mode .service-renewals .div-renewal-period-label {
  color: var(--bd-text-body) !important;
  opacity: 0.7;
}
body.dark-mode #order-standard_cart .sub-heading span,
body.dark-mode #order-standard_cart .sub-heading-borderless span {
  color: #34d399 !important;
  background: var(--bd-bg-body) !important;
}
body.dark-mode #order-standard_cart .domain-checker-advanced label {
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .domain-checker-advanced .multiselect {
  color: var(--bd-text-body) !important;
}

/* Products - white backgrounds */
body.dark-mode #order-standard_cart .products .product {
  background: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .products .product header {
  background: rgba(16,185,129,0.04) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .products .product header span {
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .products .product header .qty {
  color: var(--bd-text-body) !important;
  opacity: 0.5;
}
body.dark-mode #order-standard_cart .products .product div.product-desc {
  color: var(--bd-text-body) !important;
}

/* Domain selection options */
body.dark-mode #order-standard_cart .domain-selection-options .option {
  background-color: rgba(255,255,255,0.02) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .domain-selection-options .option-selected {
  background-color: rgba(16,185,129,0.06) !important;
}
body.dark-mode #order-standard_cart .domain-checker-advanced input[type="checkbox"] {
  background: var(--bd-glass-card-bg) !important;
}
body.dark-mode #order-standard_cart .transfer-not-eligible {
  color: var(--bd-text-body) !important;
  background-color: rgba(255,255,255,0.03) !important;
}

/* Product info bar */
body.dark-mode #order-standard_cart .product-info {
  background-color: rgba(255,255,255,0.02) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Order summary */
body.dark-mode #order-standard_cart .order-summary {
  background-color: rgba(16,185,129,0.15) !important;
  border-color: rgba(16,185,129,0.2) !important;
}
body.dark-mode #order-standard_cart .summary-container {
  background-color: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .order-summary .summary-totals {
  border-color: var(--bd-glass-card-border) !important;
}
body.dark-mode #order-standard_cart .order-summary .btn-continue-shopping {
  color: var(--bd-text-body) !important;
}

/* Panel addon */
body.dark-mode #order-standard_cart .panel-addon .panel-body label {
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .panel-addon .panel-price {
  background-color: rgba(255,255,255,0.04) !important;
  color: var(--bd-text-body) !important;
}

/* Form fields */
body.dark-mode #order-standard_cart .field,
body.dark-mode #order-standard_cart .form-control {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .field[disabled],
body.dark-mode #order-standard_cart .field[readonly],
body.dark-mode #order-standard_cart .form-control[disabled],
body.dark-mode #order-standard_cart .form-control[readonly] {
  background-color: rgba(255,255,255,0.01) !important;
  color: var(--bd-text-body) !important;
  opacity: 0.6;
}
body.dark-mode #order-standard_cart .field-help-text {
  color: var(--bd-text-body) !important;
  opacity: 0.5;
}
body.dark-mode #order-standard_cart .field-icon i {
  color: var(--bd-text-body) !important;
  opacity: 0.4;
}

/* View cart items */
body.dark-mode #order-standard_cart .view-cart-items-header {
  background-color: rgba(16,185,129,0.15) !important;
  color: white !important;
}
body.dark-mode #order-standard_cart .view-cart-items {
  border-color: rgba(16,185,129,0.2) !important;
}
body.dark-mode #order-standard_cart .view-cart-items .item {
  background-color: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
  border-color: var(--bd-glass-card-border) !important;
}
body.dark-mode #order-standard_cart .view-cart-items .item:nth-child(even) {
  background-color: rgba(255,255,255,0.01) !important;
}
body.dark-mode #order-standard_cart .view-cart-items .item-domain {
  color: #34d399 !important;
}
body.dark-mode #order-standard_cart .btn-remove-from-cart {
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .empty-cart .btn {
  background-color: rgba(16,185,129,0.15) !important;
}
body.dark-mode #order-standard_cart .cart-body .view-cart-empty {
  background-color: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
  border-color: var(--bd-glass-card-border) !important;
}

/* Checkout */
body.dark-mode #order-standard_cart .apply-credit-container {
  background-color: rgba(255,255,255,0.03) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .cc-input-container {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .cc-input-container .existing-cc-grid {
  color: var(--bd-text-body) !important;
  opacity: 0.7;
}

/* View cart tabs */
body.dark-mode #order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
body.dark-mode #order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"] {
  background-color: var(--bd-glass-card-bg) !important;
  color: var(--bd-text-body) !important;
}
body.dark-mode #order-standard_cart .view-cart-tabs .tab-content {
  background-color: var(--bd-glass-card-bg) !important;
  border-color: var(--bd-glass-card-border) !important;
  color: var(--bd-text-body) !important;
}

/* Domain checker available/unavailable retain their colors */
body.dark-mode #order-standard_cart .domain-checker-available {
  color: #34d399 !important;
}

/* Info text */
body.dark-mode #order-standard_cart .info-text-sm {
  color: var(--bd-text-body) !important;
  opacity: 0.6;
}

/* ==========================================
   PRINT
   ========================================== */
@media print {
  body { background: white !important; color: black !important; }
  .card { border: 1px solid #ddd !important; background: white !important; backdrop-filter: none !important; }
  #header, footer, .sidebar, #themeToggle { display: none !important; }
}

.tiles .tile i {
    position: unset !important;

}
#order-standard_cart .prepend-icon .field-icon {
    left: 0;
}

.sidebar-menu-item-label {
    overflow: unset;
}

.input-group .form-control {
    border-radius: 0 !important;
}


.dropdown-toggle::after {
    display: none !important;

}

section#main-body {
    background-color: unset !important;
}

i.fas.fa-arrow-right {
    transform: rotate(180deg);
    margin: 0 5px;
}

.dropdown-menu {
    width: 195px;
}


body.dark-mode #order-standard_cart .account-select-container div.account.active {
    background-color: var(--bd-glass-card-bg) !important;
    color: var(--bd-text-body) !important;
    border-color: var(--bd-glass-card-border) !important;
}

body.dark-mode #order-standard_cart .account-select-container div.account {
    background-color: var(--bd-glass-card-bg) !important;
    color: var(--bd-text-body) !important;
    border-color: var(--bd-glass-card-border) !importa
}