/* Cotizaciones · la ronda: encabezado, pestañas, Resumen y Matriz (maestro/detalle).
   Solo variables y clases de estilos.css; nada de colores sueltos. El estado nunca es solo color: todo lleva texto.
   Los cambios de diseño responden al ANCHO DEL ÁREA DE TRABAJO (container «principal»), no al de la ventana: con el menú lateral abierto el área es más angosta. */

.rn-ronda { display: flex; flex-direction: column; gap: var(--e5); min-width: 0; }
.rn-panel, .rn-tab { display: flex; flex-direction: column; gap: var(--e5); min-width: 0; }
.rn-panel:focus { outline: none; }
.rn-cargando { display: flex; flex-direction: column; gap: var(--e3); }

.rn-etiqueta { font-size: var(--paso--1); font-weight: 700; color: var(--tx-2); letter-spacing: 0.02em; display: flex; align-items: center; gap: 0.4rem; }
.rn-nota { display: block; padding: var(--e3); border: 1px dashed var(--tx-2); border-radius: 0.9rem; line-height: 1.45; }   /* texto corrido con el ícono en línea: un fragmento en negrita no se parte en columnas */
.rn-nota > .icono { display: inline-block; vertical-align: -0.2em; margin-right: var(--e2); }
.rn-aviso { display: flex; align-items: flex-start; gap: var(--e2); color: var(--tx-2); }
.rn-aviso > .icono { margin-top: 0.15em; }

