/* Paquete perfil — corrección del frontend 13-sep-2026 (docs/auditoria/frontend-vistas-2026-09-13.md). */

/* PER-17: la baja de cuenta iba pegada a «Copiar tu URL de invitación» con el
   mismo peso: `text-danger` no se distinguía con el tema academia. Divisor
   visible y color de error de la paleta. */
.perfil-acciones .dropdown-menu .dropdown-divider,
.perfil-acciones .dropdown-menu .divider {
  height: 0;
  margin: .5rem 0;
  overflow: hidden;
  border-top: 1px solid var(--ac-linea-fuerte, rgba(255, 255, 255, .25));
  list-style: none;
}
.perfil-acciones .dropdown-menu a.perfil-accion-peligro,
.perfil-acciones .dropdown-menu a.perfil-accion-peligro i {
  color: var(--ac-error, #ff5c5c) !important;
  font-weight: 600;
}
.perfil-acciones .dropdown-menu a.perfil-accion-peligro:hover,
.perfil-acciones .dropdown-menu a.perfil-accion-peligro:focus {
  background: var(--ac-error-suave, rgba(255, 92, 92, .15)) !important;
  color: var(--ac-error, #ff5c5c) !important;
}
.perfil-acciones .dropdown-menu a.perfil-accion-aviso {
  color: var(--ac-texto-suave, inherit) !important;
  white-space: normal;
}
/* El botón llevaba style="color: black" en línea. */
.perfil-acciones .perfil-acciones-boton { color: #000; }
/* En móvil el menú no debe salirse de la pantalla: los textos largos parten. */
.perfil-acciones .dropdown-menu { max-width: calc(100vw - 32px); }
.perfil-acciones .dropdown-menu a { white-space: normal; }

.perfil-bio-vacia { color: var(--ac-texto-tenue, inherit); font-style: italic; }
.perfil-redes { font-size: 2.3em; }
.perfil-redes a { margin: 0 .15em; }
.perfil-primero { max-width: 30px; float: left; margin-right: .4em; }

/* PER-09: en 390 px las columnas y el mensaje vacío quedaban cortados dentro de
   la tarjeta (la página no desbordaba: el recorte lo hacía el contenedor). El
   scroll horizontal va en la propia tarjeta. */
.perfil-avance .card-body.table-responsive,
.perfil-avance .table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.perfil-avance td.empty,
.perfil-avance .empty { white-space: normal; }
/* DCC-04: sin avance, la tarjeta pinta SOLO el mensaje (target.php deja de
   dibujar la tabla vacía con `showOnEmpty`), así que no hereda el estilo de
   cabecera de tabla ni obliga a desplazar de lado para leerlo. */
.perfil-avance .empty,
.perfil-avance-vacio {
  font-family: var(--sans); letter-spacing: normal; text-transform: none;
  font-size: 14px; line-height: 1.5; color: var(--fg-dim);
}
.perfil-avance-vacio { padding: .25rem 0; text-align: left; max-width: 68ch; }
.perfil-avance-vacio p { margin-bottom: .75rem; }
@media (max-width: 760px) {
  .perfil-avance-vacio .btn { display: inline-flex; align-items: center; min-height: 44px; }
}

/* REV-COM-04: área táctil de 44 px en las casillas de Ajustes y de Editar
   equipo, en todos los anchos. Medido antes: 21 px la de Ajustes a 1440/820 y
   42 px las de equipo; los dos formularios, que se quieren iguales, diferían. */
#ajustes-form .checkbox label,
.team-update .checkbox label {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

/* PER-08: un único botón al pie del formulario de ajustes. */
.perfil-guardar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: .75rem;
  margin-block: .5rem 1.5rem;
}
.perfil-guardar-nota { margin: 0; color: var(--ac-texto-tenue, inherit); }
@media (max-width: 575.98px) {
  .perfil-guardar { justify-content: stretch; }
  .perfil-guardar .btn { width: 100%; }
}

/* PER-16: 404 de perfil con salidas. */
.perfil-no-encontrado { max-width: 40rem; margin: 3rem auto; padding-inline: 16px; }
.perfil-no-encontrado-acciones { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }
