فهرست منبع

Merge pull request #1962 from Automattic/add/color-annotations-alves

Alves: Add Color Annotataions.
Allan Cole 5 سال پیش
والد
کامیت
668af5fa62
7فایلهای تغییر یافته به همراه932 افزوده شده و 179 حذف شده
  1. 37 14
      alves/functions.php
  2. 432 0
      alves/inc/wpcom-colors.php
  3. 203 0
      alves/inc/wpcom-editor-colors.php
  4. 29 0
      alves/inc/wpcom.php
  5. 63 47
      alves/style-editor.css
  6. 84 59
      alves/style-rtl.css
  7. 84 59
      alves/style.css

+ 37 - 14
alves/functions.php

@@ -53,40 +53,53 @@ if ( ! function_exists( 'alves_setup' ) ) :
 			)
 		);
 
-		// Add child theme editor color pallete to match Sass-map variables in `_config-child-theme-deep.scss`.
+		/*
+		 * Get customizer colors and add them to the editor color palettes
+		 *
+		 * - if the customizer color is empty, use the default
+		 */
+		$colors_array = get_theme_mod('colors_manager', array( 'colors' => true )); // color annotations array()
+		$primary          = ! empty( $colors_array ) ? $colors_array['colors']['link'] : '#3E7D98'; // $config-global--color-primary-default;
+		$secondary        = ! empty( $colors_array ) ? $colors_array['colors']['fg1'] : '#9B6A36';  // $config-global--color-secondary-default;
+		$background       = ! empty( $colors_array ) ? $colors_array['colors']['bg'] : '#FFFFFF';   // $config-global--color-background-default;
+		$foreground       = ! empty( $colors_array ) ? $colors_array['colors']['txt'] : '#394d55';  // $config-global--color-foreground-default;
+		$foreground_light = ! empty( $colors_array ) && $colors_array['colors']['txt'] != '#394d55' ? $colors_array['colors']['txt'] : '#4d6974';  // $config-global--color-foreground-light-default;
+		$foreground_dark  = ! empty( $colors_array ) && $colors_array['colors']['txt'] != '#394d55' ? $colors_array['colors']['txt'] : '#253136';  // $config-global--color-foreground-dark-default;
+
+		// Editor color palette.
 		add_theme_support(
 			'editor-color-palette',
 			array(
 				array(
 					'name'  => __( 'Primary', 'alves' ),
 					'slug'  => 'primary',
-					'color' => '#3E7D98',
+					'color' => $primary,
 				),
 				array(
 					'name'  => __( 'Secondary', 'alves' ),
 					'slug'  => 'secondary',
-					'color' => '#9B6A36',
+					'color' => $secondary,
 				),
 				array(
-					'name'  => __( 'Dark Gray', 'alves' ),
-					'slug'  => 'foreground-dark',
-					'color' => '#253136',
+					'name'  => __( 'Background', 'alves' ),
+					'slug'  => 'background',
+					'color' => $background,
 				),
 				array(
-					'name'  => __( 'Gray', 'alves' ),
+					'name'  => __( 'Foreground', 'alves' ),
 					'slug'  => 'foreground',
-					'color' => '#394d55',
+					'color' => $foreground,
 				),
 				array(
-					'name'  => __( 'Light Gray', 'alves' ),
+					'name'  => __( 'Foreground Light', 'alves' ),
 					'slug'  => 'foreground-light',
-					'color' => '#4d6974',
+					'color' => $foreground_light,
 				),
 				array(
-                    'name'  => __( 'White', 'alves' ),
-                    'slug'  => 'background',
-                    'color' => '#ffffff',
-                ),
+					'name'  => __( 'Foreground Dark', 'alves' ),
+					'slug'  => 'foreground-dark',
+					'color' => $foreground_dark,
+				),
 			)
 		);
 	}
@@ -206,5 +219,15 @@ function alves_editor_styles() {
 
 	// Enqueue Google fonts in the editor, if necessary
 	wp_enqueue_style( 'alves-editor-fonts', alves_fonts_url(), array(), null );
+
+	// Hide duplicate palette colors
+	$colors_array = get_theme_mod('colors_manager', array( 'colors' => true )); // color annotations array()
+	if ( ! empty( $colors_array ) && $colors_array['colors']['txt'] != '#394d55' ) { // $config-global--color-foreground-light-default;
+		$inline_palette_css = '.block-editor-color-gradient-control .components-circular-option-picker__option-wrapper:nth-child(5),
+			.block-editor-color-gradient-control .components-circular-option-picker__option-wrapper:nth-child(6) {
+				display: none;
+			}';
+		wp_add_inline_style( 'wp-edit-blocks', $inline_palette_css );
+	}
 }
 add_action( 'enqueue_block_editor_assets', 'alves_editor_styles' );

+ 432 - 0
alves/inc/wpcom-colors.php