/* ---------- Encabezado ---------- */
.rn-estado { gap: var(--e4); }
.rn-estado-fila { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e2); }
.rn-razones { margin: 0; padding-left: 1.1rem; color: var(--tx-2); display: flex; flex-direction: column; gap: 0.15rem; }
.rn-datos { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: var(--e3) var(--e4); margin: 0; }
.rn-dato { display: flex; flex-direction: column; gap: 0.1rem; min-width: 0; }
.rn-dato dt { font-size: var(--paso--1); font-weight: 700; color: var(--tx-2); }
.rn-dato dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.rn-proxima { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--e3) var(--e4); padding: var(--e4); border: 1.5px solid var(--tx); border-radius: 1.1rem; }
.rn-proxima > div { flex: 1 1 18rem; min-width: 0; display: flex; flex-direction: column; gap: 0.2rem; }
.rn-proxima-texto { font-size: var(--paso-1); font-weight: 700; line-height: 1.35; max-width: 52ch; }
.rn-ronda .encabezado { padding-top: var(--e2); }
.rn-ronda .encabezado h1 { font-size: clamp(1.7rem, 2.6vw, 2.4rem); line-height: 1.15; }
.rn-kpis { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--e3); }
@container principal (min-width: 560px) { .rn-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@container principal (min-width: 900px) { .rn-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
/* El encabezado compacto (en las pestañas que no son el Resumen): lo esencial en una tira */
.rn-tira { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.35rem 1.5rem; }
.rn-tira a { display: inline-flex; align-items: baseline; gap: 0.35rem; min-height: 1.75rem; color: inherit; text-decoration: none; }
.rn-tira strong { font-size: var(--paso-1); font-weight: 800; letter-spacing: -0.01em; }
.rn-tira span { color: var(--tx-2); font-size: var(--paso--1); font-weight: 600; }
.rn-tira a:hover span { color: var(--tx); }
.rn-linea { display: flex; flex-wrap: wrap; gap: 0.25rem 1.5rem; color: var(--tx-2); }
.rn-linea b { color: var(--tx); }
.rn-proxima-corta { padding: 0.65rem var(--e4); align-items: center; }
.rn-proxima-corta > p { flex: 1 1 18rem; max-width: none; }
.rn-proxima-corta .rn-etiqueta { display: inline; margin-right: 0.4rem; }
.rn-kpis > li { display: flex; min-width: 0; }
.rn-kpi { flex: 1; gap: 0.35rem; color: inherit; text-decoration: none; transition: border-color 0.2s; }
.rn-kpi:hover { border-color: var(--tx); }
.rn-kpi strong { font-size: clamp(1.45rem, 2vw, 1.9rem); font-weight: 800; line-height: 1.05; letter-spacing: -0.02em; }
.rn-kpi > span:not(.expediente-avance) { font-size: var(--paso--1); color: var(--tx-2); line-height: 1.4; overflow-wrap: anywhere; }
.rn-kpi b { color: var(--tx); }
.rn-kpi .expediente-avance { display: block; margin-top: auto; }

/* ---------- Pestañas ---------- */
.rn-pestanas-caja { min-width: 0; }
.rn-pestanas { padding: 3px; margin: -3px; }
.rn-pestanas .pestana { display: inline-flex; align-items: center; gap: 0.45rem; min-height: 2.5rem; }
.rn-contador { display: inline-grid; place-items: center; min-width: 1.4rem; height: 1.4rem; padding: 0 0.4rem; border-radius: 99px; background: var(--tx); color: var(--fondo); font-size: 0.75rem; font-weight: 800; line-height: 1; }
.pestana[aria-selected="true"] .rn-contador { background: var(--fondo); color: var(--tx); }
.rn-pendiente { max-width: 40rem; }

/* ---------- Resumen ---------- */
.rn-tareas { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.rn-tareas > li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--e2) var(--e4); padding: var(--e3) 0; border-bottom: 1px solid var(--ln); }
.rn-tareas > li:last-child { border-bottom: 0; padding-bottom: 0; }
.rn-tareas p { flex: 1 1 20rem; max-width: 70ch; font-weight: 600; }
.rn-provs { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--e3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr)); }
.rn-prov { display: flex; flex-direction: column; gap: var(--e2); padding: var(--e4); border: 1px solid var(--ln); border-radius: 1rem; min-width: 0; }
.rn-prov[data-estado="sin_respuesta"], .rn-prov[data-estado="vencida"] { border-color: var(--tx); border-width: 1.5px; }
.rn-prov-cab { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e2); }
.rn-prov-cab h3 { font-size: var(--paso-1); font-weight: 700; margin-right: auto; min-width: 0; overflow-wrap: anywhere; letter-spacing: 0; }
.rn-prov p { max-width: none; }
.rn-prov-avance { display: flex; align-items: center; gap: var(--e3); }
.rn-prov-avance .expediente-avance { flex: 1; }
.rn-prov .fila-flex { margin-top: auto; padding-top: var(--e2); }
.rn-pesos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 0.1rem var(--e5); }
.rn-pesos > li { display: flex; justify-content: space-between; gap: var(--e3); padding: 0.3rem 0; border-bottom: 1px solid var(--ln); font-size: var(--paso--1); }
.rn-bitacora { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--e3); }
.rn-bitacora > li { padding-left: var(--e3); border-left: 2px solid var(--ln); }
.rn-bitacora p { max-width: none; overflow-wrap: anywhere; }

/* ---------- Matriz: filtros y búsqueda ---------- */
.rn-matriz { gap: var(--e4); }
.rn-filtros { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--e2); }
.rn-filtro { display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.25rem; padding: 0.25rem 0.9rem; border: 1px solid var(--bd); border-radius: 99px; background: transparent; color: var(--tx); font-size: var(--paso--1); font-weight: 600; cursor: pointer; transition: border-color 0.2s, background-color 0.2s; }
.rn-filtro:hover { border-color: var(--tx); }
.rn-filtro[aria-pressed="true"] { background: var(--tx); color: var(--fondo); border-color: var(--tx); }
.rn-filtro[data-vacio="true"]:not([aria-pressed="true"]) { color: var(--tx-2); border-style: dashed; }
.rn-n { font-weight: 800; font-variant-numeric: tabular-nums; }
.rn-buscar { display: grid; grid-template-columns: minmax(12rem, 2fr) minmax(10rem, 1fr) minmax(7rem, 9rem) auto; gap: var(--e3); align-items: end; }
.rn-buscar > .boton { align-self: end; }
.rn-vacio { display: flex; flex-direction: column; align-items: flex-start; gap: var(--e3); padding: var(--e5) 0; max-width: 44ch; }
.rn-vacio-detalle { padding: var(--e4); }

