/**
 * ============================================================================
 * DJASSA AUTO - MASTER RESPONSIVE ENGINE & DESIGN SYSTEM (v5.5.0)
 * Universal Viewport Matrix: 320px | 360px | 375px | 390px | 414px | 430px | 480px | 600px | 768px | 820px | 1024px | 1280px | 1440px | 1920px+
 * Fully Rebuilt for Admin Dashboard, User Accounts, Listings, Modals, Tables, Forms, Typography & Glassmorphism.
 * ============================================================================
 */

/* ==========================================================================
   1. UNIVERSAL BOX-SIZING & ROOT VIEWPORT SAFEGUARDS (ALL SCREENS)
   ========================================================================== */
*,
*::before,
*::after {
  box-sizing: border-box !important;
}

:root {
  --mobile-nav-height: 64px;
  --admin-sidebar-width: 280px;
  --touch-target-min: 44px;
  --safe-area-inset-top: env(safe-area-inset-top, 0px);
  --safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);
  --safe-area-inset-left: env(safe-area-inset-left, 0px);
  --safe-area-inset-right: env(safe-area-inset-right, 0px);
}

html {
  box-sizing: border-box !important;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: clip !important;
  scroll-behavior: smooth;
  color-scheme: dark !important;
}

body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: clip !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 100vh;
  min-height: 100dvh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: #000000 !important;
  color: #FFFFFF !important;
}

img, video, canvas, svg, iframe, object, embed {
  max-width: 100% !important;
  height: auto;
  box-sizing: border-box !important;
}

/* Fluid Text Wrapping & Overflow Prevention */
h1, h2, h3, h4, h5, h6, p, span, a, label, li, td, th, div {
  overflow-wrap: break-word !important;
  word-break: break-word !important;
}

/* Mobile Menu Safety Guarantee */
.mobile-menu {
  display: none !important;
}
.mobile-menu.active {
  display: flex !important;
}

