/* ==========================================================================
   CEEPax Shop & Archive Pages — Flipkart-Inspired Two-Panel Layout
   ========================================================================== */

/* Page Background Canvas */
body.woocommerce-page,
body.woocommerce.archive,
.woocommerce.archive .site-content,
.woocommerce.archive #content,
.woocommerce-page.archive .site-content {
    background-color: var(--ceepax-bg) !important;
}

/* Master Shop Layout Container (Desktop > 920px) — Strictly scoped to site-content so site-header is 100% untouched */
.woocommerce.archive .site-content > .ast-container,
.woocommerce-page.archive .site-content > .ast-container,
.woocommerce.archive #content > .ast-container,
.woocommerce-page.archive #content > .ast-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 16px 14px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
    box-sizing: border-box;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* ==========================================================================
   ELIMINATE NESTED BORDER BOXES (Astra Separate Container Reset)
   ========================================================================== */
.ast-separate-container.woocommerce.archive .ast-article-single,
.ast-separate-container.woocommerce.archive .ast-woocommerce-container,
.ast-separate-container.woocommerce.archive .site-main,
.ast-separate-container.woocommerce.archive .entry-content,
.ast-separate-container.woocommerce-page.archive .ast-article-single,
.ast-separate-container.woocommerce-page.archive .ast-woocommerce-container,
.ast-separate-container.woocommerce-page.archive .site-main,
.ast-separate-container.woocommerce-page.archive .entry-content,
.woocommerce.archive #primary .ast-article-single,
.woocommerce.archive #primary .ast-woocommerce-container,
.woocommerce.archive #primary .site-main,
.woocommerce.archive #primary .entry-content,
.woocommerce.archive #primary .ast-article-post {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ==========================================================================
   LEFT PANEL: FILTER SIDEBAR (#secondary) — Single Unified White Panel
   ========================================================================== */
.woocommerce.archive #secondary,
.woocommerce-page.archive #secondary {
    flex: 0 0 290px !important;
    width: 290px !important;
    background: var(--ceepax-card) !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: var(--ceepax-radius) !important;
    box-shadow: var(--ceepax-shadow-card) !important;
    padding: 18px 16px !important;
    box-sizing: border-box !important;
    position: sticky !important;
    top: 20px !important;
    margin: 0 !important;
}

/* Reset inner sidebar containers */
.woocommerce.archive #secondary .widget-area,
.woocommerce.archive #secondary .ast-left-sidebar,
.woocommerce.archive #secondary .sidebar-main,
.woocommerce-page.archive #secondary .widget-area,
.woocommerce-page.archive #secondary .ast-left-sidebar,
.woocommerce-page.archive #secondary .sidebar-main {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Sidebar Widgets */
.woocommerce.archive #secondary .widget,
.woocommerce-page.archive #secondary .widget,
.woocommerce #secondary .widget,
.woocommerce-page #secondary .widget {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 0 18px 0 !important;
    margin: 0 0 18px 0 !important;
    border-bottom: 1px solid var(--ceepax-border-light) !important;
}

.woocommerce.archive #secondary .widget:last-child,
.woocommerce-page.archive #secondary .widget:last-child,
.woocommerce #secondary .widget:last-child,
.woocommerce-page #secondary .widget:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Hide product lists, featured product blocks, and product widgets from sidebar */
.woocommerce #secondary .widget_products,
.woocommerce-page #secondary .widget_products,
.woocommerce #secondary .widget_top_rated_products,
.woocommerce-page #secondary .widget_top_rated_products,
.woocommerce #secondary .widget_recently_viewed_products,
.woocommerce-page #secondary .widget_recently_viewed_products,
.woocommerce #secondary .widget_recent_reviews,
.woocommerce-page #secondary .widget_recent_reviews,
.woocommerce #secondary .product_list_widget,
.woocommerce-page #secondary .product_list_widget,
.woocommerce #secondary .wc-block-grid,
.woocommerce-page #secondary .wc-block-grid,
.woocommerce #secondary .wc-block-products,
.woocommerce-page #secondary .wc-block-products,
.woocommerce #secondary .wc-block-featured-products,
.woocommerce-page #secondary .wc-block-featured-products,
.woocommerce #secondary .wp-block-woocommerce-product-new,
.woocommerce-page #secondary .wp-block-woocommerce-product-new,
.woocommerce #secondary .wp-block-woocommerce-all-products,
.woocommerce-page #secondary .wp-block-woocommerce-all-products,
.woocommerce #secondary .wp-block-woocommerce-single-product,
.woocommerce-page #secondary .wp-block-woocommerce-single-product,
.woocommerce #secondary .wp-block-woocommerce-products,
.woocommerce-page #secondary .wp-block-woocommerce-products,
.woocommerce #secondary .widget:has(.product_list_widget),
.woocommerce-page #secondary .widget:has(.product_list_widget),
.woocommerce #secondary .widget:has(.wc-block-grid),
.woocommerce-page #secondary .widget:has(.wc-block-grid),
.woocommerce #secondary .widget:has(.wc-block-products),
.woocommerce-page #secondary .widget:has(.wc-block-products),
.woocommerce #secondary .widget:has(.wp-block-woocommerce-all-products),
.woocommerce-page #secondary .widget:has(.wp-block-woocommerce-all-products),
.woocommerce #secondary .widget:has(.wp-block-woocommerce-product-new),
.woocommerce-page #secondary .widget:has(.wp-block-woocommerce-product-new),
.woocommerce #secondary .widget:has(.wp-block-woocommerce-products),
.woocommerce-page #secondary .widget:has(.wp-block-woocommerce-products),
.woocommerce #secondary .widget:has(.attachment-woocommerce_thumbnail),
.woocommerce-page #secondary .widget:has(.attachment-woocommerce_thumbnail) {
    display: none !important;
}

