/* WooCommerce Custom Styles — MYPARIS */

/* Shop Layout */
.shop-layout { display:grid; grid-template-columns:260px 1fr; gap:var(--space-8); }
.shop-layout:not(.has-sidebar) { grid-template-columns:1fr; }
.shop-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--space-8); padding-bottom:var(--space-4); border-bottom:1px solid var(--color-border); }
.shop-header__right { display:flex; align-items:center; gap:var(--space-4); }
.shop-filter-toggle { display:none; }
.shop-grid-toggle { display:flex; gap:var(--space-2); }
.grid-toggle { padding:4px; opacity:0.4; transition:opacity var(--duration-fast); }
.grid-toggle.active, .grid-toggle:hover { opacity:1; }

/* Shop Sidebar */
.shop-sidebar__header { display:none; }
.filter-group { margin-bottom:var(--space-7); }
.filter-group__title { font-size:var(--text-xs); letter-spacing:var(--tracking-widest); margin-bottom:var(--space-4); font-weight:var(--weight-semibold); }
.filter-group__list li { margin-bottom:var(--space-2); }
.filter-link { font-size:var(--text-sm); color:var(--color-text-light); transition:color var(--duration-fast); display:flex; justify-content:space-between; }
.filter-link:hover, .filter-link.is-active { color:var(--color-primary); font-weight:var(--weight-medium); }
.filter-count { font-size:var(--text-xs); opacity:0.5; }

/* Category Hero */
.category-hero { position:relative; height:350px; display:flex; align-items:center; justify-content:center; background:var(--color-bg-dark); overflow:hidden; margin-bottom:var(--space-4); }
.category-hero__bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.category-hero__overlay { position:absolute; inset:0; background:rgba(0,0,0,0.4); }
.category-hero .container { position:relative; z-index:1; }
.category-hero__title { color:var(--color-secondary); font-family:var(--font-display); font-size:var(--text-5xl); }
.category-hero__desc { color:rgba(255,255,255,0.8); margin-top:var(--space-3); }

/* Breadcrumb */
.luxe-breadcrumb { padding:var(--space-4) 0; font-size:var(--text-sm); color:var(--color-text-muted); }
.luxe-breadcrumb a { color:var(--color-text-muted); transition:color var(--duration-fast); }
.luxe-breadcrumb a:hover { color:var(--color-primary); }
.luxe-breadcrumb__sep { margin:0 var(--space-2); opacity:0.4; }

/* Single Product */
.single-product-layout { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-12); padding:var(--space-8) 0 var(--space-12); }
.product-gallery__main { position:relative; background:var(--color-bg-alt); }
.product-gallery__slide { display:none; }
.product-gallery__slide.is-active { display:block; }
.product-gallery__slide img { width:100%; aspect-ratio:3/4; object-fit:cover; }
.product-gallery__thumbs { display:flex; gap:var(--space-2); margin-top:var(--space-2); overflow-x:auto; }
.product-gallery__thumb { width:70px; height:88px; overflow:hidden; border:2px solid transparent; cursor:pointer; padding:0; flex-shrink:0; }
.product-gallery__thumb.is-active { border-color:var(--color-primary); }
.product-gallery__thumb img { width:100%; height:100%; object-fit:cover; }