.text-truncate-single {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Structural Layout Bounds */
.site-wrapper,
.page-wrapper,
.layout-wrapper,
.details-wrapper,
.recherche-wrapper,
.profile-wrapper,
.dashboard-container,
.auth-container,
.main-workspace,
main,
section,
header,
footer {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

.main-workspace {
  box-sizing: border-box !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100vh;
}

/* Standard Responsive Containers */
.container {
  width: 100% !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(14px, 3.5vw, 32px) !important;
  padding-right: clamp(14px, 3.5vw, 32px) !important;
  box-sizing: border-box !important;
  position: relative;
}

.content-container {
  width: 100% !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: clamp(16px, 2.5vw, 32px) clamp(14px, 2.5vw, 32px) !important;
  box-sizing: border-box !important;
  position: relative;
  flex: 1;
}

/* Global Grid & Flex Item Blowout Prevention */
.details-grid > *,
.acheter-grid-layout > *,
.recherche-grid-layout > *,
.hero-grid > *,
.pro-bento > *,
.reports-grid > *,
.dashboard-split-layout > *,
.form-grid-layout > *,
.recap-grid-split > *,
.search-filters-grid > *,
.advanced-filters-grid > *,
.users-toolbar-row > *,
.view-header > *,
.kpis-grid > *,
.system-health-grid > * {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* ==========================================================================
   2. UNIVERSAL RESPONSIVE DATA TABLE ENGINE
   ========================================================================== */
.table-responsive,
.table-responsive-wrapper,
.table-container,
.responsive-table-wrap,
.admin-table-container,
.users-table-wrap,
.listings-table-wrap,
.reports-table-wrap,
.payments-table-wrap,
.audit-logs-table-wrap {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  display: block !important;
  position: relative !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: rgba(16, 17, 22, 0.45) !important;
  margin-bottom: 24px !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(255, 77, 0, 0.5) rgba(255, 255, 255, 0.05) !important;
}

.table-responsive::-webkit-scrollbar,
.admin-table-container::-webkit-scrollbar,
.table-container::-webkit-scrollbar {
  height: 6px !important;
}

.table-responsive::-webkit-scrollbar-thumb,
.admin-table-container::-webkit-scrollbar-thumb,
.table-container::-webkit-scrollbar-thumb {
  background: var(--accent-orange, #FF4D00) !important;
  border-radius: 4px !important;
}

.table-responsive table,
.admin-table,
.users-table,
.listings-table,
.reports-table,
.payments-table,
.audit-logs-table,
.table-container table {
  width: 100% !important;
  min-width: 680px !important;
  border-collapse: collapse !important;
  text-align: left !important;
  font-size: 0.88rem !important;
  color: #FFFFFF !important;
}

.table-responsive th,
.table-responsive td,
.admin-table th,
.admin-table td {
  padding: 12px 16px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}

.table-responsive th,
.admin-table th {
  background: rgba(24, 26, 36, 0.6) !important;
  font-weight: 700 !important;
  color: var(--text-muted, #9E9EA5) !important;
  font-size: 0.78rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 10 !important;
}

.table-responsive tr:hover td,
.admin-table tr:hover td {
  background: rgba(255, 255, 255, 0.03) !important;
}

/* User / Vehicle mini badge inside tables */
.table-user-cell,
.table-vehicle-cell {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.table-user-avatar,
.table-vehicle-thumb {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.table-actions-cell {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  justify-content: flex-end !important;
}

.table-actions-cell .btn-action,
.table-actions-cell button {
  min-height: 34px !important;
  min-width: 34px !important;
  padding: 6px 10px !important;
  border-radius: 8px !important;
  font-size: 0.8rem !important;
}

/* ==========================================================================
   3. UNIVERSAL MODAL & DRAWER SYSTEM
   ========================================================================== */
.modal,
.modal-overlay,
.cms-modal,
.pro-modal,
.boost-modal,
.garage-modal,
.dealer-modal,
.partner-modal,
.auth-modal,
.edit-modal,
.dialog-backdrop {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: rgba(0, 0, 0, 0.8) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  backdrop-filter: blur(16px) !important;
  z-index: 99999 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(12px, 3vw, 24px) !important;
  box-sizing: border-box !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.modal.active,
.modal.open,
.modal-overlay.active,
.modal-overlay.open,
.cms-modal.active,
.cms-modal.open,
.pro-modal.active,
.boost-modal.active,
.garage-modal.active,
.dealer-modal.active,
.partner-modal.active,
.edit-modal.active {
  display: flex !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.modal-box,
.modal-content,
.glass-modal,
.dialog-content,
.cms-modal-content {
  background: rgba(18, 20, 28, 0.92) !important;
  -webkit-backdrop-filter: blur(28px) !important;
  backdrop-filter: blur(28px) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
  width: 100% !important;
  max-width: min(620px, calc(100vw - 24px)) !important;
  max-height: calc(100vh - 36px) !important;
  max-height: calc(100dvh - 36px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  padding: clamp(18px, 4vw, 32px) !important;
  position: relative !important;
  box-sizing: border-box !important;
  transform: translateY(20px) scale(0.98);
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.modal.active .modal-box,
.modal.open .modal-box,
.modal.active .modal-content,
.modal.open .modal-content,
.cms-modal.active .cms-modal-content {
  transform: translateY(0) scale(1) !important;
}

.modal-header,
.modal-title-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding-bottom: 14px !important;
  width: 100% !important;
}

.modal-header h2,
.modal-header h3,
.modal-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: clamp(1.15rem, 3.5vw, 1.45rem) !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  margin: 0 !important;
}

.modal-close-btn,
.close-modal-btn {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 50% !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--text-muted, #9E9EA5) !important;
  font-size: 1.1rem !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  flex-shrink: 0 !important;
}

.modal-close-btn:hover,
.close-modal-btn:hover {
  background: rgba(255, 77, 0, 0.2) !important;
  color: var(--accent-orange, #FF4D00) !important;
  border-color: var(--accent-orange, #FF4D00) !important;
}

.modal-footer,
.modal-actions-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin-top: 24px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  flex-wrap: wrap !important;
  width: 100% !important;
}

/* ==========================================================================
   4. DESKTOP & WIDE SCREENS (min-width: 1025px)
   ========================================================================== */
@media (min-width: 1025px) {
  .dashboard-container {
    display: flex !important;
    min-height: 100vh !important;
    position: relative !important;
  }

  .sidebar {
    width: var(--admin-sidebar-width, 280px) !important;
    background: rgba(16, 17, 22, 0.35) !important;
    -webkit-backdrop-filter: blur(24px) !important;
    backdrop-filter: blur(24px) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 24px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1000 !important;
    transform: none !important;
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.3) !important;
  }

  .sidebar-backdrop {
    display: none !important;
  }

  .main-workspace {
    margin-left: var(--admin-sidebar-width, 280px) !important;
    width: calc(100% - var(--admin-sidebar-width, 280px)) !important;
    max-width: calc(100% - var(--admin-sidebar-width, 280px)) !important;
  }

  .topbar {
    height: 80px !important;
    background: rgba(16, 17, 22, 0.4) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    backdrop-filter: blur(16px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 0 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 900 !important;
    width: 100% !important;
  }

  .mobile-header-bar {
    display: none !important;
  }

  .navbar {
    width: 100% !important;
    max-width: 100% !important;
    height: 84px !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    transform: none !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: rgba(8, 9, 13, 0.88) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    backdrop-filter: blur(20px) !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4) !important;
    z-index: 1000 !important;
  }

  .nav-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 100% !important;
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
  }

  .dashboard-split-layout {
    display: grid !important;
    grid-template-columns: 1.5fr 1fr !important;
    gap: 30px !important;
    margin-bottom: 40px !important;
    align-items: start !important;
  }

  .hero-grid {
    display: grid !important;
    grid-template-columns: 1fr 1.05fr !important;
    gap: 32px !important;
    align-items: center !important;
    margin-bottom: 28px !important;
    width: 100% !important;
  }

  .details-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 380px) !important;
    gap: 32px !important;
    align-items: start !important;
  }

  .acheter-grid-layout,
  .recherche-grid-layout {
    display: grid !important;
    grid-template-columns: 280px minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
  }

  .sidebar-filters-card {
    width: 100% !important;
    max-width: 280px !important;
    position: sticky !important;
    top: 104px !important;
    transform: none !important;
  }
}

/* ==========================================================================
   5. TABLET & LAPTOP REFLOW (max-width: 1024px)
   ========================================================================== */
@media (max-width: 1024px) {
  .navbar {
    height: var(--mobile-nav-height, 64px) !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    background: rgba(8, 9, 13, 0.96) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    display: flex !important;
    align-items: center !important;
    z-index: 2000 !important;
  }

  .navbar .nav-links,
  .navbar .nav-actions,
  .nav-links,
  .nav-actions {
    display: none !important;
  }

  .mobile-toggle,
  .hamburger-toggle-btn,
  #mobileMenuBtn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 10px !important;
    color: #FFFFFF !important;
    font-size: 1.25rem !important;
    cursor: pointer !important;
    z-index: 2001 !important;
  }

  /* Admin & User Dashboard Sidebar Off-Canvas Engine */
  .sidebar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: min(300px, 84vw) !important;
    max-width: 100% !important;
    background: rgba(14, 16, 24, 0.96) !important;
    -webkit-backdrop-filter: blur(28px) !important;
    backdrop-filter: blur(28px) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
    padding: 24px 18px 40px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 2200 !important;
    transform: translateX(-105%) !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 10px 0 50px rgba(0, 0, 0, 0.9) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .sidebar.open,
  .sidebar.active {
    transform: translateX(0) !important;
  }

  .sidebar-backdrop {
    display: none;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.75) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    backdrop-filter: blur(8px) !important;
    z-index: 2150 !important;
    opacity: 0;
    transition: opacity 0.3s ease !important;
    pointer-events: none;
  }

  .sidebar-backdrop.open,
  .sidebar-backdrop.active {
    display: block !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .main-workspace {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .topbar {
    display: none !important;
  }

  .mobile-header-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 16px !important;
    height: var(--mobile-nav-height, 64px) !important;
    background: rgba(14, 16, 24, 0.94) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1500 !important;
    width: 100% !important;
  }

  .dashboard-split-layout,
  .details-grid,
  .acheter-grid-layout,
  .recherche-grid-layout {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .hero-section,
  .acheter-layout-section,
  .recherche-layout-section,
  .vendre-layout-section {
    padding-top: calc(var(--mobile-nav-height, 64px) + 16px) !important;
  }

  .breadcrumbs {
    padding-top: calc(var(--mobile-nav-height, 64px) + 12px) !important;
  }

  /* Catalog Slide-out Filter Sidebar on Tablet & Mobile */
  .sidebar-filters-card {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    transform: translateX(-105%) !important;
    width: min(340px, 86vw) !important;
    max-width: 100% !important;
    padding: 24px 20px 80px 20px !important;
    height: 100vh !important;
    height: 100dvh !important;
    z-index: 99999 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border-radius: 0 !important;
    background: #11131C !important;
    border-right: 1px solid rgba(255, 255, 255, 0.15) !important;
    box-shadow: 10px 0 50px rgba(0, 0, 0, 0.95) !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .sidebar-filters-card.active,
  .sidebar-filters-card.open {
    transform: translateX(0) !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .mobile-filter-toggle {
    display: inline-flex !important;
  }
}

/* ==========================================================================
   6. SMARTPHONE & PHABLET ENGINE (max-width: 768px)
   ========================================================================== */
@media (max-width: 768px) {
  /* KPI Cards Reflow */
  .kpis-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    margin-bottom: 20px !important;
  }

  .kpi-card, .kpi-card.glass-layer-1 {
    padding: 16px 14px !important;
    border-radius: 14px !important;
  }

  .kpi-num {
    font-size: clamp(1.25rem, 5vw, 1.55rem) !important;
  }

  .kpi-label-row {
    font-size: 0.72rem !important;
  }

  /* Admin Header & Toolbar Stacking */
  .view-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-bottom: 18px !important;
  }

  .view-title-wrap h1 {
    font-size: clamp(1.25rem, 4.5vw, 1.6rem) !important;
  }

  .users-toolbar-row,
  .admin-toolbar-row,
  .table-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .users-filters-group,
  .admin-filters-group {
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 8px !important;
  }

  .users-search-box,
  .users-filter-select,
  .filter-select,
  .search-input-wrap {
    width: 100% !important;
    flex: 1 1 auto !important;
  }

  /* Horizontally Scrollable Tab Bars on Mobile */
  .users-tabs-bar,
  .profile-tabs-bar,
  .dashboard-tabs,
  .nav-tabs-scroll {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 8px !important;
    padding-bottom: 10px !important;
    margin-bottom: 18px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    scrollbar-width: none !important;
  }

  .users-tabs-bar::-webkit-scrollbar,
  .profile-tabs-bar::-webkit-scrollbar,
  .dashboard-tabs::-webkit-scrollbar {
    display: none !important;
  }

  .tab-btn,
  .profile-tab-btn,
  .users-tab-btn {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    padding: 8px 14px !important;
    font-size: 0.82rem !important;
  }

  /* Form Grid System on Mobile */
  .form-grid-layout,
  .form-grid,
  .deposer-grid,
  .search-filters-grid,
  .advanced-filters-grid,
  .system-health-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
  }

  .form-group-wrap.span-2,
  .form-group-wrap.span-3,
  .form-group.full {
    grid-column: span 1 !important;
  }

  /* Mobile App Cards Container */
  .app-card-wrapper,
  .dashboard-section-box {
    padding: 16px 14px !important;
    border-radius: 16px !important;
    margin-bottom: 16px !important;
  }

  /* Vehicle Listings Grid */
  .listings-grid,
  .features-grid,
  .garages-grid,
  .dealers-grid,
  .similar-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* Chat & Messages UI Split Pane Reflow */
  .messages-wrapper,
  .chat-split-container {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 500px !important;
  }

  .conversations-sidebar {
    width: 100% !important;
    max-height: 280px !important;
    overflow-y: auto !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  }

  .chat-main-area {
    width: 100% !important;
    flex: 1 !important;
  }

  /* Touch Interactive Targets */
  button,
  .btn-pill,
  .filter-select,
  .filter-input,
  input.form-control,
  select.form-control,
  .nav-link,
  .action-circle-btn,
  .menu-item {
    min-height: var(--touch-target-min, 44px) !important;
  }

  /* Universal Input font size >= 16px for iOS Safari Zoom Prevention */
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="number"],
  input[type="tel"],
  input[type="search"],
  select,
  textarea {
    font-size: 16px !important;
  }
}

/* ==========================================================================
   7. COMPACT SMARTPHONES (max-width: 480px)
   ========================================================================== */
@media (max-width: 480px) {
  .container,
  .content-container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .kpis-grid {
    grid-template-columns: 1fr !important;
  }

  .box-title-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }

  .hero-search-inline-grid {
    grid-template-columns: 1fr !important;
  }

  .hero-search-inline-grid .btn-col {
    grid-column: span 1 !important;
  }

  .modal-box,
  .modal-content,
  .glass-modal,
  .cms-modal-content {
    padding: 16px 12px !important;
    border-radius: 16px !important;
    max-width: calc(100vw - 16px) !important;
  }

  .modal-footer,
  .modal-actions-row {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .modal-footer button,
  .modal-actions-row button,
  .modal-footer .btn-pill,
  .modal-actions-row .btn-pill {
    width: 100% !important;
    justify-content: center !important;
  }

  .hero-title {
    font-size: clamp(1.4rem, 6vw, 1.8rem) !important;
  }

  .info-title {
    font-size: clamp(1.2rem, 5vw, 1.45rem) !important;
  }

  .info-price {
    font-size: clamp(1.3rem, 5.5vw, 1.6rem) !important;
  }
}

/* ==========================================================================
   8. ULTRA-NARROW & FOLDABLE PHONES (max-width: 360px & 320px)
   ========================================================================== */
@media (max-width: 360px) {
  .btn-pill,
  button.btn-pill {
    padding: 0 10px !important;
    font-size: 0.78rem !important;
  }

  .hero-floating-pill,
  .hero-floating-pill.glass-layer-3 {
    padding: 6px 10px !important;
    font-size: 0.75rem !important;
  }

  .sidebar-logo {
    font-size: 1.15rem !important;
  }

  .user-display-name {
    font-size: 0.78rem !important;
  }
}

/* ==========================================================================
   9. GLASSMORPHISM PERFORMANCE OPTIMIZATION & FALLBACKS
   ========================================================================== */
.glass-layer-1,
.glass-panel,
.glass-card,
.car-card,
.bento-card,
.dashboard-card,
.filter-card,
.kpi-card,
.dashboard-section-box {
  will-change: transform, opacity;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Graceful Fallback for browsers / devices with low backdrop-filter support */
@supports not ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) {
  .glass-layer-1,
  .glass-panel,
  .glass-card,
  .sidebar,
  .topbar,
  .mobile-header-bar,
  .modal-box,
  .modal-content,
  .search-box-glass,
  .dashboard-section-box {
    background-color: rgba(14, 16, 24, 0.98) !important;
  }
}

/* Decorative Background Glow Spheres - Ensure zero pointer-event blockage */
.glow-radial-dash,
.glow-radial-dash-left,
.glow-radial-dashboard,
.glow-hero-top,
#particlesCanvas,
.hero-visual-glow-ring,
.arc-light-top {
  pointer-events: none !important;
  user-select: none !important;
}

/* ==========================================================================
   10. ACCESSIBILITY & PREFERS-REDUCED-MOTION
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ==========================================================================
   11. RESPONSIVE SUPPLEMENT v5.5.1 — Additive Viewport Matrix Fixes
   Fills gaps left by Sections 4-10 above.
   ALL rules are max-width-scoped and additive — zero desktop overrides.
   Breakpoints: 1024px | 768px | 600px | 480px | 360px | 320px
   ========================================================================== */

/* --------------------------------------------------------------------------
   11.A  GLOBAL SAFETY — Horizontal Overflow Containment
   -------------------------------------------------------------------------- */
.site-wrapper,
.page-wrapper,
.layout-wrapper,
.hero-section,
.acheter-layout-section,
.vendre-layout-section,
.recherche-wrapper,
.profile-wrapper,
.auth-container,
.details-wrapper,
#homepageSectionsWrapper,
#homepageCustomSectionsContainer {
  overflow-x: hidden !important;
}

.car-thumb,
.deposer-img,
.dealer-img,
.garage-img,
.pro-image {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* --------------------------------------------------------------------------
   11.B  MAX-WIDTH: 1024px — Mobile Menu Fix + Touch Targets
   Critical: .mobile-menu uses top:84px (desktop nav height).
   After navbar collapses to --mobile-nav-height (64px), menu overlaps it.
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {

  /* FIX 1: Align mobile menu to the actual collapsed navbar height */
  .mobile-menu {
    top: var(--mobile-nav-height, 64px) !important;
    background: rgba(8, 9, 13, 0.97) !important;
    -webkit-backdrop-filter: blur(24px) !important;
    backdrop-filter: blur(24px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.85) !important;
    z-index: 1999 !important;
  }

  /* FIX 2: Touch targets on mobile menu links */
  .mobile-menu .nav-link {
    display: flex !important;
    align-items: center !important;
    min-height: var(--touch-target-min, 44px) !important;
    padding: 10px 14px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .mobile-menu .nav-link:hover {
    background: rgba(255, 77, 0, 0.08) !important;
    color: var(--accent-orange, #FF4D00) !important;
  }

  .mobile-menu .btn-pill {
    min-height: var(--touch-target-min, 44px) !important;
    width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  /* FIX 3: Listings grid min-width guard for tablet zone (769-1024px) */
  .listings-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(360px, 100%), 1fr)) !important;
  }

  /* Section spacing: reduce from 100px at tablet */
  section {
    padding: 64px 0 !important;
  }

  .hero-section {
    padding-top: calc(var(--mobile-nav-height, 64px) + 20px) !important;
    padding-bottom: 24px !important;
  }

}

/* --------------------------------------------------------------------------
   11.C  MAX-WIDTH: 768px — Sections, Cards, Pro-Bento, Footer
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {

  section {
    padding: 40px 0 !important;
  }

  .hero-section {
    padding-top: calc(var(--mobile-nav-height, 64px) + 12px) !important;
    padding-bottom: 16px !important;
  }

  /* FIX 4: Override sections with inline style="padding:80px 0" */
  #recherches {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  .section-header {
    margin-bottom: 28px !important;
  }

  .section-title {
    font-size: clamp(1.55rem, 5.5vw, 2.2rem) !important;
    letter-spacing: -0.5px !important;
    line-height: 1.15 !important;
  }

  .section-desc {
    font-size: 0.9rem !important;
    margin-top: 8px !important;
  }

  /* FIX 5: card-badges wrap prevents multi-badge overflow */
  .card-badges {
    flex-wrap: wrap !important;
    gap: 4px !important;
    max-width: calc(100% - 54px) !important;
    align-items: flex-start !important;
  }

  .badge-tag {
    font-size: 0.65rem !important;
    padding: 4px 8px !important;
    white-space: nowrap !important;
  }

  .car-body {
    padding: 18px 16px !important;
  }

  .car-title {
    font-size: 1.05rem !important;
  }

  .car-price {
    font-size: 1.25rem !important;
  }

  /* FIX 6: Pro bento 768px override */
  .pro-bento {
    grid-template-columns: 1fr !important;
    padding: 32px 24px !important;
    gap: 28px !important;
  }

  .pro-image {
    max-height: 260px !important;
    width: 100% !important;
    object-fit: cover !important;
    border-radius: 16px !important;
  }

  .pro-list {
    gap: 12px !important;
    margin: 18px 0 24px 0 !important;
  }

  .feature-card,
  .feature-card.glass-layer-1 {
    padding: 26px 22px !important;
  }

  .feature-num {
    font-size: 2.2rem !important;
    margin-bottom: 12px !important;
  }

  .feature-title {
    font-size: 1.15rem !important;
  }

  .garage-card,
  .garage-card.glass-layer-3 {
    padding: 16px !important;
    gap: 14px !important;
  }

  .garage-img {
    width: 64px !important;
    height: 64px !important;
    flex-shrink: 0 !important;
  }

  .garage-name {
    font-size: 1rem !important;
  }

  .deposer-body {
    padding: 22px 20px !important;
  }

  .deposer-title {
    font-size: clamp(1.2rem, 4vw, 1.4rem) !important;
  }

  .dealer-name {
    font-size: 1.1rem !important;
  }

  .dealer-body {
    padding: 18px !important;
  }

  .quick-action-card,
  .quick-action-card.glass-layer-2 {
    padding: 18px 16px !important;
    gap: 14px !important;
  }

  .qa-icon-wrap {
    width: 52px !important;
    height: 52px !important;
    font-size: 1.3rem !important;
    flex-shrink: 0 !important;
  }

  .qa-title {
    font-size: 1.1rem !important;
  }

  .qa-desc {
    font-size: 0.82rem !important;
  }

  .category-pills {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 8px !important;
    margin-bottom: 22px !important;
    gap: 8px !important;
  }

  .pill-btn {
    padding: 8px 18px !important;
    font-size: 0.86rem !important;
    white-space: nowrap !important;
  }

  .btn-load-more {
    padding: 12px 28px !important;
    font-size: 0.9rem !important;
    width: 100% !important;
    justify-content: center !important;
  }

  .pagination-container {
    margin-top: 28px !important;
    gap: 10px !important;
  }

  .pagination-info {
    font-size: 0.82rem !important;
    text-align: center !important;
  }

  /* Footer: two-column above 480px */
  .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 28px 20px !important;
    margin-bottom: 36px !important;
  }

  .footer-brand {
    grid-column: span 2 !important;
  }

  footer {
    padding: 64px 0 36px 0 !important;
  }

  .footer-col-title {
    font-size: 1rem !important;
    margin-bottom: 16px !important;
  }

  .footer-links {
    gap: 10px !important;
  }

  .footer-links a {
    font-size: 0.86rem !important;
  }

  .hero-floating-pill,
  .hero-floating-pill.glass-layer-3 {
    overflow: hidden !important;
  }

  .hero-floating-pill > div,
  .hero-floating-pill.glass-layer-3 > div {
    min-width: 0 !important;
    overflow: hidden !important;
  }

}

/* --------------------------------------------------------------------------
   11.D  MAX-WIDTH: 600px — Foldable Devices and Landscape Phone Gap
   Covers the 480-768px orphan zone with no previous breakpoint.
   -------------------------------------------------------------------------- */
@media (max-width: 600px) {

  .dealers-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }

  .garages-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .features-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
  }

  section {
    padding: 36px 0 !important;
  }

  .section-title {
    font-size: clamp(1.45rem, 5.8vw, 1.9rem) !important;
  }

  .qa-icon-wrap {
    width: 48px !important;
    height: 48px !important;
  }

  .deposer-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

}

