/* Rastro · demo. Estilo Mate Hongos «Imprenta». Sin librerías ni recursos externos. */

/* ===== Tokens ===== */
:root{
  --papel:#ece7de; --papel-2:#e3ddd1;
  --tinta:#141615; --tinta-2:#4a4a46; --tinta-3:#6b6a64;
  --filete:#b9b3a6; --rojo:#c8230c;
  --serif:"Piazzolla",Georgia,"Times New Roman",serif;
  --mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  /* celular */
  --t-fuente:12px; --t-meta:14px; --t-cuerpo:17px; --t-sub:21px; --t-tit:28px; --t-h1:36px; --t-kpi:36px; --t-kpi-1:48px;
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s5:40px; --s6:48px; --s8:64px;
  --margen:16px;
}
@media (min-width:760px){
  :root{ --t-fuente:13px; --t-meta:15px; --t-cuerpo:18px; --t-sub:23px; --t-tit:34px; --t-h1:48px; --t-kpi:44px; --t-kpi-1:60px; --margen:32px; }
}
/* proyector (1920×1080): la escala de spec.md */
@media (min-width:1600px){
  .hoja{max-width:1760px}
  :root{ --t-fuente:15px; --t-meta:18px; --t-cuerpo:22px; --t-sub:28px; --t-tit:40px; --t-h1:56px; --t-kpi:64px; --t-kpi-1:96px; --margen:40px; }
}

/* ===== Fuentes locales ===== */
@font-face{font-family:"Piazzolla";src:url("fonts/Piazzolla-VF.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:block}
@font-face{font-family:"Piazzolla";src:url("fonts/Piazzolla-Italic-VF.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:block}
@font-face{font-family:"JetBrains Mono";src:url("fonts/JetBrainsMono-VF.woff2") format("woff2");font-weight:100 800;font-style:normal;font-display:block}

/* ===== Base ===== */
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--papel);scroll-behavior:smooth;scroll-padding-top:64px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--papel);color:var(--tinta);font:400 var(--t-cuerpo)/1.4 var(--serif);font-optical-sizing:auto;font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--rojo);outline-offset:3px}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:500}
.sc{font-variant-caps:all-small-caps;letter-spacing:.12em;font-size:var(--t-meta);font-weight:600}
.rojo{color:var(--rojo)}
.meta{font-size:var(--t-meta);color:var(--tinta-3);line-height:1.3}
.visualmente-oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hoja{max-width:1480px;margin:0 auto;padding:0 var(--margen)}
.filete-doble{border-top:3px solid var(--tinta);position:relative;height:7px}
.filete-doble::after{content:"";position:absolute;left:0;right:0;top:3px;border-top:1px solid var(--tinta)}
p + p{margin-top:.6em}

/* ===== Navegación ===== */
.nav{position:sticky;top:0;z-index:5;background:var(--papel);border-bottom:1px solid var(--tinta)}
.nav .hoja{display:flex;align-items:center;gap:var(--s3);min-height:52px;overflow-x:auto;scrollbar-width:none}
.nav .hoja::-webkit-scrollbar{display:none}
.nav .marca{font-weight:700;letter-spacing:.12em;font-variant-caps:all-small-caps;color:var(--rojo);font-size:var(--t-cuerpo)}
.nav a{white-space:nowrap;text-decoration:none;font-size:var(--t-meta);color:var(--tinta-2)}
.nav a b{font-family:var(--mono);font-weight:600;color:var(--tinta);margin-right:6px}
.nav a:hover{color:var(--tinta);text-decoration:underline}
.nav .contador{margin-left:auto;white-space:nowrap;font-size:var(--t-meta);color:var(--tinta-2)}
.nav .contador b{font-family:var(--mono);color:var(--tinta)}

