/* =========================================================================
   AKI DATABASE - THEME 1: NEUMORPHIC SOFT UI DESIGN SYSTEM
   Scope Selector: .theme-neumorphic / body.theme-neumorphic
   Fully Isolated, Modular & Zero Leaks to Default or Dark Themes
   ========================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap');

/* =========================================================================
   1. SCOPED COLOR TOKENS & SURFACES
   ========================================================================= */
body.theme-neumorphic {
  /* Neumorphic Color Tokens */
  --nm-bg: #E6ECF5;
  --nm-surface: #E6ECF5;
  --nm-surface-hover: #ECF1F9;
  --nm-surface-sunken: #DDE4EE;
  
  --nm-primary: #2563EB;
  --nm-primary-dark: #1D4ED8;
  --nm-accent-violet: #7C3AED;
  --nm-accent-gradient: linear-gradient(135deg, #2563EB 0%, #7C3AED 100%);
  --nm-accent-gradient-hover: linear-gradient(135deg, #1D4ED8 0%, #6D28D9 100%);
  
  --nm-text: #1E293B;
  --nm-text-muted: #64748B;
  --nm-text-light: #94A3B8;

  /* Shadows (Dual Soft Shadows) */
  --nm-shadow-light: rgba(255, 255, 255, 0.85);
  --nm-shadow-dark: rgba(166, 180, 200, 0.7);
  --nm-shadow-dark-subtle: rgba(166, 180, 200, 0.45);
  
  --nm-raised-card: -6px -6px 12px var(--nm-shadow-light), 6px 6px 12px var(--nm-shadow-dark);
  --nm-raised-card-hover: -8px -8px 16px var(--nm-shadow-light), 8px 8px 16px rgba(166, 180, 200, 0.8);
  --nm-raised-sm: -4px -4px 8px var(--nm-shadow-light), 4px 4px 8px var(--nm-shadow-dark);
  --nm-raised-lg: -10px -10px 24px var(--nm-shadow-light), 10px 10px 24px var(--nm-shadow-dark);
  
  --nm-inset: inset 3px 3px 6px var(--nm-shadow-dark), inset -3px -3px 6px var(--nm-shadow-light);
  --nm-inset-deep: inset 4px 4px 8px var(--nm-shadow-dark), inset -4px -4px 8px var(--nm-shadow-light);
  --nm-inset-sm: inset 2px 2px 4px var(--nm-shadow-dark), inset -2px -2px 4px var(--nm-shadow-light);

  /* Override standard system variables within body.theme-neumorphic */
  --bg: #E6ECF5;
  --surface: #E6ECF5;
  --surface-secondary: #DEE5F0;
  --text: #1E293B;
  --text-muted: #64748B;
  --border: transparent;
  --border-subtle: rgba(166, 180, 200, 0.35);
  --primary: #2563EB;
  --primary-dark: #1D4ED8;

  background: var(--nm-bg) !important;
  color: var(--nm-text) !important;
  font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* =========================================================================
   2. TYPOGRAPHY & TABULAR NUMERICS (SCOPED TO .theme-neumorphic)
   ========================================================================= */
body.theme-neumorphic,
body.theme-neumorphic input,
body.theme-neumorphic button,
body.theme-neumorphic select,
body.theme-neumorphic textarea,
body.theme-neumorphic optgroup,
body.theme-neumorphic table,
body.theme-neumorphic th,
body.theme-neumorphic td,
body.theme-neumorphic .page-title,
body.theme-neumorphic h1,
body.theme-neumorphic h2,
body.theme-neumorphic h3,
body.theme-neumorphic h4,
body.theme-neumorphic .card-title,
body.theme-neumorphic .modal-title,
body.theme-neumorphic .stat-card-label,
body.theme-neumorphic .stat-card-num,
body.theme-neumorphic .box-value,
body.theme-neumorphic .box-label,
body.theme-neumorphic .nav-item,
body.theme-neumorphic .portal-title {
  font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Tabular Numbers for Data Alignment */
body.theme-neumorphic .id-number,
body.theme-neumorphic .tabular-nums,
body.theme-neumorphic .stat-card-num,
body.theme-neumorphic .stat-cell-num,
body.theme-neumorphic .box-value,
body.theme-neumorphic [data-num],
body.theme-neumorphic td {
  font-variant-numeric: tabular-nums !important;
  -moz-font-feature-settings: "tnum" !important;
  -webkit-font-feature-settings: "tnum" !important;
  font-feature-settings: "tnum" !important;
}

/* Language font overrides (Bangla & Arabic) */
body.theme-neumorphic.lang-bn,
body.theme-neumorphic.lang-bn *:not(.ar):not(.arabic-field):not(.res-sponsor-arab-text) {
  font-family: 'Hind Siliguri', 'Outfit', sans-serif !important;
}

body.theme-neumorphic [dir="rtl"],
body.theme-neumorphic .arabic-field,
body.theme-neumorphic .res-sponsor-arab-text,
body.theme-neumorphic .ar {
  font-family: 'Amiri', serif !important;
}

/* =========================================================================
   3. SIDEBAR NAVIGATION
   ========================================================================= */
body.theme-neumorphic .sidebar {
  background: var(--nm-surface) !important;
  border-right: 1px solid rgba(255, 255, 255, 0.4) !important;
  box-shadow: 6px 0 16px var(--nm-shadow-dark-subtle) !important;
}

body.theme-neumorphic .sidebar-header {
  border-bottom: 1px solid rgba(166, 180, 200, 0.3) !important;
  background: transparent !important;
}

body.theme-neumorphic .sidebar-logo-img {
  background: var(--nm-surface) !important;
  border: none !important;
  box-shadow: var(--nm-raised-sm) !important;
}

body.theme-neumorphic .logo-title {
  color: var(--nm-text) !important;
}

body.theme-neumorphic .logo-eyebrow {
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .nav-group-label {
  color: var(--nm-text-muted) !important;
  font-weight: 700 !important;
}

body.theme-neumorphic .nav-item {
  color: var(--nm-text) !important;
  border-radius: 10px !important;
  border: none !important;
  margin: 4px 10px !important;
  padding: 10px 16px !important;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .nav-item:hover {
  background: var(--nm-surface) !important;
  color: var(--nm-primary) !important;
  box-shadow: var(--nm-raised-sm) !important;
  transform: translateY(-1px) !important;
}

body.theme-neumorphic .nav-item.active {
  background: var(--nm-accent-gradient) !important;
  color: #ffffff !important;
  box-shadow: -3px -3px 8px var(--nm-shadow-light), 3px 3px 14px rgba(37, 99, 235, 0.45) !important;
  font-weight: 700 !important;
  transform: translateX(4px) !important;
  border: none !important;
}

body.theme-neumorphic .nav-item.active .nav-icon {
  stroke: #ffffff !important;
  opacity: 1 !important;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.25)) !important;
}

body.theme-neumorphic .sidebar-footer {
  border-top: 1px solid rgba(166, 180, 200, 0.3) !important;
  background: transparent !important;
}

body.theme-neumorphic .server-status-card {
  background: var(--nm-surface) !important;
  border-radius: 18px !important;
  border: none !important;
  box-shadow: var(--nm-inset-sm) !important;
}

body.theme-neumorphic .server-status-title {
  color: var(--nm-text) !important;
}

body.theme-neumorphic .server-status-line {
  color: var(--nm-text-muted) !important;
}

/* =========================================================================
   4. TOP BAR & THEME / LANGUAGE SWITCHERS
   ========================================================================= */
body.theme-neumorphic .mobile-topbar {
  background: var(--nm-surface) !important;
  box-shadow: 0 4px 14px var(--nm-shadow-dark-subtle) !important;
  border-bottom: none !important;
}

body.theme-neumorphic .hamburger {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 12px !important;
  box-shadow: var(--nm-raised-sm) !important;
}

body.theme-neumorphic .header-user-chip {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: var(--nm-raised-sm) !important;
}

body.theme-neumorphic .header-user-avatar {
  border-radius: 8px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
}

body.theme-neumorphic .btn-header-action {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 8px !important;
  box-shadow: var(--nm-raised-sm) !important;
  color: var(--nm-text) !important;
}

body.theme-neumorphic .btn-header-action:hover {
  box-shadow: var(--nm-raised-card) !important;
  transform: translateY(-1px) !important;
}

body.theme-neumorphic .btn-logout-action {
  color: #DC2626 !important;
}

body.theme-neumorphic .btn-logout-action:hover {
  background: #FEE2E2 !important;
  color: #B91C1C !important;
}

body.theme-neumorphic .theme-toggle-cluster {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: var(--nm-inset) !important;
  padding: 4px !important;
}

body.theme-neumorphic .theme-btn {
  border-radius: 8px !important;
  border: none !important;
  background: transparent !important;
  color: var(--nm-text-muted) !important;
  font-weight: 600 !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .theme-btn:hover {
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .theme-btn.active {
  background: var(--nm-surface) !important;
  color: var(--nm-primary) !important;
  box-shadow: var(--nm-raised-sm) !important;
  font-weight: 700 !important;
}

/* =========================================================================
   5. HERO SEARCH BAR & UNIVERSAL SEARCH CENTER
   ========================================================================= */
body.theme-neumorphic .search-focal-card,
body.theme-neumorphic .search-card,
body.theme-neumorphic .futuristic-search-container {
  background: var(--nm-surface) !important;
  border-radius: 16px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
}

body.theme-neumorphic .futuristic-search-pill {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.7) !important;
  box-shadow: var(--nm-inset) !important;
  padding: 5px 6px 5px 18px !important;
  display: flex !important;
  align-items: center !important;
  min-height: 54px !important;
}

body.theme-neumorphic .futuristic-search-input {
  background: transparent !important;
  color: var(--nm-text) !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  font-size: 15.5px !important;
  font-weight: 600 !important;
  padding: 8px 12px 8px 0 !important;
}

body.theme-neumorphic .futuristic-search-input::placeholder {
  color: var(--nm-text-muted) !important;
  opacity: 0.8 !important;
}

body.theme-neumorphic .futuristic-kbd-badge {
  display: none !important;
}

body.theme-neumorphic .futuristic-search-btn {
  background: var(--nm-accent-gradient) !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  border: none !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 10px rgba(37, 99, 235, 0.45) !important;
  font-weight: 700 !important;
  height: 42px !important;
  padding: 0 24px !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .futuristic-search-btn:hover {
  background: var(--nm-accent-gradient-hover) !important;
  transform: translateY(-1px) !important;
  box-shadow: -3px -3px 8px var(--nm-shadow-light), 3px 3px 14px rgba(37, 99, 235, 0.55) !important;
}

body.theme-neumorphic .search-chip {
  background: var(--nm-surface) !important;
  border-radius: 8px !important;
  border: none !important;
  box-shadow: var(--nm-raised-sm) !important;
  color: var(--nm-text) !important;
  font-weight: 600 !important;
}

body.theme-neumorphic .search-chip:hover {
  color: var(--nm-primary) !important;
  box-shadow: var(--nm-raised-card) !important;
  transform: translateY(-2px) !important;
}

/* =========================================================================
   6. DASHBOARD STAT METRIC CARDS (RAISED NEUMORPHIC 24PX RADIUS)
   ========================================================================= */
body.theme-neumorphic .stat-card {
  background: var(--nm-surface) !important;
  border-radius: 16px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
  color: var(--nm-text) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .stat-card:hover {
  box-shadow: var(--nm-raised-card-hover) !important;
  transform: translateY(-4px) !important;
}

body.theme-neumorphic .stat-card-icon {
  filter: drop-shadow(2px 3px 4px rgba(166, 180, 200, 0.6)) !important;
}

body.theme-neumorphic .stat-card-badge {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 6px !important;
  box-shadow: var(--nm-inset-sm) !important;
  color: var(--nm-primary) !important;
  font-weight: 700 !important;
}

body.theme-neumorphic .stat-card-num {
  color: var(--nm-text) !important;
  font-weight: 800 !important;
}

body.theme-neumorphic .stat-card-label {
  color: var(--nm-text-muted) !important;
  font-weight: 600 !important;
}

/* Subtle Accent Accents for Specific Stat Cards */
body.theme-neumorphic .stat-card-mint .stat-card-num {
  color: #059669 !important;
}
body.theme-neumorphic .stat-card-emerald .stat-card-num {
  color: #2563EB !important;
}
body.theme-neumorphic .stat-card-sage .stat-card-num {
  color: #7C3AED !important;
}
body.theme-neumorphic .stat-card-spring .stat-card-num {
  color: #0D9488 !important;
}

body.theme-neumorphic .stat-card-forest {
  background: var(--nm-accent-gradient) !important;
  box-shadow: -6px -6px 14px var(--nm-shadow-light), 6px 6px 16px rgba(37, 99, 235, 0.45) !important;
}

body.theme-neumorphic .stat-card-forest .stat-card-num,
body.theme-neumorphic .stat-card-forest .stat-card-label {
  color: #ffffff !important;
}

body.theme-neumorphic .stat-card-forest .stat-card-badge {
  background: rgba(255, 255, 255, 0.25) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

/* =========================================================================
   7. UNIVERSAL SEARCH RESULT INFO BOXES (6-BOX GRID)
   ========================================================================= */
body.theme-neumorphic .worker-result-card,
body.theme-neumorphic .visa-summary-card,
body.theme-neumorphic .card,
body.theme-neumorphic .form-card,
body.theme-neumorphic .portal-card,
body.theme-neumorphic .bmet-card,
body.theme-neumorphic .modal-card {
  background: var(--nm-surface) !important;
  border-radius: 16px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
}

body.theme-neumorphic .visa-info-box {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .visa-info-box:hover {
  box-shadow: var(--nm-raised-card-hover) !important;
  transform: translateY(-3px) !important;
}

body.theme-neumorphic .primary-focus-box {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: none !important;
  box-shadow: -6px -6px 12px var(--nm-shadow-light), 6px 6px 14px rgba(37, 99, 235, 0.3) !important;
}

body.theme-neumorphic .visa-info-box .box-label {
  color: var(--nm-text-muted) !important;
  font-weight: 700 !important;
}

body.theme-neumorphic .visa-info-box .copy-badge {
  background: var(--nm-surface) !important;
  border-radius: 6px !important;
  box-shadow: var(--nm-inset-sm) !important;
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .visa-info-box .box-value {
  color: var(--nm-text) !important;
}

body.theme-neumorphic .primary-focus-box .box-value {
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .sponsor-col {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
}

body.theme-neumorphic .sponsor-col:hover {
  box-shadow: var(--nm-raised-card-hover) !important;
  transform: translateY(-2px) !important;
}

body.theme-neumorphic .sponsor-col-text-ar {
  color: var(--nm-primary) !important;
}

/* =========================================================================
   8. INPUTS, SELECTS & FORM CONTROLS (INSET SHADOWS)
   ========================================================================= */
body.theme-neumorphic input[type="text"],
body.theme-neumorphic input[type="number"],
body.theme-neumorphic input[type="date"],
body.theme-neumorphic input[type="password"],
body.theme-neumorphic input[type="email"],
body.theme-neumorphic input[type="search"],
body.theme-neumorphic select,
body.theme-neumorphic textarea,
body.theme-neumorphic .form-input,
body.theme-neumorphic .form-select,
body.theme-neumorphic .field-input {
  background: var(--nm-surface) !important;
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 14px !important;
  box-shadow: var(--nm-inset) !important;
  color: var(--nm-text) !important;
  font-weight: 500 !important;
  transition: all 0.2s ease !important;
}

body.theme-neumorphic input:focus,
body.theme-neumorphic select:focus,
body.theme-neumorphic textarea:focus {
  outline: none !important;
  border-color: rgba(37, 99, 235, 0.4) !important;
  box-shadow: var(--nm-inset), 0 0 0 3px rgba(37, 99, 235, 0.25) !important;
}

body.theme-neumorphic .modern-pill-search-input,
body.theme-neumorphic #universal-search-input,
body.theme-neumorphic .modern-pill-search-input:focus,
body.theme-neumorphic #universal-search-input:focus,
body.theme-neumorphic .modern-pill-search-input:active,
body.theme-neumorphic #universal-search-input:active {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  border-radius: 9999px !important;
  color: #1e293b !important;
}

/* =========================================================================
   9. BUTTONS (PILL CONTROLS, ACCENT GRADIENT & RAISED/INSET STATES)
   ========================================================================= */
body.theme-neumorphic .btn,
body.theme-neumorphic button.btn-touch,
body.theme-neumorphic .doc-pill-btn,
body.theme-neumorphic .ops-sub-btn,
body.theme-neumorphic .emb-tab-btn,
body.theme-neumorphic .bmet-filter-btn {
  border-radius: 8px !important;
  border: none !important;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
  font-weight: 600 !important;
}

body.theme-neumorphic .btn-primary,
body.theme-neumorphic .btn-success {
  background: var(--nm-accent-gradient) !important;
  color: #ffffff !important;
  box-shadow: -4px -4px 10px var(--nm-shadow-light), 4px 4px 12px rgba(37, 99, 235, 0.4) !important;
}

body.theme-neumorphic .btn-primary:hover,
body.theme-neumorphic .btn-success:hover {
  background: var(--nm-accent-gradient-hover) !important;
  transform: translateY(-2px) !important;
  box-shadow: -5px -5px 12px var(--nm-shadow-light), 5px 5px 16px rgba(37, 99, 235, 0.5) !important;
}

body.theme-neumorphic .btn-primary:active,
body.theme-neumorphic .btn-success:active {
  box-shadow: inset 3px 3px 6px rgba(0, 0, 0, 0.25), inset -3px -3px 6px rgba(255, 255, 255, 0.3) !important;
  transform: translateY(0) !important;
}

body.theme-neumorphic .btn-secondary,
body.theme-neumorphic .btn-outline,
body.theme-neumorphic .btn-ghost {
  background: var(--nm-surface) !important;
  color: var(--nm-text) !important;
  box-shadow: var(--nm-raised-sm) !important;
}

body.theme-neumorphic .btn-secondary:hover,
body.theme-neumorphic .btn-outline:hover {
  box-shadow: var(--nm-raised-card) !important;
  transform: translateY(-2px) !important;
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .btn-secondary:active,
body.theme-neumorphic .btn-outline:active {
  box-shadow: var(--nm-inset-sm) !important;
  transform: translateY(0) !important;
}

/* Sub-Navigation Tabs & Filter Pills */
body.theme-neumorphic .doc-switcher-pills {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.7) !important;
  box-shadow: var(--nm-inset) !important;
  padding: 6px !important;
  gap: 8px !important;
}

body.theme-neumorphic .doc-pill-btn {
  background: var(--nm-surface) !important;
  color: var(--nm-text) !important;
  box-shadow: var(--nm-raised-sm) !important;
  border-radius: 10px !important;
  padding: 10px 20px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  border: 1.5px solid transparent !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .doc-pill-btn:hover {
  box-shadow: var(--nm-raised-card) !important;
  transform: translateY(-2px) !important;
}

body.theme-neumorphic .ops-pill-pax.active {
  background: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(37, 99, 235, 0.45) !important;
}

body.theme-neumorphic .ops-pill-prof.active {
  background: linear-gradient(135deg, #7C3AED 0%, #6D28D9 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(124, 58, 237, 0.45) !important;
}

body.theme-neumorphic .ops-pill-visa.active {
  background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(5, 150, 105, 0.45) !important;
}

body.theme-neumorphic .ops-pill-unlinked.active {
  background: linear-gradient(135deg, #D97706 0%, #B45309 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(217, 119, 6, 0.45) !important;
}

body.theme-neumorphic .ops-pill-dir.active {
  background: linear-gradient(135deg, #0D9488 0%, #0F766E 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(13, 148, 136, 0.45) !important;
}

body.theme-neumorphic .emb-pill-single.active {
  background: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(37, 99, 235, 0.45) !important;
}

body.theme-neumorphic .emb-pill-batch.active {
  background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(5, 150, 105, 0.45) !important;
}

body.theme-neumorphic .emb-pill-history.active {
  background: linear-gradient(135deg, #D97706 0%, #B45309 100%) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 12px rgba(217, 119, 6, 0.45) !important;
}

/* Status Pills & Badges */
body.theme-neumorphic .res-pill,
body.theme-neumorphic .badge,
body.theme-neumorphic .badge-status {
  border-radius: 6px !important;
  border: none !important;
  box-shadow: -2px -2px 5px var(--nm-shadow-light), 2px 2px 5px var(--nm-shadow-dark-subtle) !important;
}

/* =========================================================================
   10. DATA TABLES & MATRICES
   ========================================================================= */
body.theme-neumorphic .data-table-wrap,
body.theme-neumorphic .table-container,
body.theme-neumorphic .table-wrap {
  background: var(--nm-surface) !important;
  border-radius: 16px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
  overflow: hidden !important;
}

body.theme-neumorphic .data-table th {
  background: #DEE5F0 !important;
  color: var(--nm-text-muted) !important;
  border-bottom: 1px solid rgba(166, 180, 200, 0.4) !important;
  font-weight: 700 !important;
}

body.theme-neumorphic .data-table td {
  border-bottom: 1px solid rgba(166, 180, 200, 0.25) !important;
  color: var(--nm-text) !important;
}

body.theme-neumorphic .data-table tbody tr:hover td {
  background: rgba(37, 99, 235, 0.05) !important;
}

/* =========================================================================
   11. MODAL DIALOGS & OVERLAYS
   ========================================================================= */
body.theme-neumorphic .modal-box,
body.theme-neumorphic .modal-content {
  background: var(--nm-surface) !important;
  border-radius: 18px !important;
  border: none !important;
  box-shadow: var(--nm-raised-lg) !important;
}

body.theme-neumorphic .modal-header {
  border-bottom: 1px solid rgba(166, 180, 200, 0.3) !important;
}

body.theme-neumorphic .modal-footer {
  border-top: 1px solid rgba(166, 180, 200, 0.3) !important;
}

/* =========================================================================
   12. BRANDED LANDING & LOGIN SCREEN OVERLAY
   ========================================================================= */
body.theme-neumorphic .landing-login-overlay {
  background: var(--nm-bg) !important;
}

body.theme-neumorphic .landing-login-card {
  background: var(--nm-surface) !important;
  border-radius: 18px !important;
  border: none !important;
  box-shadow: -12px -12px 28px var(--nm-shadow-light), 12px 12px 28px var(--nm-shadow-dark) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.theme-neumorphic .landing-brand-logo-img {
  filter: drop-shadow(0 4px 14px var(--nm-shadow-dark-subtle)) !important;
}

body.theme-neumorphic .landing-brand-title {
  color: var(--nm-text) !important;
}

body.theme-neumorphic .landing-brand-tag {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 6px !important;
  box-shadow: var(--nm-inset-sm) !important;
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .landing-welcome-sub {
  color: var(--nm-text-muted) !important;
}

body.theme-neumorphic .profile-card {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
}

body.theme-neumorphic .profile-card:hover {
  box-shadow: var(--nm-raised-card-hover) !important;
  transform: translateY(-4px) !important;
}

body.theme-neumorphic .profile-card.selected-active {
  box-shadow: var(--nm-inset), 0 0 0 2px var(--nm-primary) !important;
}

body.theme-neumorphic .profile-name {
  color: var(--nm-text) !important;
}

body.theme-neumorphic .pin-entry-container {
  background: var(--nm-surface) !important;
  border-radius: 14px !important;
  border: none !important;
  box-shadow: var(--nm-inset) !important;
}

body.theme-neumorphic .pin-input-field {
  background: var(--nm-surface) !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255, 255, 255, 0.7) !important;
  box-shadow: var(--nm-inset) !important;
  color: var(--nm-text) !important;
}

body.theme-neumorphic .landing-dev-badge {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 8px !important;
  box-shadow: var(--nm-raised-sm) !important;
}

body.theme-neumorphic .landing-dev-badge:hover {
  box-shadow: var(--nm-raised-card) !important;
}

/* =========================================================================
   13. DATA VISUALIZATION & 3D CLAYMORPHIC SUMMARY ICONS
   ========================================================================= */
body.theme-neumorphic .stat-card-icon,
body.theme-neumorphic .search-inner-icon,
body.theme-neumorphic .icon-clay {
  filter: drop-shadow(0 4px 6px rgba(166, 180, 200, 0.6)) !important;
}

body.theme-neumorphic svg path,
body.theme-neumorphic svg line,
body.theme-neumorphic svg polyline {
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* Mobile Bottom Nav in Neumorphic Theme */
body.theme-neumorphic .mobile-bottom-nav {
  background: var(--nm-surface) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.6) !important;
  box-shadow: 0 -6px 16px var(--nm-shadow-dark-subtle) !important;
}

body.theme-neumorphic .mob-tab-btn.active {
  color: var(--nm-primary) !important;
}


/* =========================================================================
   14. UNIFIED PASSENGER CARDS (NEUMORPHIC SOFT UI)
   ========================================================================= */
body.theme-neumorphic .unified-passengers-container {
  gap: 18px !important;
}

body.theme-neumorphic .unified-pax-card {
  background: var(--nm-surface) !important;
  border-radius: 16px !important;
  border: none !important;
  box-shadow: var(--nm-raised-card) !important;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.theme-neumorphic .unified-pax-card:hover {
  box-shadow: var(--nm-raised-card-hover) !important;
  transform: translateY(-2px) !important;
}

body.theme-neumorphic .pax-index-badge {
  background: var(--nm-surface) !important;
  border-radius: 6px !important;
  box-shadow: var(--nm-inset-sm) !important;
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .pax-passport-link {
  background: var(--nm-surface) !important;
  border: none !important;
  border-radius: 6px !important;
  box-shadow: var(--nm-raised-sm) !important;
  color: var(--nm-primary) !important;
}

body.theme-neumorphic .pax-passport-link:hover {
  background: var(--nm-accent-gradient) !important;
  color: #ffffff !important;
  box-shadow: -2px -2px 6px var(--nm-shadow-light), 2px 2px 10px rgba(37, 99, 235, 0.45) !important;
}

body.theme-neumorphic .pax-status-box {
  background: var(--nm-surface) !important;
  border-radius: 10px !important;
  border: none !important;
  box-shadow: var(--nm-inset-sm) !important;
}

body.theme-neumorphic .pax-status-box:hover {
  box-shadow: var(--nm-inset) !important;
}

body.theme-neumorphic .pax-status-label {
  color: var(--nm-text-muted) !important;
}

body.theme-neumorphic .pax-card-actions .btn {
  border-radius: 8px !important;
}
