/*
Theme Name: 	   Afriyah Global - Professional E-commerce
Text Domain: 	   afriyah
Version:            3.1.0
Tested up to:       6.8
Requires at least:  6.8
Requires PHP:       8.2
Author:             Afriyah Global Team
Author URI:         https://afriyahglobal.com/
Theme URI:          https://afriyahglobal.com/
Description:        Afriyah is a premium Pan-African e-commerce WordPress theme optimized for mobile-first shopping. Features include PWA capabilities, dynamic product tracking, quality assurance badges, FOMO elements, and seamless integration with African payment gateways. Designed for delivering consumer packaged goods to 54 markets across Africa.
Tags:               one-column, two-columns, right-sidebar, flexible-header, custom-background, custom-header, custom-menu, editor-style, featured-images, footer-widgets, post-formats, theme-options, threaded-comments, translation-ready, full-width-template, custom-logo, blog, e-commerce, portfolio, woocommerce, mobile-first
License: GPLv3 or later
License URI:  https://www.gnu.org/licenses/gpl-3.0.html

This theme, like WordPress, is licensed under the GPL.
Premium Pan-African e-commerce theme by Afriyah Global.
*/

/* Wishlist Notification Animation */
@keyframes slideInRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* ============================================================
   SHOPIRE CORE STYLES
   ============================================================ */

.iconbox:hover a {
    color: #fff;
}

.iconbox a {
    text-decoration: none;
    color: var(--wf-secondary-color);
}

.wp-block-details summary {
    font-weight: 600;
    padding: 10px;
}

.wp-block-latest-comments__comment a {
    text-decoration: none;
}

.wp-block-verse {
    padding: 10px;
}

.wp-block-archives-list a {
    text-decoration: none;
}

.has-background.wp-block-read-more,
.has-background.post-navigation-link-next,
.has-background.post-navigation-link-previous {
    padding: 0.25em 1.375em;
}

body .wp-block-woocommerce-customer-account a .wc-block-customer-account__account-icon {
    height: 2rem;
    width: 2rem;
}

.wp-block-avatar img {
    border-radius: 50%;
}

.wp-block-avatar:hover img {
    -webkit-transform: scale(1.07);
    transform: scale(1.07);
}

.post-navigation-link-next a,
.post-navigation-link-previous a {
    text-decoration: none;
}

.wp-block-woocommerce-single-product .wp-block-post-title a {
    text-decoration: none;
}

.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:hover,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:focus {
    color: #fff;
}

.wp-block-page-list {
    list-style: none;
    padding: 0;
}

.wc-block-grid__products .wc-block-components-product-button__button {
    border-radius: 0;
    text-decoration: none;
}

.wp-block-page-list a {
    color: var(--wf-secondary-color);
    text-decoration: none;
    font-weight: 600;
}

.wc-block-components-product-title a.wc-block-components-product-name:hover,
.wc-block-components-product-title a.wc-block-components-product-name:focus {
    color: var(--wf-main-color);
}

.wp-block-page-list a:hover,
.wp-block-page-list a:focus {
    color: var(--wf-main-color);
}

.wp-block-list {
    padding: 0;
}

.wc-block-components-product-name {
    color: var(--wf-secondary-color);
    text-decoration: none;
    font-weight: 600;
}

.wp-block-list.has-background {
    padding: 1.25em 2.375em;
}

.wp-block-details.has-background {
    padding: 1.25em 2.375em;
}

.wp-block-verse.has-background {
    padding: 1.25em 2.375em;
}

.wp-block-preformatted.has-background {
    padding: 1em;
}

.wp-block-archives {
    list-style: none;
    padding: 0;
}

.wp-block-archives-list a {
    font-weight: 600;
    color: var(--wf-secondary-color);
}

.wp-block-archives-list a:hover,
.wp-block-archives-list a:focus {
    color: var(--wf-main-color);
}

.wp-block-page-list.has-background {
    padding: 1rem;
}