/* ===== Cabezal ===== */
.cabezal{padding:var(--s5) 0 var(--s4)}
.cabezal .kicker{color:var(--rojo)}
.cabezal h1,.cabezal .h1{font-size:var(--t-h1);font-weight:700;line-height:1.02;letter-spacing:-.025em;margin:var(--s1) 0 var(--s2);max-width:18ch}
.cabezal .lead{font-size:var(--t-sub);line-height:1.3;color:var(--tinta-2);max-width:40ch}
.aviso{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3);align-items:baseline;border-top:1px solid var(--tinta);border-bottom:1px solid var(--tinta);padding:var(--s1) 0;margin-top:var(--s4)}
.aviso .sc{color:var(--rojo)}
.aviso span:not(.sc){color:var(--tinta-2);font-size:var(--t-meta)}
.principio{display:grid;grid-template-columns:repeat(4,1fr);border-top:3px solid var(--tinta);margin-top:var(--s4)}
.principio > div{padding:var(--s2) var(--s2) var(--s2) 0;border-right:1px solid var(--filete)}
.principio > div + div{padding-left:var(--s2)}
.principio > div:last-child{border-right:0}
.principio .n{font-family:var(--mono);font-weight:600;font-size:var(--t-meta)}
.principio .t{font-weight:700;font-size:var(--t-sub);line-height:1.1;margin:4px 0}
.principio p{font-size:var(--t-meta);color:var(--tinta-2);line-height:1.35}
.principio .rojo-t{color:var(--rojo)}
@media (max-width:759px){
  .principio{grid-template-columns:1fr 1fr}
  .principio > div{border-right:0;border-bottom:1px solid var(--filete);padding-left:0 !important}
  .principio > div:nth-child(odd){padding-right:var(--s2);border-right:1px solid var(--filete)}
  .principio > div:nth-child(even){padding-left:var(--s2) !important}
}
.lema{margin-top:var(--s3);font-size:var(--t-sub);line-height:1.3;max-width:52ch}
.lema b{color:var(--rojo);font-weight:700}

/* ===== Etapas ===== */
.etapa{padding:var(--s6) 0 var(--s4)}
.etapa-cab{display:grid;grid-template-columns:auto 1fr;column-gap:var(--s3);align-items:start;padding:var(--s2) 0 var(--s3)}
.etapa-cab .num{font:600 var(--t-kpi)/1 var(--mono);letter-spacing:-.02em}
.etapa-cab .kicker{color:var(--rojo)}
.etapa-cab h2{font-size:var(--t-tit);font-weight:700;line-height:1.05;letter-spacing:-.015em;margin:2px 0 var(--s1)}
.etapa-cab .bajada{color:var(--tinta-2);max-width:62ch}
.nota-honesta{font-size:var(--t-meta);color:var(--tinta-3);max-width:80ch;margin-top:var(--s1)}

/* ===== Tablas ===== */
table{width:100%;border-collapse:collapse}
th{text-align:left;font:600 var(--t-meta) var(--serif);font-variant-caps:all-small-caps;letter-spacing:.1em;color:var(--tinta-2);padding:4px var(--s2) 6px 0;border-bottom:1px solid var(--tinta);vertical-align:bottom}
td{padding:var(--s1) var(--s2) var(--s1) 0;border-bottom:1px solid var(--filete);vertical-align:top;line-height:1.25}
th:last-child,td:last-child{padding-right:0}
td .f{display:block;font:500 var(--t-fuente)/1.3 var(--mono);color:var(--tinta-3);margin-top:3px;letter-spacing:-.01em}
td .f.falta{color:var(--rojo)}
td.mono{font-size:.92em;white-space:nowrap}
.lector-tabla td.emp{white-space:nowrap}
td .sub{display:block;font-size:var(--t-meta);color:var(--tinta-2);margin-top:2px}
.res-si{color:var(--rojo);font-weight:600}
.res-no{color:var(--tinta-3)}

/* Lector: un tbody por procedimiento */
.lector-tabla tbody{border-top:2px solid var(--tinta)}
.lector-tabla tbody:first-of-type{border-top:0}
.lector-tabla .proc b{font-family:var(--mono);font-weight:600;font-size:.88em;display:block}
.lector-tabla .proc .tipo{display:block;font-variant-caps:all-small-caps;letter-spacing:.08em;font-size:var(--t-meta);color:var(--tinta-2);margin-top:2px}
.lector-tabla .proc .obj{display:block;margin-top:2px}
.lector-tabla .proc .docs{display:block;font:500 var(--t-fuente)/1.35 var(--mono);color:var(--tinta-3);margin-top:6px}
.lector-tabla .proc .docs .falta{color:var(--rojo)}
.lector-tabla td.monto{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}
.lector-tabla .gana{font-weight:700}
.lector-tabla .no-aplica{color:var(--tinta-3);font-style:italic}
.lector-tabla .falta-t{color:var(--rojo)}
@media (max-width:899px){
  .lector-tabla thead{display:none}
  .lector-tabla,.lector-tabla tbody,.lector-tabla tr,.lector-tabla td{display:block;width:100%}
  .lector-tabla tbody{border-top:2px solid var(--tinta);padding:var(--s1) 0 var(--s2)}
  .lector-tabla tbody:first-of-type{border-top:2px solid var(--tinta)}
  .lector-tabla tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--s2);border-bottom:1px solid var(--filete);padding:var(--s1) 0}
  .lector-tabla td{border:0;padding:4px 0;min-width:0;white-space:normal !important}
  .lector-tabla td .f{overflow-wrap:anywhere}
  .lector-tabla td[data-l]::before{content:attr(data-l);display:block;font:600 var(--t-fuente)/1.2 var(--serif);font-variant-caps:all-small-caps;letter-spacing:.1em;color:var(--tinta-3);margin-bottom:2px}
  .lector-tabla td.proc{grid-column:1 / -1}
  .lector-tabla td.vacia{display:none}
}

