/* Product taxonomies inherit the exact desktop shop layout via body class. */
body.o2-dark-ui.post-type-archive-product .term-description-wrap{
    grid-column:2!important;
    width:100%!important;
    margin:4px 0 0!important;
    padding:18px!important;
    overflow:hidden!important;
    background:var(--o2-gray-6)!important;
    border:1px solid var(--o2-border)!important;
    border-radius:12px!important;
    color:var(--o2-gray-2)!important;
    box-shadow:none!important
}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description{
    max-height:105px;
    overflow:hidden;
    background:transparent!important;
    color:var(--o2-gray-2)!important;
    box-shadow:none!important;
    text-shadow:none!important
}
body.o2-dark-ui.post-type-archive-product .term-description-wrap :where(p,span,strong){color:inherit!important;background:transparent!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .loadmore{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    min-width:130px!important;
    min-height:36px!important;
    margin:14px auto 0!important;
    padding:6px 16px!important;
    background:var(--o2-field)!important;
    border:1px solid var(--o2-border)!important;
    border-radius:999px!important;
    color:var(--o2-gray-1)!important
}

@media(max-width:900px){
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content>.container{width:100%!important;max-width:100%!important;margin:0 auto!important;padding:14px 10px 110px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right{margin:0!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{width:100%!important;max-width:100%!important;margin:0 auto!important;padding:0!important;justify-items:stretch!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .woocommerce-products-header{width:100%!important;margin:0 0 12px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products{width:100%!important;max-width:100%!important;margin:0 auto!important;padding:0!important;justify-content:center!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products>li.product{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
    body.o2-dark-ui.post-type-archive-product .term-description-wrap{grid-column:1!important;width:100%!important;margin-top:14px!important}
}

@media(max-width:767px){
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .shop-control-bar{display:none!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products{grid-row:2!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products .item-area{width:100%!important;min-height:310px!important;padding:9px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products .product-image-area{height:150px!important;margin-bottom:8px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products .product-image>img{max-height:140px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products .woocommerce-loop-product__title{min-height:44px!important;max-height:44px!important;font-size:11px!important}
    body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products .price{font-size:10px!important;white-space:nowrap!important}

    body.o2-dark-ui .archive_filter_btn.is_fixed,
    body.o2-dark-ui .is_fixed.archive_filter_btn{
        right:16px!important;
        left:auto!important;
        bottom:92px!important;
        z-index:99998!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:48px!important;
        height:48px!important;
        margin:0!important;
        padding:0!important;
        overflow:hidden!important;
        background:var(--o2-secondary-5)!important;
        border:1px solid var(--o2-secondary-3)!important;
        border-radius:14px!important;
        color:#fff!important;
        box-shadow:0 10px 28px rgba(0,0,0,.42)!important
    }
    body.o2-dark-ui .is_fixed.archive_filter_btn svg{width:23px!important;height:23px!important;margin:0!important;stroke:#fff!important;color:#fff!important;filter:none!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar{
        right:0!important;
        left:auto!important;
        width:min(86vw,340px)!important;
        max-width:340px!important;
        height:100dvh!important;
        padding:0!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        background:var(--o2-gray-7)!important;
        border-left:1px solid var(--o2-border)!important;
        color:var(--o2-gray-2)!important;
        box-shadow:-18px 0 44px rgba(0,0,0,.48)!important
    }
    body.o2-dark-ui .togglesidebar.filter_sidebar :where(.sidebar-inner,.widget,.widget-content,form,ul,li){background:transparent!important;color:var(--o2-gray-2)!important;border-color:var(--o2-border)!important;box-shadow:none!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar .widget{margin:0!important;padding:16px!important;border-bottom:1px solid var(--o2-border)!important;border-radius:0!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar :where(.widget-title,.widget_title,h2,h3,h4){margin:0 0 13px!important;color:var(--o2-gray-1)!important;background:transparent!important;text-shadow:none!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar :where(a,label,p,span,small){color:var(--o2-gray-2)!important;opacity:1!important;text-shadow:none!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar :where(select,input[type=text],input[type=number]){width:100%!important;min-height:42px!important;background:var(--o2-field)!important;border:1px solid var(--o2-gray-5)!important;border-radius:9px!important;color:var(--o2-gray-1)!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar :where(svg,use){stroke:var(--o2-secondary-2)!important;color:var(--o2-secondary-2)!important}
    body.o2-dark-ui .togglesidebar.filter_sidebar .cart_sidebar_head{position:sticky!important;top:0!important;z-index:3!important;display:flex!important;align-items:center!important;min-height:58px!important;margin:0!important;padding:14px 18px!important;background:var(--o2-raised)!important;border:0!important;border-bottom:1px solid var(--o2-border)!important;color:var(--o2-gray-1)!important;opacity:1!important}
}

@media(max-width:380px){body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products{grid-template-columns:1fr!important;max-width:280px!important}}

/* 3.4.9: dark brand description and a real mobile filter drawer. */
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description::after{content:''!important;display:block!important;position:absolute!important;z-index:2!important;inset:auto 0 0!important;height:72px!important;pointer-events:none!important;background:linear-gradient(to bottom,rgba(61,55,55,0),var(--o2-gray-6) 88%)!important;opacity:1!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description.desc_show::after{opacity:0!important;visibility:hidden!important}
@media(max-width:767px){
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product){overflow-x:hidden!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .archive_filter_btn{display:none!important}
body.o2-dark-ui .o2-mobile-filter-trigger{position:fixed!important;right:16px!important;bottom:92px!important;z-index:2147483000!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;height:48px!important;margin:0!important;padding:0 14px!important;background:var(--o2-secondary-5)!important;border:1px solid var(--o2-secondary-3)!important;border-radius:14px!important;color:#fff!important;font:600 12px/1 var(--mainfont)!important;box-shadow:0 10px 28px rgba(0,0,0,.48)!important;cursor:pointer!important}
body.o2-dark-ui .o2-mobile-filter-trigger svg{width:21px!important;height:21px!important;stroke:#fff!important}
body.o2-dark-ui.o2-filter-open .o2-mobile-filter-trigger{opacity:0!important;pointer-events:none!important}
body.o2-dark-ui .o2-filter-backdrop{position:fixed!important;z-index:2147483001!important;inset:0!important;visibility:hidden!important;opacity:0!important;background:rgba(0,0,0,.72)!important;transition:opacity .22s ease,visibility .22s ease!important;pointer-events:none!important}
body.o2-dark-ui.o2-filter-open .o2-filter-backdrop{visibility:visible!important;opacity:1!important;pointer-events:auto!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel{position:fixed!important;z-index:2147483002!important;inset:0 0 0 auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;width:min(86vw,340px)!important;height:100dvh!important;min-height:100dvh!important;margin:0!important;padding:0!important;overflow-x:hidden!important;overflow-y:auto!important;visibility:hidden!important;opacity:0!important;transform:translateX(105%)!important;background:var(--o2-gray-7)!important;border:0!important;border-left:1px solid var(--o2-border)!important;border-radius:0!important;color:var(--o2-gray-2)!important;box-shadow:-20px 0 50px rgba(0,0,0,.55)!important;transition:transform .25s ease,opacity .2s ease,visibility .25s ease!important}
body.o2-dark-ui.o2-filter-open .shop-control-bar.o2-mobile-filter-panel{visibility:visible!important;opacity:1!important;transform:translateX(0)!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel::before{content:'فیلتر و مرتب‌سازی'!important;display:flex!important;align-items:center!important;min-height:64px!important;padding:14px 18px!important;background:var(--o2-raised)!important;border-bottom:1px solid var(--o2-border)!important;color:var(--o2-gray-1)!important;font-size:15px!important;font-weight:700!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .o2-filter-close{position:absolute!important;z-index:2!important;top:12px!important;left:14px!important;display:grid!important;place-items:center!important;width:40px!important;height:40px!important;margin:0!important;padding:0!important;background:var(--o2-field)!important;border:1px solid var(--o2-border)!important;border-radius:10px!important;color:#fff!important;font-size:23px!important;cursor:pointer!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .woocommerce-ordering{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;width:100%!important;margin:0!important;padding:20px 16px!important;background:transparent!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .woocommerce-ordering>svg{display:none!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .woocommerce-ordering select{width:100%!important;height:44px!important;margin:0!important;padding:0 12px!important;background:var(--o2-field)!important;border:1px solid var(--o2-gray-5)!important;border-radius:9px!important;color:var(--o2-gray-1)!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .el-instock-switch{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:44px!important;padding:0!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .el-instock-switch p{margin:0!important;color:var(--o2-gray-2)!important;opacity:1!important}
body.o2-dark-ui .shop-control-bar.o2-mobile-filter-panel .woocommerce-result-count{order:3!important;width:100%!important;margin:auto 0 0!important;padding:16px!important;background:var(--o2-field)!important;border-top:1px solid var(--o2-border)!important;color:var(--o2-gray-3)!important;text-align:right!important}
body.o2-dark-ui.o2-filter-open{overflow:hidden!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content>.container,body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right,body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{margin-right:0!important;margin-left:0!important}
}
@media(min-width:768px){body.o2-dark-ui .o2-mobile-filter-trigger,body.o2-dark-ui .o2-filter-backdrop,body.o2-dark-ui .o2-filter-close{display:none!important}}

/* 3.4.11: compact mobile archive matching the approved two-column sketch. */
@media(max-width:767px){
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content>.container{width:100%!important;max-width:450px!important;margin:0 auto!important;padding:12px 10px 110px!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right{display:block!important;width:100%!important;margin:0!important;padding:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:max-content!important;align-content:start!important;width:100%!important;max-width:100%!important;min-height:0!important;margin:0!important;padding:0!important;gap:12px!important;transform:none!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .woocommerce-products-header{grid-row:auto!important;width:100%!important;min-height:60px!important;margin:0!important;padding:0 18px!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products.row,body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products{grid-row:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;align-items:start!important;align-content:start!important;width:100%!important;max-width:100%!important;min-height:0!important;margin:0!important;padding:0!important;gap:10px!important;direction:rtl!important;transform:none!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products>li.product{float:none!important;align-self:start!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products .item-area{min-height:310px!important;margin:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .term-description-wrap{grid-row:auto!important;margin:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #sidebar{display:none!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .togglesidebar.filter_sidebar{display:none!important;visibility:hidden!important;pointer-events:none!important;transform:translateX(110%)!important}
body.o2-dark-ui .o2-mobile-filter-trigger{position:static!important;z-index:2!important;align-self:start!important;justify-self:stretch!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:0 10px!important;background:var(--o2-secondary-5)!important;border:1px solid var(--o2-secondary-3)!important;border-radius:18px!important;color:#fff!important;box-shadow:none!important;font-size:11px!important;white-space:nowrap!important}
body.o2-dark-ui .o2-mobile-filter-trigger svg{width:20px!important;height:20px!important;flex:0 0 20px!important}
body.o2-dark-ui.o2-filter-open .shop-control-bar.o2-mobile-filter-panel{display:flex!important}
}

/* 3.4.12: symmetrical archive width and a truly floating filter control. */
@media(max-width:767px){
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content>.container{width:calc(100% - 40px)!important;max-width:410px!important;margin-right:auto!important;margin-left:auto!important;padding-right:0!important;padding-left:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right,body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{width:100%!important;max-width:100%!important;margin-right:0!important;margin-left:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) :is(.filter_sidebar,.togglesidebar.filter_sidebar,.archive_filter_btn){display:none!important;visibility:hidden!important;width:0!important;height:0!important;opacity:0!important;pointer-events:none!important}
body.o2-dark-ui .o2-mobile-filter-trigger{position:fixed!important;right:20px!important;left:auto!important;bottom:96px!important;z-index:2147483000!important;width:auto!important;min-width:154px!important;height:52px!important;min-height:52px!important;padding:0 15px!important;border-radius:16px!important;box-shadow:0 10px 26px rgba(0,0,0,.46)!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap{grid-column:1!important;width:100%!important;max-width:100%!important;margin:2px 0 0!important}
}

/* 3.4.13: align both mobile edges and let brand copy span the full grid. */
@media(max-width:767px){
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{width:calc(100% + 12px)!important;max-width:calc(100% + 12px)!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .woocommerce-products-header,body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products.row{width:100%!important;max-width:100%!important}
body.o2-dark-ui .o2-mobile-filter-trigger{bottom:111px!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap{display:block!important;grid-column:1 / -1!important;justify-self:stretch!important;align-self:start!important;width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;min-height:0!important;margin:2px 0 0!important;padding:16px!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description{display:block!important;position:relative!important;width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:105px!important;overflow:hidden!important;line-height:2!important;text-align:right!important;opacity:1!important;visibility:visible!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description :where(p,span,strong){display:block!important;width:auto!important;max-width:none!important;margin:0 0 8px!important;color:var(--o2-gray-2)!important;opacity:1!important;visibility:visible!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .loadmore{position:relative!important;z-index:3!important}
}

/* 3.4.14: use the row's natural width; spacing belongs to the title only. */
@media(max-width:767px){
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{width:100%!important;max-width:100%!important;gap:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .woocommerce-products-header{margin:0 0 10px!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap{grid-column:1 / -1!important;width:100%!important;min-width:100%!important;max-width:100%!important;margin:10px 0 0!important;box-sizing:border-box!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description{width:100%!important;min-width:100%!important;max-width:100%!important;box-sizing:border-box!important}
}

/* 3.4.15: remove the cyclic grid sizing that collapsed brand copy to 0px. */
@media(max-width:767px){
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) #content .row.is-sidebar-right>.content-wrap{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:0!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) .woocommerce-products-header{flex:0 0 auto!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0 0 10px!important}
body.o2-dark-ui:is(.woocommerce-shop,.post-type-archive-product) ul.products.row{flex:0 0 auto!important;width:100%!important;min-width:0!important;max-width:100%!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap{flex:0 0 auto!important;display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:10px 0 0!important;padding:16px!important;box-sizing:border-box!important}
body.o2-dark-ui.post-type-archive-product .term-description-wrap .term-description{display:block!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;box-sizing:border-box!important}
}
