/* hechos_organo.css — Hechos por órgano con precisión y competencia medida por mercado y territorio (PUB-1, 27-oct-2026;
 * partials/hechos_organo.html, hechos_organo_indice.html y mercado_territorio.html). Sobre el lenguaje de Cumplimiento
 * (cumplimiento.css) y de los «Hechos del proceso» (hechos.css): las mismas piezas, sin cajas tintadas ni colores de juicio.
 * La posición en el embudo es tipográfica: el hecho, en peso fuerte con un punto; el resto, en gris. Todo vive en .ho y .mt.
 */
.ho .hp-lista { margin-top: var(--sp-1); }
/* Más apretado que los hechos del proceso (tres hechos por órgano de contratación, a veces varios órganos por ficha) */
.ho .hp-hecho { padding: var(--sp-2) 0; }
.ho .hp-num { font-size: var(--fs-28); }
.ho .hp-meta { margin-top: var(--sp-1); }
.ho .hp-mas, .ho .hp-lista-plegable { display: inline-block; margin: var(--sp-1) var(--sp-4) 0 0; vertical-align: top; }
.ho .hp-mas[open], .ho .hp-lista-plegable[open] { display: block; }
.ho-vacio { margin: 0; padding: 7px 0; border-bottom: 1px solid var(--cu-filete); font-size: var(--fs-13); line-height: 1.45; color: var(--color-texto-2); }
.ho-vacio-n { margin-right: 6px; font-weight: var(--peso-fuerte); color: var(--color-texto); }
.ho-aviso { margin: var(--sp-1) 0 0; max-width: 88ch; font-size: var(--fs-13); line-height: 1.5; color: var(--color-texto-2); }
.ho-tabla { margin-top: 2px; }
.ho-tabla th, .ho-tabla td { padding-top: 4px; padding-bottom: 4px; }
.ho-pos { white-space: nowrap; color: var(--color-texto-2); }
.ho-pos-hecho { font-weight: var(--peso-fuerte); color: var(--color-texto-fuerte); }
.ho-pos-hecho::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%;
                        background: currentColor; vertical-align: 1px; }
.ho-pos-p95 { color: var(--color-texto); }
.ho .hp-lista-plegable > summary { color: var(--color-acento); }

/* El índice de Cumplimiento: la tabla de los tres hechos por año y las listas por orden alfabético */
.ho-tabla-indice { max-width: 44rem; }
.ho-tabla-indice th:not(:first-child), .ho-tabla-indice td:not(:first-child) { width: 30%; }
.ho-lista .ho-anios { font-size: var(--fs-13); color: var(--color-texto-3); font-variant-numeric: tabular-nums; }

/* Mercado y territorio */
.mt .cu-h3 { margin-top: var(--sp-6); }
.mt-registro { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 var(--sp-4); margin-top: var(--sp-1); font-size: var(--fs-13); }
.mt-registro .hp-chip { flex: 0 0 auto; }
.mt-nulo { margin: 0; flex: 1 1 28rem; }
.mt .cu-desplegable > summary { grid-template-columns: 7.5rem minmax(0, 1fr) 1.5rem; }
.mt .cu-desp-cuerpo { padding-left: 0; }
.mt-tabla tr.mt-espana td { font-weight: var(--peso-fuerte); border-bottom: 1px solid var(--cu-filete-fuerte); }
.mt-tabla tr.mt-espana td .sub { font-weight: var(--peso-normal); }
.mt-pie { margin-top: var(--sp-2); }
.gr .mt { margin-top: var(--sp-2); }

@media (min-width: 641px) {
    .mt-tabla td:first-child { min-width: 10rem; }
    .ho-tabla td:first-child { width: 4rem; }
}
@media (max-width: 640px) {
    .mt .cu-desplegable > summary { grid-template-columns: 6rem minmax(0, 1fr) 1.5rem; }
    .ho-tabla-indice th:not(:first-child), .ho-tabla-indice td:not(:first-child) { width: auto; }
    .ho-vacio { font-size: 14px; }
}

/* El bloque plegado de un órgano de contratación sin ningún año por encima del embudo (fichas con varios) */
.ho-plegado { margin-top: var(--sp-1); }
.ho.ho-una-linea { margin-top: var(--sp-2); padding-top: 0; }
.ho-plegado-t { font-weight: var(--peso-fuerte); color: var(--color-texto); }
.ho-plegado > summary { display: block; min-height: 32px; padding: 6px 0; font-size: var(--fs-13); line-height: 1.45; color: var(--color-texto-2); }
.ho-plegado > summary .icono { vertical-align: -2px; }
.ho-plegado > summary:hover { color: var(--color-acento); }
@media (max-width: 640px) { .ho-plegado > summary { min-height: 40px; } }

/* Dentro de la sección de un órgano de contratación (ficha de Cumplimiento), el título del bloque es un h3: a la escala
   de .cu-h3, no a la de una sección de la ficha */
.ho h3.ficha-seccion-titulo { font-family: var(--fuente-sans); font-size: var(--fs-16); font-weight: var(--peso-fuerte); line-height: 1.3; }
@media (max-width: 640px) {
    .ho .ficha-seccion-titulo .nota { display: none; }
    .ho .ficha-seccion-cabeza { flex-wrap: wrap; gap: 0 var(--sp-3); }
}
/* En el móvil, cada hecho en una columna: el nombre, su cifra con su unidad, la lectura y el registro (la cifra al lado del
   nombre pisaba su unidad) */
@media (max-width: 760px) {
    .ho .hp-hecho { grid-template-columns: minmax(0, 1fr); }
    .ho .hp-nombre { grid-column: 1; grid-row: 1; }
    .ho .hp-cifra { grid-column: 1; grid-row: 2; justify-content: flex-start; text-align: left; }
    .ho .hp-cuerpo { grid-column: 1; grid-row: 3; }
    .ho .hp-meta { grid-column: 1; grid-row: 4; }
}

/* E9: los tres avisos fijos, en una lista apretada bajo la tabla */
.ho-avisos { margin: var(--sp-2) 0 0; padding: 0 0 0 var(--sp-4); max-width: 88ch; font-size: var(--fs-13); line-height: 1.5; color: var(--color-texto-2); }
.ho-avisos li + li { margin-top: 2px; }
/* En la ficha, la tabla por ejercicio se queda en tabla también en el móvil (cuatro columnas de cifras: en tarjetas ocupaba tres
   veces más) */
.ho-tabla-e9 { max-width: 40rem; }
@media (max-width: 640px) { .ho-tabla-e9 th { font-size: 13px; line-height: 1.3; vertical-align: bottom; } .ho-tabla-e9 td { font-size: 14px; } }
.ho-e9-buscar { display: flex; flex-wrap: wrap; gap: var(--sp-2); align-items: flex-end; margin-top: var(--sp-2); }
