@media print {
    body.print-pos * {
        visibility: hidden !important;
    }

    body.print-pos .print-target,
    body.print-pos .print-target * {
        visibility: visible !important;
    }

    @page {
        margin: 0 !important;
        size: auto;
    }

    html, body {
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
        overflow: visible !important;
        height: auto !important;
        width: auto !important;
    }

        body.print-pos .print-target:not(#pos-ticket-lista-consulta) {
            display: block !important;
            position: absolute !important;
            top: 0 !important;
            left: 0 !important;
            width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            background: #fff !important;
            box-sizing: border-box !important;
            overflow: visible !important;
            transform-origin: top left !important;
            page-break-before: avoid !important;
            page-break-after: avoid !important;
            break-before: avoid-page !important;
            break-after: avoid-page !important;
            transform: none !important;
        }

        /* Lista consulta: ancho térmico fijo, centrado en el rollo */
        body.print-pos #pos-ticket-lista-consulta.print-target {
            display: block !important;
            position: absolute !important;
            top: 0 !important;
            left: 50% !important;
            right: auto !important;
            width: var(--posWidth, 80mm) !important;
            max-width: var(--posWidth, 80mm) !important;
            margin: 0 !important;
            padding: 0 !important;
            background: #fff !important;
            box-sizing: border-box !important;
            overflow: visible !important;
            transform: translateX(-50%) !important;
            transform-origin: top center !important;
            margin-top: var(--posOffsetMm, 0mm) !important;
        }

        body.print-pos #pos-ticket.print-target,
        body.print-pos #pos-ticket-parley.print-target,
        body.print-pos #pos-ticket-monazo.print-target {
            margin-top: var(--posOffsetMm, 0mm) !important;
        }

        body.print-pos .print-target#pos-ticket-premiados {
            margin-top: 0 !important;
        }
}