/* Sidebar Widget Headings */
.woocommerce.archive #secondary .widget-title,
.woocommerce-page.archive #secondary .widget-title {
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: var(--ceepax-text-main) !important;
    border-bottom: 1px solid var(--ceepax-border-light) !important;
    padding-bottom: 8px !important;
    margin-bottom: 12px !important;
}

/* Product Search Widget in Sidebar */
.woocommerce.archive #secondary .widget_product_search form,
.woocommerce.archive #secondary .widget_search form {
    display: flex !important;
    gap: 4px !important;
}

.woocommerce.archive #secondary .widget_product_search input[type="search"],
.woocommerce.archive #secondary .widget_search input[type="search"],
.woocommerce.archive #secondary .widget_product_search input[type="text"] {
    flex: 1 !important;
    height: 36px !important;
    padding: 6px 10px !important;
    font-size: 13px !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: var(--ceepax-radius) !important;
    background: #ffffff !important;
    color: var(--ceepax-text-main) !important;
}

.woocommerce.archive #secondary .widget_product_search button,
.woocommerce.archive #secondary .widget_search button,
.woocommerce.archive #secondary .widget_product_search input[type="submit"] {
    height: 36px !important;
    padding: 0 14px !important;
    background: var(--ceepax-green-dk) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: var(--ceepax-radius) !important;
    cursor: pointer !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

/* Categories & Filter Lists (Hierarchical & Flat) */
.woocommerce #secondary > ul,
.woocommerce-page #secondary > ul,
.woocommerce.archive #secondary > ul,
.woocommerce-page.archive #secondary > ul,
.woocommerce #secondary .widget > ul,
.woocommerce-page #secondary .widget > ul,
.woocommerce #secondary .product-categories,
.woocommerce #secondary .wc-block-product-categories-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Category Item (Flex with wrap so children drop onto next line) */
.woocommerce #secondary ul li,
.woocommerce-page #secondary ul li,
.woocommerce.archive #secondary ul li,
.woocommerce-page.archive #secondary ul li,
.woocommerce #secondary .product-categories li,
.woocommerce #secondary .wc-block-product-categories-list-item {
    padding: 7px 0 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: var(--ceepax-text-main) !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 1px solid #f2f2f2 !important;
    position: relative !important;
}

.woocommerce #secondary ul li:last-child,
.woocommerce-page #secondary ul li:last-child {
    border-bottom: none !important;
}

/* Category Anchor Link */
.woocommerce #secondary ul li a,
.woocommerce-page #secondary ul li a,
.woocommerce.archive #secondary ul li a,
.woocommerce-page.archive #secondary ul li a,
.woocommerce #secondary .product-categories li a,
.woocommerce #secondary .wc-block-product-categories-list-item__name {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding-right: 8px !important;
    color: var(--ceepax-text-main) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    word-break: break-word !important;
    transition: color 0.2s ease !important;
}

.woocommerce #secondary ul li a:hover,
.woocommerce-page #secondary ul li a:hover,
.woocommerce #secondary .product-categories li a:hover {
    color: var(--ceepax-orange) !important;
}

