Custom Post Type to override theme’s CSS & HTML from Plugins Dir?

The code below retrieves the custom post type of the currently displayed content and then decides wheter to print on of your stylesheets. Everything happens depending on your page name. You could also var_dump($ctp_obj_name); or printr($ctp_obj_name); and look what else the custom post type object has to offer and decide what you’ll use instead of the name.

The following should reside in your functions.php or in some file included from there:

add_action( 'init', 'print_squeeze_style' );
function print_squeeze_style() {
    define( 'YOUR_PATH', get_bloginfo('stylesheetpath').'/squeeze_css_dir/' ); // define css folder for squeeze here
    $post_type="your_custom_post_type"; // define custom post type name here

    // ID of post type currently displayed 
    $ctp_ID = get_the_ID();
        // retrieve the whole ctp object of the current "post"
        $ctp_obj = get_post_type( $ctp_ID );
            $ctp_obj_name = $ctp_obj->name; // get name
            $ctp_obj_type = $post->post_type; // type

    // file name depending on Custom Post Type Page Name
    if ( $ctp_obj_name == 'page name A' ) {
        $file="filename_a.css";
    }
    elseif ( $ctp_obj_name == 'page name B' ) {
        $file="filename_b.css";
    }
    else {
        $file="filename_default.css";
    }

    // Register the stylesheet for printing
    if ( post_type_exists( $post_type ) )
        wp_register_style( 'squeeze-css', YOUR_PATH.$file, false, '0.0', 'screen' );


    // print styles depending on Custom Post Type Page Name
    // Then output/print style in head
    if ( $ctp_obj_type == $post_type ) {
        add_action( 'wp_head', wp_print_styles( 'squeeze-css' ) );
    }
}

As stated below (please upvote previous Answers too), you’ll need an filter on the body_class() function output to do stuff like body.squeeze div.wrapper div.post .some_element_class

add_filter( 'body_class', 'body_class_for_squeeze' );
function body_class_for_squeeze( $classes ) {
    $post_type="your_custom_post_type"; // define custom post type name here
    // ID of post type currently displayed 
    $ctp_ID = get_the_ID();
    // retrieve the whole ctp object of the current "post"
    $ctp_obj = get_post_type( $ctp_ID );
        $ctp_obj_name = $ctp_obj->name; // get name
        $ctp_obj_type = $post->post_type; // type

        // abort if we're not on a squeeze page
        if ( $ctp_obj_type !== $post_type )
            return;
            $classes[] .= 'squeeze';

    return $classes;
}