a.wp-block-button__link:hover,
a.wp-block-button__link:focus {
    color: #fff;
    text-decoration: none;
}

.wp-block-button.is-style-outline a.wp-block-button__link {
    color: var(--wf-main-color);
}

.wp-block-latest-comments {
    padding-left: 0;
}

.wp-block-latest-comments li a:not(:hover, :focus) {
    color: var(--wf-secondary-color);
}

.wp-block-latest-comments li a {
    text-decoration: none;
}

.wf_footer ul.product_list_widget li .woocommerce-Price-amount {
    color: var(--wf-main-color);
}

.wf_footer ul.product_list_widget li {
    border-bottom: none;
}

.wf_footer .widget_shopping_cart .button:not(.checkout):not(.add_to_cart_button) {
    background-color: var(--wf-secondary-color);
}

.wf_footer .widget_shopping_cart .button:not(.checkout):not(.add_to_cart_button):hover,
.wf_footer .widget_shopping_cart .button:not(.checkout):not(.add_to_cart_button):focus {
    background-color: var(--wf-secondary-color) !important;
}

.wf_footer .widget_shopping_cart a.checkout:hover,
.wf_footer .widget_shopping_cart a.checkout:focus {
    background-color: var(--wf-main-color) !important;
}

.wf_footer .widget_shopping_cart span.amount {
    color: var(--wf-main-color);
}

.wf_footer .widget_shopping_cart li img {
    object-fit: contain !important;
    padding-right: 10px;
}

.wc-block-mini-cart__footer .wc-block-components-button {
    text-decoration: none;
}

.wf_footer .widget .wc-block-cart-link {
    color: #fff;
    background: var(--wf-main-color);
}


/* ============================================================
   AFRIYAH CUSTOM STYLES & OVERRIDES
   ============================================================ */

:root {
    --wf-main-rgb: 213, 21, 34;
    --wf-secondary-color: #17273B;
}

/* Shop grid layout handled by layout-styles.php and comprehensive fixes */

/* Ensure main content column doesn't overflow */
#wf-main.wf-col-lg-8 {
    overflow: hidden;
    box-sizing: border-box;
}

/* Ensure no weird indentation on loops */
.woocommerce-loop,
.woocommerce .products,
.woocommerce-page .products {
    padding-left: 0;
    margin-left: 0;
}


/* Shop sidebar styles */
.site-main .shop-layout {
    display: grid;
    grid-template-columns: 1fr 280px;
    gap: 40px;
    align-items: start;
    /* Ensure this doesn't leak to cart/checkout */
    width: 100%;
}

.site-main .shop-layout.sidebar-left {
    grid-template-columns: 280px 1fr;
}

.site-main .shop-layout.no-sidebar {
    grid-template-columns: 1fr;
}

.site-main .shop-sidebar {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 25px;
    position: sticky;
    top: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    max-width: 280px;
}

.site-main .shop-content {
    min-width: 0;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .site-main .shop-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .site-main .shop-sidebar {
        display: none;
    }

    .mobile-shop-filters {
        display: block;
        margin-top: 15px;
    }
}

/* Force shop sidebar to show on desktop when present (NOT on mobile) */
@media (min-width: 768px) {
    body.woocommerce-shop #wf-sidebar:not(.af-show-mobile-filters),
    body.tax-product_cat #wf-sidebar:not(.af-show-mobile-filters),
    body.tax-product_tag #wf-sidebar:not(.af-show-mobile-filters) {
        display: block;
        visibility: visible;
        opacity: 1;
    }
}

/* Hide sidebar on mobile */
@media (max-width: 767px) {
    body.woocommerce-shop #wf-sidebar:not(.af-show-mobile-filters),
    body.tax-product_cat #wf-sidebar:not(.af-show-mobile-filters),
    body.tax-product_tag #wf-sidebar:not(.af-show-mobile-filters) {
        display: none;
        visibility: hidden;
    }
}

/* Checkout layout handled in afriyah-comprehensive-fixes-v2.css */

