/* Equipo y sucursales: estilos propios de la pantalla (solo tokens) */

/* ---------- Árbol operador → sucursales ---------- */
/* Las ramas se alinean con el ícono de cada tarjeta de sucursal (no con un nodo de 44 px) */
.eq-arbol > li > ul { margin-left: 15px; padding-left: 20px; }
.eq-arbol > li > ul > li::before { left: -20px; top: 36px; width: 16px; }
.eq-arbol > li > ul > li:last-child::after { left: -22px; top: 37px; }

.eq-raiz { flex-wrap: wrap; row-gap: var(--e-2); padding: var(--e-2) var(--e-3); }
.eq-raiz:hover { background: transparent; }
.eq-raiz__textos { min-width: 0; flex: 1 1 200px; }
.eq-raiz .arbol__nombre { font-family: var(--fuente-titulo); font-size: var(--t-18); font-weight: 700; letter-spacing: -0.01em; }
.eq-raiz__fin { flex-wrap: wrap; justify-content: flex-end; }
.eq-raiz__saldo { font-size: var(--t-14); white-space: nowrap; margin-right: var(--e-2); }
.eq-raiz__saldo strong { font-variant-numeric: tabular-nums; }

/* Tarjeta de una sucursal dentro del árbol */
.eq-suc { margin: var(--e-3) 0; border: 1px solid var(--borde); border-radius: var(--radio-3); background: var(--superficie); overflow: hidden; }
.eq-suc__cabecera { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2) var(--e-3); padding: var(--e-3) var(--e-4); }
.eq-suc__titulo { flex: 1 1 200px; min-width: 0; }
.eq-suc__nombre { font-family: var(--fuente-texto); font-size: var(--t-15); font-weight: 600; letter-spacing: 0; }
.eq-suc__meta { font-size: var(--t-13); color: var(--texto-3); margin-top: 1px; }
.eq-suc__meta .ref { font-size: inherit; }

/* Datos en grilla: las rayas entre celdas salen del fondo (sirve para 4, 2 o 1 columna) */
.eq-suc__datos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: var(--borde); border-top: 1px solid var(--borde); }
.eq-suc__dato { display: grid; align-content: start; gap: 6px; padding: var(--e-3) var(--e-4) var(--e-4); background: var(--superficie); min-width: 0; }
.eq-suc__etq { font-size: var(--t-12); font-weight: 600; color: var(--texto-3); letter-spacing: 0.02em; }
.eq-suc__valor { font-family: var(--fuente-titulo); font-size: var(--t-20); font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; white-space: nowrap; font-variant-numeric: tabular-nums; }
.eq-suc__valor small { font-size: 0.6em; font-weight: 600; color: var(--texto-3); letter-spacing: 0; }
.eq-suc__nota-chica { font-size: var(--t-12); color: var(--texto-3); }
a.eq-enlace { color: var(--primario-texto); text-decoration: none; font-weight: 500; }
a.eq-enlace:hover { text-decoration: underline; }

.eq-cuentas { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.eq-cuentas li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px var(--e-2); font-size: var(--t-14); }
.eq-cuentas a { color: var(--texto); font-weight: 600; text-decoration: none; }
.eq-cuentas a:hover { color: var(--primario-texto); text-decoration: underline; }
.eq-cuentas__dato { display: inline-flex; align-items: center; gap: var(--e-2); font-size: var(--t-12); color: var(--texto-2); }

/* Nota de la sucursal (tope, cuenta pausada) */
.eq-suc__nota { display: flex; gap: var(--e-3); align-items: flex-start; padding: var(--e-3) var(--e-4); border-top: 1px solid var(--borde); background: var(--superficie-2); font-size: var(--t-13); color: var(--texto-2); }
.eq-suc__nota > .ico { flex: none; color: var(--texto-3); margin-top: 1px; }
.eq-suc__nota--alerta { background: var(--alerta-fondo); }
.eq-suc__nota--alerta > .ico { color: var(--alerta); }
.eq-suc__nota a { color: var(--primario-texto); font-weight: 600; white-space: nowrap; }

