2025-07-27 19:55:19 +02:00
< ? php
/**
* Custom Styling output for Astra Theme .
*
* @ package Astra
* @ subpackage Class
* @ link https :// wpastra . com /
* @ since Astra 1.0 . 0
*/
if ( ! defined ( 'ABSPATH' ) ) {
exit ;
}
/**
* Dynamic CSS
*/
if ( ! class_exists ( 'Astra_Dynamic_CSS' ) ) {
/**
* Dynamic CSS
*/
class Astra_Dynamic_CSS {
/**
* Return CSS Output
*
* @ param string $dynamic_css Astra Dynamic CSS .
* @ param string $dynamic_css_filtered Astra Dynamic CSS Filters .
* @ return string Generated CSS .
*/
public static function return_output ( $dynamic_css , $dynamic_css_filtered = '' ) {
/**
* Contents
* - Variable Declaration
* - Global CSS
* - Typography
* - Page Layout
* - Sidebar Positions CSS
* - Full Width Layout CSS
* - Fluid Width Layout CSS
* - Box Layout CSS
* - Padded Layout CSS
* - Blog
* - Single Blog
* - Typography of Headings
* - Header
* - Footer
* - Main Footer CSS
* - Small Footer CSS
* - 404 Page
* - Secondary
* - Global CSS
*/
/**
* - Variable Declaration
*/
$is_site_rtl = is_rtl ();
$rtl_left = 'left' ;
$rtl_right = 'right' ;
if ( $is_site_rtl ) {
$rtl_left = 'right' ;
$rtl_right = 'left' ;
}
$site_content_width = astra_get_option ( 'site-content-width' , 1200 );
$narrow_container_max_width = astra_get_option ( 'narrow-container-max-width' , apply_filters ( 'astra_narrow_container_width' , 750 ) );
$header_logo_width = astra_get_option ( 'ast-header-responsive-logo-width' );
$container_layout = astra_toggle_layout ( 'ast-site-content-layout' , 'global' , false );
// Get the Global Container Layout based on Global Boxed and Global Sidebar Style.
if ( 'plain-container' === $container_layout ) {
$is_boxed = ( 'boxed' === astra_get_option ( 'site-content-style' ) );
$is_sidebar_boxed = ( 'boxed' === astra_get_option ( 'site-sidebar-style' ) );
$sidebar_layout = astra_get_option ( 'site-sidebar-layout' );
// Apply content boxed layout or boxed layout depending on content/sidebar style.
if ( 'no-sidebar' === $sidebar_layout ) {
if ( $is_boxed ) {
$container_layout = 'boxed-container' ;
}
} elseif ( 'no-sidebar' !== $sidebar_layout ) {
if ( $is_boxed ) {
$container_layout = $is_sidebar_boxed ? 'boxed-container' : 'content-boxed-container' ;
} elseif ( $is_sidebar_boxed ) {
/**
* Case : unboxed container with sidebar boxed
* Container unboxed css is applied through astra_apply_unboxed_container ()
*/
$container_layout = 'boxed-container' ;
}
}
}
$title_color = astra_get_option ( 'header-color-site-title' );
$title_hover_color = astra_get_option ( 'header-color-h-site-title' );
$tagline_color = astra_get_option ( 'header-color-site-tagline' );
$site_title_setting = astra_get_option ( 'display-site-title-responsive' );
$desktop_title_visibility = $site_title_setting [ 'desktop' ] ? 'block' : 'none' ;
$tablet_title_visibility = $site_title_setting [ 'tablet' ] ? 'block' : 'none' ;
$mobile_title_visibility = $site_title_setting [ 'mobile' ] ? 'block' : 'none' ;
$site_tagline_setting = astra_get_option ( 'display-site-tagline-responsive' );
$desktop_tagline_visibility = $site_tagline_setting [ 'desktop' ] ? 'block' : 'none' ;
$tablet_tagline_visibility = $site_tagline_setting [ 'tablet' ] ? 'block' : 'none' ;
$mobile_tagline_visibility = $site_tagline_setting [ 'mobile' ] ? 'block' : 'none' ;
// Site Background Color.
$box_bg_obj = astra_get_option ( 'site-layout-outside-bg-obj-responsive' );
// Override page background with meta value if set.
$meta_background_enabled = astra_get_option_meta ( 'ast-page-background-enabled' );
// Check for third party pages meta.
if ( '' === $meta_background_enabled && astra_with_third_party () ) {
$meta_background_enabled = astra_third_party_archive_meta ( 'ast-page-background-enabled' );
if ( isset ( $meta_background_enabled ) && 'enabled' === $meta_background_enabled ) {
$box_bg_obj = astra_third_party_archive_meta ( 'ast-page-background-meta' );
}
} elseif ( isset ( $meta_background_enabled ) && 'enabled' === $meta_background_enabled ) {
$box_bg_obj = astra_get_option_meta ( 'ast-page-background-meta' );
}
// Color Options.
$text_color = astra_get_option ( 'text-color' );
$theme_color = astra_get_option ( 'theme-color' );
$link_color = astra_get_option ( 'link-color' , $theme_color );
$link_hover_color = astra_get_option ( 'link-h-color' );
$heading_base_color = astra_get_option ( 'heading-base-color' );
// Typography.
$body_font_size = astra_get_option ( 'font-size-body' );
$body_line_height = astra_get_font_extras ( astra_get_option ( 'body-font-extras' ), 'line-height' , 'line-height-unit' );
$para_margin_bottom = astra_get_option ( 'para-margin-bottom' );
$body_text_transform = astra_get_font_extras ( astra_get_option ( 'body-font-extras' ), 'text-transform' );
$body_letter_spacing = astra_get_font_extras ( astra_get_option ( 'body-font-extras' ), 'letter-spacing' , 'letter-spacing-unit' );
$body_text_decoration = astra_get_font_extras ( astra_get_option ( 'body-font-extras' ), 'text-decoration' );
$site_title_font_size = astra_get_option ( 'font-size-site-title' );
$site_tagline_font_size = astra_get_option ( 'font-size-site-tagline' );
$archive_post_title_font_size = astra_get_option ( 'font-size-page-title' );
$archive_post_meta_font_size = astra_get_option ( 'font-size-post-meta' );
$archive_post_tax_font_size = astra_get_option ( 'font-size-post-tax' );
$archive_cards_radius = astra_get_option ( 'post-card-border-radius' );
$archive_cards_overlay = astra_get_option ( 'post-card-featured-overlay' );
$heading_h1_font_size = astra_get_option ( 'font-size-h1' );
$heading_h2_font_size = astra_get_option ( 'font-size-h2' );
$heading_h3_font_size = astra_get_option ( 'font-size-h3' );
$heading_h4_font_size = astra_get_option ( 'font-size-h4' );
$heading_h5_font_size = astra_get_option ( 'font-size-h5' );
$heading_h6_font_size = astra_get_option ( 'font-size-h6' );
/**
* Heading Typography - h1 - h3 .
*/
$headings_font_family = astra_get_option ( 'headings-font-family' );
$headings_font_weight = astra_get_option ( 'headings-font-weight' );
$headings_line_height = astra_get_font_extras ( astra_get_option ( 'headings-font-extras' ), 'line-height' , 'line-height-unit' );
$headings_font_transform = astra_get_font_extras ( astra_get_option ( 'headings-font-extras' ), 'text-transform' );
$h1_font_family = astra_get_option ( 'font-family-h1' );
$h1_font_weight = astra_get_option ( 'font-weight-h1' );
$h1_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-h1' ), 'line-height' , 'line-height-unit' );
$h1_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-h1' ), 'text-transform' );
$h1_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-h1' ), 'letter-spacing' , 'letter-spacing-unit' );
$h1_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-h1' ), 'text-decoration' );
$h2_font_family = astra_get_option ( 'font-family-h2' );
$h2_font_weight = astra_get_option ( 'font-weight-h2' );
$h2_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-h2' ), 'line-height' , 'line-height-unit' );
$h2_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-h2' ), 'text-transform' );
$h2_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-h2' ), 'letter-spacing' , 'letter-spacing-unit' );
$h2_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-h2' ), 'text-decoration' );
$h3_font_family = astra_get_option ( 'font-family-h3' );
$h3_font_weight = astra_get_option ( 'font-weight-h3' );
$h3_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-h3' ), 'line-height' , 'line-height-unit' );
$h3_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-h3' ), 'text-transform' );
$h3_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-h3' ), 'letter-spacing' , 'letter-spacing-unit' );
$h3_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-h3' ), 'text-decoration' );
$h4_font_family = '' ;
$h4_font_weight = '' ;
$h4_line_height = '' ;
$h4_text_transform = '' ;
$h4_letter_spacing = '' ;
$h4_text_decoration = '' ;
$h5_font_family = '' ;
$h5_font_weight = '' ;
$h5_line_height = '' ;
$h5_text_transform = '' ;
$h5_letter_spacing = '' ;
$h5_text_decoration = '' ;
$h6_font_family = '' ;
$h6_font_weight = '' ;
$h6_line_height = '' ;
$h6_text_transform = '' ;
$h6_letter_spacing = '' ;
$h6_text_decoration = '' ;
$is_widget_title_support_font_weight = self :: support_font_css_to_widget_and_in_editor ();
$font_weight_prop = $is_widget_title_support_font_weight ? 'inherit' : 'normal' ;
// Elementor heading margin compatibility.
$elementor_heading_margin_style_comp = self :: elementor_heading_margin_style_comp ();
// Elementor Loop block padding compatibility.
$elementor_container_padding_style_comp = self :: elementor_container_padding_style_comp ();
// Heading px to em conversion compatibility for responsive heading tags.
$heading_font_size_comp = self :: heading_font_size_comp ();
// Elementor button styling compatibility.
$add_body_class = self :: elementor_btn_styling_comp ();
$update_customizer_strctural_defaults = astra_check_is_structural_setup ();
$blog_layout = astra_get_blog_layout ();
// Fallback for H1 - headings typography.
if ( 'inherit' === $h1_font_family ) {
$h1_font_family = $headings_font_family ;
}
if ( $font_weight_prop === $h1_font_weight ) {
$h1_font_weight = $headings_font_weight ;
}
if ( '' == $h1_text_transform ) {
$h1_text_transform = $headings_font_transform ;
}
if ( '' == $h1_line_height ) {
$h1_line_height = $headings_line_height ;
}
// Fallback for H2 - headings typography.
if ( 'inherit' === $h2_font_family ) {
$h2_font_family = $headings_font_family ;
}
if ( $font_weight_prop === $h2_font_weight ) {
$h2_font_weight = $headings_font_weight ;
}
if ( '' == $h2_text_transform ) {
$h2_text_transform = $headings_font_transform ;
}
if ( '' == $h2_line_height ) {
$h2_line_height = $headings_line_height ;
}
// Fallback for H3 - headings typography.
if ( 'inherit' === $h3_font_family ) {
$h3_font_family = $headings_font_family ;
}
if ( $font_weight_prop === $h3_font_weight ) {
$h3_font_weight = $headings_font_weight ;
}
if ( '' == $h3_text_transform ) {
$h3_text_transform = $headings_font_transform ;
}
if ( '' == $h3_line_height ) {
$h3_line_height = $headings_line_height ;
}
// Fallback for H4 - headings typography.
$h4_line_height = $headings_line_height ;
// Fallback for H5 - headings typography.
$h5_line_height = $headings_line_height ;
// Fallback for H6 - headings typography.
$h6_line_height = $headings_line_height ;
if ( astra_has_gcp_typo_preset_compatibility () ) {
$h4_font_family = astra_get_option ( 'font-family-h4' );
$h4_font_weight = astra_get_option ( 'font-weight-h4' );
$h4_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-h4' ), 'line-height' , 'line-height-unit' );
$h4_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-h4' ), 'text-transform' );
$h4_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-h4' ), 'letter-spacing' , 'letter-spacing-unit' );
$h4_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-h4' ), 'text-decoration' );
$h5_font_family = astra_get_option ( 'font-family-h5' );
$h5_font_weight = astra_get_option ( 'font-weight-h5' );
$h5_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-h5' ), 'line-height' , 'line-height-unit' );
$h5_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-h5' ), 'text-transform' );
$h5_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-h5' ), 'letter-spacing' , 'letter-spacing-unit' );
$h5_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-h5' ), 'text-decoration' );
$h6_font_family = astra_get_option ( 'font-family-h6' );
$h6_font_weight = astra_get_option ( 'font-weight-h6' );
$h6_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-h6' ), 'line-height' , 'line-height-unit' );
$h6_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-h6' ), 'text-transform' );
$h6_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-h6' ), 'letter-spacing' , 'letter-spacing-unit' );
$h6_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-h6' ), 'text-decoration' );
// Fallback for H4 - headings typography.
if ( 'inherit' === $h4_font_family ) {
$h4_font_family = $headings_font_family ;
}
if ( $font_weight_prop === $h4_font_weight ) {
$h4_font_weight = $headings_font_weight ;
}
if ( '' == $h4_text_transform ) {
$h4_text_transform = $headings_font_transform ;
}
// Fallback for H5 - headings typography.
if ( 'inherit' === $h5_font_family ) {
$h5_font_family = $headings_font_family ;
}
if ( $font_weight_prop === $h5_font_weight ) {
$h5_font_weight = $headings_font_weight ;
}
if ( '' == $h5_text_transform ) {
$h5_text_transform = $headings_font_transform ;
}
// Fallback for H6 - headings typography.
if ( 'inherit' === $h6_font_family ) {
$h6_font_family = $headings_font_family ;
}
if ( $font_weight_prop === $h6_font_weight ) {
$h6_font_weight = $headings_font_weight ;
}
if ( '' == $h6_text_transform ) {
$h6_text_transform = $headings_font_transform ;
}
}
// Button Styling.
$btn_border_radius_fields = astra_get_option ( 'button-radius-fields' );
$theme_btn_padding = astra_get_option ( 'theme-button-padding' );
$highlight_theme_color = astra_get_foreground_color ( $theme_color );
$button_styling_improved = self :: astra_4_6_4_compatibility ();
// Submenu Border color.
$submenu_border = astra_get_option ( 'primary-submenu-border' );
$primary_submenu_item_border = astra_get_option ( 'primary-submenu-item-border' );
$primary_submenu_b_color = astra_get_option ( 'primary-submenu-b-color' , $theme_color );
$primary_submenu_item_b_color = astra_get_option ( 'primary-submenu-item-b-color' , '#eaeaea' );
// Astra and WordPress-5.8 compatibility.
$is_wp_5_8_support_enabled = self :: is_block_editor_support_enabled ();
// Gutenberg editor improvement.
/** @psalm-suppress InvalidScalarArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
$improve_gb_ui = astra_get_option ( 'improve-gb-editor-ui' , true );
/** @psalm-suppress InvalidScalarArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
$block_editor_legacy_setup = astra_block_based_legacy_setup ();
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
// Footer Bar Colors.
$footer_bg_obj = astra_get_option ( 'footer-bg-obj' );
$footer_color = astra_get_option ( 'footer-color' );
$footer_link_color = astra_get_option ( 'footer-link-color' );
$footer_link_h_color = astra_get_option ( 'footer-link-h-color' );
// Color.
$footer_adv_bg_obj = astra_get_option ( 'footer-adv-bg-obj' );
$footer_adv_text_color = astra_get_option ( 'footer-adv-text-color' );
$footer_adv_widget_title_color = astra_get_option ( 'footer-adv-wgt-title-color' );
$footer_adv_link_color = astra_get_option ( 'footer-adv-link-color' );
$footer_adv_link_h_color = astra_get_option ( 'footer-adv-link-h-color' );
// Header Break Point.
$header_break_point = astra_header_break_point ();
// Custom Buttom menu item.
$header_custom_button_style = astra_get_option ( 'header-main-rt-section-button-style' );
$header_custom_button_text_color = astra_get_option ( 'header-main-rt-section-button-text-color' );
$header_custom_button_text_h_color = astra_get_option ( 'header-main-rt-section-button-text-h-color' );
$header_custom_button_back_color = astra_get_option ( 'header-main-rt-section-button-back-color' );
$header_custom_button_back_h_color = astra_get_option ( 'header-main-rt-section-button-back-h-color' );
$header_custom_button_spacing = astra_get_option ( 'header-main-rt-section-button-padding' );
$header_custom_button_border_color = astra_get_option ( 'header-main-rt-section-button-border-color' );
$header_custom_button_border_h_color = astra_get_option ( 'header-main-rt-section-button-border-h-color' );
$header_custom_button_border_size = astra_get_option ( 'header-main-rt-section-button-border-size' );
$header_custom_trans_button_text_color = astra_get_option ( 'header-main-rt-trans-section-button-text-color' );
$header_custom_trans_button_text_h_color = astra_get_option ( 'header-main-rt-trans-section-button-text-h-color' );
$header_custom_trans_button_back_color = astra_get_option ( 'header-main-rt-trans-section-button-back-color' );
$header_custom_trans_button_back_h_color = astra_get_option ( 'header-main-rt-trans-section-button-back-h-color' );
$header_custom_trans_button_spacing = astra_get_option ( 'header-main-rt-trans-section-button-padding' );
$header_custom_trans_button_radius = astra_get_option ( 'header-main-rt-trans-section-button-border-radius' );
$header_custom_trans_button_border_color = astra_get_option ( 'header-main-rt-trans-section-button-border-color' );
$header_custom_trans_button_border_h_color = astra_get_option ( 'header-main-rt-trans-section-button-border-h-color' );
$header_custom_trans_button_border_size = astra_get_option ( 'header-main-rt-trans-section-button-border-size' );
}
$global_custom_button_border_size = astra_get_option ( 'theme-button-border-group-border-size' );
$btn_border_color = astra_get_option ( 'theme-button-border-group-border-color' );
$btn_border_h_color = astra_get_option ( 'theme-button-border-group-border-h-color' );
/**
* Theme Button Typography
*/
$theme_btn_font_family = astra_get_option ( 'font-family-button' );
$theme_btn_font_size = astra_get_option ( 'font-size-button' );
$theme_btn_font_weight = astra_get_option ( 'font-weight-button' );
$theme_btn_text_transform = astra_get_font_extras ( astra_get_option ( 'font-extras-button' ), 'text-transform' );
$theme_btn_line_height = astra_get_font_extras ( astra_get_option ( 'font-extras-button' ), 'line-height' , 'line-height-unit' );
$theme_btn_letter_spacing = astra_get_font_extras ( astra_get_option ( 'font-extras-button' ), 'letter-spacing' , 'letter-spacing-unit' );
$theme_btn_text_decoration = astra_get_font_extras ( astra_get_option ( 'font-extras-button' ), 'text-decoration' );
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
/**
* Custom Header Button Typography
*/
$header_custom_btn_font_family = astra_get_option ( 'primary-header-button-font-family' );
$header_custom_btn_font_weight = astra_get_option ( 'primary-header-button-font-weight' );
$header_custom_btn_font_size = astra_get_option ( 'primary-header-button-font-size' );
$header_custom_btn_text_transform = astra_get_option ( 'primary-header-button-text-transform' );
$header_custom_btn_line_height = astra_get_option ( 'primary-header-button-line-height' );
$header_custom_btn_letter_spacing = astra_get_option ( 'primary-header-button-letter-spacing' );
$footer_adv_border_width = astra_get_option ( 'footer-adv-border-width' );
$footer_adv_border_color = astra_get_option ( 'footer-adv-border-color' );
}
/**
* Apply text color depends on link color
*/
$btn_text_color = astra_get_option ( 'button-color' );
if ( empty ( $btn_text_color ) ) {
$btn_text_color = astra_get_foreground_color ( $theme_color );
}
/**
* Apply text hover color depends on link hover color
*/
$btn_text_hover_color = astra_get_option ( 'button-h-color' );
if ( empty ( $btn_text_hover_color ) ) {
$btn_text_hover_color = astra_get_foreground_color ( $link_hover_color );
}
$btn_bg_color = astra_get_option ( 'button-bg-color' , $theme_color );
$btn_preset_style = astra_get_option ( 'button-preset-style' );
if ( 'button_04' === $btn_preset_style || 'button_05' === $btn_preset_style || 'button_06' === $btn_preset_style ) {
if ( empty ( $btn_border_color ) ) {
$btn_border_color = $btn_bg_color ;
}
if ( '' === astra_get_option ( 'button-bg-color' ) && '' === astra_get_option ( 'button-color' ) ) {
$btn_text_color = $theme_color ;
} elseif ( '' === astra_get_option ( 'button-color' ) ) {
$btn_text_color = $btn_bg_color ;
}
$btn_bg_color = 'transparent' ;
}
$btn_bg_hover_color = astra_get_option ( 'button-bg-h-color' , $link_hover_color );
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
// Spacing of Big Footer.
$small_footer_divider_color = astra_get_option ( 'footer-sml-divider-color' );
$small_footer_divider = astra_get_option ( 'footer-sml-divider' );
/**
* Small Footer Styling
*/
$small_footer_layout = astra_get_option ( 'footer-sml-layout' , 'footer-sml-layout-1' );
$astra_footer_width = astra_get_option ( 'footer-layout-width' );
}
// Blog Post Title Typography Options.
$single_post_max = astra_get_option ( 'blog-single-width' );
$single_post_max_width = astra_get_option ( 'blog-single-max-width' );
$single_page_max = astra_get_option ( 'page-single-width' );
$single_page_max_width = astra_get_option ( 'page-single-max-width' );
$blog_width = astra_get_option ( 'blog-width' );
$blog_max_width = astra_get_option ( 'blog-max-width' );
$mobile_header_toggle_btn_style_color = astra_get_option ( 'mobile-header-toggle-btn-style-color' , $btn_bg_color );
$mobile_header_toggle_btn_border_radius = astra_get_option ( 'mobile-header-toggle-btn-border-radius' );
$aspect_ratio_type = astra_get_option ( 'blog-image-ratio-type' );
$predefined_scale = astra_get_option ( 'blog-image-ratio-pre-scale' );
$custom_scale_width = astra_get_option ( 'blog-image-custom-scale-width' , 16 );
$custom_scale_height = astra_get_option ( 'blog-image-custom-scale-height' , 9 );
$aspect_ratio = astra_get_dynamic_image_aspect_ratio ( $aspect_ratio_type , $predefined_scale , $custom_scale_width , $custom_scale_height );
$with_aspect_img_width = 'predefined' === $aspect_ratio_type || 'custom' === $aspect_ratio_type ? '100%' : '' ;
/** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
$btn_style_color = astra_get_option ( 'mobile-header-toggle-btn-style-color' , false );
if ( ! $btn_style_color ) {
// button text color.
$menu_btn_color = esc_attr ( astra_get_option ( 'button-color' ) );
} else {
// toggle button color.
$menu_btn_color = astra_get_foreground_color ( $btn_style_color );
}
$css_output = array ();
// Body Font Family.
$body_font_family = astra_body_font_family ();
$body_font_weight = astra_get_option ( 'body-font-weight' );
if ( is_array ( $body_font_size ) ) {
$body_font_size_desktop = isset ( $body_font_size [ 'desktop' ] ) && '' != $body_font_size [ 'desktop' ] ? $body_font_size [ 'desktop' ] : 15 ;
// Convert to appropriate pixels if the unit is 'rem'.
$body_font_size_desktop = ! empty ( $body_font_size [ 'desktop-unit' ] ) && $body_font_size [ 'desktop-unit' ] === 'rem' ? $body_font_size_desktop * 16 : $body_font_size_desktop ;
} else {
$body_font_size_desktop = '' != $body_font_size ? $body_font_size : 15 ;
}
// check the selection color incase of empty/no theme color.
$selection_text_color = 'transparent' === $highlight_theme_color ? '' : $highlight_theme_color ;
$h4_properties = array (
'font-size' => astra_responsive_font ( $heading_h4_font_size , 'desktop' ),
'line-height' => esc_attr ( $headings_line_height ),
);
$h5_properties = array (
'font-size' => astra_responsive_font ( $heading_h5_font_size , 'desktop' ),
'line-height' => esc_attr ( $headings_line_height ),
);
$h6_properties = array (
'font-size' => astra_responsive_font ( $heading_h6_font_size , 'desktop' ),
'line-height' => esc_attr ( $headings_line_height ),
);
if ( astra_has_gcp_typo_preset_compatibility () ) {
$h4_font_properties = array (
'font-weight' => astra_get_css_value ( $h4_font_weight , 'font' ),
'font-family' => astra_get_css_value ( $h4_font_family , 'font' ),
'text-transform' => esc_attr ( $h4_text_transform ),
'line-height' => esc_attr ( $h4_line_height ),
'text-decoration' => esc_attr ( $h4_text_decoration ),
'letter-spacing' => esc_attr ( $h4_letter_spacing ),
);
$h4_properties = array_merge ( $h4_properties , $h4_font_properties );
$h5_font_properties = array (
'font-weight' => astra_get_css_value ( $h5_font_weight , 'font' ),
'font-family' => astra_get_css_value ( $h5_font_family , 'font' ),
'text-transform' => esc_attr ( $h5_text_transform ),
'line-height' => esc_attr ( $h5_line_height ),
'text-decoration' => esc_attr ( $h5_text_decoration ),
'letter-spacing' => esc_attr ( $h5_letter_spacing ),
);
$h5_properties = array_merge ( $h5_properties , $h5_font_properties );
$h6_font_properties = array (
'font-weight' => astra_get_css_value ( $h6_font_weight , 'font' ),
'font-family' => astra_get_css_value ( $h6_font_family , 'font' ),
'text-transform' => esc_attr ( $h6_text_transform ),
'line-height' => esc_attr ( $h6_line_height ),
'text-decoration' => esc_attr ( $h6_text_decoration ),
'letter-spacing' => esc_attr ( $h6_letter_spacing ),
);
$h6_properties = array_merge ( $h6_properties , $h6_font_properties );
}
$link_selector = true === $update_customizer_strctural_defaults ? 'a' : 'a, .page-title' ;
$article_space = self :: astra_4_6_0_compatibility () ? '2.5em' : '3em' ;
$color_palette_reorganize = self :: astra_4_8_9_compatibility ();
$is_dark_palette = Astra_Global_Palette :: is_dark_palette ();
$css_output = array (
':root' => array (
'--ast-post-nav-space' => 0 , // Moved from inc/dynamic-css/single-post.php for the fix of post-navigation issue for the old users. @since 4.6.13
'--ast-container-default-xlg-padding' => true === $update_customizer_strctural_defaults ? $article_space : '6.67em' ,
'--ast-container-default-lg-padding' => true === $update_customizer_strctural_defaults ? $article_space : '5.67em' ,
'--ast-container-default-slg-padding' => true === $update_customizer_strctural_defaults ? '2em' : '4.34em' ,
'--ast-container-default-md-padding' => true === $update_customizer_strctural_defaults ? $article_space : '3.34em' ,
'--ast-container-default-sm-padding' => true === $update_customizer_strctural_defaults ? $article_space : '6.67em' ,
'--ast-container-default-xs-padding' => true === $update_customizer_strctural_defaults ? '2.4em' : '2.4em' ,
'--ast-container-default-xxs-padding' => true === $update_customizer_strctural_defaults ? '1.8em' : '1.4em' ,
'--ast-code-block-background' => true === self :: astra_check_default_color_typo () ? $is_dark_palette ? 'var(--ast-global-color-5)' : '#ECEFF3' : '#EEEEEE' ,
'--ast-comment-inputs-background' => true === self :: astra_check_default_color_typo () ? '#F9FAFB' : '#FAFAFA' ,
'--ast-normal-container-width' => $site_content_width . 'px' ,
'--ast-narrow-container-width' => $narrow_container_max_width . 'px' ,
'--ast-blog-title-font-weight' => self :: astra_4_6_0_compatibility () ? '600' : 'normal' ,
'--ast-blog-meta-weight' => self :: astra_4_6_0_compatibility () ? '600' : 'inherit' ,
'--ast-global-color-primary' => $color_palette_reorganize ? 'var(--ast-global-color-4)' : 'var(--ast-global-color-5)' ,
'--ast-global-color-secondary' => $color_palette_reorganize ? 'var(--ast-global-color-5)' : 'var(--ast-global-color-4)' ,
'--ast-global-color-alternate-background' => $color_palette_reorganize ? 'var(--ast-global-color-6)' : 'var(--ast-global-color-7)' ,
'--ast-global-color-subtle-background' => $color_palette_reorganize ? 'var(--ast-global-color-7)' : 'var(--ast-global-color-6)' ,
'--ast-bg-style-guide' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#F8FAFC' ,
'--ast-shadow-style-guide' => $is_dark_palette ? '0px 0px 4px 0 #ffffff57' : '0px 0px 4px 0 #00000057' ,
'--ast-global-dark-bg-style' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#fff' ,
'--ast-global-dark-lfs' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#fbfbfb' ,
'--ast-widget-bg-color' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#fafafa' ,
'--ast-wc-container-head-bg-color' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#fbfbfb' ,
'--ast-title-layout-bg' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#eeeeee' ,
'--ast-search-border-color' => $is_dark_palette ? 'var(--ast-border-color)' : '#e7e7e7' ,
'--ast-lifter-hover-bg' => $is_dark_palette ? 'var( --ast-global-color-primary, --ast-global-color-4 )' : '#e6e6e6' ,
'--ast-lifter-hover-bg' => $is_dark_palette ? 'var( --ast-global-color-primary, --ast-global-color-4 )' : '#e6e6e6' ,
'--ast-gallery-block-color' => $is_dark_palette ? 'var(--ast-global-color-2)' : '#000' ,
'--srfm-color-input-label' => 'var(--ast-global-color-2)' ,
),
// HTML.
'html' => array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size_desktop * 6.25 , '%' ),
),
$link_selector => array (
'color' => esc_attr ( $link_color ),
),
'a:hover, a:focus' => array (
'color' => esc_attr ( $link_hover_color ),
),
'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array (
'font-family' => astra_get_font_family ( $body_font_family ),
'font-weight' => esc_attr ( $body_font_weight ),
'font-size' => astra_responsive_font ( $body_font_size , 'desktop' ),
'line-height' => ! empty ( $body_line_height ) ? 'var(--ast-body-line-height, ' . esc_attr ( $body_line_height ) . ')' : '' ,
'text-transform' => esc_attr ( $body_text_transform ),
'text-decoration' => esc_attr ( $body_text_decoration ),
'letter-spacing' => esc_attr ( $body_letter_spacing ),
),
'blockquote' => array (
'border-color' => astra_hex_to_rgba ( $link_color , 0.15 ),
),
'p, .entry-content p' => array (
'margin-bottom' => astra_get_css_value ( $para_margin_bottom , 'em' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h1, h2, h3, h4, h5, h6, .entry-content :where(h1, h2, h3, h4, h5, h6), .entry-content :where(h1, h2, h3, h4, h5, h6) a, .site-title, .site-title a' ,
'h1, h2, h3, h4, h5, h6, .entry-content :where(h1, h2, h3, h4, h5, h6), .site-title, .site-title a'
2025-07-27 19:55:19 +02:00
) => astra_get_font_array_css ( astra_get_option ( 'headings-font-family' ), astra_get_option ( 'headings-font-weight' ), array (), 'headings-font-extras' ),
'.ast-site-identity .site-title a' => array (
'color' => esc_attr ( $title_color ),
),
'.ast-site-identity .site-title a:hover' => array (
'color' => esc_attr ( $title_hover_color ),
),
'.ast-site-identity .site-description' => array (
'color' => esc_attr ( $tagline_color ),
),
'.site-title' => array (
'font-size' => astra_responsive_font ( $site_title_font_size , 'desktop' ),
'display' => esc_attr ( $desktop_title_visibility ),
),
is_customize_preview () ? '.ast-sg-logo-section .custom-logo-link img, header .custom-logo-link img' : 'header .custom-logo-link img' => array (
'max-width' => astra_get_css_value ( $header_logo_width [ 'desktop' ], 'px' ),
'width' => astra_get_css_value ( $header_logo_width [ 'desktop' ], 'px' ),
),
'.astra-logo-svg' => array (
'width' => astra_get_css_value ( $header_logo_width [ 'desktop' ], 'px' ),
),
'.site-header .site-description' => array (
'font-size' => astra_responsive_font ( $site_tagline_font_size , 'desktop' ),
'display' => esc_attr ( $desktop_tagline_visibility ),
),
'.entry-title' => array (
'font-size' => astra_responsive_font ( $archive_post_title_font_size , 'desktop' ),
),
'.ast-blog-single-element.ast-taxonomy-container a' => array (
'font-size' => astra_responsive_font ( $archive_post_tax_font_size , 'desktop' ),
),
'.ast-blog-meta-container' => array (
'font-size' => astra_responsive_font ( $archive_post_meta_font_size , 'desktop' ),
),
'blog-layout-5' === $blog_layout ? '.archive .ast-article-post, .blog .ast-article-post, .archive .ast-article-post:hover, .blog .ast-article-post:hover' : '.archive .ast-article-post .ast-article-inner, .blog .ast-article-post .ast-article-inner, .archive .ast-article-post .ast-article-inner:hover, .blog .ast-article-post .ast-article-inner:hover' => array (
'border-top-left-radius' => astra_responsive_spacing ( $archive_cards_radius , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $archive_cards_radius , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $archive_cards_radius , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $archive_cards_radius , 'left' , 'desktop' ),
'overflow' => 'hidden' ,
),
// Conditionally select the css selectors with or without anchors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h1, .entry-content :where(h1), .entry-content :where(h1) a' ,
'h1, .entry-content :where(h1)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h1_font_size , 'desktop' ),
'font-weight' => astra_get_css_value ( $h1_font_weight , 'font' ),
'font-family' => astra_get_css_value ( $h1_font_family , 'font' ),
'line-height' => esc_attr ( $h1_line_height ),
'text-transform' => esc_attr ( $h1_text_transform ),
'text-decoration' => esc_attr ( $h1_text_decoration ),
'letter-spacing' => esc_attr ( $h1_letter_spacing ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h2, .entry-content :where(h2), .entry-content :where(h2) a' ,
'h2, .entry-content :where(h2)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h2_font_size , 'desktop' ),
'font-weight' => astra_get_css_value ( $h2_font_weight , 'font' ),
'font-family' => astra_get_css_value ( $h2_font_family , 'font' ),
'line-height' => esc_attr ( $h2_line_height ),
'text-transform' => esc_attr ( $h2_text_transform ),
'text-decoration' => esc_attr ( $h2_text_decoration ),
'letter-spacing' => esc_attr ( $h2_letter_spacing ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h3, .entry-content :where(h3), .entry-content :where(h3) a' ,
'h3, .entry-content :where(h3)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h3_font_size , 'desktop' ),
'font-weight' => astra_get_css_value ( $h3_font_weight , 'font' ),
'font-family' => astra_get_css_value ( $h3_font_family , 'font' ),
'line-height' => esc_attr ( $h3_line_height ),
'text-transform' => esc_attr ( $h3_text_transform ),
'text-decoration' => esc_attr ( $h3_text_decoration ),
'letter-spacing' => esc_attr ( $h3_letter_spacing ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h4, .entry-content :where(h4), .entry-content :where(h4) a' ,
'h4, .entry-content :where(h4)'
2025-07-27 19:55:19 +02:00
) => $h4_properties ,
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h5, .entry-content :where(h5), .entry-content :where(h5) a' ,
'h5, .entry-content :where(h5)'
2025-07-27 19:55:19 +02:00
) => $h5_properties ,
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h6, .entry-content :where(h6), .entry-content :where(h6) a' ,
'h6, .entry-content :where(h6)'
2025-07-27 19:55:19 +02:00
) => $h6_properties ,
// Global CSS.
'::selection' => array (
'background-color' => esc_attr ( $theme_color ),
'color' => esc_attr ( $selection_text_color ),
),
// Conditionally select selectors with annchors or withour anchors for text color.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'body, h1, h2, h3, h4, h5, h6, .entry-title a, .entry-content :where(h1, h2, h3, h4, h5, h6), .entry-content :where(h1, h2, h3, h4, h5, h6) a' ,
'body, h1, h2, h3, h4, h5, h6, .entry-title a, .entry-content :where(h1, h2, h3, h4, h5, h6)'
2025-07-27 19:55:19 +02:00
) => array (
'color' => esc_attr ( $text_color ),
),
// Typography.
'.tagcloud a:hover, .tagcloud a:focus, .tagcloud a.current-item' => array (
'color' => astra_get_foreground_color ( $link_color ),
'border-color' => esc_attr ( $link_color ),
'background-color' => esc_attr ( $link_color ),
),
// Input tags.
'input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="search"]:focus, textarea:focus' => array (
'border-color' => esc_attr ( $link_color ),
),
'input[type="radio"]:checked, input[type=reset], input[type="checkbox"]:checked, input[type="checkbox"]:hover:checked, input[type="checkbox"]:focus:checked, input[type=range]::-webkit-slider-thumb' => array (
'border-color' => esc_attr ( $link_color ),
'background-color' => esc_attr ( $link_color ),
'box-shadow' => 'none' ,
),
// Small Footer.
'.site-footer a:hover + .post-count, .site-footer a:focus + .post-count' => array (
'background' => esc_attr ( $link_color ),
'border-color' => esc_attr ( $link_color ),
),
'.single .nav-links .nav-previous, .single .nav-links .nav-next' => array (
'color' => esc_attr ( $link_color ),
),
// Blog Post Meta Typography.
'.entry-meta, .entry-meta *' => array (
'line-height' => '1.45' ,
'color' => esc_attr ( $link_color ),
'font-weight' => self :: astra_4_6_0_compatibility () && ! defined ( 'ASTRA_EXT_VER' ) ? '600' : '' ,
),
'.entry-meta a:not(.ast-button):hover, .entry-meta a:not(.ast-button):hover *, .entry-meta a:not(.ast-button):focus, .entry-meta a:not(.ast-button):focus *, .page-links > .page-link, .page-links .page-link:hover, .post-navigation a:hover' => array (
'color' => esc_attr ( $link_hover_color ),
),
// Blockquote Text Color.
'blockquote' => array (
'color' => astra_adjust_brightness ( $text_color , 75 , 'darken' ),
),
'#cat option, .secondary .calendar_wrap thead a, .secondary .calendar_wrap thead a:visited' => array (
'color' => esc_attr ( $link_color ),
),
'.secondary .calendar_wrap #today, .ast-progress-val span' => array (
'background' => esc_attr ( $link_color ),
),
'.secondary a:hover + .post-count, .secondary a:focus + .post-count' => array (
'background' => esc_attr ( $link_color ),
'border-color' => esc_attr ( $link_color ),
),
'.calendar_wrap #today > a' => array (
'color' => astra_get_foreground_color ( $link_color ),
),
// Pagination.
'.page-links .page-link, .single .post-navigation a' => array (
'color' => esc_attr ( self :: astra_4_6_0_compatibility () ? $text_color : $link_color ),
),
// Menu Toggle Border Radius.
'.ast-header-break-point .main-header-bar .ast-button-wrap .menu-toggle' => array (
'border-radius' => '' !== $mobile_header_toggle_btn_border_radius ? esc_attr ( $mobile_header_toggle_btn_border_radius ) . 'px' : '' ,
),
// Search.
'.ast-search-menu-icon .search-form button.search-submit' => array (
'padding' => '0 4px' ,
),
'.ast-search-menu-icon form.search-form' => array (
'padding-right' => '0' ,
),
'.ast-search-menu-icon.slide-search input.search-field' => array (
'width' => Astra_Builder_Helper :: $is_header_footer_builder_active ? '0' : '' ,
),
'.ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-form, .ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-field:focus' => array (
'transition' => 'all 0.2s' ,
'border-color' => astra_get_option ( 'site-accessibility-highlight-input-color' ),
),
'.search-form input.search-field:focus' => array (
'outline' => 'none' , // Making highlight by border that's why making outline none.
),
);
if ( 'blog-layout-6' === $blog_layout ) {
$css_output [ '.ast-blog-layout-6-grid .ast-article-inner .post-thumb::after' ] = array (
'content' => '""' ,
'background' => $archive_cards_overlay ,
'position' => 'absolute' ,
'top' => '0' ,
'right' => '0' ,
'bottom' => '0' ,
'left' => '0' ,
);
}
if ( self :: astra_4_4_0_compatibility () ) {
$css_output [ '.ast-search-menu-icon .search-form button.search-submit:focus, .ast-theme-transparent-header .ast-header-search .ast-dropdown-active .ast-icon, .ast-theme-transparent-header .ast-inline-search .search-field:focus .ast-icon' ] = array (
'color' => 'var(--ast-global-color-1)' ,
);
$css_output [ '.ast-header-search .slide-search .search-form' ] = array (
'border' => '2px solid var(--ast-global-color-0)' ,
);
// Reduced specificity so that it does not override customizer background color option.
$css_output [ '.ast-header-search .slide-search .search-field' ] = array (
'background-color' => 'var(--ast-global-dark-bg-style)' , // Referred by main.css.
);
}
/* This is a fix issue with logo height for normal and transparent logo so that they are the same */
if ( ! apply_filters ( 'astra_site_svg_logo_equal_height' , astra_get_option ( 'astra-site-svg-logo-equal-height' , true ) ) ) {
$css_output [ '.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' ] = array (
'height' => astra_get_css_value ( ! empty ( $header_logo_width [ 'desktop-svg-height' ] ) && ! is_customize_preview () ? $header_logo_width [ 'desktop-svg-height' ] : '' , 'px' ),
);
}
/* Compatibility with cost calculator plugin range slider*/
if ( defined ( 'CALC_VERSION' ) ) {
$css_output [ '.calc-range-slider input::-webkit-slider-runnable-track' ] = array (
'height' => 'auto' ,
'box-shadow' => 'none' ,
'background' => 'transparent' ,
'border-radius' => 'none' ,
'border' => 'none' ,
);
$css_output [ '.calc-range-slider input::-moz-range-track' ] = array (
'height' => 'auto' ,
'box-shadow' => 'none' ,
'background' => 'transparent' ,
'border-radius' => 'none' ,
'border' => 'none' ,
);
$css_output [ '.calc-range-slider input::-webkit-slider-thumb' ] = array (
'margin-top' => 'auto' ,
);
}
if ( astra_has_global_color_format_support () ) {
$css_output [ '.ast-archive-title' ] = array (
'color' => esc_attr ( $heading_base_color ),
);
}
if ( ! $block_editor_legacy_setup && false === $update_customizer_strctural_defaults ) {
$css_output [ '.wp-block-latest-posts > li > a' ] = array (
'color' => esc_attr ( $heading_base_color ),
);
}
// Construct the selector string conditionally
$selectors = '.widget-title' ;
if ( ! self :: astra_heading_inside_widget_font_size_comp () ) {
$selectors .= ', .widget .wp-block-heading' ;
}
// Default widget title color.
$css_output [ $selectors ] = array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size_desktop * 1.428571429 ),
'color' => astra_has_global_color_format_support () ? esc_attr ( $heading_base_color ) : esc_attr ( $text_color ),
);
// Remove this condition after 2-3 updates of add-on.
if ( defined ( 'ASTRA_EXT_VER' ) && version_compare ( ASTRA_EXT_VER , '3.0.1' , '>=' ) ) {
$css_output [ '.single .ast-author-details .author-title' ] = array (
'color' => esc_attr ( $link_hover_color ),
);
}
if ( 'no-sidebar' !== astra_page_layout () ) {
$css_output [ '#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' ] = array (
'font-size' => astra_responsive_font ( $body_font_size , 'desktop' ),
);
}
// Add underline to every link in content area.
$content_links_underline = astra_get_option ( 'underline-content-links' );
if ( $content_links_underline ) {
$text_decoration_selector = class_exists ( 'WooCommerce' ) ? '.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a), .woocommerce-js .woocommerce-product-details__short-description a' : '.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a)' ;
$css_output [ $text_decoration_selector ] = array (
'text-decoration' => 'underline' ,
);
$reset_underline_from_anchors = self :: unset_builder_elements_underline ();
2025-07-27 19:58:08 +02:00
$buttons_exclusion_selectors = astra_parse_selector (
$button_styling_improved
? '.ast-single-post .elementor-widget-button .elementor-button, .ast-single-post .entry-content .uagb-tab a, .ast-single-post .entry-content .uagb-ifb-cta a, .ast-single-post .entry-content .uabb-module-content a, .ast-single-post .entry-content .uagb-post-grid a, .ast-single-post .entry-content .uagb-timeline a, .ast-single-post .entry-content .uagb-toc__wrap a, .ast-single-post .entry-content .uagb-taxomony-box a, .ast-single-post .entry-content .woocommerce a, .entry-content .wp-block-latest-posts > li > a, .ast-single-post .entry-content .wp-block-file__button, a.ast-post-filter-single, .ast-single-post .ast-comment-content .comment-reply-link, .ast-single-post .ast-comment-content .comment-edit-link'
: '.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-widget-button .elementor-button, .ast-single-post .entry-content .uagb-tab a, .ast-single-post .entry-content .uagb-ifb-cta a, .ast-single-post .entry-content .wp-block-uagb-buttons a, .ast-single-post .entry-content .uabb-module-content a, .ast-single-post .entry-content .uagb-post-grid a, .ast-single-post .entry-content .uagb-timeline a, .ast-single-post .entry-content .uagb-toc__wrap a, .ast-single-post .entry-content .uagb-taxomony-box a, .ast-single-post .entry-content .woocommerce a, .entry-content .wp-block-latest-posts > li > a, .ast-single-post .entry-content .wp-block-file__button, a.ast-post-filter-single, .ast-single-post .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, .ast-single-post .ast-comment-content .comment-reply-link, .ast-single-post .ast-comment-content .comment-edit-link' ,
array ( 'wc' , 'el' )
);
2025-07-27 19:55:19 +02:00
$excluding_anchor_selectors = $reset_underline_from_anchors ? $buttons_exclusion_selectors : '.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-widget-button .elementor-button, a.ast-post-filter-single, .ast-single-post .wp-block-button.is-style-outline .wp-block-button__link, div.ast-custom-button, .ast-single-post .ast-comment-content .comment-reply-link, .ast-single-post .ast-comment-content .comment-edit-link' ;
if ( class_exists ( 'WooCommerce' ) ) {
$excluding_anchor_selectors .= ', .entry-content [CLASS*="wc-block"] .wc-block-components-button, .entry-content [CLASS*="wc-block"] .wc-block-components-totals-coupon-link, .entry-content [CLASS*="wc-block"] .wc-block-components-product-name' ;
}
$excluding_anchor_selectors = apply_filters ( 'astra_remove_underline_anchor_links' , $excluding_anchor_selectors );
$css_output [ $excluding_anchor_selectors ] = array (
'text-decoration' => 'none' ,
);
}
// Accessibility options.
$enable_site_accessibility = astra_get_option ( 'site-accessibility-toggle' , false );
2025-08-27 08:44:30 +02:00
$html_selectors_focus_visible = astra_parse_selector ( '.ast-search-menu-icon.slide-search a:focus-visible:focus-visible, .astra-search-icon:focus-visible, #close:focus-visible, a:focus-visible, .ast-menu-toggle:focus-visible, .site .skip-link:focus-visible, .wp-block-loginout input:focus-visible, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper, .ast-header-navigation-arrow:focus-visible, .woocommerce .wc-proceed-to-checkout > .checkout-button:focus-visible, .woocommerce .woocommerce-MyAccount-navigation ul li a:focus-visible, .ast-orders-table__row .ast-orders-table__cell:focus-visible, .woocommerce .woocommerce-order-details .order-again > .button:focus-visible, .woocommerce .woocommerce-message a.button.wc-forward:focus-visible, .woocommerce #minus_qty:focus-visible, .woocommerce #plus_qty:focus-visible, a#ast-apply-coupon:focus-visible, .woocommerce .woocommerce-info a:focus-visible, .woocommerce .astra-shop-summary-wrap a:focus-visible, .woocommerce a.wc-forward:focus-visible, #ast-apply-coupon:focus-visible, .woocommerce-js .woocommerce-mini-cart-item a.remove:focus-visible, #close:focus-visible, .button.search-submit:focus-visible, #search_submit:focus, .normal-search:focus-visible, .ast-header-account-wrap:focus-visible, .woocommerce .ast-on-card-button.ast-quick-view-trigger:focus, .astra-cart-drawer-close:focus, .ast-single-variation:focus, .ast-woocommerce-product-gallery__image:focus, .ast-button:focus, .woocommerce-product-gallery--with-images [data-controls="prev"]:focus-visible, .woocommerce-product-gallery--with-images [data-controls="next"]:focus-visible' , 'wc' );
2025-07-27 19:58:08 +02:00
$html_selectors_focus_only_inputs = astra_parse_selector ( 'input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="search"]:focus, input[type="number"]:focus, textarea:focus, .wp-block-search__input:focus, [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, .ast-mobile-popup-drawer.active .menu-toggle-close:focus, .woocommerce-ordering select.orderby:focus, #ast-scroll-top:focus, #coupon_code:focus, .woocommerce-page #comment:focus, .woocommerce #reviews #respond input#submit:focus, .woocommerce a.add_to_cart_button:focus, .woocommerce .button.single_add_to_cart_button:focus, .woocommerce .woocommerce-cart-form button:focus, .woocommerce .woocommerce-cart-form__cart-item .quantity .qty:focus, .woocommerce .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus, .woocommerce #order_comments:focus, .woocommerce #place_order:focus, .woocommerce .woocommerce-address-fields .woocommerce-address-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus, .woocommerce .woocommerce-MyAccount-content form button:focus, .woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-form-row .woocommerce-Input.input-text:focus, .woocommerce .ast-woocommerce-container .woocommerce-pagination ul.page-numbers li a:focus, body #content .woocommerce form .form-row .select2-container--default .select2-selection--single:focus, #ast-coupon-code:focus, .woocommerce.woocommerce-js .quantity input[type=number]:focus, .woocommerce-js .woocommerce-mini-cart-item .quantity input[type=number]:focus, .woocommerce p#ast-coupon-trigger:focus' , 'wc' );
2025-07-27 19:55:19 +02:00
if ( $enable_site_accessibility ) {
$outline_style = astra_get_option ( 'site-accessibility-highlight-type' );
$outline_color = astra_get_option ( 'site-accessibility-highlight-color' );
$outline_input_style = astra_get_option ( 'site-accessibility-highlight-input-type' );
// If the outline input style is set to 'disable', change it to 'unset' css value.
if ( $outline_input_style === 'disable' ) {
$outline_input_style = 'unset' ;
}
$outline_input_color = astra_get_option ( 'site-accessibility-highlight-input-color' );
$css_output [ $html_selectors_focus_visible ] = array (
'outline-style' => $outline_style ? $outline_style : 'inherit' ,
'outline-color' => $outline_color ? $outline_color : 'inherit' ,
'outline-width' => 'thin' ,
'border-color' => astra_get_option ( 'site-accessibility-highlight-input-color' ),
);
if ( 'unset' !== $outline_input_style ) {
$css_output [ $html_selectors_focus_only_inputs ] = array (
'border-style' => $outline_input_style ? $outline_input_style : 'inherit' ,
'border-color' => $outline_input_color ? $outline_input_color : 'inherit' ,
'border-width' => 'thin' ,
'outline-color' => astra_get_option ( 'site-accessibility-highlight-input-color' ),
);
} else {
$css_output [ $html_selectors_focus_only_inputs ] = array (
'border-style' => $outline_style ? $outline_style : 'inherit' ,
'border-color' => $outline_color ? $outline_color : 'inherit' ,
'border-width' => 'thin' ,
'outline-color' => astra_get_option ( 'site-accessibility-highlight-input-color' ),
);
}
$css_output [ 'input' ] = array (
'outline' => 'none' ,
);
if ( class_exists ( 'WooCommerce' ) ) {
$css_output [ '.woocommerce-js input[type=text]:focus, .woocommerce-js input[type=email]:focus, .woocommerce-js textarea:focus, input[type=number]:focus, .comments-area textarea#comment:focus, .comments-area textarea#comment:active, .comments-area .ast-comment-formwrap input[type="text"]:focus, .comments-area .ast-comment-formwrap input[type="text"]:active' ] = array (
'outline-style' => $outline_input_style ? $outline_input_style : 'inherit' ,
'outline-color' => $outline_input_color ? $outline_input_color : 'inherit' ,
'outline-width' => 'thin' ,
'border-color' => astra_get_option ( 'site-accessibility-highlight-input-color' ),
);
}
}
if ( false === $enable_site_accessibility ) {
$css_output [ $html_selectors_focus_only_inputs . ', ' . $html_selectors_focus_visible ] = array (
'outline-style' => 'none' ,
);
$css_output [ '.ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-form, .ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-field:focus' ] = array (
'border-color' => 'var(--ast-global-color-0)' ,
);
}
if ( self :: astra_4_4_0_compatibility () ) {
$css_output [ '.ast-search-menu-icon .search-form button.search-submit:focus, .ast-theme-transparent-header .ast-header-search .ast-dropdown-active .ast-icon, .ast-theme-transparent-header .ast-inline-search .search-field:focus .ast-icon' ] = array (
'color' => 'var(--ast-global-color-1)' ,
);
if ( false === $enable_site_accessibility ) {
$css_output [ '.ast-header-search .slide-search .search-form' ] = array (
'border' => '2px solid var(--ast-global-color-0)' ,
);
}
// Reduced specificity so that it does not override customizer background color option.
$css_output [ '.ast-header-search .slide-search .search-field' ] = array (
'background-color' => '(--ast-global-dark-bg-style)' , // Referred by main.css.
);
}
/**
* Loaded the following CSS conditionally because of following scenarios -
*
* 1. $text_color is applying to menu - link anchors as well though $link_color should apply over there .
* 2. $link_color applying in old header as hover color for menu - anchors .
*
* @ since 3.0 . 0
*/
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
// Header - Main Header CSS.
$css_output [ '.main-header-menu .menu-link, .ast-header-custom-item a' ] = array (
'color' => esc_attr ( $text_color ),
);
// Main - Menu Items.
$css_output [ '.main-header-menu .menu-item:hover > .menu-link, .main-header-menu .menu-item:hover > .ast-menu-toggle, .main-header-menu .ast-masthead-custom-menu-items a:hover, .main-header-menu .menu-item.focus > .menu-link, .main-header-menu .menu-item.focus > .ast-menu-toggle, .main-header-menu .current-menu-item > .menu-link, .main-header-menu .current-menu-ancestor > .menu-link, .main-header-menu .current-menu-item > .ast-menu-toggle, .main-header-menu .current-menu-ancestor > .ast-menu-toggle' ] = array (
'color' => esc_attr ( $link_color ),
);
$css_output [ '.header-main-layout-3 .ast-main-header-bar-alignment' ] = array (
'margin-right' => 'auto' ,
);
if ( $is_site_rtl ) {
$css_output [ '.header-main-layout-2 .site-header-section-left .ast-site-identity' ] = array (
'text-align' => 'right' ,
);
} else {
$css_output [ '.header-main-layout-2 .site-header-section-left .ast-site-identity' ] = array (
'text-align' => 'left' ,
);
}
}
$page_header_logo = defined ( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension :: is_active ( 'advanced-headers' ) && Astra_Ext_Advanced_Headers_Loader :: astra_advanced_headers_design_option ( 'logo-url' ) ? true : false ;
if ( astra_get_option ( 'logo-title-inline' ) || is_customize_preview () ) {
$css_output [ '.ast-logo-title-inline .site-logo-img' ] = array (
'padding-right' => '1em' ,
);
}
if ( get_theme_mod ( 'custom_logo' )
|| astra_get_option ( 'transparent-header-logo' )
|| astra_get_option ( 'sticky-header-logo' )
|| $page_header_logo
|| is_customize_preview () ) {
$css_output [ '.site-logo-img img' ] = array (
' transition' => 'all 0.2s linear' ,
);
if ( astra_get_option ( 'header-logo-color' ) ) {
$css_output [ '.site-logo-img img' ] = array (
'filter' => 'url(#ast-img-color-filter)' ,
' transition' => 'all 0.2s linear' ,
);
}
if ( astra_get_option ( 'transparent-header-logo-color' ) ) {
$css_output [ '.site-logo-img .transparent-custom-logo img, .ast-theme-transparent-header .site-logo-img img' ] = array (
'filter' => 'url(#ast-img-color-filter-2)' ,
);
}
}
$parse_css = '' ;
if ( $block_editor_legacy_setup ) {
$parse_css .= '
. ast - no - sidebar . entry - content . alignfull {
margin - left : calc ( - 50 vw + 50 % );
margin - right : calc ( - 50 vw + 50 % );
max - width : 100 vw ;
width : 100 vw ;
}
. ast - no - sidebar . entry - content . alignwide {
margin - left : calc ( - 41 vw + 50 % );
margin - right : calc ( - 41 vw + 50 % );
max - width : unset ;
width : unset ;
}
. ast - no - sidebar . entry - content . alignfull . alignfull , . ast - no - sidebar . entry - content . alignfull . alignwide , . ast - no - sidebar . entry - content . alignwide . alignfull , . ast - no - sidebar . entry - content . alignwide . alignwide ,
. ast - no - sidebar . entry - content . wp - block - column . alignfull , . ast - no - sidebar . entry - content . wp - block - column . alignwide {
width : 100 % ;
margin - left : auto ;
margin - right : auto ;
}
. wp - block - gallery ,
. blocks - gallery - grid {
margin : 0 ;
}
. wp - block - separator {
max - width : 100 px ;
}
. wp - block - separator . is - style - wide , . wp - block - separator . is - style - dots {
max - width : none ;
}
. entry - content . has - 2 - columns . wp - block - column : first - child {
padding - right : 10 px ;
}
. entry - content . has - 2 - columns . wp - block - column : last - child {
padding - left : 10 px ;
}
@ media ( max - width : 782 px ) {
. entry - content . wp - block - columns . wp - block - column {
flex - basis : 100 % ;
}
. entry - content . has - 2 - columns . wp - block - column : first - child {
padding - right : 0 ;
}
. entry - content . has - 2 - columns . wp - block - column : last - child {
padding - left : 0 ;
}
}
body . entry - content . wp - block - latest - posts {
margin - left : 0 ;
}
body . entry - content . wp - block - latest - posts li {
list - style : none ;
}
. ast - no - sidebar . ast - container . entry - content . wp - block - latest - posts {
margin - left : 0 ;
}
. ast - header - break - point . entry - content . alignwide {
margin - left : auto ;
margin - right : auto ;
}
. entry - content . blocks - gallery - item img {
margin - bottom : auto ;
}
. wp - block - pullquote {
border - top : 4 px solid #555d66;
border - bottom : 4 px solid #555d66;
color : #40464d;
}
' ;
}
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $css_output );
if ( defined ( 'BORLABS_COOKIE_VERSION' ) ) {
$oembed_wrapper = array (
'body .ast-oembed-container > *' => array (
'position' => 'absolute' ,
'top' => '0' ,
'width' => '100%' ,
'height' => '100%' ,
( $is_site_rtl ? 'right' : 'left' ) => '0' ,
),
);
} else {
$oembed_wrapper = array (
'body .ast-oembed-container *' => array (
'position' => 'absolute' ,
'top' => '0' ,
'width' => '100%' ,
'height' => '100%' ,
( $is_site_rtl ? 'right' : 'left' ) => '0' ,
),
);
}
/**
* Special case handling for pocket casts embed url .
*
* @ since 4.6 . 4
*/
$oembed_wrapper [ 'body .wp-block-embed-pocket-casts .ast-oembed-container *' ] = array (
'position' => 'unset' ,
);
$parse_css .= astra_parse_css ( $oembed_wrapper );
if ( ! Astra_Builder_Helper :: $is_header_footer_builder_active ) {
$old_header_mobile_toggle = array (
// toggle style
// Menu Toggle Minimal.
'.ast-header-break-point .ast-mobile-menu-buttons-minimal.menu-toggle' => array (
'background' => 'transparent' ,
'color' => esc_attr ( $mobile_header_toggle_btn_style_color ),
),
// Menu Toggle Outline.
'.ast-header-break-point .ast-mobile-menu-buttons-outline.menu-toggle' => array (
'background' => 'transparent' ,
'border' => '1px solid ' . $mobile_header_toggle_btn_style_color ,
'color' => esc_attr ( $mobile_header_toggle_btn_style_color ),
),
// Menu Toggle Fill.
'.ast-header-break-point .ast-mobile-menu-buttons-fill.menu-toggle' => array (
'background' => esc_attr ( $mobile_header_toggle_btn_style_color ),
'color' => $menu_btn_color ,
),
);
$parse_css .= astra_parse_css ( $old_header_mobile_toggle );
}
$parse_css .= astra_container_layout_css ();
if ( 'no-sidebar' !== astra_page_layout () ) {
$parse_css .= Astra_Enqueue_Scripts :: trim_css ( self :: load_sidebar_static_css () );
$parse_css .= self :: astra_sticky_sidebar_css ();
}
if ( self :: astra_4_6_0_compatibility () ) {
// Forms default styling improvements.
$parse_css .= self :: astra_default_forms_styling_dynamic_css ();
}
if ( true === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
$parse_css .= astra_parse_css (
array (
'#ast-desktop-header' => array (
'display' => 'none' ,
),
),
'' ,
number_format ( absint ( astra_get_tablet_breakpoint () ) + 0.9 , 1 , '.' , '' )
);
$parse_css .= astra_parse_css (
array (
'#ast-mobile-header' => array (
'display' => 'none' ,
),
),
astra_get_tablet_breakpoint ( '' , 1 )
);
}
// Comments CSS.
if ( ! Astra_Builder_Helper :: apply_flex_based_css () ) {
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/comments.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
} else {
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/comments-flex.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
}
// Single post improvement.
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/single-post.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
$live_search_enabled = astra_get_option ( 'live-search' , false );
if ( ( true === Astra_Builder_Helper :: $is_header_footer_builder_active && Astra_Builder_Helper :: is_component_loaded ( 'search' , 'header' ) && $live_search_enabled ) || ( is_search () && true === astra_get_option ( 'ast-search-live-search' ) ) ) {
// Live search CSS.
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/live-search.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
}
2025-07-27 19:58:08 +02:00
if ( ( Astra_Builder_Helper :: is_component_loaded ( 'woo-cart' , 'header' ) && defined ( 'WC_VERSION' ) ) ||
( Astra_Builder_Helper :: is_component_loaded ( 'edd-cart' , 'header' ) && defined ( 'EDD_VERSION' ) )
) {
2025-07-27 19:55:19 +02:00
$parse_css .= Astra_Enqueue_Scripts :: trim_css ( self :: load_cart_static_css () );
$parse_css .= astra_parse_css (
array (
'.astra-cart-drawer.active' => array (
'width' => '80%' ,
),
),
'' ,
astra_get_tablet_breakpoint ()
);
$parse_css .= astra_parse_css (
array (
'.astra-cart-drawer.active' => array (
'width' => '100%' ,
),
),
'' ,
astra_get_mobile_breakpoint ()
);
}
if ( ! Astra_Builder_Helper :: $is_header_footer_builder_active ) {
$footer_css_output = array (
'.ast-small-footer' => array (
'color' => esc_attr ( $footer_color ),
),
'.ast-small-footer > .ast-footer-overlay' => astra_get_background_obj ( $footer_bg_obj ),
'.ast-small-footer a' => array (
'color' => esc_attr ( $footer_link_color ),
),
'.ast-small-footer a:hover' => array (
'color' => esc_attr ( $footer_link_h_color ),
),
// Advanced Footer colors/fonts.
'.footer-adv .footer-adv-overlay' => array (
'border-top-style' => 'solid' ,
'border-top-width' => astra_get_css_value ( $footer_adv_border_width , 'px' ),
'border-top-color' => esc_attr ( $footer_adv_border_color ),
),
'.footer-adv .widget-title,.footer-adv .widget-title a' => array (
'color' => esc_attr ( $footer_adv_widget_title_color ),
),
'.footer-adv' => array (
'color' => esc_attr ( $footer_adv_text_color ),
),
'.footer-adv a' => array (
'color' => esc_attr ( $footer_adv_link_color ),
),
'.footer-adv .tagcloud a:hover, .footer-adv .tagcloud a.current-item' => array (
'border-color' => esc_attr ( $footer_adv_link_color ),
'background-color' => esc_attr ( $footer_adv_link_color ),
),
'.footer-adv a:hover, .footer-adv .no-widget-text a:hover, .footer-adv a:focus, .footer-adv .no-widget-text a:focus' => array (
'color' => esc_attr ( $footer_adv_link_h_color ),
),
'.footer-adv .calendar_wrap #today, .footer-adv a:hover + .post-count' => array (
'background-color' => esc_attr ( $footer_adv_link_color ),
),
'.footer-adv-overlay' => astra_get_background_obj ( $footer_adv_bg_obj ),
);
$parse_css .= astra_parse_css ( $footer_css_output );
}
// Paginaiton CSS.
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/pagination.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
// Related Posts Dynamic CSS.
// Navigation CSS.
if ( ! self :: astra_4_6_0_compatibility () && is_single () ) {
/**
* CSS for post navigation design break for the old users .
*/
$parse_css .= Astra_Enqueue_Scripts :: trim_css (
'
@ media ( max - width : 420 px ) {
. single . nav - links . nav - previous ,
. single . nav - links . nav - next {
width : 100 % ;
text - align : center ;
}
}
'
);
}
// Navigation CSS.
if ( is_single () && self :: astra_4_6_0_compatibility () ) {
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/navigation.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
}
/**
* Load dynamic css related to logo svg icons .
*
* @ since 4.7 . 0
*/
require_once ASTRA_THEME_DIR . 'inc/dynamic-css/logo-svg-icons.php' ; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
/**
* Fix button aligment issue comming from the gutenberg plugin ( v9 . 3.0 ) .
*/
$gtn_plugin_button_center_alignment = array (
'.wp-block-buttons.aligncenter' => array (
'justify-content' => 'center' ,
),
);
$parse_css .= astra_parse_css ( $gtn_plugin_button_center_alignment );
$ast_container_layout = astra_get_content_layout ();
$is_boxed = astra_is_content_style_boxed ();
$is_sidebar_boxed = astra_is_sidebar_style_boxed ();
$ast_container_layout = astra_apply_boxed_layouts ( $ast_container_layout , $is_boxed , $is_sidebar_boxed );
/**
* If transparent header is activated then it adds top 1.5 em padding space , so this CSS will fix this issue .
* This issue is only visible on responsive devices .
*
* @ since 2.6 . 0
*/
if ( self :: gutenberg_core_blocks_css_comp () && is_singular () ) {
$trans_header_responsive_top_space_css_fix = array (
'.ast-theme-transparent-header #primary, .ast-theme-transparent-header #secondary' => array (
'padding' => 0 ,
),
);
/* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $trans_header_responsive_top_space_css_fix , '' , astra_get_tablet_breakpoint () );
}
/**
* Remove #primary padding on mobile devices which compromises deigned layout.
*
* @ since 2.6 . 1
*/
if ( self :: gutenberg_media_text_block_css_compat () && is_singular () ) {
$remove_primary_padding_on_mobile_css = array (
'.ast-plain-container.ast-no-sidebar #primary' => array (
'padding' => 0 ,
),
);
/* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $remove_primary_padding_on_mobile_css , '' , astra_get_tablet_breakpoint () );
}
/**
* Remove margin top when Primary Header is not set and No Sidebar is added in Full - Width / Contained Layout .
*
* @ since 2.5 . 0
*/
if ( self :: gtn_group_cover_css_comp () && is_singular () ) {
$display_header = get_post_meta ( get_the_ID (), 'ast-main-header-display' , true );
if ( 'disabled' === $display_header && apply_filters ( 'astra_content_margin_full_width_contained' , true ) || ( Astra_Ext_Transparent_Header_Markup :: is_transparent_header () ) || ( self :: gutenberg_core_blocks_css_comp () ) ) {
$gtn_margin_top = array (
'.ast-plain-container.ast-no-sidebar #primary' => array (
'margin-top' => '0' ,
'margin-bottom' => '0' ,
),
);
$parse_css .= astra_parse_css ( $gtn_margin_top );
}
/**
* Re - add margin top when FullWidth Contained layout is set .
*
* @ since 3.8 . 3
*/
if ( true === $update_customizer_strctural_defaults ) {
$display_title = get_post_meta ( get_the_ID (), 'site-post-title' , true );
if ( 'disabled' !== $display_title && ! Astra_Ext_Transparent_Header_Markup :: is_transparent_header () && apply_filters ( 'astra_contained_layout_primary_spacing' , true ) ) {
$gtn_margin_top = array (
'.ast-plain-container.ast-no-sidebar #primary' => array (
'margin-top' => '60px' ,
'margin-bottom' => '60px' ,
),
);
/* Parse CSS from array() -> min-width: (1200)px CSS */
$parse_css .= astra_parse_css ( $gtn_margin_top , '1200' );
}
}
}
$single_post_outside_spacing = astra_get_option ( 'single-post-outside-spacing' );
if ( ! self :: astra_4_6_0_compatibility () ) {
$single_post_outside_spacing_css_desktop = array (
'.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'margin-top' => astra_responsive_spacing ( $single_post_outside_spacing , 'top' , 'desktop' ),
'margin-bottom' => astra_responsive_spacing ( $single_post_outside_spacing , 'bottom' , 'desktop' ),
),
'.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'padding-left' => astra_responsive_spacing ( $single_post_outside_spacing , 'left' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $single_post_outside_spacing , 'right' , 'desktop' ),
),
);
$parse_css .= astra_parse_css ( $single_post_outside_spacing_css_desktop );
$single_post_outside_spacing_css_tablet = array (
'.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container #primary, .ast-narrow-container #primary' => array (
'margin-top' => astra_responsive_spacing ( $single_post_outside_spacing , 'top' , 'tablet' ),
'margin-bottom' => astra_responsive_spacing ( $single_post_outside_spacing , 'bottom' , 'tablet' ),
),
'.ast-left-sidebar #primary, .ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container #primary, .ast-narrow-container #primary' => array (
'padding-left' => astra_responsive_spacing ( $single_post_outside_spacing , 'left' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $single_post_outside_spacing , 'right' , 'tablet' ),
),
'.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'margin-top' => astra_responsive_spacing ( $single_post_outside_spacing , 'top' , 'tablet' ),
'margin-bottom' => astra_responsive_spacing ( $single_post_outside_spacing , 'bottom' , 'tablet' ),
),
'.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'padding-left' => astra_responsive_spacing ( $single_post_outside_spacing , 'left' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $single_post_outside_spacing , 'right' , 'tablet' ),
),
);
$parse_css .= astra_parse_css ( $single_post_outside_spacing_css_tablet , '' , astra_get_tablet_breakpoint () );
$single_post_outside_spacing_css_mobile = array (
'.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'margin-top' => astra_responsive_spacing ( $single_post_outside_spacing , 'top' , 'mobile' ),
'margin-bottom' => astra_responsive_spacing ( $single_post_outside_spacing , 'bottom' , 'mobile' ),
),
'.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'padding-left' => astra_responsive_spacing ( $single_post_outside_spacing , 'left' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $single_post_outside_spacing , 'right' , 'mobile' ),
),
);
$parse_css .= astra_parse_css ( $single_post_outside_spacing_css_mobile , '' , astra_get_mobile_breakpoint () );
}
if ( self :: astra_4_8_2_compatibility () ) {
$single_post_outside_padding_css_tablet = array (
'.ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'padding-left' => astra_responsive_spacing ( $single_post_outside_spacing , 'left' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $single_post_outside_spacing , 'right' , 'tablet' ),
),
);
$parse_css .= astra_parse_css ( $single_post_outside_padding_css_tablet , '' , astra_get_tablet_breakpoint () );
$single_post_outside_padding_css_mobile = array (
'.ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array (
'padding-left' => astra_responsive_spacing ( $single_post_outside_spacing , 'left' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $single_post_outside_spacing , 'right' , 'mobile' ),
),
);
$parse_css .= astra_parse_css ( $single_post_outside_padding_css_mobile , '' , astra_get_mobile_breakpoint () );
}
/**
* Single Post Outer spacing
*/
// To apply Container Outside Spacing we need to remove default top padding given from the theme.
$remove_single_post_top_padding_container = array (
'.ast-separate-container #primary, .ast-narrow-container #primary' => array (
'padding-top' => astra_get_css_value ( 0 , 'px' ),
),
);
// To apply Container Outside Spacing we need to remove default bottom padding given from the theme.
$remove_single_post_bottom_padding_container = array (
'.ast-separate-container #primary, .ast-narrow-container #primary' => array (
'padding-bottom' => astra_get_css_value ( 0 , 'px' ),
),
);
if ( isset ( $single_post_outside_spacing [ 'desktop' ][ 'top' ] ) && '' != $single_post_outside_spacing [ 'desktop' ][ 'top' ] ) {
$parse_css .= astra_parse_css ( $remove_single_post_top_padding_container );
}
if ( isset ( $single_post_outside_spacing [ 'tablet' ][ 'top' ] ) && '' != $single_post_outside_spacing [ 'tablet' ][ 'top' ] ) {
$parse_css .= astra_parse_css ( $remove_single_post_top_padding_container , '' , astra_get_tablet_breakpoint () );
}
if ( isset ( $single_post_outside_spacing [ 'mobile' ][ 'top' ] ) && '' != $single_post_outside_spacing [ 'mobile' ][ 'top' ] ) {
$parse_css .= astra_parse_css ( $remove_single_post_top_padding_container , '' , astra_get_mobile_breakpoint () );
}
if ( isset ( $single_post_outside_spacing [ 'desktop' ][ 'top' ] ) && '' != $single_post_outside_spacing [ 'desktop' ][ 'top' ] ) {
$parse_css .= astra_parse_css ( $remove_single_post_bottom_padding_container );
}
if ( isset ( $single_post_outside_spacing [ 'tablet' ][ 'top' ] ) && '' != $single_post_outside_spacing [ 'tablet' ][ 'top' ] ) {
$parse_css .= astra_parse_css ( $remove_single_post_bottom_padding_container , '' , astra_get_tablet_breakpoint () );
}
if ( isset ( $single_post_outside_spacing [ 'mobile' ][ 'top' ] ) && '' != $single_post_outside_spacing [ 'mobile' ][ 'top' ] ) {
$parse_css .= astra_parse_css ( $remove_single_post_bottom_padding_container , '' , astra_get_mobile_breakpoint () );
}
if ( $block_editor_legacy_setup ) {
/*
* Fix the wide width issue in gutenberg
* check if the current user is existing user or new user .
* if new user load the CSS bty default if existing provide a filter
*/
if ( self :: gtn_image_group_css_comp () ) {
if ( false === $improve_gb_ui && ( 'content-boxed-container' === $ast_container_layout || 'boxed-container' === $ast_container_layout ) ) {
$parse_css .= astra_parse_css (
array (
'.ast-separate-container.ast-right-sidebar .entry-content .wp-block-image.alignfull,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-image.alignfull,.ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignfull,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignfull' => array (
'margin-left' => '-6.67em' ,
'margin-right' => '-6.67em' ,
'max-width' => 'unset' ,
'width' => 'unset' ,
),
'.ast-separate-container.ast-right-sidebar .entry-content .wp-block-image.alignwide,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-image.alignwide,.ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignwide,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignwide' => array (
'margin-left' => '-20px' ,
'margin-right' => '-20px' ,
'max-width' => 'unset' ,
'width' => 'unset' ,
),
),
'1200'
);
}
$gtn_full_wide_image_css = array (
'.wp-block-group .has-background' => array (
'padding' => '20px' ,
),
);
$parse_css .= astra_parse_css ( $gtn_full_wide_image_css , '1200' );
} else {
$gtn_tablet_column_css = array (
'.entry-content .wp-block-columns .wp-block-column' => array (
'margin-left' => '0px' ,
),
);
$parse_css .= astra_parse_css ( $gtn_tablet_column_css , '' , '782' );
}
if ( self :: gtn_group_cover_css_comp () ) {
if ( 'no-sidebar' !== astra_page_layout () ) {
switch ( $ast_container_layout ) {
case 'content-boxed-container' :
case 'boxed-container' :
if ( true === $improve_gb_ui ) {
break ;
}
$parse_css .= astra_parse_css (
array (
// With container - Sidebar.
'.ast-separate-container.ast-right-sidebar .entry-content .wp-block-group.alignwide, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-group.alignwide, .ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignwide, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignwide' => array (
'margin-left' => '-20px' ,
'margin-right' => '-20px' ,
'padding-left' => '20px' ,
'padding-right' => '20px' ,
),
'.ast-separate-container.ast-right-sidebar .entry-content .wp-block-group.alignfull, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-group.alignfull, .ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignfull, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignfull' => array (
'margin-left' => '-6.67em' ,
'margin-right' => '-6.67em' ,
'padding-left' => '6.67em' ,
'padding-right' => '6.67em' ,
),
),
'1200'
);
break ;
case 'plain-container' :
$parse_css .= astra_parse_css (
array (
// Without container - Sidebar.
'.ast-plain-container.ast-right-sidebar .entry-content .wp-block-group.alignwide, .ast-plain-container.ast-left-sidebar .entry-content .wp-block-group.alignwide, .ast-plain-container.ast-right-sidebar .entry-content .wp-block-group.alignfull, .ast-plain-container.ast-left-sidebar .entry-content .wp-block-group.alignfull' => array (
'padding-left' => '20px' ,
'padding-right' => '20px' ,
),
),
'1200'
);
break ;
case 'page-builder' :
$parse_css .= astra_parse_css (
array (
'.ast-page-builder-template.ast-left-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-right-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-left-sidebar .entry-content .wp-block-cover.alignfull, .ast-page-builder-template.ast-right-sidebar .entry-content .wp-block-cover.alignful' => array (
'padding-right' => '0' ,
'padding-left' => '0' ,
),
),
'1200'
);
break ;
}
} else {
switch ( $container_layout ) {
case 'content-boxed-container' :
case 'boxed-container' :
if ( true === $improve_gb_ui ) {
break ;
}
$parse_css .= astra_parse_css (
array (
// With container - No Sidebar.
'.ast-no-sidebar.ast-separate-container .entry-content .wp-block-group.alignwide, .ast-no-sidebar.ast-separate-container .entry-content .wp-block-cover.alignwide' => array (
'margin-left' => '-20px' ,
'margin-right' => '-20px' ,
'padding-left' => '20px' ,
'padding-right' => '20px' ,
),
'.ast-no-sidebar.ast-separate-container .entry-content .wp-block-cover.alignfull, .ast-no-sidebar.ast-separate-container .entry-content .wp-block-group.alignfull' => array (
'margin-left' => '-6.67em' ,
'margin-right' => '-6.67em' ,
'padding-left' => '6.67em' ,
'padding-right' => '6.67em' ,
),
),
'1200'
);
break ;
case 'plain-container' :
$parse_css .= astra_parse_css (
array (
// Without container - No Sidebar.
'.ast-plain-container.ast-no-sidebar .entry-content .alignwide .wp-block-cover__inner-container, .ast-plain-container.ast-no-sidebar .entry-content .alignfull .wp-block-cover__inner-container' => array (
'width' => astra_get_css_value ( $site_content_width + 40 , 'px' ),
),
),
'1200'
);
break ;
case 'page-builder' :
$parse_css .= astra_parse_css (
array (
'.ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-cover.alignfull' => array (
'padding-right' => '0' ,
'padding-left' => '0' ,
),
),
'1200'
);
break ;
}
}
$parse_css .= astra_parse_css (
array (
'.wp-block-cover-image.alignwide .wp-block-cover__inner-container, .wp-block-cover.alignwide .wp-block-cover__inner-container, .wp-block-cover-image.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull .wp-block-cover__inner-container' => array (
'width' => '100%' ,
),
),
'1200'
);
}
if ( self :: gutenberg_core_blocks_css_comp () ) {
$desktop_screen_gb_css = array (
// Group block, Columns block, Gallery block, Table block & has-text-align-center selector compatibility Desktop CSS.
'.wp-block-columns' => array (
'margin-bottom' => 'unset' ,
),
'.wp-block-image.size-full' => array (
'margin' => '2rem 0' ,
),
'.wp-block-separator.has-background' => array (
'padding' => '0' ,
),
'.wp-block-gallery' => array (
'margin-bottom' => '1.6em' ,
),
'.wp-block-group' => array (
'padding-top' => '4em' ,
'padding-bottom' => '4em' ,
),
'.wp-block-group__inner-container .wp-block-columns:last-child, .wp-block-group__inner-container :last-child, .wp-block-table table' => array (
'margin-bottom' => '0' ,
),
'.blocks-gallery-grid' => array (
'width' => '100%' ,
),
'.wp-block-navigation-link__content' => array (
'padding' => '5px 0' ,
),
'.wp-block-group .wp-block-group .has-text-align-center, .wp-block-group .wp-block-column .has-text-align-center' => array (
'max-width' => '100%' ,
),
'.has-text-align-center' => array (
'margin' => '0 auto' ,
),
);
/* Parse CSS from array() -> Desktop CSS */
$parse_css .= astra_parse_css ( $desktop_screen_gb_css );
if ( false === $improve_gb_ui ) {
$middle_screen_min_gb_css = array (
// Group & Column block > align compatibility (min-width:1200px) CSS.
'.wp-block-cover__inner-container, .alignwide .wp-block-group__inner-container, .alignfull .wp-block-group__inner-container' => array (
'max-width' => '1200px' ,
'margin' => '0 auto' ,
),
'.wp-block-group.alignnone, .wp-block-group.aligncenter, .wp-block-group.alignleft, .wp-block-group.alignright, .wp-block-group.alignwide, .wp-block-columns.alignwide' => array (
'margin' => '2rem 0 1rem 0' ,
),
);
/* Parse CSS from array() -> min-width: (1200)px CSS */
$parse_css .= astra_parse_css ( $middle_screen_min_gb_css , '1200' );
}
$middle_screen_max_gb_css = array (
// Group & Column block (max-width:1200px) CSS.
'.wp-block-group' => array (
'padding' => '3em' ,
),
'.wp-block-group .wp-block-group' => array (
'padding' => '1.5em' ,
),
'.wp-block-columns, .wp-block-column' => array (
'margin' => '1rem 0' ,
),
);
/* Parse CSS from array() -> max-width: (1200)px CSS */
$parse_css .= astra_parse_css ( $middle_screen_max_gb_css , '' , '1200' );
$tablet_screen_min_gb_css = array (
// Columns inside Group block compatibility (min-width: tablet-breakpoint) CSS.
'.wp-block-columns .wp-block-group' => array (
'padding' => '2em' ,
),
);
/* Parse CSS from array() -> min-width: (tablet-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $tablet_screen_min_gb_css , astra_get_tablet_breakpoint () );
$mobile_screen_max_gb_css = array (
// Content | image | video inside Media & Text block, Cover block, Image inside cover block compatibility (max-width: mobile-breakpoint) CSS.
'.wp-block-cover-image .wp-block-cover__inner-container, .wp-block-cover .wp-block-cover__inner-container' => array (
'width' => 'unset' ,
),
'.wp-block-cover, .wp-block-cover-image' => array (
'padding' => '2em 0' ,
),
'.wp-block-group, .wp-block-cover' => array (
'padding' => '2em' ,
),
'.wp-block-media-text__media img, .wp-block-media-text__media video' => array (
'width' => 'unset' ,
'max-width' => '100%' ,
),
'.wp-block-media-text.has-background .wp-block-media-text__content' => array (
'padding' => '1em' ,
),
);
if ( ! self :: gutenberg_media_text_block_css_compat () ) {
// Added this [! self::gutenberg_media_text_block_css_compat()] condition as we update the same selector CSS in gutenberg_media_text_block_css_compat() function with new padding: 8% 0; CSS for max-width: (mobile-breakpoint).
$mobile_screen_max_gb_css [ '.wp-block-media-text .wp-block-media-text__content' ] = array (
'padding' => '3em 2em' ,
);
}
/* Parse CSS from array() -> max-width: (mobile-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $mobile_screen_max_gb_css , '' , astra_get_mobile_breakpoint () );
}
$is_legacy_setup = 'legacy' === astra_get_option ( 'wp-blocks-ui' ) ? true : false ;
if ( $is_legacy_setup && astra_wp_version_compare ( '6.0' , '>=' ) ) {
// Image block align center CSS.
$image_block_center_align = array (
'.wp-block-image.aligncenter' => array (
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
);
$parse_css .= astra_parse_css ( $image_block_center_align );
}
if ( $is_legacy_setup ) {
// Table block align center CSS.
$table_block_center_align = array (
'.wp-block-table.aligncenter' => array (
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
);
$parse_css .= astra_parse_css ( $table_block_center_align );
}
if ( self :: gutenberg_media_text_block_css_compat () ) {
$media_text_block_padding_css = array (
// Media & Text block CSS compatibility (min-width: mobile-breakpoint) CSS.
'.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content' => array (
'padding' => '0 8% 0 0' ,
),
'.entry-content .wp-block-media-text .wp-block-media-text__content' => array (
'padding' => '0 0 0 8%' ,
),
'.ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-bottom-left > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-bottom-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-top-left > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-top-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-center-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-center-left > *' => array (
'margin' => 0 ,
),
);
/* Parse CSS from array() -> min-width: (mobile-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $media_text_block_padding_css , astra_get_mobile_breakpoint () );
$mobile_screen_media_text_block_css = array (
// Media & Text block padding CSS for (max-width: mobile-breakpoint) CSS.
'.entry-content .wp-block-media-text .wp-block-media-text__content' => array (
'padding' => '8% 0' ,
),
'.wp-block-media-text .wp-block-media-text__media img' => array (
'width' => 'auto' ,
'max-width' => '100%' ,
),
);
/* Parse CSS from array() -> max-width: (mobile-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $mobile_screen_media_text_block_css , '' , astra_get_mobile_breakpoint () );
}
}
/**
* When supporting GB button outline patterns in v3 . 3.0 we have given 2 px as default border for GB outline button , where we restrict button border for flat type buttons .
* But now while reverting this change there is no need of default border because whatever customizer border will set it should behave accordingly . Although it is empty ( '' ) WP applying 2 px as default border for outline buttons .
*
* @ since 3.6 . 3
*/
$default_border_size = '2px' ;
if ( astra_button_default_padding_updated () ) {
$default_border_size = '' ;
}
// Outline Gutenberg button compatibility CSS.
$theme_btn_top_border = isset ( $global_custom_button_border_size [ 'top' ] ) && ( '' !== $global_custom_button_border_size [ 'top' ] && '0' !== $global_custom_button_border_size [ 'top' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'top' ], 'px' ) : $default_border_size ;
$theme_btn_right_border = isset ( $global_custom_button_border_size [ 'right' ] ) && ( '' !== $global_custom_button_border_size [ 'right' ] && '0' !== $global_custom_button_border_size [ 'right' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'right' ], 'px' ) : $default_border_size ;
$theme_btn_left_border = isset ( $global_custom_button_border_size [ 'left' ] ) && ( '' !== $global_custom_button_border_size [ 'left' ] && '0' !== $global_custom_button_border_size [ 'left' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'left' ], 'px' ) : $default_border_size ;
$theme_btn_bottom_border = isset ( $global_custom_button_border_size [ 'bottom' ] ) && ( '' !== $global_custom_button_border_size [ 'bottom' ] && '0' !== $global_custom_button_border_size [ 'bottom' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'bottom' ], 'px' ) : $default_border_size ;
if ( self :: gutenberg_core_patterns_compat () ) {
$outline_button_css = array (
'.wp-block-button.is-style-outline .wp-block-button__link' => array (
'border-color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
'border-top-width' => esc_attr ( $theme_btn_top_border ),
'border-right-width' => esc_attr ( $theme_btn_right_border ),
'border-bottom-width' => esc_attr ( $theme_btn_bottom_border ),
'border-left-width' => esc_attr ( $theme_btn_left_border ),
),
'div.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), div.wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color)' => array (
'color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
),
'.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover' => array (
'color' => esc_attr ( $btn_text_hover_color ),
'background-color' => esc_attr ( $btn_bg_hover_color ),
'border-color' => empty ( $btn_border_h_color ) ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $btn_border_h_color ),
),
// Adding CSS to highlight current paginated number.
'.post-page-numbers.current .page-link, .ast-pagination .page-numbers.current' => array (
'color' => astra_get_foreground_color ( $theme_color ),
'border-color' => esc_attr ( $theme_color ),
'background-color' => esc_attr ( $theme_color ),
),
);
/* Parse CSS from array() -> All media CSS */
$parse_css .= astra_parse_css ( $outline_button_css );
if ( $block_editor_legacy_setup ) {
if ( ! astra_button_default_padding_updated () ) {
// Tablet CSS.
$outline_button_tablet_css = array (
'.wp-block-button.is-style-outline .wp-block-button__link' => array (
'padding-top' => 'calc(15px - ' . ( int ) $theme_btn_top_border . 'px)' ,
'padding-right' => 'calc(30px - ' . ( int ) $theme_btn_right_border . 'px)' ,
'padding-bottom' => 'calc(15px - ' . ( int ) $theme_btn_bottom_border . 'px)' ,
'padding-left' => 'calc(30px - ' . ( int ) $theme_btn_left_border . 'px)' ,
),
);
$parse_css .= astra_parse_css ( $outline_button_tablet_css , '' , astra_get_tablet_breakpoint () );
// Mobile CSS.
$outline_button_mobile_css = array (
'.wp-block-button.is-style-outline .wp-block-button__link' => array (
'padding-top' => 'calc(15px - ' . ( int ) $theme_btn_top_border . 'px)' ,
'padding-right' => 'calc(30px - ' . ( int ) $theme_btn_right_border . 'px)' ,
'padding-bottom' => 'calc(15px - ' . ( int ) $theme_btn_bottom_border . 'px)' ,
'padding-left' => 'calc(30px - ' . ( int ) $theme_btn_left_border . 'px)' ,
),
);
$parse_css .= astra_parse_css ( $outline_button_mobile_css , '' , astra_get_mobile_breakpoint () );
}
if ( $is_site_rtl ) {
$gb_patterns_min_mobile_css = array (
'.entry-content > .alignleft' => array (
'margin-left' => '20px' ,
),
'.entry-content > .alignright' => array (
'margin-right' => '20px' ,
),
);
} else {
$gb_patterns_min_mobile_css = array (
'.entry-content > .alignleft' => array (
'margin-right' => '20px' ,
),
'.entry-content > .alignright' => array (
'margin-left' => '20px' ,
),
);
}
if ( ! astra_button_default_padding_updated () ) {
$gb_patterns_min_mobile_css [ '.wp-block-group.has-background' ] = array (
'padding' => '20px' ,
);
}
/* Parse CSS from array() -> min-width: (mobile-breakpoint) px CSS */
$parse_css .= astra_parse_css ( $gb_patterns_min_mobile_css , astra_get_mobile_breakpoint () );
}
}
if ( astra_button_default_padding_updated () ) {
$outline_button_css = array (
'.wp-block-button.is-style-outline .wp-block-button__link' => array (
'border-top-width' => esc_attr ( $theme_btn_top_border ),
'border-right-width' => esc_attr ( $theme_btn_right_border ),
'border-bottom-width' => esc_attr ( $theme_btn_bottom_border ),
'border-left-width' => esc_attr ( $theme_btn_left_border ),
),
);
/* Parse CSS from array() -> All media CSS */
$parse_css .= astra_parse_css ( $outline_button_css );
}
/**
* Secondary button styles .
*/
$scndry_btn_text_color = astra_get_option ( 'secondary-button-color' );
$scndry_btn_border_color = astra_get_option ( 'secondary-theme-button-border-group-border-color' );
$scndry_btn_border_h_color = astra_get_option ( 'secondary-theme-button-border-group-border-h-color' );
$global_scndry_custom_button_border_size = astra_get_option ( 'secondary-theme-button-border-group-border-size' );
$scndry_theme_btn_top_border = isset ( $global_scndry_custom_button_border_size [ 'top' ] ) && ( '' !== $global_scndry_custom_button_border_size [ 'top' ] && '0' !== $global_scndry_custom_button_border_size [ 'top' ] ) ? astra_get_css_value ( $global_scndry_custom_button_border_size [ 'top' ], 'px' ) : $default_border_size ;
$scndry_theme_btn_right_border = isset ( $global_scndry_custom_button_border_size [ 'right' ] ) && ( '' !== $global_scndry_custom_button_border_size [ 'right' ] && '0' !== $global_scndry_custom_button_border_size [ 'right' ] ) ? astra_get_css_value ( $global_scndry_custom_button_border_size [ 'right' ], 'px' ) : $default_border_size ;
$scndry_theme_btn_left_border = isset ( $global_scndry_custom_button_border_size [ 'left' ] ) && ( '' !== $global_scndry_custom_button_border_size [ 'left' ] && '0' !== $global_scndry_custom_button_border_size [ 'left' ] ) ? astra_get_css_value ( $global_scndry_custom_button_border_size [ 'left' ], 'px' ) : $default_border_size ;
$scndry_theme_btn_bottom_border = isset ( $global_scndry_custom_button_border_size [ 'bottom' ] ) && ( '' !== $global_scndry_custom_button_border_size [ 'bottom' ] && '0' !== $global_scndry_custom_button_border_size [ 'bottom' ] ) ? astra_get_css_value ( $global_scndry_custom_button_border_size [ 'bottom' ], 'px' ) : $default_border_size ;
$scndry_theme_btn_font_family = astra_get_option ( 'secondary-font-family-button' );
$scndry_theme_btn_font_size = astra_get_option ( 'secondary-font-size-button' );
$scndry_theme_btn_font_weight = astra_get_option ( 'secondary-font-weight-button' );
$scndry_theme_btn_text_transform = astra_get_font_extras ( astra_get_option ( 'secondary-font-extras-button' ), 'text-transform' );
$scndry_theme_btn_line_height = astra_get_font_extras ( astra_get_option ( 'secondary-font-extras-button' ), 'line-height' , 'line-height-unit' );
$scndry_theme_btn_letter_spacing = astra_get_font_extras ( astra_get_option ( 'secondary-font-extras-button' ), 'letter-spacing' , 'letter-spacing-unit' );
$scndry_theme_btn_text_decoration = astra_get_font_extras ( astra_get_option ( 'secondary-font-extras-button' ), 'text-decoration' );
$scndry_theme_btn_padding = astra_get_option ( 'secondary-theme-button-padding' );
$scndry_btn_border_radius_fields = astra_get_option ( 'secondary-button-radius-fields' );
$scndry_btn_bg_color = astra_get_option ( 'secondary-button-bg-color' );
$scndry_btn_bg_hover_color = astra_get_option ( 'secondary-button-bg-h-color' );
$scndry_btn_text_hover_color = astra_get_option ( 'secondary-button-h-color' );
$outline_button_selector = '.wp-block-button.is-style-outline .wp-block-button__link.wp-element-button, .ast-outline-button' ;
$padding_top = astra_responsive_spacing ( $scndry_theme_btn_padding , 'top' , 'desktop' );
$padding_right = astra_responsive_spacing ( $scndry_theme_btn_padding , 'right' , 'desktop' );
$padding_bottom = astra_responsive_spacing ( $scndry_theme_btn_padding , 'bottom' , 'desktop' );
$padding_left = astra_responsive_spacing ( $scndry_theme_btn_padding , 'left' , 'desktop' );
$border_top_val = '' ;
$border_right_val = '' ;
$border_bottom_val = '' ;
$border_left_val = '' ;
$gutenberg_core_patterns_compat = self :: gutenberg_core_patterns_compat ();
// Secondary color.
if ( empty ( $scndry_btn_text_color ) && $gutenberg_core_patterns_compat ) {
$btn_color_val = empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color );
} else {
$btn_color_val = $scndry_btn_text_color ;
}
// Secondary border color.
if ( empty ( $scndry_btn_border_color ) && empty ( $scndry_btn_bg_color ) && $gutenberg_core_patterns_compat ) {
$btn_border_color_val = empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color );
} else {
$btn_border_color_val = empty ( $scndry_btn_border_color ) ? esc_attr ( $scndry_btn_bg_color ) : esc_attr ( $scndry_btn_border_color );
}
// Secondary border hover color.
if ( empty ( $scndry_btn_border_h_color ) && $gutenberg_core_patterns_compat ) {
$btn_border_h_color_val = empty ( $btn_border_h_color ) ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $btn_border_h_color );
} else {
$btn_border_h_color_val = $scndry_btn_border_h_color ;
}
// Secondary button border size.
if ( $scndry_theme_btn_top_border || $scndry_theme_btn_right_border || $scndry_theme_btn_left_border || $scndry_theme_btn_bottom_border ) {
$border_top_val = $scndry_theme_btn_top_border ;
$border_right_val = $scndry_theme_btn_right_border ;
$border_bottom_val = $scndry_theme_btn_bottom_border ;
$border_left_val = $scndry_theme_btn_left_border ;
$outline_button_selector = '.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button, .ast-outline-button, .wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button' ;
}
// Secondary button padding.
if ( $padding_top || $padding_right || $padding_bottom || $padding_left ) {
$outline_button_selector = '.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button, .ast-outline-button, .wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button' ;
}
// Secondary button preset compatibility.
$secondary_btn_preset_style = astra_get_option ( 'secondary-button-preset-style' );
if ( 'button_04' === $secondary_btn_preset_style || 'button_05' === $secondary_btn_preset_style || 'button_06' === $secondary_btn_preset_style ) {
if ( empty ( $scndry_btn_border_color ) ) {
$btn_border_color_val = $scndry_btn_bg_color ;
}
if ( '' === astra_get_option ( 'secondary-button-bg-color' ) && '' === astra_get_option ( 'secondary-button-color' ) ) {
$btn_color_val = $theme_color ;
} elseif ( '' === astra_get_option ( 'secondary-button-color' ) ) {
$btn_color_val = $scndry_btn_bg_color ;
}
$scndry_btn_bg_color = 'transparent' ;
}
$outline_button_css_desktop = array (
$outline_button_selector => array (
'border-color' => esc_attr ( $btn_border_color_val ),
'border-top-width' => esc_attr ( $border_top_val ),
'border-right-width' => esc_attr ( $border_right_val ),
'border-bottom-width' => esc_attr ( $border_bottom_val ),
'border-left-width' => esc_attr ( $border_left_val ),
'font-family' => astra_get_font_family ( $scndry_theme_btn_font_family ),
'font-weight' => esc_attr ( $scndry_theme_btn_font_weight ),
'font-size' => isset ( $scndry_theme_btn_font_size [ 'desktop' ] ) && isset ( $scndry_theme_btn_font_size [ 'desktop-unit' ] ) && is_array ( $scndry_theme_btn_font_size ) ? astra_get_font_css_value ( $scndry_theme_btn_font_size [ 'desktop' ], $scndry_theme_btn_font_size [ 'desktop-unit' ] ) : '' ,
'line-height' => esc_attr ( $scndry_theme_btn_line_height ),
'text-transform' => esc_attr ( $scndry_theme_btn_text_transform ),
'text-decoration' => esc_attr ( $scndry_theme_btn_text_decoration ),
'letter-spacing' => esc_attr ( $scndry_theme_btn_letter_spacing ),
'padding-top' => $padding_top ,
'padding-right' => $padding_right ,
'padding-bottom' => $padding_bottom ,
'padding-left' => $padding_left ,
'border-top-left-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'left' , 'desktop' ),
),
'.wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color), .ast-outline-button' => array (
'color' => esc_attr ( $btn_color_val ),
),
'.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover, .ast-outline-button:hover, .ast-outline-button:focus, .wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button:hover, .wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button:focus' => array (
'color' => empty ( $scndry_btn_text_hover_color ) && $gutenberg_core_patterns_compat ? esc_attr ( $btn_text_hover_color ) : esc_attr ( $scndry_btn_text_hover_color ),
'background-color' => empty ( $scndry_btn_bg_hover_color ) && $gutenberg_core_patterns_compat ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $scndry_btn_bg_hover_color ),
'border-color' => esc_attr ( $btn_border_h_color_val ),
),
);
if ( $content_links_underline && $button_styling_improved ) {
$outline_button_css_desktop [ '.ast-single-post .entry-content a.ast-outline-button, .ast-single-post .entry-content .is-style-outline>.wp-block-button__link' ] = array (
'text-decoration' => '' === $scndry_theme_btn_text_decoration || 'initial' === $scndry_theme_btn_text_decoration ? 'none' : esc_attr ( $scndry_theme_btn_text_decoration ),
);
}
$outline_button_css_tablet = array (
$outline_button_selector => array (
'font-size' => astra_responsive_font ( $scndry_theme_btn_font_size , 'tablet' ),
'padding-top' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'top' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'right' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'left' , 'tablet' ),
'border-top-left-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'top' , 'tablet' ),
'border-top-right-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'right' , 'tablet' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'bottom' , 'tablet' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'left' , 'tablet' ),
),
);
$outline_button_css_mobile = array (
$outline_button_selector => array (
'font-size' => astra_responsive_font ( $scndry_theme_btn_font_size , 'mobile' ),
'padding-top' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'top' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'right' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $scndry_theme_btn_padding , 'left' , 'mobile' ),
'border-top-left-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'top' , 'mobile' ),
'border-top-right-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'right' , 'mobile' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'bottom' , 'mobile' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $scndry_btn_border_radius_fields , 'left' , 'mobile' ),
),
);
// Secondary button background color.
$outline_button_css_desktop [ '.wp-block-button .wp-block-button__link.wp-element-button.is-style-outline:not(.has-background), .wp-block-button.is-style-outline>.wp-block-button__link.wp-element-button:not(.has-background), .ast-outline-button' ] = array (
'background-color' => empty ( $scndry_btn_bg_color ) ? 'transparent' : esc_attr ( $scndry_btn_bg_color ),
);
// Secondary button preset compatibility.
if ( 'button_01' === $secondary_btn_preset_style || 'button_02' === $secondary_btn_preset_style || 'button_03' === $secondary_btn_preset_style ) {
if ( empty ( $scndry_btn_text_color ) ) {
$scndry_btn_text_color = astra_get_foreground_color ( $theme_color );
}
$outline_button_css_desktop [ '.wp-block-buttons .wp-block-button .wp-block-button__link.is-style-outline:not(.has-background), .wp-block-buttons .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background), .ast-outline-button' ] = array (
'background-color' => empty ( $scndry_btn_bg_color ) ? esc_attr ( $theme_color ) : esc_attr ( $scndry_btn_bg_color ),
'color' => esc_attr ( $scndry_btn_text_color ),
);
}
if ( $button_styling_improved ) {
$outline_button_css_desktop [ '.uagb-buttons-repeater.ast-outline-button' ] = array (
'border-radius' => '9999px' ,
);
}
/* Parse CSS from array() -> Desktop */
$parse_css .= astra_parse_css ( $outline_button_css_desktop );
/* Parse CSS from array() -> Tablet */
$parse_css .= astra_parse_css ( $outline_button_css_tablet , '' , astra_get_tablet_breakpoint () );
/* Parse CSS from array() -> Mobile */
$parse_css .= astra_parse_css ( $outline_button_css_mobile , '' , astra_get_mobile_breakpoint () );
/**
* Add margin - bottom to the figure element conditionally for WordPress 6.3 or above .
*
* @ since 4.4 . 0
*/
if ( astra_wp_version_compare ( '6.3' , '>=' ) ) {
$figure_margin_bottom = array (
'.entry-content[data-ast-blocks-layout] > figure' => array (
'margin-bottom' => '1em' ,
),
);
/* Parse CSS from array() -> All media CSS */
$parse_css .= astra_parse_css ( $figure_margin_bottom );
}
if ( $is_widget_title_support_font_weight ) {
$widget_title_font_weight_support = array (
'h1.widget-title' => array (
'font-weight' => esc_attr ( $h1_font_weight ),
),
'h2.widget-title' => array (
'font-weight' => esc_attr ( $h2_font_weight ),
),
'h3.widget-title' => array (
'font-weight' => esc_attr ( $h3_font_weight ),
),
);
/* Parse CSS from array() -> All media CSS */
$parse_css .= astra_parse_css ( $widget_title_font_weight_support );
}
$static_layout_css = array (
'.ast-separate-container #primary, .ast-separate-container #secondary' => array (
'padding' => '1.5em 0' ,
),
'#primary, #secondary' => array (
'padding' => '1.5em 0' ,
'margin' => 0 ,
),
'.ast-left-sidebar #content > .ast-container' => array (
'display' => 'flex' ,
'flex-direction' => 'column-reverse' ,
'width' => '100%' ,
),
);
// Fix: Prevent layout shrink issue on the Shop page with elementor loop builder.
if ( defined ( 'ELEMENTOR_PRO_VERSION' ) ) {
$elementor_shop_page_css = array (
'.elementor-widget-container .elementor-loop-container .e-loop-item[data-elementor-type="loop-item"]' => array (
'width' => '100%' ,
),
);
$parse_css .= astra_parse_css ( $elementor_shop_page_css );
}
// Handle backward compatibility for Elementor Pro heading's margin.
if ( defined ( 'ELEMENTOR_PRO_VERSION' ) && $elementor_heading_margin_style_comp ) {
$elementor_base_css = array ();
$elementor_base_css [ ' .content-area .elementor-widget-theme-post-content h1, .content-area .elementor-widget-theme-post-content h2, .content-area .elementor-widget-theme-post-content h3, .content-area .elementor-widget-theme-post-content h4, .content-area .elementor-widget-theme-post-content h5, .content-area .elementor-widget-theme-post-content h6' ] = array (
'margin-top' => '1.5em' ,
'margin-bottom' => 'calc(0.3em + 10px)' ,
);
$parse_css .= astra_parse_css ( $elementor_base_css );
}
// Getting the responsive alignment option.
$shop_product_alignment = astra_get_option ( 'shop-product-align-responsive' );
// Added Check if the tablet alignment is 'align-center'
if ( ( isset ( $shop_product_alignment [ 'desktop' ] ) && 'align-center' === $shop_product_alignment [ 'desktop' ] ) && 'shop-page-list-style' !== astra_get_option ( 'shop-style' ) ) {
$desktop_review_wrapper = array ();
$desktop_review_wrapper [ ' .ast-desktop .review-count' ] = array (
'margin-left' => '-40px' ,
'margin-right' => 'auto' ,
);
/* Parse CSS from array() -> Desktop CSS */
$parse_css .= astra_parse_css ( $desktop_review_wrapper );
}
if ( class_exists ( 'WooCommerce' ) && ! is_product () ) {
$review_rating_style = array ();
$review_rating_style [ '.review-rating' ] = array (
'display' => 'flex' ,
'align-items' => 'center' ,
'order' => '2' ,
);
/* Parse CSS from array() -> Desktop CSS */
$parse_css .= astra_parse_css ( $review_rating_style );
}
// Added cover block paragraph tag text color compatibility.
if ( has_block ( 'core/cover' ) ) {
$cover_block_style = array ();
$cover_block_style [ 'body .wp-block-cover:not(.has-text-color.has-link-color) p' ] = array (
'color' => esc_attr ( $text_color ),
);
$parse_css .= astra_parse_css ( $cover_block_style );
}
if ( true === $update_customizer_strctural_defaults ) {
$is_site_rtl = is_rtl () ? true : false ;
$ltr_left = $is_site_rtl ? esc_attr ( 'right' ) : esc_attr ( 'left' );
$ltr_right = $is_site_rtl ? esc_attr ( 'left' ) : esc_attr ( 'right' );
$default_layout_update_css = array (
'#page' => array (
'display' => 'flex' ,
'flex-direction' => 'column' ,
'min-height' => '100vh' ,
),
'.ast-404-layout-1 h1.page-title' => array (
'color' => 'var(--ast-global-color-2)' ,
),
'.single .post-navigation a' => array (
'line-height' => '1em' ,
'height' => 'inherit' ,
),
'.error-404 .page-sub-title' => array (
'font-size' => '1.5rem' ,
'font-weight' => 'inherit' ,
),
'.search .site-content .content-area .search-form' => array (
'margin-bottom' => '0' ,
),
'#page .site-content' => array (
'flex-grow' => '1' ,
),
'.widget' => array (
'margin-bottom' => '1.25em' ,
),
'#secondary li' => array (
'line-height' => '1.5em' ,
),
'#secondary .wp-block-group h2' => array (
'margin-bottom' => '0.7em' ,
),
'#secondary h2' => array (
'font-size' => '1.7rem' ,
),
'.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .comment-respond' => array (
'padding' => self :: astra_4_6_0_compatibility () && is_single () ? '2.5em' : '3em' ,
),
'.ast-separate-container .ast-article-single .ast-article-single' => array (
'padding' => '0' ,
),
'.ast-article-single .wp-block-post-template-is-layout-grid' => array (
'padding-' . $ltr_left => '0' ,
),
'.ast-separate-container .comments-title, .ast-narrow-container .comments-title' => array (
'padding' => '1.5em 2em' ,
),
'.ast-page-builder-template .comment-form-textarea, .ast-comment-formwrap .ast-grid-common-col' => array (
'padding' => '0' ,
),
'.ast-comment-formwrap' => array (
'padding' => '0' ,
'display' => 'inline-flex' ,
'column-gap' => '20px' ,
'width' => '100%' ,
'margin-left' => '0' ,
'margin-right' => '0' ,
),
'.comments-area textarea#comment:focus, .comments-area textarea#comment:active, .comments-area .ast-comment-formwrap input[type="text"]:focus, .comments-area .ast-comment-formwrap input[type="text"]:active ' => array (
'box-shadow' => 'none' ,
'outline' => 'none' ,
),
'.archive.ast-page-builder-template .entry-header' => array (
'margin-top' => '2em' ,
),
'.ast-page-builder-template .ast-comment-formwrap' => array (
'width' => '100%' ,
),
'.entry-title' => array (
'margin-bottom' => self :: astra_4_6_0_compatibility () ? '0.6em' : '0.5em' ,
),
'.ast-archive-description p' => array (
'font-size' => 'inherit' ,
'font-weight' => 'inherit' ,
'line-height' => 'inherit' ,
),
);
if ( ! self :: astra_4_6_0_compatibility () ) {
$default_layout_update_css [ '.ast-separate-container .ast-comment-list li.depth-1, .hentry' ] = array (
'margin-bottom' => '2em' ,
);
} else {
if ( is_single () && astra_get_option ( 'single-content-images-shadow' , false ) ) {
$default_layout_update_css [ '.ast-article-single img' ] = array (
'box-shadow' => '0 0 30px 0 rgba(0,0,0,.15)' ,
'-webkit-box-shadow' => '0 0 30px 0 rgba(0,0,0,.15)' ,
'-moz-box-shadow' => '0 0 30px 0 rgba(0,0,0,.15)' ,
);
}
$default_layout_update_css [ '.ast-separate-container .ast-comment-list li.depth-1, .hentry' ] = array (
'margin-bottom' => '1.5em' ,
);
$default_layout_update_css [ '.site-content section.ast-archive-description' ] = array (
'margin-bottom' => '2em' ,
);
// Search page.
if ( is_search () ) {
$default_layout_update_css [ '.no-results' ] = array (
'text-align' => 'center' ,
);
$default_layout_update_css [ '.no-results .search-form' ] = array (
'max-width' => '370px' ,
'margin' => '0 auto' ,
);
$default_layout_update_css [ '.no-results .search-field' ] = array (
'width' => '100%' ,
);
$default_layout_update_css [ '.search .site-main .no-results .ast-search-submit' ] = array (
'display' => 'block' ,
);
$default_layout_update_css [ '.search .site-main .no-results .ast-live-search-results' ] = array (
'max-height' => '200px' ,
);
}
}
/* Parse CSS from array() -> Desktop CSS */
$parse_css .= astra_parse_css ( $default_layout_update_css );
$default_tablet_layout_css = array (
'.ast-left-sidebar.ast-page-builder-template #secondary, .archive.ast-right-sidebar.ast-page-builder-template .site-main' => array (
'padding-' . $ltr_left => '20px' ,
'padding-' . $ltr_right => '20px' ,
),
);
/* Parse CSS from array() -> min-width: tablet-breakpoint CSS */
$parse_css .= astra_parse_css ( $default_tablet_layout_css , astra_get_tablet_breakpoint () );
$default_mobile_layout_css = array (
'.ast-comment-formwrap.ast-row' => array (
'column-gap' => '10px' ,
'display' => 'inline-block' ,
),
'#ast-commentform .ast-grid-common-col' => array (
'position' => 'relative' ,
'width' => '100%' ,
),
);
/* Parse CSS from array() -> max-width: mobile-breakpoint CSS */
$parse_css .= astra_parse_css ( $default_mobile_layout_css , '' , astra_get_mobile_breakpoint () );
if ( is_user_logged_in () ) {
$admin_bar_specific_page_css = array (
'.admin-bar #page' => array (
'min-height' => 'calc(100vh - 32px)' ,
),
);
$parse_css .= astra_parse_css ( $admin_bar_specific_page_css );
$admin_bar_responsive_page_css = array (
'.admin-bar #page' => array (
'min-height' => 'calc(100vh - 46px)' ,
),
);
$parse_css .= astra_parse_css ( $admin_bar_responsive_page_css , '' , '782' );
}
$default_medium_layout_css = array (
'.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .ast-author-box, .ast-separate-container .ast-404-layout-1, .ast-separate-container .no-results' => array (
'padding' => self :: astra_4_6_0_compatibility () && is_single () ? '2.5em' : '3em' ,
),
);
/* Parse CSS from array() -> min-width: 1201px CSS */
$parse_css .= astra_parse_css ( $default_medium_layout_css , '1201' );
if ( is_author () ) {
$default_author_css = array (
'.ast-author-box img.avatar' => array (
'margin' => '0' ,
),
);
/* Parse CSS from array() -> Desktop CSS */
$parse_css .= astra_parse_css ( $default_author_css );
$default_tablet_min_author_css = array (
'.ast-author-box img.avatar' => array (
'width' => '100px' ,
'height' => '100px' ,
),
'.ast-author-box' => array (
'column-gap' => '50px' ,
),
);
/* Parse CSS from array() -> min-width: (tablet-breakpoint) CSS */
$parse_css .= astra_parse_css ( $default_tablet_min_author_css , astra_get_tablet_breakpoint () );
$default_max_tablet_author_css = array (
'.ast-author-avatar' => array (
'margin-top' => '20px' ,
),
);
/* Parse CSS from array() -> max-width: (tablet-breakpoint) CSS */
$parse_css .= astra_parse_css ( $default_max_tablet_author_css , '' , astra_get_tablet_breakpoint () );
$default_tablet_min_extra_px_author_css = array (
'.ast-author-box' => array (
'align-items' => 'center' ,
),
);
/* Parse CSS from array() -> min-width: (tablet-breakpoint + 1) CSS */
$parse_css .= astra_parse_css ( $default_tablet_min_extra_px_author_css , astra_get_tablet_breakpoint ( '' , 1 ) );
}
} else {
$static_layout_css [ '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single' ] = array (
'padding' => '1.5em 2.14em' ,
);
$static_layout_css [ '.ast-author-box img.avatar' ] = array (
'margin' => '20px 0 0 0' ,
);
}
// Handle backward compatibility for Elementor Loop block post div container padding.
if ( defined ( 'ELEMENTOR_PRO_VERSION' ) && $elementor_container_padding_style_comp ) {
$elementor_base_css [ '.elementor-loop-container .e-loop-item, .elementor-loop-container .ast-separate-container .ast-article-post, .elementor-loop-container .ast-separate-container .ast-article-single, .elementor-loop-container .ast-separate-container .comment-respond' ] = array (
'padding' => '0px' ,
);
$parse_css .= astra_parse_css ( $elementor_base_css );
}
/* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $static_layout_css , '' , astra_get_tablet_breakpoint () );
if ( is_author () && false === $update_customizer_strctural_defaults ) {
$parse_css .= astra_parse_css (
array (
'.ast-author-box img.avatar' => array (
'margin' => '20px 0 0 0' ,
),
),
astra_get_tablet_breakpoint ()
);
}
if ( 'no-sidebar' !== astra_page_layout () ) {
$static_secondary_layout_css = array (
'#secondary.secondary' => array (
'padding-top' => 0 ,
),
'.ast-separate-container.ast-right-sidebar #secondary' => array (
'padding-left' => '1em' ,
'padding-right' => '1em' ,
),
'.ast-separate-container.ast-two-container #secondary' => array (
'padding-left' => 0 ,
'padding-right' => 0 ,
),
'.ast-page-builder-template .entry-header #secondary, .ast-page-builder-template #secondary' => array (
'margin-top' => '1.5em' ,
),
);
$parse_css .= astra_parse_css ( $static_secondary_layout_css , '' , astra_get_tablet_breakpoint () );
}
if ( 'no-sidebar' !== astra_page_layout () ) {
if ( $is_site_rtl ) {
$static_layout_lang_direction_css = array (
'.ast-right-sidebar #primary' => array (
'padding-left' => 0 ,
),
'.ast-page-builder-template.ast-left-sidebar #secondary, ast-page-builder-template.ast-right-sidebar #secondary' => array (
'padding-left' => '20px' ,
'padding-right' => '20px' ,
),
'.ast-right-sidebar #secondary, .ast-left-sidebar #primary' => array (
'padding-right' => 0 ,
),
'.ast-left-sidebar #secondary' => array (
'padding-left' => 0 ,
),
);
} else {
$static_layout_lang_direction_css = array (
'.ast-right-sidebar #primary' => array (
'padding-right' => 0 ,
),
'.ast-page-builder-template.ast-left-sidebar #secondary, .ast-page-builder-template.ast-right-sidebar #secondary' => array (
'padding-right' => '20px' ,
'padding-left' => '20px' ,
),
'.ast-right-sidebar #secondary, .ast-left-sidebar #primary' => array (
'padding-left' => 0 ,
),
'.ast-left-sidebar #secondary' => array (
'padding-right' => 0 ,
),
);
}
/* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */
$parse_css .= astra_parse_css ( $static_layout_lang_direction_css , '' , astra_get_tablet_breakpoint () );
}
$static_layout_css_min = array (
'.ast-separate-container.ast-right-sidebar #primary, .ast-separate-container.ast-left-sidebar #primary' => array (
'border' => 0 ,
),
'.search-no-results.ast-separate-container #primary' => array (
'margin-bottom' => '4em' ,
),
);
if ( is_author () ) {
$author_table_css = array (
'.ast-author-box' => array (
'-js-display' => 'flex' ,
'display' => 'flex' ,
),
'.ast-author-bio' => array (
'flex' => '1' ,
),
);
$static_layout_css_min = array_merge ( $static_layout_css_min , $author_table_css );
}
/* Parse CSS from array() -> min-width: (tablet-breakpoint + 1)px CSS */
$parse_css .= astra_parse_css ( $static_layout_css_min , astra_get_tablet_breakpoint ( '' , '1' ) );
// 404 Page.
if ( is_404 () ) {
$page_404 = array (
'.ast-404-layout-1 .ast-404-text' => array (
'font-size' => astra_get_font_css_value ( '200' ),
),
);
$parse_css .= astra_parse_css ( $page_404 );
$parse_css .= astra_parse_css (
array (
'.error404.ast-separate-container #primary' => array (
'margin-bottom' => '4em' ,
),
),
astra_get_tablet_breakpoint ( '' , '1' )
);
$parse_css .= astra_parse_css (
array (
'.ast-404-layout-1 .ast-404-text' => array (
'font-size' => astra_get_font_css_value ( 100 ),
),
),
'' ,
'920'
);
}
if ( 'no-sidebar' !== astra_page_layout () ) {
if ( $is_site_rtl ) {
$static_layout_min_lang_direction_css = array (
'.ast-right-sidebar #primary' => array (
'border-left' => '1px solid var(--ast-border-color)' ,
),
'.ast-right-sidebar #secondary' => array (
'border-right' => '1px solid var(--ast-border-color)' ,
'margin-right' => '-1px' ,
),
'.ast-left-sidebar #primary' => array (
'border-right' => '1px solid var(--ast-border-color)' ,
),
'.ast-left-sidebar #secondary' => array (
'border-left' => '1px solid var(--ast-border-color)' ,
'margin-left' => '-1px' ,
),
'.ast-separate-container.ast-two-container.ast-right-sidebar #secondary' => array (
'padding-right' => '30px' ,
'padding-left' => 0 ,
),
'.ast-separate-container.ast-two-container.ast-left-sidebar #secondary' => array (
'padding-left' => '30px' ,
'padding-right' => 0 ,
),
'.ast-separate-container.ast-right-sidebar #secondary, .ast-separate-container.ast-left-sidebar #secondary' => array (
'border' => 0 ,
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
'.ast-separate-container.ast-two-container #secondary .widget:last-child' => array (
'margin-bottom' => 0 ,
),
);
} else {
$static_layout_min_lang_direction_css = array (
'.ast-right-sidebar #primary' => array (
'border-right' => '1px solid var(--ast-border-color)' ,
),
'.ast-left-sidebar #primary' => array (
'border-left' => '1px solid var(--ast-border-color)' ,
),
'.ast-right-sidebar #secondary' => array (
'border-left' => '1px solid var(--ast-border-color)' ,
'margin-left' => '-1px' ,
),
'.ast-left-sidebar #secondary' => array (
'border-right' => '1px solid var(--ast-border-color)' ,
'margin-right' => '-1px' ,
),
'.ast-separate-container.ast-two-container.ast-right-sidebar #secondary' => array (
'padding-left' => '30px' ,
'padding-right' => 0 ,
),
'.ast-separate-container.ast-two-container.ast-left-sidebar #secondary' => array (
'padding-right' => '30px' ,
'padding-left' => 0 ,
),
'.ast-separate-container.ast-right-sidebar #secondary, .ast-separate-container.ast-left-sidebar #secondary' => array (
'border' => 0 ,
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
'.ast-separate-container.ast-two-container #secondary .widget:last-child' => array (
'margin-bottom' => 0 ,
),
);
}
/* Parse CSS from array() -> min-width: (tablet-breakpoint + 1)px CSS */
$parse_css .= astra_parse_css ( $static_layout_min_lang_direction_css , astra_get_tablet_breakpoint ( '' , '1' ) );
}
/**
* Elementor & Gutenberg button backward compatibility for default styling .
*/
if ( self :: page_builder_button_style_css () ) {
$search_button_selector = ! $block_editor_legacy_setup || $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button' : '' ;
$search_button_hover_selector = ! $block_editor_legacy_setup || $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus' : '' ;
$file_block_button_selector = ! $block_editor_legacy_setup || $improve_gb_ui ? ', body .wp-block-file .wp-block-file__button' : '' ;
$file_block_button_hover_selector = ! $block_editor_legacy_setup || $improve_gb_ui ? ', body .wp-block-file .wp-block-file__button:hover, body .wp-block-file .wp-block-file__button:focus' : '' ;
$search_page_btn_selector = true === $update_customizer_strctural_defaults ? ', .search .search-submit' : '' ;
2025-07-27 19:58:08 +02:00
$woo_btns_selector = defined ( 'WC_VERSION' ) && true === self :: astra_woo_support_global_settings () ? ', .woocommerce-js a.button, .woocommerce button.button, .woocommerce .woocommerce-message a.button, .woocommerce #respond input#submit.alt, .woocommerce input.button.alt, .woocommerce input.button,.woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled], .woocommerce input.button:disabled:hover, .woocommerce input.button:disabled[disabled]:hover, .woocommerce #respond input#submit, .woocommerce button.button.alt.disabled, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link, .wc-block-grid__product-onsale, [CLASS*="wc-block"] button, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout, .woocommerce button.button.alt.disabled.wc-variation-selection-needed, [CLASS*="wc-block"] .wc-block-components-button' : '' ;
$woo_btns_hover_selector = defined ( 'WC_VERSION' ) && true === self :: astra_woo_support_global_settings () ? ', .woocommerce-js a.button:hover, .woocommerce button.button:hover, .woocommerce .woocommerce-message a.button:hover,.woocommerce #respond input#submit:hover,.woocommerce #respond input#submit.alt:hover, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .woocommerce button.button.alt.disabled:hover, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover, [CLASS*="wc-block"] button:hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover, .woocommerce button.button.alt.disabled.wc-variation-selection-needed:hover, [CLASS*="wc-block"] .wc-block-components-button:hover, [CLASS*="wc-block"] .wc-block-components-button:focus' : '' ;
2025-07-27 19:55:19 +02:00
$v4_2_2_core_form_btns_styling_selector = true === self :: astra_core_form_btns_styling () ? ', #comments .submit, .search .search-submit' : '' ;
/**
* Global button CSS - Desktop .
*/
$global_button_desktop = array (
'.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array (
'border-style' => 'solid' ,
'border-top-width' => isset ( $global_custom_button_border_size [ 'top' ] ) && '' !== $global_custom_button_border_size [ 'top' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'top' ], 'px' ) : '0' ,
'border-right-width' => isset ( $global_custom_button_border_size [ 'right' ] ) && '' !== $global_custom_button_border_size [ 'right' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'right' ], 'px' ) : '0' ,
'border-left-width' => isset ( $global_custom_button_border_size [ 'left' ] ) && '' !== $global_custom_button_border_size [ 'left' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'left' ], 'px' ) : '0' ,
'border-bottom-width' => isset ( $global_custom_button_border_size [ 'bottom' ] ) && '' !== $global_custom_button_border_size [ 'bottom' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'bottom' ], 'px' ) : '0' ,
'color' => esc_attr ( $btn_text_color ),
'border-color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
'background-color' => esc_attr ( $btn_bg_color ),
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'desktop' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'desktop' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'desktop' ),
'font-family' => astra_get_font_family ( $theme_btn_font_family ),
'font-weight' => esc_attr ( $theme_btn_font_weight ),
'font-size' => astra_get_font_css_value ( $theme_btn_font_size [ 'desktop' ], $theme_btn_font_size [ 'desktop-unit' ] ),
'line-height' => esc_attr ( $theme_btn_line_height ),
'text-transform' => esc_attr ( $theme_btn_text_transform ),
'text-decoration' => esc_attr ( $theme_btn_text_decoration ),
'letter-spacing' => esc_attr ( $theme_btn_letter_spacing ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'desktop' ),
),
'button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover , input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus' . $search_button_hover_selector . $file_block_button_hover_selector . $woo_btns_hover_selector => array (
'color' => esc_attr ( $btn_text_hover_color ),
'background-color' => esc_attr ( $btn_bg_hover_color ),
'border-color' => empty ( $btn_border_h_color ) ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $btn_border_h_color ),
),
);
/**
* Global button CSS - Tablet .
*/
$global_button_tablet = array (
'.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array (
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'tablet' ),
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'tablet' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'tablet' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'tablet' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'tablet' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'tablet' ),
),
);
/**
* Global button CSS - Mobile .
*/
$global_button_mobile = array (
'.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array (
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'mobile' ),
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'mobile' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'mobile' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'mobile' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'mobile' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'mobile' ),
),
);
$btn_text_color_selectors = '.wp-block-button .wp-block-button__link' ;
$extra_body_class = $add_body_class ? 'body ' : '' ;
if ( 'color-typo' === self :: elementor_default_color_font_setting () || 'color' === self :: elementor_default_color_font_setting () || 'typo' === self :: elementor_default_color_font_setting () ) {
$ele_btn_default_desktop = array (
'.elementor-widget-button .elementor-button' => array (
'border-style' => 'solid' ,
'text-decoration' => 'none' ,
'border-top-width' => isset ( $global_custom_button_border_size [ 'top' ] ) && '' !== $global_custom_button_border_size [ 'top' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'top' ], 'px' ) : '0' ,
'border-right-width' => isset ( $global_custom_button_border_size [ 'right' ] ) && '' !== $global_custom_button_border_size [ 'right' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'right' ], 'px' ) : '0' ,
'border-left-width' => isset ( $global_custom_button_border_size [ 'left' ] ) && '' !== $global_custom_button_border_size [ 'left' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'left' ], 'px' ) : '0' ,
'border-bottom-width' => isset ( $global_custom_button_border_size [ 'bottom' ] ) && '' !== $global_custom_button_border_size [ 'bottom' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'bottom' ], 'px' ) : '0' ,
),
$extra_body_class . '.elementor-button.elementor-size-sm, ' . $extra_body_class . '.elementor-button.elementor-size-xs, ' . $extra_body_class . '.elementor-button.elementor-size-md, ' . $extra_body_class . '.elementor-button.elementor-size-lg, ' . $extra_body_class . '.elementor-button.elementor-size-xl, ' . $extra_body_class . '.elementor-button' => array (
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'desktop' ),
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'desktop' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'desktop' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'desktop' ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $ele_btn_default_desktop );
$ele_btn_default_tablet = array (
'.elementor-widget-button .elementor-button.elementor-size-sm, .elementor-widget-button .elementor-button.elementor-size-xs, .elementor-widget-button .elementor-button.elementor-size-md, .elementor-widget-button .elementor-button.elementor-size-lg, .elementor-widget-button .elementor-button.elementor-size-xl, .elementor-widget-button .elementor-button' => array (
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'tablet' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'tablet' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'tablet' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'tablet' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'tablet' ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $ele_btn_default_tablet , '' , astra_get_tablet_breakpoint () );
$ele_btn_default_mobile = array (
'.elementor-widget-button .elementor-button.elementor-size-sm, .elementor-widget-button .elementor-button.elementor-size-xs, .elementor-widget-button .elementor-button.elementor-size-md, .elementor-widget-button .elementor-button.elementor-size-lg, .elementor-widget-button .elementor-button.elementor-size-xl, .elementor-widget-button .elementor-button' => array (
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'mobile' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'mobile' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'mobile' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'mobile' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'mobile' ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $ele_btn_default_mobile , '' , astra_get_mobile_breakpoint () );
}
if ( 'color-typo' === self :: elementor_default_color_font_setting () || 'color' === self :: elementor_default_color_font_setting () ) {
// Check if Global Elementor - Theme Style - button color is set. If yes then remove ( :visited ) CSS for the compatibility.
if ( false === self :: is_elementor_kit_button_color_set () ) {
$btn_text_color_selectors .= ' , .elementor-widget-button .elementor-button, .elementor-widget-button .elementor-button:visited' ;
} else {
$btn_text_color_selectors .= ' , .elementor-widget-button .elementor-button' ;
}
$ele_btn_color_builder_desktop = array (
'.elementor-widget-button .elementor-button' => array (
'border-color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
'background-color' => esc_attr ( $btn_bg_color ),
),
'.elementor-widget-button .elementor-button:hover, .elementor-widget-button .elementor-button:focus' => array (
'color' => esc_attr ( $btn_text_hover_color ),
'background-color' => esc_attr ( $btn_bg_hover_color ),
'border-color' => empty ( $btn_border_h_color ) ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $btn_border_h_color ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $ele_btn_color_builder_desktop );
}
$global_button_page_builder_text_color_desktop = array (
$btn_text_color_selectors => array (
'color' => esc_attr ( $btn_text_color ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $global_button_page_builder_text_color_desktop );
if ( 'color-typo' === self :: elementor_default_color_font_setting () || 'typo' === self :: elementor_default_color_font_setting () ) {
$ele_btn_typo_builder_desktop = array (
'.elementor-widget-button .elementor-button' => astra_get_font_array_css ( astra_get_option ( 'font-family-button' ), astra_get_option ( 'font-weight-button' ), $theme_btn_font_size , 'font-extras-button' ),
'body .elementor-button.elementor-size-sm, body .elementor-button.elementor-size-xs, body .elementor-button.elementor-size-md, body .elementor-button.elementor-size-lg, body .elementor-button.elementor-size-xl, body .elementor-button' => array (
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'desktop' ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $ele_btn_typo_builder_desktop );
}
$global_button_page_builder_desktop = array (
'.wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:focus' => array (
'color' => esc_attr ( $btn_text_hover_color ),
'background-color' => esc_attr ( $btn_bg_hover_color ),
'border-color' => empty ( $btn_border_h_color ) ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $btn_border_h_color ),
),
);
if ( defined ( 'ELEMENTOR_VERSION' ) ) {
$global_button_page_builder_desktop = array_merge (
$global_button_page_builder_desktop ,
array (
'.elementor-widget-heading h1.elementor-heading-title' => array (
'line-height' => esc_attr ( $h1_line_height ),
),
'.elementor-widget-heading h2.elementor-heading-title' => array (
'line-height' => esc_attr ( $h2_line_height ),
),
'.elementor-widget-heading h3.elementor-heading-title' => array (
'line-height' => esc_attr ( $h3_line_height ),
),
'.elementor-widget-heading h4.elementor-heading-title' => array (
'line-height' => esc_attr ( $h4_line_height ),
),
'.elementor-widget-heading h5.elementor-heading-title' => array (
'line-height' => esc_attr ( $h5_line_height ),
),
'.elementor-widget-heading h6.elementor-heading-title' => array (
'line-height' => esc_attr ( $h6_line_height ),
),
)
);
}
if ( $block_editor_legacy_setup && self :: gutenberg_core_patterns_compat () && ! astra_button_default_padding_updated () ) {
$theme_outline_gb_btn_top_border = isset ( $global_custom_button_border_size [ 'top' ] ) && ( '' !== $global_custom_button_border_size [ 'top' ] && '0' !== $global_custom_button_border_size [ 'top' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'top' ], 'px' ) : '2px' ;
$theme_outline_gb_btn_right_border = isset ( $global_custom_button_border_size [ 'right' ] ) && ( '' !== $global_custom_button_border_size [ 'right' ] && '0' !== $global_custom_button_border_size [ 'right' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'right' ], 'px' ) : '2px' ;
$theme_outline_gb_btn_bottom_border = isset ( $global_custom_button_border_size [ 'bottom' ] ) && ( '' !== $global_custom_button_border_size [ 'bottom' ] && '0' !== $global_custom_button_border_size [ 'bottom' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'bottom' ], 'px' ) : '2px' ;
$theme_outline_gb_btn_left_border = isset ( $global_custom_button_border_size [ 'left' ] ) && ( '' !== $global_custom_button_border_size [ 'left' ] && '0' !== $global_custom_button_border_size [ 'left' ] ) ? astra_get_css_value ( $global_custom_button_border_size [ 'left' ], 'px' ) : '2px' ;
$global_button_page_builder_desktop [ '.wp-block-button .wp-block-button__link' ] = array (
'border' => 'none' ,
'background-color' => esc_attr ( $btn_bg_color ),
'color' => esc_attr ( $btn_text_color ),
'font-family' => astra_get_font_family ( $theme_btn_font_family ),
'font-weight' => esc_attr ( $theme_btn_font_weight ),
'line-height' => esc_attr ( $theme_btn_line_height ),
'text-transform' => esc_attr ( $theme_btn_text_transform ),
'text-decoration' => esc_attr ( $theme_btn_text_decoration ),
'letter-spacing' => esc_attr ( $theme_btn_letter_spacing ),
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'desktop' ),
'padding' => '15px 30px' ,
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'desktop' ),
);
$global_button_page_builder_desktop [ '.wp-block-button.is-style-outline .wp-block-button__link' ] = array (
'border-style' => 'solid' ,
'border-top-width' => esc_attr ( $theme_outline_gb_btn_top_border ),
'border-right-width' => esc_attr ( $theme_outline_gb_btn_right_border ),
'border-left-width' => esc_attr ( $theme_outline_gb_btn_left_border ),
'border-bottom-width' => esc_attr ( $theme_outline_gb_btn_bottom_border ),
'border-color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
'padding-top' => 'calc(15px - ' . ( int ) $theme_outline_gb_btn_top_border . 'px)' ,
'padding-right' => 'calc(30px - ' . ( int ) $theme_outline_gb_btn_right_border . 'px)' ,
'padding-bottom' => 'calc(15px - ' . ( int ) $theme_outline_gb_btn_bottom_border . 'px)' ,
'padding-left' => 'calc(30px - ' . ( int ) $theme_outline_gb_btn_left_border . 'px)' ,
);
$global_button_page_builder_tablet = array (
'.wp-block-button .wp-block-button__link' => array (
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'tablet' ),
'border' => 'none' ,
'padding' => '15px 30px' ,
),
'.wp-block-button.is-style-outline .wp-block-button__link' => array (
'padding-top' => 'calc(15px - ' . ( int ) $theme_btn_top_border . 'px)' ,
'padding-right' => 'calc(30px - ' . ( int ) $theme_btn_right_border . 'px)' ,
'padding-bottom' => 'calc(15px - ' . ( int ) $theme_btn_bottom_border . 'px)' ,
'padding-left' => 'calc(30px - ' . ( int ) $theme_btn_left_border . 'px)' ,
),
);
$global_button_page_builder_mobile = array (
'.wp-block-button .wp-block-button__link' => array (
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'mobile' ),
'border' => 'none' ,
'padding' => '15px 30px' ,
),
'.wp-block-button.is-style-outline .wp-block-button__link' => array (
'padding-top' => 'calc(15px - ' . ( int ) $theme_btn_top_border . 'px)' ,
'padding-right' => 'calc(30px - ' . ( int ) $theme_btn_right_border . 'px)' ,
'padding-bottom' => 'calc(15px - ' . ( int ) $theme_btn_bottom_border . 'px)' ,
'padding-left' => 'calc(30px - ' . ( int ) $theme_btn_left_border . 'px)' ,
),
);
} else {
$default_border_size = '0' ;
if ( astra_button_default_padding_updated () || ! $block_editor_legacy_setup ) {
$default_border_size = '' ;
}
$selector = '.wp-block-button .wp-block-button__link' ;
if ( ! $block_editor_legacy_setup ) {
$selector .= ', .wp-block-search .wp-block-search__button, body .wp-block-file .wp-block-file__button' ;
}
$btn_top_border_size = isset ( $global_custom_button_border_size [ 'top' ] ) && '' !== $global_custom_button_border_size [ 'top' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'top' ], 'px' ) : $default_border_size ;
$btn_bottom_border_size = isset ( $global_custom_button_border_size [ 'bottom' ] ) && '' !== $global_custom_button_border_size [ 'bottom' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'bottom' ], 'px' ) : $default_border_size ;
$btn_right_border_size = isset ( $global_custom_button_border_size [ 'right' ] ) && '' !== $global_custom_button_border_size [ 'right' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'right' ], 'px' ) : $default_border_size ;
$btn_left_border_size = isset ( $global_custom_button_border_size [ 'left' ] ) && '' !== $global_custom_button_border_size [ 'left' ] ? astra_get_css_value ( $global_custom_button_border_size [ 'left' ], 'px' ) : $default_border_size ;
$global_button_page_builder_desktop [ $selector ] = array (
'border-style' => $btn_top_border_size || $btn_right_border_size || $btn_left_border_size || $btn_bottom_border_size ? 'solid' : '' ,
'border-top-width' => $btn_top_border_size ,
'border-right-width' => $btn_right_border_size ,
'border-left-width' => $btn_left_border_size ,
'border-bottom-width' => $btn_bottom_border_size ,
'border-color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
'background-color' => esc_attr ( $btn_bg_color ),
'color' => esc_attr ( $btn_text_color ),
'font-family' => astra_get_font_family ( $theme_btn_font_family ),
'font-weight' => esc_attr ( $theme_btn_font_weight ),
'line-height' => esc_attr ( $theme_btn_line_height ),
'text-transform' => esc_attr ( $theme_btn_text_transform ),
'text-decoration' => esc_attr ( $theme_btn_text_decoration ),
'letter-spacing' => esc_attr ( $theme_btn_letter_spacing ),
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'desktop' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'desktop' ),
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'desktop' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'desktop' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'desktop' ),
);
if ( $content_links_underline && $button_styling_improved ) {
$global_button_page_builder_desktop [ '.ast-single-post .entry-content .wp-block-button .wp-block-button__link, .ast-single-post .entry-content .wp-block-search .wp-block-search__button, body .entry-content .wp-block-file .wp-block-file__button' ] = array (
'text-decoration' => '' === $theme_btn_text_decoration || 'initial' === $theme_btn_text_decoration ? 'none' : esc_attr ( $theme_btn_text_decoration ),
);
}
$global_button_page_builder_tablet = array (
$selector => array (
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'tablet' ),
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'tablet' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'tablet' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'tablet' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'tablet' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'tablet' ),
),
);
$global_button_page_builder_mobile = array (
$selector => array (
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'mobile' ),
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'mobile' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'mobile' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'mobile' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'mobile' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'mobile' ),
),
);
}
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $global_button_page_builder_desktop );
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $global_button_page_builder_tablet , '' , astra_get_tablet_breakpoint () );
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $global_button_page_builder_mobile , '' , astra_get_mobile_breakpoint () );
} else {
$search_button_selector = $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button' : '' ;
$search_button_hover_selector = $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus' : '' ;
/**
* Global button CSS - Desktop .
*/
$global_button_desktop = array (
'.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array (
'color' => esc_attr ( $btn_text_color ),
'border-color' => empty ( $btn_border_color ) ? esc_attr ( $btn_bg_color ) : esc_attr ( $btn_border_color ),
'background-color' => esc_attr ( $btn_bg_color ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'desktop' ),
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'desktop' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'desktop' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'desktop' ),
'font-family' => astra_get_font_family ( $theme_btn_font_family ),
'font-weight' => esc_attr ( $theme_btn_font_weight ),
'font-size' => astra_get_font_css_value ( $theme_btn_font_size [ 'desktop' ], $theme_btn_font_size [ 'desktop-unit' ] ),
'text-transform' => esc_attr ( $theme_btn_text_transform ),
'text-decoration' => esc_attr ( $theme_btn_text_decoration ),
'letter-spacing' => esc_attr ( $theme_btn_letter_spacing ),
),
'button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover, input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus' . $search_button_hover_selector => array (
'color' => esc_attr ( $btn_text_hover_color ),
'background-color' => esc_attr ( $btn_bg_hover_color ),
'border-color' => empty ( $btn_border_h_color ) ? esc_attr ( $btn_bg_hover_color ) : esc_attr ( $btn_border_h_color ),
),
);
/**
* Global button CSS - Tablet .
*/
$global_button_tablet = array (
'.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array (
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'tablet' ),
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'tablet' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'tablet' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'tablet' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'tablet' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'tablet' ),
),
);
/**
* Global button CSS - Mobile .
*/
$global_button_mobile = array (
'.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array (
'padding-top' => astra_responsive_spacing ( $theme_btn_padding , 'top' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $theme_btn_padding , 'right' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $theme_btn_padding , 'left' , 'mobile' ),
'font-size' => astra_responsive_font ( $theme_btn_font_size , 'mobile' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'mobile' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'mobile' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'mobile' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'mobile' ),
),
);
}
if ( true === $update_customizer_strctural_defaults ) {
$global_button_desktop [ 'form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button.has-icon' ] = array (
'padding-top' => 'calc(' . astra_responsive_spacing ( $theme_btn_padding , 'top' , 'desktop' ) . ' - 3px)' ,
'padding-right' => 'calc(' . astra_responsive_spacing ( $theme_btn_padding , 'right' , 'desktop' ) . ' - 3px)' ,
'padding-bottom' => 'calc(' . astra_responsive_spacing ( $theme_btn_padding , 'bottom' , 'desktop' ) . ' - 3px)' ,
'padding-left' => 'calc(' . astra_responsive_spacing ( $theme_btn_padding , 'left' , 'desktop' ) . ' - 3px)' ,
);
}
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $global_button_desktop );
$parse_css .= astra_parse_css ( $global_button_tablet , '' , astra_get_tablet_breakpoint () );
$parse_css .= astra_parse_css ( $global_button_mobile , '' , astra_get_mobile_breakpoint () );
/* Parse CSS from array() -> min-width: (tablet-breakpoint) px CSS */
if ( empty ( $site_content_width ) ) {
$container_min_tablet_css = array (
'.ast-container' => array (
'max-width' => '100%' ,
),
);
$parse_css .= astra_parse_css ( $container_min_tablet_css , astra_get_tablet_breakpoint () );
}
$container_min_mobile_css = array (
'.ast-container' => array (
'max-width' => '100%' ,
),
);
/**
* Global button CSS - -> max - width : ( tablet - breakpoint ) px .
*/
$global_button_tablet = array (
'.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' => array (
'font-size' => astra_get_font_css_value ( $theme_btn_font_size [ 'tablet' ], $theme_btn_font_size [ 'tablet-unit' ] ),
),
'.ast-mobile-header-stack .main-header-bar .ast-search-menu-icon' => array (
'display' => 'inline-block' ,
),
'.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-stack .main-header-bar .ast-search-icon' => array (
'margin' => '0' ,
),
'.ast-comment-avatar-wrap img' => array (
'max-width' => '2.5em' ,
),
'.ast-comment-meta' => array (
'padding' => '0 1.8888em 1.3333em' ,
),
);
if ( ! self :: astra_4_6_0_compatibility () ) {
$global_button_tablet [ '.ast-separate-container .ast-comment-list li.depth-1' ] = array (
'padding' => '1.5em 2.14em' ,
);
$global_button_tablet [ '.ast-separate-container .comment-respond' ] = array (
'padding' => '2em 2.14em' ,
);
}
/* Parse CSS from array() -> max-width: (tablet-breakpoint) px CSS */
$parse_css .= astra_parse_css ( $global_button_tablet , '' , astra_get_tablet_breakpoint () );
/* Parse CSS from array() -> min-width: (mobile-breakpoint) px CSS */
$parse_css .= astra_parse_css ( $container_min_mobile_css , astra_get_mobile_breakpoint () );
$global_button_mobile = array (
'.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .comments-title, .ast-separate-container .ast-archive-description' => array (
'padding' => '1.5em 1em' ,
),
'.ast-separate-container #content .ast-container' => array (
'padding-left' => '0.54em' ,
'padding-right' => '0.54em' ,
),
'.ast-separate-container .ast-comment-list .bypostauthor' => array (
'padding' => '.5em' ,
),
'.ast-search-menu-icon.ast-dropdown-active .search-field' => array (
'width' => '170px' ,
),
'.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' => array (
'font-size' => astra_get_font_css_value ( $theme_btn_font_size [ 'mobile' ], $theme_btn_font_size [ 'mobile-unit' ] ),
),
);
if ( ! self :: astra_4_6_0_compatibility () ) {
$global_button_tablet [ '.ast-separate-container .ast-comment-list li.depth-1' ] = array (
'padding' => '1.5em 1em' ,
'margin-bottom' => '1.5em' ,
);
}
if ( 'no-sidebar' !== astra_page_layout () ) {
$global_button_mobile [ '.ast-separate-container #secondary' ] = array (
'padding-top' => 0 ,
);
$global_button_mobile [ '.ast-separate-container.ast-two-container #secondary .widget' ] = array (
'margin-bottom' => '1.5em' ,
'padding-left' => '1em' ,
'padding-right' => '1em' ,
);
}
// Add/Remove logo max-width: 100%; CSS for logo in old header layout.
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active && false === self :: remove_logo_max_width_mobile_static_css () ) {
$global_button_mobile [ '.site-branding img, .site-header .site-logo-img .custom-logo-link img' ] = array (
'max-width' => '100%' ,
);
}
/* Parse CSS from array() -> max-width: (mobile-breakpoint) px */
$parse_css .= astra_parse_css ( $global_button_mobile , '' , astra_get_mobile_breakpoint () );
if ( Astra_Builder_Helper :: is_component_loaded ( 'search' , 'header' , 'mobile' ) ) {
if ( $is_site_rtl ) {
$global_button_tablet_lang_direction_css = array (
'.ast-header-break-point .ast-search-menu-icon.slide-search .search-form' => array (
'left' => '0' ,
),
'.ast-header-break-point .ast-mobile-header-stack .ast-search-menu-icon.slide-search .search-form' => array (
'left' => '-1em' ,
),
);
} else {
$global_button_tablet_lang_direction_css = array (
'.ast-header-break-point .ast-search-menu-icon.slide-search .search-form' => array (
'right' => '0' ,
),
'.ast-header-break-point .ast-mobile-header-stack .ast-search-menu-icon.slide-search .search-form' => array (
'right' => '-1em' ,
),
);
}
$parse_css .= astra_parse_css ( $global_button_tablet_lang_direction_css , '' , astra_get_tablet_breakpoint () );
}
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active && 'custom-button' === $header_custom_button_style ) {
$css_output = array (
// Header button typography stylings.
'.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button, .ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'font-family' => astra_get_font_family ( $header_custom_btn_font_family ),
'font-weight' => esc_attr ( $header_custom_btn_font_weight ),
'font-size' => astra_responsive_font ( $header_custom_btn_font_size , 'desktop' ),
'line-height' => esc_attr ( $header_custom_btn_line_height ),
'text-transform' => esc_attr ( $header_custom_btn_text_transform ),
'letter-spacing' => astra_get_css_value ( $header_custom_btn_letter_spacing , 'px' ),
),
// Custom menu item button - Default.
'.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'color' => esc_attr ( $header_custom_button_text_color ),
'background-color' => esc_attr ( $header_custom_button_back_color ),
'padding-top' => astra_responsive_spacing ( $header_custom_button_spacing , 'top' , 'desktop' ),
'padding-bottom' => astra_responsive_spacing ( $header_custom_button_spacing , 'bottom' , 'desktop' ),
'padding-left' => astra_responsive_spacing ( $header_custom_button_spacing , 'left' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $header_custom_button_spacing , 'right' , 'desktop' ),
'border-top-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'top' , 'desktop' ),
'border-top-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'right' , 'desktop' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'bottom' , 'desktop' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $btn_border_radius_fields , 'left' , 'desktop' ),
'border-style' => 'solid' ,
'border-color' => esc_attr ( $header_custom_button_border_color ),
'border-top-width' => isset ( $header_custom_button_border_size [ 'top' ] ) && '' !== $header_custom_button_border_size [ 'top' ] ? astra_get_css_value ( $header_custom_button_border_size [ 'top' ], 'px' ) : '0px' ,
'border-right-width' => isset ( $header_custom_button_border_size [ 'right' ] ) && '' !== $header_custom_button_border_size [ 'right' ] ? astra_get_css_value ( $header_custom_button_border_size [ 'right' ], 'px' ) : '0px' ,
'border-left-width' => isset ( $header_custom_button_border_size [ 'left' ] ) && '' !== $header_custom_button_border_size [ 'left' ] ? astra_get_css_value ( $header_custom_button_border_size [ 'left' ], 'px' ) : '0px' ,
'border-bottom-width' => isset ( $header_custom_button_border_size [ 'bottom' ] ) && '' !== $header_custom_button_border_size [ 'bottom' ] ? astra_get_css_value ( $header_custom_button_border_size [ 'bottom' ], 'px' ) : '0px' ,
),
'.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button:hover' => array (
'color' => esc_attr ( $header_custom_button_text_h_color ),
'background-color' => esc_attr ( $header_custom_button_back_h_color ),
'border-color' => esc_attr ( $header_custom_button_border_h_color ),
),
// Custom menu item button - Transparent.
'.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'color' => esc_attr ( $header_custom_trans_button_text_color ),
'background-color' => esc_attr ( $header_custom_trans_button_back_color ),
'padding-top' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'top' , 'desktop' ),
'padding-bottom' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'bottom' , 'desktop' ),
'padding-left' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'left' , 'desktop' ),
'padding-right' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'right' , 'desktop' ),
'border-radius' => astra_get_css_value ( $header_custom_trans_button_radius , 'px' ),
'border-style' => 'solid' ,
'border-color' => esc_attr ( $header_custom_trans_button_border_color ),
'border-top-width' => isset ( $header_custom_trans_button_border_size [ 'top' ] ) && '' !== $header_custom_trans_button_border_size [ 'top' ] ? astra_get_css_value ( $header_custom_trans_button_border_size [ 'top' ], 'px' ) : '' ,
'border-right-width' => isset ( $header_custom_trans_button_border_size [ 'right' ] ) && '' !== $header_custom_trans_button_border_size [ 'right' ] ? astra_get_css_value ( $header_custom_trans_button_border_size [ 'right' ], 'px' ) : '' ,
'border-left-width' => isset ( $header_custom_trans_button_border_size [ 'left' ] ) && '' !== $header_custom_trans_button_border_size [ 'left' ] ? astra_get_css_value ( $header_custom_trans_button_border_size [ 'left' ], 'px' ) : '' ,
'border-bottom-width' => isset ( $header_custom_trans_button_border_size [ 'bottom' ] ) && '' !== $header_custom_trans_button_border_size [ 'bottom' ] ? astra_get_css_value ( $header_custom_trans_button_border_size [ 'bottom' ], 'px' ) : '' ,
),
'.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button:hover' => array (
'color' => esc_attr ( $header_custom_trans_button_text_h_color ),
'background-color' => esc_attr ( $header_custom_trans_button_back_h_color ),
'border-color' => esc_attr ( $header_custom_trans_button_border_h_color ),
),
);
/* Parse CSS from array() */
$parse_css .= astra_parse_css ( $css_output );
/* Parse CSS from array()*/
/* Custom Menu Item Button */
$custom_button_css = array (
'.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'font-size' => astra_responsive_font ( $header_custom_btn_font_size , 'tablet' ),
'padding-top' => astra_responsive_spacing ( $header_custom_button_spacing , 'top' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $header_custom_button_spacing , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $header_custom_button_spacing , 'left' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $header_custom_button_spacing , 'right' , 'tablet' ),
),
);
$custom_trans_button_css = array (
'.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'font-size' => astra_responsive_font ( $header_custom_btn_font_size , 'tablet' ),
'padding-top' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'top' , 'tablet' ),
'padding-bottom' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'bottom' , 'tablet' ),
'padding-left' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'left' , 'tablet' ),
'padding-right' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'right' , 'tablet' ),
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( array_merge ( $custom_button_css , $custom_trans_button_css ), '' , astra_get_tablet_breakpoint () );
/* Custom Menu Item Button */
$custom_button = array (
'.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'font-size' => astra_responsive_font ( $header_custom_btn_font_size , 'mobile' ),
'padding-top' => astra_responsive_spacing ( $header_custom_button_spacing , 'top' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $header_custom_button_spacing , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $header_custom_button_spacing , 'left' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $header_custom_button_spacing , 'right' , 'mobile' ),
),
);
$custom_trans_button = array (
'.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array (
'font-size' => astra_responsive_font ( $header_custom_btn_font_size , 'mobile' ),
'padding-top' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'top' , 'mobile' ),
'padding-bottom' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'bottom' , 'mobile' ),
'padding-left' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'left' , 'mobile' ),
'padding-right' => astra_responsive_spacing ( $header_custom_trans_button_spacing , 'right' , 'mobile' ),
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( array_merge ( $custom_button , $custom_trans_button ), '' , astra_get_mobile_breakpoint () );
}
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
// Foreground color.
if ( ! empty ( $footer_adv_link_color ) ) {
$footer_adv_tagcloud = array (
'.footer-adv .tagcloud a:hover, .footer-adv .tagcloud a.current-item' => array (
'color' => astra_get_foreground_color ( $footer_adv_link_color ),
),
'.footer-adv .calendar_wrap #today' => array (
'color' => astra_get_foreground_color ( $footer_adv_link_color ),
),
);
$parse_css .= astra_parse_css ( $footer_adv_tagcloud );
}
}
/* Width for Footer */
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active && 'content' !== $astra_footer_width ) {
$genral_global_responsive = array (
'.ast-small-footer .ast-container' => array (
'max-width' => '100%' ,
'padding-left' => '35px' ,
'padding-right' => '35px' ,
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( $genral_global_responsive , astra_get_tablet_breakpoint ( '' , 1 ) );
}
/* Preventing link redirection when the cart is clicked */
if ( 'redirect' !== astra_get_option ( 'responsive-cart-click-action' ) ) {
$desktop_cart_link_event = array (
' #ast-mobile-header .ast-site-header-cart-li a' => array (
'pointer-events' => 'none' ,
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( $desktop_cart_link_event );
}
/* Preventing link redirection when the cart is clicked */
if ( is_customize_preview () && 'redirect' !== astra_get_option ( 'woo-header-cart-click-action' ) ) {
$responsive_cart_link_event = array (
' #ast-desktop-header .ast-site-header-cart-li a' => array (
'pointer-events' => 'none' ,
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( $responsive_cart_link_event );
}
/* Width for Comments for Full Width / Stretched Template */
if ( 'page-builder' === $container_layout ) {
$page_builder_comment = array (
'.ast-page-builder-template .comments-area, .single.ast-page-builder-template .entry-header, .single.ast-page-builder-template .post-navigation, .single.ast-page-builder-template .ast-single-related-posts-container' => array (
'max-width' => astra_get_css_value ( $site_content_width + 40 , 'px' ),
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( $page_builder_comment , astra_get_mobile_breakpoint ( '' , 1 ) );
}
$astra_spearate_container_selector = 'body, .ast-separate-container' ;
if ( astra_has_gcp_typo_preset_compatibility () && true === astra_apply_content_background_fullwidth_layouts () ) {
$astra_spearate_container_selector = '.ast-separate-container' ;
}
$separate_container_css = array (
$astra_spearate_container_selector => astra_get_responsive_background_obj ( $box_bg_obj , 'desktop' ),
);
$parse_css .= astra_parse_css ( $separate_container_css );
if ( $block_editor_legacy_setup ) {
/**
* Added new compatibility & layout designs for core block layouts .
* - Compatibility for alignwide , alignfull , default width .
*
* @ since 3.7 . 4
*/
$entry_content_selector = '.entry-content' ;
if ( true === $improve_gb_ui ) {
$entry_content_selector = '.entry-content >' ;
$core_blocks_width_desktop_ui_css = array (
'.entry-content > .wp-block-group, .entry-content > .wp-block-media-text, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns' => array (
'max-width' => '58em' ,
'width' => 'calc(100% - 4em)' ,
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
'.entry-content [class*="__inner-container"] > .alignfull' => array (
'max-width' => '100%' ,
'margin-left' => 0 ,
'margin-right' => 0 ,
),
'.entry-content [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright)' => array (
'margin-left' => 'auto' ,
'margin-right' => 'auto' ,
),
'.entry-content [class*="__inner-container"] > *:not(.alignwide):not(p):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide):not(iframe)' => array (
'max-width' => '50rem' ,
'width' => '100%' ,
),
);
/* Parse CSS from array -> Desktop CSS. */
$parse_css .= astra_parse_css ( $core_blocks_width_desktop_ui_css );
$core_blocks_min_width_tablet_ui_css = array (
'.entry-content > .wp-block-group.alignwide.has-background, .entry-content > .wp-block-group.alignfull.has-background, .entry-content > .wp-block-cover.alignwide, .entry-content > .wp-block-cover.alignfull, .entry-content > .wp-block-columns.has-background.alignwide, .entry-content > .wp-block-columns.has-background.alignfull' => array (
'margin-top' => '0' ,
'margin-bottom' => '0' ,
'padding' => '6em 4em' ,
),
'.entry-content > .wp-block-columns.has-background' => array (
'margin-bottom' => '0' ,
),
);
/* Parse CSS from array -> min-width(tablet-breakpoint) */
$parse_css .= astra_parse_css ( $core_blocks_min_width_tablet_ui_css , astra_get_tablet_breakpoint () );
$core_blocks_min_width_1200_ui_css = array (
'.entry-content .alignfull p' => array (
'max-width' => astra_get_css_value ( $site_content_width , 'px' ),
),
'.entry-content .alignfull' => array (
'max-width' => '100%' ,
'width' => '100%' ,
),
'.ast-page-builder-template .entry-content .alignwide, .entry-content [class*="__inner-container"] > .alignwide' => array (
'max-width' => astra_get_css_value ( $site_content_width , 'px' ),
'margin-left' => '0' ,
'margin-right' => '0' ,
),
'.entry-content .alignfull [class*="__inner-container"] > .alignwide' => array (
'max-width' => '80rem' ,
),
);
/* Parse CSS from array -> min-width( 1200px ) */
$parse_css .= astra_parse_css ( $core_blocks_min_width_1200_ui_css , '1200' );
$core_blocks_min_width_mobile_ui_css = array (
'.site-main .entry-content > .alignwide' => array (
'margin' => '0 auto' ,
),
'.wp-block-group.has-background, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns.has-background' => array (
'padding' => '4em' ,
'margin-top' => '0' ,
'margin-bottom' => '0' ,
),
'.entry-content .wp-block-media-text.alignfull .wp-block-media-text__content, .entry-content .wp-block-media-text.has-background .wp-block-media-text__content' => array (
'padding' => '0 8%' ,
),
);
/* Parse CSS from array -> min-width(mobile-breakpoint + 1) */
$parse_css .= astra_parse_css ( $core_blocks_min_width_mobile_ui_css , astra_get_mobile_breakpoint ( '' , 1 ) );
} else {
$astra_no_sidebar_layout_css =
'.ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' . alignfull {
margin - left : - 6.67 em ;
margin - right : - 6.67 em ;
width : auto ;
}
@ media ( max - width : 1200 px ) {
. ast - no - sidebar . ast - separate - container ' . $entry_content_selector . ' . alignfull {
margin - left : - 2.4 em ;
margin - right : - 2.4 em ;
}
}
@ media ( max - width : 768 px ) {
. ast - no - sidebar . ast - separate - container ' . $entry_content_selector . ' . alignfull {
margin - left : - 2.14 em ;
margin - right : - 2.14 em ;
}
}
@ media ( max - width : 544 px ) {
. ast - no - sidebar . ast - separate - container ' . $entry_content_selector . ' . alignfull {
margin - left : - 1 em ;
margin - right : - 1 em ;
}
}
. ast - no - sidebar . ast - separate - container ' . $entry_content_selector . ' . alignwide {
margin - left : - 20 px ;
margin - right : - 20 px ;
}
. ast - no - sidebar . ast - separate - container ' . $entry_content_selector . ' . wp - block - column . alignfull ,
. ast - no - sidebar . ast - separate - container ' . $entry_content_selector . ' . wp - block - column . alignwide {
margin - left : auto ;
margin - right : auto ;
width : 100 % ;
}
' ;
$parse_css .= Astra_Enqueue_Scripts :: trim_css ( $astra_no_sidebar_layout_css );
}
}
$tablet_typo = array ();
if ( isset ( $body_font_size [ 'tablet' ] ) && '' != $body_font_size [ 'tablet' ] ) {
$tablet_typo = array (
// Widget Title.
'.widget-title' => array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size [ 'tablet' ] * 1.428571429 , 'px' , 'tablet' ),
),
);
}
/* Tablet Typography */
$tablet_typography = array (
'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array (
'font-size' => astra_responsive_font ( $body_font_size , 'tablet' ),
),
'#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' => array (
'font-size' => astra_responsive_font ( $body_font_size , 'tablet' ),
),
'.site-title' => array (
'font-size' => astra_responsive_font ( $site_title_font_size , 'tablet' ),
'display' => esc_attr ( $tablet_title_visibility ),
),
'.site-header .site-description' => array (
'font-size' => astra_responsive_font ( $site_tagline_font_size , 'tablet' ),
'display' => esc_attr ( $tablet_tagline_visibility ),
),
'.entry-title' => array (
'font-size' => astra_responsive_font ( $archive_post_title_font_size , 'tablet' ),
),
'.ast-blog-single-element.ast-taxonomy-container a' => array (
'font-size' => astra_responsive_font ( $archive_post_tax_font_size , 'tablet' ),
),
'.ast-blog-meta-container' => array (
'font-size' => astra_responsive_font ( $archive_post_meta_font_size , 'tablet' ),
),
'blog-layout-4' === $blog_layout ? '.archive .ast-article-post .ast-article-inner, .blog .ast-article-post .ast-article-inner' : '.archive .ast-article-post, .ast-article-post .post-thumb-img-content, .ast-blog-layout-6-grid .ast-article-inner .post-thumb::after, .blog .ast-article-post' => array (
'border-top-left-radius' => astra_responsive_spacing ( $archive_cards_radius , 'top' , 'tablet' ),
'border-top-right-radius' => astra_responsive_spacing ( $archive_cards_radius , 'right' , 'tablet' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $archive_cards_radius , 'bottom' , 'tablet' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $archive_cards_radius , 'left' , 'tablet' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h1, .entry-content :where(h1), .entry-content :where(h1) a' ,
'h1, .entry-content :where(h1)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h1_font_size , 'tablet' , $heading_font_size_comp ? '' : 30 ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h2, .entry-content :where(h2), .entry-content :where(h2) a' ,
'h2, .entry-content :where(h2)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h2_font_size , 'tablet' , $heading_font_size_comp ? '' : 25 ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h3, .entry-content :where(h3), .entry-content :where(h3) a' ,
'h3, .entry-content :where(h3)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h3_font_size , 'tablet' , $heading_font_size_comp ? '' : 20 ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h4, .entry-content :where(h4), .entry-content :where(h4) a' ,
'h4, .entry-content :where(h4)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h4_font_size , 'tablet' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h5, .entry-content :where(h5), .entry-content :where(h5) a' ,
'h5, .entry-content :where(h5)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h5_font_size , 'tablet' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h6, .entry-content :where(h6), .entry-content :where(h6) a' ,
'h6, .entry-content :where(h6)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h6_font_size , 'tablet' ),
),
'.astra-logo-svg' => array (
'width' => astra_get_css_value ( $header_logo_width [ 'tablet' ], 'px' ),
),
'.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' => array (
'height' => astra_get_css_value ( ! empty ( $header_logo_width [ 'tablet-svg-height' ] ) && ! is_customize_preview () ? $header_logo_width [ 'tablet-svg-height' ] : '' , 'px' ),
),
is_customize_preview () ? '.ast-sg-logo-section .custom-logo-link img, header .custom-logo-link img, .ast-header-break-point .site-logo-img .custom-mobile-logo-link img' : 'header .custom-logo-link img, .ast-header-break-point .site-logo-img .custom-mobile-logo-link img' => array (
'max-width' => astra_get_css_value ( $header_logo_width [ 'tablet' ], 'px' ),
'width' => astra_get_css_value ( $header_logo_width [ 'tablet' ], 'px' ),
),
'body, .ast-separate-container' => astra_get_responsive_background_obj ( $box_bg_obj , 'tablet' ),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( array_merge ( $tablet_typo , $tablet_typography ), '' , astra_get_tablet_breakpoint () );
$mobile_typo = array ();
if ( isset ( $body_font_size [ 'mobile' ] ) && '' !== $body_font_size [ 'mobile' ] ) {
$mobile_typo = array (
// Widget Title.
'.widget-title' => array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size [ 'mobile' ] * 1.428571429 , 'px' , 'mobile' ),
),
);
}
/* Mobile Typography */
$mobile_typography = array (
'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array (
'font-size' => astra_responsive_font ( $body_font_size , 'mobile' ),
),
'#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' => array (
'font-size' => astra_responsive_font ( $body_font_size , 'mobile' ),
),
'.site-title' => array (
'font-size' => astra_responsive_font ( $site_title_font_size , 'mobile' ),
'display' => esc_attr ( $mobile_title_visibility ),
),
'.site-header .site-description' => array (
'font-size' => astra_responsive_font ( $site_tagline_font_size , 'mobile' ),
'display' => esc_attr ( $mobile_tagline_visibility ),
),
'.entry-title' => array (
'font-size' => astra_responsive_font ( $archive_post_title_font_size , 'mobile' ),
),
'.ast-blog-single-element.ast-taxonomy-container a' => array (
'font-size' => astra_responsive_font ( $archive_post_tax_font_size , 'mobile' ),
),
'.ast-blog-meta-container' => array (
'font-size' => astra_responsive_font ( $archive_post_meta_font_size , 'mobile' ),
),
'blog-layout-4' === $blog_layout ? '.archive .ast-article-post .ast-article-inner, .blog .ast-article-post .ast-article-inner' : '.archive .ast-article-post, .ast-article-post .post-thumb-img-content, .ast-blog-layout-6-grid .ast-article-inner .post-thumb::after, .blog .ast-article-post' => array (
'border-top-left-radius' => astra_responsive_spacing ( $archive_cards_radius , 'top' , 'mobile' ),
'border-top-right-radius' => astra_responsive_spacing ( $archive_cards_radius , 'right' , 'mobile' ),
'border-bottom-right-radius' => astra_responsive_spacing ( $archive_cards_radius , 'bottom' , 'mobile' ),
'border-bottom-left-radius' => astra_responsive_spacing ( $archive_cards_radius , 'left' , 'mobile' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h1, .entry-content :where(h1), .entry-content :where(h1) a' ,
'h1, .entry-content :where(h1)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h1_font_size , 'mobile' , $heading_font_size_comp ? '' : 30 ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h2, .entry-content :where(h2), .entry-content :where(h2) a' ,
'h2, .entry-content :where(h2)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h2_font_size , 'mobile' , $heading_font_size_comp ? '' : 25 ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h3, .entry-content :where(h3), .entry-content :where(h3) a' ,
'h3, .entry-content :where(h3)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h3_font_size , 'mobile' , $heading_font_size_comp ? '' : 20 ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h4, .entry-content :where(h4), .entry-content :where(h4) a' ,
'h4, .entry-content :where(h4)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h4_font_size , 'mobile' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h5, .entry-content :where(h5), .entry-content :where(h5) a' ,
'h5, .entry-content :where(h5)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h5_font_size , 'mobile' ),
),
// Conditionally select the css selectors with or without achors.
self :: conditional_headings_css_selectors (
2025-08-27 08:44:30 +02:00
'h6, .entry-content :where(h6), .entry-content :where(h6) a' ,
'h6, .entry-content :where(h6)'
2025-07-27 19:55:19 +02:00
) => array (
'font-size' => astra_responsive_font ( $heading_h6_font_size , 'mobile' ),
),
is_customize_preview () ? '.ast-sg-logo-section .custom-logo-link img, header .custom-logo-link img, .ast-header-break-point .site-branding img, .ast-header-break-point .custom-logo-link img' : 'header .custom-logo-link img, .ast-header-break-point .site-branding img, .ast-header-break-point .custom-logo-link img' => array (
'max-width' => astra_get_css_value ( $header_logo_width [ 'mobile' ], 'px' ),
'width' => astra_get_css_value ( $header_logo_width [ 'mobile' ], 'px' ),
),
'.astra-logo-svg' => array (
'width' => astra_get_css_value ( $header_logo_width [ 'mobile' ], 'px' ),
),
'.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' => array (
'height' => astra_get_css_value ( ! empty ( $header_logo_width [ 'mobile-svg-height' ] ) && ! is_customize_preview () ? $header_logo_width [ 'mobile-svg-height' ] : '' , 'px' ),
),
'.ast-header-break-point .site-logo-img .custom-mobile-logo-link img' => array (
'max-width' => astra_get_css_value ( $header_logo_width [ 'mobile' ], 'px' ),
),
'body, .ast-separate-container' => astra_get_responsive_background_obj ( $box_bg_obj , 'mobile' ),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( array_merge ( $mobile_typo , $mobile_typography ), '' , astra_get_mobile_breakpoint () );
/*
* Responsive Font Size for Tablet & Mobile to the root HTML element
*/
// Tablet Font Size for HTML tag.
if ( '' == $body_font_size [ 'tablet' ] ) {
$html_tablet_typography = array (
'html' => array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size_desktop * 5.7 , '%' ),
),
);
$parse_css .= astra_parse_css ( $html_tablet_typography , '' , astra_get_tablet_breakpoint () );
}
// Mobile Font Size for HTML tag.
if ( '' == $body_font_size [ 'mobile' ] ) {
$html_mobile_typography = array (
'html' => array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size_desktop * 5.7 , '%' ),
),
);
} else {
$html_mobile_typography = array (
'html' => array (
'font-size' => astra_get_font_css_value ( ( int ) $body_font_size_desktop * 6.25 , '%' ),
),
);
}
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( $html_mobile_typography , '' , astra_get_mobile_breakpoint () );
/* Site width Responsive */
$site_width = array (
'.ast-container' => array (
'max-width' => astra_get_css_value ( $site_content_width + 40 , 'px' ),
),
);
/* Parse CSS from array()*/
$parse_css .= astra_parse_css ( $site_width , astra_get_tablet_breakpoint ( '' , 1 ) );
/* Narrow width container layout dynamic css */
$parse_css .= astra_narrow_container_width ( astra_get_content_layout (), $narrow_container_max_width );
// Page Meta.
$parse_css .= astra_narrow_container_width ( astra_get_content_layout (), $narrow_container_max_width );
if ( Astra_Builder_Helper :: apply_flex_based_css () ) {
$max_site_container_css = array (
'.site-content .ast-container' => array (
'display' => 'flex' ,
),
);
$parse_css .= astra_parse_css ( $max_site_container_css , astra_get_tablet_breakpoint ( '' , 1 ) );
$min_site_container_css = array (
'.site-content .ast-container' => array (
'flex-direction' => 'column' ,
),
);
$parse_css .= astra_parse_css ( $min_site_container_css , '' , astra_get_tablet_breakpoint () );
}
/**
* Astra Fonts
*/
if ( apply_filters ( 'astra_enable_default_fonts' , true ) ) {
$astra_fonts = '@font-face {' ;
$astra_fonts .= 'font-family: "Astra";' ;
$astra_fonts .= 'src: url(' . ASTRA_THEME_URI . 'assets/fonts/astra.woff) format("woff"),' ;
$astra_fonts .= 'url(' . ASTRA_THEME_URI . 'assets/fonts/astra.ttf) format("truetype"),' ;
$astra_fonts .= 'url(' . ASTRA_THEME_URI . 'assets/fonts/astra.svg#astra) format("svg");' ;
$astra_fonts .= 'font-weight: normal;' ;
$astra_fonts .= 'font-style: normal;' ;
$astra_fonts .= 'font-display: ' . astra_get_fonts_display_property () . ';' ;
$astra_fonts .= '}' ;
$parse_css .= $astra_fonts ;
}
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
/**
* Hide the default naviagtion markup for responsive devices .
* Once class . ast - header - break - point is added to the body below CSS will be override by the
* . ast - header - break - point class
*/
$astra_navigation = '@media (max-width:' . $header_break_point . 'px) {' ;
$astra_navigation .= '.main-header-bar .main-header-bar-navigation{' ;
$astra_navigation .= 'display:none;' ;
$astra_navigation .= '}' ;
$astra_navigation .= '}' ;
$parse_css .= $astra_navigation ;
}
/* Blog */
if ( 'custom' === $blog_width ) {
/* Site width Responsive */
$blog_css = array (
'.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container' => array (
'max-width' => astra_get_css_value ( $blog_max_width , 'px' ),
),
);
$parse_css .= astra_parse_css ( $blog_css , astra_get_tablet_breakpoint ( '' , 1 ) );
}
/* Single Blog */
if ( 'custom' === $single_post_max ) {
/* Site width Responsive */
$single_blog_css = array (
'.single-post .site-content > .ast-container' => array (
'max-width' => astra_get_css_value ( $single_post_max_width , 'px' ),
),
);
$parse_css .= astra_parse_css ( $single_blog_css , astra_get_tablet_breakpoint ( '' , 1 ) );
}
/* Single Page */
if ( 'custom' === $single_page_max ) {
/* Site width Responsive */
$single_page_css = array (
' .page .site-content > .ast-container' => array (
'max-width' => astra_get_css_value ( $single_page_max_width , 'px' ),
),
);
$parse_css .= astra_parse_css ( $single_page_css , astra_get_tablet_breakpoint ( '' , 1 ) );
}
if ( self :: astra_headings_clear_compatibility () && is_singular () ) {
/**
* Fix with backward compatibility for single blogs heading text wrap with image issue .
*/
$parse_css .= astra_parse_css (
array (
2025-08-27 08:44:30 +02:00
'.entry-content :where(h1, h2, h3, h4, h5, h6)' => array (
2025-07-27 19:55:19 +02:00
'clear' => 'none' ,
),
)
);
}
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
$blog_addon_condition = defined ( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension :: is_active ( 'blog-pro' );
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
if ( is_search () || is_archive () || is_home () ) {
if ( ! $blog_addon_condition ) {
// If a old pro user has used blog-layout-1 to 3 and disabled astra addon then moved layout to 'blog-layout-4'.
if ( 'blog-layout-1' === $blog_layout || 'blog-layout-2' === $blog_layout || 'blog-layout-3' === $blog_layout ) {
$blog_layout = 'blog-layout-4' ;
}
}
$bl_selector = '.ast-' . esc_attr ( $blog_layout ) . '-grid' ;
$blog_grid = astra_get_option ( 'blog-grid' );
$blog_layout_css = array ();
if ( 'blog-layout-4' === $blog_layout || 'blog-layout-6' === $blog_layout ) {
$blog_layout_css = array (
$bl_selector . ' .ast-article-post' => array (
'border' => '0' ,
),
$bl_selector . ' .ast-article-inner .wp-post-image' => array (
'width' => '100%' ,
),
);
if ( $blog_addon_condition && 1 === $blog_grid ) {
$blog_layout_css [ '.ast-separate-container .ast-article-post' ] = array (
'padding' => '1.5em' ,
);
}
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
if ( ! ( defined ( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension :: is_active ( 'blog-pro' ) ) || ( $blog_addon_condition && 1 !== $blog_grid ) ) {
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
$blog_layout_css [ '.ast-article-inner' ] = array (
'padding' => '1.5em' ,
);
}
$blog_layout_css [ $bl_selector . ' .ast-row' ] = array (
'display' => 'flex' ,
'flex-wrap' => 'wrap' ,
'flex-flow' => 'row wrap' ,
'align-items' => 'stretch' ,
);
}
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
if ( ! ( defined ( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension :: is_active ( 'blog-pro' ) ) ) {
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
if ( 'blog-layout-4' === $blog_layout || 'blog-layout-6' === $blog_layout ) {
$blog_layout_css [ $bl_selector . ' .ast-article-post' ] = array (
'width' => '33.33%' ,
'margin-bottom' => '2em' ,
'border-bottom' => '0' ,
'background-color' => 'transparent' ,
);
$blog_layout_css [ '.ast-separate-container ' . $bl_selector . ' .ast-article-post' ] = array (
'padding' => '0 1em 0' ,
);
$blog_layout_css [ '.ast-separate-container.ast-desktop .ast-blog-layout-4-grid .ast-row' ] = array (
'margin-left' => '-1em' ,
'margin-right' => '-1em' ,
);
}
$blog_layout_css [ $bl_selector . ' .ast-article-inner' ] = array (
'box-shadow' => '0px 6px 15px -2px rgba(16, 24, 40, 0.05)' ,
);
$blog_layout_css [ '.ast-separate-container ' . $bl_selector . ' .ast-article-inner, .ast-plain-container ' . $bl_selector . ' .ast-article-inner' ] = array (
'height' => '100%' ,
);
}
$parse_css .= astra_parse_css ( $blog_layout_css );
if ( 'blog-layout-4' === $blog_layout ) {
$blog_layout_grid_css = array (
'.ast-row .blog-layout-4 .post-content, .blog-layout-4 .post-thumb' => array (
'padding-' . $rtl_left . '' => '0' ,
'padding-' . $rtl_right . '' => '0' ,
),
'.ast-article-post.remove-featured-img-padding .blog-layout-4 .post-content .ast-blog-featured-section:first-child .post-thumb-img-content' => array (
'margin-top' => '-1.5em' ,
),
'.ast-article-post.remove-featured-img-padding .blog-layout-4 .post-content .ast-blog-featured-section .post-thumb-img-content' => array (
'margin-' . $rtl_left . '' => '-1.5em' ,
'margin-' . $rtl_right . '' => '-1.5em' ,
),
);
$parse_css .= astra_parse_css ( $blog_layout_grid_css );
}
if ( 'blog-layout-5' === $blog_layout ) {
$blog_layout_list_css = array (
$bl_selector . ' .ast-row' => array (
'margin-' . $rtl_left . '' => '0' ,
'margin-' . $rtl_right . '' => '0' ,
),
$bl_selector . ' .ast-article-inner' => array (
'width' => '100%' ,
),
$bl_selector . ' .blog-layout-5' => array (
'display' => 'flex' ,
'flex-wrap' => 'wrap' ,
'vertical-align' => 'middle' ,
),
$bl_selector . ' .ast-blog-featured-section' => array (
'width' => '25%' ,
'margin-bottom' => '0' ,
),
$bl_selector . ' .post-thumb-img-content' => array (
'height' => '100%' ,
),
$bl_selector . ' .ast-blog-featured-section img' => array (
'width' => '100%' ,
'height' => '100%' ,
'object-fit' => 'cover' ,
),
$bl_selector . ' .post-content' => array (
'width' => '75%' ,
'padding-' . $rtl_left . '' => '1.5em' ,
),
$bl_selector . ' .ast-no-thumb .ast-blog-featured-section' => array (
'width' => 'unset' ,
),
$bl_selector . ' .ast-no-thumb .post-content' => array (
'width' => '100%' ,
),
'.ast-separate-container ' . $bl_selector . ' .post-content' => array (
'padding-' . $rtl_right . '' => '1.5em' ,
'padding-top' => '1.5em' ,
'padding-bottom' => '1.5em' ,
),
);
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
if ( ! ( defined ( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension :: is_active ( 'blog-pro' ) ) ) {
/** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort
$blog_layout_list_css [ $bl_selector . ' .ast-article-post' ] = array (
'margin-bottom' => '2em' ,
'padding' => '0' ,
'border-bottom' => '0' ,
);
} else {
$blog_layout_list_css [ $bl_selector . ' .ast-article-post' ] = array (
'padding' => '0' ,
'border-bottom' => '0' ,
);
}
$parse_css .= astra_parse_css ( $blog_layout_list_css );
$blog_layout_list_css_responsive = array ();
$blog_layout_list_css_responsive [ '.ast-separate-container ' . $bl_selector . ' .post-content' ] = array (
'padding' => '0' ,
);
$blog_layout_list_css_responsive [ $bl_selector . ' .ast-blog-featured-section' ] = array (
'margin-bottom' => '1.5em' ,
);
$parse_css .= astra_parse_css ( $blog_layout_list_css_responsive , '' , astra_get_tablet_breakpoint () );
}
if ( 'blog-layout-6' === $blog_layout ) {
$blog_layout_cover_css = array (
$bl_selector . ' .blog-layout-6 .post-content' => array (
'position' => 'static' ,
'padding-left' => '0' ,
'padding-right' => '0' ,
),
$bl_selector . ' .blog-layout-6 .ast-blog-featured-section' => array (
'position' => 'absolute' ,
'top' => '0' ,
'left' => '0' ,
'right' => '0' ,
'bottom' => '0' ,
'left' => '0' ,
'width' => '100%' ,
'height' => '100%' ,
),
$bl_selector . ' .blog-layout-6 .post-thumb-img-content,' . $bl_selector . ' .blog-layout-6 .post-thumb-img-content img' => array (
'width' => '100%' ,
'height' => '100%' ,
),
$bl_selector . ' .blog-layout-6 .post-thumb-img-content img' => array (
'object-fit' => 'cover' ,
'border-radius' => '4px' ,
),
$bl_selector . ' .blog-layout-6 .ast-blog-single-element:not(.ast-blog-featured-section)' => array (
'position' => 'relative' ,
'z-index' => '1' ,
),
$bl_selector . ' .blog-layout-6 .ast-blog-single-element, ' . $bl_selector . ' .blog-layout-6 .ast-blog-single-element *, ' . $bl_selector . ' .blog-layout-6 .ast-blog-single-element *:hover' => array (
'color' => '#fff' ,
),
$bl_selector . ' .badge .ast-button,' . $bl_selector . ' .badge .ast-button:hover' => array (
'border' => '1px solid #fff' ,
'background-color' => 'transparent' ,
),
$bl_selector . ' .blog-layout-6 .ast-blog-featured-section:before' => array (
'position' => 'absolute' ,
'top' => '0' ,
'left' => '0' ,
'right' => '0' ,
'bottom' => '0' ,
'left' => '0' ,
'width' => '100%' ,
'height' => '100%' ,
'background-color' => 'rgba(30, 41, 59, 0.65)' ,
'border-radius' => '4px' ,
),
);
if ( ( defined ( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension :: is_active ( 'blog-pro' ) ) && ( 1 === astra_get_option ( 'blog-grid' ) ) ) {
$blog_layout_cover_css [ $bl_selector . ' .ast-archive-post' ] = array (
'position' => 'relative' ,
);
} else {
$blog_layout_cover_css [ $bl_selector . ' .blog-layout-6' ] = array (
'position' => 'relative' ,
);
}
if ( 1 === $blog_grid ) {
$blog_layout_cover_css [ '.ast-plain-container .ast-article-post' ] = array (
'padding' => '1.5em' ,
);
}
if ( 1 !== $blog_grid ) {
$blog_layout_cover_css [ '.ast-plain-container .ast-article-inner' ] = array (
'padding' => '1.5em' ,
);
}
$parse_css .= astra_parse_css ( $blog_layout_cover_css );
}
$blog_layout_css_responsive = array ();
if ( 'blog-layout-4' === $blog_layout || 'blog-layout-6' === $blog_layout ) {
$blog_layout_css_responsive = array (
$bl_selector . ' .ast-article-post' => array (
'width' => '100%' ,
),
);
}
if ( 'blog-layout-5' === $blog_layout ) {
$blog_layout_css_responsive [ $bl_selector . ' .ast-blog-featured-section,' . $bl_selector . ' .post-content' ] = array (
'width' => '100%' ,
);
}
$parse_css .= astra_parse_css ( $blog_layout_css_responsive , '' , astra_get_tablet_breakpoint () );
$parse_css .= Astra_Enqueue_Scripts :: trim_css ( self :: blog_layout_static_css () );
// Blog Archive Featured Image.
if ( $aspect_ratio && $with_aspect_img_width ) {
$blog_featured_image = array (
'.ast-article-post .post-thumb-img-content img' => array (
'aspect-ratio' => $aspect_ratio ,
'width' => $with_aspect_img_width ,
),
);
$parse_css .= astra_parse_css ( $blog_featured_image );
}
// Added cover styling for Custom image ratio.
if ( 'custom' === $aspect_ratio_type ) {
$cover_style_image = array (
'.ast-article-post .post-thumb-img-content img' => array (
'object-fit' => 'cover' ,
),
);
$parse_css .= astra_parse_css ( $cover_style_image );
}
$author_avatar = astra_get_option ( 'blog-meta-author-avatar' );
if ( $author_avatar ) {
$blog_author_css = array (
'.ast-author-image' => array (
'aspect-ratio' => '1/1' ,
'border-radius' => '100%' ,
'margin-' . $rtl_right . '' => '.5em' ,
),
);
$parse_css .= astra_parse_css ( $blog_author_css );
}
$blog_archive_hover_effect = astra_get_option ( 'blog-hover-effect' );
if ( 'none' !== $blog_archive_hover_effect ) {
$blog_archive_hover_effect_css = array (
'.ast-article-post .post-thumb-img-content' => array (
'overflow' => 'hidden' ,
),
);
if ( 'zoom-in' === $blog_archive_hover_effect ) {
$blog_archive_hover_effect_css [ '.ast-article-post .post-thumb-img-content img' ] = array (
'transform' => 'scale(1)' ,
'transition' => 'transform .5s ease' ,
);
$blog_archive_hover_effect_css [ '.ast-article-post:hover .post-thumb-img-content img' ] = array (
'transform' => 'scale(1.1)' ,
);
}
if ( 'zoom-out' === $blog_archive_hover_effect ) {
$blog_archive_hover_effect_css [ '.ast-article-post .post-thumb-img-content img' ] = array (
'transform' => 'scale(1.1)' ,
'transition' => 'transform .5s ease' ,
);
$blog_archive_hover_effect_css [ '.ast-article-post:hover .post-thumb-img-content img' ] = array (
'transform' => 'scale(1)' ,
);
}
$parse_css .= astra_parse_css ( $blog_archive_hover_effect_css );
}
// Post elements.
$categories_styles = astra_get_option ( 'blog-category-style' );
$tag_styles = astra_get_option ( 'blog-tag-style' );
$categories_meta_styles = astra_get_option ( 'blog-meta-category-style' );
$tag_meta_styles = astra_get_option ( 'blog-meta-tag-style' );
if ( $categories_styles || $tag_styles || $categories_meta_styles || $tag_meta_styles ) {
$post_tax_style = '
. cat - links . badge a , . tags - links . badge a {
padding : 4 px 8 px ;
border - radius : 3 px ;
font - weight : 400 ;
}
' ;
$post_tax_style .= '
. cat - links . underline a , . tags - links . underline a {
text - decoration : underline ;
}
' ;
$parse_css .= Astra_Enqueue_Scripts :: trim_css ( $post_tax_style );
}
}
// Primary Submenu Border Width & Color.
$submenu_border_style = array (
'.ast-desktop .main-header-menu.submenu-with-border .sub-menu, .ast-desktop .main-header-menu.submenu-with-border .astra-full-megamenu-wrapper' => array (
'border-color' => esc_attr ( $primary_submenu_b_color ),
),
'.ast-desktop .main-header-menu.submenu-with-border .sub-menu' => array (
'border-top-width' => ! empty ( $submenu_border [ 'top' ] ) ? astra_get_css_value ( $submenu_border [ 'top' ], 'px' ) : '' ,
'border-right-width' => ! empty ( $submenu_border [ 'right' ] ) ? astra_get_css_value ( $submenu_border [ 'right' ], 'px' ) : '' ,
'border-left-width' => ! empty ( $submenu_border [ 'left' ] ) ? astra_get_css_value ( $submenu_border [ 'left' ], 'px' ) : '' ,
'border-bottom-width' => ! empty ( $submenu_border [ 'bottom' ] ) ? astra_get_css_value ( $submenu_border [ 'bottom' ], 'px' ) : '' ,
'border-style' => 'solid' ,
),
'.ast-desktop .main-header-menu.submenu-with-border .sub-menu .sub-menu' => array (
'top' => isset ( $submenu_border [ 'top' ] ) && '' != $submenu_border [ 'top' ] ? astra_get_css_value ( '-' . $submenu_border [ 'top' ], 'px' ) : '' ,
),
'.ast-desktop .main-header-menu.submenu-with-border .sub-menu .menu-link, .ast-desktop .main-header-menu.submenu-with-border .children .menu-link' => array (
'border-bottom-width' => $primary_submenu_item_border ? '1px' : '0px' ,
'border-style' => 'solid' ,
'border-color' => esc_attr ( $primary_submenu_item_b_color ),
),
);
// Submenu items goes outside?
$submenu_border_for_left_align_menu = array (
'.main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu:hover > .sub-menu, .main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu.focus > .sub-menu' => array (
'margin-left' => ( isset ( $submenu_border [ 'left' ] ) && '' != $submenu_border [ 'left' ] ) || isset ( $submenu_border [ 'right' ] ) && '' != $submenu_border [ 'right' ] ? astra_get_css_value ( '-' . ( ( int ) $submenu_border [ 'left' ] + ( int ) $submenu_border [ 'right' ] ), 'px' ) : '' ,
),
);
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
$parse_css .= astra_parse_css ( $submenu_border_style );
}
// Submenu items goes outside?
$parse_css .= astra_parse_css ( $submenu_border_for_left_align_menu , astra_get_tablet_breakpoint ( '' , 1 ) );
/* Small Footer CSS */
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active && 'disabled' !== $small_footer_layout ) {
$sml_footer_css = array (
'.ast-small-footer' => array (
'border-top-style' => 'solid' ,
'border-top-width' => astra_get_css_value ( $small_footer_divider , 'px' ),
'border-top-color' => esc_attr ( $small_footer_divider_color ),
),
);
$parse_css .= astra_parse_css ( $sml_footer_css );
if ( 'footer-sml-layout-2' !== $small_footer_layout ) {
$sml_footer_css = array (
'.ast-small-footer-wrap' => array (
'text-align' => 'center' ,
),
);
$parse_css .= astra_parse_css ( $sml_footer_css );
}
}
/* Transparent Header - Comonent header specific CSS compatibility */
if ( true === Astra_Builder_Helper :: $is_header_footer_builder_active && Astra_Ext_Transparent_Header_Markup :: is_transparent_header () ) {
$html_text_color = astra_get_option ( 'transparent-header-html-text-color' );
$html_link_color = astra_get_option ( 'transparent-header-html-link-color' );
$html_link_h_color = astra_get_option ( 'transparent-header-html-link-h-color' );
$search_icon_color = astra_get_option ( 'transparent-header-search-icon-color' );
$search_text_color = astra_get_option ( 'transparent-header-search-box-placeholder-color' );
$search_box_bg_color = astra_get_option ( 'transparent-header-search-box-background-color' );
$social_color = astra_get_option ( 'transparent-header-social-icons-color' );
$social_hover_color = astra_get_option ( 'transparent-header-social-icons-h-color' );
$social_bg_color = astra_get_option ( 'transparent-header-social-icons-bg-color' );
$social_bg_hover_color = astra_get_option ( 'transparent-header-social-icons-bg-h-color' );
$button_color = astra_get_option ( 'transparent-header-button-text-color' );
$button_h_color = astra_get_option ( 'transparent-header-button-text-h-color' );
$button_bg_color = astra_get_option ( 'transparent-header-button-bg-color' );
$button_bg_h_color = astra_get_option ( 'transparent-header-button-bg-h-color' );
$button_border_color = astra_get_option ( 'transparent-header-button-border-color' );
$button_h_border_color = astra_get_option ( 'transparent-header-button-border-h-color' );
$divider_color = astra_get_option ( 'transparent-header-divider-color' );
$account_icon_color = astra_get_option ( 'transparent-account-icon-color' );
$account_loggedout_text_color = astra_get_option ( 'transparent-account-type-text-color' );
// Menu colors.
$account_menu_color = astra_get_option ( 'transparent-account-menu-color' );
$account_menu_bg_color = astra_get_option ( 'transparent-account-menu-bg-obj' );
$account_menu_color_hover = astra_get_option ( 'transparent-account-menu-h-color' );
$account_menu_bg_color_hover = astra_get_option ( 'transparent-account-menu-h-bg-color' );
$account_menu_color_active = astra_get_option ( 'transparent-account-menu-a-color' );
$account_menu_bg_color_active = astra_get_option ( 'transparent-account-menu-a-bg-color' );
$transparent_header_builder_desktop_css = array (
'.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element' => array (
'color' => esc_attr ( $html_text_color ),
),
'.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element a' => array (
'color' => esc_attr ( $html_link_color ),
),
'.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element a:hover' => array (
'color' => esc_attr ( $html_link_h_color ),
),
'.ast-theme-transparent-header .ast-header-search .astra-search-icon, .ast-theme-transparent-header .ast-header-search .search-field::placeholder, .ast-theme-transparent-header .ast-header-search .ast-icon' => array (
'color' => esc_attr ( $search_icon_color ),
),
'.ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field::placeholder' => array (
'color' => esc_attr ( $search_text_color ),
),
'.ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-form, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-submit' => array (
'background-color' => esc_attr ( $search_box_bg_color ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array (
'background' => esc_attr ( $social_bg_color [ 'desktop' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array (
'fill' => esc_attr ( $social_color [ 'desktop' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array (
'background' => esc_attr ( $social_bg_hover_color [ 'desktop' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array (
'fill' => esc_attr ( $social_hover_color [ 'desktop' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array (
'color' => esc_attr ( $social_color [ 'desktop' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array (
'color' => esc_attr ( $social_hover_color [ 'desktop' ] ),
),
'.ast-theme-transparent-header [CLASS*="ast-header-button-"] .ast-custom-button' => array (
'color' => esc_attr ( $button_color ),
'background' => esc_attr ( $button_bg_color ),
'border-color' => esc_attr ( $button_border_color ),
),
'.ast-theme-transparent-header [CLASS*="ast-header-button-"] .ast-custom-button:hover' => array (
'color' => esc_attr ( $button_h_color ),
'background' => esc_attr ( $button_bg_h_color ),
'border-color' => esc_attr ( $button_h_border_color ),
),
'.ast-theme-transparent-header .ast-header-divider-element .ast-divider-wrapper' => array (
'border-color' => esc_attr ( $divider_color ),
),
'.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg path:not(.ast-hf-account-unfill), .ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg circle' => array (
'fill' => esc_attr ( $account_icon_color ),
),
'.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item .menu-link' => array (
'color' => esc_attr ( $account_menu_color ),
),
'.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item:hover > .menu-link' => array (
'color' => $account_menu_color_hover ,
'background' => $account_menu_bg_color_hover ,
),
'.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item.current-menu-item > .menu-link' => array (
'color' => $account_menu_color_active ,
'background' => $account_menu_bg_color_active ,
),
'.ast-theme-transparent-header .ast-header-account-wrap .account-main-navigation ul' => array (
'background' => $account_menu_bg_color ,
),
'.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-text' => array (
'color' => $account_loggedout_text_color ,
),
);
$widget_title_color = astra_get_option ( 'transparent-header-widget-title-color' );
$widget_content_color = astra_get_option ( 'transparent-header-widget-content-color' );
$widget_link_color = astra_get_option ( 'transparent-header-widget-link-color' );
$widget_link_hover_color = astra_get_option ( 'transparent-header-widget-link-h-color' );
$transparent_header_builder_desktop_css [ '.ast-theme-transparent-header .widget-area.header-widget-area .widget-title' ] = array (
'color' => esc_attr ( $widget_title_color ),
);
$transparent_header_builder_desktop_css [ '.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner' ] = array (
'color' => esc_attr ( $widget_content_color ),
);
$transparent_header_builder_desktop_css [ '.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner a' ] = array (
'color' => esc_attr ( $widget_link_color ),
);
$transparent_header_builder_desktop_css [ '.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner a:hover' ] = array (
'color' => esc_attr ( $widget_link_hover_color ),
);
if ( Astra_Builder_Helper :: apply_flex_based_css () ) {
$transparent_header_widget_selector = '.ast-theme-transparent-header .widget-area.header-widget-area.header-widget-area-inner' ;
} else {
$transparent_header_widget_selector = '.ast-theme-transparent-header .widget-area.header-widget-area. header-widget-area-inner' ;
}
$transparent_header_builder_desktop_css [ $transparent_header_widget_selector ] = array (
'color' => esc_attr ( $widget_content_color ),
);
$transparent_header_builder_desktop_css [ $transparent_header_widget_selector . ' a' ] = array (
'color' => esc_attr ( $widget_link_color ),
);
$transparent_header_builder_desktop_css [ $transparent_header_widget_selector . ' a:hover' ] = array (
'color' => esc_attr ( $widget_link_hover_color ),
);
if ( Astra_Builder_Helper :: is_component_loaded ( 'mobile-trigger' , 'header' , 'mobile' ) ) {
$transparent_toggle_selector = '.ast-theme-transparent-header [data-section="section-header-mobile-trigger"]' ;
$trigger_bg = astra_get_option ( 'transparent-header-toggle-btn-bg-color' );
$trigger_border_color = astra_get_option ( 'transparent-header-toggle-border-color' , $trigger_bg );
$style = astra_get_option ( 'mobile-header-toggle-btn-style' );
$icon_color = astra_get_option ( 'transparent-header-toggle-btn-color' );
/**
* Off - Canvas CSS .
*/
$transparent_header_builder_desktop_css [ $transparent_toggle_selector . ' .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg' ] = array (
'fill' => $icon_color ,
);
$transparent_header_builder_desktop_css [ $transparent_toggle_selector . ' .ast-button-wrap .mobile-menu-wrap .mobile-menu' ] = array (
// Color.
'color' => $icon_color ,
);
if ( 'fill' === $style ) {
$transparent_header_builder_desktop_css [ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-fill' ] = array (
'background' => esc_attr ( $trigger_bg ),
);
$transparent_header_builder_desktop_css [ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-fill, ' . $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-minimal' ] = array (
// Color & Border.
'color' => esc_attr ( $icon_color ),
'border' => 'none' ,
);
} elseif ( 'outline' === $style ) {
$transparent_header_builder_desktop_css [ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-outline' ] = array (
// Background.
'background' => 'transparent' ,
'color' => esc_attr ( $icon_color ),
'border-color' => $trigger_border_color ,
);
} else {
$transparent_header_builder_desktop_css [ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-minimal' ] = array (
'background' => 'transparent' ,
);
}
}
$parse_css .= astra_parse_css ( $transparent_header_builder_desktop_css );
/**
* Max - width : Tablet Breakpoint CSS .
*/
$transparent_header_builder_tablet_css = array (
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array (
'background' => esc_attr ( $social_bg_color [ 'tablet' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array (
'fill' => esc_attr ( $social_color [ 'tablet' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array (
'background' => esc_attr ( $social_bg_hover_color [ 'tablet' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array (
'fill' => esc_attr ( $social_hover_color [ 'tablet' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array (
'color' => esc_attr ( $social_color [ 'tablet' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array (
'color' => esc_attr ( $social_hover_color [ 'tablet' ] ),
),
);
$parse_css .= astra_parse_css ( $transparent_header_builder_tablet_css , '' , astra_get_tablet_breakpoint () );
/**
* Max - width : Mobile Breakpoint CSS .
*/
$transparent_header_builder_mobile_css = array (
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array (
'background' => esc_attr ( $social_bg_color [ 'mobile' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array (
'fill' => esc_attr ( $social_color [ 'mobile' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array (
'background' => esc_attr ( $social_bg_hover_color [ 'mobile' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array (
'fill' => esc_attr ( $social_hover_color [ 'mobile' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array (
'color' => esc_attr ( $social_color [ 'mobile' ] ),
),
'.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array (
'color' => esc_attr ( $social_hover_color [ 'mobile' ] ),
),
);
$parse_css .= astra_parse_css ( $transparent_header_builder_mobile_css , '' , astra_get_mobile_breakpoint () );
}
if ( self :: astra_list_block_vertical_spacing () ) {
$list_spacing_css = array (
'.entry-content li > p' => array (
'margin-bottom' => 0 ,
),
);
$parse_css .= astra_parse_css ( $list_spacing_css );
}
if ( self :: astra_fullwidth_sidebar_support () ) {
if ( 'page-builder' === $ast_container_layout ) {
add_filter (
'astra_page_layout' ,
static function () { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found
return 'no-sidebar' ;
}
);
}
}
if ( astra_get_option ( 'enable-comments-area' , true ) ) {
$parse_css .= Astra_Extended_Base_Dynamic_CSS :: prepare_inner_section_advanced_css ( 'ast-sub-section-comments' , '.site .comments-area' );
$comments_radius = astra_get_option (
'ast-sub-section-comments-border-radius' ,
array (
'top' => '' ,
'right' => '' ,
'bottom' => '' ,
'left' => '' ,
)
);
$list_spacing_css = array (
'.comments-area .comments-title, .comments-area .comment-respond' => array (
'border-top-left-radius' => ! empty ( astra_get_css_value ( $comments_radius [ 'top' ] ) ) ? astra_get_css_value ( $comments_radius [ 'top' ], 'px' ) : '' ,
'border-bottom-right-radius' => ! empty ( astra_get_css_value ( $comments_radius [ 'bottom' ] ) ) ? astra_get_css_value ( $comments_radius [ 'bottom' ], 'px' ) : '' ,
'border-bottom-left-radius' => ! empty ( astra_get_css_value ( $comments_radius [ 'left' ] ) ) ? astra_get_css_value ( $comments_radius [ 'left' ], 'px' ) : '' ,
'border-top-right-radius' => ! empty ( astra_get_css_value ( $comments_radius [ 'right' ] ) ) ? astra_get_css_value ( $comments_radius [ 'right' ], 'px' ) : '' ,
),
);
$parse_css .= astra_parse_css ( $list_spacing_css );
}
$parse_css .= $dynamic_css ;
$custom_css = astra_get_option ( 'custom-css' );
if ( '' != $custom_css ) {
$parse_css .= $custom_css ;
}
// trim white space for faster page loading.
$parse_css = Astra_Enqueue_Scripts :: trim_css ( $parse_css );
return apply_filters ( 'astra_theme_dynamic_css' , $parse_css );
}
/**
* Astra update default font size and font weight .
*
* @ since 4.6 . 5
* @ return bool
*/
public static function elementor_heading_margin_style_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'elementor_heading_margin' , isset ( $astra_settings [ 'elementor-headings-style' ] ) ? false : true );
}
/**
* Heading font size fix in footer builder compatibility .
*
* @ since 4.7 . 0
* @ return bool
*/
public static function astra_heading_inside_widget_font_size_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_heading_inside_widget_font_size' , isset ( $astra_settings [ 'heading-widget-font-size' ] ) ? false : true );
}
/**
* Added Elementor post loop block padding support .
*
* @ since 4.6 . 6
* @ return bool
*/
public static function elementor_container_padding_style_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'elementor_container_padding' , isset ( $astra_settings [ 'elementor-container-padding-style' ] ) ? false : true );
}
/**
* Added Elementor button styling support .
*
* @ since 4.6 . 12
* @ return bool
*/
public static function elementor_btn_styling_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_elementor_button_body_selector_compatibility' , isset ( $astra_settings [ 'elementor-btn-styling' ] ) && $astra_settings [ 'elementor-btn-styling' ] ? true : false );
}
/**
* PX to em conversion failed with default value set .
*
* @ since 4.8 . 4
* @ return bool
*/
public static function heading_font_size_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'heading_font_size_compatibility' , isset ( $astra_settings [ 'astra-heading-font-size-compatibility' ] ) ? false : true );
}
/**
* Return post meta CSS
*
* @ param string $dynamic_css Astra Dynamic CSS .
* @ param string $dynamic_css_filtered Astra Dynamic CSS Filters .
* @ return mixed Return the CSS .
*/
public static function return_meta_output ( $dynamic_css , $dynamic_css_filtered = '' ) {
/**
* - Page Layout
*
* - Sidebar Positions CSS
*/
$secondary_width = absint ( astra_get_option ( 'site-sidebar-width' ) );
$primary_width = absint ( 100 - $secondary_width );
$meta_style = '' ;
// Header Separator.
$header_separator = astra_get_option ( 'header-main-sep' );
$header_separator_color = astra_get_option ( 'header-main-sep-color' );
$meta_style = array (
'.ast-header-break-point .main-header-bar' => array (
'border-bottom-width' => astra_get_css_value ( $header_separator , 'px' ),
'border-bottom-color' => esc_attr ( $header_separator_color ),
),
);
$parse_css = astra_parse_css ( $meta_style );
$meta_style = array (
'.main-header-bar' => array (
'border-bottom-width' => astra_get_css_value ( $header_separator , 'px' ),
'border-bottom-color' => esc_attr ( $header_separator_color ),
),
);
$parse_css .= astra_parse_css ( $meta_style , astra_get_tablet_breakpoint ( '' , 1 ) );
if ( 'no-sidebar' !== astra_page_layout () ) {
$meta_style = array (
'#primary' => array (
'width' => astra_get_css_value ( $primary_width , '%' ),
),
'#secondary' => array (
'width' => astra_get_css_value ( strval ( $secondary_width ), '%' ),
),
);
$parse_css .= astra_parse_css ( $meta_style , astra_get_tablet_breakpoint ( '' , 1 ) );
}
if ( false === self :: astra_submenu_below_header_fix () ) {
// If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`.
// Also restore the padding to class `main-header-bar`.
$submenu_below_header = array (
'.ast-flex' => array (
'-webkit-align-content' => 'center' ,
'-ms-flex-line-pack' => 'center' ,
'align-content' => 'center' ,
'-webkit-box-align' => 'center' ,
'-webkit-align-items' => 'center' ,
'-moz-box-align' => 'center' ,
'-ms-flex-align' => 'center' ,
'align-items' => 'center' ,
),
'.main-header-bar' => array (
'padding' => '1em 0' ,
),
'.ast-site-identity' => array (
'padding' => '0' ,
),
// CSS to open submenu just below menu.
'.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array (
'-webkit-align-content' => 'center' ,
'-ms-flex-line-pack' => 'center' ,
'align-content' => 'center' ,
'-webkit-box-align' => 'center' ,
'-webkit-align-items' => 'center' ,
'-moz-box-align' => 'center' ,
'-ms-flex-align' => 'center' ,
'align-items' => 'center' ,
),
);
$parse_css .= astra_parse_css ( $submenu_below_header );
} else {
// `.menu-item` required display:flex, although weight of this css increases because of which custom CSS added from child themes to be not working.
// Hence this is added to dynamic CSS which will be applied only if this filter `astra_submenu_below_header_fix` is enabled.
// @see https://github.com/brainstormforce/astra/pull/828
$submenu_below_header = array (
'.main-header-menu .menu-item, #astra-footer-menu .menu-item, .main-header-bar .ast-masthead-custom-menu-items' => array (
'-js-display' => 'flex' ,
'display' => '-webkit-box' ,
'display' => '-webkit-flex' ,
'display' => '-moz-box' ,
'display' => '-ms-flexbox' ,
'display' => 'flex' ,
'-webkit-box-pack' => 'center' ,
'-webkit-justify-content' => 'center' ,
'-moz-box-pack' => 'center' ,
'-ms-flex-pack' => 'center' ,
'justify-content' => 'center' ,
'-webkit-box-orient' => 'vertical' ,
'-webkit-box-direction' => 'normal' ,
'-webkit-flex-direction' => 'column' ,
'-moz-box-orient' => 'vertical' ,
'-moz-box-direction' => 'normal' ,
'-ms-flex-direction' => 'column' ,
'flex-direction' => 'column' ,
),
'.main-header-menu > .menu-item > .menu-link, #astra-footer-menu > .menu-item > .menu-link' => array (
'height' => '100%' ,
'-webkit-box-align' => 'center' ,
'-webkit-align-items' => 'center' ,
'-moz-box-align' => 'center' ,
'-ms-flex-align' => 'center' ,
'align-items' => 'center' ,
'-js-display' => 'flex' ,
'display' => '-webkit-box' ,
'display' => '-webkit-flex' ,
'display' => '-moz-box' ,
'display' => '-ms-flexbox' ,
'display' => 'flex' ,
),
);
if ( false === Astra_Builder_Helper :: $is_header_footer_builder_active ) {
$submenu_below_header [ '.ast-primary-menu-disabled .main-header-bar .ast-masthead-custom-menu-items' ] = array (
'flex' => 'unset' ,
);
}
$parse_css .= astra_parse_css ( $submenu_below_header );
}
if ( false === self :: astra_submenu_open_below_header_fix () ) {
// If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`.
// Also restore the padding to class `main-header-bar`.
$submenu_below_header = array (
// CSS to open submenu just below menu.
'.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array (
'-webkit-align-content' => 'center' ,
'-ms-flex-line-pack' => 'center' ,
'align-content' => 'center' ,
'-webkit-box-align' => 'center' ,
'-webkit-align-items' => 'center' ,
'-moz-box-align' => 'center' ,
'-ms-flex-align' => 'center' ,
'align-items' => 'center' ,
),
);
$parse_css .= astra_parse_css ( $submenu_below_header );
}
$submenu_toggle = '' ;
$is_site_rtl = is_rtl ();
if ( false === Astra_Icons :: is_svg_icons () ) {
// Update styles depend on RTL sites.
$transform_svg_style = 'translate(0,-50%) rotate(270deg)' ;
$transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)' ;
$default_left_rtl_right = 'left' ;
$default_right_rtl_left = 'right' ;
if ( $is_site_rtl ) {
$transform_svg_style = 'translate(0,-50%) rotate(90deg)' ;
$transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)' ;
$default_left_rtl_right = 'right' ;
$default_right_rtl_left = 'left' ;
}
$submenu_toggle = array (
// HFB / Old Header Footer - CSS compatibility when SVGs are disabled.
'.main-header-menu .sub-menu .menu-item.menu-item-has-children > .menu-link:after' => array (
'position' => 'absolute' ,
$default_right_rtl_left => '1em' ,
'top' => '50%' ,
'transform' => $transform_svg_style ,
),
'.ast-header-break-point .main-header-bar .main-header-bar-navigation .page_item_has_children > .ast-menu-toggle::before, .ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before, .ast-mobile-popup-drawer .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle::before, .ast-header-break-point .ast-mobile-header-wrap .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before' => array (
'font-weight' => 'bold' ,
'content' => '"\e900"' ,
'font-family' => 'Astra' ,
'text-decoration' => 'inherit' ,
'display' => 'inline-block' ,
),
'.ast-header-break-point .main-navigation ul.sub-menu .menu-item .menu-link:before' => array (
'content' => '"\e900"' ,
'font-family' => 'Astra' ,
'font-size' => '.65em' ,
'text-decoration' => 'inherit' ,
'display' => 'inline-block' ,
'transform' => $transform_nested_svg_transform ,
'margin-' . $default_right_rtl_left => '5px' ,
),
'.widget_search .search-form:after' => array (
'font-family' => 'Astra' ,
'font-size' => '1.2em' ,
'font-weight' => 'normal' ,
'content' => '"\e8b6"' ,
'position' => 'absolute' ,
'top' => '50%' ,
$default_right_rtl_left => '15px' ,
'transform' => 'translate(0, -50%)' ,
),
'.astra-search-icon::before' => array (
'content' => '"\e8b6"' ,
'font-family' => 'Astra' ,
'font-style' => 'normal' ,
'font-weight' => 'normal' ,
'text-decoration' => 'inherit' ,
'text-align' => 'center' ,
'-webkit-font-smoothing' => 'antialiased' ,
'-moz-osx-font-smoothing' => 'grayscale' ,
'z-index' => '3' ,
),
'.main-header-bar .main-header-bar-navigation .page_item_has_children > a:after, .main-header-bar .main-header-bar-navigation .menu-item-has-children > a:after, .menu-item-has-children .ast-header-navigation-arrow:after' => array (
'content' => '"\e900"' ,
'display' => 'inline-block' ,
'font-family' => 'Astra' ,
'font-size' => '.6rem' ,
'font-weight' => 'bold' ,
'text-rendering' => 'auto' ,
'-webkit-font-smoothing' => 'antialiased' ,
'-moz-osx-font-smoothing' => 'grayscale' ,
'margin-' . $default_left_rtl_right => '10px' ,
'line-height' => 'normal' ,
),
'.menu-item-has-children .sub-menu .ast-header-navigation-arrow:after' => array (
'margin-left' => '0' ,
),
'.ast-mobile-popup-drawer .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle::before' => array (
'transform' => 'rotateX(180deg)' ,
),
'.ast-header-break-point .main-header-bar-navigation .menu-item-has-children > .menu-link:after' => array (
'display' => 'none' ,
),
);
} else {
if ( ! Astra_Builder_Helper :: $is_header_footer_builder_active ) {
// Update styles depend on RTL sites.
$transform_svg_style = 'translate(0,-50%) rotate(270deg)' ;
$transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)' ;
$default_left_rtl_right = 'left' ;
$default_right_rtl_left = 'right' ;
if ( $is_site_rtl ) {
$transform_svg_style = 'translate(0,-50%) rotate(900deg)' ;
$transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)' ;
$default_left_rtl_right = 'right' ;
$default_right_rtl_left = 'left' ;
}
$submenu_toggle = array (
// Old Header Footer - SVG Support.
'.ast-desktop .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .icon-arrow svg' => array (
'position' => 'absolute' ,
$default_right_rtl_left => '.6em' ,
'top' => '50%' ,
'transform' => $transform_svg_style ,
),
'.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array (
$default_left_rtl_right => '.1em' ,
'top' => '.1em' ,
'transform' => $transform_nested_svg_transform ,
),
);
} else {
$transform_svg_style = 'translate(0, -2px) rotateZ(270deg)' ;
$default_left_rtl_right = 'left' ;
if ( $is_site_rtl ) {
$transform_svg_style = 'translate(0, -2px) rotateZ(90deg)' ;
$default_left_rtl_right = 'right' ;
}
$submenu_toggle = array (
// New Header Footer - SVG Support.
'.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array (
'top' => '.2em' ,
'margin-top' => '0px' ,
'margin-' . $default_left_rtl_right => '0px' ,
'width' => '.65em' ,
'transform' => $transform_svg_style ,
),
'.ast-mobile-popup-content .ast-submenu-expanded > .ast-menu-toggle' => array (
'transform' => 'rotateX(180deg)' ,
'overflow-y' => 'auto' ,
),
);
}
}
$parse_css .= astra_parse_css ( $submenu_toggle );
$dynamic_css .= $parse_css ;
$ltr_right = is_rtl () ? esc_attr ( 'left' ) : esc_attr ( 'right' );
$dynamic_css .= astra_parse_css (
array (
'.ast-builder-menu .main-navigation > ul > li:last-child a' => array (
'margin-' . $ltr_right => '0' ,
),
),
astra_get_tablet_breakpoint ( '' , 1 )
);
return $dynamic_css ;
}
/**
* Conditionally iclude CSS Selectors with anchors in the typography settings .
*
* Historically Astra adds Colors / Typography CSS for headings and anchors for headings but this causes irregularities with the expected output .
* For eg Link color does not work for the links inside headings .
*
* If filter `astra_include_achors_in_headings_typography` is set to true or Astra Option `include-headings-in-typography` is set to true , This will return selectors with anchors . Else This will return selectors without anchors .
*
* @ since 1.4 . 9
* @ param String $selectors_with_achors CSS Selectors with anchors .
* @ param String $selectors_without_achors CSS Selectors withour annchors .
*
* @ return String CSS Selectors based on the condition of filters .
*/
private static function conditional_headings_css_selectors ( $selectors_with_achors , $selectors_without_achors ) {
if ( true === self :: anchors_in_css_selectors_heading () ) {
return $selectors_with_achors ;
}
return $selectors_without_achors ;
}
/**
* Check if CSS selectors in Headings should use anchors .
*
* @ since 1.4 . 9
* @ return bool true if it should include anchors , False if not .
*/
public static function anchors_in_css_selectors_heading () {
if ( true === astra_get_option ( 'include-headings-in-typography' ) &&
true === apply_filters (
'astra_include_achors_in_headings_typography' ,
true
) ) {
return true ;
}
return false ;
}
/**
* Check backwards compatibility CSS for loading submenu below the header needs to be added .
*
* @ since 1.5 . 0
* @ return bool true if CSS should be included , False if not .
*/
public static function astra_submenu_below_header_fix () {
if ( false === astra_get_option ( 'submenu-below-header' , true ) &&
false === apply_filters (
'astra_submenu_below_header_fix' ,
false
) ) {
return false ;
}
return true ;
}
/**
* Check backwards compatibility CSS for loading submenu below the header needs to be added .
*
* @ since 2.1 . 3
* @ return bool true if submenu below header fix is to be loaded , False if not .
*/
public static function astra_submenu_open_below_header_fix () {
if ( false === astra_get_option ( 'submenu-open-below-header' , true ) &&
false === apply_filters (
'astra_submenu_open_below_header_fix' ,
false
) ) {
return false ;
}
return true ;
}
/**
* Check backwards compatibility to not load default CSS for the button styling of Page Builders .
*
* @ since 2.2 . 0
* @ return bool true if button style CSS should be loaded , False if not .
*/
public static function page_builder_button_style_css () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_page_builder_button_style_css' , isset ( $astra_settings [ 'pb-button-color-compatibility' ] ) && false === $astra_settings [ 'pb-button-color-compatibility' ] ? false : true );
}
/**
* Elementor Theme Style - Button Text Color compatibility . This should be looked in the future for proper solution .
*
* Reference : https :// github . com / elementor / elementor / issues / 10733
* Reference : https :// github . com / elementor / elementor / issues / 10739
*
* @ since 2.3 . 3
*
* @ return mixed
*/
public static function is_elementor_kit_button_color_set () {
$ele_btn_global_text_color = false ;
$ele_kit_id = get_option ( 'elementor_active_kit' , false );
if ( false !== $ele_kit_id ) {
$ele_global_btn_data = get_post_meta ( $ele_kit_id , '_elementor_page_settings' );
// Elementor Global theme style button text color fetch value from database.
$ele_btn_global_text_color = isset ( $ele_global_btn_data [ 0 ][ 'button_text_color' ] ) ? $ele_global_btn_data [ 0 ][ 'button_text_color' ] : $ele_btn_global_text_color ;
}
return $ele_btn_global_text_color ;
}
/**
* Check if Elementor - Disable Default Colors or Disable Default Fonts checked or unchecked .
*
* @ since 2.3 . 3
*
* @ return mixed String if any of the settings are enabled . False if no settings are enabled .
*/
public static function elementor_default_color_font_setting () {
$ele_default_color_setting = get_option ( 'elementor_disable_color_schemes' );
$ele_default_typo_setting = get_option ( 'elementor_disable_typography_schemes' );
if ( ( 'yes' === $ele_default_color_setting && 'yes' === $ele_default_typo_setting ) || ( false === self :: is_elementor_default_color_font_comp () ) ) {
return 'color-typo' ;
}
if ( 'yes' === $ele_default_color_setting ) {
return 'color' ;
}
if ( 'yes' === $ele_default_typo_setting ) {
return 'typo' ;
}
return false ;
}
/**
* For existing users , do not reflect direct change .
*
* @ since 3.6 . 5
* @ return bool true if WordPress - 5.8 compatibility enabled , False if not .
*/
public static function is_block_editor_support_enabled () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_has_block_editor_support' , isset ( $astra_settings [ 'support-block-editor' ] ) && false === $astra_settings [ 'support-block-editor' ] ? false : true );
}
/**
* For existing users , do not provide Elementor Default Color Typo settings compatibility by default .
*
* @ since 2.3 . 3
* @ return bool true if elementor default color and typo setting should work with theme , False if not .
*/
public static function is_elementor_default_color_font_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_elementor_default_color_font_comp' , isset ( $astra_settings [ 'ele-default-color-typo-setting-comp' ] ) && false === $astra_settings [ 'ele-default-color-typo-setting-comp' ] ? false : true );
}
/**
* For existing users , do not provide list vertical spacing .
*
* @ since 4.1 . 6
* @ return bool true for new users , false for old users .
*/
public static function astra_list_block_vertical_spacing () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_list_block_vertical_spacing' , isset ( $astra_settings [ 'list-block-vertical-spacing' ] ) ? false : true );
}
/**
* For existing users , do not load the wide / full width image CSS by default .
*
* @ since 2.4 . 4
* @ return bool false if it is an existing user , true if not .
*/
public static function gtn_image_group_css_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_gutenberg_image_group_style_support' , isset ( $astra_settings [ 'gtn-full-wide-image-grp-css' ] ) ? false : true );
}
/**
* Do not apply new wide / full Group and Cover block CSS for existing users .
*
* @ since 2.5 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function gtn_group_cover_css_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_gtn_group_cover_css_comp' , isset ( $astra_settings [ 'gtn-full-wide-grp-cover-css' ] ) ? false : true );
}
/**
* Do not apply new Group , Column and Media & Text block CSS for existing users .
*
* @ since 2.6 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function gutenberg_core_blocks_css_comp () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_gutenberg_core_blocks_design_compatibility' , isset ( $astra_settings [ 'guntenberg-core-blocks-comp-css' ] ) ? false : true );
}
/**
* Do not apply new Group , Column and Media & Text block CSS for existing users .
*
* CSS for adding spacing | padding support to Gutenberg Media -&- Text Block
*
* @ since 2.6 . 1
* @ return bool false if it is an existing user , true if not .
*/
public static function gutenberg_media_text_block_css_compat () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_gutenberg_media_text_block_spacing_compatibility' , isset ( $astra_settings [ 'guntenberg-media-text-block-padding-css' ] ) ? false : true );
}
/**
* Gutenberg pattern compatibility changes .
*
* @ since 3.3 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function gutenberg_core_patterns_compat () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_gutenberg_patterns_compatibility' , isset ( $astra_settings [ 'guntenberg-button-pattern-compat-css' ] ) ? false : true );
}
/**
* Font CSS support for widget - title heading fonts & fonts which are not working in editor .
*
* 1. Adding Font - weight support to widget titles .
* 2. Customizer font CSS not supporting in editor .
*
* @ since 3.6 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function support_font_css_to_widget_and_in_editor () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_heading_fonts_typo_support' , isset ( $astra_settings [ 'can-support-widget-and-editor-fonts' ] ) ? false : true );
}
/**
* Whether to remove or not following CSS which restricts logo size on responsive devices .
*
* @ see https :// github . com / brainstormforce / astra / commit / d09f63336b73d58c8f8951726edbc90671d7f419
*
* @ since 3.6 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function remove_logo_max_width_mobile_static_css () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_remove_logo_max_width_css' , isset ( $astra_settings [ 'can-remove-logo-max-width-css' ] ) ? false : true );
}
/**
* Remove text - decoration : underline ; CSS for builder specific elements to maintain their UI / UX better .
*
* 1. UAG : Marketing Button , Info Box CTA , MultiButtons , Tabs .
* 2. UABB : Button , Slide Box CTA , Flip box CTA , Info Banner , Posts , Info Circle , Call to Action , Subscribe Form .
*
* @ since 3.6 . 9
*/
public static function unset_builder_elements_underline () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_unset_builder_elements_underline' , isset ( $astra_settings [ 'unset-builder-elements-underline' ] ) ? false : true );
}
/**
* Block editor experience improvements css introduced with v4 . 0.0 .
*
* @ since 4.0 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function v4_block_editor_compat () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_v4_block_editor_compat' , isset ( $astra_settings [ 'v4-block-editor-compat' ] ) ? false : true );
}
/**
* Load sidebar static CSS when it is enabled .
*
* @ since 3.0 . 0
*/
public static function load_sidebar_static_css () {
$update_customizer_strctural_defaults = astra_check_is_structural_setup ();
$secondary_li_bottom_spacing = true === $update_customizer_strctural_defaults ? '0.75em' : '0.25em' ;
$is_site_rtl = is_rtl () ? true : false ;
$ltr_left = $is_site_rtl ? esc_attr ( 'right' ) : esc_attr ( 'left' );
$ltr_right = $is_site_rtl ? esc_attr ( 'left' ) : esc_attr ( 'right' );
$sidebar_static_css = '
#secondary {
margin : 4 em 0 2.5 em ;
word - break : break - word ;
line - height : 2 ;
}
#secondary li {
margin - bottom : ' . esc_attr( $secondary_li_bottom_spacing ) . ' ;
}
#secondary li:last-child {
margin - bottom : 0 ;
}
@ media ( max - width : 768 px ) {
. js_active . ast - plain - container . ast - single - post #secondary {
margin - top : 1.5 em ;
}
}
. ast - separate - container . ast - two - container #secondary .widget {
background - color : #fff;
padding : 2 em ;
margin - bottom : 2 em ;
}
' ;
if ( defined ( 'CFVSW_VER' ) ) {
$sidebar_static_css .= '
#secondary .cfvsw-filters li{
margin - bottom : 0 ;
margin - top : 0 ;
}
' ;
}
$sidebar_static_css .= '
@ media ( min - width : 993 px ) {
. ast - left - sidebar #secondary {
padding - ' . $ltr_right . ' : 60 px ;
}
. ast - right - sidebar #secondary {
padding - ' . $ltr_left . ' : 60 px ;
}
}
@ media ( max - width : 993 px ) {
. ast - right - sidebar #secondary {
padding - ' . $ltr_left . ' : 30 px ;
}
. ast - left - sidebar #secondary {
padding - ' . $ltr_right . ' : 30 px ;
}
}
' ;
if ( $update_customizer_strctural_defaults ) {
$sidebar_static_css .= '
@ media ( min - width : 993 px ) {
. ast - page - builder - template . ast - left - sidebar #secondary {
padding - ' . $ltr_left . ' : 60 px ;
}
. ast - page - builder - template . ast - right - sidebar #secondary {
padding - ' . $ltr_right . ' : 60 px ;
}
}
@ media ( max - width : 993 px ) {
. ast - page - builder - template . ast - right - sidebar #secondary {
padding - ' . $ltr_right . ' : 30 px ;
}
. ast - page - builder - template . ast - left - sidebar #secondary {
padding - ' . $ltr_left . ' : 30 px ;
}
}
' ;
}
return $sidebar_static_css ;
}
/**
* Astra Spectra Gutenberg Compatibility CSS .
*
* @ since 3.9 . 4
* @ return bool false if it is an existing user , true if not .
*/
public static function spectra_gutenberg_compat_css () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_spectra_gutenberg_compat_css' , isset ( $astra_settings [ 'spectra-gutenberg-compat-css' ] ) ? false : true );
}
/**
* Load static card ( EDD / Woo ) CSS .
*
* @ since 3.0 . 0
* @ return string static css for Woocommerce and EDD card .
*/
public static function load_cart_static_css () {
$theme_color = astra_get_option ( 'theme-color' );
$btn_border_color = astra_get_option ( 'theme-button-border-group-border-color' );
$btn_bg_color = astra_get_option ( 'button-bg-color' , $theme_color );
$btn_border_h_color = astra_get_option ( 'theme-button-border-group-border-h-color' );
$link_h_color = astra_get_option ( 'link-h-color' );
$btn_bg_h_color = astra_get_option ( 'button-bg-h-color' , '' , $link_h_color );
$normal_border_color = $btn_border_color ? $btn_border_color : $btn_bg_color ;
$hover_border_color = $btn_border_h_color ? $btn_border_h_color : $btn_bg_h_color ;
$is_site_rtl = is_rtl ();
$ltr_left = $is_site_rtl ? 'right' : 'left' ;
$ltr_right = $is_site_rtl ? 'left' : 'right' ;
$cart_static_css = '
. ast - site - header - cart . cart - container ,
. ast - edd - site - header - cart . ast - edd - cart - container {
transition : all 0.2 s linear ;
}
. ast - site - header - cart . ast - woo - header - cart - info - wrap ,
. ast - edd - site - header - cart . ast - edd - header - cart - info - wrap {
padding : 0 6 px 0 2 px ;
font - weight : 600 ;
line - height : 2.7 ;
display : inline - block ;
}
. ast - site - header - cart i . astra - icon {
font - size : 20 px ;
font - size : 1.3 em ;
font - style : normal ;
font - weight : normal ;
position : relative ;
padding : 0 2 px ;
}
. ast - site - header - cart i . astra - icon . no - cart - total : after ,
. ast - header - break - point . ast - header - custom - item - outside . ast - edd - header - cart - info - wrap ,
. ast - header - break - point . ast - header - custom - item - outside . ast - woo - header - cart - info - wrap {
display : none ;
}
. ast - site - header - cart . ast - menu - cart - fill i . astra - icon ,
. ast - edd - site - header - cart . ast - edd - menu - cart - fill span . astra - icon {
font - size : 1.1 em ;
}
. astra - cart - drawer {
position : fixed ;
display : block ;
visibility : hidden ;
overflow : auto ;
- webkit - overflow - scrolling : touch ;
z - index : 10000 ;
background - color : var ( -- ast - global - color - primary , var ( -- ast - global - color - 5 ));
transform : translate3d ( 0 , 0 , 0 );
opacity : 0 ;
will - change : transform ;
transition : 0.25 s ease ;
}
. woocommerce - mini - cart {
position : relative ;
}
. woocommerce - mini - cart :: before {
content : " " ;
transition : . 3 s ;
}
. woocommerce - mini - cart . ajax - mini - cart - qty - loading :: before {
position : absolute ;
top : 0 ;
left : 0 ;
right : 0 ;
width : 100 % ;
height : 100 % ;
z - index : 5 ;
background - color : var ( -- ast - global - color - primary , var ( -- ast - global - color - 5 ));
opacity : . 5 ;
}
. astra - cart - drawer {
width : 460 px ;
height : 100 % ;
' . $ltr_left . ' : 100 % ;
top : 0 px ;
opacity : 1 ;
transform : translate3d ( 0 % , 0 , 0 );
}
. astra - cart - drawer . astra - cart - drawer - header {
position : absolute ;
width : 100 % ;
text - align : ' . $ltr_left . ' ;
text - transform : inherit ;
font - weight : 500 ;
border - bottom : 1 px solid var ( -- ast - border - color );
padding : 1.34 em ;
line - height : 1 ;
z - index : 1 ;
max - height : 3.5 em ;
}
. astra - cart - drawer . astra - cart - drawer - header . astra - cart - drawer - title {
color : var ( -- ast - global - color - 2 );
}
. astra - cart - drawer . astra - cart - drawer - close . ast - close - svg {
width : 22 px ;
height : 22 px ;
}
. astra - cart - drawer . astra - cart - drawer - content ,
. astra - cart - drawer . astra - cart - drawer - content . widget_shopping_cart ,
. astra - cart - drawer . astra - cart - drawer - content . widget_shopping_cart_content {
height : 100 % ;
}
. astra - cart - drawer . astra - cart - drawer - content {
padding - top : 3.5 em ;
}
. astra - cart - drawer . ast - mini - cart - price - wrap . multiply - symbol {
padding : 0 0.5 em ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart - item . ast - mini - cart - price - wrap {
float : ' . $ltr_right . ' ;
margin - top : 0.5 em ;
max - width : 50 % ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart - item . variation {
margin - top : 0.5 em ;
margin - bottom : 0.5 em ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart - item . variation dt {
font - weight : 500 ;
}
. astra - cart - drawer . astra - cart - drawer - content . widget_shopping_cart_content {
display : flex ;
flex - direction : column ;
overflow : hidden ;
}
. astra - cart - drawer . astra - cart - drawer - content . widget_shopping_cart_content ul li {
min - height : 60 px ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total {
display : flex ;
justify - content : space - between ;
padding : 0.7 em 1.34 em ;
margin - bottom : 0 ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total strong ,
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total . amount {
width : 50 % ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart {
padding : 1.3 em ;
flex : 1 ;
overflow : auto ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart a . remove {
width : 20 px ;
height : 20 px ;
line - height : 16 px ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total {
padding : 1 em 1.5 em ;
margin : 0 ;
text - align : center ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons {
padding : 1.34 em ;
text - align : center ;
margin - bottom : 0 ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons . button . checkout {
margin - ' . $ltr_right . ' : 0 ;
}
. astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons a {
width : 100 % ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons a : nth - last - child ( 1 ) {
margin - bottom : 0 ;
}
. astra - cart - drawer . astra - cart - drawer - content . edd - cart - item {
padding : . 5 em 2.6 em . 5 em 1.5 em ;
}
. astra - cart - drawer . astra - cart - drawer - content . edd - cart - item . edd - remove - from - cart :: after {
width : 20 px ;
height : 20 px ;
line - height : 16 px ;
}
. astra - cart - drawer . astra - cart - drawer - content . edd - cart - number - of - items {
padding : 1 em 1.5 em 1 em 1.5 em ;
margin - bottom : 0 ;
text - align : center ;
}
. astra - cart - drawer . astra - cart - drawer - content . edd_total {
padding : . 5 em 1.5 em ;
margin : 0 ;
text - align : center ;
}
. astra - cart - drawer . astra - cart - drawer - content . cart_item . edd_checkout {
padding : 1 em 1.5 em 0 ;
text - align : center ;
margin - top : 0 ;
}
. astra - cart - drawer . widget_shopping_cart_content > . woocommerce - mini - cart__empty - message {
display : none ;
}
. astra - cart - drawer . woocommerce - mini - cart__empty - message ,
. astra - cart - drawer . cart_item . empty {
text - align : center ;
margin - top : 10 px ;
}
body . admin - bar . astra - cart - drawer {
padding - top : 32 px ;
}
@ media ( max - width : 782 px ) {
body . admin - bar . astra - cart - drawer {
padding - top : 46 px ;
}
}
. ast - mobile - cart - active body . ast - hfb - header {
overflow : hidden ;
}
. ast - mobile - cart - active . astra - mobile - cart - overlay {
opacity : 1 ;
cursor : pointer ;
visibility : visible ;
z - index : 999 ;
}
. ast - mini - cart - empty - wrap {
display : flex ;
flex - wrap : wrap ;
height : 100 % ;
align - items : flex - end ;
}
. ast - mini - cart - empty - wrap > * {
width : 100 % ;
}
. astra - cart - drawer - content . ast - mini - cart - empty {
height : 100 % ;
display : flex ;
flex - direction : column ;
justify - content : space - between ;
text - align : center ;
}
. astra - cart - drawer - content . ast - mini - cart - empty . ast - mini - cart - message {
display : flex ;
align - items : center ;
justify - content : center ;
height : 100 % ;
padding : 1.34 em ;
}
@ media ( min - width : 546 px ) {
. astra - cart - drawer . astra - cart - drawer - content . ast - large - view . woocommerce - mini - cart__buttons {
display : flex ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . ast - large - view . woocommerce - mini - cart__buttons a ,
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . ast - large - view . woocommerce - mini - cart__buttons a . checkout {
margin - top : 0 ;
margin - bottom : 0 ;
}
}
. ast - site - header - cart . cart - container : focus - visible {
display : inline - block ;
}
' ;
if ( is_rtl () ) {
$cart_static_css .= '
. ast - site - header - cart i . astra - icon : after {
content : attr ( data - cart - total );
position : absolute ;
font - family : ' . astra_get_font_family( astra_body_font_family() ) . ' ;
font - style : normal ;
top : - 10 px ;
left : - 12 px ;
font - weight : bold ;
box - shadow : 1 px 1 px 3 px 0 px rgba ( 0 , 0 , 0 , 0.3 );
font - size : 11 px ;
padding - right : 0 px ;
2025-08-27 08:44:30 +02:00
padding - left : 1 px ;
2025-07-27 19:55:19 +02:00
line - height : 17 px ;
letter - spacing : -. 5 px ;
height : 18 px ;
min - width : 18 px ;
border - radius : 99 px ;
text - align : center ;
z - index : 3 ;
}
li . woocommerce - custom - menu - item . ast - site - header - cart i . astra - icon : after ,
li . edd - custom - menu - item . ast - edd - site - header - cart span . astra - icon : after {
padding - right : 2 px ;
}
. astra - cart - drawer . astra - cart - drawer - close {
position : absolute ;
top : 0.5 em ;
left : 0 ;
border : none ;
margin : 0 ;
padding : . 6 em 1 em . 4 em ;
color : var ( -- ast - global - color - 2 );
background - color : transparent ;
}
. astra - mobile - cart - overlay {
background - color : rgba ( 0 , 0 , 0 , 0.4 );
position : fixed ;
top : 0 ;
left : 0 ;
bottom : 0 ;
right : 0 ;
visibility : hidden ;
opacity : 0 ;
transition : opacity 0.2 s ease - in - out ;
}
. astra - cart - drawer . astra - cart - drawer - content . edd - cart - item . edd - remove - from - cart {
left : 1.2 em ;
}
. ast - header - break - point . ast - woocommerce - cart - menu . ast - hfb - header . ast - cart - menu - wrap , . ast - header - break - point . ast - hfb - header . ast - cart - menu - wrap ,
. ast - header - break - point . ast - edd - site - header - cart - wrap . ast - edd - cart - menu - wrap {
width : auto ;
height : 2 em ;
font - size : 1.4 em ;
line - height : 2 ;
vertical - align : middle ;
text - align : left ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons . button : not ( . checkout ) : not ( . ast - continue - shopping ) {
margin - left : 10 px ;
background - color : transparent ;
border : 2 px solid var ( -- ast - global - color - 0 );
color : var ( -- ast - global - color - 0 );
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons . button : not ( . checkout ) : not ( . ast - continue - shopping ) : hover {
border - color : var ( -- ast - global - color - 1 );
color : var ( -- ast - global - color - 1 );
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons a . checkout {
margin - right : 0 ;
margin - top : 10 px ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total strong {
padding - left : . 5 em ;
text - align : right ;
font - weight : 500 ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total . amount {
text - align : left ;
}
. astra - cart - drawer . active {
transform : translate3d ( 100 % , 0 , 0 );
visibility : visible ;
}
' ;
} else {
$cart_static_css .= '
. ast - site - header - cart i . astra - icon : after {
content : attr ( data - cart - total );
position : absolute ;
font - family : ' . astra_get_font_family( astra_body_font_family() ) . ' ;
font - style : normal ;
top : - 10 px ;
right : - 12 px ;
font - weight : bold ;
box - shadow : 1 px 1 px 3 px 0 px rgba ( 0 , 0 , 0 , 0.3 );
font - size : 11 px ;
padding - left : 0 px ;
2025-08-27 08:44:30 +02:00
padding - right : 1 px ;
2025-07-27 19:55:19 +02:00
line - height : 17 px ;
letter - spacing : -. 5 px ;
height : 18 px ;
min - width : 18 px ;
border - radius : 99 px ;
text - align : center ;
z - index : 3 ;
}
li . woocommerce - custom - menu - item . ast - site - header - cart i . astra - icon : after ,
li . edd - custom - menu - item . ast - edd - site - header - cart span . astra - icon : after {
padding - left : 2 px ;
}
. astra - cart - drawer . astra - cart - drawer - close {
position : absolute ;
top : 0.5 em ;
right : 0 ;
border : none ;
margin : 0 ;
padding : . 6 em 1 em . 4 em ;
color : var ( -- ast - global - color - 2 );
background - color : transparent ;
}
. astra - mobile - cart - overlay {
background - color : rgba ( 0 , 0 , 0 , 0.4 );
position : fixed ;
top : 0 ;
right : 0 ;
bottom : 0 ;
left : 0 ;
visibility : hidden ;
opacity : 0 ;
transition : opacity 0.2 s ease - in - out ;
}
. astra - cart - drawer . astra - cart - drawer - content . edd - cart - item . edd - remove - from - cart {
right : 1.2 em ;
}
. ast - header - break - point . ast - woocommerce - cart - menu . ast - hfb - header . ast - cart - menu - wrap , . ast - header - break - point . ast - hfb - header . ast - cart - menu - wrap ,
. ast - header - break - point . ast - edd - site - header - cart - wrap . ast - edd - cart - menu - wrap {
width : auto ;
height : 2 em ;
font - size : 1.4 em ;
line - height : 2 ;
vertical - align : middle ;
text - align : right ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons . button : not ( . checkout ) : not ( . ast - continue - shopping ) {
margin - right : 10 px ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons . button : not ( . checkout ) : not ( . ast - continue - shopping ),
. ast - site - header - cart . widget_shopping_cart . buttons . button : not ( . checkout ),
. ast - site - header - cart . ast - site - header - cart - data . ast - mini - cart - empty . woocommerce - mini - cart__buttons a . button {
background - color : transparent ;
border - style : solid ;
border - width : 1 px ;
border - color : ' . $normal_border_color . ' ;
color : ' . esc_attr( $normal_border_color ) . ' ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons . button : not ( . checkout ) : not ( . ast - continue - shopping ) : hover ,
. ast - site - header - cart . widget_shopping_cart . buttons . button : not ( . checkout ) : hover {
border - color : ' . $hover_border_color . ' ;
color : ' . esc_attr( $hover_border_color ) . ' ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons a . checkout {
margin - left : 0 ;
margin - top : 10 px ;
border - style : solid ;
border - width : 2 px ;
border - color : ' . $normal_border_color . ' ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__buttons a . checkout : hover {
border - color : ' . $hover_border_color . ' ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total strong {
padding - right : . 5 em ;
text - align : left ;
font - weight : 500 ;
}
. woocommerce - js . astra - cart - drawer . astra - cart - drawer - content . woocommerce - mini - cart__total . amount {
text - align : right ;
}
. astra - cart - drawer . active {
transform : translate3d ( - 100 % , 0 , 0 );
visibility : visible ;
}
' ;
}
$cart_static_css .= '
. ast - site - header - cart . ast - menu - cart - outline . ast - cart - menu - wrap , . ast - site - header - cart . ast - menu - cart - fill . ast - cart - menu - wrap ,
. ast - edd - site - header - cart . ast - edd - menu - cart - outline . ast - edd - cart - menu - wrap , . ast - edd - site - header - cart . ast - edd - menu - cart - fill . ast - edd - cart - menu - wrap {
line - height : 1.8 ;
} ' ;
// This CSS requires in case of :before Astra icons. But in case of SVGs this loads twice that's why removed this from static & loading conditionally.
if ( false === Astra_Icons :: is_svg_icons () ) {
$cart_static_css .= '
. ast - site - header - cart . cart - container * ,
. ast - edd - site - header - cart . ast - edd - cart - container * {
transition : all 0 s linear ;
}
' ;
}
return $cart_static_css ;
}
/**
* Check is new structural things are updated .
*
* @ return bool true | false .
* @ since 4.0 . 0
*/
public static function astra_check_default_color_typo () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_update_default_color_typo' , isset ( $astra_settings [ 'update-default-color-typo' ] ) ? false : true );
}
/**
* Check is new structural things are updated .
*
* @ return bool true | false .
* @ since 4.1 . 0
*/
public static function astra_woo_support_global_settings () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_woo_support_global_settings' , isset ( $astra_settings [ 'woo_support_global_settings' ] ) ? false : true );
}
/**
* Dynamic CSS to make Sidebar Sticky .
*
* @ return string Sticky Sidebar CSS .
* @ since 4.4 . 0
*/
public static function astra_sticky_sidebar_css () {
$css = '' ;
if ( astra_get_option ( 'site-sticky-sidebar' , false ) ) {
$sidebar_sticky_css = array (
'.ast-sticky-sidebar .sidebar-main' => array (
'top' => '50px' ,
'position' => 'sticky' ,
'overflow-y' => 'auto' ,
),
);
$sidebar_webkit_sticky_css = array (
'.ast-sticky-sidebar .sidebar-main' => array (
'position' => '-webkit-sticky' ,
),
);
$css .= astra_parse_css (
$sidebar_sticky_css ,
astra_get_tablet_breakpoint ( '' , 1 )
);
$css .= astra_parse_css (
$sidebar_webkit_sticky_css ,
astra_get_tablet_breakpoint ( '' , 1 )
);
}
return $css ;
}
/**
* Dynamic CSS for default forms styling improvements .
*
* @ return string Dynamic CSS .
* @ since 4.6 . 0
*/
public static function astra_default_forms_styling_dynamic_css () {
$css = '' ;
$enable_site_accessibility = astra_get_option ( 'site-accessibility-toggle' , false );
$is_dark_palette = Astra_Global_Palette :: is_dark_palette ();
$forms_default_styling_css = array (
'input[type="text"], input[type="number"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type=reset], input[type=tel], input[type=date], select, textarea' => array (
'font-size' => '16px' ,
'font-style' => 'normal' ,
'font-weight' => '400' ,
'line-height' => '24px' ,
'width' => '100%' ,
'padding' => '12px 16px' ,
'border-radius' => '4px' ,
'box-shadow' => '0px 1px 2px 0px rgba(0, 0, 0, 0.05)' ,
'color' => 'var(--ast-form-input-text, #475569)' ,
),
'input[type="text"], input[type="number"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type=reset], input[type=tel], input[type=date], select' => array (
'height' => '40px' ,
),
'input[type="date"]' => array (
'border-width' => '1px' ,
'border-style' => 'solid' ,
'border-color' => 'var(--ast-border-color)' ,
'background' => 'var( --ast-global-color-secondary, --ast-global-color-5 )' ,
),
'input[type="text"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type=reset]:focus, input[type="tel"]:focus, input[type="date"]:focus, select:focus, textarea:focus' => array (
'border-color' => 'var(--ast-global-color-0, #046BD2)' ,
'box-shadow' => 'none' ,
'outline' => 'none' ,
'color' => 'var(--ast-form-input-focus-text, #475569)' ,
),
'label, legend' => array (
'color' => '#111827' ,
'font-size' => '14px' ,
'font-style' => 'normal' ,
'font-weight' => '500' ,
'line-height' => '20px' ,
),
'select' => array (
'padding' => '6px 10px' ,
),
'fieldset' => array (
'padding' => '30px' ,
'border-radius' => '4px' ,
),
2025-07-27 19:58:08 +02:00
'button, .ast-button, .button, input[type="button"], input[type="reset"], input[type="submit"]' . ( astra_button_consistency_compatibility () ? ', a:where(.wp-block-button__link)' : '' ) => array (
2025-07-27 19:55:19 +02:00
'border-radius' => '4px' ,
'box-shadow' => '0px 1px 2px 0px rgba(0, 0, 0, 0.05)' ,
),
':root' => array (
'--ast-comment-inputs-background' => $is_dark_palette ? 'var( --ast-global-color-secondary, --ast-global-color-5 )' : '#FFF' ,
),
'::placeholder' => array (
'color' => 'var(--ast-form-field-color, #9CA3AF)' ,
),
'::-ms-input-placeholder' => array ( /* Edge 12-18 */
'color' => 'var(--ast-form-field-color, #9CA3AF)' ,
),
);
if ( defined ( 'WPCF7_VERSION' ) ) {
$wpcf7_dynamic_css = array (
'.wpcf7 input.wpcf7-form-control:not([type=submit]), .wpcf7 textarea.wpcf7-form-control' => array (
'padding' => '12px 16px' ,
),
'.wpcf7 select.wpcf7-form-control' => array (
'padding' => '6px 10px' ,
),
'.wpcf7 input.wpcf7-form-control:not([type=submit]):focus, .wpcf7 select.wpcf7-form-control:focus, .wpcf7 textarea.wpcf7-form-control:focus' => array (
'border-color' => 'var(--ast-global-color-0, #046BD2)' ,
'box-shadow' => 'none' ,
'outline' => 'none' ,
'color' => 'var(--ast-form-input-focus-text, #475569)' ,
),
'.wpcf7 .wpcf7-not-valid-tip' => array (
'color' => '#DC2626' ,
'font-size' => '14px' ,
'font-weight' => '400' ,
'line-height' => '20px' ,
'margin-top' => '8px' ,
),
'.wpcf7 input[type=file].wpcf7-form-control' => array (
'font-size' => '16px' ,
'font-style' => 'normal' ,
'font-weight' => '400' ,
'line-height' => '24px' ,
'width' => '100%' ,
'padding' => '12px 16px' ,
'border-radius' => '4px' ,
'box-shadow' => '0px 1px 2px 0px rgba(0, 0, 0, 0.05)' ,
'color' => 'var(--ast-form-input-text, #475569)' ,
),
);
$forms_default_styling_css = array_merge ( $forms_default_styling_css , $wpcf7_dynamic_css );
}
if ( class_exists ( 'GFForms' ) ) {
$gravity_forms_dynamic_css = array (
'input[type="radio"].gfield-choice-input:checked, input[type="checkbox"].gfield-choice-input:checked, .ginput_container_consent input[type="checkbox"]:checked' => array (
'border-color' => 'inherit' ,
'background-color' => 'inherit' ,
),
'input[type="radio"].gfield-choice-input:focus, input[type="checkbox"].gfield-choice-input:focus, .ginput_container_consent input[type="checkbox"]:focus' => array (
'border-color' => 'var(--ast-global-color-0, #046BD2)' ,
'box-shadow' => 'none' ,
'outline' => 'none' ,
'color' => 'var(--ast-form-input-focus-text, #475569)' ,
),
);
$forms_default_styling_css = array_merge ( $forms_default_styling_css , $gravity_forms_dynamic_css );
}
// Default form styling accessibility options compatibility.
if ( $enable_site_accessibility ) {
$outline_style = astra_get_option ( 'site-accessibility-highlight-type' );
$outline_color = astra_get_option ( 'site-accessibility-highlight-color' );
$outline_input_style = astra_get_option ( 'site-accessibility-highlight-input-type' );
$outline_input_color = astra_get_option ( 'site-accessibility-highlight-input-color' );
$input_highlight = ( 'unset' !== $outline_input_style );
$selected_outline_style = $input_highlight ? $outline_input_style : $outline_style ;
$selected_outline_color = $input_highlight ? $outline_input_color : $outline_color ;
$forms_default_styling_css [ 'input[type="text"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type=reset]:focus, input[type="tel"]:focus, input[type="date"]:focus, select:focus, textarea:focus' ] = array (
'border-color' => $selected_outline_color ? $selected_outline_color : '#046BD2' ,
'box-shadow' => 'none' ,
'outline' => 'none' ,
'color' => 'var(--ast-form-input-focus-text, #475569)' ,
);
// Contact form 7 accessibility compatibility.
if ( defined ( 'WPCF7_VERSION' ) ) {
$forms_default_styling_css [ '.wpcf7 input.wpcf7-form-control:not([type=submit]):focus, .wpcf7 select.wpcf7-form-control:focus, .wpcf7 textarea.wpcf7-form-control:focus' ] = array (
'border-style' => $selected_outline_style ? $selected_outline_style : 'inherit' ,
'border-color' => $selected_outline_color ? $selected_outline_color : '#046BD2' ,
'border-width' => 'thin' ,
'box-shadow' => 'none' ,
'outline' => 'none' ,
'color' => 'var(--ast-form-input-focus-text, #475569)' ,
);
}
// Gravity forms accessibility compatibility.
if ( class_exists ( 'GFForms' ) ) {
$forms_default_styling_css [ 'input[type="radio"].gfield-choice-input:focus, input[type="checkbox"].gfield-choice-input:focus, .ginput_container_consent input[type="checkbox"]:focus' ] = array (
'border-style' => $selected_outline_style ? $selected_outline_style : 'inherit' ,
'border-color' => $selected_outline_color ? $selected_outline_color : '#046BD2' ,
'border-width' => 'thin' ,
'box-shadow' => 'none' ,
'outline' => 'none' ,
'color' => 'var(--ast-form-input-focus-text, #475569)' ,
);
}
}
return $css . astra_parse_css ( $forms_default_styling_css );
}
/**
* Check if fullwidth layout with sidebar is supported .
* Old users - yes
* New users - no
*
* @ return bool true | false .
* @ since 4.2 . 0
*/
public static function astra_fullwidth_sidebar_support () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_fullwidth_sidebar_support' , isset ( $astra_settings [ 'fullwidth_sidebar_support' ] ) ? false : true );
}
/**
* Core Comment & Search Button Styling Compatibility .
* Old Users - Will not reflect directly .
* New Users - Direct reflection
*
* @ return bool true | false .
* @ since 4.2 . 2
*/
public static function astra_core_form_btns_styling () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_core_form_btns_styling' , isset ( $astra_settings [ 'v4-2-2-core-form-btns-styling' ] ) ? false : true );
}
/**
* Load Blog Layout static CSS when it is enabled .
*
* @ since 4.6 . 0
*/
public static function blog_layout_static_css () {
return '.ast-blog-layout-6-grid .ast-blog-featured-section:before { content: ""; }' ;
}
/**
* Improve full screen search Submit button style .
*
* @ since 4.4 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function astra_4_4_0_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_addon_upgrade_fullscreen_search_submit_style' , isset ( $astra_settings [ 'v4-4-0-backward-option' ] ) ? false : true );
}
/**
* Check version 4.5 . 0 backward compatibility .
*
* @ since 4.5 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function astra_4_5_0_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_upgrade_color_styles' , isset ( $astra_settings [ 'v4-5-0-backward-option' ] ) ? false : true );
}
/**
* Check version 4.9 . 0 backward compatibility .
*
* @ since 4.9 . 0
* @ return bool false if it is an existing user , true if not .
*/
public static function astra_4_9_0_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_dark_palette_backward' , isset ( $astra_settings [ 'v4-9-0-backward-option' ] ) ? false : true );
}
/**
* In 4.6 . 0 version we are having new stylings .
* 1. Comments area refined .
* 2. Defaults improvement for single - blog layouts .
* 3. Form default UI improved .
*
* @ return bool true | false .
* @ since 4.6 . 0
*/
public static function astra_4_6_0_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_v4-6-0-backward-option' , isset ( $astra_settings [ 'v4-6-0-backward-option' ] ) ? false : true );
}
/**
* In 4.6 . 2 version we are having new stylings .
* 1. Keeping meta featured image disable option useless for old users .
*
* @ return bool true | false .
* @ since 4.6 . 2
*/
public static function astra_4_6_2_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_v4-6-2-backward-option' , isset ( $astra_settings [ 'v4-6-2-backward-option' ] ) ? false : true );
}
/**
* Upgrade Astra default button stylings & compatibility with Spectra buttons .
*
* @ return bool true | false .
* @ since 4.6 . 4
*/
public static function astra_4_6_4_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_btn-stylings-upgrade' , isset ( $astra_settings [ 'btn-stylings-upgrade' ] ) ? false : true );
}
/**
* Handle backward compatibility for heading `clear:both` css in single posts and pages .
*
* @ return bool true | false If returns true then set `clear:none` .
* @ since 4.6 . 12
*/
public static function astra_headings_clear_compatibility () {
$astra_settings = astra_get_options ();
/**
* If `single_posts_pages_heading_clear_none` is set then this user is probably old user
* so in that case , we will not convert the " clear:both " to " clear:none " for old users .
*/
return apply_filters ( 'astra_get_option_single_posts_pages_heading_clear_none' , isset ( $astra_settings [ 'single_posts_pages_heading_clear_none' ] ) ? false : true );
}
/**
* Single post outside padding was not working .
*
* @ return bool true | false .
* @ since 4.8 . 2
*/
public static function astra_4_8_2_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_v4-8-2-backward-option' , isset ( $astra_settings [ 'v4-8-2-backward-option' ] ) ? false : true );
}
/**
* Restrict unitless support to body font by default .
*
* 1. Unitless line - height support .
* 2. Font - size of h5 - h6 default update .
*
* @ since 4.6 . 14
* @ return bool true | false .
*/
public static function astra_4_6_14_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_enable-4-6-14-compatibility' , isset ( $astra_settings [ 'enable-4-6-14-compatibility' ] ) ? false : true );
}
/**
* Upgrade Astra secondary button border to look style guide in sync .
*
* @ return bool true | false .
* @ since 4.8 . 0
*/
public static function astra_4_8_0_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_enable-4-8-0-compatibility' , isset ( $astra_settings [ 'enable-4-8-0-compatibility' ] ) ? false : true );
}
/**
* Added compatibility for alignwide Spectra container width .
*
* @ return bool true | false .
* @ since 4.8 . 4
*/
public static function astra_4_8_4_compatibility () {
$astra_settings = astra_get_options ();
return apply_filters ( 'astra_get_option_enable-4-8-4-compatibility' , isset ( $astra_settings [ 'enable-4-8-4-compatibility' ] ) ? false : true );
}
/**
* In 4.8 . 9 version we are having following compatibilities .
* 1. Color sequence & tooltips updated ( AST - 3809 ) .
*
* @ return bool true | false .
* @ since 4.8 . 9
*/
public static function astra_4_8_9_compatibility () {
$astra_settings = get_option ( ASTRA_THEME_SETTINGS );
return apply_filters ( 'astra_get_option_enable-4-8-9-compatibility' , isset ( $astra_settings [ 'enable-4-8-9-compatibility' ] ) ? false : true );
}
}
}