/* ══ Impresión de tickets ══════════════════════════════════════════════════════

   El contrato de impresión de toda la suite, en un solo lugar. Antes vivía repetido dentro de
   cada componente de ticket del POS; cuando llegó el vertical Restaurante —con su precuenta y sus
   tickets de cocina— copiarlo otra vez habría sido la cuarta o quinta copia de la misma regla.

   Cómo se usa:

     <div class="ticket-printable">   ← lo único que sale por la impresora
        …
        <button class="pos-no-print"> ← lo que no debe imprimirse, aunque esté dentro
     </div>

   Y para el comprobante que no se ve en pantalla y sólo existe al imprimir:

     <div class="ticket-solo-print"><TicketX … /></div>

   El ancho del papel lo pone cada ticket; acá sólo se decide qué se imprime y qué no. */

@media print {

    /* Se apaga todo y se vuelve a encender sólo el ticket: es la única forma fiable de imprimir
       un pedazo de la página sin pelearse con el layout de la aplicación. */
    body * {
        visibility: hidden !important;
    }

    .ticket-printable,
    .ticket-printable *,
    .recibo-printable,
    .recibo-printable * {
        visibility: visible !important;
    }

    /* .recibo-printable es el nombre que traía el recibo de abono del POS. Se mantiene para no
       tocarle el markup, pero es el mismo contrato. */
    .recibo-printable {
        display: block !important;
    }

    .ticket-printable,
    .recibo-printable {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* En papel no hay sombras ni esquinas redondeadas: sólo gastan tinta. */
    .ticket-printable .tkt,
    .ticket-printable .mud-paper,
    .recibo-printable .mud-paper {
        box-shadow: none !important;
        border-radius: 0 !important;
        max-width: 100% !important;
    }

    .pos-no-print {
        display: none !important;
    }

    /* El comprobante que en pantalla no está y aparece sólo para la impresora. */
    .ticket-solo-print {
        display: block !important;
    }

    body {
        background: #fff !important;
    }

    @page {
        margin: 0;
    }
}

.ticket-solo-print {
    display: none;
}