/* Lector plegado en celular */
.btn-lector{display:none;margin-top:var(--s2)}
@media (max-width:899px){
  .lector-envoltura:not(.abierta) tbody.extra{display:none}
  .btn-lector{display:inline-block}
}
@media (max-width:759px){
  td,th{padding-right:8px}
  th{letter-spacing:.06em}
  td.mono{white-space:normal}
  td .f{overflow-wrap:anywhere}
}

/* ===== Cruzador ===== */
.ocp{border-left:4px solid var(--tinta);padding:var(--s1) 0 var(--s1) var(--s2);color:var(--tinta-2);max-width:80ch;margin-bottom:var(--s3)}
.umbrales{font-size:var(--t-meta);color:var(--tinta-2);margin-top:var(--s1)}
.regla{border-top:3px solid var(--tinta);padding:var(--s2) 0 var(--s4)}
.regla-cab{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s1) var(--s2)}
.regla-cab .cod{font:600 var(--t-sub)/1 var(--mono)}
.regla-cab h3{font-size:var(--t-sub);font-weight:700;line-height:1.1}
.regla-cab .estado{margin-left:auto}
.estado-si{color:var(--rojo)}
.estado-no{color:var(--tinta-3)}
.regla .def{color:var(--tinta-2);margin:var(--s1) 0 var(--s2);max-width:75ch}
.regla-cuerpo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--s5)}
.regla-cuerpo > div{min-width:0}
.regla-cuerpo h4{font-weight:600;font-variant-caps:all-small-caps;letter-spacing:.12em;font-size:var(--t-meta);padding-bottom:4px}
.regla-cuerpo .texto-rev{font-size:var(--t-meta);color:var(--tinta-2);margin-bottom:var(--s1)}
.regla-cuerpo .ev-t{font-size:var(--t-meta);color:var(--tinta-2);margin:var(--s2) 0 4px}
.regla-cuerpo .ev-res{margin-bottom:var(--s1);font-weight:600}
.regla-cuerpo .sin{color:var(--tinta-3);font-style:italic}
.tabla-scroll{overflow-x:auto}
@media (max-width:899px){
  .regla-cuerpo{grid-template-columns:1fr;row-gap:var(--s3)}
  .regla-cab .estado{margin-left:0;width:100%}
}