.eq-suc__pie { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2) var(--e-3); padding: var(--e-2) var(--e-4); border-top: 1px solid var(--borde); background: var(--superficie-2); font-size: var(--t-13); color: var(--texto-2); }

/* Pila de avatares superpuestos */
.eq-avatares { display: inline-flex; flex: none; }
.eq-avatares .avatar { box-shadow: 0 0 0 2px var(--superficie-2); }
.eq-avatares .avatar + .avatar { margin-left: -6px; }

/* ---------- Resumen ---------- */
.eq-pie-alerta { display: inline-flex; align-items: center; gap: 4px; font-weight: 600; }
.kpi__valor small { font-family: var(--fuente-texto); }

/* ---------- Usuarios ---------- */
.eq-buscador { margin-left: auto; }
.eq-usuarios .persona__nombre { display: inline-flex; align-items: center; gap: var(--e-2); }
.eq-usuarios .etiqueta { height: 20px; padding: 0 6px; font-size: var(--t-11); }
.eq-acciones { display: inline-flex; gap: var(--e-2); justify-content: flex-end; }
.eq-sin-resultados td { white-space: normal; }
.eq-sin-resultados:hover td { background: transparent !important; }

/* ---------- Matriz de permisos ---------- */
.eq-matriz thead th { vertical-align: bottom; }
.eq-matriz thead .celda-sub { font-weight: 500; letter-spacing: 0; }
.eq-matriz tbody th {
  position: sticky; left: 0; top: auto; z-index: 2;
  background: var(--superficie); color: var(--texto); font-size: var(--t-14); font-weight: 500; letter-spacing: 0;
  white-space: normal; min-width: 240px; padding: 8px 12px; border-bottom: 1px solid var(--borde); text-align: left;
}
.eq-matriz tbody tr:hover th { background: var(--superficie-2); }
.eq-matriz td { min-width: 104px; }
.eq-leyenda { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2) var(--e-5); }
.eq-si { color: var(--exito); display: inline-grid; place-items: center; }

