
@import "variables-site/variables-site";
@import "mixins/mixins-master";

/** === Editor Frame === */
@mixin gutenberg_styles(){

body {

	.wp-block[data-align="full"] {
		width: 100%;
	}

	@include media(mobile) {

		.wp-block[data-align="full"] {
			width: calc( 100% + 90px );
			max-width: calc( 100% + 90px );
		}
	}

	@include media(tablet) {

		.editor-writing-flow {
			max-width: 80%;
			margin: 0 10%;
		}

		.editor-post-title__block,
		.editor-default-block-appender,
		.editor-block-list__block {
			margin-left: 0;
			margin-right: 0;
		}

		.wp-block[data-align="wide"] {
			width: 100%;
		}

		.wp-block[data-align="full"] {
			position: relative;
			left: calc( -12.5% - 14px );
			width: calc( 125% + 116px );
			max-width: calc( 125% + 115px ); // Subtract 1px here to avoid the rounding errors that happen due to the usage of percentages.
		}

		.wp-block[data-align="right"] {
			max-width: 125%;
		}
	}
}

/** === Editor Block Toolbar Position === */

// Since 2019 left-aligns wide and fullwide blocks, left align the toolbar too.
.editor-block-list__block[data-align="wide"] .editor-block-contextual-toolbar .editor-block-toolbar.editor-block-toolbar,
.editor-block-list__block[data-align="full"] .editor-block-contextual-toolbar .editor-block-toolbar.editor-block-toolbar {
		max-width: none;
}

/** === Content Width === */

.wp-block {
	width: calc(100vw - (2 * #{$size__spacing-unit}));
	max-width: 100%;

	@include media(tablet) {
		width: calc(8 * (100vw / 12));
	}

	@include media(desktop) {
		width: calc(8 * (100vw / 12 ));
	}

	// Only the top level blocks need specific widths, therefore override for every nested block.
	.wp-block {
		width: 100%;
	}
}

/** === Base Typography === */

// Use white text against these backgrounds by default.
.has-primary-background-color,
.has-secondary-background-color,
.has-dark-gray-background-color,
.has-light-gray-background-color {
	color: $color__background-body;

	p,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	a {
		color: $color__background-body;
	}
}

// Use dark gray text against this background by default.
.has-white-background-color {
	color: $color__text-main;

	p,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	a {
		color: $color__text-main;
	}
}

figcaption,
.gallery-caption {
	font-family: $font__heading;
	font-size: $font__size-xs;
	line-height: 1.6;
	color: $color__text-light;
}

/** === Post Title === */

.editor-post-title__block {
	@include post-section-dash;

	&:before {
		width: $font__size-xxl;
		margin-top: 0;
		margin-bottom: 0;
		margin-left: 1em;
		position: relative;
		top: 0.5em;
	}

	.editor-post-title__input {
		font-family: $font__heading;
		font-size: $font__size-xxl;
		font-weight: 700;
	}
}

/** === Default Appender === */

.editor-default-block-appender .editor-default-block-appender__content {
	font-family: $font__body;
	font-size: $font__size_base;
}

/** === Heading === */

.wp-block-heading {
	strong {
		font-weight: bolder;
	}
}
/** === Paragraph === */

.wp-block-paragraph {

	&.has-drop-cap:not(:focus)::first-letter {
		font-family: $font__heading;
		font-size: $font__size-xxxl;
		line-height: 1;
		font-weight: bold;
		margin: 0 0.25em 0 0;
	}
}

/** === Table === */

.wp-block-table {
	font-family: $font__heading;
}

/** === Cover === */

.wp-block-cover {

	h2,
	.wp-block-cover-text {
		font-family: $font__heading;
		font-size: $font__size-lg;
		font-weight: bold;
		line-height: 1.4;
		padding-left: $size__spacing-unit;
		padding-right: $size__spacing-unit;

		strong {
			font-weight: bolder;
		}

		@include media(tablet) {
			margin-left: auto;
			margin-right: auto;
			padding: 0;
		}
	}

	@include media(tablet) {
		padding-left: 10%;
		padding-right: 10%;

		h2,
		.wp-block-cover-text {
			font-size: $font__size-xl;
		}
	}
}

.wp-block[data-type="core/cover"][data-align="left"],
.wp-block[data-type="core/cover"][data-align="right"] {

	.editor-block-list__block-edit {
		width: calc(2 * (100vw / 12));
	}

	.wp-block-cover {
		width: 100%;
		max-width: 100%;
	}

	@include media(tablet) {

		.wp-block-cover {
			padding: $size__spacing-unit;
		}
	}
}

.wp-block[data-type="core/cover"][data-align="wide"],
.wp-block[data-type="core/cover"][data-align="full"] {

	@include media(tablet) {

		h2,
		.wp-block-cover-text {
			max-width: calc(8 * (100vw / 12));
		}
	}

	@include media(desktop) {

		h2,
		.wp-block-cover-text {
			max-width: calc(6 * (100vw / 12));
		}
	}
}

.wp-block[data-type="core/cover"][data-align="full"] {

	@include media(tablet) {

		.wp-block-cover {
			padding-left: calc(10% + 64px);
			padding-right: calc(10% + 64px);
		}
	}
}

/** === Gallery === */

.wp-block-gallery {

	.blocks-gallery-image figcaption,
	.blocks-gallery-item figcaption,
	.gallery-item .gallery-caption {
		font-size: $font__size-xs;
		line-height: 1.6;
	}
}

/** === Button === */

.wp-block-button {
	display:block;
	margin:0 0 $line_height_pad;

	.wp-block-button__link {
		line-height: 1.8;
		font-family: $font__heading;
		font-size: $font__size-sm;
		font-weight: bold;
	}

	&:not(.is-style-outline) .wp-block-button__link {
		background: $color__background-button;
	}

	&:not(.is-style-squared) .wp-block-button__link {
		border-radius: 5px;
	}

	&.is-style-outline,
	&.is-style-outline:hover,
	&.is-style-outline:focus,
	&.is-style-outline:active {
		background: transparent;
		color: $color__background-button;

		.wp-block-button__link {
			background: transparent;

			&:not(.has-text-color) {
				color: $color__background-button;
			}
		}
	}
}

/** === Blockquote === */

.wp-block-quote {

	&:not(.is-large):not(.is-style-large) {
		border-left: 2px solid $color__link;
	}
	p {
		font-family: $heading-font;
		font-size: 18px;
	}
	&.is-large,
	&.is-style-large {
		border-left: 4px solid #0073aa;
		margin-top: $font__size-xxl;
		margin-bottom: $font__size-xxl;

		cite,
		footer,
		.wp-block-quote__citation {
			font-size: 16px;
		}
	}

	&.is-large p,
	&.is-style-large p {
		font-size: $font__size-lg;
		line-height: 1.3;
		margin-bottom: 0.5em;
		margin-top: 0.5em;
	}

	cite,
	footer,
	.wp-block-quote__citation {
		font-family: $font__heading;
		font-size: $font__size-xs;
		line-height: 1.6;
		color: $color__text-light;
	}
}

/** === Pullquote === */

.wp-block-pullquote {
	padding: 2em 0;
	border-color: transparent;
	border-width: 2px;
	color: #000;
	p {
		font-family: $heading-font;
		font-size: $font__size-lg;
		line-height: $font__line-height-body;
	}
	blockquote {
		//margin-top: calc(3 * #{ $size__spacing-unit});
		//margin-bottom: calc(3.33 * #{ $size__spacing-unit});
		hyphens: auto;
		word-break: break-word;
		border-left-color: transparent;
	}

	&:not(.is-style-solid-color) .wp-block-pullquote__citation {
		color: $color__text-light;
	}

	&.is-style-solid-color {

		blockquote {
			width: calc(100% - (2 * #{ $size__spacing-unit}));
			max-width: calc( 100% - (2 * #{ $size__spacing-unit}));

			a,
			&.has-text-color p,
			&.has-text-color a {
				color: inherit;
			}

			&:not(.has-text-color) {
				color: $color__background-body;
			}

			@include media(tablet) {
				max-width: 80%;
			}
		}

		&:not(.has-background-color) {
			background-color: $color__link;
		}
	}

	cite,
	footer,
	.wp-block-quote__citation {
		color: $color__text-light;
		text-transform: uppercase;
		font-family: $font__heading;
		font-size: $font__size-xs;
		line-height: 1.6;
	}
	&.aligncenter,
	&.alignwide,
	&.alignfull {
		blockquote {
			padding: 30px;
			border-bottom: 3px solid #f1f1f1;
			border-left: none;
			border-top: 3px solid #f1f1f1;
		}
	}
	&.alignleft,
	&.alignright {
		padding: 0;
		blockquote {
			padding: 30px 0;
			border-left: none;
			border-bottom: 3px solid #f1f1f1;
			border-top: 3px solid #f1f1f1;
		}
		p {
			font-size: 1.4rem !important;
		}
	}
}

.wp-block[data-type="core/pullquote"],
.wp-block[data-type="core/pullquote"][data-align="left"],
.wp-block[data-type="core/pullquote"][data-align="right"] {

	blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before,
	blockquote > .editor-rich-text p,
	p {
		font-size: $font__size-lg;
		line-height: 1.3;
		margin-bottom: 0.5em;
		margin-top: 0.5em;

		@include media(tablet) {
			font-size: $font__size-lg;
			line-height: $font__line-height-body;
		}
	}

	.wp-block-pullquote__citation {
		font-family: $font__heading;
		font-size: $font__size-xs;
		line-height: 1.6;
		text-transform: uppercase;
	}

	em {
		font-style: normal;
	}
	&.alignleft,
	&.alignright {
		blockquote {
			margin: 0;
		}
		p {
			font-size: 1.4rem;
		}
	}
}
.block-library-list {
	.editor-rich-text__tinymce { 
		padding-left: 0;
		ol, ul {
			padding-left: 0;
		}
	}
}
.wp-block[data-type="core/pullquote"][data-align="left"],
.wp-block[data-type="core/pullquote"][data-align="right"] {

	.editor-block-list__block-edit {
		width: calc(4 * (100vw / 12));
		max-width: 50%;

		.wp-block-pullquote:not(.is-style-solid-color) {
			padding: 0;
		}

		.wp-block-pullquote.is-style-solid-color {
			padding: 1em;
		}
	}

	blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before,
	blockquote > .editor-rich-text p,
	p,
	.wp-block-pullquote__citation {
		text-align: left;
	}
}

.wp-block[data-type="core/pullquote"][data-align="full"] {

	@include media(tablet) {

		.wp-block-pullquote blockquote {
			max-width: calc(80% - 128px);
		}
	}
}


/** === File === */

.wp-block-file {
	font-family: $font__heading;

	.wp-block-file__textlink {
		text-decoration: underline;
		color: $color__link;

		&:hover {
			color: $color__link-hover;
			text-decoration: none;
		}
	}

	.wp-block-file__button {
		display: table;
		line-height: 1.8;
		font-size: $font__size-sm;
		font-weight: bold;
		background-color: $color__link;
		border-radius: 5px;
	}

	.wp-block-file__button-richtext-wrapper {
		display: block;
		margin-top: calc(0.75 * #{$size__spacing-unit});
		margin-left: 0;
	}

}

/** === Verse === */
.wp-block-preformatted,
.wp-block-verse,
.wp-block-verse pre {
	padding: 0;
	background: none;
	border: none;
	margin: 0 0 $line_height_pad;
}

/** === Code === */

.wp-block-code {
	border-radius: 0;
}

/** === Table === */

.wp-block-table {

	td, th {
		border-color: #e6e6e6;
	}
	&.is-style-stripes td {
		border-color: #e6e6e6;
	}
}

/** === Separator === */

.wp-block-separator {
	&,
	&.is-style-wide,
	&.is-style-dots {
		max-width:100%;
		min-height:1px;
		margin:($line_height_pad * 2.5) auto;
		position:relative;
		@include bd(0);
	}

	&:not(.is-style-dots) {
		border-bottom: 1px solid #dbdbdb;
	}

	&:not(.is-style-wide):not(.is-style-dots) {
		width: 400px;
		margin-left: auto;
	}

	&.is-style-dots:before {
		color: $color__text-light;
		font-size: $font__size-lg;
		letter-spacing: calc(2 * #{$size__spacing-unit});
		padding-left: calc(2 * #{$size__spacing-unit});
	}
}

/** === Latest Posts, Archives, Categories === */

ul.wp-block-archives,
.wp-block-categories,
.wp-block-latest-posts {
	padding: 0;
	margin-bottom:$line_height_pad;
	list-style-type: none;

	ul {
		padding: 0;
		list-style-type: none;
	}

	li {
		color: $color__text-light;
		font-family: $font__heading;
		font-size: calc(#{$font__size_base} * #{$font__size-ratio});
		font-weight: bold;
		line-height: $font__line-height-heading;
		padding-bottom: ( .75 * $size__spacing-unit );

		&.menu-item-has-children,
		&:last-child {
			padding-bottom: 0;
		}

		a {
			text-decoration: none;
		}

		ul {
			padding-left: $size__spacing-unit;
		}
	}
}

.wp-block-categories {

	ul {
		padding-top: ( .75 * $size__spacing-unit );
		@include nestedSubMenuPadding();
	}

	li ul {
		list-style: none;
		padding-left: 0;
		margin-bottom: ( -.75 * $size__spacing-unit );
	}

}

/** === Latest Posts grid view === */
.wp-block-latest-posts.is-grid {
		li {
			border-top: 2px solid $color__border;
			padding-top: (1 * $size__spacing-unit);
			margin-bottom: (1 * $size__spacing-unit);
			a {
				&:after {
					content: '';
				}
			}
			&:last-child {
				margin-bottom: auto;
				a:after {
					content: '';
				}
			}
		}
	}

/** === Latest Comments === */

.wp-block-latest-comments {

	.wp-block-latest-comments__comment-meta {
		font-family: $font__heading;
		font-weight: bold;

		.wp-block-latest-comments__comment-date {
			font-weight: normal;
		}
	}

	.wp-block-latest-comments__comment,
	.wp-block-latest-comments__comment-date,
	.wp-block-latest-comments__comment-excerpt p {
		font-size: inherit;
	}

	.wp-block-latest-comments__comment-date {
		font-size: $font__size-xs;
	}
}

/** === Classic Editor === */

/* Properly center-align captions in the classic-editor block */
.wp-caption {
	dd {
		color: $color__text-light;
 		font-size: $font__size-xs;
 		font-family: $font__heading;
 		line-height: $font__line-height-pre;
 		margin: 0;
 		padding: ( $size__spacing-unit * .5 );
 		text-align: left;
		text-align: center;
		-webkit-margin-start: 0px;
		margin-inline-start: 0px;
	}
}

.wp-block-freeform {

	/* Add style for galleries in classic-editor block */
	blockquote {
		border-left: 2px solid $color__link;

		cite {
			font-family: $font__heading;
			font-size: $font__size-xs;
			font-style: normal;
			line-height: 1.6;
			color: $color__text-light;
		}
	}
}

/* Make sure our non-latin font overrides don't overwrite the iconfont used in the classic editor toolbar */
.wp-block[data-type="core/freeform"] .mce-btn i {
	font-family: dashicons !important;
}
.alignleft {
	/*rtl:ignore*/
	float: left;
	/*rtl:ignore*/
	margin-right: $size__spacing-unit;

	@include media(tablet) {
		/*rtl:ignore*/
		margin-right: calc(2 * #{$size__spacing-unit});
	}
}

.alignright {
	/*rtl:ignore*/
	float: right;
	/*rtl:ignore*/
	margin-left: $size__spacing-unit;

	@include media(tablet) {
		/*rtl:ignore*/
		margin-left: calc(2 * #{$size__spacing-unit});
	}
}

.aligncenter {
	clear: both;
	@include center-block;
}


.alignleft, 
.fl {
	@include fl;
}

.alignright, 
.fr {
	@include fr;
}

.aligncenter {
	@include tac;
}

.aligncenter,
.alignnone {
	clear:both;
}
.wp-embed-responsive {
	.wp-block-embed.wp-embed-aspect-1-1, 
	.wp-block-embed.wp-embed-aspect-1-2, 
	.wp-block-embed.wp-embed-aspect-4-3, 
	.wp-block-embed.wp-embed-aspect-9-16, 
	.wp-block-embed.wp-embed-aspect-16-9, 
	.wp-block-embed.wp-embed-aspect-18-9, 
	.wp-block-embed.wp-embed-aspect-21-9 {
		.wp-block-embed__wrapper::before {
			padding-top: 0%;
		}
	}
}
.wp-block-embed-vimeo .wp-block-embed__wrapper {
	padding-bottom: 20px;
	margin-bottom: 20px;
}


/** === Image === */
.wp-block-image {
	&:not(.editor-media-placeholder) {
		line-height:0;
		display:block !important;
		margin:0 0 $line_height_pad;
		@include tac;
	}
	
	figure {
		margin:0 0 $line_height_pad;
	}
	
	figcaption {
		display:block !important;
		margin:0;
		padding:15px 0;
		@include tac;
	}
	
	div[style^="width:"],
	div[style*="width:"],
	.components-resizable-box__container {
		max-width:100% !important;
		height:auto !important;
		margin:0 auto;
	}
	
	.editor-rich-text {
		display:block !important;
	}
}
.wp-block-button .wp-block-button__link:not(.has-text-color):not(.has-background) {
	color: #fff !important;
	&:hover, &:active {
		color: #f1f1f1;
		background-color: #555;
	}
}
}//gutenberg_styles