/* ===== Puerta humana ===== */
.puerta-barra{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);align-items:center;border-top:3px solid var(--tinta);border-bottom:1px solid var(--tinta);padding:var(--s2) 0;margin-bottom:var(--s1)}
.cuenta{display:flex;gap:var(--s4)}
.cuenta div{font-size:var(--t-meta);color:var(--tinta-2)}
.cuenta b{display:block;font:600 var(--t-kpi)/1 var(--mono);color:var(--tinta);letter-spacing:-.02em}
.cuenta .ap b{color:var(--tinta)}
.puerta-barra .acciones{margin-left:auto;display:flex;flex-wrap:wrap;gap:var(--s1)}
.btn{font:700 var(--t-meta)/1 var(--serif);background:var(--tinta);color:var(--papel);border:1px solid var(--tinta);border-radius:2px;padding:12px var(--s2);min-height:44px;cursor:pointer}
.btn:hover{background:#2b2e2c}
.btn:active{transform:translateY(1px)}
.btn.sec{background:transparent;color:var(--tinta)}
.btn.sec:hover{background:var(--papel-2)}
.bandera{display:grid;grid-template-columns:72px minmax(0,1fr) auto;column-gap:var(--s3);row-gap:var(--s1);padding:var(--s2) 0;border-bottom:1px solid var(--filete);align-items:start}
.bandera .cod{font:600 var(--t-cuerpo)/1 var(--mono);border:1px solid var(--tinta);padding:6px 8px;justify-self:start}
.bandera h3{font-size:var(--t-cuerpo);font-weight:700;line-height:1.2}
.bandera .res{font-size:var(--t-meta);color:var(--tinta-2);margin-top:4px}
.bandera .ver{font-size:var(--t-meta);color:var(--tinta-3)}
.bandera .lado{display:flex;flex-direction:column;gap:var(--s1);align-items:stretch;min-width:300px}
.segmento{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--tinta)}
.segmento button{font:600 var(--t-meta) var(--serif);padding:var(--s1) 12px;background:var(--papel);color:var(--tinta);border:0;border-left:1px solid var(--tinta);border-radius:0;cursor:pointer;min-height:44px}
.segmento button:first-child{border-left:0}
.segmento button:hover{background:var(--papel-2)}
.segmento button[aria-pressed="true"]{background:var(--tinta);color:var(--papel)}
.segmento button.descartar[aria-pressed="true"]{background:var(--papel);color:var(--rojo);outline:2px solid var(--rojo);outline-offset:-3px}
.motivo{font:400 var(--t-meta) var(--serif);color:var(--tinta);background:transparent;border:0;border-bottom:1px solid var(--tinta-3);padding:6px 0;width:100%}
.motivo::placeholder{color:var(--tinta-3)}
.bandera.aprobada .cod{background:var(--tinta);color:var(--papel)}
.bandera.descartada h3{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:var(--rojo)}
.bandera.descartada .cod{color:var(--tinta-3);border-style:dashed;border-color:var(--tinta-3)}
.bandera .dec{font-variant-caps:all-small-caps;letter-spacing:.12em;font-weight:700;font-size:var(--t-meta)}
.bandera.descartada .dec{color:var(--rojo)}
.bandera.pendiente .dec{color:var(--tinta-3)}
@media (max-width:899px){
  .bandera{grid-template-columns:auto minmax(0,1fr)}
  .bandera .lado{grid-column:1 / -1;min-width:0}
}
.registro{margin-top:var(--s3)}
.registro h3{font-weight:600;font-variant-caps:all-small-caps;letter-spacing:.12em;font-size:var(--t-meta);border-bottom:1px solid var(--tinta);padding-bottom:4px}
.registro ol{list-style:none}
.registro li{display:grid;grid-template-columns:auto 1fr;column-gap:var(--s2);font-size:var(--t-meta);padding:6px 0;border-bottom:1px solid var(--filete);color:var(--tinta-2)}
.registro li .mono{color:var(--tinta-3);font-size:var(--t-fuente);padding-top:2px}
.registro .vacio{font-size:var(--t-meta);color:var(--tinta-3);font-style:italic;padding:6px 0}

/* ===== Narrador ===== */
.narrador-vacio{border-top:3px solid var(--tinta);padding:var(--s3) 0;color:var(--tinta-2);max-width:60ch}
.narrador-vacio b{color:var(--tinta)}
.narrador-grilla{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);column-gap:var(--s6);row-gap:var(--s5)}
@media (max-width:1099px){.narrador-grilla{grid-template-columns:1fr}}
.nw{white-space:nowrap}
@media (min-width:1100px){.ficha-col{position:sticky;top:72px;align-self:start}}
.bloque-t{font-weight:600;font-variant-caps:all-small-caps;letter-spacing:.12em;font-size:var(--t-meta);color:var(--tinta-2);margin-bottom:var(--s1)}

