/* Centros de trabajo del cierre de producto: Ajustes por categorías, y las barras de secciones que se repiten en vacante y ficha.
   Mismos tokens que el resto de Sofía (--ln, --r1…r3, --tx*, --e*). Nada fijo se pone encima del contenido: las barras de secciones se desplazan en horizontal
   dentro de su propia fila y no son sticky en pantallas menores. */
.aj-hub { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 19rem), 1fr)); gap: var(--e4); align-items: stretch; }
.aj-tarjeta { display: grid; gap: var(--e3); align-content: start; min-width: 0; }
.aj-tarjeta-cab { display: flex; align-items: center; justify-content: space-between; gap: var(--e3); }
.aj-tarjeta h2 { margin: 0; font-size: var(--paso-1); }
@media (max-width: 599px) { .aj-hub { gap: var(--e3); } .aj-tarjeta { gap: var(--e2); } }
.aj-tarjeta h2 a { color: inherit; text-decoration: none; }
.aj-tarjeta h2 a:hover { text-decoration: underline; }
.aj-tarjeta p { margin: 0; }
.aj-estado { gap: var(--e2); }
.aj-info { display: grid; gap: var(--e3); }
.aj-info h2, .aj-info p, .aj-info ul { margin: 0; }
.aj-pestanas, .sec-barra { display: flex; gap: var(--e2); overflow-x: auto; padding: var(--e1) 0 var(--e2); margin: 0 0 var(--e4); scrollbar-width: thin; -webkit-overflow-scrolling: touch; }
.aj-pestana, .sec-barra a, .sec-barra button { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 2.5rem; padding: 0.35rem 0.85rem; border: 1px solid var(--ln); border-radius: 999px; background: var(--r1); color: var(--tx); text-decoration: none; font: inherit; font-size: var(--paso-0); cursor: pointer; white-space: nowrap; }
.aj-pestana:hover, .sec-barra a:hover, .sec-barra button:hover { border-color: var(--bd); }
.aj-pestana[aria-current="page"], .sec-barra [aria-current="true"], .sec-barra [aria-selected="true"] { background: var(--amarillo); color: #000; border-color: var(--amarillo); font-weight: 700; }
.aj-guardar { align-items: center; gap: var(--e3); }
.aj-guardado { transition: background-color 0.25s ease; }
@media (max-width: 599px) { .aj-pestana, .sec-barra a, .sec-barra button { min-height: 2.75rem; } }
@media (prefers-reduced-motion: reduce) { .aj-guardado { transition: none; } }

/* Secciones de una pantalla larga (Vacante, Ficha): barra de partes y bloques que se pliegan en celular */
.vac-secciones:empty { display: none; }
.vac-secciones .sec-barra { margin-bottom: var(--e3); }
.sec-marca { display: inline-block; margin-left: 0.35rem; padding: 0 0.4rem; border-radius: 999px; background: var(--amarillo); color: #000; font-size: var(--paso--1); font-weight: 700; }
[data-sec][hidden] { display: none !important; }
.vsec-toggle { display: none; }
@media (max-width: 899px) {
  .vsec .vsec-toggle { display: inline-flex; margin-left: auto; flex: 0 0 auto; }
  .vsec > .vsec-cab { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e2); }
  .vsec-cerrada > *:not(.vsec-cab) { display: none !important; }
  .vsec-cerrada { padding-bottom: var(--e3); }
}

/* La ficha en celular: la barra de partes (no fija) reemplaza al índice fijo */
.ficha-secciones { display: none; }
.sec-nav { display: inline-flex; gap: var(--e2); margin-left: auto; flex: 0 0 auto; }
.sec-ant-sig { display: inline-flex; align-items: center; min-height: 2.5rem; padding: 0.35rem 0.85rem; border: 1px solid var(--bd); border-radius: 999px; background: transparent; color: var(--tx); font: inherit; font-size: var(--paso-0); cursor: pointer; white-space: nowrap; }
@media (max-width: 899px) {
  .ficha-secciones { display: block; }
  .ficha-indice { display: none !important; }
  .sec-ant-sig { min-height: 2.75rem; }
}


/* Hablar con Sofía (cierre de producto): la respuesta principal primero y el «cómo lo entendí» a pedido */
.asistente-principal { margin: 0 0 var(--e2); font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; }
.asistente-como { margin-top: var(--e2); }
.asistente-como > summary { cursor: pointer; font-size: var(--paso--1); color: var(--tx-2); }
.asistente-como-dl { margin: var(--e2) 0 0; }
.burbuja.nota { align-self: center; max-width: 100%; text-align: center; background: transparent; border: 1px dashed var(--ln); }

/* Hoy por niveles (cierre de producto): lo urgente primero, y en celular lo demás plegado */
.hoy-nivel { display: grid; gap: var(--e3); margin-bottom: var(--e4); }
.hoy-nivel-titulo { margin: 0; font-size: var(--paso-1); display: flex; gap: var(--e2); align-items: center; }
.hoy-resto > summary { list-style: none; cursor: pointer; display: inline-flex; margin-bottom: var(--e3); }
.hoy-resto > summary::-webkit-details-marker, .hoy-plegable > summary::-webkit-details-marker { display: none; }
.hoy-plegables { margin: var(--e3) 0; }
.hoy-plegable { border: 1px solid var(--ln); border-radius: calc(var(--radio) * 0.6); background: var(--r1); }
.hoy-plegable > summary { cursor: pointer; display: grid; gap: var(--e1); padding: var(--e3) var(--e4); list-style: none; min-height: 2.75rem; }
.hoy-plegable-titulo { font-weight: 700; font-size: var(--paso-1); }
.hoy-plegable-cuerpo { padding: 0 var(--e3) var(--e3); }
.hoy-plegable[open] > summary { border-bottom: 1px solid var(--ln); margin-bottom: var(--e3); }