/* --------------------------------------------------------------------------
   11.E  MAX-WIDTH: 480px — Toast Fix, Card Badges, Footer Collapse
   -------------------------------------------------------------------------- */
@media (max-width: 480px) {

  /* FIX 3: Toast full-width to prevent right-side clipping on narrow screens */
  .toast-notification {
    right: 12px !important;
    left: 12px !important;
    bottom: 16px !important;
    width: auto !important;
    max-width: calc(100vw - 24px) !important;
    padding: 12px 16px !important;
    font-size: 0.86rem !important;
    gap: 10px !important;
    border-radius: 14px !important;
  }

  section {
    padding: 32px 0 !important;
  }

  .section-header {
    margin-bottom: 20px !important;
  }

  .section-title {
    font-size: clamp(1.4rem, 6vw, 1.8rem) !important;
    letter-spacing: -0.3px !important;
  }

  .section-tag {
    font-size: 0.75rem !important;
  }

  .dealers-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    margin-bottom: 24px !important;
  }

  .footer-brand {
    grid-column: auto !important;
  }

  footer {
    padding: 48px 0 28px 0 !important;
  }

  .footer-col-title {
    font-size: 0.95rem !important;
    margin-bottom: 12px !important;
  }

  .footer-links {
    gap: 8px !important;
  }

  .footer-links a {
    font-size: 0.84rem !important;
  }

  .footer-bottom {
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
    text-align: center !important;
    padding-top: 20px !important;
    font-size: 0.8rem !important;
  }

  .mobile-menu {
    padding: 16px 14px !important;
    gap: 10px !important;
  }

  .car-body {
    padding: 14px !important;
  }

  .car-title {
    font-size: 1rem !important;
  }

  .car-price {
    font-size: 1.15rem !important;
  }

  .car-location {
    font-size: 0.78rem !important;
  }

  .car-specs {
    gap: 8px !important;
    padding: 10px 0 !important;
    margin-bottom: 14px !important;
  }

  .spec-lbl {
    font-size: 0.66rem !important;
  }

  .spec-val {
    font-size: 0.84rem !important;
  }

  .feature-card,
  .feature-card.glass-layer-1 {
    padding: 20px 16px !important;
  }

  .feature-num {
    font-size: 1.9rem !important;
    margin-bottom: 10px !important;
  }

  .feature-title {
    font-size: 1.05rem !important;
  }

  .feature-desc {
    font-size: 0.86rem !important;
  }

  .deposer-body {
    padding: 18px 14px !important;
  }

  .deposer-title {
    font-size: 1.2rem !important;
    letter-spacing: -0.3px !important;
  }

  .deposer-desc {
    font-size: 0.86rem !important;
    margin-bottom: 18px !important;
  }

  .quick-action-card,
  .quick-action-card.glass-layer-2 {
    padding: 14px 12px !important;
    gap: 12px !important;
  }

  .qa-icon-wrap {
    width: 46px !important;
    height: 46px !important;
    font-size: 1.2rem !important;
    border-radius: 12px !important;
  }

  .qa-title {
    font-size: 1rem !important;
    margin-bottom: 2px !important;
  }

  .qa-desc {
    font-size: 0.78rem !important;
    line-height: 1.35 !important;
  }

  .qa-arrow {
    width: 32px !important;
    height: 32px !important;
    font-size: 0.8rem !important;
  }

  .pro-bento {
    padding: 22px 16px !important;
    gap: 20px !important;
  }

  .pro-image {
    max-height: 200px !important;
  }

  .pro-list {
    gap: 10px !important;
    margin: 14px 0 18px 0 !important;
  }

  .pro-list-item {
    font-size: 0.88rem !important;
  }

  .garage-img {
    width: 56px !important;
    height: 56px !important;
  }

  .garage-name {
    font-size: 0.95rem !important;
  }

  .dealer-name {
    font-size: 1rem !important;
  }

  .dealer-meta {
    font-size: 0.78rem !important;
    margin-bottom: 14px !important;
  }

  .btn-load-more {
    padding: 11px 20px !important;
    font-size: 0.86rem !important;
  }

  .hero-badge-pill {
    font-size: 0.72rem !important;
    padding: 4px 12px !important;
    margin-bottom: 10px !important;
  }

  .hero-stats-row {
    gap: 18px !important;
    flex-wrap: wrap !important;
  }

}