/* ---------- Matriz: maestro/detalle ---------- */
.rn-md { --rn-modo: solo; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--e4); min-width: 0; }
.rn-md[data-abierta="true"] > .rn-maestro { display: none; }
.rn-md[data-abierta="false"] > .rn-detalle { display: none; }
.rn-maestro, .rn-detalle { min-width: 0; }
.rn-detalle:focus { outline: none; }

.rn-tabla-caja { overflow: auto; max-height: max(24rem, calc(100dvh - 15rem)); border: 1px solid var(--ln); border-radius: 1rem; overscroll-behavior: contain; position: relative; }
.rn-tabla-caja:focus-visible { outline-offset: -3px; }
.rn-tabla { border-collapse: separate; border-spacing: 0; table-layout: fixed; width: 100%; min-width: calc(13rem + var(--rn-n, 5) * 7.5rem + 11.5rem); font-size: var(--paso--1); }
.rn-col-ref { width: 13rem; }
.rn-col-prov { width: 7.5rem; }
.rn-col-res { width: 11.5rem; }
.rn-tabla th, .rn-tabla td { padding: 0.5rem 0.6rem; border-bottom: 1px solid var(--ln); vertical-align: top; text-align: left; background: var(--fondo); }
.rn-tabla thead th { position: sticky; top: 0; z-index: 3; border-bottom: 1px solid var(--bd); vertical-align: bottom; }
.rn-th-ref, .rn-celda-ref { position: sticky; left: 0; z-index: 2; border-right: 1px solid var(--ln); overflow: hidden; }
.rn-tabla thead .rn-th-ref { z-index: 4; }
.rn-th-prov { overflow: hidden; }
.rn-th-nombre { display: block; font-weight: 700; color: var(--tx); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rn-th-estado { display: block; font-size: 0.6875rem; font-weight: 600; color: var(--tx-2); line-height: 1.3; }

.rn-tabla tbody tr:hover > td, .rn-tabla tbody tr:hover > th { background: var(--r2); }
.rn-tabla tbody tr[data-sel] > td, .rn-tabla tbody tr[data-sel] > th { background: var(--r3); }
.rn-tabla tbody tr[data-sel] > .rn-celda-ref { box-shadow: inset 4px 0 0 var(--tx); }
.rn-ref { display: flex; flex-direction: column; align-items: flex-start; gap: 0.08rem; width: 100%; padding: 0; border: 0; background: none; color: inherit; text-align: left; cursor: pointer; min-height: 2.5rem; }
.rn-ref strong { font-weight: 800; font-size: var(--paso-0); }
.rn-ref .rn-nombre { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--tx); font-weight: 500; }
.rn-ref[aria-current="true"] .rn-nombre { font-weight: 700; }
.rn-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 0.3rem 0.5rem; margin-top: 0.2rem; }
.rn-chips .chip { white-space: normal; text-align: left; }

