/**
 * Flyn brand and per-yard fabric pricing styles.
 */
:root {
	--main-color: rgb(9, 112, 255) !important;
	--main-color-rgb: 9, 112, 255 !important;
}

.main-slider .center-content h1 span,
.woocommerce span.onsale,
.woocommerce .price,
.flyn-price-per-yard {
	color: #0970ff !important;
}

.theme-btn.btn-style-one,
.btn-style-one,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	color: #ffffff !important;
	background-color: #0970ff !important;
	border-color: #0970ff !important;
}

.theme-btn.btn-style-one:hover,
.btn-style-one:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	color: #ffffff !important;
	background-color: #0860d9 !important;
	border-color: #0860d9 !important;
}

.handle-preloader {
	background-color: #0970ff !important;
}

.flyn-fabric-yard-pricing {
	margin: 20px 0;
	padding: 20px;
	border: 1px solid #e8e8e8;
	border-radius: 8px;
	background: #fafafa;
}

.flyn-fabric-yard-pricing .flyn-yard-rate {
	margin: 0 0 16px;
	font-size: 18px;
}

.flyn-fabric-yard-pricing .flyn-yard-rate strong {
	font-weight: 700;
}

.flyn-fabric-yard-pricing .flyn-yard-label {
	display: block;
	margin-bottom: 8px;
	font-weight: 600;
	font-size: 15px;
}

.flyn-fabric-yard-pricing .quantity {
	display: flex;
	align-items: center;
	gap: 0;
	margin-bottom: 12px;
}

.flyn-fabric-yard-pricing .flyn-yard-stepper {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid #ddd;
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
}

.flyn-fabric-yard-pricing .flyn-yard-stepper .flyn-yard-minus,
.flyn-fabric-yard-pricing .flyn-yard-stepper .flyn-yard-plus {
	width: 44px;
	border: 0;
	background: #f0f0f0;
	color: #333;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	transition: background 0.2s ease;
}

.flyn-fabric-yard-pricing .flyn-yard-stepper .flyn-yard-minus:hover,
.flyn-fabric-yard-pricing .flyn-yard-stepper .flyn-yard-plus:hover {
	background: #0970ff;
	color: #fff;
}

.flyn-fabric-yard-pricing .flyn-yard-stepper .qty {
	width: 72px;
	border: 0;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-radius: 0;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	margin: 0;
	padding: 10px 0;
	-moz-appearance: textfield;
}

.flyn-fabric-yard-pricing .flyn-yard-stepper .qty::-webkit-outer-spin-button,
.flyn-fabric-yard-pricing .flyn-yard-stepper .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.flyn-fabric-yard-pricing .quantity .qty {
	width: 80px;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
}

.flyn-fabric-yard-pricing .flyn-yard-total,
.flyn-fabric-yard-pricing .flyn-yard-total .flyn-yard-total-label,
.flyn-fabric-yard-pricing .flyn-yard-total .flyn-total-amount,
.flyn-fabric-yard-pricing .flyn-yard-total .flyn-yard-breakdown,
.flyn-fabric-yard-pricing .flyn-yard-total .flyn-yard-breakdown .amount,
.flyn-fabric-yard-pricing .flyn-yard-total .flyn-yard-breakdown .woocommerce-Price-amount {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--color-twelve, #555);
}

.flyn-fabric-yard-pricing .flyn-yard-total .flyn-yard-total-label {
	margin-right: 4px;
}

.flyn-fabric-yard-pricing .flyn-yard-total .flyn-total-amount {
	margin-right: 6px;
}

.flyn-fabric-yard-pricing .flyn-yard-total .flyn-yard-breakdown {
	display: inline;
	color: var(--color-twelve, #555);
}

.flyn-fabric-yard-pricing .flyn-yard-total--loading {
	opacity: 0.55;
	transition: opacity 0.15s ease;
}

.woocommerce ul.products li.product .price .flyn-price-per-yard,
.woocommerce div.product p.price .flyn-price-per-yard,
.woocommerce div.product span.price .flyn-price-per-yard {
	font-size: 0.85em;
	font-weight: 500;
	color: #666 !important;
}

/* Elementor 4.x renders icons as inline SVGs; theme play buttons expect font icons. */
.fluid-section-one .play-box svg.e-font-icon-svg,
.play-box svg.e-font-icon-svg,
.video-box .play-box svg.e-font-icon-svg,
.dress-section-three .play-box svg.e-font-icon-svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
	display: inline-block;
	vertical-align: middle;
}

/* Empty atomic flexbox placeholders left after Elementor migration. */
.elementor-element.e-5ab0bfa,
.elementor-element.e-23867df {
	display: none !important;
}