/* Current / Active Category */
.woocommerce #secondary ul li.current-cat > a,
.woocommerce-page #secondary ul li.current-cat > a,
.woocommerce #secondary ul li.current-cat-parent > a,
.woocommerce #secondary ul li.is-active > a {
    color: var(--ceepax-orange) !important;
    font-weight: 700 !important;
}

/* Category Count Badge */
.woocommerce #secondary ul li .count,
.woocommerce-page #secondary ul li .count,
.woocommerce.archive #secondary ul li .count,
.woocommerce-page.archive #secondary ul li .count,
.woocommerce #secondary .wc-block-product-categories-list-item__count {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    color: var(--ceepax-text-muted) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    background: #f1f3f6 !important;
    padding: 2px 7px !important;
    border-radius: 10px !important;
    margin-left: auto !important;
    line-height: 1.2 !important;
}

.woocommerce #secondary ul li.current-cat > .count {
    background: rgba(239, 127, 26, 0.15) !important;
    color: var(--ceepax-orange-dk) !important;
}

/* Nested Subcategories (ul.children / depth lists) */
.woocommerce #secondary ul.children,
.woocommerce-page #secondary ul.children,
.woocommerce.archive #secondary ul.children,
.woocommerce-page.archive #secondary ul.children,
.woocommerce #secondary ul li ul,
.woocommerce-page #secondary ul li ul,
.woocommerce #secondary .wc-block-product-categories-list--depth-1,
.woocommerce #secondary .wc-block-product-categories-list--depth-2,
.woocommerce #secondary .wc-block-product-categories-list--depth-3 {
    flex: 0 0 100% !important;
    width: 100% !important;
    margin: 6px 0 4px 4px !important;
    padding: 0 0 0 14px !important;
    border-left: 2px solid #e0e3e8 !important;
    box-sizing: border-box !important;
    list-style: none !important;
}

.woocommerce #secondary ul.children li,
.woocommerce-page #secondary ul.children li,
.woocommerce.archive #secondary ul.children li,
.woocommerce-page.archive #secondary ul.children li,
.woocommerce #secondary ul li ul li {
    padding: 5px 0 5px 4px !important;
    font-size: 12.5px !important;
    border-bottom: 1px dashed #f0f0f0 !important;
}

.woocommerce #secondary ul.children li a,
.woocommerce-page #secondary ul.children li a,
.woocommerce.archive #secondary ul.children li a,
.woocommerce-page.archive #secondary ul.children li a,
.woocommerce #secondary ul li ul li a {
    padding-left: 2px !important;
    color: #444444 !important;
    font-size: 12.5px !important;
}

.woocommerce #secondary ul.children li:last-child,
.woocommerce-page #secondary ul.children li:last-child,
.woocommerce.archive #secondary ul.children li:last-child,
.woocommerce-page.archive #secondary ul.children li:last-child,
.woocommerce #secondary ul li ul li:last-child {
    border-bottom: none !important;
}

/* ==========================================================================
   PRICE FILTER WIDGET & GUTENBERG BLOCK (Min & Max Price Full-Visibility Fix)
   ========================================================================== */

/* Wrapper & Block Containers */
.woocommerce .widget_price_filter .price_slider_wrapper,
.wc-block-price-filter,
.wc-block-components-price-slider,
.wp-block-woocommerce-price-filter,
.wc-block-price-slider {
    padding-top: 6px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Slider Track & Range */
.woocommerce .widget_price_filter .ui-slider-horizontal,
.wc-block-price-filter__range-input-wrapper,
.wc-block-components-price-slider__range-input-wrapper {
    height: 6px !important;
    background: #e4e7ec !important;
    border: none !important;
    border-radius: 4px !important;
    margin: 14px 0 18px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* Remove WooCommerce block pseudo-element shadow track causing grey line underneath */
.wc-block-price-filter__range-input-wrapper:before,
.wc-block-components-price-slider__range-input-wrapper:before {
    display: none !important;
    content: none !important;
}

/* Active Range Progress Bar (Matches track height exactly) */
.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
.wc-block-price-filter__range-input-progress,
.wc-block-components-price-slider__range-input-progress {
    height: 6px !important;
    top: 0 !important;
    bottom: 0 !important;
    background: var(--ceepax-green) !important;
    border-radius: 4px !important;
}

/* Slider Knobs / Thumbs */
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    background: var(--ceepax-green) !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25) !important;
    top: -5px !important;
    cursor: pointer !important;
    outline: none !important;
}

