/* Opt-in DS 0.8.0 presentation; native Core markup and behavior stay intact. */
.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) { min-width: 0; max-width: 100%; }
.ya-button,
.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link {
	--ya-button-background: var(--wp--custom--color--button-primary-background);
	--ya-button-hover: var(--wp--custom--color--button-primary-background-hover);
	--ya-button-color: var(--wp--custom--color--text-primary);
	--ya-button-border: transparent;
	--ya-button-border-hover: transparent;
	--ya-button-size: 56px;
	--ya-button-icon-size: 24px;
	--ya-button-padding: 24px;
	--ya-button-gap: var(--ya-spacing-12);
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ya-button-gap);
	min-height: var(--ya-button-size);
	max-width: 100%;
	padding: var(--ya-spacing-04) var(--ya-button-padding);
	border: 2px solid var(--ya-button-border);
	border-radius: var(--wp--custom--button--radius-full);
	appearance: none;
	background: var(--ya-button-background);
	color: var(--ya-button-color);
	font-family: var(--wp--preset--font-family--figtree);
	font-size: var(--wp--preset--font-size--label-lg);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	overflow-wrap: anywhere;
	cursor: pointer;
	transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.ya-button.ya-button--secondary,
.wp-block-button.is-style-ya-secondary > .wp-block-button__link {
	--ya-button-background: var(--wp--custom--color--button-secondary-background);
	--ya-button-hover: var(--wp--custom--color--button-secondary-background-hover);
	--ya-button-color: var(--wp--custom--color--text-inverse);
}

.ya-button.ya-button--tertiary,
.wp-block-button.is-style-ya-tertiary > .wp-block-button__link {
	--ya-button-background: var(--wp--custom--color--button-tertiary-background);
	--ya-button-hover: var(--wp--custom--color--button-tertiary-background);
	--ya-button-border: var(--wp--custom--color--button-tertiary-border);
	--ya-button-border-hover: var(--wp--custom--color--button-tertiary-border-hover);
}

.ya-button.ya-button--text,
.wp-block-button.is-style-ya-text > .wp-block-button__link {
	--ya-button-background: transparent;
	--ya-button-hover: var(--wp--custom--color--background-hover);
	--ya-button-color: var(--wp--custom--color--link-primary);
}

.ya-button.ya-button--medium,
.wp-block-button.ya-button--medium > .wp-block-button__link {
	--ya-button-size: 44px;
	--ya-button-icon-size: 20px;
	--ya-button-padding: 16px;
	--ya-button-gap: var(--ya-spacing-10);
	font-size: var(--wp--preset--font-size--label-md);
}

.ya-button:has(> .ya-button__icon:first-child) { padding-inline-start: 16px; }
.ya-button:has(> .ya-button__icon:last-child) { padding-inline-end: 16px; }
.ya-button.ya-button--tertiary:not(.ya-button--medium):has(> .ya-button__icon:first-child) { padding-inline: 12px 16px; }

.ya-button__icon {
	display: inline-flex;
	flex: 0 0 var(--ya-button-icon-size);
	width: var(--ya-button-icon-size);
	height: var(--ya-button-icon-size);
}
.ya-button__icon svg { width: 100%; height: 100%; }
.ya-button__label { min-width: 0; }
.ya-button.ya-button--icon-only { width: var(--ya-button-size); padding: 0; }

.ya-button:disabled {
	--ya-button-background: var(--wp--custom--color--button-disabled-background);
	--ya-button-color: var(--wp--custom--color--text-disabled);
	cursor: not-allowed;
}
.ya-button.ya-button--tertiary:disabled { --ya-button-border: var(--wp--custom--color--button-disabled-background); }

@media (hover: hover) and (pointer: fine) {
	.ya-button:hover:not(:disabled):not(:focus-visible),
	.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link:hover:not(:focus-visible) {
		background: var(--ya-button-hover);
		border-color: var(--ya-button-border-hover);
		color: var(--ya-button-color);
		text-decoration: none;
	}
}

.ya-button:focus-visible,
.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link:focus-visible {
	outline: var(--wp--custom--focus--width) solid var(--ya-button-focus, var(--wp--custom--color--focus-border));
	outline-offset: 2px;
}
.ya-button-focus--base { --ya-button-focus: var(--wp--custom--color--focus-border); }
.ya-button-focus--gray,
.ya-button-focus--blue { --ya-button-focus: var(--wp--custom--color--focus-border-inverse); }
.ya-button-focus--yellow { --ya-button-focus: var(--wp--custom--color--text-primary); }

@media (prefers-reduced-motion: reduce) {
	.ya-button,
	.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link { transition: none; }
}
[data-reduced-motion="true"] .ya-button,
[data-reduced-motion="true"] .wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link { transition: none; }

@media (forced-colors: active) {
	.ya-button,
	.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link { border-color: ButtonText; }
	.ya-button:disabled { color: GrayText; border-color: GrayText; }
	.ya-button:focus-visible,
	.wp-block-button:is(.is-style-ya-primary, .is-style-ya-secondary, .is-style-ya-tertiary, .is-style-ya-text) > .wp-block-button__link:focus-visible { outline-color: Highlight; }
}
