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

:root {
  --bg-main: #f7f8fb;
  --bg-card: #ffffff;
  --bg-sidebar: #f5f7fb;
  --border-color: #e5e7eb;
  --text-primary: #1f2937;
  --text-secondary: #6b7280;
  --accent-primary: #182B70;
  --accent-success: #0ea371;
  --accent-warning: #f59e0b;
  --accent-danger: #e11d48;
  --nx-primary-navy: #182B70;
  --nx-primary-teal: #008080;
  --nx-primary-accent: #74CECC;
  --nx-bg-main: var(--bg-main);
  --nx-bg-secondary: #f5f5f5;
  --nx-card-bg: var(--bg-card);
  --nx-border: var(--border-color);
  --nx-border-strong: #d1d5db;
  --nx-text-primary: var(--text-primary);
  --nx-text-secondary: var(--text-secondary);
  --nx-highlight: #246BFF;
  --nx-highlight-strong: #0439df;
  --nx-gradient: linear-gradient(90deg, #008080 0%, #182B70 100%);
  --nx-dark-gradient: linear-gradient(120deg, #0b7a75 0%, #182b70 100%);
  --nx-glow: rgba(36, 107, 255, 0.22);
  --nx-glow-soft: rgba(0, 128, 128, 0.2);
  --nx-shadow: 0 20px 45px rgba(24, 43, 112, 0.1);
  --nx-shadow-soft: 0 10px 30px rgba(24, 43, 112, 0.08);
  --nx-radius-section: 30px;
  --nx-radius-card: 22px;
  --nx-radius-pill: 50px;
  --nx-container: 1200px;
  --nx-sidebar-width: 260px;
  --nx-sidebar-collapsed-width: 96px;
  --nx-transition: all 0.3s ease;
  --nx-font-ar: "Cairo", "Tajawal", "Noto Sans Arabic", sans-serif;
}

html[data-theme="dark"] {
  --bg-main: #0b0f1f;
  --bg-card: #0f172a;
  --bg-sidebar: #121735;
  --border-color: rgba(116, 206, 204, 0.15);
  --text-primary: #f3f4f6;
  --text-secondary: #9ca3af;
  --accent-primary: #1e2a5a;
  --accent-success: #22c55e;
  --accent-warning: #fbbf24;
  --accent-danger: #fb7185;
  --nx-primary-navy: #1e2a5a;
  --nx-primary-teal: #00a3a3;
  --nx-primary-accent: #74cecc;
  --nx-bg-main: var(--bg-main);
  --nx-bg-secondary: #121735;
  --nx-card-bg: var(--bg-card);
  --nx-border: var(--border-color);
  --nx-border-strong: rgba(116, 206, 204, 0.2);
  --nx-text-primary: var(--text-primary);
  --nx-text-secondary: var(--text-secondary);
  --nx-highlight: #74cecc;
  --nx-highlight-strong: #00a3a3;
  --nx-gradient: linear-gradient(120deg, #0b7a75 0%, #182b70 100%);
  --nx-glow: rgba(116, 206, 204, 0.25);
  --nx-glow-soft: rgba(0, 128, 128, 0.2);
  --nx-shadow: 0 24px 55px rgba(1, 7, 23, 0.5);
  --nx-shadow-soft: 0 12px 34px rgba(1, 7, 23, 0.35);
}

html,
body {
  background: var(--nx-bg-main);
  color: var(--nx-text-primary);
  font-family: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
  min-height: 100%;
}

body {
  line-height: 1.55;
  letter-spacing: 0.01em;
}

html[dir="rtl"] body {
  font-family: var(--nx-font-ar);
  line-height: 1.68;
  letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.page-title h4,
.card-header,
.nexa-hero-title,
.instance-title,
.nexa-kpi-value {
  font-family: Orbitron, Rajdhani, "Segoe UI", sans-serif;
  color: var(--nx-text-primary);
  letter-spacing: 0.02em;
}

h1 {
  font-size: clamp(1.72rem, 2.7vw, 2.3rem);
  line-height: 1.18;
}

.nexa-hero-title {
  font-size: clamp(3.6rem, 6vw, 4.4rem);
  line-height: 1.04;
}

h2 {
  font-size: clamp(2rem, 3.8vw, 3rem);
}

h3,
.card-header {
  font-size: clamp(1.25rem, 2.2vw, 1.5rem);
}

h4,
.page-title h4 {
  font-size: clamp(1.35rem, 2.4vw, 2rem);
}

html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] h4,
html[dir="rtl"] h5,
html[dir="rtl"] h6,
html[dir="rtl"] .page-title h4,
html[dir="rtl"] .card-header,
html[dir="rtl"] .nexa-hero-title,
html[dir="rtl"] .instance-title,
html[dir="rtl"] .nexa-kpi-value {
  font-family: var(--nx-font-ar);
  letter-spacing: 0;
}

html[dir="rtl"] .page-title h1,
html[dir="rtl"] .project-title-section .page-title h1 {
  font-size: clamp(2rem, 3vw, 2.9rem);
  font-weight: 800;
  line-height: 1.25;
}

html[dir="rtl"] .title-tab h4 {
  font-size: clamp(1.5rem, 2.1vw, 2rem);
  font-weight: 700;
}

a {
  color: var(--nx-highlight-strong);
  transition: var(--nx-transition);
}

a:hover,
a:focus {
  color: var(--nx-primary-teal);
}

.text-off,
.text-muted,
.small,
.meta-label,
.nexa-kpi-meta,
.nexa-health-label,
.instance-id,
.instance-meta-item .meta-label {
  color: var(--nx-text-secondary) !important;
}

#left-menu-toggle-mask {
  background: transparent;
}

.page-container {
  margin-left: calc(var(--nx-sidebar-width) + 24px);
  margin-top: 96px;
  transition: var(--nx-transition);
}

.sidebar-toggled .page-container {
  margin-left: calc(var(--nx-sidebar-collapsed-width) + 20px);
}

.page-wrapper,
#page-content {
  max-width: var(--nx-container);
  margin: 0 auto;
  padding: 18px 18px 74px;
}

.dashboard-view > section,
.instances-view > section,
.nexa-dashboard-view > section {
  margin-bottom: 80px;
}

.navbar-custom,
.public-navbar {
  left: calc(var(--nx-sidebar-width) + 24px);
  right: 24px;
  width: auto;
  top: 16px;
  border-radius: var(--nx-radius-pill);
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 76%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: var(--nx-shadow-soft);
  transition: var(--nx-transition);
}

.public-view .public-navbar {
  left: 24px;
}

.sidebar-toggled .navbar-custom {
  left: calc(var(--nx-sidebar-collapsed-width) + 20px);
}

#default-navbar .container-fluid,
.public-navbar .container-fluid {
  padding-left: 14px;
  padding-right: 14px;
}

.navbar-custom .nav-link,
.public-navbar .nav-link {
  border-radius: 999px;
  color: var(--nx-text-secondary);
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
}

.navbar-custom .nav-link:hover,
.navbar-custom .nav-link:focus,
.public-navbar .nav-link:hover,
.public-navbar .nav-link:focus {
  color: var(--nx-text-primary);
  background: color-mix(in srgb, var(--nx-primary-accent) 18%, transparent);
}

.theme-toggle-item .theme-toggle-btn {
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.22);
}

.theme-toggle-track {
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: var(--nx-gradient);
  padding: 3px;
  position: relative;
  display: inline-flex;
  align-items: center;
}

.theme-toggle-thumb {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 4px 10px rgba(3, 12, 46, 0.25);
  transform: translateX(0);
  transition: var(--nx-transition);
}

html[data-theme="dark"] .theme-toggle-thumb {
  transform: translateX(20px);
  background: #9fd8d7;
}

.theme-toggle-label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.sidebar {
  width: var(--nx-sidebar-width);
  top: 16px;
  left: 16px;
  bottom: 16px;
  height: auto;
  border-radius: var(--nx-radius-section);
  border: 1px solid var(--nx-border);
  background: var(--bg-sidebar);
  box-shadow: var(--nx-shadow-soft);
  padding-bottom: 14px;
  transition: var(--nx-transition);
}

.sidebar-brand {
  height: 84px;
  border-bottom: 1px solid var(--nx-border);
  width: 100%;
  border-radius: var(--nx-radius-section) var(--nx-radius-section) 0 0;
  background: var(--bg-sidebar);
}

.sidebar .dashboard-image {
  max-height: 42px;
}

.sidebar-scroll {
  padding: 14px 10px 6px;
  border-top: 0;
}

.sidebar-menu {
  gap: 6px;
  display: flex;
  flex-direction: column;
}

.sidebar-menu li a {
  margin: 0;
  border-radius: 16px;
  border: 1px solid transparent;
  color: var(--nx-text-secondary);
  font-weight: 500;
  padding: 0.84rem 1rem;
}

html[dir="rtl"] .sidebar-menu li a,
html[dir="rtl"] .sidebar-menu li a .menu-text {
  font-size: 1.08rem;
  font-weight: 600;
}

.sidebar-menu li a:hover,
.sidebar-menu li a:focus {
  transform: translateY(-3px);
  color: var(--nx-text-primary);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 30%, transparent);
  box-shadow: 0 10px 24px var(--nx-glow-soft);
  background: color-mix(in srgb, var(--nx-primary-accent) 16%, transparent);
}

.sidebar-menu li.active > a {
  color: #fff !important;
  border-color: transparent;
  background: var(--nx-gradient);
  box-shadow: 0 16px 30px var(--nx-glow);
}

.sidebar-menu li ul {
  padding: 0;
  margin: 0;
}

.sidebar-menu li ul:empty {
  display: none !important;
}

.sidebar-menu li ul li a {
  margin-left: 14px;
  margin-right: 4px;
  font-size: 0.92rem;
  border-radius: 14px;
  background: color-mix(in srgb, var(--nx-bg-secondary) 92%, transparent);
}

/* RTL Layout Fixes */
html[dir="rtl"] .page-container {
  margin-left: 0;
  margin-right: calc(var(--nx-sidebar-width) + 24px);
}

html[dir="rtl"] .sidebar-toggled .page-container {
  margin-left: 0;
  margin-right: calc(var(--nx-sidebar-collapsed-width) + 20px);
}