.wc-block-components-price-slider__range-input::-webkit-slider-thumb,
.wc-block-price-filter__range-input::-webkit-slider-thumb {
    appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    background: var(--ceepax-green) !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25) !important;
    cursor: pointer !important;
    margin-top: -5px !important;
}

.wc-block-components-price-slider__range-input::-moz-range-thumb,
.wc-block-price-filter__range-input::-moz-range-thumb {
    width: 16px !important;
    height: 16px !important;
    border-radius: 50% !important;
    background: var(--ceepax-green) !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25) !important;
    cursor: pointer !important;
}

/* Gutenberg Block Price Filter Controls Container (Space-between: Min Left, Max Right) */
.wc-block-price-filter__controls,
.wc-block-components-price-slider__controls,
.wc-block-components-price-slider--is-input-inline .wc-block-components-price-slider__controls,
.woocommerce .widget_price_filter .price_slider_amount {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 12px 0 0 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* Individual Control Items (50% equal width each) */
.wc-block-price-filter__control,
.wc-block-components-price-slider__control {
    flex: 1 1 0 !important;
    width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* Price Input Boxes */
.wc-block-price-filter__amount,
.wc-block-components-price-slider__amount,
.wc-block-form-text-input,
.wc-block-price-filter__control input,
.wc-block-components-price-slider__control input,
.woocommerce .widget_price_filter input[type="text"],
.woocommerce .widget_price_filter input#min_price,
.woocommerce .widget_price_filter input#max_price,
.woocommerce .widget_price_filter .min-price,
.woocommerce .widget_price_filter .max-price,
.woocommerce .widget_price_filter .price_slider_amount input {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    padding: 4px 6px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: var(--ceepax-text-main) !important;
    background: #ffffff !important;
    border: 1.5px solid var(--ceepax-border) !important;
    border-radius: 4px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    line-height: 24px !important;
    display: block !important;
    margin: 0 !important;
    letter-spacing: -0.2px !important;
}

.wc-block-price-filter__control input:focus,
.wc-block-components-price-slider__control input:focus,
.woocommerce .widget_price_filter input[type="text"]:focus,
.woocommerce .widget_price_filter input#min_price:focus,
.woocommerce .widget_price_filter input#max_price:focus {
    border-color: var(--ceepax-orange) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(239, 127, 26, 0.15) !important;
}

/* Min / Max Labels */
.wc-block-components-price-slider__label,
.wc-block-price-filter__control label,
.woocommerce .widget_price_filter .price_slider_amount .price_label {
    display: block !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: var(--ceepax-text-muted) !important;
    margin-top: 5px !important;
    margin-bottom: 0 !important;
    text-align: center !important;
    width: 100% !important;
    line-height: 1.3 !important;
}

/* Action Buttons (Apply / Reset) */
.wc-block-components-price-slider__actions {
    margin-top: 10px !important;
    display: flex !important;
    gap: 8px !important;
    width: 100% !important;
}

.wc-block-price-filter__button,
.wc-block-components-price-slider__button,
.woocommerce .widget_price_filter .price_slider_amount .button {
    background: var(--ceepax-orange) !important;
    color: #ffffff !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 8px 16px !important;
    border-radius: 3px !important;
    border: none !important;
    cursor: pointer !important;
    margin-top: 6px !important;
    width: 100% !important;
    transition: background 0.2s ease !important;
}

.wc-block-price-filter__button:hover,
.wc-block-components-price-slider__button:hover,
.woocommerce .widget_price_filter .price_slider_amount .button:hover {
    background: var(--ceepax-orange-dk) !important;
}

/* ==========================================================================
   RIGHT PANEL: PRODUCT ARCHIVE GRID (#primary) — Single Unified White Panel
   ========================================================================== */
.woocommerce.archive #primary,
.woocommerce-page.archive #primary {
    flex: 1 !important;
    min-width: 0 !important;
    background: var(--ceepax-card) !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: var(--ceepax-radius) !important;
    box-shadow: var(--ceepax-shadow-card) !important;
    padding: 24px 22px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

/* Breadcrumbs inside #primary */
.woocommerce.archive #primary .woocommerce-breadcrumb,
.woocommerce.archive #primary .ast-breadcrumbs,
.woocommerce-page.archive #primary .woocommerce-breadcrumb {
    font-size: 12px !important;
    color: var(--ceepax-text-muted) !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.woocommerce.archive #primary .woocommerce-breadcrumb a,
.woocommerce-page.archive #primary .woocommerce-breadcrumb a {
    color: var(--ceepax-text-muted) !important;
    text-decoration: none !important;
}