/* Product Info */
.product-info__sticky { position:sticky; top:calc(var(--header-height) + var(--space-8)); }
.product-info__title { font-family:var(--font-display); font-size:var(--text-3xl); margin-bottom:var(--space-3); }
.product-info__price { font-size:var(--text-xl); margin-bottom:var(--space-6); }
.product-info__price del { opacity:0.5; margin-right:var(--space-2); }
.product-info__price ins { text-decoration:none; color:var(--color-error); }
.product-info__desc { font-size:var(--text-md); line-height:var(--leading-relaxed); color:var(--color-text-light); margin-bottom:var(--space-6); }
.product-info__cart { margin-bottom:var(--space-6); }
.product-info__cart .single_add_to_cart_button { width:100%; padding:16px; background:var(--color-primary); color:var(--color-secondary); border:none; font-size:var(--text-sm); font-weight:var(--weight-medium); letter-spacing:var(--tracking-wider); text-transform:uppercase; cursor:pointer; transition:background var(--duration-fast); }
.product-info__cart .single_add_to_cart_button:hover { background:#222; }
.product-info__cart .quantity { display:flex; align-items:center; margin-bottom:var(--space-4); }
.product-info__cart .quantity input { width:60px; text-align:center; border:1px solid var(--color-border); padding:10px; }
.product-info__wishlist { display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-sm); letter-spacing:var(--tracking-wide); text-transform:uppercase; padding:var(--space-3) 0; border-top:1px solid var(--color-border); border-bottom:1px solid var(--color-border); width:100%; margin-bottom:var(--space-6); transition:color var(--duration-fast); }
.product-info__wishlist:hover { color:var(--color-accent); }
.product-info__share { display:flex; align-items:center; gap:var(--space-4); margin-top:var(--space-6); }
.product-info__share a { font-size:var(--text-xs); letter-spacing:var(--tracking-wider); text-transform:uppercase; }

/* Product Accordions */
.product-accordion { border-bottom:1px solid var(--color-border); }
.product-accordion__header { width:100%; display:flex; justify-content:space-between; align-items:center; padding:var(--space-4) 0; font-size:var(--text-sm); font-weight:var(--weight-medium); letter-spacing:var(--tracking-wide); text-transform:uppercase; cursor:pointer; }
.product-accordion__header svg { transition:transform var(--duration-normal); }
.product-accordion__header[aria-expanded="true"] svg { transform:rotate(45deg); }
.product-accordion__panel { max-height:0; overflow:hidden; transition:max-height var(--duration-normal) var(--ease-default); }
.product-accordion__panel.is-open { max-height:500px; }
.product-accordion__content { padding:0 0 var(--space-6); font-size:var(--text-md); line-height:var(--leading-relaxed); color:var(--color-text-light); }

/* Variations */
.variations { margin-bottom:var(--space-4); }
.variations td { padding:var(--space-2) 0; }
.variations label { font-size:var(--text-sm); font-weight:var(--weight-medium); text-transform:uppercase; letter-spacing:var(--tracking-wide); }
.variations select { padding:10px 16px; border:1px solid var(--color-border); width:100%; }

/* WooCommerce Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
    padding:var(--space-4) var(--space-6);
    margin-bottom:var(--space-6);
    font-size:var(--text-sm);
    border-left:3px solid;
}
.woocommerce-message { border-color:var(--color-success); background:rgba(45,125,70,0.05); }
.woocommerce-error { border-color:var(--color-error); background:rgba(198,40,40,0.05); }
.woocommerce-info { border-color:var(--color-accent); background:rgba(184,134,11,0.05); }

/* Cart Page */
.woocommerce-cart-form table { width:100%; border-collapse:collapse; }
.woocommerce-cart-form th { font-size:var(--text-xs); text-transform:uppercase; letter-spacing:var(--tracking-widest); padding:var(--space-4); text-align:left; border-bottom:2px solid var(--color-primary); }
.woocommerce-cart-form td { padding:var(--space-4); border-bottom:1px solid var(--color-border); vertical-align:middle; }
.woocommerce-cart-form .product-thumbnail img { width:80px; height:100px; object-fit:cover; }
.woocommerce-cart-form .product-name a { font-size:var(--text-sm); font-weight:var(--weight-medium); text-transform:uppercase; letter-spacing:var(--tracking-wide); }