html[dir="rtl"] .navbar-custom,
html[dir="rtl"] .public-navbar {
  left: 24px;
  right: calc(var(--nx-sidebar-width) + 24px);
}

html[dir="rtl"] .public-view .public-navbar {
  left: 24px;
  right: 24px;
}

html[dir="rtl"] .sidebar-toggled .navbar-custom {
  left: 24px;
  right: calc(var(--nx-sidebar-collapsed-width) + 20px);
}

html[dir="rtl"] .sidebar {
  left: auto;
  right: 16px;
}

html[dir="rtl"] .sidebar-menu li ul li a {
  margin-left: 4px;
  margin-right: 14px;
}

html[dir="rtl"] .project-details-view .project-title-button-group-section .title-button-group {
  justify-content: flex-start;
}

#sidebar-menu li.expand > a::before,
#sidebar-menu li.expand.open > a::before {
  right: 1.05rem;
  top: 50%;
  margin-top: -1px;
  padding: 3px;
  transform-origin: center;
  border-color: var(--nx-text-secondary);
}

#sidebar-menu li.expand > a::before {
  transform: translateY(-50%) rotate(45deg);
}

#sidebar-menu li.expand.open > a::before {
  transform: translateY(-50%) rotate(-135deg);
}

.sidebar-menu .badge {
  border-radius: 999px;
  padding: 0.25rem 0.55rem;
  background: color-mix(in srgb, var(--nx-primary-accent) 35%, transparent);
  color: var(--nx-text-primary);
}

.sidebar-toggled .sidebar {
  width: var(--nx-sidebar-collapsed-width) !important;
}

.sidebar-toggled .sidebar-brand {
  width: var(--nx-sidebar-collapsed-width) !important;
  padding-left: 18px;
  padding-right: 18px;
}

.sidebar-toggled .sidebar-menu li a {
  justify-content: center;
  padding: 0.9rem 0.75rem;
}

.sidebar-toggled .sidebar-menu li:hover {
  width: 260px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--nx-card-bg) 95%, transparent);
}

.sidebar-toggled .sidebar-menu li:hover > a {
  width: 252px;
  border-radius: 16px;
}

.sidebar-toggled .sidebar-menu li ul {
  border-radius: 14px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent);
  box-shadow: var(--nx-shadow-soft);
}

.card,
.modal-content,
.dropdown-menu,
.box,
.alert,
.page-title {
  border-radius: var(--nx-radius-card) !important;
  border: 1px solid var(--nx-border);
  background: var(--nx-card-bg);
  box-shadow: var(--nx-shadow-soft);
}

.card {
  overflow: hidden;
  position: relative;
  transition: var(--nx-transition);
}

.card::after {
  content: "";
  position: absolute;
  inset: -120% -30% auto;
  height: 160%;
  background: linear-gradient(105deg, transparent 35%, color-mix(in srgb, #ffffff 45%, transparent) 50%, transparent 65%);
  transform: rotate(8deg);
  opacity: 0;
  pointer-events: none;
}

.card:hover {
  transform: translateY(-4px) scale(1.008);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 55%, transparent);
  box-shadow: 0 20px 40px var(--nx-glow);
}

.card:hover::after {
  animation: nexa-shine 1.1s ease-out;
}

@keyframes nexa-shine {
  from {
    opacity: 0;
    transform: translateX(-35%) rotate(8deg);
  }
  35% {
    opacity: 0.44;
  }
  to {
    opacity: 0;
    transform: translateX(55%) rotate(8deg);
  }
}

.card-header {
  background: color-mix(in srgb, var(--nx-bg-secondary) 84%, transparent);
  color: var(--nx-text-primary);
  border-bottom: 1px solid var(--nx-border);
  padding: 1rem 1.25rem;
}

.card-body,
.box-content,
.page-title,
.modal-body {
  padding: 1.3rem 1.25rem;
}

.btn,
button,
input[type="button"],
input[type="submit"] {
  border-radius: var(--nx-radius-pill) !important;
  min-height: 42px;
  border-width: 1px;
  font-weight: 600;
  line-height: 1.35;
  transition: var(--nx-transition);
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  max-width: 100%;
  padding: 0.52rem 1rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.btn .feather,
.btn i {
  flex: 0 0 auto;
}

html[dir="rtl"] .btn,
html[dir="rtl"] button,
html[dir="rtl"] input[type="button"],
html[dir="rtl"] input[type="submit"] {
  line-height: 1.6;
  font-family: var(--nx-font-ar);
  font-weight: 700;
}

.btn-primary,
.btn-success,
.btn-info {
  border-color: transparent !important;
  background: var(--nx-gradient) !important;
  color: #fff !important;
  box-shadow: 0 14px 28px var(--nx-glow-soft);
}

.btn-default,
.btn-secondary,
.btn-light,
.btn-outline-secondary {
  border-color: var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-bg-secondary) 88%, transparent) !important;
  color: var(--nx-text-primary) !important;
}

.btn:hover,
.btn:focus {
  transform: translateY(-3px);
  box-shadow: 0 16px 28px var(--nx-glow);
}

.icon-16,
.icon,
.feather {
  stroke-width: 2.2;
}

.instance-action-btn,
a.edit,
a.delete,
.js-anchor,
.page-title .dropdown-toggle,
.table .dropdown-toggle {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 92%, transparent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: var(--nx-transition);
}

.instance-action-btn:hover,
a.edit:hover,
a.delete:hover,
.js-anchor:hover,
.page-title .dropdown-toggle:hover,
.table .dropdown-toggle:hover {
  transform: translateY(-6px) scale(1.05);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 55%, transparent);
  box-shadow: 0 18px 28px var(--nx-glow-soft);
}

/* Keep filter dropdowns as pill buttons (not icon circles) */
.page-title .filter-multi-select .dropdown-toggle,
.title-button-group .filter-multi-select .dropdown-toggle,
#calendar-filter-dropdown .filter-multi-select .dropdown-toggle {
  width: auto;
  min-width: 138px;
  height: auto;
  min-height: 42px;
  border-radius: var(--nx-radius-pill) !important;
  padding: 0.52rem 0.95rem !important;
  justify-content: flex-start;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.page-title .filter-multi-select .dropdown-toggle:hover,
.title-button-group .filter-multi-select .dropdown-toggle:hover,
#calendar-filter-dropdown .filter-multi-select .dropdown-toggle:hover {
  transform: translateY(-3px);
}

.page-title .filter-multi-select .caret::after,
.title-button-group .filter-multi-select .caret::after,
#calendar-filter-dropdown .filter-multi-select .caret::after {
  float: none;
  margin-top: 0 !important;
  margin-left: auto;
}

html[dir="rtl"] .page-title .filter-multi-select .dropdown-toggle,
html[dir="rtl"] .title-button-group .filter-multi-select .dropdown-toggle,
html[dir="rtl"] #calendar-filter-dropdown .filter-multi-select .dropdown-toggle {
  text-align: right;
}

/* Chat UI */
#js-init-chat-icon {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 1px solid color-mix(in srgb, var(--nx-primary-accent) 45%, transparent);
  background: var(--nx-gradient);
  box-shadow: 0 18px 34px var(--nx-glow-soft);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: #fff;
  cursor: pointer;
  transition: var(--nx-transition);
  z-index: 1030 !important;
}

html[dir="rtl"] #js-init-chat-icon {
  right: auto;
  left: 20px;
}

#js-init-chat-icon:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 44px var(--nx-glow);
}

#js-init-chat-icon #js-chat-min-icon {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-weight: 700;
  font-size: 0.94rem;
}

#js-init-chat-icon .icon {
  width: 22px;
  height: 22px;
}

#js-init-chat-icon.has-message {
  background: linear-gradient(135deg, var(--accent-danger), #fb7185);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 18px 34px color-mix(in srgb, var(--accent-danger) 40%, transparent);
}

body.chat-panel-open #js-init-chat-icon {
  width: 52px;
  height: 52px;
  top: 18px;
  bottom: auto;
  right: 18px;
  left: auto;
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

body.chat-panel-open::before {
  content: "";
  position: fixed;
  inset: 0;
  background: color-mix(in srgb, #0b1020 28%, transparent);
  backdrop-filter: blur(1px);
  -webkit-backdrop-filter: blur(1px);
  z-index: 1028;
  pointer-events: none;
}

html[data-theme="dark"] body.chat-panel-open::before {
  background: rgba(2, 7, 18, 0.44);
}

html[dir="rtl"] body.chat-panel-open #js-init-chat-icon {
  right: auto;
  left: 18px;
}

#js-rise-chat-wrapper.rise-chat-wrapper:not(.rise-cart-wrapper) {
  position: fixed;
  right: 92px;
  bottom: 20px;
  width: min(408px, calc(100vw - 24px));
  height: min(76vh, 680px);
  min-height: 420px;
  max-height: min(76vh, 680px);
  border-radius: 22px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent);
  box-shadow: 0 24px 50px rgba(2, 8, 23, 0.22);
  overflow: hidden;
  z-index: 1040 !important;
  display: flex;
  flex-direction: column;
}

html[dir="rtl"] #js-rise-chat-wrapper.rise-chat-wrapper:not(.rise-cart-wrapper) {
  right: auto;
  left: 92px;
}

#js-rise-chat-wrapper.hide {
  display: none !important;
}

#js-rise-chat-wrapper .rise-chat-header.box {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-bg-secondary) 90%, transparent);
  box-shadow: none;
  flex: 0 0 auto;
}

#js-rise-chat-wrapper .rise-chat-header .box-content {
  display: inline-flex;
  align-items: center;
  min-height: 52px;
  padding: 0 10px;
}

#js-rise-chat-wrapper .chat-tabs-content {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
}

#js-rise-chat-wrapper .chat-back,
#js-rise-chat-wrapper .chat-close {
  width: 42px;
  min-width: 42px;
  justify-content: center;
  color: var(--nx-text-secondary);
  opacity: 1;
  cursor: pointer;
}

#js-rise-chat-wrapper .chat-back:hover,
#js-rise-chat-wrapper .chat-close:hover {
  color: var(--nx-text-primary);
  background: color-mix(in srgb, var(--nx-primary-accent) 16%, transparent);
}