.woocommerce.archive #primary .woocommerce-breadcrumb a:hover {
    color: var(--ceepax-orange) !important;
}

/* Hide Page Heading inside Shop & Category Archives */
.woocommerce.archive .woocommerce-products-header__title,
.woocommerce-page.archive .woocommerce-products-header__title,
.woocommerce.archive .page-title,
.woocommerce-page.archive .page-title,
.woocommerce-products-header .page-title,
.woocommerce.archive #primary .woocommerce-products-header__title.page-title {
    display: none !important;
}

/* Results Count & Ordering Topbar */
.woocommerce.archive .woocommerce-result-count {
    font-size: 13px !important;
    color: var(--ceepax-text-muted) !important;
    margin: 0 0 14px 0 !important;
    line-height: 34px !important;
}

.woocommerce.archive .woocommerce-ordering {
    margin: 0 0 14px 0 !important;
}

.woocommerce.archive .woocommerce-ordering select {
    padding: 7px 12px !important;
    font-size: 13px !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: var(--ceepax-radius) !important;
    background-color: #ffffff !important;
    color: var(--ceepax-text-main) !important;
    outline: none !important;
    cursor: pointer !important;
}

.woocommerce.archive .woocommerce-ordering select:focus {
    border-color: var(--ceepax-orange) !important;
}

/* ==========================================================================
   Shop & Category Top Promo Banner (Flipkart Style)
   ========================================================================== */
.ceepax-archive-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    margin-bottom: 20px;
    border-radius: var(--ceepax-radius);
    background: linear-gradient(135deg, #2c3140, #14161c);
    color: #ffffff;
    box-shadow: var(--ceepax-shadow-card);
}

