/* NX Experiencia de uso — Empleos Nexo. MonteroTech, 17-sep-2026. */

/* Botones de envío legibles: la tipografía de Kirki pinta el texto de input[type=submit] en gris #666 sobre azul. */
html body input[type="submit"]:not(.border):not(.gray),
html body input[type="button"]:not(.border):not(.gray),
html body button[type="submit"]:not(.border):not(.gray){
  color:#fff;
}
html body input[type="submit"]:focus-visible,
html body button:focus-visible,
html body .button:focus-visible{ outline:none; box-shadow:var(--nx-foco); }

/* ---------- Formularios de acceso y registro ---------- */
form.nx-registro fieldset,
form.nx-acceso fieldset{ border:0; margin:0; padding:0; min-width:0; }
form.nx-registro .nx-reg-legend{
  font-family:var(--nx-display); font-weight:700; font-size:1.05rem; color:var(--nx-ink);
  margin:0 0 10px; padding:0; float:none; width:auto;
}
form.nx-registro .account-type{ margin-bottom:14px; }
form.nx-registro .nx-reg-nota{
  margin:0 0 16px; color:var(--nx-ink-soft); font-size:.95rem; line-height:1.5;
}
form.nx-registro .nx-campo,
form.nx-acceso .nx-campo{ margin:0 0 14px; }
form.nx-registro .nx-campo label,
form.nx-acceso .nx-campo label{
  display:block; margin:0 0 6px; padding:0; font-weight:600; font-size:.95rem; color:var(--nx-ink); line-height:1.3;
}
form.nx-registro .nx-campo input,
form.nx-acceso .nx-campo input{
  width:100%; margin:0; height:50px; padding:0 16px; box-sizing:border-box;
  border:1px solid var(--nx-line); border-radius:var(--nx-radio-sm); background:#fff; color:var(--nx-ink); font-size:1rem;
}
form.nx-registro .nx-campo input:focus,
form.nx-acceso .nx-campo input:focus{ border-color:var(--nx-accent); box-shadow:0 0 0 3px var(--nx-accent-soft); outline:none; }
form.nx-registro .nx-campo input[aria-invalid="true"]{ border-color:#B42318; box-shadow:0 0 0 3px #FDE4E1; }
form.nx-registro .nx-req{ color:#B42318; }
form.nx-registro .nx-opc{ font-weight:400; color:var(--nx-ink-soft); }
form.nx-registro .nx-ayuda{ display:block; margin-top:6px; color:var(--nx-ink-soft); font-size:.875rem; line-height:1.45; }
form.nx-registro .nx-reg-fila{ display:grid; grid-template-columns:1fr 1fr; gap:0 12px; }
@media (max-width:480px){ form.nx-registro .nx-reg-fila{ grid-template-columns:1fr; } }
form.nx-registro .nx-reg-empresa[hidden],
form.nx-registro [data-nx-perfil][hidden]{ display:none !important; }

.nx-clave{ position:relative; display:block; }
.nx-clave input{ padding-right:96px !important; }
.nx-ver-clave{
  position:absolute; right:6px; top:50%; transform:translateY(-50%);
  height:38px; padding:0 14px; margin:0; border:0; border-radius:var(--nx-radio-pill);
  background:var(--nx-accent-soft); color:var(--nx-accent-hover) !important; font-weight:600; font-size:.875rem; line-height:38px; cursor:pointer;
}
.nx-ver-clave:hover{ background:#D6E6F7; }

form.nx-registro .nx-aviso-datos{ margin:4px 0 16px; }
form.nx-registro .nx-reg-salida{ margin:0 0 14px; }
form.nx-registro .nx-reg-salida[hidden]{ display:none; }
form.nx-registro .nx-reg-enviar,
form.nx-acceso .nx-reg-enviar{ margin:0 0 12px; }
form.nx-registro .nx-boton-principal,
form.nx-acceso .nx-boton-principal{ width:100%; min-height:50px; margin:0; }
form.nx-registro button.nx-boton-principal[disabled]{ opacity:.7; cursor:progress; }
form.nx-acceso .nx-acceso-enlaces{ margin:0 0 8px; font-size:.95rem; }
form.nx-acceso .checkboxes{ margin:0 0 16px; }
form.nx-registro .nx-ts, form.nx-acceso .nx-ts{ min-height:65px; }

/* Bienvenida tras el registro */
.nx-bienvenida{
  margin:0 0 24px; padding:16px 20px; border-radius:var(--nx-radio-sm);
  background:var(--nx-accent-soft); border-left:4px solid var(--nx-accent); color:var(--nx-ink); line-height:1.5;
}

/* Postular sin cuenta o sin currículum */
.nx-postular p{ margin:0 0 14px; }
.nx-postular .nx-botones{ display:flex; flex-wrap:wrap; gap:10px; }
.nx-postular .nx-botones .button{ margin:0; }

/* ---------- Tablero ---------- */
.dashboard-box:has(#workscout-activities-list){ display:none; }
.nx-proximos .content{ padding:8px 24px 16px; }
.nx-pasos{ list-style:none; margin:0; padding:0; }
.nx-paso{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 16px;
  padding:14px 0 14px 30px; border-bottom:1px solid var(--nx-line); position:relative; color:var(--nx-ink);
}
.nx-paso:last-child{ border-bottom:0; }
.nx-paso::before{ content:""; position:absolute; left:4px; top:50%; width:14px; height:14px; margin-top:-7px; border-radius:50%; background:var(--nx-plata); }
.nx-paso-ok::before{ background:#1F9D55; }
.nx-paso-pend::before{ background:var(--nx-oro); }
.nx-paso-info::before{ background:var(--nx-accent); }
.nx-paso .button{ margin:0; white-space:nowrap; }

/* Perfil: sin foto para candidaturas */
body.nx-perfil-candidato .workscout-avatar-form,
body.nx-perfil-candidato label[for="workscout_core_avatar_id"]{ display:none !important; }

/* ---------- Listado de ofertas ---------- */
html body .job-listing.grid .job-listing-footer ul li.job-listing-footer-company{ display:none !important; }
.job-listing .nx-card-modalidad,
.job-listing .nx-card-fecha{ color:var(--nx-ink-soft); }

/* nx-boton-centro */
form.nx-registro button.nx-boton-principal,form.nx-acceso input.nx-boton-principal,.nx-postular .button{ text-align:center; justify-content:center; }
.nx-recuperar-intro{ max-width:560px; margin:0 0 20px; color:var(--nx-ink-soft); line-height:1.55; }

/* Pie en móvil: espacio para el botón de accesibilidad */
@media (max-width:992px){ #footer-new .footer-new-bottom-section{ padding-bottom:88px; } }

/* Readabler: pie del panel centrado y enlace legible en modo claro y oscuro */
#mdp-readabler-popup-footer .mdp-readabler-statement{ display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; margin-top:16px; }
#mdp-readabler-popup-footer #mdp-readabler-statement-btn{ display:inline-block; margin:0; padding:4px 8px; background:none; border:0; text-align:center; color:inherit; font-weight:600; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
#mdp-readabler-popup-footer #mdp-readabler-statement-btn:hover,
#mdp-readabler-popup-footer #mdp-readabler-statement-btn:focus-visible{ text-decoration-thickness:2px; }

/* Móvil (iOS Safari): recorte horizontal sin crear contenedores de desplazamiento */
@media (max-width:992px){
	@supports (overflow:clip){
		html body{ overflow-x:clip; }
		html body #wrapper{ overflow-x:clip; overflow-y:visible; }
	}
}
@media (max-width:992px){ #mdp-readabler-popup-footer{ padding-bottom:84px !important; } }

/* Boton Ver mas empleos: separado de las tarjetas y centrado (17-sep) */
html body .job_listings > a.load_more_jobs.button{display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:100%;margin:40px auto 0 !important;float:none !important;clear:both}
html body .job_listings > a.load_more_jobs.button i{margin:0 !important}
@media(max-width:767px){html body .job_listings > a.load_more_jobs.button{margin-top:28px !important}}

/* Vista de CV: se retira el bloque de tarifa por hora, que el sitio no usa (23-sep) */
html body.single-resume .sidebar-container .profile-overview-widget{display:none !important}

/* El sitio no usa calificaciones: fuera la insignia y las estrellas (23-sep) */
html body .company-not-rated,
html body .freelancer-rating,
html body .star-rating{display:none !important}
html body .single-page-header-inner .header-details ul li:has(.company-not-rated),
html body .single-page-header-inner .header-details ul li:has(.star-rating){display:none !important}
