/* ============================================================
   DISALTI — Ajustes mínimos sobre SmartHR (sin recolorear a azul)
   ============================================================ */

/* Logo text fallback */
.disalti-brand {
  font-weight: 800;
  letter-spacing: 0.14em;
  color: #0ea5e9;
  font-size: 1.15rem;
  text-decoration: none;
}
.disalti-brand--white { color: #fff !important; }

/* Perfil header: menú ancho según nombre + avatar SmartHR */
.header .profile-dropdown .dropdown-menu {
  min-width: 280px;
  width: max-content;
  max-width: min(440px, 92vw);
}
.header .profile-dropdown .dropdown-menu .card {
  width: 100%;
}
.header .profile-dropdown .profile-dropdown-meta {
  min-width: 0;
  flex: 1 1 auto;
}
.header .profile-dropdown .profile-dropdown-meta h5 {
  white-space: nowrap;
  font-size: 0.95rem;
  line-height: 1.35;
  font-weight: 600;
}
.header .profile-dropdown .profile-dropdown-meta p {
  white-space: nowrap;
}
.header .profile-dropdown .avatar img,
.sidebar .avatar img[data-session-avatar] {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

/* Roles: stack de avatares Smart */
.avatar-list-stacked .avatar {
  margin-left: -8px;
}
.avatar-list-stacked .avatar:first-child {
  margin-left: 0;
}
.avatar-xs {
  width: 22px;
  height: 22px;
  font-size: 10px;
}

/* ── Sidebar DISALTI: logo arriba, menú debajo (sin solaparse) ── */
.main-wrapper > .sidebar,
.sidebar#sidebar {
  display: grid !important;
  grid-template-rows: 56px minmax(0, 1fr) !important;
  grid-template-columns: 1fr !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

.main-wrapper > .sidebar .modern-profile,
.main-wrapper > .sidebar .sidebar-header {
  display: none !important;
}

/* Mata el fixed del template (style.css) que deja el menú debajo del logo */
.sidebar .sidebar-logo,
.main-wrapper > .sidebar .sidebar-logo {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  grid-row: 1 !important;
  grid-column: 1 !important;
  flex: 0 0 56px !important;
  width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  z-index: 6 !important;
  overflow: hidden !important;
  background: inherit !important;
  border-bottom: 1px solid #ededed !important;
  box-sizing: border-box !important;
  isolation: isolate;
}

.main-wrapper > .sidebar {
  background: #fff;
}

[data-theme='dark'] .main-wrapper > .sidebar,
[data-sidebar='dark'] .main-wrapper > .sidebar {
  background: #0d0d0d;
}

[data-theme='dark'] .main-wrapper > .sidebar .sidebar-logo,
[data-sidebar='dark'] .main-wrapper > .sidebar .sidebar-logo {
  background: #0d0d0d !important;
  border-bottom-color: #1f2228 !important;
}

.main-wrapper > .sidebar > .sidebar-inner,
.main-wrapper > .sidebar > .slimScrollDiv,
.main-wrapper > .sidebar .slimScrollDiv,
.main-wrapper > .sidebar > .sidebar-inner.slimscroll {
  grid-row: 2 !important;
  grid-column: 1 !important;
  position: relative !important;
  top: 0 !important;
  left: auto !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 12px 16px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

.sidebar .slimScrollDiv {
  top: 0 !important;
}

.sidebar .sidebar-menu,
.main-wrapper > .sidebar .sidebar-menu,
.main-wrapper > .sidebar .slimScrollDiv .sidebar-menu {
  margin-top: 0 !important;
  padding-top: 8px !important;
}

.main-wrapper > .sidebar .sidebar-menu > ul > li {
  margin-bottom: 8px !important;
}

.main-wrapper > .sidebar .embid-brand-name {
  line-height: 1.2 !important;
}

.mini-sidebar .main-wrapper > .sidebar .sidebar-logo {
  width: 100% !important;
}

.mini-sidebar:not(.expand-menu) .main-wrapper > .sidebar .sidebar-logo .logo,
.mini-sidebar:not(.expand-menu) .main-wrapper > .sidebar .sidebar-logo .dark-logo {
  display: none !important;
}

.mini-sidebar:not(.expand-menu) .main-wrapper > .sidebar .sidebar-logo .logo-small {
  display: block !important;
  margin: 0 auto !important;
}

.mini-sidebar:not(.expand-menu) .main-wrapper > .sidebar .sidebar-logo .embid-brand-name {
  display: none !important;
}

/* Sin menú horizontal del demo SmartHR (Dashboard/Super Admin/Applications arriba) */
#horizontal-menu,
#horizontal-single,
#horizontal-overlay,
#two-col-sidebar,
#stacked-sidebar,
.header .sidebar-horizontal {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/*
 * Labels visibles (portal display:contents). El tamaño va por profundidad
 * más abajo: no forzar 15px aquí o las hojas (Preventa, Venta Diaria) se inflan.
 */
body:not(.mini-sidebar) #sidebar-menu li[data-disalti-keep] a > span:not(.menu-arrow):not(.badge),
body.mini-sidebar.expand-menu #sidebar-menu li[data-disalti-keep] a > span:not(.menu-arrow):not(.badge),
body:not(.mini-sidebar) #sidebar-menu [data-disalti-nav-host] li a > span:not(.menu-arrow):not(.badge),
body.mini-sidebar.expand-menu #sidebar-menu [data-disalti-nav-host] li a > span:not(.menu-arrow):not(.badge) {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  max-width: none !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* L1 — Ventas / Territorio / Administración */
body:not(.mini-sidebar) #sidebar-menu [data-disalti-nav-host] > li.submenu:not(.submenu-two) > a > span:not(.menu-arrow):not(.badge),
body.mini-sidebar.expand-menu #sidebar-menu [data-disalti-nav-host] > li.submenu:not(.submenu-two) > a > span:not(.menu-arrow):not(.badge),
body:not(.mini-sidebar) #sidebar-menu > ul > li.submenu[data-disalti-keep]:not(.submenu-two) > a > span:not(.menu-arrow):not(.badge),
body.mini-sidebar.expand-menu #sidebar-menu > ul > li.submenu[data-disalti-keep]:not(.submenu-two) > a > span:not(.menu-arrow):not(.badge) {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

/* L2+ — empresas, marcas, hojas. Misma tipografía al agregar ítems. */
body:not(.mini-sidebar) #sidebar-menu [data-disalti-nav-host] li ul a,
body.mini-sidebar.expand-menu #sidebar-menu [data-disalti-nav-host] li ul a,
body:not(.mini-sidebar) #sidebar-menu [data-disalti-nav-host] li ul a > span:not(.menu-arrow):not(.badge),
body.mini-sidebar.expand-menu #sidebar-menu [data-disalti-nav-host] li ul a > span:not(.menu-arrow):not(.badge),
body:not(.mini-sidebar) #sidebar-menu li[data-disalti-keep] ul a,
body.mini-sidebar.expand-menu #sidebar-menu li[data-disalti-keep] ul a,
body:not(.mini-sidebar) #sidebar-menu li[data-disalti-keep] ul a > span:not(.menu-arrow):not(.badge),
body.mini-sidebar.expand-menu #sidebar-menu li[data-disalti-keep] ul a > span:not(.menu-arrow):not(.badge) {
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

/* Mini contraído (72px): solo iconos, sin texto recortado */
@media (min-width: 992px) {
  body.mini-sidebar:not(.expand-menu) #sidebar-menu li[data-disalti-keep] > a > span:not(.menu-arrow):not(.badge),
  body.mini-sidebar:not(.expand-menu) #sidebar-menu li[data-disalti-keep] .disalti-sub-label {
    display: none !important;
    width: 0 !important;
    overflow: hidden !important;
  }

  body.mini-sidebar:not(.expand-menu) #sidebar-menu li[data-disalti-keep] > a {
    justify-content: center !important;
    padding: 10px 6px !important;
  }

  body.mini-sidebar:not(.expand-menu) #sidebar-menu li[data-disalti-keep] > a i {
    margin-right: 0 !important;
  }

  body.mini-sidebar:not(.expand-menu) .main-wrapper > .sidebar .sidebar-inner,
  body.mini-sidebar:not(.expand-menu) .main-wrapper > .sidebar .slimScrollDiv {
    padding-left: 6px !important;
    padding-right: 6px !important;
    overflow-x: hidden !important;
  }
}

#disalti-modules-root {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* Submenús legibles en sidebar oscuro (tema dark o data-sidebar=dark) */
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] > a > span:not(.menu-arrow):not(.badge),
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] > a > span:not(.menu-arrow):not(.badge),
[data-theme='dark'] #sidebar-menu li[data-disalti-keep].submenu > a,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep].submenu > a {
  color: #e5e7eb !important;
}