.ceepax-archive-banner--pet {
    background: linear-gradient(135deg, #1e4fd6, #0d2d88);
}

.ceepax-archive-banner--poultry {
    background: linear-gradient(135deg, #c8620c, #7a3a04);
}

.ceepax-archive-banner--livestock {
    background: linear-gradient(135deg, #3f7d28, #1e4b10);
}

.ceepax-archive-banner__eyebrow {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 4px 0;
}

.ceepax-archive-banner__title {
    font-size: 17px;
    font-weight: 800;
    color: #ffffff !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.25;
}

.ceepax-archive-banner__copy {
    font-size: 12.5px;
    color: rgba(255, 255, 255, 0.9);
    margin: 0;
    line-height: 1.4;
}

@media (max-width: 600px) {
    .ceepax-archive-banner {
        padding: 12px 14px;
        margin-bottom: 14px;
    }
    .ceepax-archive-banner__title {
        font-size: 15px;
    }
    .ceepax-archive-banner__copy {
        font-size: 12px;
    }
}

/* ==========================================================================
   FLIPKART-STYLE PRODUCT CARDS & ARCHIVE GRID
   ========================================================================== */
.woocommerce.archive ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
    border: none !important;
}

/* Individual Product Card */
.woocommerce.archive ul.products li.product {
    background: var(--ceepax-card) !important;
    border: 1px solid var(--ceepax-border-light) !important;
    border-radius: var(--ceepax-radius) !important;
    padding: 14px 12px 12px !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
    position: relative !important;
}

.woocommerce.archive ul.products li.product:hover {
    transform: translateY(-3px) !important;
    box-shadow: var(--ceepax-shadow-hover) !important;
    border-color: var(--ceepax-border) !important;
}

/* Product Image Framing */
.woocommerce.archive ul.products li.product .woocommerce-loop-product__link {
    display: block !important;
    text-decoration: none !important;
    color: inherit !important;
}

.woocommerce.archive ul.products li.product img {
    height: 160px !important;
    width: 100% !important;
    object-fit: contain !important;
    margin: 0 auto 10px !important;
    display: block !important;
}

/* Product Title (2-Line Clamp) */
.woocommerce.archive ul.products li.product .woocommerce-loop-product__title {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: var(--ceepax-text-main) !important;
    line-height: 1.35 !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 36px !important;
    text-align: center !important;
}

/* Price Formatting */
.woocommerce.archive ul.products li.product .price {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: var(--ceepax-text-main) !important;
    margin: 0 0 10px 0 !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 6px !important;
}

.woocommerce.archive ul.products li.product .price del {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: var(--ceepax-text-strike) !important;
    text-decoration: line-through !important;
}

.woocommerce.archive ul.products li.product .price ins {
    text-decoration: none !important;
    color: var(--ceepax-text-main) !important;
}

/* On-Sale Badge */
.woocommerce.archive ul.products li.product .onsale {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    margin: 0 !important;
    padding: 2px 7px !important;
    background: var(--ceepax-green-dk) !important;
    color: #ffffff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border-radius: 3px !important;
    line-height: 1.4 !important;
    min-height: auto !important;
    min-width: auto !important;
}

/* Add to Cart / Select Options Button */
.woocommerce.archive ul.products li.product .button {
    margin-top: auto !important;
    width: 100% !important;
    background: var(--ceepax-orange) !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 8px 12px !important;
    border-radius: 3px !important;
    border: none !important;
    text-align: center !important;
    transition: background 0.2s ease !important;
    box-sizing: border-box !important;
}

.woocommerce.archive ul.products li.product .button:hover {
    background: var(--ceepax-orange-dk) !important;
    color: #ffffff !important;
}

/* Pagination */
.woocommerce.archive nav.woocommerce-pagination ul {
    display: flex !important;
    justify-content: center !important;
    gap: 6px !important;
    border: none !important;
    margin-top: 24px !important;
    padding: 0 !important;
}

.woocommerce.archive nav.woocommerce-pagination ul li {
    border: none !important;
}

.woocommerce.archive nav.woocommerce-pagination ul li a,
.woocommerce.archive nav.woocommerce-pagination ul li span {
    padding: 6px 12px !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: 4px !important;
    background: var(--ceepax-card) !important;
    color: var(--ceepax-text-main) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.woocommerce.archive nav.woocommerce-pagination ul li span.current {
    background: var(--ceepax-orange) !important;
    color: #ffffff !important;
    border-color: var(--ceepax-orange) !important;
}

/* ==========================================================================
   MOBILE & TABLET RESPONSIVENESS (< 920px)
   ========================================================================== */
@media (max-width: 920px) {
    .woocommerce.archive .site-content > .ast-container,
    .woocommerce-page.archive .site-content > .ast-container,
    .woocommerce.archive #content > .ast-container,
    .woocommerce-page.archive #content > .ast-container {
        flex-direction: column !important;
        gap: 12px !important;
        padding: 10px !important;
    }

    .woocommerce.archive #secondary,
    .woocommerce-page.archive #secondary {
        flex: 0 0 100% !important;
        width: 100% !important;
        position: static !important;
        padding: 14px 12px !important;
    }

    .woocommerce.archive #primary,
    .woocommerce-page.archive #primary {
        padding: 16px 14px !important;
    }

    .woocommerce.archive ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }
}

/* ==========================================================================
   MY ACCOUNT PAGE (Consistent Flipkart / CEEPax Styling - Logged In & Logged Out)
   ========================================================================== */

/* Outer Canvas & Container */
body.woocommerce-account,
body.woocommerce-account .site-content {
    background-color: var(--ceepax-bg) !important;
}

.woocommerce-account .site-content > .ast-container,
.woocommerce-account #content > .ast-container {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 20px 14px 40px !important;
    box-sizing: border-box !important;
}

/* Reset Astra container wrapper so cards render cleanly */
.ast-separate-container.woocommerce-account .ast-article-single,
.ast-separate-container.woocommerce-account .ast-article-post,
.ast-separate-container.woocommerce-account .entry-content,
.ast-separate-container.woocommerce-account #primary,
.woocommerce-account .ast-article-single {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Page Title */
.woocommerce-account .entry-title {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: var(--ceepax-text-main) !important;
    margin-bottom: 24px !important;
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

/* --------------------------------------------------------------------------
   1. LOGGED-OUT: LOGIN & REGISTER FORMS (#customer_login)
   -------------------------------------------------------------------------- */
.woocommerce-account #customer_login {
    display: flex !important;
    gap: 24px !important;
    justify-content: center !important;
    align-items: stretch !important;
    margin: 0 auto !important;
    max-width: 100% !important;
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2,
.woocommerce-account #customer_login .col-1,
.woocommerce-account #customer_login .col-2 {
    flex: 1 1 0 !important;
    max-width: 540px !important;
    width: 100% !important;
    background: var(--ceepax-card) !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: 6px !important;
    box-shadow: var(--ceepax-shadow-card) !important;
    padding: 28px 24px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Form Section Titles (Login / Register) */
.woocommerce-account #customer_login h2 {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: var(--ceepax-text-main) !important;
    margin: 0 0 18px 0 !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid var(--ceepax-border-light) !important;
    letter-spacing: -0.2px !important;
}

/* Form Rows & Inputs */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register,
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account form.login,
.woocommerce-account form.register {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
}

.woocommerce-account .woocommerce-form-row,
.woocommerce-account .form-row {
    margin-bottom: 16px !important;
    padding: 0 !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-form-row label,
.woocommerce-account .form-row label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--ceepax-text-main) !important;
    margin-bottom: 6px !important;
}