/* Force product images to display */
body.woocommerce-shop .af-product-image img,
body.tax-product_cat .af-product-image img,
body.tax-product_tag .af-product-image img,
body.single-product .af-product-image img {
    display: block;
    visibility: visible;
    opacity: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Ensure product image container allows absolute positioning for quick actions */
body.woocommerce-shop .af-product-image,
body.woocommerce-shop .af-product-card .af-product-image,
body.woocommerce-shop li.product .af-product-image,
body.woocommerce-shop ul.products li.product .af-product-image,
body.tax-product_cat .af-product-image,
body.tax-product_cat .af-product-card .af-product-image,
body.tax-product_cat li.product .af-product-image,
body.tax-product_cat ul.products li.product .af-product-image,
body.tax-product_tag .af-product-image,
body.tax-product_tag .af-product-card .af-product-image,
body.tax-product_tag li.product .af-product-image,
body.tax-product_tag ul.products li.product .af-product-image {
    position: relative;
    overflow: visible;
}

/* Product card sizing handled by comprehensive fixes */

/* Product grid sizing handled by comprehensive fixes */

/* Ensure quick actions are above all other elements */
body.woocommerce-shop .af-quick-actions,
body.woocommerce-shop .af-product-image .af-quick-actions,
body.woocommerce-shop .af-product-card .af-product-image .af-quick-actions,
body.tax-product_cat .af-quick-actions,
body.tax-product_cat .af-product-image .af-quick-actions,
body.tax-product_cat .af-product-card .af-product-image .af-quick-actions,
body.tax-product_tag .af-quick-actions,
body.tax-product_tag .af-product-image .af-quick-actions,
body.tax-product_tag .af-product-card .af-product-image .af-quick-actions {
    z-index: 100;
    position: absolute;
}

/* Ensure quick actions buttons are clickable */
body.woocommerce-shop .af-quick-actions *,
body.woocommerce-shop .af-quick-actions button,
body.woocommerce-shop .af-quick-actions a,
body.woocommerce-shop .af-quick-actions .button,
body.tax-product_cat .af-quick-actions *,
body.tax-product_cat .af-quick-actions button,
body.tax-product_cat .af-quick-actions a,
body.tax-product_cat .af-quick-actions .button,
body.tax-product_tag .af-quick-actions *,
body.tax-product_tag .af-quick-actions button,
body.tax-product_tag .af-quick-actions a,
body.tax-product_tag .af-quick-actions .button {
    z-index: 101;
    position: relative;
    pointer-events: auto;
}

/* Quick action buttons visibility - Base State */
body.woocommerce-shop .af-quick-actions,
body.woocommerce-shop .af-product-image .af-quick-actions,
body.woocommerce-shop .af-product-card .af-quick-actions,
body.woocommerce-shop .product .af-quick-actions,
body.tax-product_cat .af-quick-actions,
body.tax-product_cat .af-product-image .af-quick-actions,
body.tax-product_cat .af-product-card .af-quick-actions,
body.tax-product_cat .product .af-quick-actions,
body.tax-product_tag .af-quick-actions,
body.tax-product_tag .af-product-image .af-quick-actions,
body.tax-product_tag .af-product-card .af-quick-actions,
body.tax-product_tag .product .af-quick-actions {
    display: flex;
    visibility: visible;
    opacity: 1;
    z-index: 10;
    position: absolute;
    right: 8px;
    top: 8px;
    flex-direction: column;
    gap: 6px;
    pointer-events: auto;
}

/* Header--six styles (from Shopire originally, enhanced here) */
.header--six .wf_mobilenav-topbar-content,
.header--six .wf_header-topbar {
    color: #fff;
    background-color: var(--wf-secondary-color);
}

.header--six .wf_mobilenav>.wf-container {
    border-bottom: 1px solid rgba(189, 189, 189, 0.4);
}

.header--six .wf_header-topbar {
    position: relative;
    border-bottom: 1px solid rgba(189, 189, 189, 0.4);
    background-image: url('data:image/png;base64,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');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto;
    z-index: 1;
}

.header--six .wf_header-topbar .widget.widget_none .wp-block-heading,
.header--six .wf_header-topbar .widget.widget_none .widget-title {
    color: #fff;
}

/* Browse Categories Dropdown - Hidden by default, shown when active */
.product-categories {
    position: relative;
}

.product-categories .wf_navbar-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1000;
    background: #fff;
    border: 1px solid rgba(189, 189, 189, 0.4);
    border-radius: 10px;
    margin-top: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    max-height: 70vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.product-categories.active .wf_navbar-nav {
    display: block;
}

/* Mobile Responsive - Browse Categories */
@media (max-width: 991px) {
    .product-categories {
        width: 100%;
        margin-bottom: 10px;
    }

    body .product-categories .wf_navbar-nav {
        position: fixed;
        top: auto;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        max-width: 100%;
        max-height: 60vh;
        border-radius: 20px 20px 0 0;
        margin-top: 0;
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.2);
        transform: translateY(100%);
        transition: transform 0.3s ease-out;
    }

    body .product-categories.active .wf_navbar-nav {
        transform: translateY(0);
    }

    body .product-categories-btn {
        width: 100%;
        padding: 12px 16px;
        font-size: 16px;
        touch-action: manipulation;
        -webkit-tap-highlight-color: rgba(0, 100, 0, 0.1);
    }

    /* Overlay for mobile */
    .product-categories.active::before {
        content: '';
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 999;
        display: block;
    }
}