/* Lista de permisos (drawer y confirmación de la invitación) */
.eq-permisos { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.eq-permisos li { display: flex; align-items: flex-start; gap: var(--e-2); padding: 6px 0; font-size: var(--t-14); border-bottom: 1px dashed var(--borde); }
.eq-permisos li:last-child { border-bottom: 0; }
.eq-permisos .ico { flex: none; margin-top: 2px; }
.eq-permisos__si { color: var(--texto); }
.eq-permisos__si .ico { color: var(--exito); }
.eq-permisos__no { color: var(--texto-3); }
.eq-permisos__no .ico { color: var(--texto-3); }

/* ---------- Actividad y reglas ---------- */
.eq-regla { align-items: flex-start; }
.eq-regla__ico { width: 32px; height: 32px; border-radius: 8px; display: grid; place-items: center; flex: none; background: var(--primario-suave); color: var(--primario-texto); }
.eq-regla__texto { flex: 1; min-width: 0; font-size: var(--t-13); color: var(--texto-2); line-height: 1.4; cursor: default; }
.eq-regla__texto strong { display: block; color: var(--texto); font-size: var(--t-14); font-weight: 600; margin-bottom: 2px; }
label.eq-regla__texto { cursor: pointer; }
.eq-regla .switch, .eq-regla .etiqueta { margin-top: 4px; flex: none; }

/* ---------- Modales y drawer ---------- */
.eq-roles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.eq-cuentas-elegir { display: grid; gap: var(--e-3); }
.eq-cuentas-elegir .mono { font-size: var(--t-12); overflow-wrap: anywhere; }
.eq-cuenta-nueva { padding-top: var(--e-3); border-top: 1px dashed var(--borde); }
.eq-campo-limite { max-width: 360px; }
.eq-du-persona { flex: 1; min-width: 0; }
.eq-du-persona .modal__titulo { overflow-wrap: anywhere; }
.eq-du-pie > .btn:first-child { margin-right: auto; }

/* ---------- Responsive ---------- */
@media (max-width: 1279px) {
  .eq-suc__datos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .eq-buscador { margin-left: 0; }
  .eq-roles { grid-template-columns: minmax(0, 1fr); }
  .eq-campo-limite { max-width: none; }
  .eq-du-pie > .btn:first-child { margin-right: 0; }
}
@media (max-width: 640px) {
  .eq-arbol > li > ul { margin-left: 8px; padding-left: 12px; }
  .eq-arbol > li > ul > li::before { left: -12px; width: 10px; }
  .eq-arbol > li > ul > li:last-child::after { left: -14px; }
  .eq-raiz { padding: 0 0 var(--e-2); }
  .eq-raiz__fin { justify-content: flex-start; margin-left: 0; width: 100%; }
  .eq-suc__cabecera { padding: var(--e-3); }
  .eq-suc__cabecera .btn { margin-left: auto; }
  .eq-suc__datos { grid-template-columns: minmax(0, 1fr); }
  .eq-suc__dato { padding: var(--e-3); }
  .eq-suc__nota, .eq-suc__pie { padding-left: var(--e-3); padding-right: var(--e-3); }
  .eq-usuarios td.acciones { width: 100%; text-align: right; }
  .eq-usuarios .persona { min-width: 0; }
  .eq-sin-resultados td { display: block; }
  .eq-matriz tbody th { min-width: 180px; }
  .eq-matriz td { min-width: 92px; }
}

/* Correcciones tras QA */
/* La lista de cuentas vive dentro del árbol: no hereda ramas ni sangría */
.arbol ul.eq-cuentas { margin-left: 0; padding-left: 0; border-left: 0; }
.arbol ul.eq-cuentas > li::before, .arbol ul.eq-cuentas > li::after { content: none; display: none; }
/* La columna Usuario no se achica hasta cortar el nombre */
.eq-usuarios td.tarjeta-titulo { min-width: 230px; }
.eq-usuarios td.tarjeta-titulo .persona__texto { overflow: visible; }
@media (max-width: 640px) {
  .eq-usuarios td.tarjeta-titulo { min-width: 0; }
}
.eq-avatares .avatar + .avatar { margin-left: 2px; }
.eq-deslizar { display: none; margin-bottom: var(--e-2); }
@media (max-width: 767px) { .eq-deslizar { display: block; } }
#modal-sucursal fieldset, #modal-invitar fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
#modal-sucursal legend, #modal-invitar legend { padding: 0; }
.eq-abbr { text-decoration: none; cursor: help; }
.eq-matriz tbody tr:last-child th { border-bottom: 0; }

/* Permiso parcial en la matriz (p. ej. Operaciones: pide retiros solo si es encargado de su sucursal) */
.eq-parcial { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; color: var(--alerta); }
.eq-parcial__texto { font-size: 0.75rem; font-weight: 600; line-height: 1.2; white-space: nowrap; }

/* ===================== Paridad: ajustes por persona, suspendidos, comisión de sucursal, vista encargada ===================== */

/* Aviso de la vista de la encargada */
.eq-aviso-vista { margin-bottom: var(--e-4); }

/* Tarjeta de sucursal: quién maneja cada cuenta CVU */
.eq-cuentas__quien { flex-basis: 100%; display: flex; align-items: center; gap: var(--e-2); font-size: var(--t-12); }
.eq-cuentas__quien .eq-avatares .avatar { box-shadow: 0 0 0 2px var(--superficie); }

/* Tarjeta de sucursal: renglón de la comisión para la sucursal */
.eq-suc__comision { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: var(--e-2) var(--e-3); padding: var(--e-3) var(--e-4); border-top: 1px solid var(--borde); font-size: var(--t-13); color: var(--texto-2); }
.eq-suc__comision > .ico { color: var(--texto-3); margin-top: 1px; }
.eq-suc__comision > p { min-width: 0; }
@media (max-width: 640px) {
  .eq-suc__comision { grid-template-columns: auto minmax(0, 1fr); padding-left: var(--e-3); padding-right: var(--e-3); }
  .eq-suc__comision > .btn, .eq-suc__comision > a { grid-column: 2; justify-self: start; }
}
.eq-suc__comision-etq { font-weight: 600; color: var(--texto); margin-right: 4px; }
.eq-suc__comision-sub { display: block; font-size: var(--t-12); color: var(--texto-3); margin-top: 2px; overflow-wrap: anywhere; }
.eq-suc__comision--activa > .ico { color: var(--primario-texto); }
.eq-suc__comision--activa strong { color: var(--texto); }
.eq-suc__comision .btn--enlace, .eq-suc__comision .eq-enlace { min-height: 24px; display: inline-flex; align-items: center; }

/* Tabla de usuarios: suspendidos y excepción de retiros */
.eq-fila-suspendida .avatar { opacity: 0.55; }
.eq-fila-suspendida .persona__nombre { color: var(--texto-2); }
.eq-usuarios .eq-etq-retiros { margin-left: 4px; vertical-align: middle; background: var(--info-fondo); color: var(--texto); }
.eq-usuarios .eq-etq-retiros--sin { background: var(--alerta-fondo); }

/* Matriz: nota de suspendidos, permiso parcial con nota y celdas de texto */
.eq-matriz thead .eq-matriz__susp { color: var(--texto-3); }
.eq-parcial__nota { display: block; max-width: 13ch; margin-top: 2px; font-size: var(--t-11); font-weight: 500; line-height: 1.25; color: var(--texto-3); text-align: center; white-space: normal; }
.eq-celda-texto { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; font-size: 0.75rem; font-weight: 600; line-height: 1.2; color: var(--texto-2); text-align: center; }
.eq-celda-texto .eq-si { display: inline; vertical-align: -3px; margin-right: 2px; }
.eq-celda-texto__sub { display: block; max-width: 14ch; font-size: var(--t-11); font-weight: 500; color: var(--texto-3); white-space: normal; }
.eq-menu tbody th { min-width: 260px; }

/* Drawer: permisos ajustados, bloques nuevos */
.eq-permisos__ajustado > span { font-weight: 600; }
.eq-permisos__no.eq-permisos__ajustado { color: var(--texto-2); }
.eq-du-retiros { margin-top: var(--e-3); padding: var(--e-3); border: 1px solid var(--borde); border-radius: var(--radio-2); background: var(--superficie-2); }
.eq-du-retiros .campo__ayuda { margin-top: 6px; }
.eq-du-fijo { display: flex; align-items: center; gap: var(--e-2); font-size: var(--t-14); color: var(--texto); }
.eq-du-fijo .ico { color: var(--exito); flex: none; }
.eq-du-cuentas { border: 0; padding: 0; margin: 0; min-width: 0; }
.eq-du-cuentas legend { padding: 0; }
.eq-du-cuentas .grupo-opciones { gap: var(--e-2); }
.eq-du-cuentas__lista { margin: var(--e-3) 0 0 30px; }
.eq-du-cuentas__lista .mono { font-size: var(--t-12); }
.eq-du-cuentas > .campo__ayuda { margin-top: var(--e-2); }
.eq-du-seccion { padding-top: var(--e-4); border-top: 1px solid var(--borde); }
.eq-du-subtitulo { margin: var(--e-4) 0 var(--e-2); font-family: var(--fuente-texto); font-size: var(--t-13); font-weight: 600; letter-spacing: 0; color: var(--texto-2); }
.eq-du-sesiones { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--e-2); }
.eq-du-sesiones li { display: flex; align-items: center; gap: var(--e-2); font-size: var(--t-14); color: var(--texto); }
.eq-du-sesiones .ico { color: var(--texto-3); flex: none; }
.eq-du-seccion .btn--chico { max-width: 100%; white-space: normal; text-align: left; height: auto; min-height: 32px; }
.eq-icono-exito { background: var(--exito-fondo); color: var(--exito); }