#js-rise-chat-wrapper .chat-title {
  flex: 1 1 auto;
  min-width: 0;
  text-indent: 0;
  justify-content: flex-start;
  padding: 0 10px;
  font-weight: 700;
  color: var(--nx-text-primary);
}

#js-rise-chat-wrapper .chat-title .chat-active-user {
  min-width: 0;
  width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

#js-rise-chat-wrapper .chat-active-user-name {
  display: inline-block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#js-rise-chat-wrapper .chat-tab {
  display: flex;
  width: 100%;
  background: transparent;
  border: 0;
  box-shadow: none;
}

#js-rise-chat-wrapper .chat-tab > li {
  flex: 1 1 0;
}

#js-rise-chat-wrapper .chat-tab > li > a {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--nx-text-secondary);
  border: 0 !important;
  border-radius: 0;
  transition: var(--nx-transition);
}

#js-rise-chat-wrapper .chat-tab > li > a:hover,
#js-rise-chat-wrapper .chat-tab > li > a:focus,
#js-rise-chat-wrapper .chat-tab > li > a.active {
  color: var(--nx-text-primary);
  background: color-mix(in srgb, var(--nx-primary-accent) 14%, transparent);
}

#js-rise-chat-wrapper .rise-chat-body {
  flex: 1 1 auto;
  min-height: 0;
  height: auto !important;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 6px;
  background: color-mix(in srgb, var(--nx-bg-secondary) 92%, transparent);
  scrollbar-gutter: stable;
}

#js-rise-chat-wrapper .rise-chat-body.chat-active-body {
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}

#js-rise-chat-wrapper #js-chat-messages-container {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 6px;
}

#js-rise-chat-wrapper .rise-chat-body.full-height,
#js-rise-chat-wrapper .rise-chat-body.long {
  height: auto !important;
}

#js-rise-chat-wrapper .rise-chat-body .tab-content {
  height: 100%;
}

#js-rise-chat-wrapper .rise-chat-body .tab-pane.active {
  display: block;
  height: 100%;
  overflow-y: auto;
}

#js-rise-chat-wrapper #js-chat-team-members-list,
#js-rise-chat-wrapper #chatlist-of-user {
  display: grid;
  gap: 6px;
  padding: 6px;
}

#js-rise-chat-wrapper #js-single-user-chat-list {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  gap: 0;
}

#js-rise-chat-wrapper #js-single-user-chat-list .chat-user-actions {
  flex: 0 0 auto;
  padding: 8px !important;
  border-bottom: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
}

#js-rise-chat-wrapper #js-single-user-chat-list .chat-user-actions .btn {
  min-height: 36px;
  height: 36px;
  font-size: 0.82rem;
  border-radius: 999px !important;
}

#js-rise-chat-wrapper #chatlist-of-user {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}

#js-rise-chat-wrapper .message-row {
  border: 1px solid transparent;
  border-radius: 14px;
  margin: 0;
  padding: 10px;
  min-height: 60px;
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
  transition: var(--nx-transition);
}

#js-rise-chat-wrapper .message-row .d-flex {
  align-items: flex-start;
  gap: 10px;
}

#js-rise-chat-wrapper .message-row .chat-row-body,
#js-rise-chat-wrapper .message-row .w-100 {
  min-width: 0;
}

#js-rise-chat-wrapper .message-row:hover {
  background: color-mix(in srgb, var(--nx-primary-accent) 14%, transparent);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 34%, transparent);
}

#js-rise-chat-wrapper .message-row.unread {
  border-color: color-mix(in srgb, var(--nx-highlight) 28%, transparent);
  background: color-mix(in srgb, var(--nx-highlight) 9%, transparent);
}

#js-rise-chat-wrapper .message-row .chat-row-name,
#js-rise-chat-wrapper .message-row strong {
  color: var(--nx-text-primary);
  font-size: 0.9rem;
  font-weight: 700;
  display: inline-block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}

#js-rise-chat-wrapper .message-row .chat-row-subline {
  display: block;
  font-size: 0.8rem;
  color: var(--nx-text-secondary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#js-rise-chat-wrapper .message-row .time {
  color: var(--nx-text-secondary) !important;
  font-size: 0.67rem;
  width: auto;
  white-space: nowrap;
  margin-inline-start: 8px;
}

#js-rise-chat-wrapper .avatar.avatar-xs {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  background: color-mix(in srgb, var(--nx-primary-accent) 24%, transparent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--nx-text-primary);
}

#js-rise-chat-wrapper .avatar.avatar-xs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#js-rise-chat-wrapper .avatar.avatar-xs .chat-avatar-fallback {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

#js-rise-chat-wrapper .avatar.avatar-xs.is-broken .chat-avatar-fallback {
  display: inline-flex;
}

#js-rise-chat-wrapper .avatar i.online,
#js-rise-chat-wrapper #js-active-chat-online-icon {
  width: 10px;
  height: 10px;
  border: 2px solid var(--nx-card-bg);
  margin-left: -10px;
  top: 8px;
}

#js-rise-chat-wrapper .chat-no-messages {
  padding: 1.2rem 0.8rem;
  font-size: 0.9rem;
}

#js-rise-chat-wrapper .chat-no-messages svg {
  margin-top: 12px;
  color: color-mix(in srgb, var(--nx-text-secondary) 55%, transparent);
}

#js-rise-chat-wrapper #js-chat-messages-title .chat-message-title {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--nx-text-secondary);
  padding: 8px 10px !important;
  border-bottom: 1px dashed color-mix(in srgb, var(--nx-border) 85%, transparent);
}

#js-rise-chat-wrapper #js-chat-reply-indicator {
  padding: 2px 10px 6px;
  font-size: 0.76rem;
  color: var(--nx-text-secondary);
}

#js-rise-chat-wrapper .chat-other,
#js-rise-chat-wrapper .chat-me {
  padding: 4px 8px;
}

#js-rise-chat-wrapper .chat-other .col-md-12,
#js-rise-chat-wrapper .chat-me .col-md-12 {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

#js-rise-chat-wrapper .chat-other .avatar {
  float: none;
  margin: 0;
}

#js-rise-chat-wrapper .chat-other .chat-msg,
#js-rise-chat-wrapper .chat-me .chat-msg,
#js-rise-chat-wrapper .chat-close {
  float: none;
}

#js-rise-chat-wrapper .chat-me .col-md-12 {
  justify-content: flex-end;
}

#js-rise-chat-wrapper .chat-msg {
  max-width: 70%;
  min-width: 0;
  padding: 8px 11px;
  border-radius: 14px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
  line-height: 1.45;
  box-shadow: none;
  overflow-wrap: anywhere;
  word-break: break-word;
  text-align: start;
  unicode-bidi: plaintext;
}

#js-rise-chat-wrapper .chat-msg a {
  color: inherit;
}

#js-rise-chat-wrapper .chat-other .chat-msg {
  border-radius: 14px 14px 14px 4px;
}

#js-rise-chat-wrapper .chat-me .chat-msg {
  border-radius: 14px 14px 4px 14px;
  border: 0;
  background: var(--nx-gradient);
  color: #fff;
}

#js-rise-chat-wrapper .rise-chat-footer {
  flex: 0 0 auto;
  border-top: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent);
  padding: 8px;
}

#js-rise-chat-wrapper .rise-chat-footer .general-form {
  margin: 0;
}

#js-rise-chat-wrapper .rise-chat-footer .chat-message-textarea {
  display: block;
  margin-bottom: 8px;
}

#js-rise-chat-wrapper .rise-chat-footer textarea {
  width: 100%;
  min-height: 42px;
  height: 42px;
  max-height: 120px;
  border-radius: 12px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 97%, transparent);
  color: var(--nx-text-primary);
  padding: 10px 12px;
  line-height: 1.4;
  resize: none;
  overflow-y: auto;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#js-rise-chat-wrapper .rise-chat-footer textarea:focus {
  border-color: color-mix(in srgb, var(--nx-primary-accent) 66%, transparent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--nx-glow) 55%, transparent);
}

#js-rise-chat-wrapper .rise-chat-footer .chat-button-section {
  margin-top: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

#js-rise-chat-wrapper .rise-chat-footer .chat-file-upload-icon .me-auto {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

#js-rise-chat-wrapper .rise-chat-footer .chat-file-upload-icon .btn,
#js-rise-chat-wrapper .rise-chat-footer .chat-file-upload-icon .upload-file-button,
#js-rise-chat-wrapper .rise-chat-footer #record-start-button,
#js-rise-chat-wrapper .rise-chat-footer #record-stop-button {
  width: 40px;
  height: 40px;
  min-height: 40px;
  border-radius: 50% !important;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  float: none !important;
  margin: 0 !important;
}

#js-rise-chat-wrapper .rise-chat-footer .message-send-button {
  width: 46px;
  height: 46px;
  min-height: 46px;
  border-radius: 999px;
  background: var(--nx-gradient) !important;
  color: #fff !important;
  border: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 22px var(--nx-glow-soft);
}

#js-rise-chat-wrapper .rise-chat-footer .message-send-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 26px var(--nx-glow);
}

#js-rise-chat-wrapper .rise-chat-body,
#js-rise-chat-wrapper #chatlist-of-user,
#js-rise-chat-wrapper #js-chat-messages-container {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--nx-primary-accent) 42%, transparent) color-mix(in srgb, var(--nx-bg-secondary) 86%, transparent);
}

#js-rise-chat-wrapper .rise-chat-body::-webkit-scrollbar,
#js-rise-chat-wrapper #chatlist-of-user::-webkit-scrollbar,
#js-rise-chat-wrapper #js-chat-messages-container::-webkit-scrollbar {
  width: 8px;
}

#js-rise-chat-wrapper .rise-chat-body::-webkit-scrollbar-track,
#js-rise-chat-wrapper #chatlist-of-user::-webkit-scrollbar-track,
#js-rise-chat-wrapper #js-chat-messages-container::-webkit-scrollbar-track {
  background: color-mix(in srgb, var(--nx-bg-secondary) 84%, transparent);
  border-radius: 999px;
}