.header--six .product-categories .wf_navbar-nav .wf_navbar-mainmenu {
    color: var(--wf-secondary-color);
    margin-top: 10px;
    border-radius: 10px;
    background-color: #fff;
    border: 1px solid rgba(189, 189, 189, 0.4);
}

/* FOMO Bar Animation */
@keyframes pulse {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.85;
        transform: scale(1.02);
    }
}

.af-fomo-single {
    animation: pulse 2s ease-in-out infinite;
}

/* Mobile Bottom Nav Active State */
body .af-mobile-bottom-nav a.active,
body .af-mobile-bottom-nav button.active {
    color: #006400;
}

.af-mobile-bottom-nav a.active i,
.af-mobile-bottom-nav button.active i {
    color: #006400;
}

/* Product Image Container - Position Badges */
.woocommerce-loop-product__link,
.woocommerce-product-gallery__wrapper {
    position: relative;
}

/* Responsive Images */
img[loading="lazy"] {
    opacity: 0;
    transition: opacity 0.3s;
}

img[loading="lazy"].loaded {
    opacity: 1;
}

/* Trust Badges Responsive */
@media (max-width: 768px) {
    body .af-trust-badges {
        padding: 12px;
        margin: 16px 0;
    }

    body .af-trust-badges img {
        height: 20px;
        padding: 2px;
    }

    body .af-delivery-estimate {
        padding: 12px;
        font-size: 13px;
    }
}

/* Preloader Optimization - Ensure it hides quickly */
body #wf_preloader.wf_preloader,
body .wf_preloader {
    transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
}

