/* Custom styles for MTX Switch */

[data-theme="default"][data-sidebar="dark"] {
  --vz-vertical-menu-bg: #405189;
  --vz-vertical-menu-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
  --vz-vertical-menu-border: #405189;
}

.bg-soft-primary {
  background-color: rgba(51, 102, 255, 0.12) !important;
}
.bg-soft-secondary {
  background-color: rgba(108, 117, 125, 0.12) !important;
}
.bg-soft-success {
  background-color: rgba(18, 194, 112, 0.12) !important;
}
.bg-soft-info {
  background-color: rgba(9, 162, 204, 0.12) !important;
}
.bg-soft-warning {
  background-color: rgba(255, 193, 7, 0.12) !important;
}
.bg-soft-danger {
  background-color: rgba(255, 69, 96, 0.12) !important;
}
.bg-soft-dark {
  background-color: rgba(33, 37, 41, 0.12) !important;
}
.bg-soft-light {
  background-color: rgba(248, 249, 250, 0.12) !important;
}

.bg-heavy-primary {
  background-color: rgba(51, 102, 255, 0.60) !important;
}

.bg-heavy-secondary {
  background-color: rgba(108, 117, 125, 0.60) !important;
}
  
.bg-heavy-success {
  background-color: rgba(18, 194, 112, 0.60) !important;
}

.bg-heavy-info {
  background-color: rgba(9, 162, 204, 0.60) !important;
}

.bg-heavy-warning {
  background-color: rgba(255, 193, 7, 0.60) !important;
}

.bg-heavy-danger {
  background-color: rgba(255, 69, 96, 0.60) !important;
}

.bg-heavy-dark {
  background-color: rgba(33, 37, 41, 0.60) !important;
}

.bg-heavy-light {
  background-color: rgba(248, 249, 250, 0.60) !important;
}

/* ============================================
   RTL Support — flips sidebar, topbar, footer, content
   ============================================ */
[dir="rtl"] .app-content {
  margin-left: 0;
  margin-right: var(--vz-vertical-menu-width);
}

[dir="rtl"] .main-content {
  margin-left: 0;
  margin-right: var(--vz-vertical-menu-width);
}

[dir="rtl"] .navbar-menu {
  border-right: none;
  border-left: 1px solid var(--vz-vertical-menu-border);
}

[dir="rtl"] .navbar-menu .navbar-nav .nav-link[data-bs-toggle=collapse]:after {
  right: auto;
  left: 18px;
}

[dir="rtl"] .navbar-menu .navbar-nav .nav-sm {
  padding-left: 0;
  padding-right: var(--vz-vertical-menu-item-icon-width, 40px);
}

[dir="rtl"] .navbar-menu .navbar-nav .nav-sm .nav-link:before {
  left: auto;
  right: 2px;
}

[dir="rtl"] .navbar-menu .navbar-nav .nav-sm .nav-sm {
  padding-left: 0;
  padding-right: 15px;
}

[dir="rtl"] .navbar-menu .navbar-nav .nav-sm .nav-sm .nav-link:before {
  left: auto;
  right: 5px;
}

[dir="rtl"] .navbar-menu .navbar-nav .nav-link svg {
  margin-right: 0;
  margin-left: 0.665rem;
}

[dir="rtl"] #page-topbar {
  left: 0;
  right: 0;
}

@media (min-width: 768px) {
  [dir="rtl"] #page-topbar {
    left: 0;
    right: var(--vz-vertical-menu-width);
  }
}

[dir="rtl"] .footer {
  right: var(--vz-vertical-menu-width) !important;
  left: 0 !important;
}

@media (max-width: 991.98px) {
  [dir="rtl"] .footer {
    left: 0 !important;
    right: 0 !important;
  }
}

/* text alignment in RTL — swap start/end */
[dir="rtl"] .text-sm-end {
  text-align: left !important;
}
[dir="rtl"] .text-end {
  text-align: left !important;
}
[dir="rtl"] .text-sm-start {
  text-align: right !important;
}
[dir="rtl"] .text-start {
  text-align: right !important;
}

/* Simplebar — flip scrollbar padding (inline style override) */
[dir="rtl"] .simplebar-content {
  padding: 0px 0px 0px 10px !important;
}

/* Topbar search in RTL */
[dir="rtl"] .app-search .form-control {
  padding-left: 30px;
  padding-right: 40px;
}
[dir="rtl"] .app-search span.search-widget-icon {
  left: auto;
  right: 13px;
}
[dir="rtl"] .app-search .search-widget-icon-close {
  right: auto !important;
  left: 7px !important;
}

/* Badges in RTL */
[dir="rtl"] .topbar-badge-sm {
  right: auto;
  left: 0;
}
[dir="rtl"] .topbar-badge {
  right: auto;
  left: -9px;
}

/* Sidebar size variants in RTL */
@media (min-width: 768px) {
  [dir="rtl"][data-sidebar-size="sm"] .main-content,
  [dir="rtl"][data-sidebar-size="sm-hover"] .main-content {
    margin-left: 0;
    margin-right: var(--vz-vertical-menu-width-sm);
  }
  [dir="rtl"][data-sidebar-size="sm"] #page-topbar,
  [dir="rtl"][data-sidebar-size="sm-hover"] #page-topbar {
    left: 0;
    right: var(--vz-vertical-menu-width-sm);
  }

  [dir="rtl"][data-sidebar-size="md"] .main-content {
    margin-left: 0;
    margin-right: var(--vz-vertical-menu-width-md);
  }
  [dir="rtl"][data-sidebar-size="md"] #page-topbar {
    left: 0;
    right: var(--vz-vertical-menu-width-md);
  }
}

