/* ===================== BUTTON SYSTEM ===================== */

/* Primary button (used by shortcodes, generic CTAs) */
.btn,
.button,
button.button,
input[type="submit"],
input[type="button"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 28px;
	background: var(--accent);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	font-family: 'Tajawal', sans-serif;
	border-radius: var(--radius-xl);
	border: none;
	transition: var(--transition);
	cursor: pointer;
	text-decoration: none;
	line-height: 1.4;
}

.btn:hover,
.button:hover,
button.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
	background: var(--accent-hover);
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 30px rgba(176, 123, 172, 0.3);
}

.btn-outline {
	background: transparent;
	border: 2px solid var(--accent);
	color: var(--accent);
}

.btn-outline:hover {
	background: var(--accent);
	color: #fff;
}

.btn-white {
	background: #fff;
	color: var(--dark);
	box-shadow: var(--shadow-md);
}

.btn-white:hover {
	background: var(--accent);
	color: #fff;
	transform: translateY(-3px);
	box-shadow: var(--shadow-xl);
}

.btn-lg {
	padding: 14px 36px;
	font-size: 16px;
}

.btn-sm {
	padding: 8px 16px;
	font-size: 13px;
}

.btn-block {
	width: 100%;
}

/* Hero CTA */
.hero-cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 36px;
	background: var(--accent);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	border-radius: var(--radius-xl);
	transition: var(--transition);
	box-shadow: 0 4px 20px rgba(176, 123, 172, 0.4);
}

.hero-cta:hover {
	background: var(--accent-hover);
	color: #fff;
	transform: translateY(-3px);
	box-shadow: 0 8px 30px rgba(176, 123, 172, 0.5);
}

.hero-cta i {
	transition: var(--transition-fast);
}

.hero-cta:hover i {
	transform: translateX(-4px);
}

/* Promo CTA */
.promo-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 40px;
	background: #fff;
	color: var(--dark);
	font-size: 16px;
	font-weight: 700;
	border-radius: var(--radius-xl);
	transition: var(--transition);
	box-shadow: var(--shadow-md);
}

.promo-cta:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-xl);
	background: var(--accent);
	color: #fff;
}

/* Product add-to-cart button */
.product-add-btn {
	width: 100%;
	padding: 10px;
	background: var(--accent-light);
	color: var(--accent);
	font-size: 14px;
	font-weight: 700;
	border-radius: var(--radius-md);
	transition: var(--transition);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: 'Tajawal', sans-serif;
}

.product-add-btn:hover {
	background: var(--accent);
	color: #fff;
}

.product-add-btn.added {
	background: #27ae60;
	color: #fff;
}

.product-add-btn i {
	transition: var(--transition-fast);
}

/* Wishlist button */
.product-wishlist-btn {
	position: absolute;
	top: 12px;
	left: 12px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.9);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--text-light);
	font-size: 16px;
	z-index: 3;
	transition: var(--transition-fast);
	backdrop-filter: blur(4px);
}

.product-wishlist-btn:hover {
	background: #fff;
	color: #e74c3c;
	transform: scale(1.1);
}

.product-wishlist-btn.active {
	color: #e74c3c;
	background: #fff;
}

.product-wishlist-btn.active i {
	font-weight: 900;
}

/* Nav action buttons */
.nav-action-btn {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	color: var(--text-secondary);
	font-size: 18px;
	transition: var(--transition-fast);
	position: relative;
}

.nav-action-btn:hover {
	background: var(--accent-light);
	color: var(--accent);
}

/* FAQ icon button */
.faq-question {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
	font-size: 15px;
	font-weight: 700;
	color: var(--text-primary);
	text-align: right;
	transition: var(--transition-fast);
	font-family: 'Tajawal', sans-serif;
}

.faq-question:hover {
	color: var(--accent);
}

/* Scroll to top button */
.scroll-top-btn {
	position: fixed;
	bottom: 28px;
	left: 28px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--accent);
	color: #fff;
	font-size: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 900;
	box-shadow: 0 4px 20px rgba(176, 123, 172, 0.4);
	opacity: 0;
	visibility: hidden;
	transform: translateY(20px);
	transition: var(--transition);
}

.scroll-top-btn.visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.scroll-top-btn:hover {
	background: var(--accent-hover);
	color: #fff;
	transform: translateY(-3px);
}

/* WooCommerce button overrides */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 28px;
	background: var(--accent);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	font-family: 'Tajawal', sans-serif;
	border-radius: var(--radius-xl);
	border: none;
	transition: var(--transition);
	cursor: pointer;
	text-decoration: none;
	line-height: 1.4;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background: var(--accent-hover);
	color: #fff;
	transform: translateY(-2px);
}

.woocommerce a.button.checkout-button,
.woocommerce button.button.checkout-button {
	background: var(--accent);
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled] {
	opacity: 0.6;
	cursor: not-allowed;
}

/* Quantity input */
.woocommerce .quantity .qty {
	padding: 8px 10px;
	border: 2px solid var(--border);
	border-radius: var(--radius-sm);
	font-size: 15px;
	font-family: 'Tajawal', sans-serif;
	width: 70px;
	outline: none;
	transition: var(--transition-fast);
}

.woocommerce .quantity .qty:focus {
	border-color: var(--accent);
}

/* Newsletter form button */
.newsletter-form button {
	padding: 14px 28px;
	background: var(--accent);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	font-family: 'Tajawal', sans-serif;
	border-radius: var(--radius-xl);
	transition: var(--transition);
	white-space: nowrap;
	cursor: pointer;
}

.newsletter-form button:hover {
	background: var(--accent-hover);
	transform: translateY(-2px);
}
