/*
 * Auditor IA - navegación lateral compacta.
 * Capa visual independiente del bundle principal.
 */

.sidebar .nav-group {
  margin: 4px 8px;
  border-radius: 10px;
}

.sidebar .nav-group-label {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 34px;
  margin: 0;
  padding: 8px 30px 8px 12px;
  border-radius: 8px;
  cursor: pointer;
  user-select: none;
  transition:
    background-color .16s ease,
    color .16s ease;
}

.sidebar .nav-group-label:hover {
  background: rgba(15, 118, 110, .06);
}

.sidebar .nav-group-label::after {
  content: "›";
  position: absolute;
  right: 12px;
  top: 50%;
  font-size: 18px;
  line-height: 1;
  transform: translateY(-50%) rotate(0deg);
  transition: transform .18s ease;
  opacity: .58;
}

.sidebar .nav-group.auditor-nav-open > .nav-group-label::after {
  transform: translateY(-50%) rotate(90deg);
}

.sidebar .nav-group > .nav-link,
.sidebar .nav-group > a.nav-link {
  transition:
    opacity .16s ease,
    max-height .18s ease,
    margin .18s ease,
    padding .18s ease,
    background-color .16s ease;
}

.sidebar .nav-group:not(.auditor-nav-open) > .nav-link,
.sidebar .nav-group:not(.auditor-nav-open) > a.nav-link {
  display: none !important;
}

.sidebar .nav-group.auditor-nav-open {
  padding-bottom: 5px;
  background: rgba(248, 250, 252, .72);
}

.sidebar .nav-group.auditor-nav-open > .nav-link,
.sidebar .nav-group.auditor-nav-open > a.nav-link {
  margin-left: 8px;
  margin-right: 5px;
  padding-left: 14px;
  border-radius: 8px;
}

.sidebar .nav-group.auditor-nav-has-active > .nav-group-label {
  color: #0f766e;
  font-weight: 700;
}

/*
 * El primer grupo del cliente puede contener Resumen.
 * Resumen permanece visible aunque el grupo esté recogido.
 */
.sidebar .nav-group.auditor-nav-client-group:not(.auditor-nav-open)
  > .nav-link[href="/app/cliente"],
.sidebar .nav-group.auditor-nav-client-group:not(.auditor-nav-open)
  > a.nav-link[href="/app/cliente"] {
  display: flex !important;
}

/* Un poco más de aire al final del menú. */
.sidebar {
  padding-bottom: 18px;
}

/* ======================================================
   A65E88
   Herramientas de expedientes pertenece a plataforma.
   Se conserva la ruta, pero no aparece en navegación
   operativa del tenant.
   ====================================================== */

.sidebar a.nav-link[href="/app/herramientas"] {
  display: none !important;
}

/* ======================================================
   A65E89
   Configuración técnica del proveedor IA pertenece
   a ENTERCOL Plataforma, no al administrador del tenant.
   ====================================================== */

.sidebar a.nav-link[href="/app/ia/configuracion"] {
  display: none !important;
}

/* A65E108 CLIENT OPERATIONAL NAV CLEANUP */

/*
 * RIPS pertenece al flujo clínico/facturación.
 * No debe aparecer como grupo residual en un tenant Auditor IA.
 */
.sidebar a.nav-link[href="/app/rips"] {
    display: none !important;
}

/*
 * Configuración de proveedor/modelo y costos IA son funciones
 * administrativas de plataforma, no operación del cliente.
 */
.sidebar a.nav-link[href="/app/ia/consumo"] {
    display: none !important;
}

/*
 * Si después de filtrar sus enlaces un grupo no conserva ninguna
 * opción visible, tampoco mostramos su encabezado.
 */
.sidebar .nav-group:not(:has(> a.nav-link:not([href="/app/rips"]):not([href="/app/ia/configuracion"]):not([href="/app/ia/consumo"]):not([href="/app/herramientas"]))) {
    display: none !important;
}