#js-rise-chat-wrapper .rise-chat-body::-webkit-scrollbar-thumb,
#js-rise-chat-wrapper #chatlist-of-user::-webkit-scrollbar-thumb,
#js-rise-chat-wrapper #js-chat-messages-container::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--nx-primary-accent) 44%, transparent);
  border-radius: 999px;
}

html[dir="rtl"] #js-rise-chat-wrapper .chat-title {
  justify-content: flex-end;
}

html[dir="rtl"] #js-rise-chat-wrapper .chat-other .col-md-12 {
  flex-direction: row;
}

html[dir="rtl"] #js-rise-chat-wrapper .message-row .time {
  margin-inline-start: 0;
  margin-inline-end: 8px;
}

html[dir="rtl"] #js-rise-chat-wrapper .rise-chat-footer textarea {
  text-align: right;
}

html[dir="rtl"] #js-rise-chat-wrapper .d-flex .flex-shrink-0 {
  margin-left: 0 !important;
}

@media (max-width: 1024px) {
  #js-rise-chat-wrapper.rise-chat-wrapper:not(.rise-cart-wrapper) {
    right: 16px;
    left: auto;
    width: min(390px, calc(100vw - 32px));
    height: min(78vh, 640px);
    max-height: min(78vh, 640px);
  }

  html[dir="rtl"] #js-rise-chat-wrapper.rise-chat-wrapper:not(.rise-cart-wrapper) {
    left: 16px;
    right: auto;
  }
}

@media (max-width: 767px) {
  #js-rise-chat-wrapper.rise-chat-wrapper:not(.rise-cart-wrapper) {
    left: 12px !important;
    right: 12px !important;
    top: 12px !important;
    bottom: 12px !important;
    width: auto !important;
    height: auto !important;
    min-height: 0;
    max-height: none;
    border-radius: 18px;
  }

  #js-init-chat-icon {
    right: 14px;
    bottom: 86px;
    width: 56px;
    height: 56px;
  }

  html[dir="rtl"] #js-init-chat-icon {
    right: auto;
    left: 14px;
  }

  #js-init-chat-icon.move-chat-icon {
    right: 14px !important;
    left: auto !important;
    top: 14px !important;
    bottom: auto !important;
  }

  html[dir="rtl"] #js-init-chat-icon.move-chat-icon {
    right: auto !important;
    left: 14px !important;
  }
}

/* Option colors/hover inside filter selects */
.filter-multi-select .dropdown-menu,
.dynamic-range-filter .dropdown-menu {
  border: 1px solid var(--nx-border);
  border-radius: 16px;
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent);
  box-shadow: var(--nx-shadow-soft);
  padding: 6px;
}

.filter-multi-select .list-group-item,
.dynamic-range-filter .list-group-item {
  border: 0 !important;
  border-radius: 12px !important;
  margin: 2px 0;
  padding: 8px 11px;
  color: var(--nx-text-primary);
  background: transparent;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.filter-multi-select .list-group-item:not(.active):hover,
.dynamic-range-filter .list-group-item:not(.active):hover {
  background: color-mix(in srgb, var(--nx-primary-accent) 16%, transparent);
  color: var(--nx-text-primary);
  transform: translateX(2px);
}

.filter-multi-select .list-group-item.active,
.dynamic-range-filter .list-group-item.active {
  background: var(--nx-gradient) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px var(--nx-glow-soft);
}

.form-control,
.form-select,
input[type="text"],
input[type="number"],
input[type="email"],
input[type="password"],
input[type="date"],
textarea,
select,
.select2-container .select2-choice,
.select2-container-multi .select2-choices,
.select2-container .select2-search-field input {
  border-radius: var(--nx-radius-pill) !important;
  border: 1px solid var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent) !important;
  color: var(--nx-text-primary) !important;
  min-height: 42px;
  box-shadow: none;
}

textarea,
textarea.form-control {
  border-radius: 20px !important;
  min-height: 110px;
}

.form-control:focus,
.form-select:focus,
textarea:focus,
select:focus,
.select2-container .select2-choice:focus,
.select2-container-multi .select2-choices:focus {
  border-color: color-mix(in srgb, var(--nx-primary-accent) 70%, transparent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--nx-glow) 70%, transparent) !important;
  outline: none;
}

/* Select2 Unified Corners + Dropdown System */
.select2-container .select2-choice {
  position: relative;
  display: block !important;
  min-height: 44px;
  height: 44px !important;
  line-height: 42px !important;
  border-radius: var(--nx-radius-pill) !important;
  padding: 0 42px 0 14px !important;
}

.select2-container .select2-choice .select2-chosen {
  display: block !important;
  color: var(--nx-text-primary) !important;
  line-height: 42px !important;
  margin: 0 !important;
  padding: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-container .select2-choice .select2-arrow {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 40px !important;
  border-left: 1px solid var(--nx-border) !important;
  border-right: 0 !important;
  background: transparent !important;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 var(--nx-radius-pill) var(--nx-radius-pill) 0 !important;
}

.select2-container .select2-choice .select2-arrow b {
  display: none !important;
}

.select2-container .select2-choice .select2-arrow::before {
  content: "";
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 7px solid color-mix(in srgb, var(--nx-text-secondary) 86%, transparent);
  opacity: 0.92;
}

.select2-container .select2-choice abbr {
  display: none !important;
}

.select2-dropdown-open .select2-choice {
  border-color: color-mix(in srgb, var(--nx-primary-accent) 70%, transparent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--nx-glow) 65%, transparent) !important;
}

.select2-drop {
  margin-top: 8px;
  border: 1px solid var(--nx-border) !important;
  border-radius: 20px !important;
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent) !important;
  box-shadow: var(--nx-shadow-soft);
  overflow: hidden;
}

.select2-drop.select2-drop-above {
  margin-top: 0;
  margin-bottom: 8px;
  border-radius: 20px !important;
}

.select2-search {
  padding: 10px 10px 6px;
}

.select2-search input {
  min-height: 40px;
  border-radius: var(--nx-radius-pill) !important;
  border: 1px solid var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent) !important;
  background-image: none !important;
  color: var(--nx-text-primary) !important;
  box-shadow: none !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.select2-results {
  padding: 4px 8px 8px;
  max-height: 300px;
}

.select2-results > .select2-result {
  margin: 2px 0;
  border-radius: 12px;
  overflow: hidden;
}

.select2-results .select2-result-label {
  border-radius: 12px;
  padding: 8px 11px;
  color: var(--nx-text-primary) !important;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.select2-results .select2-highlighted {
  background: var(--nx-gradient) !important;
  color: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 18px var(--nx-glow-soft);
}

.select2-results .select2-highlighted .select2-result-label {
  color: #fff !important;
  border-radius: 12px !important;
}

.select2-results .select2-selected .select2-result-label {
  border-radius: 12px !important;
  background: color-mix(in srgb, var(--nx-primary-accent) 18%, transparent);
  color: var(--nx-text-primary) !important;
}

.select2-results .select2-result-selectable .select2-result-label:hover {
  background: color-mix(in srgb, var(--nx-primary-accent) 20%, transparent);
  transform: translateX(2px);
}

.select2-container-multi .select2-choices {
  min-height: 44px;
  border-radius: 20px !important;
  padding: 4px 6px !important;
}

.select2-container-multi .select2-choices .select2-search-choice {
  border: 1px solid color-mix(in srgb, var(--nx-primary-accent) 36%, var(--nx-border)) !important;
  background: color-mix(in srgb, var(--nx-primary-accent) 13%, transparent) !important;
  color: var(--nx-text-primary) !important;
  border-radius: 999px !important;
  padding: 5px 10px 5px 20px !important;
}

html[dir="rtl"] .select2-container .select2-choice {
  padding: 0 14px 0 42px !important;
  text-align: right;
}

html[dir="rtl"] .select2-container .select2-choice .select2-chosen {
  text-align: right;
}

html[dir="rtl"] .select2-container .select2-choice .select2-arrow {
  right: auto !important;
  left: 0 !important;
  border-left: 0 !important;
  border-right: 1px solid var(--nx-border) !important;
  border-radius: var(--nx-radius-pill) 0 0 var(--nx-radius-pill) !important;
}

html[dir="rtl"] .select2-container .select2-choice abbr {
  display: none !important;
}

html[data-theme="dark"] .select2-results .select2-result-selectable .select2-result-label:hover {
  background: color-mix(in srgb, var(--nx-primary-accent) 20%, transparent);
}

/* Select2 v4 compatibility (if loaded on some modules) */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
  min-height: 44px;
  border-radius: var(--nx-radius-pill) !important;
  border: 1px solid var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent) !important;
}

.select2-container--default .select2-dropdown {
  border: 1px solid var(--nx-border) !important;
  border-radius: 20px !important;
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent) !important;
  box-shadow: var(--nx-shadow-soft);
}

.select2-container--default .select2-results__option {
  border-radius: 12px;
  margin: 2px 6px;
  padding: 8px 11px;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: var(--nx-gradient) !important;
  color: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 18px var(--nx-glow-soft);
}

