/* Plantilla de caso: folio, cifras con escala común, capas, estado, cronología y pasos. */

/* Las etiquetas de capa son de 12 px como mínimo (en sitio.css son de 11,8 px) */
.capa { font-size: .78rem; }
.capa-h { font: inherit; margin: 0 0 var(--e-3); }
.capa-h .capa { margin-bottom: 0; }
.capa-bloque { padding-top: var(--e-6); padding-bottom: var(--e-5); }

/* Cabecera del caso en campo rojo (identidad): el texto, las cifras y el folio se leen en blanco */
.caso-cabecera.campo-rojo { padding-top: 56px; padding-bottom: 48px; }
.caso-cabecera.campo-rojo .folio__num { color: #FFFFFF; }
.caso-cabecera.campo-rojo .folio__de { color: var(--identidad-texto-2); }
.caso-cabecera.campo-rojo .micro { background: rgb(255 255 255 / .28); }
.caso-cabecera.campo-rojo .micro > span { background: #FFFFFF; }
.caso-cabecera.campo-rojo .nota-escala, .caso-cabecera.campo-rojo .cabecera-cifras .fuente { color: var(--identidad-texto-2); }

/* Cabecera del caso */
.caso-cabecera__texto { min-width: 0; }
.folio { display: flex; align-items: baseline; gap: .6rem; margin: 0 0 var(--e-2); }
.folio__num { font: 600 clamp(4.5rem, 11vw, 7.5rem)/.85 var(--serif); letter-spacing: -.03em; font-variant-numeric: tabular-nums lining-nums; color: var(--tinta); }
.folio__de { font: 500 .95rem var(--sans); color: var(--tinta-2); }
.caso-cabecera h1 { margin-bottom: var(--e-2); }
.caso-escrito { font: 500 .9rem/1.4 var(--sans); color: var(--tinta-2); margin: 0 0 .25rem; max-width: none; }
.caso-escrito__titulo { color: var(--tinta); font-weight: 650; }
.caso-cabecera .entradilla { margin-top: var(--e-3); }
.en-breve { margin: var(--e-3) 0 0; padding: var(--e-3) 0 0 1.1em; border-top: 1px solid var(--linea); max-width: 66ch; }
.en-breve li { margin-bottom: .4rem; }

/* Cifras con escala común (micro barra bajo cada cifra) */
.cifra--compacta .cifra__frase { font-size: .9rem; }
.micro { display: block; height: 8px; background: var(--linea); border-radius: 2px; margin-top: .45rem; overflow: hidden; }
.micro > span { display: block; height: 100%; width: var(--p, 0%); background: var(--tinta); border-radius: 2px; }
.fila-cifras--3 { gap: var(--e-3); }

/* Dato del caso */
.dato-caso { display: grid; gap: var(--e-4); }
/* En escritorio: distancia con sus cifras a la izquierda y hemiciclo a la derecha; alturas parecidas, sin huecos */
.dato-caso__lateral { display: grid; gap: var(--e-4); align-content: start; min-width: 0; }
.dato-caso__lateral .cifras-caso { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 720px) {
  .dato-caso { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
}
/* Cifra compuesta ("80,1% y 41,8%"): una sola línea, tamaño que cabe */
.cifras-caso .cifra--compuesta .cifra__valor { font-size: clamp(1.5rem, 2.2vw, 2rem); white-space: nowrap; }
/* Índice: la capa visible queda marcada */
.caso-indice a[aria-current="true"] { background: var(--tinta); color: var(--papel); border-color: var(--tinta); }
.hueco-dato { border: 1.5px dashed var(--tinta-2); border-radius: var(--radio); padding: var(--e-4); color: var(--tinta-2); }
.hueco-dato p { margin: 0; }

/* Capas: texto revisado */
.lead { font: 400 1.2rem/1.45 var(--serif); max-width: var(--medida); margin: 0 0 var(--e-4); }
.hecho { margin-bottom: var(--e-5); padding-bottom: var(--e-4); border-bottom: 1px solid var(--linea); }
.hecho:last-child { border-bottom: 0; }
.hecho__cuerpo h3 { font: 650 1.1rem/1.3 var(--serif); margin: 0 0 .4rem; }
.hecho__cuerpo > p:last-of-type { margin-bottom: 0; }
.hecho time { font: 600 .86rem var(--sans); font-variant-numeric: tabular-nums; display: block; margin-bottom: .35rem; }
.marca-tiempo { display: inline-block; margin-top: .35rem; }
.contraste { display: grid; gap: var(--e-3); margin-top: var(--e-4); }
@media (min-width: 560px) { .contraste { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.contraste__col { border-left: 3px solid var(--linea-fuerte); padding: var(--e-2) var(--e-3); background: var(--papel-2); }
.contraste__col p { margin: 0; max-width: none; }
.contraste__rotulo { font: 700 .78rem var(--sans); letter-spacing: .06em; text-transform: uppercase; color: var(--tinta-2); margin-bottom: .3rem !important; }
.instancia { margin: 0; padding: var(--e-2) 0 var(--e-2) var(--e-4); border-left: 3px solid var(--tinta-2); font: 400 1.08rem/1.5 var(--serif); }
.instancia p { margin: 0 0 .4rem; max-width: none; }
.instancia__pie { font: 500 .82rem var(--sans); color: var(--tinta-2); }
.pedimos { padding-left: 1.3em; }
.pedimos li { margin-bottom: .5rem; }

/* Estado de las luchas */
.lucha { margin-bottom: var(--e-5); }
.lucha h3 { font: 650 1.1rem/1.3 var(--serif); margin: .5rem 0 .3rem; }
.lucha p { max-width: none; }

/* Cronología del caso: separación bajo el título */
#cronologia { margin-top: var(--e-3); }

/* Avisos */
.aviso { margin-bottom: var(--e-4); }
.aviso--tramite { border-left-color: var(--estado-tramite); }
.aviso--preparacion { border-left-color: var(--tinta); }
.aviso p { max-width: none; }

/* Pasos anterior / siguiente con el folio grande */
.caso-pasos { display: grid; gap: var(--e-3); border-top: 1px solid var(--linea); padding-top: var(--e-5); }
@media (min-width: 720px) { .caso-pasos { grid-template-columns: 1fr 1fr; } }
.caso-paso { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: var(--e-3); align-items: center; padding: var(--e-3) var(--e-4); border: 1px solid var(--linea); border-radius: var(--radio); background: var(--superficie); color: var(--tinta); text-decoration: none; min-height: 44px; }
.caso-paso:hover { border-color: var(--tinta); color: var(--tinta); }
.caso-paso__flecha { grid-column: 1 / -1; font: 650 .82rem var(--sans); color: var(--tinta-2); margin-bottom: .2rem; }
.caso-paso__folio { font: 600 2.6rem/1 var(--serif); font-variant-numeric: tabular-nums; }
.caso-paso__titulo { font: 600 1rem/1.3 var(--serif); }
.caso-paso--vacio { display: none; }
@media (min-width: 720px) { .caso-paso--vacio { display: block; border: 0; } }

/* En móvil, las filas del acta apilan margen y texto en una sola columna que puede encogerse (sin desbordes) */
@media (max-width: 1099px) {
  .acta { grid-template-columns: minmax(0, 1fr); }
}
.acta > * { min-width: 0; }
.acta__margen .documentos { min-width: 0; }
.acta__margen .oficio { white-space: normal; overflow-wrap: anywhere; }

/* Índice pegajoso de capas */
.caso-indice { position: sticky; top: var(--alto-cabecera); z-index: 20; background: color-mix(in srgb, var(--papel) 94%, transparent); backdrop-filter: saturate(1.2) blur(6px); border-bottom: 1px solid var(--linea); }
.caso-indice ul { list-style: none; margin: 0; padding: var(--e-2) 0; max-width: none; display: flex; gap: var(--e-2); }
.caso-indice a { display: inline-flex; align-items: center; min-height: 36px; white-space: nowrap; font: 600 .82rem var(--sans); color: var(--tinta); text-decoration: none; border: 1px solid var(--linea-fuerte); border-radius: 999px; padding: .3rem .8rem; }
.caso-indice a:hover { border-color: var(--tinta); }
[id^="t-"] { scroll-margin-top: calc(var(--alto-cabecera) + 72px); }

/* Primera pantalla: aire superior de 56 px */
.caso-cabecera { padding-top: 56px; }

/* Textos y notas */
.doc-nombre { display: block; font: 400 .8rem/1.4 var(--sans); color: var(--tinta-2); max-width: none; }
.nota-escala { font-size: .8rem; color: var(--tinta-2); margin: var(--e-2) 0 0; max-width: none; }
.contexto { padding: 0; }
.contexto > summary { cursor: pointer; display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .6rem; min-height: 44px; font: 650 1.15rem var(--serif); list-style: none; }
.contexto > summary::-webkit-details-marker { display: none; }
.contexto > summary::before { content: "▸"; font: 400 1rem var(--sans); color: var(--tinta-2); }
.contexto[open] > summary::before { content: "▾"; }
.contexto__pista { font: 600 .85rem var(--sans); color: var(--tinta); text-decoration: underline; text-decoration-color: var(--linea-fuerte); text-underline-offset: .2em; }
.contexto__pista::before { content: "Mostrar el contexto"; }
.contexto[open] .contexto__pista::before { content: "Ocultar el contexto"; }
.contexto__texto { max-width: var(--medida); padding-top: var(--e-2); }
.nota-margen { font: 500 .82rem/1.45 var(--sans); color: var(--tinta-2); margin: 0; max-width: none; }

/* Plegado progresivo de las capas: en móvil se pliega; en escritorio queda todo abierto */
.capa__mas { display: inline-flex; align-items: center; min-height: 44px; margin: var(--e-3) 0 0; font: 650 .92rem var(--sans); color: var(--tinta); background: transparent; border: 1.5px solid var(--tinta); border-radius: var(--radio); padding: .5rem .9rem; cursor: pointer; }
.capa__mas:hover { background: var(--tinta); color: var(--papel); }
.capa__resto { margin-top: var(--e-4); }
.capa__resto[hidden] { display: none; }

/* Columna de lectura: en escritorio, todo texto de caso empieza donde empieza el texto del acta */
@media (min-width: 1100px) {
  .capa__mas { display: none; }
  .capa__resto[hidden] { display: block; }
  /* Cada sección es un acta: el margen de fuentes a la izquierda y el texto en la columna de lectura */
  .caso .seccion > .contenedor > .acta__margen { min-height: 1px; }
}
@media (max-width: 1099px) {
  .capa-bloque { padding-top: var(--e-5); padding-bottom: var(--e-4); }
}

/* El dato del caso: cifras de contenido en rejilla; valores largos ("80,1% y 41,8%") sin partirse en tres líneas */
.cifras-caso .cifra__valor { font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.6rem); text-wrap: balance; }
@media (max-width: 899px) { .cifras-caso { grid-template-columns: minmax(0, 1fr); } }
@media (min-width: 900px) and (max-width: 1099px) { .cifras-caso { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
