/**
 * Luxa VIP Shop - Luxa Theme Specific Styles
 * Enhanced integration with Luxa theme
 */

/* Luxa Theme Variables Override */
:root {
	--luxa-vip-primary-color: var(--luxa-primary-color, #007cba);
	--luxa-vip-secondary-color: var(--luxa-secondary-color, #f0f0f0);
	--luxa-vip-accent-color: var(--luxa-accent-color, #gold);
	--luxa-vip-text-color: var(--luxa-text-color, #333);
	--luxa-vip-border-radius: var(--luxa-border-radius, 8px);
	--luxa-vip-shadow: var(--luxa-shadow, 0 2px 10px rgba(0,0,0,0.1));
}

/* Luxa Theme Layout Integration */
.luxa-theme-compatible .luxa-vip-checkout-wrapper {
	background: var(--luxa-content-bg, #fff);
	border: 2px solid var(--luxa-primary-color, #007cba);
	margin: var(--luxa-section-margin, 20px 0);
	padding: var(--luxa-section-padding, 20px);
}

/* Luxa Typography Integration */
.luxa-theme-compatible .luxa-vip-checkout-notice h3 {
	font-family: var(--luxa-heading-font, inherit);
	font-weight: var(--luxa-heading-weight, 600);
	color: var(--luxa-primary-color, #007cba);
}

.luxa-theme-compatible .luxa-vip-features h4 {
	font-family: var(--luxa-heading-font, inherit);
	font-weight: var(--luxa-heading-weight, 600);
}

/* Luxa Button Styles */
.luxa-theme-compatible .woocommerce #respond input#submit,
.luxa-theme-compatible .woocommerce a.button,
.luxa-theme-compatible .woocommerce button.button,
.luxa-theme-compatible .woocommerce input.button {
	background: var(--luxa-button-bg, #007cba);
	color: var(--luxa-button-color, #fff);
	border-radius: var(--luxa-button-radius, 4px);
	padding: var(--luxa-button-padding, 12px 20px);
	transition: var(--luxa-transition, all 0.3s ease);
}

.luxa-theme-compatible .woocommerce #respond input#submit:hover,
.luxa-theme-compatible .woocommerce a.button:hover,
.luxa-theme-compatible .woocommerce button.button:hover,
.luxa-theme-compatible .woocommerce input.button:hover {
	background: var(--luxa-button-hover-bg, #005a87);
	transform: var(--luxa-button-hover-transform, translateY(-2px));
}

/* Luxa Form Styles */
.luxa-theme-compatible .woocommerce form .form-row input.input-text,
.luxa-theme-compatible .woocommerce form .form-row textarea,
.luxa-theme-compatible .woocommerce form .form-row select {
	border: var(--luxa-input-border, 1px solid #ddd);
	border-radius: var(--luxa-input-radius, 4px);
	padding: var(--luxa-input-padding, 10px 15px);
	background: var(--luxa-input-bg, #fff);
	color: var(--luxa-input-color, #333);
}

.luxa-theme-compatible .woocommerce form .form-row input.input-text:focus,
.luxa-theme-compatible .woocommerce form .form-row textarea:focus,
.luxa-theme-compatible .woocommerce form .form-row select:focus {
	border-color: var(--luxa-primary-color, #007cba);
	box-shadow: var(--luxa-input-focus-shadow, 0 0 0 2px rgba(0,124,186,0.2));
}

/* Luxa Grid Integration */
.luxa-theme-compatible .woocommerce-checkout .col2-set {
	display: var(--luxa-grid-display, grid);
	grid-template-columns: var(--luxa-checkout-grid, 1fr 1fr);
	gap: var(--luxa-grid-gap, 30px);
}

/* Luxa Card Styles */
.luxa-theme-compatible .luxa-vip-plan-info {
	background: var(--luxa-card-bg, #fff);
	border: var(--luxa-card-border, 1px solid #e0e0e0);
	border-radius: var(--luxa-card-radius, 8px);
	box-shadow: var(--luxa-card-shadow, 0 2px 10px rgba(0,0,0,0.1));
	padding: var(--luxa-card-padding, 20px);
}

/* Luxa Header Integration */
.luxa-theme-compatible .luxa-vip-checkout-notice {
	background: var(--luxa-notice-bg, linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%));
	border-left: var(--luxa-notice-border, 4px solid var(--luxa-primary-color, #007cba));
}

/* Luxa Navigation Integration */
.luxa-theme-compatible .woocommerce-breadcrumb {
	background: var(--luxa-breadcrumb-bg, transparent);
	padding: var(--luxa-breadcrumb-padding, 10px 0);
	border-radius: var(--luxa-breadcrumb-radius, 4px);
}

.luxa-theme-compatible .woocommerce-breadcrumb a {
	color: var(--luxa-link-color, #007cba);
	text-decoration: var(--luxa-link-decoration, none);
}

.luxa-theme-compatible .woocommerce-breadcrumb a:hover {
	color: var(--luxa-link-hover-color, #005a87);
	text-decoration: var(--luxa-link-hover-decoration, underline);
}

/* Luxa Product Badge Integration */
.luxa-theme-compatible .luxa-vip-product-badge {
	background: var(--luxa-badge-bg, linear-gradient(135deg, #gold 0%, #ffd700 100%));
	color: var(--luxa-badge-color, #333);
	font-family: var(--luxa-badge-font, inherit);
	font-weight: var(--luxa-badge-weight, bold);
	text-shadow: var(--luxa-badge-text-shadow, 0 1px 2px rgba(0,0,0,0.2));
}

/* Luxa Responsive Integration */
@media (max-width: 768px) {
	.luxa-theme-compatible .woocommerce-checkout .col2-set {
		grid-template-columns: 1fr;
		gap: var(--luxa-mobile-gap, 20px);
	}
	
	.luxa-theme-compatible .luxa-vip-checkout-wrapper {
		padding: var(--luxa-mobile-padding, 15px);
		margin: var(--luxa-mobile-margin, 15px 0);
	}
}

/* Luxa Dark Mode Support */
@media (prefers-color-scheme: dark) {
	.luxa-theme-compatible:not(.luxa-light-mode) {
		--luxa-vip-primary-bg: var(--luxa-dark-bg, #1a1a1a);
		--luxa-vip-text-color: var(--luxa-dark-text, #e0e0e0);
		--luxa-vip-secondary-color: var(--luxa-dark-secondary, #2a2a2a);
	}
	
	.luxa-theme-compatible:not(.luxa-light-mode) .luxa-vip-checkout-wrapper {
		background: var(--luxa-dark-card-bg, #2a2a2a);
		border-color: var(--luxa-primary-color, #007cba);
		color: var(--luxa-dark-text, #e0e0e0);
	}
	
	.luxa-theme-compatible:not(.luxa-light-mode) .luxa-vip-plan-info {
		background: var(--luxa-dark-card-bg, #2a2a2a);
		border-color: var(--luxa-dark-border, #444);
	}
}

/* Luxa Animation Integration */
.luxa-theme-compatible .luxa-vip-checkout-wrapper {
	animation: var(--luxa-card-animation, fadeInUp 0.6s ease-out);
}

.luxa-theme-compatible .luxa-vip-product-badge {
	animation: var(--luxa-badge-animation, pulse 2s infinite);
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Luxa WooCommerce Shop Integration */
.luxa-theme-compatible .woocommerce ul.products li.product.luxa-vip-plan-product {
	background: var(--luxa-vip-product-bg, linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%));
	border: var(--luxa-vip-product-border, 2px solid var(--luxa-primary-color, #007cba));
	position: relative;
	overflow: hidden;
}

.luxa-theme-compatible .woocommerce ul.products li.product.luxa-vip-plan-product::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--luxa-primary-gradient, linear-gradient(90deg, #007cba 0%, #005a87 100%));
}

/* Luxa Footer Integration */
.luxa-theme-compatible .woocommerce-checkout .luxa-vip-purchase-notice {
	background: var(--luxa-notice-bg, rgba(0,124,186,0.1));
	border: var(--luxa-notice-border, 1px solid rgba(0,124,186,0.3));
	color: var(--luxa-notice-text, #333);
}

/* Luxa Sidebar Integration */
.luxa-theme-compatible .widget.luxa-vip-widget {
	background: var(--luxa-widget-bg, #fff);
	padding: var(--luxa-widget-padding, 20px);
	border-radius: var(--luxa-widget-radius, 8px);
	box-shadow: var(--luxa-widget-shadow, 0 2px 10px rgba(0,0,0,0.1));
}

/* Luxa Custom Properties Enhancement */
.luxa-theme-compatible {
	--wc-primary-color: var(--luxa-primary-color, #007cba);
	--wc-secondary-color: var(--luxa-secondary-color, #f0f0f0);
	--wc-border-radius: var(--luxa-border-radius, 8px);
	--wc-box-shadow: var(--luxa-shadow, 0 2px 10px rgba(0,0,0,0.1));
}