/* Ficha visual */
.ficha{border-top:6px solid var(--tinta);border-bottom:3px solid var(--tinta);padding:var(--s2) 0 var(--s2)}
.ficha .kick{color:var(--rojo)}
.ficha h3{font-size:var(--t-tit);font-weight:700;line-height:1.05;letter-spacing:-.015em;margin:4px 0 var(--s2)}
.ficha .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--s3);row-gap:var(--s2);margin-bottom:var(--s2)}
.ficha .kpi{border-top:1px solid var(--tinta);padding-top:var(--s1)}
.ficha .kpi:first-child{border-top:4px solid var(--tinta);padding-top:5px}
.ficha .kpi .v{font-size:var(--t-sub);font-weight:600;line-height:1.05;margin-top:4px;letter-spacing:-.01em}
.ficha .kpi:first-child .v{font-size:var(--t-kpi);font-weight:700;letter-spacing:-.03em}
.ficha .kpi .s{font-size:var(--t-fuente);color:var(--tinta-3);margin-top:4px;line-height:1.25}
@media (max-width:759px){.ficha .kpis{grid-template-columns:1fr 1fr}}
.ficha ul{list-style:none;border-top:1px solid var(--tinta)}
.ficha li{display:grid;grid-template-columns:44px 1fr;column-gap:var(--s2);padding:var(--s1) 0;border-bottom:1px solid var(--filete);font-size:var(--t-meta);line-height:1.3}
.ficha li .c{font-family:var(--mono);font-weight:600}
.rotacion{margin-top:var(--s2)}
.rotacion .rot{display:flex;flex-wrap:wrap;gap:var(--s1);margin-top:4px}
.rotacion .paso{border:1px solid var(--tinta);padding:6px 10px;min-width:96px}
.rotacion .paso .g{font:700 var(--t-sub)/1 var(--mono)}
.rotacion .paso .d{display:block;font:500 var(--t-fuente)/1.3 var(--mono);color:var(--tinta-3);margin-top:4px}
.ficha .pie{font-size:var(--t-fuente);color:var(--tinta-3);margin-top:var(--s2);font-family:var(--mono)}

/* Entrada */
.entrada .seccion{color:var(--rojo)}
.entrada h3{font-size:var(--t-tit);font-weight:700;line-height:1.08;letter-spacing:-.015em;margin:4px 0 var(--s2)}
.entrada .baj{font-size:var(--t-sub);line-height:1.3;color:var(--tinta-2);padding-bottom:var(--s2);border-bottom:1px solid var(--filete);margin-bottom:var(--s2)}
.entrada .firma{font-size:var(--t-meta);color:var(--tinta-3);margin-bottom:var(--s2)}
.entrada p.par{line-height:1.5;max-width:66ch}
.entrada .metodo{margin-top:var(--s3);border-top:1px solid var(--tinta);padding-top:var(--s1);font-size:var(--t-meta);color:var(--tinta-2);line-height:1.45}
.entrada .notas{margin-top:var(--s1);font-size:var(--t-meta);color:var(--tinta-2)}
.entrada .notas li{margin-left:1.1em;padding:2px 0}

/* Preguntas */
.preguntas h4{font-size:var(--t-cuerpo);font-weight:700;padding:var(--s2) 0 4px;border-bottom:1px solid var(--tinta)}
.preguntas ol{margin:0 0 0 1.4em}
.preguntas li{padding:6px 0;border-bottom:1px solid var(--filete);line-height:1.35}
.preguntas li::marker{font-family:var(--mono);font-size:.85em;color:var(--tinta-3)}
.preguntas .dest{font-size:var(--t-meta);color:var(--tinta-2);margin-top:var(--s1);font-weight:600}

/* ===== Grafo ===== */
.grafo-barra{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);margin-bottom:var(--s2)}
.grafo-barra .segmento{grid-template-columns:repeat(3,auto)}
.grafo-ley{font-size:var(--t-meta);color:var(--tinta-2);display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3)}
.grafo-ley i{display:inline-block;width:28px;height:0;vertical-align:middle;margin-right:6px;border-top:1px solid var(--tinta-3)}
.grafo-ley i.gana{border-top:3px solid var(--tinta)}
.grafo-ley i.marca{border-top:3px solid var(--rojo)}
.grafo-caja{overflow-x:auto;border-top:3px solid var(--tinta);border-bottom:1px solid var(--tinta)}
.grafo-caja svg{display:block;width:100%;min-width:720px;height:auto}
.grafo-nota{font-size:var(--t-meta);color:var(--tinta-3);margin-top:var(--s1)}

/* ===== Pie ===== */
.pie-pagina{border-top:3px solid var(--tinta);margin-top:var(--s6);padding:var(--s3) 0 var(--s6);font-size:var(--t-meta);color:var(--tinta-2)}
.pie-pagina p{max-width:80ch}