/* Horizontal layout in RTL — footer stays full width */
[dir="rtl"][data-layout="horizontal"] .footer {
  right: 0 !important;
  left: auto !important;
}

/* Detached layout in RTL */
@media (min-width: 1024.1px) {
  [dir="rtl"][data-layout="vertical"][data-layout-style="detached"] .footer {
    right: 0 !important;
    left: auto !important;
  }
}

/* Semibox layout in RTL */
@media (min-width: 768px) {
  [dir="rtl"][data-layout="semibox"][data-sidebar-size="sm"] .main-content,
  [dir="rtl"][data-layout="semibox"][data-sidebar-size="sm-hover"] .main-content {
    margin-left: 0;
    margin-right: var(--vz-vertical-menu-width-sm);
  }
  [dir="rtl"][data-layout="semibox"][data-sidebar-size="sm"] #page-topbar,
  [dir="rtl"][data-layout="semibox"][data-sidebar-size="sm-hover"] #page-topbar {
    left: 0;
    right: var(--vz-vertical-menu-width-sm);
  }

  [dir="rtl"][data-layout="semibox"][data-sidebar-size="md"] #page-topbar {
    left: 0;
    right: var(--vz-vertical-menu-width-md);
  }
}

@media (min-width: 1440px) {
  [dir="rtl"][data-layout="semibox"] .main-content {
    margin-left: 0;
    margin-right: calc(var(--vz-vertical-menu-width) + 25px);
  }
  [dir="rtl"][data-layout="semibox"] #page-topbar {
    left: calc(var(--vz-semibox-width) + var(--vz-grid-gutter-width));
    right: calc(var(--vz-vertical-menu-width) + var(--vz-semibox-width) + var(--vz-grid-gutter-width) + 25px);
  }
  [dir="rtl"][data-layout="semibox"] .footer {
    left: calc(var(--vz-semibox-width) + var(--vz-grid-gutter-width));
    right: calc(var(--vz-vertical-menu-width) + var(--vz-semibox-width) + var(--vz-grid-gutter-width) + 25px);
  }
}

/* Boxed layout in RTL */
[dir="rtl"][data-layout-width="boxed"] #page-topbar,
[dir="rtl"][data-layout-width="boxed"] .footer {
  left: 0 !important;
  right: 0 !important;
}

/* Language switcher button needs more width for text */
.btn-topbar:has(.bx-globe) {
  width: auto !important;
  padding-left: 10px;
  padding-right: 10px;
}

/* Breadcrumb in RTL — flip separator direction + spacing */
[dir="rtl"] .breadcrumb {
  --bs-breadcrumb-divider: "\F0141"; /* chevron-left */
}

[dir="rtl"] .breadcrumb-item + .breadcrumb-item {
  padding-left: 0;
  padding-right: var(--bs-breadcrumb-item-padding-x, 0.5rem);
}

[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before {
  float: right;
  padding-right: 0;
  padding-left: var(--bs-breadcrumb-item-padding-x, 0.5rem);
}

/* === Dashboard RTL Fixes === */
[dir="rtl"] .stat-card .stat-badge {
  right: auto;
  left: 0.75rem;
}
[dir="rtl"] .stat-card .flex-grow-1.ms-3 {
  margin-left: 0 !important;
  margin-right: 1rem !important;
}
[dir="rtl"] .hw-card .hw-icon.me-3 {
  margin-right: 0 !important;
  margin-left: 1rem !important;
}
[dir="rtl"] .status-card .card-header .me-2,
[dir="rtl"] .traffic-card .card-header .me-2,
[dir="rtl"] .section-card .card-header .me-2 {
  margin-right: 0 !important;
  margin-left: 0.5rem !important;
}
[dir="rtl"] .status-card .card-header .ms-2,
[dir="rtl"] .traffic-card .card-header .ms-2,
[dir="rtl"] .section-card .card-header .ms-2 {
  margin-left: 0 !important;
  margin-right: 0.5rem !important;
}
[dir="rtl"] .svc-bulk-action .ms-auto,
[dir="rtl"] .section-card .ms-auto {
  margin-left: 0 !important;
  margin-right: auto !important;
}
[dir="rtl"] .tps-val {
  text-align: left;
}
[dir="rtl"] .session-item:hover {
  transform: translateX(-2px);
}
[dir="rtl"] .collapse-arrow {
  transform: rotate(180deg);
}
[dir="rtl"] .collapse-arrow.collapsed {
  transform: rotate(-270deg);
}
[dir="rtl"] .input-group .btn:last-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: var(--vz-btn-border-radius, 0.25rem);
  border-bottom-right-radius: var(--vz-btn-border-radius, 0.25rem);
}
[dir="rtl"] .input-group > :first-child:not(.dropdown-menu) {
  border-top-right-radius: var(--vz-btn-border-radius, 0.25rem);
  border-bottom-right-radius: var(--vz-btn-border-radius, 0.25rem);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
[dir="rtl"] .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: var(--vz-btn-border-radius, 0.25rem);
  border-bottom-left-radius: var(--vz-btn-border-radius, 0.25rem);
}