/* Hoja del PII: página Legal horizontal, áreas con filas y firmas en dos columnas. Lo
   común a las hojas está en hoja.css. */
.ancho-hoja, .barra .contenedor, .pie .contenedor { max-width: 90rem; }
.rotulo.gris { background: var(--hoja-gris); }
.dos { text-align: center !important; padding-inline: 0 !important; }
.separacion td { height: .75rem; border-inline: 0; }

.hoja .t-bloque textarea { min-height: 5.5em; }
/* Anchos de columna del .docx (twips → %). */
.c-rot1 { width: 27.65%; } .c-val1 { width: 38.59%; }
.c-rot2 { width: 14.16%; } .c-val2 { width: 15.29%; } .c-dos { width: 2.15%; }
.c-op-rot { width: 13.65%; }
.c-objetivo { width: 31.13%; } .c-tema { width: 16.1%; } .c-actividades { width: 21.47%; }
.c-responsable { width: 8.95%; } .c-resultados { width: 16.99%; } .c-plazo { width: 5.37%; }

/* Todo en Calibri, como el Word que se descarga (D8). */
.t-area td { position: relative; }
.t-area .encabezados th { font-size: .8rem; text-align: center; }
.con-numero { display: flex; gap: 4px; }
.con-numero textarea { flex: 1; }
.numero { flex: none; padding-top: 1px; }
/* La columna «quitar» cae en el margen de la hoja: así las áreas miden lo mismo que las
   demás tablas. */
.hoja .t-area { width: calc(100% + 2rem); margin-right: -2rem; }
.c-quitar { width: 2rem; }
.t-area td.quitar, .t-area th.no-imprimir { border: 0; vertical-align: middle; background: transparent; padding: 0; }
.agregar-fila { margin: calc(-1 * var(--e-3)) 0 var(--e-4); }

/* Firmas */
.t-firmas td { width: 50%; text-align: center; font-weight: 700; }
.espacio-firma td { height: 4.5rem; }
.firma-familia td { background: var(--hoja-firma-1); }
.firma-profesionales td { background: var(--hoja-firma-2); }
.t-firmas .institucion {
  display: inline-block; width: 14rem; max-width: 100%;
  border-bottom: 1px dashed #777; text-align: center;
}

/* --- Celular: la identificación en una columna y cada fila de área como tarjeta ----- */
@media screen and (max-width: 56rem) {
  .t-ident, .t-ident tbody, .t-ident tr, .t-ident th, .t-ident td { display: block; width: 100%; }
  .t-ident colgroup, .t-ident .dos, .separacion { display: none; }
  .t-ident th, .t-ident td { border-bottom: 0; }
  .t-ident tbody { border-bottom: 1px solid var(--hoja-borde); }
  .t-opinion colgroup { display: none; }
  .t-opinion, .t-opinion tbody, .t-opinion tr, .t-opinion th, .t-opinion td { display: block; width: 100%; }
  .t-opinion th, .t-opinion td { border-bottom: 0; }
  .t-opinion tbody { border-bottom: 1px solid var(--hoja-borde); }
  .t-area colgroup, .t-area .encabezados { display: none; }
  .t-area, .t-area thead, .t-area tbody, .t-area tr, .t-area th, .t-area td { display: block; width: 100%; }
  .t-area thead th.no-imprimir { display: none; }
  .t-area tbody tr { border: 1px solid var(--hoja-borde); border-top: 0; padding: var(--e-2); }
  .t-area tbody td { border: 0; padding: 0 0 var(--e-2); }
  .t-area tbody td[data-col]::before {
    content: attr(data-etiqueta); display: block;
    font: 700 .75rem var(--fuente-rotulo); background: var(--hoja-rotulo); padding: 1px 4px;
  }
  .hoja .t-area { width: 100%; margin-right: 0; }
  .t-area td.quitar { text-align: right; padding: 0; }
  .t-firmas td { display: block; width: 100%; }
}

/* --- Impresión: Legal horizontal (14 × 8,5 pulgadas), márgenes del .docx ---------- */
@page { size: 14in 8.5in; margin: 2.5cm 4.06cm 2.5cm 3cm; }
@media print {
  .hoja .t-area { width: 100%; margin-right: 0; }
  .hoja .t-bloque textarea { min-height: 4em; }
  .t-firmas { break-inside: avoid; }
}