.select2-container--default .select2-results__option[aria-selected="true"]:not(.select2-results__option--highlighted) {
  border-radius: 12px !important;
  background: color-mix(in srgb, var(--nx-primary-accent) 18%, transparent) !important;
  color: var(--nx-text-primary) !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  border-radius: var(--nx-radius-pill) !important;
  border-color: var(--nx-border) !important;
  background-image: none !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

::placeholder {
  color: color-mix(in srgb, var(--nx-text-secondary) 82%, transparent);
}

.table,
table,
table.dataTable,
.dataTable {
  border-color: var(--nx-border) !important;
  color: var(--nx-text-primary);
}

.table thead th,
table.dataTable thead th {
  background: color-mix(in srgb, var(--nx-bg-secondary) 92%, transparent);
  color: var(--nx-text-secondary);
  border-bottom: 1px solid var(--nx-border) !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.74rem;
  padding-top: 14px;
  padding-bottom: 14px;
}

.table tbody td,
table.dataTable tbody td {
  border-top: 1px solid var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
}

.table tbody tr:hover td,
.dataTable:not(.js-selection-mode) tbody tr:hover td {
  background: color-mix(in srgb, var(--nx-primary-accent) 12%, transparent) !important;
}

.dataTables_filter input,
.dataTables_wrapper .dataTables_filter input {
  min-height: 40px;
  border-radius: var(--nx-radius-pill) !important;
  border-color: var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
}

.dataTables_wrapper .dataTables_paginate .paginate_button .page-link {
  border-radius: 999px !important;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent);
  color: var(--nx-text-secondary) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.active .page-link,
.dataTables_wrapper .dataTables_paginate .paginate_button.active a {
  background: var(--nx-gradient) !important;
  border-color: transparent !important;
  color: #fff !important;
}

.badge,
.status-badge,
.nexa-chip {
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 0.35rem 0.78rem;
  border: 1px solid transparent;
  display: inline-flex;
  align-items: center;
  gap: 0.38rem;
}

.status-connected,
.badge.bg-success,
.badge.badge-success {
  color: #0b5a49;
  background: rgba(14, 159, 110, 0.18);
  border-color: rgba(14, 159, 110, 0.33);
}

.status-pending,
.badge.bg-warning,
.badge.badge-warning {
  color: #7d5f00;
  background: rgba(251, 191, 36, 0.2);
  border-color: rgba(251, 191, 36, 0.38);
}

.status-disconnected,
.badge.bg-danger,
.badge.badge-danger {
  color: #8b1d3f;
  background: rgba(244, 114, 182, 0.16);
  border-color: rgba(244, 114, 182, 0.33);
}

html[data-theme="dark"] .status-connected,
html[data-theme="dark"] .badge.bg-success,
html[data-theme="dark"] .badge.badge-success {
  color: #8ff0cd;
  background: rgba(16, 185, 129, 0.16);
}

html[data-theme="dark"] .status-pending,
html[data-theme="dark"] .badge.bg-warning,
html[data-theme="dark"] .badge.badge-warning {
  color: #ffe085;
  background: rgba(245, 158, 11, 0.2);
}

html[data-theme="dark"] .status-disconnected,
html[data-theme="dark"] .badge.bg-danger,
html[data-theme="dark"] .badge.badge-danger {
  color: #fbb6ce;
  background: rgba(225, 29, 72, 0.22);
}

.modal {
  backdrop-filter: blur(2px);
}

.modal-dialog {
  margin-top: 80px;
}

.modal-content {
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
  box-shadow: var(--nx-shadow);
}

.modal-header,
.modal-footer {
  border-color: var(--nx-border);
  padding: 1rem 1.2rem;
}

.modal-title {
  font-family: Orbitron, Rajdhani, sans-serif;
  font-size: 1.15rem;
}

.dropdown-menu {
  padding: 8px;
  min-width: 200px;
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
}

.dropdown-item {
  border-radius: 12px;
  color: var(--nx-text-secondary);
  transition: var(--nx-transition);
}

.dropdown-item:hover,
.dropdown-item:focus {
  color: var(--nx-text-primary);
  background: color-mix(in srgb, var(--nx-primary-accent) 18%, transparent);
}

.nexa-hero-section {
  border-radius: var(--nx-radius-section);
  border: 1px solid var(--nx-border);
  background: linear-gradient(125deg, color-mix(in srgb, var(--nx-primary-accent) 20%, transparent), transparent 42%),
    linear-gradient(145deg, color-mix(in srgb, var(--nx-primary-navy) 9%, transparent), color-mix(in srgb, var(--nx-card-bg) 98%, transparent));
  box-shadow: var(--nx-shadow);
  padding: 2.4rem 2.6rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  position: relative;
  overflow: hidden;
}

.nexa-hero-section::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  right: -150px;
  top: -210px;
  background: color-mix(in srgb, var(--nx-primary-accent) 23%, transparent);
  filter: blur(1px);
}

.nexa-hero-content {
  max-width: 760px;
  position: relative;
  z-index: 1;
}

.nexa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--nx-primary-accent) 45%, transparent);
  background: color-mix(in srgb, var(--nx-primary-accent) 16%, transparent);
  color: var(--nx-primary-teal);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.34rem 0.82rem;
  margin-bottom: 1rem;
}

.nexa-hero-subtitle {
  max-width: 65ch;
  font-size: 1.02rem;
  color: var(--nx-text-secondary);
  margin-top: 0.9rem;
}

.nexa-chip-group {
  display: grid;
  gap: 10px;
  align-content: start;
  position: relative;
  z-index: 1;
}

.nexa-chip strong {
  color: inherit;
  font-size: 0.95rem;
}

.nexa-kpi-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}

.nexa-kpi-card {
  min-height: 172px;
  display: flex;
  gap: 14px;
  padding: 1.2rem;
  border-radius: 24px !important;
  border-color: color-mix(in srgb, var(--nx-primary-accent) 22%, transparent);
}

.nexa-kpi-icon {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--nx-gradient);
  box-shadow: 0 10px 20px var(--nx-glow-soft);
  flex-shrink: 0;
}

.nexa-kpi-body {
  display: grid;
  align-content: start;
  gap: 4px;
}

.nexa-kpi-label {
  font-size: 0.76rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nx-text-secondary);
  font-weight: 700;
}

.nexa-kpi-value {
  margin: 2px 0;
  font-size: clamp(1.7rem, 3.1vw, 2.25rem);
}

.nexa-kpi-meta {
  font-size: 0.82rem;
}

.nexa-quick-actions-card .card-body {
  padding-top: 1.2rem;
}

.nexa-quick-actions-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.nexa-quick-action {
  border-radius: 18px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-bg-secondary) 86%, transparent);
  padding: 1rem 1.1rem;
  font-weight: 600;
  color: var(--nx-text-primary);
  display: inline-flex;
  align-items: center;
  gap: 9px;
}

.nexa-quick-action:hover,
.nexa-quick-action:focus {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 54%, transparent);
  box-shadow: 0 14px 28px var(--nx-glow-soft);
  color: var(--nx-primary-teal);
}

.nexa-admin-panels {
  margin-bottom: 80px;
}

.nexa-health-list {
  display: grid;
  gap: 12px;
}

.nexa-health-item {
  border-radius: 16px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-bg-secondary) 84%, transparent);
  padding: 0.8rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.nexa-health-value {
  font-size: 1rem;
  color: var(--nx-text-primary);
}

.health-optimal,
.health-healthy,
.health-live,
.health-stable {
  border-color: rgba(16, 185, 129, 0.33);
}

.health-watch,
.health-degraded {
  border-color: rgba(234, 179, 8, 0.38);
}

.nexa-activity-card .card-body {
  overflow: hidden;
}

.nexa-activity-table {
  margin: 0;
}

.nexa-activity-table td,
.nexa-activity-table th {
  white-space: nowrap;
}

.instances-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.instance-card {
  border-radius: 24px;
  border: 1px solid var(--nx-border);
  background: var(--nx-card-bg);
  box-shadow: var(--nx-shadow-soft);
  padding: 1.2rem;
  position: relative;
  overflow: hidden;
  transition: var(--nx-transition);
}

.instance-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid transparent;
  pointer-events: none;
  transition: var(--nx-transition);
}

.instance-card:hover {
  transform: translateY(-4px) scale(1.008);
  box-shadow: 0 20px 40px var(--nx-glow);
}

.instance-card:hover::before {
  border-color: color-mix(in srgb, var(--nx-primary-accent) 56%, transparent);
}

.instance-card-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.95rem;
}

.instance-title {
  font-size: clamp(1.25rem, 2.1vw, 1.45rem);
  margin-bottom: 1rem;
  min-height: 58px;
}

.instance-meta {
  display: grid;
  gap: 10px;
  margin-bottom: 1rem;
}

.instance-meta-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}

.instance-meta-item .meta-value {
  font-weight: 600;
  color: var(--nx-text-primary);
}

.instance-progress-label {
  display: flex;
  justify-content: space-between;
  font-size: 0.83rem;
  margin-bottom: 0.5rem;
}

.instance-progress-track {
  height: 9px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--nx-bg-secondary) 90%, transparent);
  overflow: hidden;
}

.instance-progress-track span {
  height: 100%;
  display: block;
  border-radius: inherit;
  background: var(--nx-gradient);
}

.instance-actions {
  margin-top: 1rem;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.nexa-empty-state {
  grid-column: 1 / -1;
  text-align: center;
  border-radius: var(--nx-radius-section);
  border: 1px dashed var(--nx-border-strong);
  background: color-mix(in srgb, var(--nx-card-bg) 95%, transparent);
  padding: 3rem 1.5rem;
}

.dashboard-icon-widget .widget-icon {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--nx-gradient) !important;
  box-shadow: 0 14px 26px var(--nx-glow-soft);
}

.dashboard-icon-widget .widget-details h1 {
  font-size: clamp(1.5rem, 2.5vw, 1.95rem);
  line-height: 1.12;
  margin-bottom: 0.28rem;
  font-family: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.dashboard-icon-widget .bg-transparent-white {
  border-radius: 999px;
  padding: 0.24rem 0.6rem;
  background: color-mix(in srgb, var(--nx-primary-accent) 15%, transparent);
  color: var(--nx-text-secondary);
}

.notification-dropdown .dropdown-details,
.message-dropdown .dropdown-details,
.language-dropdown,
.user-dropdown-menu {
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
}

#pre-loader .app-loader .loading {
  border-top-color: var(--nx-primary-teal);
  border-right-color: var(--nx-primary-accent);
  border-bottom-color: var(--nx-primary-navy);
}

.mobile-bottom-menu {
  border-radius: 16px 16px 0 0;
  border-top: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 94%, transparent) !important;
  box-shadow: 0 -12px 24px rgba(2, 6, 23, 0.16);
}

.mobile-bottom-menu .menu-item {
  border-radius: 999px;
}

/* Tasks Kanban Refinements */
.all-tasks-kanban-view {
  padding-bottom: 14px !important;
}

.all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title,
.all-tasks-kanban-view > .nav.nav-tabs.title {
  background: var(--nx-card-bg);
  border: 0;
  border-bottom: 1px solid var(--nx-border);
  border-radius: var(--nx-radius-card) var(--nx-radius-card) 0 0;
  padding: 10px 12px 8px;
  margin-bottom: 0;
}