/* Checkout */
.woocommerce-checkout .form-row { margin-bottom:var(--space-4); }
.woocommerce-checkout .form-row label { display:block; font-size:var(--text-sm); font-weight:var(--weight-medium); text-transform:uppercase; letter-spacing:var(--tracking-wide); margin-bottom:var(--space-2); }
.woocommerce-checkout .form-row input, .woocommerce-checkout .form-row select, .woocommerce-checkout .form-row textarea { width:100%; padding:12px 16px; border:1px solid var(--color-border); font-size:var(--text-md); }
.woocommerce-checkout #place_order { width:100%; padding:16px; background:var(--color-primary); color:var(--color-secondary); border:none; font-size:var(--text-sm); font-weight:var(--weight-medium); letter-spacing:var(--tracking-wider); text-transform:uppercase; cursor:pointer; transition:background var(--duration-fast); }
.woocommerce-checkout #place_order:hover { background:#222; }

/* Pagination */
.woocommerce-pagination { text-align:center; margin-top:var(--space-8); }
.woocommerce-pagination ul { display:inline-flex; gap:var(--space-2); }
.woocommerce-pagination li a, .woocommerce-pagination li span { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid var(--color-border); font-size:var(--text-sm); transition:all var(--duration-fast); }
.woocommerce-pagination li span.current, .woocommerce-pagination li a:hover { background:var(--color-primary); color:var(--color-secondary); border-color:var(--color-primary); }
/* ==========================================================================
   TÙY CHỈNH Ô PHÂN LOẠI (SWATCHES) VÀ KHỐI MUA HÀNG
   ========================================================================== */

/* 1. Thiết kế các ô nút bấm phân loại */
.luxe-swatches {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
}

.luxe-swatch-btn {
    background: transparent;
    border: 1px solid var(--color-border);
    padding: 8px 16px;
    font-size: var(--text-sm);
    color: var(--color-text);
    cursor: pointer;
    transition: all var(--duration-fast);
    text-transform: uppercase;
}

.luxe-swatch-btn:hover {
    border-color: var(--color-primary);
}

/* Trạng thái khi được chọn */
.luxe-swatch-btn.is-selected {
    background-color: var(--color-primary);
    color: var(--color-secondary);
    border-color: var(--color-primary);
}

/* 2. Căn chỉnh khối Số lượng và Nút mua hàng */
.woocommerce-variation-add-to-cart,
.cart:not(.variations_form) {
    display: flex;
    gap: var(--space-3);
    align-items: stretch; /* Ép tất cả các thành phần có chiều cao bằng nhau */
    margin-top: var(--space-6);
    flex-wrap: wrap;
}

/* Ô nhập số lượng */
.product-info__cart .quantity {
    margin: 0;
}

.product-info__cart .quantity input.qty {
    width: 60px;
    height: 50px;
    text-align: center;
    border: 1px solid var(--color-border);
    font-size: var(--text-md);
    background: transparent;
    border-radius: 0;
    margin: 0;
    padding: 0;
}

/* Định dạng chung cho cả 2 nút */
.product-info__cart button.single_add_to_cart_button,
.product-info__cart button.single_buy_now_button {
    flex: 1; /* Chia đều không gian cho 2 nút */
    height: 50px;
    min-width: 160px;
    border: none;
    text-transform: uppercase;
    letter-spacing: var(--tracking-widest);
    font-size: 11px;
    font-weight: var(--weight-medium);
    cursor: pointer;
    transition: background-color var(--duration-fast);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Nút Thêm vào giỏ hàng (Màu đen) */
.product-info__cart button.single_add_to_cart_button {
    background-color: var(--color-primary);
    color: var(--color-secondary);
}

.product-info__cart button.single_add_to_cart_button:hover {
    background-color: #333333;
}

/* Nút Mua Ngay (Màu vàng đồng Luxury) */
.product-info__cart button.single_buy_now_button {
    background-color: var(--color-accent);
    color: var(--color-secondary);
}

.product-info__cart button.single_buy_now_button:hover {
    background-color: var(--color-accent-dark);
}
