.um_request_name { display: none !important; }

body.um-page .section-label { display: none; }
body.um-page .section { padding-block: 0 !important; }

body.um-page .section-title {
  max-width:        32rem;
  margin:           0 auto var(--space-6);
  color:            var(--nexo-dark);
  font-family:      var(--font-heading);
  font-size:        var(--fs-2xl);
  font-weight:      var(--fw-bold);
  line-height:      var(--lh-tight);
  letter-spacing:   -0.01em;
}

body.um-page .site-main {
  position: relative;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-block: clamp(7rem, 38vh, 22rem) 3rem;
}
.um-brand-x {
  display: block;
  position: absolute;
  inset-block-start: clamp(3.5rem, 7vh, 5rem);

  inset-inline-start: max(
    var(--container-pad),
    calc((100% - var(--container-max)) / 2 + var(--container-pad))
  );
  width:  clamp(9rem, 11vw + 1rem, 13rem);
  height: clamp(9rem, 11vw + 1rem, 13rem);
  z-index: 2;
}
@media (max-width: 640px) {
  .um-brand-x {
    width:  clamp(6.5rem, 11vw, 9rem);
    height: clamp(6.5rem, 11vw, 9rem);
  }
}
.um-brand-x svg { display: block; width: 100%; height: 100%; }
.um-brand-x .x-arm  { fill: var(--nexo-dark);  animation: hero-logo-arm-loop  var(--hero-loop) ease-in-out infinite; }
.um-brand-x .x-core { fill: var(--nexo-cream); animation: hero-logo-core-loop var(--hero-loop) ease-in-out infinite; }

@media (prefers-reduced-motion: reduce) {
  .um-brand-x .x-arm,
  .um-brand-x .x-core { animation: none; }
}

/* ── Perfil (página "user"): NO usar el centrado tipo auth ─────────────────── */
/* El centrado vertical + padding 38vh + watermark son para login/registro
   (formularios cortos). En el perfil dejan un vacío enorme arriba. */
body.um-page-user .site-main {
  min-height:    0;
  display:       block;
  padding-block: calc(var(--nav-height, 72px) + var(--space-12)) var(--space-16);
}
body.um-page-user .section-title {
  max-width:   44rem;
  margin:      0 auto var(--space-5);
  text-align:  left;
}

.um {
  max-width:     32rem !important;
  margin-inline: auto !important;
  font-family:   var(--font-heading);
  color:         var(--nexo-dark);
  line-height:   var(--lh-normal);
}
.um .um-req { display: none; }
.um, .um * { box-sizing: border-box; float: none; }
.um .um-form .um-row { margin: 0 0 var(--space-2) 0 !important; }

.um form { display: flex; flex-direction: column; }
.um form > .um-col-alt-b { order: 1; margin: 0; }
.um form > .um-col-alt   { order: 2; margin: 0; padding: 0; }
.um .um-clear { display: none; }

.um .um-col-alt {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  align-items: center;
}
.um .um-left.um-half,
.um .um-right.um-half { width: auto; }

body.um-page-login .um-field-c,
body.um-page-login .um-button.um-alt { display: none; }

body.um-page-register .um            { max-width: 44rem !important; }
body.um-page-register .section-title { max-width: 44rem; }
body.um-page-register .um-col-1 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: var(--space-8);
}
@media (max-width: 640px) {
  body.um-page-register .um      { max-width: 32rem !important; }
  body.um-page-register .um-col-1 { grid-template-columns: 1fr; column-gap: 0; }
}

body.um-page-register .um-col-alt {
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}
body.um-page-register .um-right.um-half { order: 0; }
body.um-page-register .um-left.um-half  { order: 1; }
body.um-page-register a.um-button.um-alt {
  display: inline-block;
  min-width: 0;
  min-height: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
  color: var(--nexo-dark);
  font-size: var(--fs-base);
  font-weight: var(--fw-semibold);
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.um-page-register a.um-button.um-alt:hover {
  background: transparent;
  color: var(--nexo-purple) !important;
  transform: none;
  filter: none;
}
.um a.um-button.um-alt::before { content: none; }

.um .um-field-block,
.um .um-field-block > div { text-align: left !important; }
.um .um-field-block { margin: 0; font-size: var(--fs-base); line-height: var(--lh-normal); }
.um .um-field-type_block { margin-block-end: var(--space-4); }

.um .um-field { margin-block-end: var(--space-5); }

.um .um-field-label label,
.um .um-field-label > div,
.um .um-field-label {
  display:          block;
  font-size:        var(--fs-md);
  font-weight:      var(--fw-bold);
  color:            var(--nexo-dark);
  margin-block-end: var(--space-2);
  line-height:      var(--lh-snug);
}

.um .um-form input[type=text],
.um .um-form input[type=password],
.um .um-form input[type=email],
.um .um-form input[type=tel],
.um .um-form input[type=url],
.um .um-form input[type=number],
.um .um-form input[type=search],
.um .um-form input[type=date],
.um .um-form textarea,
.um .um-form select {
  width:         100%;
  padding:       1.1rem 1rem;
  font-family:   var(--font-heading);
  font-size:     var(--fs-base);
  color:         var(--nexo-dark);
  background:    var(--nexo-yellow);
  border:        0;
  border-radius: 0;
  outline:       2px solid transparent;
  outline-offset: -2px;
  transition:    outline-color var(--duration-fast) ease;
}
.um .um-form textarea { min-height: 8rem; resize: vertical; }
.um .um-form input::placeholder,
.um .um-form textarea::placeholder { color: rgba(21, 7, 31, 0.5); }
.um .um-form input:focus,
.um .um-form textarea:focus,
.um .um-form select:focus { outline-color: var(--nexo-dark); }

.um .um-field-username .um-field-area,
.um .um-field-user_password .um-field-area { position: relative; }
.um .um-field-username .um-field-area input,
.um .um-field-user_password .um-field-area input { padding-inline-end: 3rem; }
.um .um-field-username .um-field-area::after,
.um .um-field-user_password .um-field-area::after {
  content:            '';
  position:           absolute;
  inset-inline-end:   1rem;
  inset-block-start:  50%;
  width:              1.3rem;
  height:             1.3rem;
  transform:          translateY(-50%);
  background-repeat:  no-repeat;
  background-position: center;
  background-size:    contain;
  pointer-events:     none;
}
.um .um-field-username .um-field-area::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%2315071f'%3E%3Cpath%20d='M12%2012a5%205%200%201%200%200-10%205%205%200%200%200%200%2010Zm0%202c-5%200-9%202.6-9%206v2h18v-2c0-3.4-4-6-9-6Z'/%3E%3C/svg%3E");
}
.um .um-field-user_password .um-field-area::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%2315071f'%3E%3Cpath%20d='M12%201a5%205%200%200%200-5%205v3H6a2%202%200%200%200-2%202v9a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2v-9a2%202%200%200%200-2-2h-1V6a5%205%200%200%200-5-5Zm3%208H9V6a3%203%200%200%201%206%200v3Z'/%3E%3C/svg%3E");
}

