/* ZEST Custom Theme Palette - Vibrant Electric Logo Blue (#2563eb / #2979ff) */
:root {
  --bs-primary: #2563eb !important;
  --bs-primary-rgb: 37, 99, 235 !important;
  --bs-primary-hover: #1d4ed8 !important;
  --bs-primary-active: #1e40af !important;
  --bs-light-primary: #eff6ff !important;
  --bs-light-primary-rgb: 239, 246, 255 !important;
  --bs-primary-subtle: #eff6ff !important;
  --bs-primary-border-subtle: #bfdbfe !important;
}

/* Primary Buttons */
.btn-primary {
  --bs-btn-bg: #2563eb !important;
  --bs-btn-border-color: #2563eb !important;
  --bs-btn-hover-bg: #1d4ed8 !important;
  --bs-btn-hover-border-color: #1d4ed8 !important;
  --bs-btn-active-bg: #1e40af !important;
  --bs-btn-active-border-color: #1e40af !important;
  --bs-btn-disabled-bg: #2563eb !important;
  --bs-btn-disabled-border-color: #2563eb !important;
  background-color: #2563eb !important;
  border-color: #2563eb !important;
}

.btn-primary:hover {
  background-color: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
}

.btn-outline-primary {
  --bs-btn-color: #2563eb !important;
  --bs-btn-border-color: #2563eb !important;
  --bs-btn-hover-bg: #2563eb !important;
  --bs-btn-hover-border-color: #2563eb !important;
  --bs-btn-active-bg: #1d4ed8 !important;
  --bs-btn-active-border-color: #1d4ed8 !important;
  color: #2563eb !important;
  border-color: #2563eb !important;
}

.btn-outline-primary:hover {
  background-color: #2563eb !important;
  border-color: #2563eb !important;
  color: #ffffff !important;
}

.btn-light-primary {
  background-color: #eff6ff !important;
  color: #2563eb !important;
  border: 1px solid #dbeafe !important;
}

.btn-light-primary:hover {
  background-color: #2563eb !important;
  border-color: #2563eb !important;
  color: #ffffff !important;
}

/* Backgrounds & Text Utilities */
.bg-primary {
  background-color: #2563eb !important;
}

.text-primary {
  color: #2563eb !important;
}

.border-primary {
  border-color: #2563eb !important;
}

.bg-light-primary,
.bg-primary-subtle,
.bg-light-info {
  background-color: #eff6ff !important;
  color: #2563eb !important;
}

.text-primary-emphasis {
  color: #1e40af !important;
}

.border-primary-subtle {
  border-color: #bfdbfe !important;
}

/* Card Header & Tables (Fix Dashboard Headers) */
.card-header.bg-primary-subtle,
.card-header.bg-light-primary,
.card-header.bg-light-info,
th.bg-primary-subtle,
th.bg-light-primary,
th.bg-light-info {
  background-color: #eff6ff !important;
  color: #2563eb !important;
  border-bottom: 1px solid #dbeafe !important;
}

.card.bg-light-info,
.card.bg-light-primary {
  background-color: #eff6ff !important;
}

/* Sidebar Styling & Hover / Click (Inactive Links) */
.sidebar-nav ul .sidebar-item .sidebar-link {
  transition: all 0.15s ease-in-out;
}

.sidebar-nav ul .sidebar-item .sidebar-link:not(.active):hover,
.sidebar-nav ul .sidebar-item .sidebar-link:not(.active):focus,
.sidebar-nav ul .sidebar-item .sidebar-link:not(.active):active {
  background-color: #eff6ff !important;
  color: #2563eb !important;
}

.sidebar-nav ul .sidebar-item .sidebar-link:not(.active):hover *,
.sidebar-nav ul .sidebar-item .sidebar-link:not(.active):focus *,
.sidebar-nav ul .sidebar-item .sidebar-link:not(.active):active * {
  color: #2563eb !important;
}

/* Sidebar Active / Selected Page Items */
.sidebar-nav ul .sidebar-item.selected > .sidebar-link,
.sidebar-nav ul .sidebar-item.selected > .sidebar-link.active,
.sidebar-nav ul .sidebar-item > .sidebar-link.active,
.sidebar-nav ul .sidebar-item > .sidebar-link.active:hover,
.sidebar-nav ul .sidebar-item > .sidebar-link.active:focus,
.sidebar-nav ul .sidebar-item > .sidebar-link.active:active {
  background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 60%, #3b82f6 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35) !important;
}