[data-theme='dark'] #sidebar-menu li[data-disalti-keep] ul li a,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] ul li a span,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] .disalti-sub-label,
[data-theme='dark'] [data-disalti-nav-host] li a,
[data-theme='dark'] [data-disalti-nav-host] li a span,
[data-theme='dark'] [data-disalti-nav-host] .disalti-sub-label,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] ul li a,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] ul li a span,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] .disalti-sub-label,
[data-sidebar='dark'] [data-disalti-nav-host] li a,
[data-sidebar='dark'] [data-disalti-nav-host] li a span,
[data-sidebar='dark'] [data-disalti-nav-host] .disalti-sub-label {
  color: #9ca3af !important;
}

[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a:hover,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a:hover span,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a.active,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a.active span,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a.subdrop,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a.subdrop span,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a:hover .disalti-sub-label,
[data-theme='dark'] #sidebar-menu li[data-disalti-keep] a.active .disalti-sub-label,
[data-theme='dark'] [data-disalti-nav-host] a:hover,
[data-theme='dark'] [data-disalti-nav-host] a.active,
[data-theme='dark'] [data-disalti-nav-host] a.subdrop,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] a:hover,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] a:hover span,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] a.active,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] a.active span,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] a.subdrop,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] a.subdrop span,
[data-sidebar='dark'] [data-disalti-nav-host] a:hover,
[data-sidebar='dark'] [data-disalti-nav-host] a.active,
[data-sidebar='dark'] [data-disalti-nav-host] a.subdrop {
  color: #60a5fa !important;
}