.all-tasks-kanban-view .tasks-kanban-shell > .card-header.title-tab {
  border-bottom: 1px solid var(--nx-border);
  background: var(--nx-card-bg);
  border-radius: var(--nx-radius-card) var(--nx-radius-card) 0 0;
  padding: 12px 14px;
}

.all-tasks-kanban-view .tasks-kanban-shell > .card-header.title-tab h4,
.all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title .title-tab h4,
.all-tasks-kanban-view > .nav.nav-tabs.title .title-tab h4 {
  margin: 0;
  padding: 10px 8px 8px !important;
  font-family: Orbitron, Rajdhani, sans-serif;
  letter-spacing: 0.01em;
}

.all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title > li > a,
.all-tasks-kanban-view > .nav.nav-tabs.title > li > a {
  border-radius: 999px;
  color: var(--nx-text-secondary);
  font-weight: 600;
  padding: 10px 14px;
  border: 1px solid transparent;
  transition: var(--nx-transition);
}

.all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title > li > a.active,
.all-tasks-kanban-view > .nav.nav-tabs.title > li > a.active {
  color: var(--nx-text-primary);
  background: color-mix(in srgb, var(--nx-primary-accent) 16%, transparent);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 32%, transparent);
}

.all-tasks-kanban-view .tasks-kanban-shell > .card-header.title-tab .title-button-group,
.all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title .title-button-group,
.all-tasks-kanban-view > .nav.nav-tabs.title .title-button-group {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 4px 2px 4px 0;
}

.all-tasks-kanban-view .tasks-kanban-shell > .card-header.title-tab .title-button-group .btn,
.all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title .title-button-group .btn,
.all-tasks-kanban-view > .nav.nav-tabs.title .title-button-group .btn {
  border-radius: 999px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
  font-weight: 600;
}

.all-tasks-kanban-view > .card,
.all-tasks-kanban-view .tasks-kanban-shell {
  border: 1px solid var(--nx-border);
  border-radius: var(--nx-radius-card);
  background: color-mix(in srgb, var(--nx-card-bg) 97%, transparent);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.all-tasks-kanban-view #js-kanban-filter-container {
  border-bottom: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-bg-secondary) 78%, transparent);
  padding: 10px 12px !important;
}

.all-tasks-kanban-view #js-kanban-filter-container .btn,
.all-tasks-kanban-view #js-kanban-filter-container .form-control,
.all-tasks-kanban-view #js-kanban-filter-container .select2-choice {
  border-radius: 999px !important;
  border-color: var(--nx-border) !important;
}

.all-tasks-kanban-view #js-kanban-filter-container .form-control,
.all-tasks-kanban-view #js-kanban-filter-container .select2-choice {
  background: var(--nx-card-bg);
  color: var(--nx-text-primary);
}

.all-tasks-kanban-view #kanban-wrapper {
  background: transparent;
  padding: 12px 10px 14px;
}

.all-tasks-kanban-view #kanban-container {
  background: transparent;
  border: 0;
  padding: 8px 0 12px;
}

.all-tasks-kanban-view .kanban-col {
  width: 314px;
  margin: 0 10px;
}

.all-tasks-kanban-view .kanban-col-title {
  border: 1px solid var(--nx-border);
  border-radius: 16px 16px 0 0;
  margin: 0 3px 0 0;
  padding: 12px 14px;
  background: var(--nx-card-bg);
  color: var(--nx-text-primary);
  font-weight: 700;
  line-height: 1.35;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.all-tasks-kanban-view .kanban-item-count {
  color: var(--nx-text-secondary);
  font-weight: 700;
}

.all-tasks-kanban-view .kanban-item-list {
  margin-right: 3px;
  margin-top: 0;
  border: 1px solid var(--nx-border);
  border-top: 0;
  border-radius: 0 0 16px 16px;
  background: color-mix(in srgb, var(--nx-bg-secondary) 86%, transparent);
  padding: 10px 8px 12px;
}

.all-tasks-kanban-view a.kanban-item {
  width: 100%;
  margin: 0 0 10px 0;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--nx-border) 88%, transparent);
  background: var(--nx-card-bg);
  color: var(--nx-text-primary);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
  transition: var(--nx-transition);
}

.all-tasks-kanban-view a.kanban-item:hover,
.all-tasks-kanban-view a.kanban-item:focus {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--nx-primary-accent) 44%, transparent);
  background: var(--nx-card-bg);
  box-shadow: 0 14px 26px var(--nx-glow-soft);
  color: var(--nx-text-primary);
}

.all-tasks-kanban-view a.kanban-item.unread {
  border-color: color-mix(in srgb, var(--nx-highlight) 36%, var(--nx-border));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--nx-highlight) 20%, transparent), 0 10px 24px rgba(15, 23, 42, 0.1);
}

.all-tasks-kanban-view .kanban-item .avatar img {
  width: 28px;
  height: 28px;
  margin-right: 10px;
  border-radius: 50%;
  border: 1px solid var(--nx-border);
  object-fit: cover;
}

.all-tasks-kanban-view .kanban-item .meta.badge,
.all-tasks-kanban-view .kanban-item .badge.rounded-pill {
  border-radius: 999px !important;
}

.all-tasks-kanban-view .kanban-item-list::-webkit-scrollbar,
.all-tasks-kanban-view #kanban-wrapper::-webkit-scrollbar {
  width: 9px;
  height: 10px;
}

.all-tasks-kanban-view .kanban-item-list::-webkit-scrollbar-thumb,
.all-tasks-kanban-view #kanban-wrapper::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--nx-primary-accent) 45%, transparent);
  border-radius: 999px;
}

.all-tasks-kanban-view .kanban-item-list::-webkit-scrollbar-track,
.all-tasks-kanban-view #kanban-wrapper::-webkit-scrollbar-track {
  background: color-mix(in srgb, var(--nx-bg-secondary) 90%, transparent);
  border-radius: 999px;
}

/* Project Tasks Kanban Harmony */
.project-details-view .project-title-section .page-title {
  background: color-mix(in srgb, var(--nx-card-bg) 97%, transparent);
  border: 1px solid var(--nx-border);
  border-radius: var(--nx-radius-card);
  box-shadow: var(--nx-shadow-soft);
  padding: 18px 20px;
  margin-bottom: 12px !important;
}

.project-details-view .project-title-section .page-title h1 {
  margin: 0;
  font-family: Orbitron, Rajdhani, sans-serif;
  font-size: clamp(1.8rem, 2.4vw, 2.35rem);
  font-weight: 700;
  line-height: 1.24;
  letter-spacing: 0.01em;
  color: var(--nx-text-primary);
}

.project-details-view .project-title-button-group-section .title-button-group {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
}

.project-details-view .project-title-button-group-section .title-button-group .btn {
  border-radius: 999px;
  border: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 96%, transparent);
  color: var(--nx-text-primary);
  font-weight: 600;
}

.project-details-view #project-tabs {
  background: color-mix(in srgb, var(--nx-card-bg) 97%, transparent);
  border: 1px solid var(--nx-border);
  border-radius: var(--nx-radius-card) !important;
  box-shadow: var(--nx-shadow-soft);
  padding: 8px 10px;
  margin-bottom: 14px !important;
  gap: 8px;
}

.project-details-view #project-tabs > li > a {
  border-radius: 999px !important;
  border: 1px solid transparent !important;
  color: var(--nx-text-secondary) !important;
  font-weight: 600;
  padding: 10px 14px !important;
  line-height: 1.2;
}

.project-details-view #project-tabs > li > a.active {
  color: var(--nx-text-primary) !important;
  border-color: color-mix(in srgb, var(--nx-primary-accent) 34%, transparent) !important;
  background: color-mix(in srgb, var(--nx-primary-accent) 15%, transparent) !important;
}

.project-details-view #project-tabs > li > a:hover {
  color: var(--nx-text-primary) !important;
  border-color: color-mix(in srgb, var(--nx-primary-accent) 28%, transparent) !important;
  background: color-mix(in srgb, var(--nx-primary-accent) 11%, transparent) !important;
}

.project-details-view #project-tasks_kanban-section .project-tasks-kanban-view {
  margin-top: 0 !important;
}

.project-details-view #project-tasks_kanban-section .project-tasks-kanban-view .tasks-kanban-shell {
  margin-bottom: 0;
}

/* Dashboard UX Refinements */
html[data-theme="dark"] .bg-white,
html[data-theme="dark"] .card.bg-white,
html[data-theme="dark"] .dropdown-details.bg-white,
html[data-theme="dark"] .table,
html[data-theme="dark"] .table tbody td,
html[data-theme="dark"] .table thead th,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .dropdown-menu,
html[data-theme="dark"] .select2-drop,
html[data-theme="dark"] .select2-results,
html[data-theme="dark"] .popover,
html[data-theme="dark"] .tooltip-inner {
  background-color: var(--nx-card-bg) !important;
  color: var(--nx-text-primary) !important;
}

html[data-theme="dark"] .text-default,
html[data-theme="dark"] .text-dark,
html[data-theme="dark"] .text-black,
html[data-theme="dark"] .table a:not(.btn),
html[data-theme="dark"] .dropdown-item,
html[data-theme="dark"] .card .card-header {
  color: var(--nx-text-primary) !important;
}

html[data-theme="dark"] .border,
html[data-theme="dark"] .b-r,
html[data-theme="dark"] .b-l,
html[data-theme="dark"] .b-t,
html[data-theme="dark"] .b-b {
  border-color: var(--nx-border) !important;
}

/* Dashboard Layout: remove legacy stretch/overlap behavior */
body.dashboard-page .scrollable-page,
body.dashboard-page .main-scrollable-page,
body.dashboard-page .page-container,
body.dashboard-page .page-wrapper {
  overflow-x: hidden;
}

body.dashboard-page .page-container,
body.dashboard-page .main-scrollable-page {
  height: auto;
  min-height: 0;
}

body.dashboard-page #page-content.dashboard-content,
body.dashboard-page #page-content.dashboard-view {
  padding-top: 0;
  padding-bottom: 40px;
}

body.dashboard-page .dashboard-view .dashboards-row,
body.dashboard-page .nexa-dashboard-view .dashboards-row {
  align-items: flex-start;
}