/* Modal de sucursal: comisión para la sucursal */
.eq-com { margin-top: var(--e-6); padding-top: var(--e-5); border-top: 1px dashed var(--borde); display: grid; gap: var(--e-4); }
.eq-com__cabecera { display: grid; gap: var(--e-3); }
.eq-com__titulo { font-family: var(--fuente-texto); font-size: var(--t-15); font-weight: 600; letter-spacing: 0; color: var(--texto); }
.eq-com__switch { font-weight: 500; }
.eq-com__vigencia { padding: var(--e-2) var(--e-3); border-radius: var(--radio-2); background: var(--info-fondo); border: 1px solid var(--info-borde); font-size: var(--t-13); color: var(--texto); }
.eq-com__cbu { display: flex; gap: var(--e-2); align-items: stretch; }
.eq-com__cbu .campo__control { flex: 1 1 auto; min-width: 0; }
.eq-com__cbu .btn { flex: none; }
.eq-titular { display: flex; align-items: flex-start; gap: 6px; font-size: var(--t-13); color: var(--texto); }
.eq-titular .ico { color: var(--exito); flex: none; margin-top: 1px; }
.eq-titular--error .ico { color: var(--peligro); }
.eq-titular--error { color: var(--texto-2); }

.eq-sufijo { position: relative; display: flex; align-items: center; max-width: 180px; }
.eq-sufijo .campo__control { padding-right: 34px; font-variant-numeric: tabular-nums; }
.eq-sufijo__texto { position: absolute; right: 12px; color: var(--texto-2); font-weight: 600; pointer-events: none; }