/* ===== Impresión / captura ===== */
@media print{.nav{position:static}.puerta-barra .acciones{display:none}}

/* ===================================================================
   PORTADA · para cualquier persona (v3)
   Más aire, cuerpo 18px en celular, controles de 52px.
   =================================================================== */
.nav .marca{text-decoration:none}
.nav a.nav-periodista{color:var(--tinta);font-weight:700;text-decoration:underline}
.portada{padding:var(--s5) 0 var(--s6);font-size:18px;line-height:1.5}
@media (min-width:760px){.portada{font-size:20px}}
@media (min-width:1600px){.portada{font-size:24px}}
.portada .kicker{color:var(--rojo)}
.portada h1{font-size:var(--t-h1);font-weight:700;line-height:1.05;letter-spacing:-.025em;margin:var(--s2) 0 var(--s3);max-width:22ch;text-wrap:balance}
.p-lead{font-size:1.12em;line-height:1.45;color:var(--tinta-2);max-width:46ch}
.p-aviso{margin-top:var(--s4);border-top:1px solid var(--tinta);border-bottom:1px solid var(--tinta);padding:12px 0;color:var(--tinta-2);font-size:.9em}
.p-aviso .sc{color:var(--rojo);margin-right:var(--s1);font-size:1em}

/* Filtros */
.filtros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--s3);row-gap:var(--s3);margin-top:var(--s5);border-top:3px solid var(--tinta);padding-top:var(--s3)}
.filtro{min-width:0}
.filtro label{display:block;font-weight:700;font-size:.95em;margin-bottom:var(--s1)}
.filtro .paso{font:600 .8em/1 var(--mono);color:var(--tinta-3);margin-right:4px}
.sel{position:relative}
.sel::after{content:"";position:absolute;right:18px;top:50%;width:9px;height:9px;margin-top:-7px;border-right:2px solid var(--tinta);border-bottom:2px solid var(--tinta);transform:rotate(45deg);pointer-events:none}
.sel select{-webkit-appearance:none;appearance:none;width:100%;min-height:56px;padding:12px 48px 12px 14px;font:600 1em/1.25 var(--serif);color:var(--tinta);background:var(--papel);border:1px solid var(--tinta);border-radius:0;cursor:pointer;text-overflow:ellipsis}
.sel select:hover{background:var(--papel-2)}
.sel select:focus-visible{outline:3px solid var(--rojo);outline-offset:2px}
.filtro-nota{font-size:.8em;color:var(--tinta-3);margin-top:6px}
.filtros-nota{font-size:.8em;color:var(--tinta-3);margin-top:var(--s2)}
@media (max-width:1099px){.filtros{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.filtros{grid-template-columns:1fr;row-gap:var(--s2)}}

/* Resumen */
.resultados-cab{margin-top:var(--s6);border-top:3px solid var(--tinta);padding-top:var(--s2)}
.resultados-cab h2{font-size:var(--t-tit);font-weight:700;line-height:1.1;letter-spacing:-.015em}
.resumen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--s3);margin-top:var(--s3)}
.resumen[hidden]{display:none}
.resumen .kpi{border-top:1px solid var(--tinta);padding-top:var(--s1)}
.resumen .kpi .v{font:600 var(--t-kpi)/1.05 var(--mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.resumen .kpi .k{font-size:.9em;color:var(--tinta-2);margin-top:4px}
.resumen .kpi-rojo .v{color:var(--rojo)}
@media (max-width:599px){
  .resumen{grid-template-columns:1fr 1fr;row-gap:var(--s2)}
  .resumen .kpi:nth-child(2){grid-column:1 / -1;order:3}
  .resumen .kpi .v{font-size:30px}
}
.indicio{margin-top:var(--s3);border-left:4px solid var(--rojo);padding:4px 0 4px var(--s2);color:var(--tinta-2);max-width:60ch}

/* Lista de contratos: filas separadas por filetes */
#resultados{margin-top:var(--s3)}
.lista{border-top:1px solid var(--tinta)}
.contrato{border-bottom:1px solid var(--filete)}
.contrato > summary{list-style:none;cursor:pointer;padding:var(--s3) 0;display:block}
.contrato > summary::-webkit-details-marker{display:none}
.contrato > summary:hover .c-obra{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.contrato > summary:focus-visible{outline:3px solid var(--rojo);outline-offset:2px}
.c-cab{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--s1) var(--s3)}
.c-obra{font-size:1.2em;font-weight:700;line-height:1.2;max-width:40ch}
.c-monto{font:600 1.05em/1.2 var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.c-datos{margin-top:6px;color:var(--tinta-2);max-width:62ch}
.c-datos b{color:var(--tinta);font-weight:600}
.c-pie{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2);margin-top:var(--s2)}
.tags{list-style:none;display:flex;flex-wrap:wrap;gap:var(--s1)}
.tag{font-size:.85em;font-weight:600;line-height:1.2;border:1px solid var(--rojo);color:var(--rojo);padding:6px 10px}
.tag.tag-sin{border-color:var(--filete);color:var(--tinta-3);font-weight:500}
.c-abrir{display:inline-flex;align-items:center;min-height:44px;font-size:.9em;font-weight:600;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.c-abrir::before{content:"Ver por qué"}
.contrato:not(.con-senales) .c-abrir::before{content:"Ver detalle"}
.contrato[open] .c-abrir::before{content:"Cerrar"}
.c-cuerpo{padding:0 0 var(--s4);max-width:72ch}
.c-t{font-size:1em;font-weight:700;border-bottom:1px solid var(--tinta);padding-bottom:6px}
.c-senales{list-style:none}
.c-senales li{padding:var(--s2) 0;border-bottom:1px solid var(--filete)}
.c-senales b{display:block;color:var(--rojo);font-weight:700}
.c-senales p{margin-top:4px;line-height:1.45}
.c-senales .f,.c-ficha dd.mono{font:500 .72em/1.4 var(--mono);color:var(--tinta-3);overflow-wrap:anywhere}
.c-senales .f{display:block;margin-top:6px}
.c-nada{color:var(--tinta-2);border-top:1px solid var(--tinta);padding-top:var(--s2)}
.c-ficha{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--s3);margin-top:var(--s3);font-size:.85em}
.c-ficha dt{font-variant-caps:all-small-caps;letter-spacing:.1em;font-weight:600;color:var(--tinta-3);padding:6px 0;border-top:1px solid var(--filete)}
.c-ficha dd{padding:6px 0;border-top:1px solid var(--filete);color:var(--tinta-2);min-width:0;overflow-wrap:anywhere}
.c-ficha dd.mono{font-size:.85em;padding-top:9px}
@media (max-width:599px){
  .c-ficha{grid-template-columns:1fr}
  .c-ficha dt{padding-bottom:0}
  .c-ficha dd{border-top:0;padding-top:2px}
  .c-ficha dd.mono{padding-top:2px}
}
.vacio{border-top:1px solid var(--tinta);border-bottom:1px solid var(--filete);padding:var(--s4) 0;color:var(--tinta-2)}
.vacio .vacio-t{font-size:1.2em;font-weight:700;color:var(--tinta)}

/* Glosario */
.glosario{margin-top:var(--s8);border-top:3px solid var(--tinta);padding-top:var(--s2)}
.glosario h2{font-size:var(--t-tit);font-weight:700;line-height:1.1;letter-spacing:-.015em;margin-bottom:var(--s2)}
.glosario dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);column-gap:var(--s4);max-width:1100px}
.glosario dt{font-weight:700;padding:var(--s2) 0;border-top:1px solid var(--filete)}
.glosario dd{padding:var(--s2) 0;border-top:1px solid var(--filete);color:var(--tinta-2);max-width:62ch}
@media (max-width:759px){
  .glosario dl{grid-template-columns:1fr}
  .glosario dt{padding-bottom:0}
  .glosario dd{border-top:0;padding-top:4px}
}

/* Acceso al modo periodista */
.a-periodista{margin-top:var(--s6);border-top:1px solid var(--tinta);padding-top:var(--s4);display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s4)}
.a-periodista p{color:var(--tinta-2);max-width:50ch;font-size:.9em}
.btn-grande{display:inline-flex;align-items:center;min-height:56px;padding:14px var(--s3);font-size:1em;text-decoration:none}
.periodista-sep{border-top:6px solid var(--tinta);margin-top:var(--s4);padding-top:var(--s1);scroll-margin-top:52px}
.periodista-sep .sc{color:var(--tinta-3)}
@media (max-width:599px){.btn-grande{width:100%;justify-content:center;text-align:center}}
@media (min-width:1100px){.filtros{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(0,.8fr) minmax(0,1fr)}}