.sidebar-nav ul .sidebar-item.selected > .sidebar-link *,
.sidebar-nav ul .sidebar-item > .sidebar-link.active *,
.sidebar-nav ul .sidebar-item > .sidebar-link.active:hover *,
.sidebar-nav ul .sidebar-item > .sidebar-link.active:focus *,
.sidebar-nav ul .sidebar-item > .sidebar-link.active:active * {
  color: #ffffff !important;
}

/* Nav Pills & Badges */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: #2563eb !important;
  color: #ffffff !important;
}

.badge.bg-primary {
  background-color: #2563eb !important;
}

.badge.bg-light-primary,
.badge.bg-primary-subtle {
  background-color: #eff6ff !important;
  color: #2563eb !important;
}

/* Form controls focus ring */
.form-control:focus,
.form-select:focus {
  border-color: #2563eb !important;
  box-shadow: 0 0 0 0.25rem rgba(37, 99, 235, 0.18) !important;
}

.form-check-input:checked {
  background-color: #2563eb !important;
  border-color: #2563eb !important;
}

/* Progress bar & Links */
.progress-bar.bg-primary {
  background-color: #2563eb !important;
}

a {
  color: #2563eb;
}
a:hover {
  color: #1d4ed8;
}

/* Order Step Header Luxury Gradient Icon Orbs */
.step-icon-orb {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  flex-shrink: 0;
  color: #ffffff !important;
  transition: transform 0.2s ease;
}

.step-icon-orb i {
  color: #ffffff !important;
}

.step-orb-blue {
  background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 60%, #3b82f6 100%) !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.32) !important;
}

.step-orb-emerald {
  background: linear-gradient(135deg, #059669 0%, #10b981 100%) !important;
  box-shadow: 0 4px 14px rgba(16, 185, 129, 0.32) !important;
}

.step-orb-amber {
  background: linear-gradient(135deg, #d97706 0%, #f59e0b 100%) !important;
  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.32) !important;
}

.step-orb-cyan {
  background: linear-gradient(135deg, #0284c7 0%, #06b6d4 100%) !important;
  box-shadow: 0 4px 14px rgba(2, 132, 199, 0.32) !important;
}

.step-orb-purple {
  background: linear-gradient(135deg, #7c3aed 0%, #8b5cf6 100%) !important;
  box-shadow: 0 4px 14px rgba(124, 58, 237, 0.32) !important;
}

/* Fix Smooth Sticky Navbar on Landing Page (Prevent Scroll Jumping Glitch) */
.page-wrapper {
  overflow: visible !important;
}

header.header {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 1050 !important;
  background-color: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  transition: box-shadow 0.25s ease, background-color 0.25s ease !important;
  animation: none !important;
}

header.header.fixed-header {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.08) !important;
  background-color: rgba(255, 255, 255, 0.98) !important;
  animation: none !important;
}

/* Global Form Focus: Border Only (No Box-Shadow Glow) */
.form-control:focus,
.form-select:focus,
.form-check-input:focus,
input.form-control:focus,
textarea.form-control:focus,
select.form-control:focus,
input:focus,
textarea:focus,
select:focus {
  box-shadow: none !important;
  outline: 0 !important;
  border-color: var(--bs-primary, #2563eb) !important;
}

/* Global Standard ZEST Gradient Buttons */
.btn-gradient-primary {
  background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 60%, #3b82f6 100%) !important;
  color: #ffffff !important;
  border: none !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.28) !important;
  transition: all 0.2s ease !important;
}

.btn-gradient-primary:hover {
  background: linear-gradient(135deg, #1e40af 0%, #1d4ed8 60%, #2563eb 100%) !important;
  box-shadow: 0 6px 18px rgba(37, 99, 235, 0.38) !important;
  transform: translateY(-1px);
  color: #ffffff !important;
}

/* Prevent input-group buttons (like copy buttons) from shifting on hover to preserve seamless input alignment */
.input-group .btn-gradient-primary:hover,
.input-group .btn:hover {
  transform: none !important;
}