body #wf_preloader.wf_preloader.loaded,
body .wf_preloader.loaded {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

body #wf_preloader.wf_preloader.loaded .wf_preloader-animation,
body .wf_preloader.loaded .wf_preloader-animation {
    opacity: 0;
    transition: opacity 0.3s ease-out;
}

/* Force hide preloader after page load */
body.loaded #wf_preloader,
body.loaded .wf_preloader {
    display: none;
}

/* Premium Color Variables */
:root {
    --afriyah-primary: #006400;
    --afriyah-primary-dark: #004d00;
    --afriyah-primary-light: #009900;
    --afriyah-accent: #FFD700;
    --afriyah-accent-dark: #FFA500;
    --afriyah-accent-light: #FFE44D;
    --afriyah-secondary: #ffffff;
    --afriyah-success: #28a745;
    --afriyah-danger: #ff6b6b;
    --afriyah-text: #333333;
    --afriyah-text-light: #666666;
    --afriyah-border: #e0e0e0;
    --afriyah-bg: #f7faf7;
}

/* ============================================================
   CONSOLIDATED FIXES (Cleaned & Refactored)
   ============================================================ */

/* 1. Product Title Styling - Clamp to 3 lines */
.woocommerce-loop-product__title,
.wc-block-grid__product-title,
.wc-block-components-product-title,
ul.products li.product .woocommerce-loop-product__title,
.af-product-title,
.af-product-card .woocommerce-loop-product__title {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: clamp(14px, 2.5vw, 16px);
    line-height: 1.4;
    margin-bottom: 8px;
    color: #333;
    text-decoration: none;
    font-weight: 600;
    padding: 0;
}

.woocommerce-loop-product__title a {
    color: inherit;
    text-decoration: none;
}

/* 2. Button Styling - Rounded & Modern */
body .button,
body .single_add_to_cart_button,
body .af-buy-now-btn,
body .add_to_cart_button,
body .af-btn-primary {
    border-radius: 50px;
    padding: 12px 24px;
    font-weight: 700;
    transition: all 0.3s ease;
    text-transform: none;
    cursor: pointer;
}

body .af-buy-now-btn {
    background: #FFD700;
    color: #1a1a1a;
    border: none;
}

body .af-buy-now-btn:hover {
    background: #e6c200;
}

.single_add_to_cart_button.disabled,
.single_add_to_cart_button:disabled,
.button.disabled,
.button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: #ccc;
}

/* 3. Product Gallery Fixes - CRITICAL */
/* Remove display: block !important to allow sliders to work */
body.single-product .woocommerce-product-gallery {
    opacity: 1;
    background: #fff;
    border-radius: 12px;
    position: relative;
}

.woocommerce-product-gallery__wrapper {
    border-radius: 8px;
    border: 1px solid #f0f0f0;
    overflow: hidden;
}

.woocommerce-product-gallery__image {
    /* Allow FlexSlider to control display */
    overflow: hidden;
}

.woocommerce-product-gallery__image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

/* Thumbnails */
.flex-control-nav.flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
    padding: 0;
}

.flex-control-nav.flex-control-thumbs li {
    width: 60px;
    list-style: none;
    margin-bottom: 5px;
}

.flex-control-nav.flex-control-thumbs img {
    border-radius: 6px;
    opacity: 0.7;
    transition: opacity 0.2s;
    border: 1px solid #eee;
    cursor: pointer;
}

.flex-control-nav.flex-control-thumbs img:hover,
.flex-control-nav.flex-control-thumbs img.flex-active {
    opacity: 1;
    border: 1px solid #006400;
}

/* 6. Top Rated CTA */
.af-view-all-container {
    text-align: center;
    margin: 30px 0;
    width: 100%;
    clear: both;
}

a.af-top-rated-cta,
.af-view-all-container a.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #006400;
    color: #fff;
    padding: 14px 32px;
    border-radius: 50px;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.2s;
}

a.af-top-rated-cta:hover,
.af-view-all-container a.button:hover {
    transform: translateY(-2px);
    background: #005000;
    color: #fff;
}

/* 7. Quick Actions */
body.woocommerce-shop .af-quick-actions,
body.tax-product_cat .af-quick-actions,
body.tax-product_tag .af-quick-actions,
body .af-product-card .af-quick-actions,
body li.product .af-quick-actions,
body .af-product-image .af-quick-actions {
    position: absolute;
    top: 8px;
    right: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    z-index: 100;
    opacity: 1;
    transform: translateX(0);
    transition: all 0.3s ease;
    visibility: visible;
    pointer-events: auto;
}