[data-theme='dark'] #sidebar-menu li[data-disalti-keep] > a i,
[data-sidebar='dark'] #sidebar-menu li[data-disalti-keep] > a i,
[data-theme='dark'] [data-disalti-nav-host] li > a i,
[data-sidebar='dark'] [data-disalti-nav-host] li > a i {
  color: #9ca3af !important;
}

/* Header: iconos chat/correo/campana sin badges demo (Ventas / Admin) */
.header .msg-status-dot,
.header .notification-status-dot {
  display: none !important;
}

/* Icono Excel verde en cualquier vista XLSX (Panel, Indicadores, etc.). */
#sidebar-menu a.disalti-excel-link,
[data-disalti-nav-host] a.disalti-excel-link {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  overflow: visible !important;
}
#sidebar-menu a.disalti-excel-link i,
#sidebar-menu a.disalti-excel-link .disalti-excel-ti,
#sidebar-menu a.disalti-excel-link::before,
#sidebar-menu a.disalti-excel-link::after,
[data-disalti-nav-host] a.disalti-excel-link i,
[data-disalti-nav-host] a.disalti-excel-link .disalti-excel-ti,
[data-disalti-nav-host] a.disalti-excel-link::before,
[data-disalti-nav-host] a.disalti-excel-link::after {
  display: none !important;
  content: none !important;
  background: none !important;
}
#sidebar-menu a.disalti-excel-link img.disalti-excel-icon,
[data-disalti-nav-host] a.disalti-excel-link img.disalti-excel-icon {
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  filter: none !important;
  flex: 0 0 16px !important;
  object-fit: contain !important;
}

/* Icono Power BI (mismo hueco que Excel) */
#sidebar-menu a.disalti-pbi-link,
[data-disalti-nav-host] a.disalti-pbi-link {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  overflow: visible !important;
}
#sidebar-menu a.disalti-pbi-link i,
#sidebar-menu a.disalti-pbi-link::before,
#sidebar-menu a.disalti-pbi-link::after,
[data-disalti-nav-host] a.disalti-pbi-link i,
[data-disalti-nav-host] a.disalti-pbi-link::before,
[data-disalti-nav-host] a.disalti-pbi-link::after {
  display: none !important;
  content: none !important;
  background: none !important;
}
#sidebar-menu a.disalti-pbi-link img.disalti-pbi-icon,
[data-disalti-nav-host] a.disalti-pbi-link img.disalti-pbi-icon {
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  filter: none !important;
  flex: 0 0 16px !important;
  object-fit: contain !important;
}
#sidebar-menu li[data-disalti-keep],
#sidebar-menu li[data-disalti-keep] > a {
  overflow: visible !important;
}

.header #header-search .input-group {
  position: relative;
}
.intranet-search-results {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 1080;
  max-height: 320px;
  overflow: auto;
}