.um .um-button,
.um input[type=submit].um-button,
.um a.um-button {
  display:         inline-flex;
  align-items:     center;
  justify-content: center;
  width:           auto;
  min-width:       10.5rem;
  min-height:      2.9rem;
  padding:         0.85rem 1.5rem;
  font-family:     var(--font-heading);
  font-size:       var(--fs-sm);
  font-weight:     var(--fw-semibold);
  line-height:     var(--lh-none);
  color:           var(--nexo-cream);
  background:      var(--nexo-purple);
  border:          0;
  border-radius:   0;
  cursor:          pointer;
  text-decoration: none;
}

.um .um-button.um-alt,
.um a.um-button.um-alt {
  color:      var(--nexo-dark);
  background: transparent;
  box-shadow: inset 0 0 0 2px var(--nexo-dark);
}

.um a.um-link-alt {
  display:             inline-block;
  margin-block:        0 var(--space-6);
  color:               var(--nexo-dark);
  font-weight:         var(--fw-semibold);
  text-decoration:     underline;
  text-underline-offset: 3px;
}
.um a.um-link-alt:hover { color: var(--nexo-purple); }

.um .um-field-checkbox { display: inline-flex; align-items: center; gap: var(--space-2); cursor: pointer; }
.um .um-field-checkbox-state { display: none; }
.um .um-field-checkbox input[type=checkbox] {
  width: 1.1rem; height: 1.1rem; margin: 0;
  accent-color: var(--nexo-purple);
}
.um .um-field-checkbox-option { font-size: var(--fs-sm); }

.um .um-field-error {
  color:            var(--nexo-red);
  font-size:        var(--fs-sm);
  margin-block-start: var(--space-2);
}
.um .um-notice {
  padding:       var(--space-3) var(--space-4);
  font-size:     var(--fs-sm);
  border-radius: 0;
}
.um .um-notice.err { background: var(--nexo-red); color: var(--nexo-cream); }
.um .um-notice.success { background: var(--nexo-green); color: var(--nexo-dark); }

.um .um-col-alt,
.um .um-col-alt-b { margin-block-start: var(--space-4); }

/* ── Tab: Mis Industrias ──────────────────────────────────────────────────── */
/* Interna del perfil = fondo claro (--nexo-bg). Todo el texto va en --nexo-dark
   y la estética sigue la marca: esquinas rectas, bloques planos, hover por
   outline (igual que cards.css y los inputs UM). */

.um-nexo-industrias {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  padding-block: var(--space-3) var(--space-6);
  color: var(--nexo-dark);
}

.um-nexo-industrias__title {
  font-family: var(--font-heading);
  font-size:   var(--fs-lg);
  font-weight: var(--fw-bold);
  color:       var(--nexo-dark);
  margin:      0;
  padding-block-start: var(--space-6);
  border-block-start:  2px solid var(--nexo-dark);
}

/* Aviso de éxito */
.um-nexo-industrias__aviso {
  padding: var(--space-3) var(--space-5);
  font-size: var(--fs-sm);
  font-weight: var(--fw-semibold);
  background: var(--nexo-green);
  color: var(--nexo-dark);
}

