@import "2.mixins/mixins";
@import "1.global/global";
@import "4.plugins/plugins";
@import "./2.mixins/rfs";


// This variable is repeated across Button, Buttons, and Buttons editor styles.
$blocks-block__margin: 0.5em;

// Prefer the link selector instead of the regular button classname
// to support the previous markup in addition to the new one.
.wp-block-button__link {
	cursor: pointer;
	display: inline-block;
	text-align: center;
	word-break: break-word; // overflow-wrap doesn't work well if a link is wrapped in the div, so use word-break here.
	box-sizing: border-box;

	&.aligncenter {
		text-align: center;
	}

	&.alignright {
		/*rtl:ignore*/
		text-align: right;
	}
}

// These rules are set to zero specificity to keep the default styles for buttons.
// They are needed for backwards compatibility.
:where(.wp-block-button__link) {
	// This needs a low specificity so it won't override the rules from the button element if defined in theme.json.
	box-shadow: none;
	text-decoration: none;

	// 100% causes an oval, but any explicit but really high value retains the pill shape.
	border-radius: 9999px;

	// The extra 2px are added to size solids the same as the outline versions.
	padding: calc(0.667em + 2px) calc(1.333em + 2px);
}

.wp-block-directorist-account-block-directorist-account-block[style*="text-decoration"] .wp-block-button__link {
	text-decoration: inherit;
}

// Increased specificity needed to override margins.
.wp-block-directorist-account-block-directorist-account-block {
	&.has-custom-width {
		max-width: none;
		.wp-block-button__link {
			width: 100%;
		}
	}

	&.has-custom-font-size {
		.wp-block-button__link {
			font-size: inherit;
		}
	}

	&.wp-block-button__width-25 {
		width: calc(25% - (var(--wp--style--block-gap, #{$blocks-block__margin}) * 0.75));
	}

	&.wp-block-button__width-50 {
		width: calc(50% - (var(--wp--style--block-gap, #{$blocks-block__margin}) * 0.5));
	}

	&.wp-block-button__width-75 {
		width: calc(75% - (var(--wp--style--block-gap, #{$blocks-block__margin}) * 0.25));
	}

	&.wp-block-button__width-100 {
		width: 100%;
		flex-basis: 100%;
	}
}


// The follow block style selectors are required for old buttons markup
// and do not use the `:root :where()` format to match specificity at
// the time they were deprecated.
.wp-block-directorist-account-block-directorist-account-block.is-style-squared,
.wp-block-directorist-account-block-directorist-account-block__link.wp-block-directorist-account-block-directorist-account-block.is-style-squared {
	border-radius: 0;
}
.wp-block-directorist-account-block-directorist-account-block.no-border-radius,
.wp-block-button__link.no-border-radius {
	border-radius: 0 !important;
}

// Selectors here use the `:root :where()` format for maintaining compatibility
// with global styles and nested block style variations.
:root {
	// Outline Block Style Variation.
	:where(.wp-block-directorist-account-block-directorist-account-block.is-style-outline > .wp-block-button__link),
	:where(.wp-block-directorist-account-block-directorist-account-block .wp-block-button__link.is-style-outline) {
		border: 2px solid currentColor;
		padding: 0.667em 1.333em;
	}

	:where(.wp-block-directorist-account-block-directorist-account-block.is-style-outline > .wp-block-button__link:not(.has-text-color)),
	:where(.wp-block-directorist-account-block-directorist-account-block .wp-block-button__link.is-style-outline:not(.has-text-color)) {
		color: currentColor;
	}

	:where(.wp-block-directorist-account-block-directorist-account-block.is-style-outline > .wp-block-button__link:not(.has-background)),
	:where(.wp-block-directorist-account-block-directorist-account-block .wp-block-button__link.is-style-outline:not(.has-background)) {
		background-color: transparent;
		// background-image is required to overwrite a gradient background
		background-image: none;
	}
}