/* sample plugin public css */

/* Shop / archive sample links — do not restyle core Add to cart */
.dsfps_ajax_add_to_cart,
.dsfps_added_to_cart {
	margin: 4px;
}

#fps-sample-btn-price {
	display: inline-block !important;
}

.dsfps-sample-promo-main {
	position: fixed;
	top: 20%;
	right: 0;
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
	z-index: 999999;
	-webkit-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
}

.dsfps-sample-promo-main .dsfps-sample-promo-inner a {
	display: inline-block;
	padding: 12px 22px;
	color: #fff;
	background-color: #000;
	outline: none;
	text-decoration: none;
}

.theme-twentytwentytwo li .dsfps_ajax_add_to_cart {
	padding: 0.8rem 2.7rem;
}

@-webkit-keyframes fpsAjaxDialogEffect {
	0% {
		bottom: 45px;
	}
	100% {
		bottom: 30px;
	}
}

@keyframes fpsAjaxDialogEffect {
	0% {
		bottom: 45px;
	}
	100% {
		bottom: 30px;
	}
}

.dsfps-ajax-success-msg {
	position: fixed;
	right: 30px;
	bottom: 30px;
	background: #fff;
	padding: 14px;
	border-radius: 5px;
	-webkit-box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 35%);
	box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 35%);
	-webkit-animation-name: fpsAjaxDialogEffect;
	animation-name: fpsAjaxDialogEffect;
	-webkit-animation-duration: 0.3s;
	animation-duration: 0.3s;
	width: -webkit-max-content !important;
	width: -moz-max-content !important;
	width: max-content !important;
	z-index: 999;
}

.dsfps-ajax-success-msg p {
	margin: 0 !important;
	font-weight: 600;
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	line-height: normal;
	position: relative;
	padding: 0 0 0 44px;
}

.dsfps-ajax-success-msg p span {
	font-size: 22px;
	padding: 3px;
	line-height: normal;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 28px;
	height: 28px;
	border: 2px solid #37e113;
	border-radius: 100%;
}

/*.dsfps-free-sample-ajax-btn.wc-variation-selection-needed{pointer-events:none;opacity:0.8;}*/
.single_add_to_cart_button.loading ~ .dsfps-sample-btn-wrap .dsfps-free-sample-btn:after,
.single_add_to_cart_button.loading ~ .dsfps-free-sample-btn:after {
	display: none;
}

.single_add_to_cart_button.added ~ .dsfps-sample-btn-wrap + .added_to_cart.wc-forward,
.single_add_to_cart_button.added ~ .dsfps-free-sample-btn + .added_to_cart.wc-forward {
	display: none;
}

.single_add_to_cart_button.disable-cart-button {
	opacity: 0.5;
	pointer-events: none;
}

.dsfps_hide_local_pickup_fields .pickup-location-cart-item-field,
.dsfps_hide_local_pickup_fields .pickup-location-package-field,
.dsfps_hide_local_pickup_fields li:has(input[value="local_pickup_plus"]),
.dsfps_hide_local_pickup_fields.woocommerce-checkout ul.woocommerce-shipping-methods li:first-child:nth-last-child(2) input {
	display: none !important;
}

.dsfps-add-to-cart-failed + .woocommerce-error {
	display: inline-block;
	width: 100% !important;
	margin: 22px 0 !important;
}

.dsfps-sample-products-list-main .dsfps-sample-products-list {
	display: inline-block;
	width: 100%;
	margin-top: 35px;
}

/* -------------------------------------------------------------------------
   Single product sample button — theme-compatible layout
   Works with classic + block default themes (flex, float, and inline cart forms).
   ------------------------------------------------------------------------- */

.woocommerce div.product form.cart .dsfps-sample-btn-wrap,
.woocommerce-page div.product form.cart .dsfps-sample-btn-wrap,
.wp-block-add-to-cart-form form.cart .dsfps-sample-btn-wrap {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	line-height: normal;
}

/* Inherit theme button look; avoid plugin-forced spacing on core ATC */
.woocommerce div.product form.cart .dsfps-sample-btn-wrap .dsfps-free-sample-btn,
.woocommerce-page div.product form.cart .dsfps-sample-btn-wrap .dsfps-free-sample-btn,
.wp-block-add-to-cart-form form.cart .dsfps-sample-btn-wrap .dsfps-free-sample-btn {
	box-sizing: border-box;
	vertical-align: middle;
	margin: 0;
}

/* After Add to Cart: own row under qty + ATC (no staircase wrap) */
.woocommerce div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart,
.woocommerce-page div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart,
.wp-block-add-to-cart-form form.cart .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	width: 100%;
	max-width: 100%;
	clear: both;
	display: block;
	margin-top: 0.75em;
}

.woocommerce div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart .dsfps-free-sample-btn,
.woocommerce-page div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart .dsfps-free-sample-btn,
.wp-block-add-to-cart-form form.cart .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart .dsfps-free-sample-btn {
	display: inline-block;
	width: auto;
	max-width: 100%;
	margin: 0;
}

/* Before Add to Cart: stay on the qty / ATC row */
.woocommerce div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-before-add-to-cart,
.woocommerce-page div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-before-add-to-cart,
.wp-block-add-to-cart-form form.cart .dsfps-sample-btn-wrap.dsfps-pos-before-add-to-cart {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	-ms-flex-preferred-size: auto;
	flex-basis: auto;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	clear: none;
	margin: 0;
}

.woocommerce div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-before-add-to-cart .dsfps-free-sample-btn,
.woocommerce-page div.product form.cart .dsfps-sample-btn-wrap.dsfps-pos-before-add-to-cart .dsfps-free-sample-btn,
.wp-block-add-to-cart-form form.cart .dsfps-sample-btn-wrap.dsfps-pos-before-add-to-cart .dsfps-free-sample-btn {
	display: inline-block;
	margin: 0;
}

/* Shortcode placement outside form.cart */
.dsfps-sample-button-shortcode .dsfps-sample-btn-wrap {
	display: inline-block;
	max-width: 100%;
}

.dsfps-sample-button-shortcode .dsfps-sample-btn-wrap .dsfps-free-sample-btn {
	margin: 0;
}

/* Block theme product grids */
.wp-block-group .wc-block-product-template .wc-block-product {
	text-align: center;
}

.wp-block-group .wc-block-product-template .wc-block-product .wp-block-button {
	margin-bottom: 0;
}

.wp-block-group .wc-block-product-template .wc-block-product .dsfps_ajax_add_to_cart {
	display: inline-block;
}

.wp-block-group .wc-block-product-template .wc-block-product a.dsfps_ajax_add_to_cart.added_to_cart {
	margin-top: 4px;
	padding-top: 0;
}

.woocommerce .wp-block-column form.cart.wp-block-add-to-cart-with-options .dsfps-sample-btn-wrap.dsfps-pos-after-add-to-cart {
	margin-top: 10px;
}