.rn-celda { font-variant-numeric: tabular-nums; overflow: hidden; }
.rn-celda[data-recomendada="true"] { box-shadow: inset 0 0 0 2px var(--tx); }
.rn-celda[data-elegida="true"] { box-shadow: inset 0 0 0 2px var(--tx); }
.rn-celda[data-resaltada="true"], .rn-th-prov[data-resaltada="true"] { background: var(--r3); }
.rn-celda[data-estado="no_cumple"], .rn-celda[data-estado="no_comparable"], .rn-celda[data-estado="sin_respuesta"], .rn-celda[data-estado="falta"], .rn-celda[data-estado="pausado"] { color: var(--tx-2); }
.rn-cc { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; align-items: flex-start; }
.rn-precio { font-weight: 800; font-size: var(--paso-0); }
.rn-celda[data-estado="no_cumple"] .rn-precio { text-decoration: line-through; text-decoration-thickness: 1px; }
.rn-tag { display: inline-block; box-sizing: border-box; max-width: 100%; font-size: 0.6875rem; font-weight: 800; letter-spacing: 0; border: 1px solid currentColor; border-radius: 99px; padding: 0 0.3rem; line-height: 1.5; color: var(--tx); }
.rn-tag[data-alerta="true"] { border-style: dashed; }
.rn-nota-celda { font-size: 0.6875rem; font-weight: 700; color: var(--tx-2); line-height: 1.3; }
.rn-celda-resumen { overflow: hidden; }
.rn-celda-resumen .chip { white-space: normal; text-align: left; }
.rn-celda-resumen .rn-cc { gap: 0.25rem; }
.rn-rec { display: block; line-height: 1.35; }
.rn-dec { display: block; margin-top: 0.15rem; }
.rn-sin-precio { display: none; }
.rn-paginas { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--e3); margin-top: var(--e3); }

/* ---------- Detalle de una referencia ---------- */
.rn-det { display: flex; flex-direction: column; gap: var(--e5); min-width: 0; }
.rn-det-cab { display: flex; flex-direction: column; gap: var(--e2); }
.rn-det-botones { display: flex; justify-content: space-between; align-items: center; gap: var(--e2); flex-wrap: wrap; }
.rn-det-nav { display: inline-flex; gap: var(--e2); }
.rn-det h3 { font-size: var(--paso-2); font-weight: 300; letter-spacing: -0.01em; line-height: 1.2; overflow-wrap: anywhere; }
.rn-det h3 b { font-weight: 800; }
.rn-det-codigo { font-size: var(--paso--1); font-weight: 700; color: var(--tx-2); letter-spacing: 0.02em; margin-left: 0.3rem; }
.rn-ruta { max-width: 60ch; }
.rn-det section > h3 { margin-bottom: var(--e3); }
.rn-det p { max-width: 68ch; }
.rn-rec-caja { display: flex; flex-direction: column; gap: var(--e3); padding: var(--e4); border-radius: 1rem; background: var(--r2); }
.rn-rec-caja > h3 { margin-bottom: 0; }
.rn-puntaje { display: flex; align-items: baseline; gap: 0.4rem; }
.rn-puntaje strong { font-size: 2.1rem; font-weight: 800; line-height: 1; letter-spacing: -0.02em; }
.rn-puntaje span { color: var(--tx-2); font-weight: 600; font-size: var(--paso--1); }
.rn-porque { font-weight: 600; line-height: 1.5; }
.rn-bloque { display: flex; flex-direction: column; gap: 0.3rem; min-width: 0; }
.rn-bloque ul { margin: 0; padding-left: 1.1rem; display: flex; flex-direction: column; gap: 0.2rem; font-size: var(--paso--1); line-height: 1.45; }
.rn-bloque li { overflow-wrap: anywhere; }
.rn-bloque[data-tono="ya"] { padding: var(--e3); border: 1.5px solid var(--tx); border-radius: 0.9rem; }
.rn-prov-caja { padding: var(--e3); border: 1px dashed var(--tx-2); border-radius: 0.9rem; }
.rn-dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr)); gap: var(--e2) var(--e4); margin: 0; }
.rn-dl > div { display: flex; flex-direction: column; gap: 0.05rem; min-width: 0; }
.rn-dl dt { font-size: 0.75rem; font-weight: 700; color: var(--tx-2); }
.rn-dl dd { margin: 0; font-size: var(--paso--1); font-weight: 600; overflow-wrap: anywhere; }