.woocommerce-account .required {
    color: #e53935 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.woocommerce-account .woocommerce-Input {
    width: 100% !important;
    height: 42px !important;
    padding: 8px 14px !important;
    font-size: 14px !important;
    color: var(--ceepax-text-main) !important;
    background: #ffffff !important;
    border: 1.5px solid var(--ceepax-border) !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-account input[type="text"]:focus,
.woocommerce-account input[type="email"]:focus,
.woocommerce-account input[type="password"]:focus,
.woocommerce-account input[type="tel"]:focus,
.woocommerce-account .woocommerce-Input:focus {
    border-color: var(--ceepax-orange) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(239, 127, 26, 0.15) !important;
}

/* Remember Me Checkbox */
.woocommerce-account .woocommerce-form-login__rememberme {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    color: var(--ceepax-text-muted) !important;
    cursor: pointer !important;
    margin: 4px 0 16px 0 !important;
    font-weight: 500 !important;
}

.woocommerce-account .woocommerce-form-login__rememberme input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    accent-color: var(--ceepax-orange) !important;
    cursor: pointer !important;
}

/* Submit Buttons */
.woocommerce-account button.woocommerce-form-login__submit,
.woocommerce-account button.woocommerce-form-register__submit,
.woocommerce-account button.woocommerce-Button,
.woocommerce-account input.woocommerce-Button,
.woocommerce-account .woocommerce-EditAccountForm button[type="submit"] {
    width: 100% !important;
    height: 42px !important;
    background: var(--ceepax-orange) !important;
    color: #ffffff !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    padding: 0 20px !important;
    transition: background 0.2s ease, transform 0.1s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 8px !important;
}

.woocommerce-account button.woocommerce-form-login__submit:hover,
.woocommerce-account button.woocommerce-form-register__submit:hover,
.woocommerce-account button.woocommerce-Button:hover,
.woocommerce-account .woocommerce-EditAccountForm button[type="submit"]:hover {
    background: var(--ceepax-orange-dk) !important;
    color: #ffffff !important;
}

/* Links (Lost Password, Privacy Policy) */
.woocommerce-account .woocommerce-LostPassword {
    margin-top: 14px !important;
    text-align: center !important;
}

.woocommerce-account .woocommerce-LostPassword a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--ceepax-blue) !important;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-LostPassword a:hover {
    color: var(--ceepax-orange) !important;
    text-decoration: underline !important;
}

.woocommerce-account .woocommerce-privacy-policy-text p {
    font-size: 12px !important;
    line-height: 1.55 !important;
    color: var(--ceepax-text-muted) !important;
    margin: 10px 0 16px 0 !important;
}

.woocommerce-account .woocommerce-privacy-policy-text a {
    color: var(--ceepax-green-dk) !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

/* --------------------------------------------------------------------------
   2. LOGGED-IN: DASHBOARD & MY ACCOUNT PORTAL
   -------------------------------------------------------------------------- */
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation),
.woocommerce-account .woocommerce {
    display: flex !important;
    gap: 20px !important;
    align-items: flex-start !important;
    width: 100% !important;
}

/* When logged out, #customer_login should fill full width */
.woocommerce-account .woocommerce:has(#customer_login) {
    display: block !important;
}