body.woocommerce-shop .af-product-card:hover .af-quick-actions,
body.woocommerce-shop li.product:hover .af-quick-actions,
body.woocommerce-shop .af-product-image:hover .af-quick-actions,
body.tax-product_cat .af-product-card:hover .af-quick-actions,
body.tax-product_cat li.product:hover .af-quick-actions,
body.tax-product_cat .af-product-image:hover .af-quick-actions,
body.tax-product_tag .af-product-card:hover .af-quick-actions,
body.tax-product_tag li.product:hover .af-quick-actions,
body.tax-product_tag .af-product-image:hover .af-quick-actions {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

body.woocommerce-shop .af-quick-actions button,
body.woocommerce-shop .af-quick-actions a,
body.tax-product_cat .af-quick-actions button,
body.tax-product_cat .af-quick-actions a,
body.tax-product_tag .af-quick-actions button,
body.tax-product_tag .af-quick-actions a,
body .af-product-card .af-quick-actions button,
body .af-product-card .af-quick-actions a,
body li.product .af-quick-actions button,
body li.product .af-quick-actions a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #fff;
    color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #eee;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    font-size: 14px;
    text-decoration: none;
    padding: 0;
    cursor: pointer;
}

body.woocommerce-shop .af-quick-actions button:hover,
body.woocommerce-shop .af-quick-actions a:hover,
body.tax-product_cat .af-quick-actions button:hover,
body.tax-product_cat .af-quick-actions a:hover,
body.tax-product_tag .af-quick-actions button:hover,
body.tax-product_tag .af-quick-actions a:hover,
body .af-product-card .af-quick-actions button:hover,
body .af-product-card .af-quick-actions a:hover,
body li.product .af-quick-actions button:hover,
body li.product .af-quick-actions a:hover {
    background: #006400;
    color: #fff;
}

/* Mobile Quick Actions - Always visible or smaller */
@media (max-width: 768px) {
    .af-quick-actions {
        opacity: 1;
        visibility: visible;
        transform: none;
        top: 8px;
        right: 8px;
    }

    .af-quick-actions button,
    .af-quick-actions a {
        width: 32px;
        height: 32px;
    }
}

/* 8. Variant Swatches */
.variation-swatch img {
    border-radius: 50%;
    border: 2px solid transparent;
    transition: all 0.2s;
    width: 30px;
    height: 30px;
    object-fit: cover;
    display: block;
}

.variation-swatch.selected img,
.variation-swatch:hover img {
    border-color: #006400;
    transform: scale(1.1);
    box-shadow: 0 0 0 2px #006400;
}

/* 9. Search Dropdown Fixes */
.af-search-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 1000;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    display: none;
    /* JS toggles this usually */
}

/* Make sure images are visible in search */
.af-search-dropdown .thumb img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 4px;
    display: block;
}

/* 10. Select Options Popup */
#af-select-options-popup {
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
    display: none;
    /* Hidden by default */
}

#af-select-options-popup.active {
    display: flex;
}

#af-select-options-popup .af-popup-content {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    overflow: hidden;
    max-width: 500px;
    width: 90%;
}

/* 11. Hero Section Visibility */
.af-hero-section {
    display: block;
    visibility: visible;
    opacity: 1;
}

/* 12. Reset WooCommerce Gallery Visibility */
/* Fix "All Images Visible" Bug by ensuring FlexSlider hidden slides are hidden */
.flex-viewport .slides>li {
    /* FlexSlider handles showing the active one, usually sets display: block on active */
    /* We don't force display none here because if JS fails, we want to see images. */
    /* But we definitely don't force display block !important on all of them. */
}

/* Fix Best Sellers Grid Layout */
.af-products-grid.products {
    display: grid;
    grid-template-columns: repeat(var(--af-bestseller-cols-desktop, 4), minmax(0, 1fr));
    gap: 24px;
}

.af-products-grid.products .product {
    width: 100%;
    max-width: 100%;
    margin: 0;
}

/* Header Topbar Hover Effects */
body .wf_header-top-social li a:hover i {
    color: #e62e04;
    /* Red hover */
    transform: scale(1.1);
    transition: all 0.2s ease;
}

body .af-current-currency:hover {
    color: #e62e04;
}