body.dashboard-page .dashboard-view .dashboards-row > .widget-container,
body.dashboard-page .nexa-dashboard-view .dashboards-row > .widget-container {
  display: block;
  min-width: 0;
  min-height: 0;
  margin-bottom: 18px;
}

body.dashboard-page .dashboard-view .dashboards-row > .widget-container > .card,
body.dashboard-page .nexa-dashboard-view .dashboards-row > .widget-container > .card,
body.dashboard-page .dashboard-view .dashboards-row > .widget-container > a.white-link > .card,
body.dashboard-page .nexa-dashboard-view .dashboards-row > .widget-container > a.white-link > .card {
  width: 100%;
  height: auto;
  min-height: 0;
  max-width: 100%;
}

body.dashboard-page .dashboard-view .card .card-header,
body.dashboard-page .nexa-dashboard-view .card .card-header {
  font-family: Rajdhani, Inter, sans-serif;
  font-size: 0.98rem;
  font-weight: 700;
  line-height: 1.32;
}

body.dashboard-page .dashboard-view .card .card-body,
body.dashboard-page .nexa-dashboard-view .card .card-body {
  padding: 1rem 1.05rem;
  min-width: 0;
}

body.dashboard-page .dashboard-icon-widget .card-body {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 102px;
  padding: 0.95rem 1rem;
}

body.dashboard-page .dashboard-icon-widget .widget-icon {
  float: none;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 13px;
}

body.dashboard-page .dashboard-icon-widget .widget-details {
  position: static;
  right: auto;
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  text-align: left;
}

html[dir="rtl"] body.dashboard-page .dashboard-icon-widget .widget-details {
  text-align: right;
}

body.dashboard-page .dashboard-icon-widget .widget-details h1,
body.dashboard-page .dashboard-widget-value {
  margin: 0;
  max-width: 100%;
  font-family: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: clamp(1.62rem, 2.15vw, 2.1rem);
  line-height: 1.1;
  font-weight: 700;
  color: var(--nx-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.dashboard-page .dashboard-icon-widget .widget-details .bg-transparent-white {
  font-size: 0.84rem;
  line-height: 1.3;
  max-width: 100%;
}

body.dashboard-page #js-clock-in-out .widget-details .btn {
  min-height: 34px !important;
  padding: 0.32rem 0.7rem;
  font-size: 0.88rem;
  line-height: 1.15;
  border-radius: 999px !important;
}

body.dashboard-page #js-clock-in-out .widget-details .btn .icon-16,
body.dashboard-page #js-clock-in-out .widget-details .btn .icon {
  width: 13px;
  height: 13px;
}

body.dashboard-page #js-clock-in-out .widget-details .bg-transparent-white {
  margin-top: 4px !important;
  font-size: 0.78rem;
  line-height: 1.28;
  padding: 0.14rem 0.5rem;
}

body.dashboard-page .dashboard-chart-wrap {
  position: relative;
  width: 100%;
  min-height: 240px;
  max-height: 320px;
}

body.dashboard-page .dashboard-chart-wrap.dashboard-chart-wrap-lg {
  height: 300px;
}

body.dashboard-page .dashboard-chart-wrap.dashboard-chart-wrap-md {
  height: 250px;
  min-height: 240px;
}

body.dashboard-page .tasks-overview-canvas,
body.dashboard-page .timesheet-statistics-canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
}

body.dashboard-page #project-timeline-container,
body.dashboard-page #upcoming-event-container,
body.dashboard-page #client-projects-list,
body.dashboard-page #all_tasks_overview-widget,
body.dashboard-page #my_tasks_overview-widget,
body.dashboard-page #leads-overview-widget {
  max-height: 340px;
  overflow-y: auto;
  overflow-x: hidden;
}

body.dashboard-page .sidebar-scroll {
  overflow-x: hidden !important;
}

body.dashboard-page .sidebar-menu li {
  border-radius: 16px;
  overflow: hidden;
}

body.dashboard-page .sidebar-menu li.expand.open > ul {
  margin: 6px 0 6px 8px;
  padding: 4px 0;
  border-left: 0;
  background: transparent !important;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

html[dir="rtl"] body.dashboard-page .sidebar-menu li.expand.open > ul {
  margin: 6px 8px 6px 0;
}

body.dashboard-page .sidebar-menu li ul li a {
  margin: 0 6px;
  min-height: 40px;
  padding: 0.62rem 0.9rem;
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.24;
}

body.dashboard-page .sidebar-menu li ul li a .feather-minus {
  display: none !important;
}

body.dashboard-page .navbar-custom {
  min-height: 62px;
  top: 16px;
  background: color-mix(in srgb, var(--nx-card-bg) 92%, transparent);
}

body.dashboard-page .navbar-custom::before,
body.dashboard-page .navbar-custom::after {
  display: none !important;
}

body.dashboard-page .navbar-custom .nav-link {
  min-height: 38px;
}

body.dashboard-page .navbar-custom .navbar-nav {
  display: flex;
  align-items: center;
  gap: 4px;
}

body.dashboard-page .navbar-custom .nav-item {
  display: flex;
  align-items: center;
}

body.dashboard-page #default-navbar .nav-link.dropdown-toggle {
  padding: 0 14px !important;
}

body.dashboard-page #default-navbar .nav-link .user-name {
  line-height: 1.2;
}

body.dashboard-page #user-dropdown {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
}

body.dashboard-page .notification-badge-container {
  position: absolute;
  right: 5px;
  top: 3px;
}

@media (max-width: 1400px) {
  .navbar-custom,
  .public-navbar {
    right: 16px;
  }

  .page-container {
    margin-left: calc(var(--nx-sidebar-width) + 16px);
  }

  html[dir="rtl"] .navbar-custom,
  html[dir="rtl"] .public-navbar {
    left: 16px;
    right: calc(var(--nx-sidebar-width) + 16px);
  }

  html[dir="rtl"] .page-container {
    margin-left: 0;
    margin-right: calc(var(--nx-sidebar-width) + 16px);
  }
}

@media (max-width: 1200px) {
  .nexa-kpi-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .instances-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nexa-quick-actions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1024px) {
  .sidebar {
    left: 10px;
    width: 260px;
  }

  .navbar-custom,
  .public-navbar {
    left: 282px;
    top: 10px;
    right: 10px;
  }

  .page-container {
    margin-left: 272px;
    margin-top: 98px;
  }

  .sidebar-toggled .page-container {
    margin-left: 110px;
  }

  .sidebar-toggled .navbar-custom {
    left: 120px;
  }

  .nexa-hero-section {
    padding: 2rem;
    gap: 12px;
  }

  .nexa-hero-title {
    font-size: clamp(3.2rem, 6vw, 4rem);
  }

  html[dir="rtl"] .sidebar {
    left: auto;
    right: 10px;
  }

  html[dir="rtl"] .navbar-custom,
  html[dir="rtl"] .public-navbar {
    left: 10px;
    right: 282px;
  }

  html[dir="rtl"] .page-container {
    margin-left: 0;
    margin-right: 272px;
  }

  html[dir="rtl"] .sidebar-toggled .page-container {
    margin-left: 0;
    margin-right: 110px;
  }

  html[dir="rtl"] .sidebar-toggled .navbar-custom {
    left: 10px;
    right: 120px;
  }
}

@media (max-width: 990px) {
  .sidebar {
    width: 280px;
    left: -320px;
    top: 10px;
    bottom: 10px;
  }

  .sidebar-off {
    left: -320px;
  }

  .sidebar-toggled .sidebar-off {
    left: 10px;
  }

  .navbar-custom,
  .public-navbar,
  .sidebar-toggled .navbar-custom {
    left: 10px;
    right: 10px;
  }

  .page-container,
  .sidebar-toggled .page-container {
    margin-left: 0 !important;
    margin-top: 96px;
  }

  .nexa-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nexa-admin-panels .widget-container {
    width: 100%;
  }

  .dashboard-view .dashboards-row > .widget-container,
  .nexa-dashboard-view .dashboards-row > .widget-container {
    margin-bottom: 14px;
  }

  .all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title,
  .all-tasks-kanban-view > .nav.nav-tabs.title {
    padding: 8px 8px 6px;
  }

  .all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title .title-button-group,
  .all-tasks-kanban-view > .nav.nav-tabs.title .title-button-group {
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
  }

  .all-tasks-kanban-view .kanban-col {
    width: 286px;
    margin: 0 8px;
  }

  .project-details-view .project-title-section .page-title {
    padding: 15px 14px;
  }

  .project-details-view .project-title-button-group-section .title-button-group {
    margin-top: 10px;
    justify-content: flex-start;
  }

  html[dir="rtl"] .sidebar {
    left: auto;
    right: -320px;
  }

  html[dir="rtl"] .sidebar-off {
    left: auto;
    right: -320px;
  }

  html[dir="rtl"] .sidebar-toggled .sidebar-off {
    left: auto;
    right: 10px;
  }
}

