/* ============================================================================
   Paso a producción · hoja propia
   Se apoya en /v8/estilo.css. Acá solo va lo que es propio de esta página: las
   dos tablas del contrato, el inventario de sitios y los cuatro destinos.
   Ni una clase gr-*: el chrome del kit se consume tal cual (O3).
   ============================================================================ */

.pr-h1 { font-size: clamp(26px, 3.4vw, 36px); line-height: 1.12; margin: 0 0 16px; }
.pr-h3 { margin: 30px 0 12px; font-size: 17px; font-weight: 700; letter-spacing: -.01em; }

/* Las tablas del contrato son anchas por naturaleza. Se dejan desbordar dentro
   de su propio contenedor y nunca empujan el ancho de la página: minmax(0,1fr)
   en la columna es lo que impide que la rejilla crezca con la tabla. */
.pr-tw { overflow-x: auto; border: 1px solid var(--line); margin: 0 0 var(--space-4, 20px); }
.pr-t { width: 100%; border-collapse: collapse; min-width: 620px; }
.pr-t th, .pr-t td { padding: 11px 13px; text-align: left; vertical-align: top;
  border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.5; }
.pr-t thead th { background: var(--paper-raised); font-family: var(--font-epi);
  font-size: var(--epi-size); font-weight: var(--epi-weight);
  letter-spacing: var(--epi-track); text-transform: uppercase; color: var(--ink-muted); }
.pr-t tbody tr:last-child td { border-bottom: 0; }
.pr-id { font-family: var(--font-epi); font-weight: 700; font-size: 12px;
  letter-spacing: .06em; color: var(--ink-muted); white-space: nowrap; width: 1%; }
.pr-por { color: var(--ink-muted); font-size: 13px; max-width: 34ch; }

/* La píldora de versión. Verde no: el estado se lee del texto de al lado, la
   píldora solo agrupa. Un color por estado y nada más. */
.pr-p { display: inline-block; padding: 2px 8px; border: 1px solid var(--line);
  font-family: var(--font-mono); font-size: 12px; font-weight: 700; }
.pr-p--ok { border-color: var(--ink); }
.pr-p--atras { border-color: var(--ink-muted); color: var(--ink-muted); }
.pr-p--sin { border-style: dashed; color: var(--ink-muted); }
.pr-est { font-size: 13px; color: var(--ink-muted); white-space: nowrap; }
.pr-alerta { font-family: var(--font-epi); font-size: 10.5px; letter-spacing: .08em;
  text-transform: uppercase; color: var(--err, #b3261e); border: 1px solid currentColor;
  padding: 1px 6px; white-space: nowrap; }

/* Los cuatro destinos. Rejilla con borde por celda, no gap sobre fondo pintado:
   cuando la última fila queda incompleta, el hueco de un gap se ve gris y
   parece una tarjeta rota. Ya pasó tres veces. */
.pr-dests { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: var(--space-4, 20px); }
.pr-dest { border: 1px solid var(--line); background: var(--paper); padding: 18px 18px 14px;
  min-width: 0; }
.pr-dest h3 { margin: 0 0 4px; font-size: 16px; font-weight: 700; }
.pr-dest__d { margin: 0 0 12px; font-size: 12.5px; color: var(--ink-muted); }
.pr-dest__l { list-style: none; margin: 0; padding: 0; }
.pr-dest__l li { padding: 7px 0; border-top: 1px solid var(--line); font-size: 14px;
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.pr-dest__l a { font-weight: 600; }
.pr-dest__l code { font-size: 11.5px; color: var(--ink-muted); }
/* El borde de arriba distingue el destino. Nunca a la izquierda: la franja
   lateral está prohibida desde el 6 de agosto (O5). */
.pr-dest--publico { border-top: 3px solid var(--ink); }
.pr-dest--interno { border-top: 3px solid var(--ink-muted); }
.pr-dest--acerca { border-top: 3px solid var(--accent); }
.pr-dest--retirar { border-top: 3px dashed var(--ink-muted); }
.pr-dest--retirar .pr-dest__l a { color: var(--ink-muted); }

/* Lo que ya está sirviéndose, con su URL real y clickeable. */
.pr-vivo { display: flex; flex-direction: column; gap: 1px; background: var(--line);
  border: 1px solid var(--line); margin: 0 0 var(--space-4, 20px); }
.pr-vivo__a { background: var(--paper-raised); padding: 12px 15px;
  font-family: var(--font-mono); font-size: 13.5px; font-weight: 600;
  text-decoration: none; color: var(--ink); }
.pr-vivo__a::after { content: " ↗"; color: var(--ink-muted); }
.pr-vivo__a:hover { background: var(--paper); text-decoration: underline; }

/* El aviso que hay que leer sí o sí. Borde entero, sin franja pintada. */
.pr-ojo { border: 1px solid var(--line); background: var(--paper-raised);
  padding: 13px 15px; font-size: 14px; line-height: 1.55; margin: var(--space-4, 20px) 0; }

.pr-ol { margin: 0 0 var(--space-4, 20px); padding-left: 20px; }
.pr-ol li { font-size: 14.5px; line-height: 1.55; margin-bottom: 7px; max-width: 74ch; }

.pr-pend { border: 1px solid var(--line); background: var(--paper); padding: 15px 17px;
  margin: 0 0 var(--space-3, 14px); }
.pr-pend h4 { margin: 0 0 6px; font-size: 15px; font-weight: 700; }
.pr-pend p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--ink-muted);
  max-width: 74ch; }