/* --- Shop Page Product Grid Fixes (Robust) --- */
/* Use CSS Grid instead of flexbox to respect customizer settings */
/* Apply to ALL shop product lists with maximum specificity */
/* NOTE: Desktop columns are set via inline styles in archive-product.php */
/* This rule only sets base grid properties, NOT columns */
body.woocommerce-shop ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products,
body.woocommerce-shop .woocommerce ul.products,
body.tax-product_cat .woocommerce ul.products,
body.tax-product_tag .woocommerce ul.products,
.woocommerce-shop ul.products,
.woocommerce-shop .woocommerce ul.products,
.woocommerce-page ul.products,
.woocommerce ul.products {
    display: grid;
    /* Don't set grid-template-columns here - let inline styles control it */
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    box-sizing: border-box;
    /* Ensure no flexbox interference */
    flex-wrap: unset;
    flex-direction: unset;
}

/* Ensure List Items (Cards) use grid layout */
body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product,
body.woocommerce-shop .woocommerce ul.products li.product,
body.tax-product_cat .woocommerce ul.products li.product,
body.tax-product_tag .woocommerce ul.products li.product {
    width: auto;
    max-width: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

/* Mobile: Use mobile columns from customizer */
@media (max-width: 768px) {
    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products,
    body.woocommerce-shop .woocommerce ul.products,
    body.tax-product_cat .woocommerce ul.products,
    body.tax-product_tag .woocommerce ul.products {
        grid-template-columns: repeat(var(--af-shop-cols-mobile, 2), minmax(0, 1fr));
        gap: 16px;
    }
}

/* Tablet: 2 columns */
@media (max-width: 991px) and (min-width: 769px) {
    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products,
    body.tax-product_tag ul.products,
    body.woocommerce-shop .woocommerce ul.products,
    body.tax-product_cat .woocommerce ul.products,
    body.tax-product_tag .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Legacy support - removed flexbox rules that conflict with grid layout */

/* 1 Column on Mobile */
@media (max-width: 576px) {

    body.woocommerce-shop ul.products li.product,
    body.tax-product_cat ul.products li.product,
    body.tax-product_tag ul.products li.product {
        flex: 0 0 100%;
        max-width: 100%;
        margin-right: 0;
    }
}

/* Fix Sort Dropdown Overlap */
body.woocommerce-shop .woocommerce-products-header,
body.tax-product_cat .woocommerce-products-header,
body.tax-product_tag .woocommerce-products-header {
    position: relative;
    z-index: 5;
    margin-bottom: 30px;
}

/* Ensure Sidebar Doesn't Float Weirdly */
body.woocommerce-shop #wf-sidebar:not(.af-fixed-sidebar),
body.tax-product_cat #wf-sidebar:not(.af-fixed-sidebar),
body.tax-product_tag #wf-sidebar:not(.af-fixed-sidebar) {
    height: auto;
}

/* Fixed sidebar override */
body.woocommerce-shop #wf-sidebar.af-fixed-sidebar,
body.tax-product_cat #wf-sidebar.af-fixed-sidebar,
body.tax-product_tag #wf-sidebar.af-fixed-sidebar {
    position: fixed;
    right: 0;
    left: auto;
    top: 100px;
    height: calc(100vh - 100px);
    width: 280px;
    z-index: 9999;
    max-width: 280px;
    flex: none;
    float: none;
    margin: 0;
    padding: 0;
    transform: none;
}

/* ============================================================
   PRODUCT DESCRIPTION TABS - Horizontal single row (Afriyah)
   Must override any list/block styling that makes tabs vertical
   ============================================================ */
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #dee2e6;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::after,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li::after,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs::before,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs::after,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs li::before,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs li {
    display: inline-block !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs li a {
    display: inline-block !important;
    padding: 12px 20px !important;
    background: #f1f3f5 !important;
    color: #495057 !important;
    border: 1px solid #dee2e6 !important;
    border-bottom: none !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
body.single-product .product-tabs-wrapper .woocommerce-tabs ul.tabs li.active a {
    background: #1e3a5f !important;
    color: #fff !important;
    border-color: #1e3a5f !important;
}