@media (max-width: 767px) {
  .page-wrapper,
  #page-content {
    padding: 16px 10px 82px;
  }

  .dashboard-view > section,
  .instances-view > section,
  .nexa-dashboard-view > section {
    margin-bottom: 54px;
  }

  .nexa-hero-section {
    display: grid;
    padding: 1.4rem;
    border-radius: 24px;
  }

  .nexa-hero-title {
    font-size: clamp(2.2rem, 9vw, 3rem);
  }

  .nexa-hero-subtitle {
    font-size: 0.95rem;
  }

  .nexa-kpi-grid {
    grid-template-columns: 1fr;
  }

  .nexa-kpi-card {
    min-height: 142px;
  }

  .instances-grid,
  .nexa-quick-actions-grid {
    grid-template-columns: 1fr;
  }

  .instance-title {
    min-height: auto;
  }

  .theme-toggle-label {
    display: none;
  }

  .theme-toggle-item .theme-toggle-btn {
    width: 52px;
    justify-content: center;
    padding: 0 !important;
  }

  .modal-dialog {
    margin: 10px;
  }

  .modal-content {
    border-radius: 20px !important;
  }

  .card:hover,
  .instance-card:hover,
  .btn:hover,
  .btn:focus,
  .nexa-quick-action:hover,
  .nexa-quick-action:focus {
    transform: none;
  }

  .projects-overview-card .box {
    grid-template-columns: 1fr;
  }

  .projects-overview-card .box .b-r {
    border-right: 0;
    border-bottom: 1px solid var(--nx-border);
  }

  .projects-overview-card .box .box-content:last-child .b-r,
  .projects-overview-card .box .box-content:last-child > div {
    border-bottom: 0;
  }

  .next-reminder-widget .b-r {
    border-right: 0;
    border-bottom: 1px solid var(--nx-border);
    padding-bottom: 0.9rem;
  }

  .next-reminder-widget .row > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    padding: 0.9rem 1rem;
  }

  .tasks-overview-card .card-body,
  .my-timesheet-card .card-body,
  .all-timesheet-card .card-body,
  .nexa-chart-card .card-body {
    min-height: 270px;
  }

  .tasks-overview-canvas,
  .timesheet-statistics-canvas {
    min-height: 180px;
  }

  body.dashboard-page .dashboard-chart-wrap.dashboard-chart-wrap-lg {
    height: 240px;
    max-height: 240px;
  }

  body.dashboard-page .dashboard-chart-wrap.dashboard-chart-wrap-md {
    height: 200px;
    max-height: 200px;
  }

  .all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title > li > a,
  .all-tasks-kanban-view > .nav.nav-tabs.title > li > a {
    padding: 8px 10px;
  }

  .all-tasks-kanban-view .tasks-kanban-shell > .nav.nav-tabs.title .title-button-group .btn,
  .all-tasks-kanban-view > .nav.nav-tabs.title .title-button-group .btn {
    padding: 8px 12px !important;
  }

  .all-tasks-kanban-view #js-kanban-filter-container {
    padding: 8px !important;
  }

  .all-tasks-kanban-view .kanban-col {
    width: 244px !important;
    margin: 0 7px !important;
  }

  .all-tasks-kanban-view .kanban-col-title {
    padding: 10px 11px;
    border-radius: 14px 14px 0 0;
  }

  .all-tasks-kanban-view .kanban-item-list {
    border-radius: 0 0 14px 14px;
    padding: 8px 6px 10px;
  }

  .all-tasks-kanban-view a.kanban-item {
    width: 100% !important;
    margin-bottom: 8px;
    padding: 10px;
    border-radius: 12px;
  }

  .project-details-view .project-title-section .page-title h1 {
    font-size: clamp(1.45rem, 6.2vw, 1.9rem);
  }

  .project-details-view #project-tabs {
    padding: 8px;
    gap: 6px;
  }

  .project-details-view #project-tabs > li > a {
    padding: 8px 11px !important;
  }
}

@media (max-width: 500px) {
  .fixed-top {
    position: fixed !important;
  }

  .navbar-custom,
  .public-navbar {
    border-radius: 18px;
  }

  .sidebar-toggled .sidebar {
    width: calc(100% - 20px);
  }

  .card {
    border-radius: 20px !important;
  }
}

/* Clients Page Refinements */
body.clients-page .page-container,
body.clients-page .main-scrollable-page,
body.clients-page .clients-index-page {
  overflow-x: hidden;
}

body.clients-page .page-container {
  margin-top: 92px;
}

body.clients-page .navbar-custom {
  top: 14px;
  min-height: 60px;
}

body.clients-page #page-content.clients-index-page {
  max-width: min(1240px, 100%);
  padding-top: 14px;
  padding-bottom: 92px;
}

body.clients-page #client-tabs.clients-tabs {
  border: 1px solid var(--nx-border);
  border-radius: var(--nx-radius-card);
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent) !important;
  box-shadow: var(--nx-shadow-soft);
  padding: 8px 12px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

body.clients-page #client-tabs.clients-tabs > li {
  float: none;
  margin: 0;
}

body.clients-page #client-tabs.clients-tabs > li > a {
  border-radius: 999px;
  border: 1px solid transparent !important;
  padding: 10px 14px;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  color: var(--nx-text-secondary);
  font-size: 0.92rem;
  line-height: 1.2;
  font-weight: 600;
}

body.clients-page #client-tabs.clients-tabs > li > a.active {
  background: color-mix(in srgb, var(--nx-primary-accent) 16%, transparent) !important;
  border-color: color-mix(in srgb, var(--nx-primary-accent) 38%, transparent) !important;
  color: var(--nx-text-primary) !important;
}

body.clients-page #client-tabs .tab-title.clients-tabs-actions {
  border: 0;
  margin-left: auto;
  padding: 0;
  display: flex;
  align-items: center;
}

body.clients-page #client-tabs .title-button-group.clients-title-buttons {
  margin: 0;
  float: none;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

body.clients-page #client-tabs .title-button-group.clients-title-buttons .btn {
  min-height: 38px;
  padding: 0.44rem 0.92rem;
  font-size: 0.88rem;
}

body.clients-page .clients-tab-content {
  margin-top: 10px;
}

body.clients-page .clients-table-card {
  margin-bottom: 0;
  border-radius: 0 0 var(--nx-radius-card) var(--nx-radius-card) !important;
  border-color: var(--nx-border);
  background: color-mix(in srgb, var(--nx-card-bg) 98%, transparent);
  box-shadow: 0 12px 28px rgba(2, 8, 23, 0.08);
}

body.clients-page .clients-table-card:hover {
  transform: none;
  border-color: var(--nx-border);
  box-shadow: 0 12px 28px rgba(2, 8, 23, 0.08);
}

body.clients-page .clients-table-card::after {
  display: none;
}

body.clients-page .clients-table-responsive {
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 2px;
}

body.clients-page #client-table_wrapper .filter-section-container {
  padding: 10px 14px;
  border-bottom: 1px solid var(--nx-border);
  background: color-mix(in srgb, var(--nx-bg-secondary) 78%, transparent);
}

body.clients-page #client-table_wrapper .filter-section-flex-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}

body.clients-page #client-table_wrapper .filter-section-left,
body.clients-page #client-table_wrapper .filter-section-right {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  text-align: start;
}

body.clients-page #client-table_wrapper .filter-item-box {
  margin: 0;
}

body.clients-page #client-table_wrapper .filter-item-box .btn,
body.clients-page #client-table_wrapper .datatable-export .btn,
body.clients-page #client-table_wrapper .column-show-hide-popover {
  min-height: 36px;
  height: 36px;
  padding: 0.35rem 0.75rem;
  font-size: 0.84rem;
}

body.clients-page #client-table_wrapper .dataTables_filter input {
  height: 36px;
  min-height: 36px;
  width: 220px !important;
  margin: 0;
  font-size: 0.88rem;
  border-radius: 999px !important;
}

body.clients-page #client-table_wrapper .filter-form {
  border-top: 1px solid var(--nx-border);
  margin-top: 0;
  padding: 9px 14px;
}

body.clients-page #client-table_wrapper .filter-form .filter-item-box {
  margin: 0 6px 6px 0;
}

body.clients-page #client-table {
  width: 100% !important;
  min-width: 1120px;
}

body.clients-page #client-table thead th {
  padding: 11px 12px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--nx-text-secondary);
  border-bottom-color: var(--nx-border) !important;
  background: color-mix(in srgb, var(--nx-bg-secondary) 82%, transparent);
}

body.clients-page #client-table tbody td {
  padding: 10px 12px;
  font-size: 0.9rem;
  line-height: 1.36;
  color: var(--nx-text-primary);
  vertical-align: middle;
  background: color-mix(in srgb, var(--nx-card-bg) 97%, transparent);
}

body.clients-page #client-table tbody td.text-right {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

body.clients-page #client-table th.option,
body.clients-page #client-table td.option {
  min-width: 78px;
  width: 78px;
  white-space: nowrap;
}

body.clients-page #client-table td.option a,
body.clients-page #client-table td.option .dropdown-toggle,
body.clients-page #client-table .dtr-details .edit:not(.dropdown-item),
body.clients-page #client-table .dtr-details .delete:not(.dropdown-item) {
  width: 34px;
  height: 34px;
  min-width: 34px;
  padding: 0;
  margin: 0 2px;
  border-radius: 50%;
}

body.clients-page .sidebar-scroll {
  padding-top: 12px;
}

body.clients-page .sidebar-menu {
  gap: 7px;
}

body.clients-page .sidebar-menu li a {
  padding-top: 0.76rem;
  padding-bottom: 0.76rem;
}

html[dir="rtl"] body.clients-page #client-tabs .tab-title.clients-tabs-actions {
  margin-left: 0;
  margin-right: auto;
}

html[dir="rtl"] body.clients-page #client-tabs .title-button-group.clients-title-buttons {
  justify-content: flex-start;
}

html[dir="rtl"] body.clients-page #client-table_wrapper .filter-form .filter-item-box {
  margin: 0 0 6px 6px;
}

@media (max-width: 1199px) {
  body.clients-page #client-tabs .tab-title.clients-tabs-actions {
    width: 100%;
    margin-left: 0;
  }

  body.clients-page #client-tabs .title-button-group.clients-title-buttons {
    width: 100%;
    justify-content: flex-start;
  }
}

@media (max-width: 991px) {
  body.clients-page .page-container,
  body.clients-page .sidebar-toggled .page-container {
    margin-top: 88px;
  }

  body.clients-page #page-content.clients-index-page {
    padding-top: 10px;
  }

  body.clients-page #client-table_wrapper .filter-section-right {
    width: 100%;
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  body.clients-page #page-content.clients-index-page {
    padding-bottom: 102px;
  }

  body.clients-page #client-tabs.clients-tabs {
    padding: 8px 8px;
    gap: 6px;
  }

  body.clients-page #client-tabs.clients-tabs > li > a {
    min-height: 36px;
    padding: 8px 12px;
    font-size: 0.85rem;
  }

  body.clients-page #client-tabs .title-button-group.clients-title-buttons .btn {
    min-height: 34px;
    padding: 0.34rem 0.72rem;
    font-size: 0.82rem;
  }

  body.clients-page #client-table_wrapper .filter-section-container,
  body.clients-page #client-table_wrapper .filter-form {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.clients-page #client-table_wrapper .dataTables_filter input {
    width: min(100%, 240px) !important;
  }

  body.clients-page #client-table {
    min-width: 920px;
  }
}