.eq-com__reparto { border: 0; padding: 0; margin: 0; min-width: 0; }
.eq-com__reparto legend { padding: 0; margin-bottom: 4px; }
.eq-destinos { display: grid; gap: var(--e-3); }
.eq-destinos:empty { display: none; }
.eq-destino { display: grid; grid-template-columns: 120px minmax(0, 1.3fr) minmax(0, 1fr) 44px; gap: var(--e-2) var(--e-3); align-items: start; padding: var(--e-3); border: 1px solid var(--borde); border-radius: var(--radio-2); background: var(--superficie-2); }
.eq-destino .eq-sufijo { max-width: none; }
.eq-destino__quitar { margin-top: 26px; }
#suc-com-suma-campo { margin: var(--e-2) 0; }
#suc-com-suma-campo:not(.campo--error) { display: none; }

.eq-com__previa { display: flex; gap: var(--e-3); align-items: flex-start; padding: var(--e-3) var(--e-4); border-radius: var(--radio-2); background: var(--primario-suave); color: var(--texto); }
.eq-com__previa > .ico { color: var(--primario-texto); flex: none; margin-top: 1px; }
.eq-com__previa-titulo { font-weight: 600; font-variant-numeric: tabular-nums; }
.eq-com__previa-detalle { font-size: var(--t-13); color: var(--texto-2); margin-top: 2px; font-variant-numeric: tabular-nums; }

@media (max-width: 640px) {
  .eq-destino { grid-template-columns: minmax(0, 1fr) 44px; }
  .eq-destino__pct { grid-column: 1; }
  .eq-destino__quitar { grid-column: 2; grid-row: 1; }
  .eq-destino__cbu, .eq-destino__titular { grid-column: 1 / -1; }
  .eq-com__cbu { flex-direction: column; }
  .eq-sufijo { max-width: none; }
  .eq-du-cuentas__lista { margin-left: 0; }
  .eq-menu tbody th { min-width: 180px; }
}
