/* La Pizarra (hallazgos) y Sala de Prensa · Colegiómetro (1-10-2026).
   Páginas estáticas /pizarra/ (herramientas/generar-pizarra.mjs) y pantallas #/prensa y #/admin/prensa del sitio.
   Se suma a estilos.css. Pizarrón: azul piedra oscuro #243242 (pedido de Ismael, 1-10-2026: menos verde; oscurecido el 2-10-2026), textura de tiza liviana (ruido SVG en línea),
   marco de madera sutil. Contraste AA sobre el azul piedra: tiza blanca 9,0:1; tiza amarilla clara 7,8:1; amarillo de la marca 5,6:1.
   El pizarrón va solo en la cabecera de la sección y de cada artículo, en los gráficos y en la banda de prensa; las tarjetas
   de la portada son blancas con titular en tinta. El cuerpo del artículo va sobre fondo claro. */
@font-face { font-family: "Caveat Pizarra"; src: url("/assets/pizarra/caveat-latin-700-normal.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }

:root {
  --pz-piedra: #243242;
  --pz-piedra-oscuro: #1B2733;
  --pz-tiza: #F4F6FA;
  --pz-tiza-suave: #C7D3E0;
  --pz-tiza-amarilla: #F3E9A6;
  --pz-amarillo: var(--cm-lapiz, #E0C500);
  --pz-madera: #7A5A3A;
  --pz-mano: "Caveat Pizarra", "Caveat", "Segoe Print", "Bradley Hand", cursive;
  --pz-ruido: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- pizarrón (base) ---------- */
.pz-pizarron {
  position: relative; color: var(--pz-tiza);
  background-color: var(--pz-piedra);
  background-image:
    radial-gradient(120% 90% at 18% 8%, rgba(255, 255, 255, .08), transparent 55%),
    radial-gradient(90% 80% at 90% 100%, rgba(0, 0, 0, .22), transparent 60%),
    linear-gradient(176deg, transparent 38%, rgba(255, 255, 255, .035) 41%, transparent 47%),
    var(--pz-ruido);
  border: 10px solid var(--pz-madera);
  border-image: linear-gradient(135deg, #9A7550, #6C4E31 35%, #8B6944 65%, #5B4128) 1;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .25), inset 0 0 60px rgba(0, 0, 0, .25), 0 10px 24px -16px rgba(12, 20, 38, .6);
}
.pz-pizarron a { color: var(--pz-tiza); }
.pz-pizarron a:hover { color: var(--pz-tiza-amarilla); }
.pz-pizarron :focus-visible { outline: 3px solid var(--pz-amarillo); outline-offset: 3px; }
.pz-mano { font-family: var(--pz-mano); font-weight: 700; letter-spacing: 0; text-shadow: 0 0 1px rgba(255, 255, 255, .35), 0 0 12px rgba(255, 255, 255, .06); }
/* Bandeja de tiza bajo el pizarrón */
.pz-bandeja { position: relative; height: 12px; margin: 0 6px; background: linear-gradient(#6C4E31, #4D3722); border-radius: 0 0 6px 6px; box-shadow: 0 6px 10px -8px rgba(0, 0, 0, .6); }
.pz-bandeja::before, .pz-bandeja::after { content: ""; position: absolute; top: -5px; height: 6px; border-radius: 3px; }
.pz-bandeja::before { left: 14%; width: 46px; background: #EDEFF2; transform: rotate(-3deg); }
.pz-bandeja::after { left: 22%; width: 30px; background: #E9D97A; transform: rotate(4deg); }

/* ---------- páginas estáticas ---------- */
.pagina-pizarra { background: var(--cm-papel); }
.pagina-pizarra main { padding-bottom: 56px; }
.pz-cabeza { padding-top: 18px; }
.pz-cabeza .pz-pizarron { padding: 22px 22px 26px; display: flex; flex-direction: column; gap: 12px; }
@media (min-width: 768px) { .pz-cabeza .pz-pizarron { padding: 30px 40px 34px; } }
.pz-migas { font-size: 14px; color: var(--pz-tiza-suave); display: flex; flex-wrap: wrap; gap: 6px; }
.pz-migas a { color: var(--pz-tiza-suave); }
.pz-antetitulo { font: 500 12px/1.3 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--pz-tiza-amarilla); display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; }
.pz-titular { font-family: var(--pz-mano); font-weight: 700; font-size: clamp(38px, 6.2vw, 66px); line-height: 1.04; letter-spacing: 0; color: var(--pz-tiza); max-width: 22ch; text-wrap: balance; overflow-wrap: break-word; text-shadow: 0 0 1px rgba(255, 255, 255, .35); }
.pz-titular--portada { font-size: clamp(54px, 9vw, 96px); }
.pz-bajada { font-size: clamp(16.5px, 2vw, 19px); line-height: 1.5; color: var(--pz-tiza); max-width: 62ch; }
.pz-meta { font-size: 14px; color: var(--pz-tiza-suave); }
.pz-cifras { list-style: none; margin: 8px 0 0; padding: 14px 0 0; display: grid; grid-template-columns: 1fr; gap: 14px; border-top: 2px dashed rgba(244, 246, 250, .28); }
@media (min-width: 700px) { .pz-cifras { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; } }
.pz-cifra { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.pz-cifra__valor { font-family: var(--pz-mano); font-weight: 700; font-size: clamp(40px, 5vw, 54px); line-height: 1; color: var(--pz-amarillo); overflow-wrap: anywhere; }
.pz-cifra__etq { font-size: 15px; line-height: 1.4; color: var(--pz-tiza); }
.pz-cifra__nota { font-size: 12.5px; color: var(--pz-tiza-suave); }
.pz-sello { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border: 1.5px dashed currentColor; border-radius: 4px; font: 600 12px/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.pz-sello--ejemplo { color: var(--pz-tiza-amarilla); }
.pz-sello--borrador { color: #FFD7D2; }

/* Aviso de vista previa (solo herramientas/vista-previa/) */
.pz-previa { margin-top: 14px; padding: 12px 16px; border: 2px dashed var(--cm-correccion); border-radius: var(--radio-m); background: #FFF4F2; color: #7A231B; font-size: 14.5px; }

/* Artículo: cuerpo claro + columna lateral */
.pz-articulo { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; padding-top: 28px; }
@media (min-width: 1000px) { .pz-articulo { grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; } }
.pz-cuerpo { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.pz-cuerpo > p { font-size: 18px; line-height: 1.7; max-width: 68ch; }
.pz-cuerpo h2 { font-size: 24px; margin-top: 18px; }
.pz-cuerpo ul:not([class]), .pz-cuerpo .pz-advertencias { margin: 0; padding-left: 22px; max-width: 68ch; display: flex; flex-direction: column; gap: 6px; font-size: 16px; line-height: 1.6; }
.pz-seccion { display: flex; flex-direction: column; gap: 10px; padding-top: 18px; border-top: 1px solid var(--borde); }
.pz-seccion h2 { margin-top: 0; }
.pz-fuentes li span { color: var(--texto-suave); }
.pz-cuerpo .pz-advertencias { padding: 14px 18px 14px 34px; border-left: 4px solid var(--cm-lapiz); background: #FFFBEA; border-radius: 0 var(--radio-m) var(--radio-m) 0; }
.pz-cita { margin: 0; padding: 12px 14px; background: var(--cm-papel); border-left: 4px solid var(--cm-cielo); border-radius: 0 var(--radio-s) var(--radio-s) 0; font-size: 15.5px; line-height: 1.55; }
.pz-cita__fila { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.pz-etiquetas { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.pz-etiquetas a, .pz-etiquetas span { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border-radius: var(--radio-pildora); background: var(--cm-cuaderno); color: var(--cm-tinta); font-size: 13.5px; font-weight: 600; text-decoration: none; }
.pz-enlaces { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; list-style: none; margin: 0; padding: 0; }
.pz-enlaces a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 48px; padding: 10px 14px; background: var(--cm-blanco); border: 1px solid var(--borde); border-radius: var(--radio-m); text-decoration: none; font-weight: 600; font-size: 15px; }
.pz-enlaces a:hover { border-color: var(--cm-tinta); color: var(--cm-tinta); }

.pz-lateral { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
@media (min-width: 1000px) { .pz-lateral__fijo { position: sticky; top: 80px; display: flex; flex-direction: column; gap: 16px; } }
.pz-caja { display: flex; flex-direction: column; gap: 10px; padding: 18px; background-color: var(--cm-blanco); border: 1px solid var(--borde); border-radius: var(--radio-l); }
.pz-caja.pz-pizarron { background-color: var(--pz-piedra); border: 8px solid var(--pz-madera); border-image: linear-gradient(135deg, #9A7550, #6C4E31 35%, #8B6944 65%, #5B4128) 1; border-radius: 0; }
.pz-caja h2 { font-size: 19px; }
.pz-caja--prensa { color: var(--pz-tiza); padding: 18px; }
.pz-caja--prensa h2 { color: var(--pz-tiza); font-family: var(--pz-mano); font-size: 32px; line-height: 1; }
.pz-caja--prensa p { color: var(--pz-tiza); font-size: 14.5px; }
.pz-caja--prensa ul { margin: 0; padding-left: 18px; font-size: 14px; line-height: 1.55; color: var(--pz-tiza); }
.pz-boton-tiza { background: var(--pz-amarillo); color: var(--cm-tinta); }
.pz-boton-tiza:hover { background: var(--cm-lapiz-hover); color: var(--cm-tinta); }
.pz-boton-claro { border-color: var(--pz-tiza); color: var(--pz-tiza); }
.pz-boton-claro:hover { background: rgba(244, 246, 250, .1); color: var(--pz-tiza); }

/* ---------- gráficos en tiza ---------- */
.pz-grafico { margin: 6px 0; padding: 16px 16px 14px; display: flex; flex-direction: column; gap: 10px; border-width: 8px; }
@media (min-width: 768px) { .pz-grafico { padding: 22px 26px 18px; } }
.pz-grafico__titulo { font-family: var(--pz-mano); font-weight: 700; font-size: clamp(26px, 3.4vw, 34px); line-height: 1.1; color: var(--pz-tiza); }
.pz-grafico__sub { font-size: 14px; color: var(--pz-tiza-suave); }
.pz-grafico svg { display: block; width: 100%; height: auto; overflow: visible; }
.pz-grafico svg text { font-family: var(--font-text); }
.pz-grafico__pie { font-size: 12.5px; color: var(--pz-tiza-suave); line-height: 1.45; }
.pz-grafico__datos summary { cursor: pointer; font-size: 14px; color: var(--pz-tiza); min-height: 32px; display: inline-flex; align-items: center; }
.pz-grafico__datos table { width: 100%; border-collapse: collapse; font-size: 14px; margin-top: 6px; }
.pz-grafico__datos th, .pz-grafico__datos td { text-align: left; padding: 5px 8px; border-bottom: 1px dashed rgba(244, 246, 250, .25); color: var(--pz-tiza); }
.pz-grafico__datos td:last-child, .pz-grafico__datos th:last-child { text-align: right; font-variant-numeric: tabular-nums; }
/* Mapa por región: mapa angosto + leyenda y lista ordenada */
.pz-mapa { display: grid; grid-template-columns: minmax(84px, 120px) minmax(0, 1fr); gap: 14px; align-items: start; }
@media (max-width: 480px) { .pz-mapa { grid-template-columns: 78px minmax(0, 1fr); gap: 10px; } .pz-mapa__lista, .pz-mapa__leyenda { font-size: 13px; } .pz-mapa__lista li { gap: 6px; } }
.pz-mapa__lista a { overflow-wrap: anywhere; min-width: 0; }
@media (min-width: 640px) { .pz-mapa { grid-template-columns: 200px minmax(0, 1fr); gap: 28px; } }
.pz-mapa__svg { max-height: 760px; }
.pz-mapa__svg use { stroke: rgba(244, 246, 250, .9); stroke-width: 2.6; stroke-linejoin: round; }
.pz-mapa__svg .pz-fijos { stroke: none; opacity: .55; }
.pz-mapa__leyenda { display: flex; flex-direction: column; gap: 4px; list-style: none; margin: 0 0 10px; padding: 0; font-size: 13.5px; }
.pz-mapa__leyenda li { display: flex; align-items: center; gap: 8px; }
.pz-mapa__muestra { width: 22px; height: 14px; border: 1.5px solid rgba(244, 246, 250, .85); border-radius: 2px; flex: none; }
.pz-mapa__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; font-size: 14px; }
.pz-mapa__lista li { display: grid; grid-template-columns: 14px minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 3px 0; border-bottom: 1px dashed rgba(244, 246, 250, .18); }
.pz-mapa__lista a { text-decoration: none; }
.pz-mapa__lista a:hover { text-decoration: underline; }
.pz-mapa__lista b { font-variant-numeric: tabular-nums; color: var(--pz-tiza-amarilla); font-weight: 600; }
.pz-mapa__lista i { width: 12px; height: 12px; border-radius: 2px; border: 1px solid rgba(244, 246, 250, .8); }
.pz-difrol { font-size: 11px; line-height: 1.4; color: var(--pz-tiza-suave); }

/* ---------- portada ---------- */
.pz-portada-cab .pz-pizarron { gap: 14px; }
.pz-filtros { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 22px; }
.pz-filtros[hidden] { display: none; }
.pz-filtros__etq { font-size: 14px; font-weight: 600; margin-right: 4px; }
.pz-filtro { min-height: 40px; padding: 0 14px; border-radius: var(--radio-pildora); border: 1.5px solid var(--cm-tinta-20); background: var(--cm-blanco); font-size: 14px; font-weight: 600; color: var(--cm-tinta); }
.pz-filtro[aria-pressed="true"] { background: var(--cm-tinta); border-color: var(--cm-tinta); color: #fff; }
.pz-lista { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 18px; }
.pz-lista > .pz-tarjeta { flex: 1 1 300px; }
.pz-lista > .pz-tarjeta--destacada { flex-basis: 100%; }
/* Recuadros con el encabezado de las tarjetas de colegios del sitio (réplica de .tarjeta-colegio__cabecera, __lugar y __nombre de
   estilos.css): franja tinta con filo amarillo a la izquierda, rótulo celeste en mono mayúsculas y título en blanco papel
   (Archivo 600). Celeste sobre tinta 5,1:1 y papel sobre tinta 13:1 (AA). Cuerpo blanco con borde. */
.pz-recuadro { display: flex; flex-direction: column; background: var(--cm-blanco); border: 1px solid rgba(27, 43, 75, .22); border-radius: var(--radio-m); overflow: hidden; min-width: 0; box-shadow: var(--sombra-tarjeta); }
.pz-cab { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 14px 14px; background: var(--cm-degradado); border-left: 6px solid var(--cm-lapiz); min-width: 0; }
.pz-cab__rotulo { margin: 0; font: 600 var(--fs-label)/1.4 var(--font-mono); letter-spacing: var(--tracking-label); text-transform: uppercase; color: var(--cm-cielo); display: flex; flex-wrap: wrap; gap: 2px 6px; align-items: center; }
.pz-cab__titulo { margin: 0; font: 600 18px/1.2 var(--font-display); letter-spacing: -.01em; color: var(--cm-papel); overflow-wrap: break-word; }
.pz-cab__titulo a { color: inherit; text-decoration: none; }
.pz-cab .pz-sello { color: var(--pz-tiza-amarilla); font-size: 10.5px; padding: 1px 7px; }
.pz-recuadro__cuerpo { display: flex; flex-direction: column; gap: 10px; padding: 16px 18px 18px; min-width: 0; }
.pz-recuadro__cuerpo > p { margin: 0; }
.pz-cuerpo .pz-recuadro { margin-top: 10px; }
.pz-cuerpo .pz-recuadro__cuerpo > p { font-size: 16px; line-height: 1.6; max-width: 70ch; }
.pz-cuerpo .pz-recuadro ul:not([class]) { max-width: 70ch; }
.pz-cuerpo .pz-recuadro .pz-advertencias { max-width: none; }
/* Tarjetas de noticia de la portada: una sola pieza, toda clicable */
.pz-tarjeta { position: relative; transition: box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease); }
.pz-tarjeta[hidden] { display: none; }
.pz-tarjeta:hover, .pz-tarjeta:focus-within { border-color: var(--cm-tinta); box-shadow: 0 12px 26px -14px rgba(27, 43, 75, .6); transform: translateY(-2px); }
.pz-tarjeta:focus-within { outline: 3px solid var(--cm-lapiz); outline-offset: 2px; }
.pz-tarjeta__titular { font-size: 20px; }
.pz-tarjeta__titular a { outline: none; }
.pz-tarjeta__titular a::after { content: ""; position: absolute; inset: 0; }
.pz-tarjeta:hover .pz-tarjeta__titular a { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.pz-tarjeta__cuerpo { flex: 1; }
.pz-tarjeta__bajada { font-size: 15px; line-height: 1.5; color: var(--cm-tinta); }
.pz-tarjeta__cifra { display: flex; flex-direction: column; gap: 3px; margin-top: auto !important; padding: 10px 12px; border-left: 4px solid var(--cm-lapiz); background: var(--cm-papel); border-radius: 0 var(--radio-s) var(--radio-s) 0; }
.pz-tarjeta__cifra b { font: 700 26px/1.05 var(--font-display); color: var(--cm-tinta); }
.pz-tarjeta__cifra span { font-size: 13.5px; line-height: 1.4; color: var(--cm-tinta); }
.pz-tarjeta__leer { font-weight: 700; font-size: 14.5px; color: var(--cm-tinta); }
.pz-tarjeta__leer span { display: inline-block; transition: transform var(--dur) var(--ease); }
.pz-tarjeta:hover .pz-tarjeta__leer span { transform: translateX(4px); }
.pz-tarjeta--destacada .pz-cab { padding: 18px 22px 18px 18px; }
.pz-tarjeta--destacada .pz-tarjeta__titular { font-size: clamp(23px, 3.2vw, 32px); line-height: 1.14; }
.pz-tarjeta--destacada .pz-tarjeta__bajada { font-size: 16.5px; }
@media (min-width: 900px) {
  .pz-tarjeta--destacada .pz-tarjeta__cuerpo { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 12px 36px; padding: 22px 24px 22px; align-items: center; }
  .pz-tarjeta--destacada .pz-tarjeta__bajada { grid-column: 1; grid-row: 1; }
  .pz-tarjeta--destacada .pz-tarjeta__leer { grid-column: 1; grid-row: 2; }
  .pz-tarjeta--destacada .pz-tarjeta__cifra { grid-column: 2; grid-row: 1 / span 2; margin-top: 0 !important; padding: 16px 20px; border-left-width: 6px; }
  .pz-tarjeta--destacada .pz-tarjeta__cifra b { font-size: 56px; }
  .pz-tarjeta--destacada .pz-tarjeta__cifra span { font-size: 15.5px; }
}
.pz-vacio { margin-top: 18px; }
.pz-prensa-banda { margin-top: 32px; display: grid; gap: 14px; grid-template-columns: minmax(0, 1fr); padding: 22px; }
@media (min-width: 820px) { .pz-prensa-banda { grid-template-columns: minmax(0, 1fr) auto; align-items: center; padding: 26px 32px; } }
.pz-prensa-banda h2 { font-family: var(--pz-mano); font-size: 40px; line-height: 1; color: var(--pz-tiza); }
.pz-prensa-banda p { color: var(--pz-tiza); max-width: 62ch; }

/* Enlace "La Pizarra" en la cabecera de las páginas estáticas: en celular angosto, solo el ícono */
.cabecera__enlace--pizarra { gap: 6px; white-space: nowrap; }
.cabecera__enlace--pizarra .ico { width: 18px; height: 18px; }
@media (max-width: 480px) { .cabecera__pizarra-txt { display: none; } }

/* ---------- Sala de Prensa (#/prensa) ---------- */
/* Cabecera de la Sala de Prensa (2-10-2026, Ismael): fotografía (assets/prensa/), vertical hasta 700 px y ancha en el resto. El h1 y la
   bajada general van en la imagen y quedan en el HTML solo para lectores de pantalla y buscadores (.sp-oculto). Prefijo .sp-. */
.sp-cabecera { margin: 18px auto 0; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.sp-cabecera picture { display: block; }
.sp-foto { display: block; width: 100%; height: auto; aspect-ratio: 2128 / 739; object-fit: cover; border-radius: var(--radio-l, 16px); background: #0C1426; box-shadow: 0 0 0 1px rgba(255, 255, 255, .1), 0 14px 34px rgba(0, 0, 0, .45); }
@media (max-width: 700px) { .sp-foto { aspect-ratio: 1096 / 1436; } }
.sp-oculto { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.sp-bajada { margin: 0; max-width: 70ch; font-size: 17px; line-height: 1.5; color: #DCE6F5; }
/* Rótulos de sección de la biblioteca */
.sala-prensa .biblioteca > h2 { display: flex; align-items: center; gap: 10px; }
.sala-prensa .biblioteca > h2::before { content: ""; width: 6px; height: 22px; background: var(--cm-lapiz); border-radius: 2px; flex: none; }

/* ---------- Tema oscuro de la Sala de Prensa (2-10-2026, Ismael) ----------
   prensa.js pone la clase "tema-prensa" en <body> solo mientras la ruta es #/prensa. Cambia cabecera del sitio, contenido y pie; las
   ventanas emergentes (cookies, ingreso) conservan el tema claro. Contrastes AA medidos sobre #0C1426 y #15223D. */
body.tema-prensa { background: #0C1426; }
body.tema-prensa .cabecera, body.tema-prensa #app, body.tema-prensa .pie-sitio {
  --superficie-pagina: #0C1426; --superficie-tarjeta: #15223D; --texto-fuerte: #F4F6FA; --texto-suave: #B9C6DC; --texto-info: #8CC4F0;
  --texto-acento-claro: #E0C500; --texto-alerta: #FFA89D; --borde: rgba(255, 255, 255, .16); --cm-tinta-20: rgba(255, 255, 255, .26);
  --cm-tinta-70: #B9C6DC; --cm-tinta-50: #9FB0CC; --cm-gris-boton: rgba(255, 255, 255, .1);
  color: #F4F6FA; color-scheme: dark; }
body.tema-prensa .cabecera { background: #0C1426; }
body.tema-prensa .cabecera .marca__logo { content: url("logo-blanco.png?v=3"); }
body.tema-prensa .cabecera__enlace:not(.cabecera__enlace--destacado) { color: #F4F6FA; }
body.tema-prensa .cabecera__enlace--destacado, body.tema-prensa .cabecera__enlace--destacado:hover { color: #111111; }
body.tema-prensa .pie-sitio { background: #0C1426; }
body.tema-prensa .pie-sitio a, body.tema-prensa .sala-prensa a:not(.boton):not(.boton-ingreso), body.tema-prensa .sala-prensa .boton--texto { color: #8CC4F0; }
body.tema-prensa .pie-sitio a:hover, body.tema-prensa .sala-prensa a:not(.boton):not(.boton-ingreso):hover, body.tema-prensa .sala-prensa .boton--texto:hover { color: #E0C500; }
/* recuadros: encabezado tinta con filo amarillo; cuerpo azul oscuro algo más claro que el fondo */
body.tema-prensa .sala-prensa .pz-recuadro { background: #15223D; border-color: rgba(255, 255, 255, .16); box-shadow: 0 8px 22px rgba(0, 0, 0, .35); }
body.tema-prensa .sala-prensa .pz-cab { background: #1B2B4B; border-bottom: 1px solid rgba(255, 255, 255, .12); }
body.tema-prensa .sala-prensa__beneficios li { background: #15223D; border-color: rgba(255, 255, 255, .16); }
body.tema-prensa .sala-prensa__beneficios--lista li { background: none; border: 0; }
body.tema-prensa .sala-prensa__beneficios li > i, body.tema-prensa .sala-prensa__estado > i { color: #8CC4F0; }
body.tema-prensa .sala-prensa strong { color: #FFFFFF; }
/* formulario */
body.tema-prensa .sala-prensa .control { background: #0C1629; border-color: rgba(255, 255, 255, .42); color: #F4F6FA; }
body.tema-prensa .sala-prensa .control::placeholder { color: #9FB0CC; opacity: 1; }
body.tema-prensa .sala-prensa .control:focus { outline: 3px solid #E0C500; outline-offset: 0; border-color: #E0C500; }
body.tema-prensa .sala-prensa .control:disabled { background: #1A2742; color: #9FB0CC; }
body.tema-prensa .sala-prensa input[type="checkbox"] { accent-color: #E0C500; }
body.tema-prensa .form-prensa__autoriza { background: #0F1B33; border-color: rgba(255, 255, 255, .2); }
body.tema-prensa .form-prensa__error { color: #FFA89D; }
/* botones */
body.tema-prensa .sala-prensa .boton--primario { background: #E0C500; color: #111111; }
body.tema-prensa .sala-prensa .boton--primario:hover { background: #F0D61F; color: #111111; }
body.tema-prensa .sala-prensa .boton--secundario { border-color: #DCE6F5; color: #F4F6FA; }
body.tema-prensa .sala-prensa .boton--secundario:hover { background: rgba(255, 255, 255, .12); color: #FFFFFF; }
body.tema-prensa .sala-prensa .boton--secundario .suave { color: #B9C6DC; }
/* estados */
body.tema-prensa .sala-prensa .estado-chip--ok { background: rgba(120, 210, 165, .16); color: #A6E6C6; }
body.tema-prensa .sala-prensa .estado-chip--lapiz { background: rgba(224, 197, 0, .18); color: #F5E05A; }
body.tema-prensa .sala-prensa .estado-chip--error { background: rgba(255, 130, 115, .16); color: #FFB5AB; }
body.tema-prensa .sala-prensa .estado-error { background: rgba(255, 130, 115, .1); border-color: #FFA89D; }
body.tema-prensa .sala-prensa .estado-error i { color: #FFA89D; }
body.tema-prensa .sala-prensa .esqueleto { background: linear-gradient(90deg, #15223D 0, #22335A 40%, #15223D 80%) 0 0 / 200% 100%; }
body.tema-prensa .sala-prensa .aviso { background: #15223D; border-color: rgba(255, 255, 255, .2); }
/* biblioteca y embargo */
body.tema-prensa .hallazgo-prensa--embargo { border: 2px solid #E0C500; }
body.tema-prensa .hallazgo-prensa--embargo .pz-recuadro__cuerpo { background: #1C2638; }
body.tema-prensa .hallazgo-prensa--foco { box-shadow: 0 0 0 3px #50A3E2; }
body.tema-prensa .embargo-cinta { background: #0C1426; border: 1px solid rgba(224, 197, 0, .55); color: #F4F6FA; }
body.tema-prensa .embargo-cinta strong { color: #E0C500; }
/* recuadro de ingreso (Google celeste / correo amarillo) */
body.tema-prensa .sala-prensa .muro-registro { background: #15223D; border-color: rgba(80, 163, 226, .6); box-shadow: 0 8px 22px rgba(0, 0, 0, .35); color: #F4F6FA; }
body.tema-prensa .sala-prensa .muro-registro__texto, body.tema-prensa .sala-prensa .muro-registro .suave { color: #B9C6DC; }
body.tema-prensa .sala-prensa .muro-registro .boton-ingreso, body.tema-prensa .sala-prensa .muro-registro .boton-ingreso:hover { color: #111111; }
body.tema-prensa .aviso-toast { border: 1px solid rgba(255, 255, 255, .28); }
.sala-prensa { display: flex; flex-direction: column; gap: 22px; padding-top: 22px; padding-bottom: 64px; }
.sala-prensa__beneficios { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
@media (min-width: 700px) { .sala-prensa__beneficios { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .sala-prensa__beneficios { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.sala-prensa__beneficios li { display: flex; gap: 12px; padding: 14px 16px; background: var(--cm-blanco); border: 1px solid var(--borde); border-radius: var(--radio-m); font-size: 14.5px; line-height: 1.45; }
.sala-prensa__beneficios li > i { font-size: 22px; color: var(--cm-cielo-oscuro, #1D70AF); flex: none; }
.sala-prensa__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; align-items: start; }
@media (min-width: 1000px) { .sala-prensa__grid { grid-template-columns: minmax(0, 1fr) 340px; } }
.form-prensa { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
@media (min-width: 700px) { .form-prensa { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.form-prensa .campo-form--ancho, .form-prensa__ancho { grid-column: 1 / -1; }
.form-prensa__temas { display: flex; flex-wrap: wrap; gap: 4px 16px; border: 0; margin: 0; padding: 0; min-width: 0; }
.form-prensa__temas legend { font-size: 13.5px; font-weight: 600; margin-bottom: 4px; padding: 0; }
.form-prensa__autoriza { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--borde); border-radius: var(--radio-m); background: var(--cm-papel); font-size: 14.5px; line-height: 1.45; }
.form-prensa__autoriza input { width: 22px; height: 22px; margin-top: 1px; flex: none; accent-color: var(--cm-tinta); }
.form-prensa__error { color: var(--cm-correccion); font-weight: 600; }
.form-prensa__error:empty { display: none; }
.sala-prensa__estado { display: flex; gap: 14px; align-items: flex-start; }
.sala-prensa__estado > i { font-size: 28px; flex: none; color: var(--cm-tinta); }
.biblioteca { display: flex; flex-direction: column; gap: 14px; }
.hallazgo-prensa--embargo { border: 2px solid var(--cm-lapiz); }
.hallazgo-prensa--embargo .pz-recuadro__cuerpo { background: #FFFCEB; }
.hallazgo-prensa--foco { box-shadow: 0 0 0 3px var(--cm-cielo); }
.hallazgo-prensa .pz-cab__rotulo i { font-size: 13px; }
.sala-prensa .pz-recuadro__cuerpo { gap: 14px; }
.sala-prensa__beneficios--lista li { border: 0; padding: 0; background: none; }
.embargo-cinta { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border-radius: var(--radio-s); background: var(--cm-degradado); color: var(--cm-papel); font-size: 14px; line-height: 1.45; }
.embargo-cinta strong { color: var(--cm-lapiz); }
.archivos-prensa { display: flex; flex-wrap: wrap; gap: 8px; }
.archivos-prensa .boton { min-height: 40px; height: auto; font-size: 14px; padding: 8px 14px; justify-content: flex-start; text-align: left; }
.sala-prensa .muro-registro { margin-top: 0; box-shadow: var(--sombra-tarjeta); }
.prensa-reglas { margin: 0; padding-left: 20px; font-size: 14px; line-height: 1.55; display: flex; flex-direction: column; gap: 4px; }

/* ---------- administración: pestaña "Prensa" ---------- */
.pestanas__contador { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; margin-left: 6px; padding: 0 6px; border-radius: var(--radio-pildora); background: var(--cm-correccion); color: #fff; font-size: 12px; font-weight: 700; vertical-align: 1px; }
.admin-aviso-prensa { margin: 12px 16px 0; }
.admin-aviso-prensa a { font-weight: 700; }
.ap-filtros { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: flex-end; }
.ap-tabla-caja { overflow-x: auto; }
.ap-tabla { width: 100%; border-collapse: collapse; font-size: 14px; }
.ap-tabla th { text-align: left; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: var(--texto-suave); padding: 8px 10px; border-bottom: 1px solid var(--borde); }
.ap-tabla td { padding: 10px; border-bottom: 1px solid var(--borde); vertical-align: top; overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .ap-tabla, .ap-tabla tbody, .ap-tabla tr, .ap-tabla td { display: block; width: 100%; }
  .ap-tabla thead { display: none; }
  .ap-tabla tr { border: 1px solid var(--borde); border-radius: var(--radio-m); margin-bottom: 10px; padding: 4px; background: var(--cm-blanco); }
  .ap-tabla td { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 8px; border: 0; padding: 6px 8px; }
  .ap-tabla td::before { content: attr(data-etq); font-size: 12px; font-weight: 600; color: var(--texto-suave); }
}
.ap-solicitud .lista-simple { font-size: 14px; }
.ap-tabla td:last-child { overflow-wrap: normal; white-space: nowrap; }

/* Tarjetas de la grilla (no la destacada) homologadas (2-10-2026, Ismael): encabezado, bajada y cifra con el mismo alto en todas,
   para que título y cuerpo queden alineados entre tarjetas. El texto que no cabe se corta con puntos suspensivos (está completo en el artículo). */
.pz-lista > .pz-tarjeta:not(.pz-tarjeta--destacada) .pz-cab { min-height: calc(14px * 2 + 1.4 * var(--fs-label, 12px) + 4px + 3 * 1.2 * 20px); justify-content: flex-start; }
.pz-lista > .pz-tarjeta:not(.pz-tarjeta--destacada) .pz-tarjeta__titular { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; line-height: 1.2; }
.pz-lista > .pz-tarjeta:not(.pz-tarjeta--destacada) .pz-cab__rotulo { flex-wrap: nowrap; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.pz-lista > .pz-tarjeta:not(.pz-tarjeta--destacada) .pz-tarjeta__bajada { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; line-clamp: 4; overflow: hidden; min-height: calc(4 * 1.5 * 15px); }
.pz-lista > .pz-tarjeta:not(.pz-tarjeta--destacada) .pz-tarjeta__cifra { min-height: calc(10px * 2 + 26px * 1.05 + 3px + 2 * 1.4 * 13.5px); }
.pz-lista > .pz-tarjeta:not(.pz-tarjeta--destacada) .pz-tarjeta__cifra span { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }

/* Botón amarillo sobre el pizarrón ("¿Eres periodista?"): letras negras (2-10-2026, Ismael). Gana a ".pz-pizarron a", que las dejaba blancas. */
.pz-pizarron a.pz-boton-tiza, .pz-pizarron a.pz-boton-tiza:hover, .pz-pizarron a.pz-boton-tiza:focus-visible, .pz-caja--prensa a.pz-boton-tiza, .pz-caja--prensa a.pz-boton-tiza:hover { color: #111111; }

/* ===== Renovación estética de la Sala de Prensa (3-10-2026): solo forma; colores del tema oscuro intactos, salvo encabezados en gris oscuro. ===== */
.sala-prensa { gap: 32px; padding-top: 28px; padding-bottom: 96px; }
.sp-cabecera { margin-top: 24px; gap: 18px; }
.sp-foto { border-radius: 16px; box-shadow: 0 0 0 1px rgba(255, 255, 255, .1); }
.sp-bajada { font-size: 18px; line-height: 1.55; }
/* Tarjetas: contorno fino, sin sombra, más aire */
body.tema-prensa .sala-prensa .pz-recuadro { border-radius: 12px; border-color: rgba(255, 255, 255, .14); box-shadow: none; }
.sala-prensa .pz-recuadro__cuerpo { gap: 16px; padding: 24px; }
/* Encabezados en gris oscuro (pedido de Ismael); se conserva el filo amarillo */
body.tema-prensa .sala-prensa .pz-cab { background: #121823; border-bottom: 1px solid rgba(255, 255, 255, .12); padding: 18px 24px 18px 18px; gap: 6px; }
body.tema-prensa .sala-prensa .pz-cab__rotulo { color: #C9CED6; }
.sala-prensa .pz-cab__titulo { font-size: 19px; font-weight: 600; line-height: 1.25; }
/* Beneficios */
.sala-prensa__beneficios { gap: 16px; }
.sala-prensa__beneficios li { gap: 14px; padding: 20px 22px; border-radius: 12px; font-size: 15px; line-height: 1.5; }
body.tema-prensa .sala-prensa__beneficios li { border-color: rgba(255, 255, 255, .14); }
.sala-prensa__beneficios--lista { gap: 12px; }
.sala-prensa__beneficios--lista li { padding: 0; }
.sala-prensa__grid { gap: 28px; }
/* Ingreso */
.sala-prensa .muro-registro { gap: 12px; padding: 28px; border-width: 1px; border-radius: 12px; box-shadow: none; }
body.tema-prensa .sala-prensa .muro-registro { box-shadow: none; }
.sala-prensa .muro-registro__titulo { font-weight: 600; letter-spacing: -.01em; }
.sala-prensa .muro-registro__botones { gap: 12px; margin-top: 8px; }
.sala-prensa .muro-registro .boton-ingreso { border-radius: 8px; min-height: 52px; font-weight: 600; box-shadow: none; }
/* Formulario */
.form-prensa { gap: 18px; }
.sala-prensa .control { border-radius: 8px; min-height: 48px; }
body.tema-prensa .sala-prensa .control { border-color: rgba(255, 255, 255, .32); }
.form-prensa__temas { gap: 8px 20px; }
.form-prensa__temas legend { font-size: 14px; margin-bottom: 8px; }
.form-prensa__autoriza { gap: 12px; padding: 16px 18px; border-radius: 12px; font-size: 15px; line-height: 1.5; }
body.tema-prensa .form-prensa__autoriza { border-color: rgba(255, 255, 255, .14); }
/* Biblioteca */
.sala-prensa .biblioteca { gap: 20px; }
.sala-prensa .biblioteca > h2 { font-weight: 600; letter-spacing: -.01em; margin-top: 8px; }
.sala-prensa .biblioteca > h2::before { width: 4px; }
body.tema-prensa .hallazgo-prensa--embargo { border-width: 1px; }
.embargo-cinta { border-radius: 8px; }
.archivos-prensa { gap: 10px; }
.archivos-prensa .boton { min-height: 44px; padding: 10px 16px; border-radius: 8px; border-width: 1px; font-weight: 500; }
.sala-prensa .aviso { border-radius: 12px; padding: 16px 18px; }
.prensa-reglas { font-size: 15px; line-height: 1.6; gap: 8px; }
.sala-prensa__estado { gap: 16px; }
@media (max-width: 700px) {
  .sala-prensa { gap: 24px; padding-bottom: 72px; }
  .sala-prensa .pz-recuadro__cuerpo { padding: 20px 18px; }
  .sala-prensa .muro-registro { padding: 22px 18px; }
  .sala-prensa__beneficios li { padding: 16px 18px; }
}

/* Botones de descarga con ilustración y explicación (3-10-2026) */
.archivos-prensa { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.descarga-prensa { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid var(--borde-control); border-radius: 12px; background: var(--cm-blanco); color: var(--cm-tinta); text-align: left; font: inherit; cursor: pointer; min-width: 0; transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease); }
.descarga-prensa:hover { border-color: var(--cm-tinta); background: var(--superficie-activa); }
.descarga-prensa:disabled { opacity: .55; cursor: progress; }
.descarga-prensa__img { width: 56px; height: 56px; object-fit: contain; flex: none; }
.descarga-prensa__txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.descarga-prensa__txt strong { font-size: 15px; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.descarga-prensa__nota { font-size: 13px; line-height: 1.4; color: var(--texto-suave); }
.descarga-prensa__peso { font-size: 12.5px; font-weight: 500; }
body.tema-prensa .descarga-prensa { background: #0F1B33; border-color: rgba(255, 255, 255, .2); color: #F4F6FA; }
body.tema-prensa .descarga-prensa:hover { background: #1B2B4B; border-color: rgba(255, 255, 255, .5); }
body.tema-prensa .descarga-prensa__nota { color: #B9C6DC; }
body.tema-prensa .descarga-prensa__peso { color: #8CC4F0; }

/* ---------- Hallazgos de Arma tu estudio (11-10-2026, aprobado por Ismael): gráficos en tiza de los recuadros, carrusel y video ---------- */
.pz-sello--medios { color: var(--pz-tiza-amarilla); }
.pz-cab .pz-sello--medios { margin-left: 6px; }
.pz-hb { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.pz-hb__fila { display: grid; grid-template-columns: minmax(90px, 30%) minmax(0, 1fr) 92px; gap: 10px; align-items: center; font-size: 15px; }
.pz-hb__etq { color: var(--pz-tiza); overflow-wrap: anywhere; }
.pz-hb__fila--dest .pz-hb__etq { color: var(--pz-tiza-amarilla); font-weight: 600; }
.pz-hb__valor { color: var(--pz-tiza-amarilla); font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.pz-hb__valor--doble { font-size: 13.5px; white-space: normal; }
.pz-hb__fila:not(.pz-hb__fila--dest) .pz-hb__valor { color: var(--pz-tiza); }
.pz-hb__fila--eje { margin-top: 2px; }
.pz-hb__eje { position: relative; height: 18px; border-top: 1.5px solid rgba(244, 246, 250, .45); }
.pz-hb__eje i { position: absolute; top: 3px; transform: translateX(-50%); font-style: normal; font-size: 12px; color: var(--pz-tiza-suave); white-space: nowrap; font-variant-numeric: tabular-nums; }
@media (max-width: 560px) {
  .pz-hb__fila { grid-template-columns: minmax(0, 1fr) auto; row-gap: 2px; }
  .pz-hb__barra { grid-column: 1 / -1; grid-row: 2; }
  .pz-hb__fila--eje { grid-template-columns: 1fr; }
  .pz-hb__fila--eje > span:first-child, .pz-hb__fila--eje > span:last-child { display: none; }
  .pz-hb__eje i:nth-child(even) { display: none; }
}
.pz-leyenda { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0 0 12px; padding: 0; list-style: none; font-size: 13.5px; color: var(--pz-tiza); }
.pz-leyenda span, .pz-leyenda li { display: inline-flex; align-items: center; gap: 7px; }
.pz-leyenda i { display: inline-block; width: 14px; height: 14px; border-radius: 3px; flex: none; }
.pz-leyenda b { font-weight: 600; color: var(--pz-tiza-suave); font-size: 12.5px; }
.pz-leyenda--lista { margin: 10px 0 0; }
.pz-leyenda__dest { color: var(--pz-tiza-amarilla); font-weight: 600; }
.pz-leyenda__hueco { border: 2.4px solid var(--pz-tiza); border-radius: 50% !important; background: transparent; }
.pz-leyenda__lleno { background: var(--pz-tiza-amarilla); border-radius: 50% !important; }
.pz-leyenda__caja { border: 2px solid var(--pz-tiza); background: rgba(244, 246, 250, .18); }
.pz-leyenda__mediana { width: 4px !important; background: var(--pz-tiza-amarilla); }
.pz-leyenda__bigote { height: 2px !important; background: var(--pz-tiza); }
.pz-leyenda__linea { height: 3px !important; width: 22px !important; background: repeating-linear-gradient(90deg, var(--pz-tiza-amarilla) 0 7px, transparent 7px 11px); }
.pz-lineas, .pz-dispersion, .pz-radar { display: block; width: 100%; height: auto; overflow: visible; }
.pz-radar { max-width: 560px; margin: 0 auto; }
.pz-svg-txt { fill: rgba(244, 246, 250, .78); font: 500 15px var(--font-text, sans-serif); font-variant-numeric: tabular-nums; }
.pz-svg-txt--chico { font-size: 12px; fill: rgba(244, 246, 250, .5); }
.pz-svg-txt--dest { fill: var(--pz-tiza-amarilla); font-weight: 700; }
.pz-eje-y { margin: 0 0 6px !important; }
.pz-eje-x { text-align: right; margin: 4px 0 0 !important; }
.pz-cifragrande { display: flex; flex-direction: column; gap: 6px; margin: 6px 0 4px; }
.pz-cifragrande b { font-family: var(--pz-mano); font-size: clamp(56px, 12vw, 96px); line-height: 1; color: var(--pz-tiza-amarilla); font-weight: 700; }
.pz-cifragrande span { color: var(--pz-tiza); font-size: 16px; }
.pz-matriz-caja { overflow-x: auto; }
.pz-matriz { border-collapse: separate; border-spacing: 4px; font-size: 14px; min-width: 100%; }
.pz-matriz th { color: var(--pz-tiza); font-weight: 600; text-align: left; padding: 4px 8px; font-size: 13px; }
.pz-matriz thead th { text-align: center; }
.pz-matriz td { text-align: center; padding: 10px 8px; border-radius: 4px; font-weight: 600; font-variant-numeric: tabular-nums; }
.pz-matriz__vacia { color: var(--pz-tiza-suave); background: rgba(244, 246, 250, .06); }
.pz-matriz__marca { outline: 2.5px dashed var(--pz-tiza-amarilla); outline-offset: 1px; }
.pz-carrusel { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 2px 2px 12px; }
.pz-carrusel a { flex: none; width: min(240px, 70vw); scroll-snap-align: start; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 18px -8px rgba(27, 43, 75, .45); }
.pz-carrusel img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.pz-video { display: block; width: 100%; max-width: 440px; aspect-ratio: 4 / 5; border-radius: 14px; background: #0C1426; }
