/*
 * MHP button-token bridge
 *
 * Aliases every third-party plugin button selector (Fluent Forms, WooCommerce
 * legacy + Blocks, MC4WP, generic form submits) to the SAME tokens that Ollie's
 * theme.json defines for `styles.elements.button`. Source of truth stays in
 * theme.json — this file only routes plugin output to it.
 *
 * Token reference (from ollie/theme.json → styles.elements.button):
 *   bg:           var(--wp--preset--color--main)
 *   text:         var(--wp--preset--color--base)
 *   border-radius: 5px
 *   border-width:  0
 *   padding:       .6em 1em
 *   font-size:     var(--wp--preset--font-size--small)
 *   font-weight:   500
 *
 * Adding a new plugin? Append its button selector to the lists below.
 */

/* === Primary fill (matches .wp-element-button) =========================== */
.fluentform .ff-btn,
.fluentform .ff-btn-submit,
.fluentform button[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.wc-block-components-button,
.wc-block-components-button:not(.is-link),
.wp-block-woocommerce-cart .wc-block-cart__submit-button,
.wp-block-woocommerce-checkout-place-order-block .wc-block-components-checkout-place-order-button,
.mc4wp-form input[type="submit"],
.mc4wp-form button[type="submit"],
.frm_button_submit,
.gform_button {
	background-color: var(--wp--preset--color--main);
	color: var(--wp--preset--color--base);
	border: 0;
	border-radius: 5px;
	padding: .6em 1em;
	font-family: var(--wp--preset--font-family--body, inherit);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	line-height: 1.4;
	cursor: pointer;
	text-decoration: none;
	transition: opacity .15s ease;
	-webkit-appearance: none;
	appearance: none;
}

/* === Hover / focus — matches Ollie's :hover (same colors, slight feedback) */
.fluentform .ff-btn:hover,
.fluentform .ff-btn:focus,
.fluentform .ff-btn-submit:hover,
.fluentform .ff-btn-submit:focus,
.fluentform button[type="submit"]:hover,
.fluentform button[type="submit"]:focus,
.woocommerce a.button:hover,
.woocommerce a.button:focus,
.woocommerce button.button:hover,
.woocommerce button.button:focus,
.woocommerce input.button:hover,
.woocommerce input.button:focus,
.woocommerce #respond input#submit:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input.button:hover,
.wc-block-components-button:hover,
.wc-block-components-button:focus,
.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
.wp-block-woocommerce-checkout-place-order-block .wc-block-components-checkout-place-order-button:hover,
.mc4wp-form input[type="submit"]:hover,
.mc4wp-form button[type="submit"]:hover,
.frm_button_submit:hover,
.gform_button:hover {
	background-color: var(--wp--preset--color--main);
	color: var(--wp--preset--color--base);
	opacity: .85;
}

/* === WC "alt" buttons (Add to cart / Place order) — same primary treatment */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce-page a.button.alt,
.woocommerce-page button.button.alt {
	background-color: var(--wp--preset--color--primary, var(--wp--preset--color--main));
	color: var(--wp--preset--color--primary-accent, var(--wp--preset--color--base));
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce-page a.button.alt:hover,
.woocommerce-page button.button.alt:hover {
	background-color: var(--wp--preset--color--primary, var(--wp--preset--color--main));
	color: var(--wp--preset--color--primary-accent, var(--wp--preset--color--base));
	opacity: .85;
}

/* === Disabled state ====================================================== */
.fluentform .ff-btn[disabled],
.fluentform .ff-btn-submit[disabled],
.woocommerce button.button[disabled],
.woocommerce input.button[disabled],
.wc-block-components-button[disabled],
.wc-block-components-button:disabled {
	opacity: .5;
	cursor: not-allowed;
}
