 <style>
        body { font-family: 'Roboto', sans-serif; }
        
        .font-serif-lux { font-family: 'Cormorant Garamond', serif; }
        .font-serif-classic { font-family: 'Playfair Display', serif; }
        .font-sans-clean { font-family: 'Montserrat', sans-serif; }
        .font-sans-lato { font-family: 'Lato', sans-serif; }
        .font-sans-roboto { font-family: 'Roboto', sans-serif; }
        
        ::-webkit-scrollbar { width: 6px; height: 6px; }
        ::-webkit-scrollbar-track { background: #f5f5f4; }
        ::-webkit-scrollbar-thumb { background: #d6d3d1; border-radius: 3px; }
        ::-webkit-scrollbar-thumb:hover { background: #a8a29e; }

        @page { size: A4 landscape; margin: 0; }
        @page portrait-page { size: A4 portrait; margin: 0; }

       /* Simulación física de páginas (Formato 100% Móvil Vertical) */
       .print-page { 
            width: 794px; /* Mantenemos el ancho perfecto de móvil */
            height: auto !important;      /* ¡Tu idea! Crece según la información */
            min-height: 1122px;           /* Un mínimo para que no quede muy vacía */
            max-height: none !important;  /* Quitamos el límite de altura */
            box-sizing: border-box; 
            position: relative; 
            overflow: visible !important; /* Garantiza que NADA se corte */
            display: flex; 
            flex-direction: row; 
            flex-wrap: wrap;              /* Para que caigan en cascada */
            background-color: #ffffff;    /* Evita el fondo negro */
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); 
            page-break-after: always !important; 
            break-after: page !important; 
        }

        /* Reglas para la conversión a PDF (Formato vertical 210mm de ancho) */
        @page {
            size: 210mm 370mm; /* 210mm es el ancho estándar vertical */
            margin: 0;
        }

        @media print {
            body {
                background: #ffffff !important;
                color: #000000 !important;
            }
            .no-print, .no-print-sidebar {
                display: none !important;
            }
            .print-page {
                width: 210mm !important;  /* Ancho vertical en el PDF */
                height: 370mm !important; /* Alto extendido en el PDF */
                min-height: 370mm !important;
                max-height: 370mm !important;
                margin: 0 !important;
                box-shadow: none !important;
                border: none !important;
                border-radius: 0 !important;
                display: flex !important;
                flex-direction: row !important;
                box-sizing: border-box !important;
            }
            img {
                -webkit-print-color-adjust: exact;
                print-color-adjust: exact;
            }
            /* Evitar cortes con html2canvas */
            .print-page * {
                overflow: visible !important;
            }
        }

        .catalog-canvas {
            transform-origin: top center;
            transition: transform 0.2s ease-out;
        }
    </style>