/* Lista de industrias */
.um-nexo-industrias__lista {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

/* Item individual */
.um-nexo-industrias__item {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  background: transparent;
  outline: 2px solid var(--nexo-dark);
  outline-offset: -2px;
  transition: outline-color var(--duration-fast) ease;
}
.um-nexo-industrias__item:hover {
  outline-color: var(--nexo-purple);
}

/* Imagen / inicial */
.um-nexo-industrias__item-imagen {
  width: 56px;
  height: 56px;
  overflow: hidden;
  background: var(--nexo-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.um-nexo-industrias__item-imagen img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.um-nexo-industrias__item-inicial {
  font-family: var(--font-heading);
  font-size: var(--fs-lg);
  font-weight: var(--fw-bold);
  color: var(--nexo-cream);
}

/* Info */
.um-nexo-industrias__item-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.um-nexo-industrias__item-nombre {
  font-family: var(--font-heading);
  font-size: var(--fs-base);
  font-weight: var(--fw-bold);
  color: var(--nexo-dark);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.um-nexo-industrias__item-cats {
  font-size: var(--fs-xs);
  font-weight: var(--fw-semibold);
  color: var(--nexo-purple);
  text-transform: uppercase;
  letter-spacing: .06em;
}
.um-nexo-industrias__item-desc {
  font-size: var(--fs-sm);
  color: color-mix(in srgb, var(--nexo-dark) 65%, transparent);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Badges de estado — bloques planos, esquinas rectas */
.um-nexo-industrias__estado {
  display: inline-block;
  margin-block-start: 2px;
  padding: 3px 9px;
  font-size: var(--fs-xs);
  font-weight: var(--fw-semibold);
  letter-spacing: .04em;
  text-transform: uppercase;
  width: fit-content;
}
.um-nexo-industrias__estado--publish {
  background: var(--nexo-green);
  color: var(--nexo-dark);
}
.um-nexo-industrias__estado--draft {
  background: transparent;
  color: color-mix(in srgb, var(--nexo-dark) 55%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--nexo-dark) 35%, transparent);
}
.um-nexo-industrias__estado--pending {
  background: var(--nexo-yellow);
  color: var(--nexo-dark);
}

/* Acciones (botones Ver / Editar) */
.um-nexo-industrias__item-acciones {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  flex-shrink: 0;
}
.um-nexo-industrias__btn {
  display: inline-block;
  padding: 6px 14px;
  font-family: var(--font-heading);
  font-size: var(--fs-xs);
  font-weight: var(--fw-semibold);
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
}
.um-nexo-industrias__btn--ver {
  background: transparent;
  color: var(--nexo-dark);
  box-shadow: inset 0 0 0 2px var(--nexo-dark);
}
.um-nexo-industrias__btn--editar {
  background: var(--nexo-purple);
  color: var(--nexo-cream);
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* ── UM PROFILE VIEW — cover, avatar, nombre, dropdown, tabs             ── */
/* ═══════════════════════════════════════════════════════════════════════════ */

/* Ampliar .um para vistas de perfil y edición */
.um.um-profile,
.um.um-edit { max-width: 44rem !important; }

/* ═══════════════════════════════════════════════════════════════════════════ */
/* ── TARJETA DE IDENTIDAD — reemplaza el cover vacío de UM                ── */
/* Sin foto de portada el cover era un vacío negro enorme. Lo ocultamos y       */
/* convertimos la cabecera en una tarjeta de marca: avatar anillado + estado    */
/* (+ editar para el dueño), sobre un bloque oscuro alineado con el contenido.  */
/* ═══════════════════════════════════════════════════════════════════════════ */
.um .um-cover { display: none !important; }

.um .um-header {
  display:     flex;
  align-items: center;
  gap:         var(--space-5);
  width:       fit-content;
  max-width:   100%;
  padding:     var(--space-5) var(--space-6);
  background:  var(--nexo-dark);
  position:    relative;
}

/* ── Avatar circular con anillo de marca ──────────────────────────────────── */
/* UM JS fija ancho/alto al photosize (190px); lo ceñimos con !important. */
.um .um-profile-photo {
  position:    relative;
  order:       1;
  flex-shrink: 0;
  width:       104px !important;
  height:      104px !important;
  margin:      0 !important;
  overflow:    visible;
}
/* UM (JS) le pone top:-105px para solapar el cover; sin cover lo anulamos. */
.um .um-profile-photo a.um-profile-photo-img {
  display:  block;
  position: relative;
  top:      0 !important;
  width:    104px !important;
  height:   104px !important;
}
.um .um-profile-photo img {
  display:       block;
  width:         104px !important;
  height:        104px !important;
  border-radius: 50% !important;
  object-fit:    cover;
  background:    var(--nexo-bg);
  border:        3px solid var(--nexo-green);
}
/* Overlay de cámara al hover (subir foto) */
.um .um-profile-photo span.um-profile-photo-overlay {
  position:        absolute;
  inset:           3px;
  border-radius:   50%;
  display:         flex;
  align-items:     center;
  justify-content: center;
  background:      rgba(21,7,31,.55);
  color:           var(--nexo-cream);
  opacity:         0;
  transition:      opacity .2s;
  pointer-events:  none;
}
.um .um-profile-photo:hover span.um-profile-photo-overlay {
  opacity:        1;
  pointer-events: auto;
}
.um .um-profile-photo > .um-dropdown { display: none !important; }

/* ── Meta: el nombre ya lo muestra el <h1> → aquí solo el estado ───────────── */
/* UM JS inyecta inline padding-left:<photosize> para su avatar absoluto; lo
   anulamos para que el estado quede pegado al avatar. */
.um .um-profile-meta {
  order:          2;
  min-width:      0;
  padding:        0 !important;
  display:        flex;
  flex-direction: column;
  align-items:    flex-start;
  gap:            var(--space-2);
}
.um .um-main-meta { display: none; }

/* ── Estado de la cuenta como chip plano (el texto se acorta a "Aprobado") ─── */
.um .um-profile-status {
  display:        inline-flex;
  align-items:    center;
  margin:         0;
  padding:        5px 14px;
  font-size:      var(--fs-xs);
  font-weight:    var(--fw-semibold);
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height:    1.2;
  background:     var(--nexo-green);
  color:          var(--nexo-dark);
}
.um .um-profile-status span { font-size: inherit; color: inherit; margin: 0; display: inline; }
.um .um-profile-status.awaiting_admin_review,
.um .um-profile-status.awaiting_email_confirmation { background: var(--nexo-yellow); color: var(--nexo-dark); }
.um .um-profile-status.rejected,
.um .um-profile-status.inactive { background: var(--nexo-red); color: var(--nexo-cream); }
/* Bio textarea en modo edición */
.um textarea#um-meta-bio {
  width:          100%;
  background:     var(--nexo-yellow);
  border:         0;
  outline:        2px solid transparent;
  outline-offset: -2px;
  padding:        .7rem 1rem;
  font-family:    var(--font-heading);
  font-size:      var(--fs-sm);
  color:          var(--nexo-dark);
  min-height:     5.5rem;
  resize:         vertical;
  display:        block;
  margin-block-start: var(--space-2);
}
.um textarea#um-meta-bio:focus { outline-color: var(--nexo-dark); }
.um .um-meta-bio-character { font-size: var(--fs-xs); color: color-mix(in srgb, var(--nexo-dark) 40%, transparent); display: block; text-align: right; }

/* ── Ícono de editar (engranaje) ──────────────────────────────────────────── */
/* UM lo inyecta como PRIMER hijo de .um-header; con order lo mandamos al final
   de la fila y lo empujamos a la derecha de la tarjeta. */
.um .um-profile-headericon {
  order:               3;
  position:            relative;
  order:               3;
  flex-shrink:         0;
  margin:              0;
  margin-inline-start: auto;
  z-index:             4;
}
/* Botón editar — cuadro claro con lápiz SVG propio (la fuente de iconos de UM
   está descartada, por eso salía un cuadro vacío). */
.um .um-profile-headericon i { display: none !important; }
.um .um-profile-edit-a {
  display:         inline-flex;
  align-items:     center;
  justify-content: center;
  width:           2.5rem;
  height:          2.5rem;
  background:      var(--nexo-cream) url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%2315071f'%3E%3Cpath%20d='M3%2017.25V21h3.75L17.81%209.94l-3.75-3.75L3%2017.25zM20.71%207.04a1%201%200%200%200%200-1.41l-2.34-2.34a1%201%200%200%200-1.41%200l-1.83%201.83%203.75%203.75%201.83-1.83z'/%3E%3C/svg%3E") no-repeat center / 1.15rem;
  color:           var(--nexo-dark) !important;
  text-decoration: none;
  cursor:          pointer;
  transition:      background-color .15s;
}
.um .um-profile-edit-a:hover { background-color: var(--nexo-green); }
/* Ocultar el cheque de guardar en modo edición */
.um .um-profile-save { display: none !important; }

/* Dropdown del engranaje:
   UM añade la clase .open al CONTENEDOR .um-profile-headericon,
   NO a .um-dropdown → el selector correcto es .um-profile-headericon.open */
.um .um-profile-headericon .um-dropdown { position: relative; }
.um .um-profile-headericon .um-dropdown-b {
  display:           none;
  position:          absolute;
  inset-inline-end:  0;
  inset-block-start: calc(100% + 4px);
  min-width:         170px;
  background:        var(--nexo-dark);
  z-index:           300;
  box-shadow:        0 8px 24px rgba(21,7,31,.25);
}
/* .open lo añade UM JS al div.um-profile-edit (= .um-profile-headericon) */
.um .um-profile-headericon.open .um-dropdown-b { display: block !important; }
.um .um-profile-headericon .um-dropdown-b ul {
  list-style: none;
  margin:     0;
  padding:    .375rem 0;
}
.um .um-profile-headericon .um-dropdown-b li a {
  display:         block;
  padding:         .55rem 1rem;
  font-family:     var(--font-heading);
  font-size:       var(--fs-sm);
  font-weight:     var(--fw-semibold);
  color:           var(--nexo-cream);
  text-decoration: none;
  transition:      background .15s;
}
.um .um-profile-headericon .um-dropdown-b li a:hover { background: var(--nexo-purple); color: var(--nexo-cream); }
/* Ocultar "Cancelar" — ítem de cierre JS */
.um .um-profile-headericon .um-dropdown-b li:last-child { display: none; }

/* ── Pestañas de navegación del perfil ───────────────────────────────────── */
/* 1. Eliminar duplicación: ocultar links icon-only de mobile */
.um .um-profile-nav-item a.uimob800-show,
.um .um-profile-nav-item a.uimob500-show,
.um .um-profile-nav-item a.uimob340-show { display: none !important; }
/* 2. Ocultar botón de cierre de nav en mobile */
.um .um-profile-nav-item.um-close-nav { display: none !important; }/* 3. Ocultar tabs Entradas y Comentarios — no se usan en este proyecto */
.um .um-profile-nav-item:has(a[href*="profiletab=posts"]),
.um .um-profile-nav-item:has(a[href*="profiletab=comments"]) { display: none !important; }
/* 3. Estilo del nav */
.um .um-profile-nav {
  display:            flex;
  flex-wrap:          wrap;
  border-block-start: 2px solid var(--nexo-dark);
  border-block-end:   2px solid var(--nexo-dark);
  margin-block-start: var(--space-5);
  background:         var(--nexo-bg);
}
.um .um-profile-nav-item { list-style: none; }
/* Sólo el link de texto (desktop) */
.um .um-profile-nav-item a.uimob800-hide,
.um .um-profile-nav-item a.uimob500-hide,
.um .um-profile-nav-item a.uimob340-hide {
  display:          block;
  padding:          .7rem var(--space-5);
  font-family:      var(--font-heading);
  font-size:        var(--fs-sm);
  font-weight:      var(--fw-semibold);
  color:            var(--nexo-dark);
  text-decoration:  none;
  border-block-end: 3px solid transparent;
  margin-block-end: -2px;
  white-space:      nowrap;
  transition:       border-color .15s, color .15s;
}
.um .um-profile-nav-item a.uimob800-hide:hover,
.um .um-profile-nav-item a.uimob500-hide:hover,
.um .um-profile-nav-item a.uimob340-hide:hover {
  border-block-end-color: var(--nexo-purple);
  color:                  var(--nexo-purple);
}
.um .um-profile-nav-item.active  a,
.um .um-profile-nav-item.current a {
  border-block-end-color: var(--nexo-purple) !important;
  color:                  var(--nexo-purple) !important;
}

/* Estado vacío */
.um-nexo-industrias__vacio {
  color: color-mix(in srgb, var(--nexo-dark) 55%, transparent);
  font-size: var(--fs-sm);
  padding: var(--space-6) 0;
}
.um-nexo-industrias__denied {
  color: color-mix(in srgb, var(--nexo-dark) 55%, transparent);
  font-size: var(--fs-sm);
}

/* Sección Crear nueva industria */
.um-nexo-industrias__crear {
  border-block-start: 2px solid var(--nexo-dark);
  padding-block-start: var(--space-6);
}

/* Botón toggle */
.um-nexo-industrias__toggle {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  background: var(--nexo-purple);
  color: var(--nexo-cream);
  border: none;
  padding: var(--space-3) var(--space-6);
  font-family: var(--font-heading);
  font-size: var(--fs-sm);
  font-weight: var(--fw-semibold);
  letter-spacing: .05em;
  text-transform: uppercase;
  cursor: pointer;
  transition: filter var(--duration-fast) ease;
}
.um-nexo-industrias__toggle:hover {
  filter: brightness(1.08);
}
.um-nexo-industrias__toggle-icon {
  width: 16px;
  height: 16px;
  position: relative;
  flex-shrink: 0;
}
.um-nexo-industrias__toggle-icon::before,
.um-nexo-industrias__toggle-icon::after {
  content: '';
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  width: 10px;
  height: 2px;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform .25s;
}
.um-nexo-industrias__toggle-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.um-nexo-industrias__toggle[aria-expanded="true"] .um-nexo-industrias__toggle-icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

/* Formulario ACF dentro del panel */
.um-nexo-industrias__form-wrap {
  margin-block-start: var(--space-6);
}
.um-nexo-industrias__form-intro {
  font-size: var(--fs-sm);
  color: color-mix(in srgb, var(--nexo-dark) 65%, transparent);
  margin-block-end: var(--space-5);
}
.um-nexo-industrias__form-wrap .acf-form { max-width: 680px; }
.um-nexo-industrias__form-wrap .acf-form-submit .acf-btn {
  background: var(--nexo-purple) !important;
  color: var(--nexo-cream) !important;
  border-color: var(--nexo-purple) !important;
  font-family: var(--font-heading) !important;
  font-weight: var(--fw-semibold) !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
}

@media (max-width: 600px) {
  .um-nexo-industrias__item {
    grid-template-columns: 44px 1fr;
    grid-template-rows: auto auto;
  }
  .um-nexo-industrias__item-acciones {
    grid-column: 1 / -1;
    flex-direction: row;
  }
  .um-nexo-industrias__btn { flex: 1; }
}

/* ══════════════════════════════════════════════════════════════════════════════
   UM ACCOUNT PAGE  (/cuenta/ — Mi cuenta)
   ══════════════════════════════════════════════════════════════════════════════

   Estructura que genera UM:
   .um.um-account > .um-form > form
     ├── [inputs hidden]
     ├── .um-account-meta.uimob500-show   ← clon mobile → ocultar
     ├── .um-account-side.uimob500-hide   ← sidebar: avatar + nav
     │     ├── .um-account-meta
     │     └── <ul class="um-account-link ...">
     └── .um-account-main[data-current_tab]
           ├── .um-account-nav.uimob500-show   ← acordeón mobile → ocultar
           └── .um-account-tab[data-tab]
                 ├── .um-account-heading        ← título de la pestaña
                 └── [campos del formulario]
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Layout: grid 2 columnas ─────────────────────────────────────────────── */
.um.um-account .um-form form {
  display:               grid;
  grid-template-columns: 220px 1fr;
  gap:                   var(--space-8);
  align-items:           start;
}

/* Clon mobile de avatar/nombre al inicio del form → siempre oculto */
.um.um-account .um-form form > .um-account-meta { display: none !important; }

/* Sidebar: UM la marca con .uimob500-hide → forzar visible siempre */
.um.um-account .um-account-side {
  display:     block !important;
  grid-column: 1;
  grid-row:    1;
}
.um.um-account .um-account-main {
  grid-column: 2;
  grid-row:    1;
}

/* Acordeón mobile dentro de .um-account-main → sólo sirve sin sidebar */
.um.um-account .um-account-main > .um-account-nav { display: none !important; }

/* ── Tabs: mostrar sólo el activo (CSS replica lo que haría el JS de UM) ─── */
.um.um-account .um-account-tab                                               { display: none; }
.um.um-account .um-account-main[data-current_tab="general"]  .um-account-tab[data-tab="general"]  { display: block; }
.um.um-account .um-account-main[data-current_tab="password"] .um-account-tab[data-tab="password"] { display: block; }
.um.um-account .um-account-main[data-current_tab="privacy"]  .um-account-tab[data-tab="privacy"]  { display: block; }
.um.um-account .um-account-main[data-current_tab="delete"]   .um-account-tab[data-tab="delete"]   { display: block; }

/* ── Sidebar: avatar ─────────────────────────────────────────────────────── */
/* UM genera dos versiones: uimob800-hide (desktop) y uimob800-show (mobile) */
.um.um-account .um-account-side .um-account-meta-img-b { display: none !important; }
.um.um-account .um-account-side .um-account-meta {
  padding-block-end: var(--space-4);
  margin-block-end:  var(--space-3);
  border-bottom:     1px solid color-mix(in srgb, var(--nexo-dark) 12%, transparent);
}
.um.um-account .um-account-side .um-account-meta-img img {
  display:       block;
  width:         88px;
  height:        88px;
  border-radius: 50%;
  object-fit:    cover;
  border:        3px solid var(--nexo-bg);
  box-shadow:    0 2px 10px rgba(21,7,31,.12);
  margin-block-end: var(--space-3);
}
.um.um-account .um-account-side .um-account-name > a {
  display:          block;
  font-family:      var(--font-heading);
  font-size:        var(--fs-base);
  font-weight:      var(--fw-bold);
  color:            var(--nexo-dark);
  text-decoration:  none;
  line-height:      1.25;
  margin-block-end: var(--space-1);
}
.um.um-account .um-account-side .um-account-profile-link a {
  font-family:     var(--font-heading);
  font-size:       var(--fs-xs);
  color:           var(--nexo-purple);
  text-decoration: none;
  transition:      opacity .15s;
}
.um.um-account .um-account-side .um-account-profile-link a:hover { opacity: .75; }

/* ── Sidebar: nav de pestañas ────────────────────────────────────────────── */
.um.um-account .um-account-side > ul {
  list-style: none;
  margin:     0;
  padding:    0;
  border:     1px solid color-mix(in srgb, var(--nexo-dark) 12%, transparent);
  overflow:   hidden;
}
.um.um-account .um-account-link {
  display:         flex;
  align-items:     center;
  padding:         .72rem var(--space-4);
  font-family:     var(--font-heading);
  font-size:       var(--fs-sm);
  font-weight:     var(--fw-medium);
  color:           var(--nexo-dark);
  text-decoration: none;
  border-left:     3px solid transparent;
  background:      var(--nexo-bg);
  transition:      background .15s, border-left-color .15s;
}
.um.um-account .um-account-side > ul > li + li .um-account-link {
  border-top: 1px solid color-mix(in srgb, var(--nexo-dark) 10%, transparent);
}
.um.um-account .um-account-link:hover {
  background:        var(--nexo-yellow);
  border-left-color: var(--nexo-purple);
  color:             var(--nexo-dark);
}
.um.um-account .um-account-link.current {
  background:        var(--nexo-yellow);
  border-left-color: var(--nexo-purple);
  font-weight:       var(--fw-bold);
}
/* Íconos y flecha: font-awesome no carga → ocultar */
.um.um-account .um-account-icon,
.um.um-account .um-account-icontip,
.um.um-account .um-account-arrow { display: none !important; }

/* ── Contenido del tab: cabecera ─────────────────────────────────────────── */
.um.um-account .um-account-heading {
  display:          flex !important;   /* override uimob340-hide/500-hide */
  align-items:      center;
  gap:              var(--space-2);
  font-family:      var(--font-heading);
  font-size:        var(--fs-lg);
  font-weight:      var(--fw-bold);
  color:            var(--nexo-dark);
  margin-block-end: var(--space-5);
  padding-bottom:   var(--space-3);
  border-bottom:    2px solid var(--nexo-dark);
}
/* El ícono del heading tampoco carga → ocultar <i> */
.um.um-account .um-account-heading i { display: none !important; }

/* ── Formulario del tab: botón de guardar ─────────────────────────────────── */
.um.um-account .um-account-tab .um-btn,
.um.um-account .um-account-tab input[type="submit"],
.um.um-account .um-account-tab button[type="submit"] {
  display:          inline-block;
  margin-block-start: var(--space-5);
  padding:          .65rem 1.75rem;
  font-family:      var(--font-heading);
  font-size:        var(--fs-sm);
  font-weight:      var(--fw-bold);
  background:       var(--nexo-purple);
  color:            var(--nexo-cream);
  border:           none;
  cursor:           pointer;
  text-decoration:  none;
}


/* ══════════════════════════════════════════════════════════════════════
   WRAPPER .cuenta-um — template-cuenta.php
   Convierte el layout sidebar + tabs de UM en secciones lineales
   con diseño de 2 columnas, igual que la maqueta de cuenta.
   ══════════════════════════════════════════════════════════════════════ */

/* 1. Contenedor: mismo ancho y ritmo que .cuenta */
.cuenta-um {
  max-width:     64rem;
  margin-inline: auto;
  padding:       clamp(2.25rem, 5vh, 3.5rem) var(--container-pad) clamp(4rem, 9vh, 7rem);
}

/* 2. Anular el max-width: 32rem !important que aplica la regla global .um
      y corregir el 70% que asigna um-account.css a .um-account-main */
.cuenta-um .um.um-account             { max-width: none !important; width: 100% !important; }
.cuenta-um .um.um-account .um-account-main { width: 100% !important; float: none !important; }

/* El grid del form reserva 220px para el sidebar (oculto aquí): bloque simple
   para que el main ocupe todo el ancho, igual que el perfil /user/ */
.cuenta-um .um.um-account .um-form form { display: block; }

/* 3. Ocultar sidebar (avatar + navegación de pestañas) y meta mobile
      (ya tenemos el hero banner con foto/nombre del usuario) */
.cuenta-um .um.um-account .um-account-side { display: none !important; }
.cuenta-um .um.um-account .um-account-meta { display: none !important; }

/* 4. Acordeón mobile del main: también ocultar */
.cuenta-um .um.um-account .um-account-main > .um-account-nav { display: none !important; }

/* 5. Mostrar todos los tabs como secciones: grid de 2 columnas para campos */
.cuenta-um .um.um-account .um-account-tab {
  display:               grid !important;
  grid-template-columns: 1fr 1fr;
  column-gap:            1.5rem;
  row-gap:               .25rem;
  align-items:           start;
}

/* Ocultar la pestaña "Eliminar cuenta" (acción destructiva) */
.cuenta-um .um.um-account .um-account-tab[data-tab="delete"] { display: none !important; }

/* El heading de sección y ciertos campos van a ancho completo */
.cuenta-um .um.um-account .um-account-heading,
.cuenta-um .um.um-account .um-account-tab .um-col-alt-b,
.cuenta-um .um.um-account .um-account-tab .um-col-alt,
.cuenta-um .um.um-account .um-account-tab .um-btn-row,
.cuenta-um .um.um-account .um-account-tab .um-notice,
.cuenta-um .um.um-account .um-account-tab .um-row:has(.um-field-user_login),
.cuenta-um .um.um-account .um-account-tab .um-row:has(.um-field-user_email),
.cuenta-um .um.um-account .um-account-tab .um-row:has(.um-field-current_password) {
  grid-column: 1 / -1;
}

/* Filas UM que ya traen 2 columnas internas (um-col-121 + um-col-122):
   ocupan ancho completo y se convierten en un sub-grid de 2 columnas */
.cuenta-um .um.um-account .um-account-tab .um-row:has(.um-col-121) {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}

/* 6. Separador entre secciones — combinador ~ porque UM intercala un
      .um-account-nav (acordeón mobile, oculto) entre tab y tab */
.cuenta-um .um.um-account .um-account-tab ~ .um-account-tab {
  margin-block-start:  2.5rem;
  padding-block-start: 2.5rem;
  border-block-start:  1px solid color-mix(in srgb, var(--nexo-dark) 14%, transparent);
}

/* 7. Título de sección — igual que .cuenta__section-title */
.cuenta-um .um.um-account .um-account-heading {
  border-bottom:    0 !important;
  padding-bottom:   0 !important;
  margin-block-end: .35rem !important;
  font-size:        var(--fs-lg) !important;
}

/* 8. Campos: mismo espaciado que .cuenta__field */
.cuenta-um .um .um-row { margin-block-end: 1.4rem !important; }

/* 9. Labels de campo — mismo look que .cuenta__label */
.cuenta-um .um .um-field-label label {
  display:          block;
  font-size:        var(--fs-sm);
  font-weight:      var(--fw-bold);
  text-transform:   uppercase;
  letter-spacing:   .05em;
  color:            var(--nexo-dark);
  margin-block-end: .5rem;
}

/* 10. Inputs — fondo amarillo, sin borde, igual que maqueta */
.cuenta-um .um input[type="text"],
.cuenta-um .um input[type="email"],
.cuenta-um .um input[type="tel"],
.cuenta-um .um input[type="number"],
.cuenta-um .um input[type="password"],
.cuenta-um .um select,
.cuenta-um .um textarea {
  width:          100%;
  padding:        1.05rem 1rem;
  font-family:    var(--font-heading);
  font-size:      var(--fs-base);
  color:          var(--nexo-dark);
  background:     var(--nexo-yellow);
  border:         0;
  border-radius:  0;
  outline:        2px solid transparent;
  outline-offset: -2px;
  transition:     outline-color .15s;
  box-sizing:     border-box;
}
.cuenta-um .um input:focus,
.cuenta-um .um select:focus,
.cuenta-um .um textarea:focus { outline-color: var(--nexo-dark); }

/* 11. Botón guardar — mismo look que .cuenta__save */
.cuenta-um .um.um-account .um-account-tab .um-btn,
.cuenta-um .um.um-account .um-account-tab input[type="submit"],
.cuenta-um .um.um-account .um-account-tab button[type="submit"] {
  display:            inline-block;
  margin-block-start: 0;
  padding:            .95rem 2.5rem;
  font-size:          var(--fs-base);
  background:         var(--nexo-purple);
  color:              var(--nexo-cream);
}

/* 12. Aviso / mensaje de éxito o error debajo del form */
.cuenta-um .um.um-account .um-notice {
  grid-column:        1 / -1;
  margin-block-start: 1rem;
  padding:            .75rem 1rem;
  font-size:          var(--fs-sm);
}

/* 13. Mobile: volver a 1 columna */
@media (max-width: 640px) {
  .cuenta-um .um.um-account .um-account-tab {
    grid-template-columns: 1fr;
  }
}


/* ══════════════════════════════════════════════════════════════════════
   WRAPPER .perfil-um — template-perfil-usuario.php
   Perfil público de usuario con hero banner NEXO. Oculta la cabecera
   nativa de UM (.um-cover / .um-header) y estiliza los tabs de perfil.
   ══════════════════════════════════════════════════════════════════════ */

/* 1. Anular el max-width: 32rem que aplica la regla global .um
      (la clase real en modo vista es .um-viewing, no .um-view) */
.perfil-um .um.um-profile {
  max-width: none !important;
  width:     100% !important;
}

/* 2. Contenedor: mismo ritmo que .cuenta */
.perfil-um {
  max-width:     64rem;
  margin-inline: auto;
  padding:       var(--space-6) var(--container-pad) clamp(4rem, 9vh, 7rem);
}
.perfil-um:not(:has(.um-nexo-industrias)) { padding-block: 0 var(--space-8); }

/* 3. Ocultar cabecera nativa de UM (foto de portada + franja oscura con avatar)
      ya que el hero banner del template la reemplaza */
.perfil-um .um-cover,
.perfil-um .um-header { display: none !important; }

/* 4. Nav de tabs del perfil — reemplazar el fondo oscuro por estilo NEXO */
.perfil-um .um-profile-nav {
  padding:       0;
  background:    transparent;
  text-align:    left;
  display:       flex;
  gap:           0;
  border-bottom: 2px solid var(--nexo-dark);
  margin-block-end: 2rem;
}
.perfil-um .um-profile-nav-item a {
  float:         none !important;
  display:       inline-block;
  padding:       .6rem 1.25rem;
  border-radius: 0;
  margin:        0;
  color:         color-mix(in srgb, var(--nexo-dark) 55%, transparent) !important;
  font-family:   var(--font-heading);
  font-size:     var(--fs-sm);
  font-weight:   var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: .05em;
  background:    transparent;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  transition:    color .15s, border-color .15s;
}
.perfil-um .um-profile-nav-item a:hover {
  background:   transparent;
  color:        var(--nexo-dark) !important;
  border-color: color-mix(in srgb, var(--nexo-dark) 40%, transparent);
}
.perfil-um .um-profile-nav-item.active a,
.perfil-um .um-profile-nav-item.active a:hover {
  color:        var(--nexo-dark) !important;
  border-color: var(--nexo-purple);
}
/* Ocultar íconos de las tabs (UM añade um-faicon-*) */
.perfil-um .um-profile-nav-item i { display: none !important; }
.perfil-um .um-profile-nav-item a { padding-left: 1.25rem !important; }

/* 5. Cuerpo del perfil: quitar max-width nativo de UM (600px) */
.perfil-um .um-profile-body {
  max-width: none !important;
  padding:   0;
}

/* 6. Badge de estado del hero */
.perfil__badge {
  display:        inline-block;
  padding:        .2em .75em;
  font-family:    var(--font-heading);
  font-size:      var(--fs-xs);
  font-weight:    var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: .08em;
  color:          var(--nexo-dark);
  line-height:    1.4;
}
.perfil__badge--green  { background: var(--nexo-green); }
.perfil__badge--yellow { background: var(--nexo-yellow); }
.perfil__badge--red    { background: #f47171; }
.perfil__badge--dark   { background: color-mix(in srgb, var(--nexo-dark) 18%, transparent); }

/* 7. Campos del perfil (vista, no edición) */
.perfil-um .um-field-label label {
  display:          block;
  font-size:        var(--fs-xs);
  font-weight:      var(--fw-bold);
  text-transform:   uppercase;
  letter-spacing:   .06em;
  color:            color-mix(in srgb, var(--nexo-dark) 55%, transparent);
  margin-block-end: .25rem;
}
.perfil-um .um-field-area {
  font-family: var(--font-heading);
  font-size:   var(--fs-base);
  color:       var(--nexo-dark);
}

/* 8. Foto con overlay de cámara — botón que dispara el editor de foto de UM ─── */
.perfil__photo-btn {
  position:   relative;
  display:    flex !important;
  background: none;
  border:     none;
  padding:    0;
  cursor:     pointer;
}
.perfil__photo-overlay {
  position:        absolute;
  inset:           0;
  border-radius:   50%;
  background:      rgba(0, 0, 0, .38);
  display:         flex;
  align-items:     center;
  justify-content: center;
  color:           #fff;
  opacity:         0;
  transition:      opacity .2s;
  pointer-events:  none;
}
.perfil__photo-btn:hover .perfil__photo-overlay { opacity: 1; }
.perfil__photo-btn img {
  width:      100%;
  height:     100%;
  object-fit: cover;
  display:    block;
}

/* 9. Fila de acciones en el hero (Mi cuenta / Cerrar sesión) */
.perfil__hero-actions {
  display:    flex;
  flex-wrap:  wrap;
  gap:        .5rem;
  margin-top: .85rem;
}

/* 10. Sección "Sobre mí" / Bio ─────────────────────────────────────────────── */
.perfil-bio-sect {
  max-width:     64rem;
  margin-inline: auto;
  padding:       clamp(2rem, 4vh, 3rem) var(--container-pad) 0;
}
.perfil-bio-form__header {
  display:     flex;
  align-items: center;
  gap:         1rem;
  margin-block-end: .75rem;
}
.perfil-bio-form__title {
  font-family:  var(--font-heading);
  font-weight:  var(--fw-bold);
  font-size:    var(--fs-lg);
  margin:       0;
  color:        var(--nexo-dark);
}
.perfil-bio-form__toggle { margin-left: auto; }
.perfil-bio-view .perfil-bio-form__title { margin-block-end: .75rem; }
.perfil-bio-form__preview {
  font-family:  var(--font-heading);
  font-size:    var(--fs-base);
  color:        var(--nexo-dark);
  line-height:  var(--lh-normal);
  margin:       0;
}
.perfil-bio-form__empty { opacity: .55; font-style: normal; }
.perfil-bio-form__fields {
  margin-block-start: 1.25rem;
  display:            flex;
  flex-direction:     column;
  gap:                .75rem;
}
.perfil-bio-form__textarea {
  width:         100%;
  padding:       1rem;
  font-family:   var(--font-heading);
  font-size:     var(--fs-base);
  color:         var(--nexo-dark);
  background:    var(--nexo-yellow);
  border:        0;
  border-radius: 0;
  outline:       2px solid transparent;
  outline-offset: -2px;
  resize:        vertical;
  transition:    outline-color .15s;
  box-sizing:    border-box;
}
.perfil-bio-form__textarea:focus { outline-color: var(--nexo-dark); }
.perfil-bio-form__hint {
  font-size: var(--fs-sm);
  color:     color-mix(in srgb, var(--nexo-dark) 55%, transparent);
  margin:    0;
}
.perfil-bio-form__actions {
  display:    flex;
  flex-wrap:  wrap;
  gap:        .75rem;
  align-items: center;
  margin-block-start: .25rem;
}
.perfil-bio-form__cancel {
  appearance:  none;
  border:      0;
  background:  transparent;
  font-family: var(--font-heading);
  font-size:   var(--fs-sm);
  font-weight: var(--fw-semibold);
  color:       color-mix(in srgb, var(--nexo-dark) 60%, transparent);
  cursor:      pointer;
  padding:     0;
  text-decoration: underline;
}
.perfil-bio-form__cancel:hover { color: var(--nexo-dark); }

/* 11. Mobile */
@media (max-width: 640px) {
  .perfil-um .um-profile-nav    { flex-wrap: wrap; }
  .perfil__hero-actions          { flex-direction: column; align-items: flex-start; }
  .perfil-bio-form__header       { flex-wrap: wrap; }
  .perfil-bio-form__toggle       { margin-left: 0; }
}