/* Left Navigation Sidebar */
.woocommerce-account .woocommerce-MyAccount-navigation {
    flex: 0 0 250px !important;
    width: 250px !important;
    background: var(--ceepax-card) !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: 6px !important;
    box-shadow: var(--ceepax-shadow-card) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link {
    border-bottom: 1px solid var(--ceepax-border-light) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link:last-child {
    border-bottom: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a {
    display: block !important;
    padding: 13px 18px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: var(--ceepax-text-main) !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
    transition: all 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover {
    background: #f8fafc !important;
    color: var(--ceepax-orange) !important;
    padding-left: 22px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a {
    background: #fff7ef !important;
    color: var(--ceepax-orange) !important;
    border-left-color: var(--ceepax-orange) !important;
    font-weight: 700 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a {
    color: #d32f2f !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    background: #fff5f5 !important;
    color: #c62828 !important;
}

/* Right Content Area */
.woocommerce-account .woocommerce-MyAccount-content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    background: var(--ceepax-card) !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: 6px !important;
    box-shadow: var(--ceepax-shadow-card) !important;
    padding: 26px 28px !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    color: var(--ceepax-text-main) !important;
    line-height: 1.6 !important;
}

.woocommerce-account .woocommerce-MyAccount-content p {
    margin: 0 0 16px 0 !important;
    font-size: 14px !important;
    color: var(--ceepax-text-main) !important;
}

.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--ceepax-blue) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
    color: var(--ceepax-orange) !important;
    text-decoration: underline !important;
}

/* Notices & Alert Messages */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    border-radius: 4px !important;
    padding: 12px 18px !important;
    font-size: 13.5px !important;
    margin-bottom: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.woocommerce-account .woocommerce-message {
    background: #eef8ec !important;
    border-left: 4px solid var(--ceepax-green) !important;
    color: var(--ceepax-green-dk) !important;
}

.woocommerce-account .woocommerce-info {
    background: #eff4fe !important;
    border-left: 4px solid var(--ceepax-blue) !important;
    color: #1a41a8 !important;
}

.woocommerce-account .woocommerce-error {
    background: #fdeeee !important;
    border-left: 4px solid #e53935 !important;
    color: #b71c1c !important;
}

/* Orders Table */
.woocommerce-account table.woocommerce-orders-table,
.woocommerce-account table.my_account_orders {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 16px 0 !important;
    font-size: 13.5px !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}

.woocommerce-account table.woocommerce-orders-table th,
.woocommerce-account table.my_account_orders th {
    background: #f8f9fa !important;
    color: var(--ceepax-text-main) !important;
    font-weight: 700 !important;
    font-size: 12.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--ceepax-border) !important;
    text-align: left !important;
}

.woocommerce-account table.woocommerce-orders-table td,
.woocommerce-account table.my_account_orders td {
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--ceepax-border-light) !important;
    vertical-align: middle !important;
}

.woocommerce-account table.woocommerce-orders-table tr:hover td {
    background: #fafbfc !important;
}

.woocommerce-account table.woocommerce-orders-table .button,
.woocommerce-account table.my_account_orders .button {
    padding: 6px 14px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    background: var(--ceepax-orange) !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

/* Addresses Section */
.woocommerce-account .woocommerce-Addresses {
    display: flex !important;
    gap: 20px !important;
    margin-top: 16px !important;
}

.woocommerce-account .woocommerce-Address {
    flex: 1 1 0 !important;
    background: #fdfdfd !important;
    border: 1px solid var(--ceepax-border) !important;
    border-radius: 6px !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

.woocommerce-account .woocommerce-Address-title h3 {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--ceepax-text-main) !important;
    margin: 0 0 12px 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.woocommerce-account .woocommerce-Address-title .edit {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: var(--ceepax-orange) !important;
    text-decoration: none !important;
}

.woocommerce-account address {
    font-style: normal !important;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    color: var(--ceepax-text-muted) !important;
}

/* Edit Account Details Form */
.woocommerce-account .woocommerce-EditAccountForm fieldset {
    border: 1px solid var(--ceepax-border-light) !important;
    border-radius: 6px !important;
    padding: 20px 22px !important;
    margin: 24px 0 18px 0 !important;
}

.woocommerce-account .woocommerce-EditAccountForm legend {
    font-weight: 700 !important;
    font-size: 14px !important;
    color: var(--ceepax-text-main) !important;
    padding: 0 8px !important;
}

/* Mobile Responsiveness for My Account */
@media (max-width: 768px) {
    .woocommerce-account #customer_login {
        flex-direction: column !important;
        gap: 20px !important;
    }

    .woocommerce-account #customer_login .u-column1,
    .woocommerce-account #customer_login .u-column2,
    .woocommerce-account #customer_login .col-1,
    .woocommerce-account #customer_login .col-2 {
        max-width: 100% !important;
        padding: 20px 16px !important;
    }

    .woocommerce-account .woocommerce {
        flex-direction: column !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        flex: 0 0 100% !important;
        width: 100% !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 20px 16px !important;
    }

    .woocommerce-account .woocommerce-Addresses {
        flex-direction: column !important;
    }
}