@@ -0,0 +1,432 @@
+<?php
+/* Custom Colors: Alves */
+
+// Background Color
+// $config-global--color-background-default
+add_color_rule( 'bg', '#ffffff', array(
+
+	// Background-color
+	array( '.screen-reader-text:focus,
+			.site-header a:focus,
+			.site-header a:hover,
+			body,
+			body .widget_eu_cookie_law_widget #eu-cookie-law,
+			body .widget_eu_cookie_law_widget #eu-cookie-law.negative input.accept,
+			.main-navigation > div > ul > li > .sub-menu,
+			.site-header .main-navigation > div > ul > li .sub-menu a', 'background-color' ),
+
+	// Text-color
+	array( '.a8c-posts-list-item__featured span,
+			.a8c-posts-list__view-all,
+			.a8c-posts-list__view-all:focus,
+			.a8c-posts-list__view-all:hover,
+			.has-focus.a8c-posts-list__view-all,
+			.has-focus.button,
+			.has-focus.wp-block-button__link,
+			.has-focus.wp-block-file__button,
+			.sticky-post,
+			.button,
+			.button:focus,
+			.button:hover,
+			button,
+			button.has-focus,
+			button:focus,
+			button:hover,
+			button[data-load-more-btn],
+			.wp-block-button__link,
+			.wp-block-button__link:focus,
+			.wp-block-button__link:hover,
+			.wp-block-cover-image.has-background-background-color .wp-block-cover-image-text,
+			.wp-block-cover-image.has-background-background-color .wp-block-cover-text,
+			.wp-block-cover-image.has-background-background-color .wp-block-cover__inner-container,
+			.wp-block-cover.has-background-background-color .wp-block-cover-image-text,
+			.wp-block-cover.has-background-background-color .wp-block-cover-text,
+			.wp-block-cover.has-background-background-color .wp-block-cover__inner-container,
+			.wp-block-cover.has-background-dim,
+			.wp-block-cover-image.has-background-dim,
+			.wp-block-file .wp-block-file__button,
+			.wp-block-file a.wp-block-file__button:active,
+			.wp-block-file a.wp-block-file__button:focus,
+			.wp-block-file a.wp-block-file__button:hover,
+			.wp-block-file a.wp-block-file__button:visited,
+			.wp-block-file__button,
+			.wp-block-file__button:focus,
+			.wp-block-file__button:hover,
+			.wp-block-gallery .blocks-gallery-image figcaption,
+			.wp-block-gallery .blocks-gallery-item figcaption,
+			.wp-block-pullquote.is-style-solid-color,
+			table.is-style-stripes tbody tr:nth-child(odd),
+			.wp-block-table.is-style-stripes tbody tr:nth-child(odd),
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.accept,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.accept:focus,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.accept:hover,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.has-focus.accept,
+			body .widget_eu_cookie_law_widget #eu-cookie-law.negative,
+			input.has-focus[type="submit"],
+			input:focus[type="submit"],
+			input:hover[type="submit"],
+			input[type="submit"]', 'color' ),
+
+	// Border-bottom-color
+	array( '.site-header .main-navigation > div > ul > li:hover > ul::before,
+			.site-header .main-navigation > div > ul > li.focus > ul::before,
+			.site-header .main-navigation > div > ul > li.current-menu-item > ul::before', 'border-bottom-color' ),
+
+	/**
+	 * Utility Classes
+	 */
+	// Text-color
+	array( '.has-primary-background-color[class],
+			.has-secondary-background-color[class],
+			.has-foreground-background-color[class],
+			.has-foreground-light-background-color[class],
+			.has-foreground-dark-background-color[class],
+			.has-background-color[class],
+			.has-background-dark-color[class],
+			.has-background-light-color[class]', 'color' ),
+	// Background-color
+	array( '.has-background-background-color[class]', 'background-color' ),
+	// Background-color darkened
+	array( '.has-background-dark-background-color[class]', 'background-color', '-1' ),
+	// Background-color lightened
+	array( '.has-background-light-background-color[class]', 'background-color', '+1' ),
+
+	/**
+ 	 * Grays
+ 	 * Uses a slightly darker color
+ 	 */
+ 	// Border-color
+ 	array( '.main-navigation > div > ul > li > .sub-menu > li > a,
+ 			.main-navigation > div > ul > li > .sub-menu > li > a:first-child,
+ 			.main-navigation > div > ul > li > .sub-menu > li > a:last-child', 'border-color', '-1' ),
+
+), __( 'Background Color' ) );
+
+// Link Color
+// $config-global--color-primary-default
+add_color_rule( 'link', '#3E7D98', array(
+
+	// Background-color
+	array( '.a8c-posts-list-item__featured span,
+			.a8c-posts-list__view-all,
+			.button,
+			.sticky-post,
+			.wp-block-button__link,
+			.wp-block-file .wp-block-file__button,
+			.wp-block-file__button,
+			.wp-block-pullquote.is-style-solid-color,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.accept,
+			button,
+			button[data-load-more-btn],
+			input[type="submit"]', 'background-color' ),
+
+	// Text-color
+	array( '.site-footer #footer-info-wrapper a:focus,
+			.site-footer #footer-info-wrapper a:hover,
+			.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color),
+			.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color):active,
+			.wp-block-button.is-style-outline.wp-block-button__link:not(.has-text-color),
+			.wp-block-button.is-style-outline.wp-block-button__link:active:not(.has-text-color),
+			.wp-block-newspack-blocks-homepage-articles article .entry-title a,
+			a,
+			hr.wp-block-separator.is-style-dots:before', 'color' ),
+
+	// Border color top
+	array( '.wp-block-code,
+			body .widget_eu_cookie_law_widget #eu-cookie-law,
+			input[type="color"],
+			input[type="date"],
+			input[type="datetime"],
+			input[type="datetime-local"],
+			input[type="email"],
+			input[type="month"],
+			input[type="number"],
+			input[type="password"],
+			input[type="range"],
+			input[type="search"],
+			input[type="tel"],
+			input[type="text"],
+			input[type="time"],
+			input[type="url"],
+			input[type="week"],
+			select,
+			textarea', 'border-color' ),
+
+	// Border color top
+	array( '.comment-list .children > li,
+			.comment-list > li,
+			.wp-block-pullquote', 'border-top-color' ),
+
+	// Border color right
+	array( '.wp-block-quote[style*="text-align: right"],
+			.wp-block-quote[style*="text-align:right"]', 'border-right-color' ),
+
+	// Border color bottom
+	array( '.comment-list,
+			.wp-block-pullquote,
+			hr,
+			hr.wp-block-separator', 'border-bottom-color' ),
+
+	// Border color left
+	array( '.wp-block-quote', 'border-left-color' ),
+
+	/**
+	 * Utility Classes
+	 */
+	// Background-color
+	array( '.has-primary-background-color[class]', 'background-color' ),
+	// Text-color
+	array( '.has-primary-color[class]', 'color' ),
+
+), __( 'Link Color' ) );
+
+// Text Color
+// $config-global--color-foreground-default
+add_color_rule( 'txt', '#394d55', array(
+
+	// Text-color
+	array( '.comment-meta .comment-metadata,
+			.entry-footer,
+			.entry-meta,
+			.has-background-background-color[class],
+			.has-background-dark-background-color[class],
+			.has-background-light-background-color[class],
+			.has-foreground-color[class],
+			.main-navigation,
+			.main-navigation a,
+			.main-navigation a:link,
+			.main-navigation a:visited,
+			.screen-reader-text:focus,
+			.site-footer #footer-info-wrapper a,
+			.site-title,
+			.social-navigation a,
+			.wp-block-code,
+			.wp-block-code pre,
+			.wp-block-pullquote,
+			body,
+			body .widget_eu_cookie_law_widget #eu-cookie-law,
+			body .widget_eu_cookie_law_widget #eu-cookie-law.negative input.accept,
+			input[type="color"],
+			input[type="color"]:focus,
+			input[type="date"],
+			input[type="date"]:focus,
+			input[type="datetime"],
+			input[type="datetime"]:focus,
+			input[type="datetime-local"],
+			input[type="datetime-local"]:focus,
+			input[type="email"],
+			input[type="email"]:focus,
+			input[type="month"],
+			input[type="month"]:focus,
+			input[type="number"],
+			input[type="number"]:focus,
+			input[type="password"],
+			input[type="password"]:focus,
+			input[type="range"],
+			input[type="range"]:focus,
+			input[type="search"],
+			input[type="search"]:focus,
+			input[type="tel"],
+			input[type="tel"]:focus,
+			input[type="text"],
+			input[type="text"]:focus,
+			input[type="time"],
+			input[type="time"]:focus,
+			input[type="url"],
+			input[type="url"]:focus,
+			input[type="week"],
+			input[type="week"]:focus,
+			textarea,
+			textarea:focus,
+			.site-header .main-navigation > div > ul > li .sub-menu a,
+			.a8c-posts-list__item .a8c-posts-list-item__meta,
+			.entry-footer,
+			.entry-meta,
+			.footer-navigation .footer-menu,
+			.has-foreground-light-color[class],
+			.site-branding,
+			.site-info,
+			.wp-block-image figcaption,
+			.wp-block-latest-comments .wp-block-latest-comments__comment-date,
+			.wp-block-latest-posts .wp-block-latest-posts__post-date,
+			.wp-block-newspack-blocks-homepage-articles article .cat-links,
+			.wp-block-newspack-blocks-homepage-articles article .entry-meta,
+			.wp-block-pullquote .wp-block-pullquote__citation,
+			.wp-block-pullquote cite,
+			.wp-block-pullquote footer,
+			.wp-block-quote .wp-block-quote__citation,
+			.wp-block-quote cite,
+			.wp-block-quote footer,
+			.wp-block-quote.is-large .wp-block-quote__citation,
+			.wp-block-quote.is-large cite,
+			.wp-block-quote.is-large footer,
+			.wp-block-quote.is-style-large .wp-block-quote__citation,
+			.wp-block-quote.is-style-large cite,
+			.wp-block-quote.is-style-large footer,
+			.wp-block-video figcaption,
+			figcaption', 'color' ),
+
+	// Background-color
+	array( '.wp-block-cover.has-background-dim,
+			.wp-block-cover-image.has-background-dim,
+			table.is-style-stripes tbody tr:nth-child(odd),
+			.wp-block-table.is-style-stripes tbody tr:nth-child(odd),
+			body .widget_eu_cookie_law_widget #eu-cookie-law.negative', 'background-color' ),
+
+	/**
+	 * Utility Classes
+	 */
+	// Foreground
+	array( '.has-foreground-color[class]', 'color' ),
+	array( '.has-foreground-background-color[class]', 'background-color' ),
+
+	// Text-color darkened
+	array( '.has-foreground-dark-color[class]', 'color', '-1' ),
+	// Background-color darkened
+	array( '.has-foreground-dark-background-color[class]', 'background-color', '-1' ),
+
+	// Text-color brightened
+	array( '.has-foreground-light-color[class]', 'color', '+2' ),
+	// Background-color brightened
+	array( '.has-foreground-light-background-color[class]', 'background-color', '+2' ),
+
+), __( 'Text Color' ) );
+
+// Accent Color
+// $config-global--color-secondary-default
+add_color_rule( 'fg1', '#9B6A36', array(
+
+	// Text-color
+	array( '.a8c-posts-list__item .a8c-posts-list-item__meta a:active,
+			.a8c-posts-list__item .a8c-posts-list-item__meta a:hover,
+			.comment-meta .comment-metadata a:active,
+			.comment-meta .comment-metadata a:hover,
+			.entry-footer a:active,
+			.entry-footer a:hover,
+			.entry-meta a:active,
+			.entry-meta a:hover,
+			.footer-navigation .footer-menu a:hover,
+			.main-navigation a:hover,
+			.site-info a:hover,
+			.site-title a:hover,
+			.social-navigation a:hover,
+			.wp-block-button.is-style-outline .wp-block-button__link.has-focus,
+			.wp-block-button.is-style-outline .wp-block-button__link:focus,
+			.wp-block-button.is-style-outline .wp-block-button__link:hover,
+			.wp-block-button.is-style-outline.wp-block-button__link.has-focus,
+			.wp-block-button.is-style-outline.wp-block-button__link:focus,
+			.wp-block-button.is-style-outline.wp-block-button__link:hover,
+			.wp-block-newspack-blocks-homepage-articles article .cat-links a:active,
+			.wp-block-newspack-blocks-homepage-articles article .cat-links a:hover,
+			.wp-block-newspack-blocks-homepage-articles article .entry-meta a:active,
+			.wp-block-newspack-blocks-homepage-articles article .entry-meta a:hover,
+			.wp-block-newspack-blocks-homepage-articles article .entry-title a:hover,
+			a:hover', 'color' ),
+
+	// Background-color
+	array( '.a8c-posts-list__view-all:focus,
+			.a8c-posts-list__view-all:hover,
+			.button:focus,
+			.button:hover,
+			.has-focus.a8c-posts-list__view-all,
+			.has-focus.button,
+			.has-focus.wp-block-button__link,
+			.has-focus.wp-block-file__button,
+			.main-navigation #toggle:focus + #toggle-menu,
+			.wp-block-button__link:focus,
+			.wp-block-button__link:hover,
+			.wp-block-file__button:focus,
+			.wp-block-file__button:hover,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.accept:focus,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.accept:hover,
+			body .widget_eu_cookie_law_widget #eu-cookie-law input.has-focus.accept,
+			button.has-focus,
+			button:focus,
+			button:hover,
+			input.has-focus[type="submit"],
+			input:focus[type="submit"],
+			input:hover[type="submit"]', 'background-color' ),
+
+	// Border-color
+	array( 'input[type="color"]:focus,
+			input[type="date"]:focus,
+			input[type="datetime"]:focus,
+			input[type="datetime-local"]:focus,
+			input[type="email"]:focus,
+			input[type="month"]:focus,
+			input[type="number"]:focus,
+			input[type="password"]:focus,
+			input[type="range"]:focus,
+			input[type="search"]:focus,
+			input[type="tel"]:focus,
+			input[type="text"]:focus,
+			input[type="time"]:focus,
+			input[type="url"]:focus,
+			input[type="week"]:focus,
+			textarea:focus', 'border-color' ),
+
+	// Text-decoration-color
+	array( '.entry-content a,
+			.main-navigation > div > ul > li > a,
+			.wp-block-newspack-blocks-homepage-articles article .entry-title a,
+			a', 'text-decoration-color' ),
+
+	/**
+	 * Utility Classes
+	 */
+	// Text-color
+	array( '.has-secondary-color[class]', 'color' ),
+
+	// Background-color
+	array( '.has-secondary-background-color[class]', 'background-color' ),
+
+), __( 'Secondary Color' ) );
+
+/**
+ * Custom CSS
+ */
+function alves_custom_colors_extra_css() { ?>
+	@media screen and (min-width: 560px) {
+		.main-navigation > div > ul > li > .sub-menu > li:first-child > a {
+			border-top: 1px solid;
+		}
+		.main-navigation > div > ul > li > .sub-menu > li > a {
+			border-left: 1px solid;
+			border-right: 1px solid;
+		}
+		.main-navigation > div > ul > li > .sub-menu > li:last-child > a {
+			border-bottom: 1px solid;
+		}
+		.site-header .main-navigation > div > ul > li.current-menu-item > ul::before,
+		.site-header .main-navigation > div > ul > li.focus > ul::before,
+		.site-header .main-navigation > div > ul > li:hover > ul::before {
+			border: none;
+		}
+	}
+<?php }
+add_theme_support( 'custom_colors_extra_css', 'alves_custom_colors_extra_css' );
+
+/**
+ * Featured Varia Palettes
+ */
+// Light
+add_color_palette( array(
+	'#FFFFFF',
+	'#1D1E1E',
+	'#C8133E',
+	'#4E2F4B',
+), 'Light' );
+// Medium
+add_color_palette( array(
+	'#EEF4F7',
+	'#242527',
+	'#35845D',
+	'#233252',
+), 'Medium' );
+// Dark
+add_color_palette( array(
+	'#1F2527',
+	'#FFFFFF',
+	'#9FD3E8',
+	'#FBE6AA',
+), 'Dark' );

+ 203 - 0
alves/inc/wpcom-editor-colors.php

@@ -0,0 +1,203 @@
+<?php
+/*
+ * Custom Editor Colors: Varia
+ */
+
+// Background Color (White)
+// $config-global--color-background-default
+add_editor_color_rule( 'bg', '#ffffff', array(
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation > div > ul > li > .sub-menu', 'background-color' ),
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper .button,
+			#editor .editor-styles-wrapper .button.has-focus,
+			#editor .editor-styles-wrapper .button:focus,
+			#editor .editor-styles-wrapper .button:hover,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation .button,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation .button:focus,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation .button:hover,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation .has-focus.button,
+			#editor .editor-styles-wrapper .wp-block-a8c-blog-posts + .button,
+			#editor .editor-styles-wrapper .wp-block-a8c-blog-posts + .button:focus,
+			#editor .editor-styles-wrapper .wp-block-a8c-blog-posts + .button:hover,
+			#editor .editor-styles-wrapper .wp-block-a8c-blog-posts + .has-focus.button,
+			#editor .editor-styles-wrapper table.is-style-stripes tbody tr:nth-child(odd),
+			#editor .editor-styles-wrapper .wp-block-table.is-style-stripes tbody tr:nth-child(odd),
+			#editor .editor-styles-wrapper .wp-block-button .wp-block-button__link,
+			#editor .editor-styles-wrapper .wp-block-button .wp-block-button__link.has-focus,
+			#editor .editor-styles-wrapper .wp-block-button .wp-block-button__link:focus,
+			#editor .editor-styles-wrapper .wp-block-button .wp-block-button__link:hover,
+			#editor .editor-styles-wrapper .wp-block-pullquote.is-style-solid-color,
+			#editor .editor-styles-wrapper .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover-image-text,
+			#editor .editor-styles-wrapper .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover-text,
+			#editor .editor-styles-wrapper .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover__inner-container,
+			#editor .editor-styles-wrapper .wp-block-cover:not([class*="background-color"]) .wp-block-cover-image-text,
+			#editor .editor-styles-wrapper .wp-block-cover:not([class*="background-color"]) .wp-block-cover-text,
+			#editor .editor-styles-wrapper .wp-block-cover:not([class*="background-color"]) .wp-block-cover__inner-container,
+			#editor .editor-styles-wrapper .wp-block-cover.has-background-dim,
+			#editor .editor-styles-wrapper .wp-block-cover-image.has-background-dim', 'color' ),
+
+	/**
+	 * Utility Classes
+	 */
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper .has-primary-background-color,
+			#editor .editor-styles-wrapper .has-secondary-background-color,
+			#editor .editor-styles-wrapper .has-foreground-background-color,
+			#editor .editor-styles-wrapper .has-foreground-dark-background-color,
+			#editor .editor-styles-wrapper .has-foreground-light-background-color,
+			#editor .editor-styles-wrapper .has-background-color', 'color' ),
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper .has-background-background-color[class]', 'background-color' ),
+
+	// Text-color darkened
+	array( '#editor .editor-styles-wrapper .has-background-dark-color[class]', 'color', '-1'  ),
+
+	// Background-color darkened
+	array( '#editor .editor-styles-wrapper .has-background-dark-background-color[class]', 'background-color', '-1' ),
+
+	// Text-color lightened
+	array( '#editor .editor-styles-wrapper .has-background-light-color[class]', 'color', '+1'  ),
+
+	// Background-color lightened
+	array( '#editor .editor-styles-wrapper .has-background-light-background-color[class]', 'background-color', '+1' ),
+
+	/**
+	 * Clean up for nested items
+	 */
+	// Text-color
+	array( '#editor .editor-styles-wrapper .has-background:not(.has-background-background-color) .wp-block-quote .wp-block-quote__citation,
+			#editor .editor-styles-wrapper [class*="background-color"]:not(.has-background-background-color) .wp-block-quote .wp-block-quote__citation,
+			#editor .editor-styles-wrapper [style*="background-color"]:not(.has-background-background-color) .wp-block-quote .wp-block-quote__citation,
+			#editor .editor-styles-wrapper .wp-block-cover[style*="background-image"] .wp-block-quote .wp-block-quote__citation', 'color' ),
+	// Border-color
+	array( '#editor .editor-styles-wrapper .has-background:not(.has-background-background-color) .wp-block-quote,
+			#editor .editor-styles-wrapper [class*="background-color"]:not(.has-background-background-color) .wp-block-quote,
+			#editor .editor-styles-wrapper [style*="background-color"]:not(.has-background-background-color) .wp-block-quote,
+			#editor .editor-styles-wrapper .wp-block-cover[style*="background-image"] .wp-block-quote', 'border-color'),
+
+), __( 'Background Color' ) );
+
+// Link Color (Blue)
+// $config-global--color-primary-default
+add_editor_color_rule( 'link', '#3E7D98', array(
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper .button,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation .button,
+			#editor .editor-styles-wrapper .wp-block-a8c-blog-posts + .button,
+			#editor .editor-styles-wrapper .wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background),
+			#editor .editor-styles-wrapper .wp-block-pullquote.is-style-solid-color', 'background-color' ),
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper .is-style-outline .wp-block-button__link:not(.has-text-color),
+			#editor .editor-styles-wrapper .wp-block-button__link.is-style-outline:not(.has-text-color),
+			#editor .editor-styles-wrapper .wp-block-a8c-blog-posts .entry-title a,
+			#editor .editor-styles-wrapper .wp-block-separator.is-style-dots:before,
+			#editor .editor-styles-wrapper a,
+			#editor .editor-styles-wrapper hr.is-style-dots:before', 'color' ),
+
+	// Border color top
+	array( '#editor .editor-styles-wrapper .wp-block-pullquote', 'border-top-color' ),
+
+	// Border color bottom
+	array( '#editor .editor-styles-wrapper .wp-block-pullquote,
+			#editor .editor-styles-wrapper .wp-block-separator,
+			#editor .editor-styles-wrapper hr', 'border-bottom-color' ),
+
+	// Border color left
+	array( '#editor .editor-styles-wrapper .wp-block-quote', 'border-left-color' ),
+
+	// Border color right
+	array( '#editor .editor-styles-wrapper .wp-block-separator[style*="text-align: right"],
+			#editor .editor-styles-wrapper .wp-block-separator[style*="text-align:right"],
+			#editor .editor-styles-wrapper hr[style*="text-align: right"],
+			#editor .editor-styles-wrapper hr[style*="text-align:right"]', 'border-right-color' ),
+
+	/**
+	 * Utility Classes
+	 */
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper .has-primary-background-color[class]', 'background-color' ),
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper .has-primary-color[class]', 'color' ),
+
+), __( 'Link Color' ) );
+
+// Text Color (Gray)
+// $config-global--color-foreground-default
+add_editor_color_rule( 'txt', '#394d55', array(
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper,
+			#editor .editor-styles-wrapper .editor-post-title__block .editor-post-title__input,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation a,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation a:link,
+			#editor .editor-styles-wrapper .fse-template-part .main-navigation a:visited,
+			#editor .editor-styles-wrapper .has-foreground-color[class],
+			#editor .editor-styles-wrapper .wp-block-pullquote,
+			#editor .editor-styles-wrapper .wp-block-quote .wp-block-quote__citation,
+			#editor .editor-styles-wrapper .wp-block-pullquote:not(.is-style-solid-color) .wp-block-pullquote__citation,
+			#editor .editor-styles-wrapper .wp-block-button__link.is-style-outline:hover,
+			#editor .editor-styles-wrapper .wp-block-button__link.is-style-outline:focus,
+			#editor .editor-styles-wrapper .wp-block-button__link.is-style-outline.has-focus,
+			#editor .editor-styles-wrapper .is-style-outline .wp-block-button__link:hover,
+			#editor .editor-styles-wrapper .is-style-outline .wp-block-button__link:focus,
+			#editor .editor-styles-wrapper .is-style-outline .wp-block-button__link.has-focus', 'color' ),
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper .wp-block-cover.has-background-dim,
+			#editor .editor-styles-wrapper .wp-block-cover-image.has-background-dim,
+			#editor .editor-styles-wrapper table.is-style-stripes tbody tr:nth-child(odd),
+			#editor .editor-styles-wrapper .wp-block-table.is-style-stripes tbody tr:nth-child(odd)', 'background-color' ),
+
+	/**
+	 * Utility Classes
+	 */
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper .has-background-background-color[class],
+			#editor .editor-styles-wrapper .has-background-dark-background-color[class],
+			#editor .editor-styles-wrapper .has-background-light-background-color[class],
+			#editor .editor-styles-wrapper .has-foreground-color[class]', 'color' ),
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper .has-foreground-background-color[class]', 'background-color' ),
+
+	// Text-color darkened
+	array( '#editor .editor-styles-wrapper .has-foreground-dark-color[class]', 'color', '-1' ),
+
+	// Background-color darkened
+	array( '#editor .editor-styles-wrapper .has-foreground-dark-background-color[class]', 'background-color', '-1' ),
+
+	// Text-color brightened
+	array( '#editor .editor-styles-wrapper .has-foreground-light-color[class]', 'color', '+2' ),
+
+	// Background-color brightened
+	array( '#editor .editor-styles-wrapper .has-foreground-light-background-color[class]', 'background-color', '+2' ),
+
+), __( 'Text Color' ) );
+
+// Accent Color (Red)
+// $config-global--color-secondary-default
+add_editor_color_rule( 'fg1', '#9B6A36', array(
+
+	/**
+	 * Utility Classes
+	 */
+
+	// Text-color
+	array( '#editor .editor-styles-wrapper .has-secondary-color[class]', 'color' ),
+
+	// Background-color
+	array( '#editor .editor-styles-wrapper .has-secondary-background-color[class]', 'background-color' ),
+
+), __( 'Secondary Color' ) );

+ 29 - 0
alves/inc/wpcom.php

@@ -0,0 +1,29 @@
+<?php
+/**
+ * WordPress.com-specific functions and definitions.
+ *
+ * This file is centrally included from `wp-content/mu-plugins/wpcom-theme-compat.php`.
+ *
+ * @package Alves
+ */
+
+/**
+ * Adds support for wp.com-specific theme functions.
+ *
+ * @global array $themecolors
+ */
+function alves_wpcom_setup() {
+	global $themecolors;
+
+	// Set theme colors for third party services.
+	if ( ! isset( $themecolors ) ) {
+		$themecolors = array(
+			'bg'     => 'ffffff', // $config-global--color-background-default
+			'border' => '3E7D98', // $config-global--color-border-default
+			'text'   => '394d55', // $config-global--color-foreground-default
+			'link'   => '3E7D98', // $config-global--color-primary-default
+			'url'    => '3E7D98', // $config-global--color-primary-default
+		);
+	}
+}
+add_action( 'after_setup_theme', 'alves_wpcom_setup' );

+ 63 - 47
alves/style-editor.css

@@ -544,7 +544,6 @@ object {
 
 .wp-block-button__link.is-style-outline,
 .is-style-outline .wp-block-button__link {
-	color: #3E7D98;
 	background: transparent;
 	border: 2px solid currentcolor;
 }
@@ -554,6 +553,7 @@ object {
 .is-style-outline .wp-block-button__link:focus,
 .is-style-outline .wp-block-button__link.has-focus {
 	color: #2f5f74;
+	background: transparent;
 }
 
 .wp-block-button__link.is-style-squared,
@@ -596,6 +596,12 @@ object {
 	/* Treating H2 separately to account for legacy /core styles */
 }
 
+.wp-block-cover.has-background-dim,
+.wp-block-cover-image.has-background-dim {
+	background-color: black;
+	color: white;
+}
+
 .wp-block-cover .wp-block-cover__inner-container,
 .wp-block-cover .wp-block-cover-image-text,
 .wp-block-cover .wp-block-cover-text,
@@ -1015,6 +1021,12 @@ table th,
 	padding: calc( 0.5 * 16px);
 }
 
+table.is-style-stripes tbody tr:nth-child(odd),
+.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
+	background-color: #fcfbf9;
+	color: #394d55;
+}
+
 /**
  * Editor Post Title
  * - Needs a special styles
@@ -1029,86 +1041,90 @@ table th,
 	line-height: 1.125;
 }
 
-.has-primary-color[class] {
-	color: #3E7D98 !important;
+.wp-block .has-primary-color,
+.has-primary-color {
+	color: #3E7D98;
 }
 
-.has-secondary-color[class] {
-	color: #9B6A36 !important;
+.wp-block .has-secondary-color,
+.has-secondary-color {
+	color: #9B6A36;
 }
 
-.has-foreground-color[class] {
-	color: #394d55 !important;
+.wp-block .has-foreground-color,
+.has-foreground-color {
+	color: #394d55;
 }
 
-.has-foreground-light-color[class] {
-	color: #4d6974 !important;
+.wp-block .has-foreground-light-color,
+.has-foreground-light-color {
+	color: #4d6974;
 }
 
-.has-foreground-dark-color[class] {
-	color: #253136 !important;
+.wp-block .has-foreground-dark-color,
+.has-foreground-dark-color {
+	color: #253136;
 }
 
-.has-background-light-color[class] {
-	color: #fafafa !important;
+.wp-block .has-background-light-color,
+.has-background-light-color {
+	color: #fafafa;
 }
 
-.has-background-dark-color[class] {
-	color: #d9d9d9 !important;
+.wp-block .has-background-dark-color,
+.has-background-dark-color {
+	color: #d9d9d9;
 }
 
-.has-background-color[class] {
-	color: #ffffff !important;
+.wp-block .has-background-color,
+.has-background-color {
+	color: #ffffff;
 }
 
-.has-background:not(.has-background-background-color) a,
+.has-background:not(.has-background-background-color) a:not(.wp-block-button__link),
+.has-background a:not(.wp-block-button__link),
 .has-background p, .has-background h1, .has-background h2, .has-background h3, .has-background h4, .has-background h5, .has-background h6 {
 	color: currentColor;
 }
 
-.has-primary-background-color[class] {
-	background-color: #3E7D98 !important;
-	color: #ffffff;
+.wp-block .has-primary-background-color,
+.has-primary-background-color {
+	background-color: #3E7D98;
 }
 
-.has-primary-background-color[class] {
-	background-color: #3E7D98 !important;
-	color: #ffffff;
+.wp-block .has-secondary-background-color,
+.has-secondary-background-color {
+	background-color: #9B6A36;
 }
 
-.has-secondary-background-color[class] {
-	background-color: #9B6A36 !important;
-	color: #ffffff;
+.wp-block .has-foreground-background-color,
+.has-foreground-background-color {
+	background-color: #394d55;
 }
 
-.has-foreground-background-color[class] {
-	background-color: #394d55 !important;
-	color: #ffffff;
+.wp-block .has-foreground-light-background-color,
+.has-foreground-light-background-color {
+	background-color: #4d6974;
 }
 
-.has-foreground-light-background-color[class] {
-	background-color: #4d6974 !important;
-	color: #ffffff;
+.wp-block .has-foreground-dark-background-color,
+.has-foreground-dark-background-color {
+	background-color: #253136;
 }
 
-.has-foreground-dark-background-color[class] {
-	background-color: #253136 !important;
-	color: #ffffff;
+.wp-block .has-background-light-background-color,
+.has-background-light-background-color {
+	background-color: #fafafa;
 }
 
-.has-background-light-background-color[class] {
-	background-color: #fafafa !important;
-	color: #394d55;
-}
-
-.has-background-dark-background-color[class] {
-	background-color: #d9d9d9 !important;
-	color: #394d55;
+.wp-block .has-background-dark-background-color,
+.has-background-dark-background-color {
+	background-color: #d9d9d9;
 }
 
-.has-background-background-color[class] {
-	background-color: #ffffff !important;
-	color: #394d55;
+.wp-block .has-background-background-color,
+.has-background-background-color {
+	background-color: #ffffff;
 }
 
 .is-small-text,

+ 84 - 59
alves/style-rtl.css

@@ -1401,12 +1401,21 @@ button[data-load-more-btn], .button {
  */
 .wp-block-button.is-style-outline.wp-block-button__link,
 .wp-block-button.is-style-outline .wp-block-button__link {
-	color: #3E7D98;
-	background: transparent;
+	color: inherit;
 	border: 2px solid currentcolor;
 	padding: 14px 48px;
 }
 
+.wp-block-button.is-style-outline.wp-block-button__link:not(.has-background-color),
+.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background-color) {
+	background: transparent;
+}
+
+.wp-block-button.is-style-outline.wp-block-button__link:not(.has-text-color),
+.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
+	color: #3E7D98;
+}
+
 .wp-block-button.is-style-outline.wp-block-button__link:active,
 .wp-block-button.is-style-outline .wp-block-button__link:active {
 	color: #3E7D98;
@@ -1501,13 +1510,18 @@ button[data-load-more-btn], .button {
 	min-height: calc( 17 * 32px);
 	margin-top: inherit;
 	margin-bottom: inherit;
-	/* default & custom background-color */
 	/* Treating H2 separately to account for legacy /core styles */
 	/**
 	 * Block Options
 	 */
 }
 
+.wp-block-cover.has-background-dim,
+.wp-block-cover-image.has-background-dim {
+	background-color: black;
+	color: white;
+}
+
 .wp-block-cover .wp-block-cover__inner-container,
 .wp-block-cover .wp-block-cover-image-text,
 .wp-block-cover .wp-block-cover-text,
@@ -1519,24 +1533,21 @@ button[data-load-more-btn], .button {
 	margin-bottom: 32px;
 }
 
-.wp-block-cover .wp-block-cover__inner-container a,
-.wp-block-cover .wp-block-cover-image-text a,
-.wp-block-cover .wp-block-cover-text a,
-.wp-block-cover-image .wp-block-cover__inner-container a,
-.wp-block-cover-image .wp-block-cover-image-text a,
-.wp-block-cover-image .wp-block-cover-text a {
+.wp-block-cover .wp-block-cover__inner-container a:not(.wp-block-button__link),
+.wp-block-cover .wp-block-cover__inner-container a.wp-block-button__link:hover,
+.wp-block-cover .wp-block-cover-image-text a:not(.wp-block-button__link),
+.wp-block-cover .wp-block-cover-image-text a.wp-block-button__link:hover,
+.wp-block-cover .wp-block-cover-text a:not(.wp-block-button__link),
+.wp-block-cover .wp-block-cover-text a.wp-block-button__link:hover,
+.wp-block-cover-image .wp-block-cover__inner-container a:not(.wp-block-button__link),
+.wp-block-cover-image .wp-block-cover__inner-container a.wp-block-button__link:hover,
+.wp-block-cover-image .wp-block-cover-image-text a:not(.wp-block-button__link),
+.wp-block-cover-image .wp-block-cover-image-text a.wp-block-button__link:hover,
+.wp-block-cover-image .wp-block-cover-text a:not(.wp-block-button__link),
+.wp-block-cover-image .wp-block-cover-text a.wp-block-button__link:hover {
 	color: currentColor;
 }
 
-.wp-block-cover:not([class*='background-color']) .wp-block-cover__inner-container,
-.wp-block-cover:not([class*='background-color']) .wp-block-cover-image-text,
-.wp-block-cover:not([class*='background-color']) .wp-block-cover-text,
-.wp-block-cover-image:not([class*='background-color']) .wp-block-cover__inner-container,
-.wp-block-cover-image:not([class*='background-color']) .wp-block-cover-image-text,
-.wp-block-cover-image:not([class*='background-color']) .wp-block-cover-text {
-	color: white;
-}
-
 .wp-block-cover h2,
 .wp-block-cover-image h2 {
 	font-size: 2.592rem;
@@ -2249,6 +2260,10 @@ hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
 	max-width: 96px;
 }
 
+hr.wp-block-separator.is-style-wide {
+	border-bottom-width: 2px;
+}
+
 hr.wp-block-separator.is-style-dots.has-background, hr.wp-block-separator.is-style-dots.has-text-color {
 	background-color: transparent !important;
 }
@@ -2315,6 +2330,12 @@ table th,
 	word-break: break-all;
 }
 
+table.is-style-stripes tbody tr:nth-child(odd),
+.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
+	background-color: #fcfbf9;
+	color: #394d55;
+}
+
 .wp-block-video figcaption {
 	color: #4d6974;
 	font-size: 0.86806rem;
@@ -2397,81 +2418,84 @@ table th,
 	background-attachment: fixed;
 }
 
-.has-primary-color[class] {
-	color: #3E7D98 !important;
+.has-primary-color {
+	color: #3E7D98;
 }
 
-.has-secondary-color[class] {
-	color: #9B6A36 !important;
+.has-secondary-color {
+	color: #9B6A36;
 }
 
-.has-foreground-color[class] {
-	color: #394d55 !important;
+.has-foreground-color {
+	color: #394d55;
 }
 
-.has-foreground-light-color[class] {
-	color: #4d6974 !important;
+.has-foreground-light-color {
+	color: #4d6974;
 }
 
-.has-foreground-dark-color[class] {
-	color: #253136 !important;
+.has-foreground-dark-color {
+	color: #253136;
 }
 
-.has-background-light-color[class] {
-	color: #fafafa !important;
+.has-background-light-color {
+	color: #fafafa;
 }
 
-.has-background-dark-color[class] {
-	color: #d9d9d9 !important;
+.has-background-dark-color {
+	color: #d9d9d9;
 }
 
-.has-background-color[class] {
-	color: #ffffff !important;
+.has-background-dim,
+.has-background-color {
+	color: #ffffff;
 }
 
-.has-background:not(.has-background-background-color) a,
+.has-background:not(.has-background-background-color) a:not(.wp-block-button__link),
+.has-background a:not(.wp-block-button__link),
 .has-background p, .has-background h1, .has-background h2, .has-background h3, .has-background h4, .has-background h5, .has-background h6 {
 	color: currentColor;
 }
 
-.has-primary-background-color[class] {
-	background-color: #3E7D98 !important;
-	color: #ffffff;
+.has-primary-background-color,
+.has-primary-background-color.has-background-dim {
+	background-color: #3E7D98;
 }
 
-.has-secondary-background-color[class] {
-	background-color: #9B6A36 !important;
-	color: #ffffff;
+.has-secondary-background-color,
+.has-secondary-background-color.has-background-dim {
+	background-color: #9B6A36;
 }
 
-.has-foreground-background-color[class] {
-	background-color: #394d55 !important;
-	color: #ffffff;
+.has-background-dim,
+.has-foreground-background-color,
+.has-foreground-background-color.has-background-dim {
+	background-color: #394d55;
 }
 
-.has-foreground-light-background-color[class] {
-	background-color: #4d6974 !important;
-	color: #ffffff;
+.has-foreground-light-background-color,
+.has-foreground-light-background-color.has-background-dim {
+	background-color: #4d6974;
 }
 
-.has-foreground-dark-background-color[class] {
-	background-color: #253136 !important;
-	color: #ffffff;
+.has-foreground-dark-background-color,
+.has-foreground-dark-background-color.has-background-dim {
+	background-color: #253136;
 }
 
-.has-background-light-background-color[class] {
-	background-color: #fafafa !important;
-	color: #394d55;
+.has-background-light-background-color,
+.has-background-light-background-color.has-background-dim {
+	background-color: #fafafa;
 }
 
-.has-background-dark-background-color[class] {
-	background-color: #d9d9d9 !important;
-	color: #394d55;
+.has-background-dark-background-color,
+.has-background-dark-background-color.has-background-dim {
+	background-color: #d9d9d9;
 }
 
-.has-background-background-color[class] {
-	background-color: #ffffff !important;
-	color: #394d55;
+.has-background-background-color,
+.has-background-background-color.has-background-dim {
+	background-color: #ffffff;
 }
 
 .is-small-text,
@@ -3205,6 +3229,7 @@ body:not(.fse-enabled) .footer-menu a {
 .pagination .nav-links .svg-icon {
 	display: inline-block;
 	vertical-align: middle;
+	fill: currentColor;
 }
 
 @media only screen and (min-width: 560px) {

+ 84 - 59
alves/style.css

@@ -1401,12 +1401,21 @@ button[data-load-more-btn], .button {
  */
 .wp-block-button.is-style-outline.wp-block-button__link,
 .wp-block-button.is-style-outline .wp-block-button__link {
-	color: #3E7D98;
-	background: transparent;
+	color: inherit;
 	border: 2px solid currentcolor;
 	padding: 14px 48px;
 }
 
+.wp-block-button.is-style-outline.wp-block-button__link:not(.has-background-color),
+.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background-color) {
+	background: transparent;
+}
+
+.wp-block-button.is-style-outline.wp-block-button__link:not(.has-text-color),
+.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
+	color: #3E7D98;
+}
+
 .wp-block-button.is-style-outline.wp-block-button__link:active,
 .wp-block-button.is-style-outline .wp-block-button__link:active {
 	color: #3E7D98;
@@ -1501,13 +1510,18 @@ button[data-load-more-btn], .button {
 	min-height: calc( 17 * 32px);
 	margin-top: inherit;
 	margin-bottom: inherit;
-	/* default & custom background-color */
 	/* Treating H2 separately to account for legacy /core styles */
 	/**
 	 * Block Options
 	 */
 }
 
+.wp-block-cover.has-background-dim,
+.wp-block-cover-image.has-background-dim {
+	background-color: black;
+	color: white;
+}
+
 .wp-block-cover .wp-block-cover__inner-container,
 .wp-block-cover .wp-block-cover-image-text,
 .wp-block-cover .wp-block-cover-text,
@@ -1519,24 +1533,21 @@ button[data-load-more-btn], .button {
 	margin-bottom: 32px;
 }
 
-.wp-block-cover .wp-block-cover__inner-container a,
-.wp-block-cover .wp-block-cover-image-text a,
-.wp-block-cover .wp-block-cover-text a,
-.wp-block-cover-image .wp-block-cover__inner-container a,
-.wp-block-cover-image .wp-block-cover-image-text a,
-.wp-block-cover-image .wp-block-cover-text a {
+.wp-block-cover .wp-block-cover__inner-container a:not(.wp-block-button__link),
+.wp-block-cover .wp-block-cover__inner-container a.wp-block-button__link:hover,
+.wp-block-cover .wp-block-cover-image-text a:not(.wp-block-button__link),
+.wp-block-cover .wp-block-cover-image-text a.wp-block-button__link:hover,
+.wp-block-cover .wp-block-cover-text a:not(.wp-block-button__link),
+.wp-block-cover .wp-block-cover-text a.wp-block-button__link:hover,
+.wp-block-cover-image .wp-block-cover__inner-container a:not(.wp-block-button__link),
+.wp-block-cover-image .wp-block-cover__inner-container a.wp-block-button__link:hover,
+.wp-block-cover-image .wp-block-cover-image-text a:not(.wp-block-button__link),
+.wp-block-cover-image .wp-block-cover-image-text a.wp-block-button__link:hover,
+.wp-block-cover-image .wp-block-cover-text a:not(.wp-block-button__link),
+.wp-block-cover-image .wp-block-cover-text a.wp-block-button__link:hover {
 	color: currentColor;
 }
 
-.wp-block-cover:not([class*='background-color']) .wp-block-cover__inner-container,
-.wp-block-cover:not([class*='background-color']) .wp-block-cover-image-text,
-.wp-block-cover:not([class*='background-color']) .wp-block-cover-text,
-.wp-block-cover-image:not([class*='background-color']) .wp-block-cover__inner-container,
-.wp-block-cover-image:not([class*='background-color']) .wp-block-cover-image-text,
-.wp-block-cover-image:not([class*='background-color']) .wp-block-cover-text {
-	color: white;
-}
-
 .wp-block-cover h2,
 .wp-block-cover-image h2 {
 	font-size: 2.592rem;
@@ -2249,6 +2260,10 @@ hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
 	max-width: 96px;
 }
 
+hr.wp-block-separator.is-style-wide {
+	border-bottom-width: 2px;
+}
+
 hr.wp-block-separator.is-style-dots.has-background, hr.wp-block-separator.is-style-dots.has-text-color {
 	background-color: transparent !important;
 }
@@ -2315,6 +2330,12 @@ table th,
 	word-break: break-all;
 }
 
+table.is-style-stripes tbody tr:nth-child(odd),
+.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
+	background-color: #fcfbf9;
+	color: #394d55;
+}
+
 .wp-block-video figcaption {
 	color: #4d6974;
 	font-size: 0.86806rem;
@@ -2402,81 +2423,84 @@ table th,
 	background-attachment: fixed;
 }
 
-.has-primary-color[class] {
-	color: #3E7D98 !important;
+.has-primary-color {
+	color: #3E7D98;
 }
 
-.has-secondary-color[class] {
-	color: #9B6A36 !important;
+.has-secondary-color {
+	color: #9B6A36;
 }
 
-.has-foreground-color[class] {
-	color: #394d55 !important;
+.has-foreground-color {
+	color: #394d55;
 }
 
-.has-foreground-light-color[class] {
-	color: #4d6974 !important;
+.has-foreground-light-color {
+	color: #4d6974;
 }
 
-.has-foreground-dark-color[class] {
-	color: #253136 !important;
+.has-foreground-dark-color {
+	color: #253136;
 }
 
-.has-background-light-color[class] {
-	color: #fafafa !important;
+.has-background-light-color {
+	color: #fafafa;
 }
 
-.has-background-dark-color[class] {
-	color: #d9d9d9 !important;
+.has-background-dark-color {
+	color: #d9d9d9;
 }
 
-.has-background-color[class] {
-	color: #ffffff !important;
+.has-background-dim,
+.has-background-color {
+	color: #ffffff;
 }
 
-.has-background:not(.has-background-background-color) a,
+.has-background:not(.has-background-background-color) a:not(.wp-block-button__link),
+.has-background a:not(.wp-block-button__link),
 .has-background p, .has-background h1, .has-background h2, .has-background h3, .has-background h4, .has-background h5, .has-background h6 {
 	color: currentColor;
 }
 
-.has-primary-background-color[class] {
-	background-color: #3E7D98 !important;
-	color: #ffffff;
+.has-primary-background-color,
+.has-primary-background-color.has-background-dim {
+	background-color: #3E7D98;
 }
 
-.has-secondary-background-color[class] {
-	background-color: #9B6A36 !important;
-	color: #ffffff;
+.has-secondary-background-color,
+.has-secondary-background-color.has-background-dim {
+	background-color: #9B6A36;
 }
 
-.has-foreground-background-color[class] {
-	background-color: #394d55 !important;
-	color: #ffffff;
+.has-background-dim,
+.has-foreground-background-color,
+.has-foreground-background-color.has-background-dim {
+	background-color: #394d55;
 }
 
-.has-foreground-light-background-color[class] {
-	background-color: #4d6974 !important;
-	color: #ffffff;
+.has-foreground-light-background-color,
+.has-foreground-light-background-color.has-background-dim {
+	background-color: #4d6974;
 }
 
-.has-foreground-dark-background-color[class] {
-	background-color: #253136 !important;
-	color: #ffffff;
+.has-foreground-dark-background-color,
+.has-foreground-dark-background-color.has-background-dim {
+	background-color: #253136;
 }
 
-.has-background-light-background-color[class] {
-	background-color: #fafafa !important;
-	color: #394d55;
+.has-background-light-background-color,
+.has-background-light-background-color.has-background-dim {
+	background-color: #fafafa;
 }
 
-.has-background-dark-background-color[class] {
-	background-color: #d9d9d9 !important;
-	color: #394d55;
+.has-background-dark-background-color,
+.has-background-dark-background-color.has-background-dim {
+	background-color: #d9d9d9;
 }
 
-.has-background-background-color[class] {
-	background-color: #ffffff !important;
-	color: #394d55;
+.has-background-background-color,
+.has-background-background-color.has-background-dim {
+	background-color: #ffffff;
 }
 
 .is-small-text,
@@ -3222,6 +3246,7 @@ body:not(.fse-enabled) .footer-menu a {
 .pagination .nav-links .svg-icon {
 	display: inline-block;
 	vertical-align: middle;
+	fill: currentColor;
 }
 
 @media only screen and (min-width: 560px) {