/* Boleto, listas y comprobantes impresos (80 mm, carta y oficio) y su vista previa en pantalla. */
/* ===== Boleto: impreso (80 mm / hoja) y vista previa ===== */
#imprimir{display:none}
.tk{font-family:var(--f-body);color:#000}
.tk.b80{width:72mm;font-size:11pt}
.tk .c{text-align:center}
.tk .vzp{font-family:var(--f-brand);font-weight:800;font-size:14pt;letter-spacing:.05em}
.tk .cod{font-family:var(--f-mono);font-size:20pt;font-weight:600;letter-spacing:.06em;margin:2mm 0}
.tk hr{border:0;border-top:1px dashed #000;margin:3mm 0}
.tk table{width:100%;border-collapse:collapse}
.tk.b80 td{padding:.6mm 0;vertical-align:top}
.tk.b80 td:last-child{text-align:right;font-weight:700}
.tk.b80 td.as{font-family:var(--f-mono);font-weight:700;width:9mm}
.tk.b80 small{font-size:8.5pt}
.tk .tr{font-size:15pt;font-weight:700;text-align:center;margin:2mm 0}
.tk .re{border:1px solid #000;padding:1mm;text-align:center;font-weight:700;margin-bottom:2mm}
.tk .anul{border:2px solid #000;padding:2mm;text-align:center;font-weight:800;font-size:14pt}
.tk .tit{font-weight:800;font-size:13pt;text-align:center;letter-spacing:.04em}
.tk .cond{font-size:7.5pt;line-height:1.3;display:grid;gap:.8mm}
.tk .maleta{display:inline-block;border:1px solid #000;width:30mm;height:6mm;vertical-align:middle;margin-left:2mm}
.tk.hoja{font-size:10.5pt}
.tk.hoja .cab{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #000;padding-bottom:3mm;margin-bottom:4mm}
.tk.hoja .datos2{display:grid;grid-template-columns:repeat(3,1fr);gap:1mm 6mm;margin-bottom:4mm}
.tk.hoja th,.tk.hoja td{border:1px solid #000;padding:1.6mm 2.4mm;text-align:left}
.tk.hoja th{background:#eee}
.tk.hoja td.as{text-align:center;font-family:var(--f-mono);font-weight:700;width:16mm}
.tk.hoja td.eq{width:34mm}
/* Boleto del pasajero */
.tk .bol{display:grid;gap:2.6mm}
.tk .bol-cab{text-align:center;display:grid;gap:.6mm}
.tk .bol-cab .vzp{font-size:16pt}
.tk .vzp span{font-weight:800}
.tk .bol-emp{font-weight:700;font-size:11pt}
.tk .bol-mini{font-size:8pt}
.tk .bol-etq{text-align:center;font-size:8.5pt;font-weight:800;letter-spacing:.25em;border-top:1.5px solid #000;border-bottom:1.5px solid #000;padding:1mm 0}
.tk .bol-k{display:block;font-size:7pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.tk .bol-ruta{display:grid;gap:.5mm;text-align:center}
.tk .bol-punto b{display:block;font-size:17pt;line-height:1.05;font-weight:800}
.tk .bol-par{display:block;font-size:8.5pt}
.tk .bol-flecha{font-size:9pt;line-height:1}
.tk .bol-casillas{display:grid;grid-template-columns:1fr 1fr 1fr;border:1.5px solid #000;border-radius:2mm}
.tk .bol-casillas>div{text-align:center;padding:1.4mm .5mm;display:grid;gap:.3mm}
.tk .bol-casillas>div+div{border-left:1.5px solid #000}
.tk .bol-casillas b{font-size:14pt;line-height:1;font-weight:800}
.tk .bol-casillas small{font-size:7.5pt}
.tk .bol-as{background:#000;color:#fff;border-radius:0 1.5mm 1.5mm 0}
.tk .bol-as b{font-size:20pt}
.tk .bol-pas b{display:block;font-size:12pt}
.tk .bol-pas div{font-size:9pt}
.tk .bol-total{display:flex;justify-content:space-between;align-items:center;background:#000;color:#fff;padding:1.6mm 2.5mm;border-radius:2mm}
.tk .bol-total span{font-weight:800;letter-spacing:.15em;font-size:10pt}
.tk .bol-total b{font-size:17pt}
.tk .bol-pago{text-align:right;font-size:9pt;margin-top:-1.5mm}
.tk .bol-cod{text-align:center;border:1.5px dashed #000;border-radius:2mm;padding:1.6mm}
.tk .bol-cod b{display:block;font-family:var(--f-mono);font-size:19pt;letter-spacing:.08em}
.tk .bol-cod small{font-size:8pt}
.tk .bol-vend{text-align:center;font-size:8.5pt}
.tk .bol-pie{text-align:center;font-size:7.5pt}
.tk .bol-corte{text-align:center;font-size:8pt;letter-spacing:.05em;overflow:hidden;white-space:nowrap}
@media print{.tk .bol-as,.tk .bol-total{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.prev-wrap{background:var(--surface2);border-radius:12px;padding:14px;display:grid;place-items:center;overflow:auto}
.tk.prev{background:#fff;padding:5mm 4mm;box-shadow:0 4px 18px rgba(0,0,0,.18);border-radius:4px}
@media print{
  body{background:#fff;color:#000}
  #app,#login,.scrim,.toasts,.pop{display:none!important}
  #imprimir{display:block}
}