/* --------------------------------------------------------------------------
   11.F  MAX-WIDTH: 360px — Nav, Logo, Typography, Stat Row
   -------------------------------------------------------------------------- */
@media (max-width: 360px) {

  .nav-container {
    padding: 0 14px !important;
  }

  .logo {
    font-size: 1.35rem !important;
    gap: 6px !important;
  }

  .logo-brand-icon {
    width: 30px !important;
    height: 30px !important;
    margin-right: 4px !important;
  }

  .container,
  .content-container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .section-title {
    font-size: clamp(1.3rem, 7vw, 1.55rem) !important;
    letter-spacing: -0.2px !important;
  }

  .section-header {
    margin-bottom: 16px !important;
  }

  section {
    padding: 28px 0 !important;
  }

  .hero-stats-row {
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin-top: 6px !important;
  }

  .hero-stat-num {
    font-size: 1.25rem !important;
  }

  .hero-stat-lbl {
    font-size: 0.68rem !important;
  }

  .car-body {
    padding: 12px !important;
  }

  .car-title {
    font-size: 0.95rem !important;
  }

  .car-price {
    font-size: 1.1rem !important;
  }

  .car-specs {
    gap: 6px !important;
  }

  .spec-lbl {
    font-size: 0.62rem !important;
  }

  .spec-val {
    font-size: 0.8rem !important;
  }

  .car-thumb-wrap {
    height: 200px !important;
  }

  .quick-action-card,
  .quick-action-card.glass-layer-2 {
    padding: 12px 10px !important;
    gap: 10px !important;
  }

  .qa-icon-wrap {
    width: 42px !important;
    height: 42px !important;
    font-size: 1.05rem !important;
    border-radius: 10px !important;
  }

  .qa-title {
    font-size: 0.95rem !important;
  }

  .qa-desc {
    font-size: 0.74rem !important;
  }

  .qa-arrow {
    display: none !important;
  }

  .feature-card,
  .feature-card.glass-layer-1 {
    padding: 18px 14px !important;
  }

  .feature-num {
    font-size: 1.7rem !important;
    margin-bottom: 8px !important;
  }

  .feature-title {
    font-size: 1rem !important;
    margin-bottom: 8px !important;
  }

  .feature-desc {
    font-size: 0.82rem !important;
  }

  .deposer-body {
    padding: 14px 12px !important;
  }

  .deposer-title {
    font-size: 1.1rem !important;
  }

  .deposer-desc {
    font-size: 0.82rem !important;
    margin-bottom: 14px !important;
  }

  .dealer-body {
    padding: 14px !important;
  }

  .dealer-name {
    font-size: 0.95rem !important;
  }

  .garage-img {
    width: 50px !important;
    height: 50px !important;
  }

  .garage-name {
    font-size: 0.9rem !important;
  }

  .pro-bento {
    padding: 18px 12px !important;
    gap: 16px !important;
  }

  .pro-image {
    max-height: 180px !important;
  }

  footer {
    padding: 40px 0 24px 0 !important;
  }

  .footer-col-title {
    font-size: 0.9rem !important;
    margin-bottom: 10px !important;
  }

  .footer-links a {
    font-size: 0.8rem !important;
  }

  .search-box-glass,
  .search-box-glass.glass-layer-1 {
    padding: 12px 10px !important;
    border-radius: 14px !important;
  }

  .modal-box,
  .modal-content,
  .glass-modal,
  .cms-modal-content {
    padding: 16px 12px !important;
    border-radius: 14px !important;
    max-width: calc(100vw - 16px) !important;
  }

  .badge-tag {
    font-size: 0.6rem !important;
    padding: 3px 6px !important;
  }

  .pill-btn {
    padding: 7px 12px !important;
    font-size: 0.8rem !important;
  }

}