.rn-opcion { border: 1px solid var(--ln); border-radius: 1rem; margin-bottom: var(--e3); background: var(--fondo); }
.rn-opcion[data-recomendada="true"] { border: 1.5px solid var(--tx); }
.rn-opcion > summary { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--e2) var(--e3); padding: var(--e3) var(--e4); cursor: pointer; min-height: 2.75rem; list-style: none; }
.rn-opcion > summary::-webkit-details-marker { display: none; }
.rn-opcion > summary::before { content: ""; flex: none; width: 0.55rem; height: 0.55rem; border-right: 2px solid var(--tx-2); border-bottom: 2px solid var(--tx-2); transform: rotate(-45deg); transition: transform 0.2s var(--salida); margin-right: 0.1rem; }
.rn-opcion[open] > summary::before { transform: rotate(45deg); }
.rn-op-nombre { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e2); flex: 1 1 12rem; min-width: 0; }
.rn-op-nombre strong { overflow-wrap: anywhere; }
.rn-op-resumen { font-size: var(--paso--1); color: var(--tx-2); font-variant-numeric: tabular-nums; }
.rn-op-resumen b { color: var(--tx); }
.rn-op-cuerpo { padding: var(--e4); border-top: 1px solid var(--ln); display: flex; flex-direction: column; gap: var(--e4); }
.rn-pasos { margin: 0; padding-left: 1.2rem; display: flex; flex-direction: column; gap: 0.25rem; font-size: var(--paso--1); line-height: 1.45; overflow-wrap: anywhere; }
.rn-nocomp { display: flex; align-items: flex-start; gap: var(--e2); font-weight: 700; }
.rn-nocomp > .icono { margin-top: 0.2em; }

.rn-crit { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.rn-crit > li { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(6.5rem, 8rem); gap: 0.05rem var(--e3); align-items: center; padding: 0.5rem 0; border-bottom: 1px solid var(--ln); }
.rn-crit > li:last-child { border-bottom: 0; }
.rn-crit > li[data-fuera="true"] { opacity: 0.7; }
.rn-crit-nombre { font-weight: 700; font-size: var(--paso--1); min-width: 0; }
.rn-crit-punto { display: inline-flex; align-items: center; justify-content: flex-end; gap: 0.5rem; font-variant-numeric: tabular-nums; }
.rn-crit-valor { grid-column: 1 / -1; line-height: 1.4; overflow-wrap: anywhere; }
.rn-barra { display: inline-block; width: 4.25rem; height: 0.5rem; border-radius: 99px; background: var(--ln); overflow: hidden; flex: none; }
.rn-barra > i { display: block; height: 100%; border-radius: 99px; background: var(--tx); }
.rn-campos ul { list-style: none; margin: var(--e2) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--e2); }
.rn-campos li { display: flex; flex-wrap: wrap; align-items: center; gap: 0.3rem var(--e3); }
.rn-campo-nombre { font-weight: 700; font-size: var(--paso--1); flex: 0 0 9.5rem; }
.rn-hist, .rn-decision { display: flex; flex-direction: column; gap: var(--e3); }
.rn-hist > h3, .rn-decision > h3 { margin-bottom: 0; }
.rn-lista-hist { list-style: none; margin: var(--e2) 0 0; padding: 0; display: flex; flex-direction: column; gap: 0.25rem; font-size: var(--paso--1); font-variant-numeric: tabular-nums; }
.rn-lista-hist > li { padding: 0.25rem 0; border-bottom: 1px solid var(--ln); overflow-wrap: anywhere; }

/* ---------- Ventanas (motivo) ---------- */
.rn-dialogo-pie { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--e2); padding: var(--e3) var(--e5) var(--e5); border-top: 1px solid var(--ln); }

/* ---------- El área de trabajo ancha: la matriz a todo el ancho y, al elegir una referencia, su detalle al lado ---------- */
@container principal (min-width: 1000px) {
  .rn-md { --rn-modo: doble; }
  .rn-md[data-abierta="true"] { grid-template-columns: minmax(0, 1fr) minmax(22rem, 26rem); align-items: start; }
  .rn-md[data-abierta="true"] > .rn-maestro { display: block; }
  .rn-md[data-abierta="true"] > .rn-detalle { position: sticky; top: var(--e4); max-height: calc(100dvh - 2rem); overflow: auto; overscroll-behavior: contain; padding: var(--e4); border: 1px solid var(--ln); border-radius: 1.1rem; }
}

