/**
 * WooCommerce specific styles
 * This file contains styles specific to WooCommerce functionality
 */

/* WooCommerce Layout */
.woocommerce-page .container {
    @apply mx-auto px-4;
}

/* Product Archive Styles */
.woocommerce ul.products {
    @apply grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6 p-0 m-0 list-none;
}

.woocommerce ul.products li.product {
    @apply bg-white rounded-lg shadow-md overflow-hidden transition-all duration-300 hover:shadow-lg hover:-translate-y-1;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link {
    @apply block h-full text-neutral-900 no-underline;
}

.woocommerce ul.products li.product img {
    @apply w-full h-64 object-cover;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    @apply text-lg font-semibold p-4 pb-2 text-neutral-900;
}

.woocommerce ul.products li.product .price {
    @apply px-4 pb-4 text-lg font-bold text-blue-600;
}

.woocommerce ul.products li.product .price del {
    @apply text-neutral-400 text-sm font-normal mr-2;
}

.woocommerce ul.products li.product .price ins {
    @apply text-blue-600 no-underline;
}

/* Single Product Styles */
.woocommerce div.product {
    @apply grid grid-cols-1 lg:grid-cols-2 gap-8;
}

.woocommerce div.product .woocommerce-product-gallery {
    @apply lg:col-span-1;
}

.woocommerce div.product .summary {
    @apply lg:col-span-1;
}

.woocommerce div.product .summary .product_title {
    @apply text-2xl md:text-3xl font-bold text-neutral-900 mb-4;
}

.woocommerce div.product .summary .price {
    @apply text-2xl font-bold text-blue-600 mb-6;
}

.woocommerce div.product .summary .woocommerce-product-details__short-description {
    @apply text-neutral-700 mb-6 prose prose-sm max-w-none;
}

/* Add to Cart Button */
.woocommerce .single_add_to_cart_button,
.woocommerce .button.alt {
    @apply bg-blue-600 text-white px-6 py-3 rounded-md hover:bg-blue-700 transition-colors duration-200 font-medium border-0 cursor-pointer;
}

.woocommerce .single_add_to_cart_button:hover,
.woocommerce .button.alt:hover {
    @apply bg-blue-700;
}

/* Quantity Input */
.woocommerce .quantity input.qty {
    @apply w-16 h-10 text-center border border-neutral-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500;
}

/* Product Tabs */
.woocommerce .woocommerce-tabs ul.tabs {
    @apply border-b border-neutral-200 flex space-x-8 mb-6 p-0 m-0 list-none;
}

.woocommerce .woocommerce-tabs ul.tabs li {
    @apply pb-4 border-b-2 border-transparent;
}

.woocommerce .woocommerce-tabs ul.tabs li.active {
    @apply border-blue-600;
}

.woocommerce .woocommerce-tabs ul.tabs li a {
    @apply text-neutral-600 hover:text-blue-600 transition-colors no-underline font-medium;
}

.woocommerce .woocommerce-tabs ul.tabs li.active a {
    @apply text-blue-600;
}

.woocommerce .woocommerce-tabs .panel {
    @apply prose prose-sm max-w-none;
}

/* Cart Page */
.woocommerce-cart table.cart {
    @apply w-full border-collapse;
}

.woocommerce-cart table.cart th,
.woocommerce-cart table.cart td {
    @apply border-b border-neutral-200 px-4 py-4 text-left;
}

.woocommerce-cart table.cart th {
    @apply bg-neutral-50 font-semibold text-neutral-900;
}

.woocommerce-cart .cart-collaterals {
    @apply mt-8;
}

.woocommerce-cart .cart_totals {
    @apply bg-neutral-50 p-6 rounded-lg;
}

.woocommerce-cart .cart_totals h2 {
    @apply text-xl font-bold text-neutral-900 mb-4;
}

.woocommerce-cart .cart_totals table {
    @apply w-full;
}

.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td {
    @apply border-b border-neutral-200 px-0 py-2;
}

/* Checkout Page */
.woocommerce-checkout .col2-set {
    @apply grid grid-cols-1 lg:grid-cols-2 gap-8;
}

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3 {
    @apply text-xl font-bold text-neutral-900 mb-4;
}

.woocommerce form .form-row {
    @apply mb-4;
}

.woocommerce form .form-row label {
    @apply block text-sm font-medium text-neutral-700 mb-1;
}

.woocommerce form .form-row input[type="text"],
.woocommerce form .form-row input[type="email"],
.woocommerce form .form-row input[type="tel"],
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
    @apply w-full px-3 py-2 border border-neutral-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500;
}

/* Messages */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
    @apply p-4 mb-4 rounded-md border-l-4;
}

.woocommerce-message {
    @apply bg-green-50 border-green-400 text-green-800;
}

.woocommerce-error {
    @apply bg-red-50 border-red-400 text-red-800;
}

.woocommerce-info {
    @apply bg-blue-50 border-blue-400 text-blue-800;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination {
    @apply flex justify-center mt-8;
}

.woocommerce nav.woocommerce-pagination ul {
    @apply flex space-x-2 p-0 m-0 list-none;
}

.woocommerce nav.woocommerce-pagination ul li {
    @apply inline-block;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    @apply block px-3 py-2 border border-neutral-300 rounded text-neutral-700 hover:bg-blue-600 hover:text-white hover:border-blue-600 transition-colors no-underline;
}

.woocommerce nav.woocommerce-pagination ul li .current {
    @apply bg-blue-600 text-white border-blue-600;
}

/* Responsive Design */
@media (max-width: 768px) {
    .woocommerce ul.products {
        @apply grid-cols-1 sm:grid-cols-2;
    }
    
    .woocommerce div.product {
        @apply grid-cols-1;
    }
    
    .woocommerce-checkout .col2-set {
        @apply grid-cols-1;
    }
}