/* --------------------------------------------------------------------------
   11.G  MAX-WIDTH: 320px — Ultra-Narrow Micro-Fixes
   Galaxy Fold (closed), iPhone SE (1st gen), small legacy Android devices
   -------------------------------------------------------------------------- */
@media (max-width: 320px) {

  .nav-container {
    padding: 0 10px !important;
  }

  .logo {
    font-size: 1.2rem !important;
    gap: 4px !important;
  }

  .logo-brand-icon {
    width: 26px !important;
    height: 26px !important;
    margin-right: 2px !important;
  }

  .container,
  .content-container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .section-title {
    font-size: clamp(1.2rem, 8vw, 1.4rem) !important;
  }

  section {
    padding: 24px 0 !important;
  }

  .toast-notification {
    right: 8px !important;
    left: 8px !important;
    bottom: 12px !important;
    font-size: 0.82rem !important;
    padding: 10px 12px !important;
    max-width: calc(100vw - 16px) !important;
  }

  .hero-stat-num {
    font-size: 1.15rem !important;
  }

  .hero-stat-lbl {
    font-size: 0.62rem !important;
  }

  .hero-stats-row {
    gap: 10px !important;
  }

  .hero-badge-pill {
    font-size: 0.68rem !important;
    padding: 3px 10px !important;
  }

  .search-box-glass,
  .search-box-glass.glass-layer-1 {
    padding: 10px 8px !important;
  }

  .filter-select {
    height: 40px !important;
    min-height: 40px !important;
    font-size: 0.82rem !important;
    padding: 0 8px !important;
  }

  .mobile-toggle,
  .hamburger-toggle-btn,
  #mobileMenuBtn {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
  }

  .card-fav-btn {
    width: 34px !important;
    height: 34px !important;
    top: 10px !important;
    right: 10px !important;
  }

  .car-body {
    padding: 10px !important;
  }

  .car-title {
    font-size: 0.9rem !important;
  }

  .car-price {
    font-size: 1rem !important;
  }

  .quick-action-card,
  .quick-action-card.glass-layer-2 {
    padding: 10px 8px !important;
    gap: 8px !important;
  }

  .qa-icon-wrap {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    font-size: 0.95rem !important;
    border-radius: 8px !important;
  }

  .qa-title {
    font-size: 0.88rem !important;
  }

  /* Preserve reading hierarchy; desc sacrificed at 320px for density */
  .qa-desc {
    display: none !important;
  }

  .feature-card,
  .feature-card.glass-layer-1 {
    padding: 16px 12px !important;
  }

  .deposer-body {
    padding: 12px 10px !important;
  }

  .deposer-title {
    font-size: 1rem !important;
  }

  .pro-bento {
    padding: 16px 10px !important;
  }

  .modal-box,
  .modal-content,
  .glass-modal,
  .cms-modal-content {
    padding: 14px 10px !important;
    max-width: calc(100vw - 12px) !important;
  }

  .modal-footer,
  .modal-actions-row {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  .modal-footer button,
  .modal-footer .btn-pill,
  .modal-actions-row button,
  .modal-actions-row .btn-pill {
    width: 100% !important;
    justify-content: center !important;
  }

  footer {
    padding: 36px 0 20px 0 !important;
  }

  .footer-col-title {
    font-size: 0.88rem !important;
  }

  .footer-links a {
    font-size: 0.78rem !important;
  }

  .table-responsive th,
  .table-responsive td,
  .admin-table th,
  .admin-table td {
    padding: 8px 10px !important;
    font-size: 0.78rem !important;
  }

}

/* ==========================================================================
   END OF RESPONSIVE SUPPLEMENT v5.5.1
   ========================================================================== */