/* ---------- El área angosta: una tarjeta por referencia (sin tabla) ---------- */
@container principal (max-width: 599px) {
  .rn-buscar { grid-template-columns: minmax(0, 1fr); }
  .rn-buscar > .boton { justify-self: start; }
  .rn-tabla-caja { max-height: none; overflow: visible; border: 0; border-radius: 0; }
  .rn-tabla { display: block; width: auto; min-width: 0; table-layout: auto; }
  .rn-tabla colgroup { display: none; }
  .rn-tabla thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .rn-tabla tbody { display: block; }
  .rn-tabla tbody tr { display: flex; flex-direction: column; gap: var(--e1); margin-bottom: var(--e3); padding: var(--e3) var(--e4); border: 1px solid var(--bd); border-radius: 1.1rem; background: var(--fondo); }
  .rn-tabla tbody tr[data-sel] { border-color: var(--tx); border-width: 2px; }
  .rn-tabla th, .rn-tabla td { display: block; padding: 0; border: 0; background: transparent !important; box-shadow: none !important; }
  .rn-celda-ref { position: static; min-width: 0; max-width: none; padding-bottom: var(--e2) !important; border-bottom: 1px solid var(--ln) !important; }
  .rn-ref .rn-nombre { white-space: normal; }
  .rn-tabla td { display: flex; align-items: flex-start; gap: var(--e3); padding: 0.4rem 0; border-bottom: 1px dashed var(--ln); min-width: 0; max-width: none; }
  .rn-tabla td::before { content: attr(data-etiqueta); flex: 0 0 7.25rem; color: var(--tx-2); font-size: var(--paso--1); font-weight: 700; overflow-wrap: anywhere; }
  .rn-tabla td:last-child { border-bottom: 0; }
  .rn-cc { flex: 1 1 0; min-width: 0; }
  .rn-celda[data-estado="falta"], .rn-celda[data-estado="sin_respuesta"], .rn-celda[data-estado="pausado"] { display: none; }
  .rn-celda[data-resaltada="true"][data-estado="falta"], .rn-celda[data-resaltada="true"][data-estado="sin_respuesta"] { display: flex; }
  .rn-sin-precio { display: block; }
  .rn-celda[data-recomendada="true"] .rn-cc, .rn-celda[data-elegida="true"] .rn-cc { padding-left: var(--e2); border-left: 3px solid var(--tx); }
  .rn-crit > li { grid-template-columns: minmax(0, 1fr) minmax(5.5rem, 7rem); }
  .rn-crit-peso { display: none; }
  .rn-campo-nombre { flex-basis: 100%; }
}

/* Con el detalle a pantalla completa (área de trabajo no tan ancha) se esconden los filtros y la búsqueda: el detalle ocupa el sitio */
@container principal (max-width: 999px) {
  .rn-matriz:has(.rn-md[data-abierta="true"]) > #rn-filtros, .rn-matriz:has(.rn-md[data-abierta="true"]) > .rn-buscar { display: none; }
}

@media (prefers-reduced-motion: no-preference) {
  .rn-det { animation: rn-entra 0.28s var(--salida); }
  @keyframes rn-entra { from { opacity: 0; transform: translateY(6px); } }
}
@media (prefers-reduced-motion: reduce) {
  .rn-filtro, .rn-kpi, .rn-opcion > summary::before { transition: none; }
}

/* Un enlace corto dentro de un dato (el código del embarque) también es un objetivo táctil: al menos 24 × 24 px */
.rn-dato dd > a { display: inline-flex; align-items: center; min-width: 1.5rem; min-height: 1.5rem; }
