/* Custom Global Variables & Styling overrides */
:root {
	--wp--preset--font-family--outfit: "Outfit", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

body, p, h1, h2, h3, h4, h5, h6, a, input, select, textarea, button, .wp-block-site-title, .wp-block-navigation {
	font-family: "Outfit", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

/* Modern Card Layouts */
.wp-block-group.has-background,
.card-modern {
	border-radius: 16px !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* --- WooCommerce Product Grid & Cards --- */
.woocommerce ul.products li.product,
.wc-block-grid__product {
	background: #ffffff !important;
	border-radius: 16px !important;
	padding: 18px !important;
	border: 1px solid rgba(0, 0, 0, 0.06) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02) !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	position: relative !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
}

/* Product Card Hover */
.woocommerce ul.products li.product:hover,
.wc-block-grid__product:hover {
	transform: translateY(-6px) !important;
	box-shadow: 0 12px 30px rgba(59, 130, 246, 0.12) !important;
	border-color: #2563EB !important; /* Electric Blue border */
}

/* Product Image Hover Zoom */
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.wc-block-grid__product-link img {
	border-radius: 12px !important;
	transition: transform 0.5s ease !important;
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__link img,
.wc-block-grid__product:hover img {
	transform: scale(1.04) !important;
}

/* Product Title */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	color: #111827 !important; /* Dark Gray */
	margin-top: 12px !important;
	margin-bottom: 8px !important;
	line-height: 1.4 !important;
}

/* Product Price */
.woocommerce ul.products li.product .price,
.wc-block-grid__product-price {
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	color: #10B981 !important; /* Emerald green for price */
	margin-bottom: 16px !important;
	display: block !important;
}

.woocommerce ul.products li.product .price del,
.wc-block-grid__product-price del {
	font-size: 0.9rem !important;
	color: #9CA3AF !important;
	margin-right: 6px !important;
	font-weight: 400 !important;
}

.woocommerce ul.products li.product .price ins,
.wc-block-grid__product-price ins {
	text-decoration: none !important;
	background: transparent !important;
}

/* Buttons (WooCommerce & general) */
.woocommerce ul.products li.product .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wp-block-button__link {
	background: linear-gradient(135deg, #2563EB 0%, #7C3AED 100%) !important; /* Electric Blue to Violet */
	color: #ffffff !important;
	font-weight: 600 !important;
	font-size: 0.95rem !important;
	padding: 12px 24px !important;
	border-radius: 30px !important;
	border: none !important;
	box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2) !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	display: inline-flex !important;
	justify-content: center !important;
	align-items: center !important;
	text-decoration: none !important;
	cursor: pointer !important;
	text-align: center !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wp-block-button__link:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 18px rgba(37, 99, 235, 0.35) !important;
	filter: brightness(1.05) !important;
}

/* Secondary Button / Add to Cart when already added */
.woocommerce a.button.added_to_cart {
	background: #E5E7EB !important;
	color: #374151 !important;
	box-shadow: none !important;
	margin-left: 8px !important;
}

/* WooCommerce sale badge */
.woocommerce span.onsale {
	background: linear-gradient(135deg, #EF4444 0%, #F59E0B 100%) !important;
	font-weight: 700 !important;
	border-radius: 30px !important;
	padding: 4px 12px !important;
	min-height: auto !important;
	min-width: auto !important;
	line-height: 1.2 !important;
	font-size: 0.8rem !important;
	top: 12px !important;
	left: 12px !important;
	box-shadow: 0 2px 8px rgba(239, 68, 68, 0.25) !important;
}

/* WooCommerce checkout and tables */
.woocommerce-checkout #order_review,
.woocommerce-cart .cart-collaterals {
	background: #F9FAFB !important;
	padding: 24px !important;
	border-radius: 16px !important;
	border: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* Forms Input elements */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
textarea,
select {
	border-radius: 8px !important;
	border: 1px solid #D1D5DB !important;
	padding: 10px 14px !important;
	transition: all 0.2s ease !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus {
	border-color: #2563EB !important;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important;
	outline: none !important;
}

/* Badge de Sin Stock reemplazando al botón en el catálogo */
.sin-stock-badge-button {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	background: #FEE2E2 !important; /* Soft Red */
	color: #DC2626 !important; /* Darker Red text */
	border: 1px solid #FCA5A5 !important;
	font-weight: 700 !important;
	font-size: 0.95rem !important;
	padding: 12px 24px !important;
	border-radius: 30px !important;
	text-align: center !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	cursor: not-allowed !important;
	margin-top: auto !important; /* Forces it to the bottom of the card flexbox */
}


