/* Ekano – shop / category archives: banner, sidebar tree + filters, toolbar, grid, drawer. */
.ek-cat-hero{display:flex;align-items:center;gap:22px;background:#fff;border-radius:var(--ek-r);box-shadow:0 0 0 1px var(--ek-line);padding:20px 24px;margin-bottom:16px}
.ek-cat-hero-img{flex:none;width:118px;height:118px;border-radius:50%;overflow:hidden;background:#fff;border:2px solid var(--ek-red);box-shadow:inset 0 0 0 4px #fff}
.ek-cat-hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.ek-cat-hero-body{flex:1;min-width:0}
.ek-cat-hero-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:6px}
.ek-cat-title{margin:0;font-size:21px;font-weight:700;line-height:1.6;color:#222}
.ek-cat-count{background:var(--ek-red);color:#fff;border-radius:8px;padding:1px 10px;font-size:13px;line-height:1.9;white-space:nowrap}
.ek-cat-desc{font-size:13px;line-height:2.1;color:#555;text-align:justify}
.ek-cat-desc p{margin:0 0 .5em}
.ek-cat-desc a{color:var(--ek-red)}
.ek-cat-desc .term-description,.ek-cat-desc .page-description{margin:0}
.ek-cat-desc.is-clamped{max-height:6.3em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.ek-more-btn{border:0;background:none;padding:4px 0 0;color:var(--ek-red);font-size:12.5px;cursor:pointer;font-family:inherit}
.ek-shop{display:grid;grid-template-columns:268px minmax(0,1fr);gap:16px;align-items:start}
.ek-side-head{display:none}
.ek-sbox{background:#fff;border-radius:var(--ek-r);box-shadow:0 0 0 1px var(--ek-line);overflow:hidden;margin-bottom:16px}
.ek-sbox-title{display:flex;align-items:center;gap:8px;height:48px;margin:0;padding:0 14px;background:var(--ek-red);color:#fff;font-size:14.5px;font-weight:700;line-height:1}
.ek-sbox-ico{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.2)}
.ek-widget>*:not(.ek-sbox-title){margin-inline:14px}
/* category tree */
.ek-tree ul{list-style:none;margin:0;padding:0}
.ek-tree li{position:relative;list-style:none}
.ek-tree-top{padding:8px 8px 0!important}
.ek-tree-l1{padding:2px 8px 10px!important}
.ek-tree a{display:flex;align-items:center;gap:7px;padding:6px 10px;padding-inline-end:34px;border-radius:8px;font-size:13px;line-height:1.7;color:#444;text-decoration:none}
.ek-tree a::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:#f3a5b6}
.ek-tree a:hover{color:var(--ek-red)}
.ek-tree-sale a{background:#fff0f3;color:var(--ek-red);font-weight:700}
.ek-tree-sale a::before{display:none}
.ek-tree li.is-current>a{background:#fff0f3;color:var(--ek-red);font-weight:700}
.ek-tree li.is-current>a::before{background:var(--ek-red)}
.ek-tree-tog{position:absolute;top:3px;inset-inline-end:3px;width:28px;height:28px;padding:0;border:0;border-radius:7px;background:none;cursor:pointer}
.ek-tree-tog::before,.ek-tree-tog::after{content:"";position:absolute;top:50%;left:50%;width:11px;height:2px;border-radius:1px;background:#666;transform:translate(-50%,-50%)}
.ek-tree-tog::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s}
.ek-tree-tog[aria-expanded=true]::after{transform:translate(-50%,-50%)}
.ek-tree-tog:hover{background:var(--ek-bg)}
.ek-tree-tog:hover::before,.ek-tree-tog:hover::after{background:var(--ek-red)}
.ek-tree li>ul{display:none;margin-inline-start:13px!important;padding-inline-start:6px!important;border-inline-start:1px dashed #e8e8e8}
.ek-tree li.is-open>ul{display:block}
.ek-tree-l2 a,.ek-tree-l3 a{font-size:12.5px;color:#666;padding-block:4px}
/* filters */
.ek-filters{padding:2px 14px 14px}
.ek-fgroup{padding:12px 0;border-bottom:1px dashed var(--ek-line)}
.ek-fgroup-title{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:13.5px;font-weight:700;color:#222}
.ek-fgroup-title small{font-weight:400;color:#999}
details.ek-fgroup>summary{justify-content:space-between;margin:0;cursor:pointer;list-style:none}
details.ek-fgroup>summary::-webkit-details-marker{display:none}
details.ek-fgroup>summary::after{content:"";width:7px;height:7px;margin-top:-4px;border:solid #888;border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .2s}
details.ek-fgroup[open]>summary{margin-bottom:8px}
details.ek-fgroup[open]>summary::after{transform:rotate(-135deg);margin-top:4px}
.ek-switch{position:relative;display:flex;align-items:center;gap:10px;font-size:13px;color:#444;cursor:pointer}
.ek-switch input{position:absolute;opacity:0;width:1px;height:1px}
.ek-switch-ui{position:relative;flex:none;width:38px;height:22px;border-radius:11px;background:#d5d5d5;transition:background .2s}
.ek-switch-ui::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:inset-inline-start .2s}
.ek-switch input:checked+.ek-switch-ui{background:var(--ek-red)}
.ek-switch input:checked+.ek-switch-ui::after{inset-inline-start:19px}
.ek-switch input:focus-visible+.ek-switch-ui{outline:2px solid var(--ek-red);outline-offset:2px}
.ek-range{position:relative;height:24px;margin:2px 8px 10px}
.ek-range::before{content:"";position:absolute;top:10px;left:0;right:0;height:4px;border-radius:2px;background:linear-gradient(to left,#e1e1e1 var(--a),var(--ek-red) var(--a),var(--ek-red) var(--b),#e1e1e1 var(--b))}
.ek-range input{position:absolute;inset:0;width:100%;height:24px;margin:0;padding:0;background:none;border:0;pointer-events:none;-webkit-appearance:none;appearance:none}
.ek-range input::-webkit-slider-runnable-track{background:none;height:24px}
.ek-range input::-moz-range-track{background:none}
.ek-range input::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;width:18px;height:18px;margin-top:3px;border-radius:50%;background:#fff;border:2px solid var(--ek-red);box-shadow:0 1px 4px rgba(0,0,0,.2);cursor:pointer}
.ek-range input::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--ek-red);cursor:pointer}
.ek-price-io{display:flex;gap:8px}
.ek-price-io label{flex:1;display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:#888}
.ek-price-io input{width:100%;height:36px;box-sizing:border-box;padding:0 6px;border:1px solid var(--ek-line);border-radius:8px;background:#fafafa;font-size:13px;text-align:center;-moz-appearance:textfield}
.ek-price-io input::-webkit-inner-spin-button{-webkit-appearance:none}
.ek-checks{list-style:none;margin:0;padding:0;max-height:230px;overflow:auto}
.ek-checks li{list-style:none}
.ek-checks label{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#444;cursor:pointer}
.ek-checks input{flex:none;width:16px;height:16px;margin:0;accent-color:var(--ek-red)}
.ek-checks span{flex:1;min-width:0}
.ek-checks small{color:#aaa;font-size:11px}
.ek-factions{display:flex;align-items:center;gap:12px;padding-top:12px}
.ek-fsubmit{flex:1;height:40px;border:0;border-radius:10px;background:var(--ek-red);color:#fff;font-size:13.5px;font-family:inherit;cursor:pointer}
.ek-fsubmit:hover{background:var(--ek-red-d)}
.ek-freset{font-size:12.5px;color:#888}
/* toolbar */
.ek-toolbar{display:flex;align-items:center;gap:12px;min-height:56px;box-sizing:border-box;margin-bottom:12px;padding:8px 14px;background:#fff;border-radius:var(--ek-r);box-shadow:0 0 0 1px var(--ek-line)}
.ek-filter-btn{display:none}
.ek-sort{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.ek-sort-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#333;white-space:nowrap}
.ek-sort-label .ek-ico{color:var(--ek-red)}
.ek-chips{display:flex;gap:6px;margin:0;padding:2px 0;list-style:none;overflow-x:auto;scrollbar-width:none}
.ek-chips::-webkit-scrollbar{display:none}
.ek-chips li{list-style:none}
.ek-chip{display:block;padding:5px 12px;border:1px solid var(--ek-line);border-radius:16px;font-size:12.5px;color:#555;white-space:nowrap;text-decoration:none}
.ek-chip:hover{color:var(--ek-red);border-color:#f3b3c1}
.ek-chip.is-on{background:var(--ek-red);border-color:var(--ek-red);color:#fff}
.ek-result-count{margin-inline-start:auto;font-size:12.5px;color:#888;white-space:nowrap}
.ek-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:-2px 0 12px}
.ek-afilter{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:14px;background:#fff0f3;color:var(--ek-red);font-size:12px;text-decoration:none}
.ek-afilter:hover{background:#ffe0e7;color:var(--ek-red)}
.ek-afilter-clear{padding:4px 6px;font-size:12px;color:#888}
/* grid */
.ek-shop-main ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px!important;padding:0!important;list-style:none}
.ek-shop-main ul.products::before,.ek-shop-main ul.products::after{display:none!important}
.woocommerce .ek-shop-main ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:10px;min-width:0;text-align:start}
.woocommerce .ek-shop-main ul.products li.product.ek-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.woocommerce ul.products li.product .ek-card-img img{width:100%;height:100%;margin:0;box-shadow:none}
.woocommerce ul.products li.product-category{background:#fff;border-radius:12px;padding:10px;box-shadow:0 0 0 1px var(--ek-line)}
.woocommerce ul.products li.product-category img{border-radius:10px;margin:0 0 8px!important}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{font-size:13px;text-align:center;padding:0;line-height:1.7}
.woocommerce ul.products li.product-category mark{background:none;color:#999}
.ek-shop-main .woocommerce-info{margin:0 0 16px}
/* pagination (WooCommerce's own) */
.woocommerce nav.woocommerce-pagination{margin:6px 0 10px}
.woocommerce nav.woocommerce-pagination ul{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:6px;border:0!important;margin:0}
.woocommerce nav.woocommerce-pagination ul li{float:none;border:0!important;overflow:visible}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:38px;height:38px;box-sizing:border-box;padding:0 10px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--ek-line);color:#444;font-size:13px;line-height:38px}
.woocommerce nav.woocommerce-pagination ul li a:hover,.woocommerce nav.woocommerce-pagination ul li a:focus{background:#fff;color:var(--ek-red)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ek-red);color:#fff;box-shadow:none}
.ek-side-ov[hidden]{display:none}
@media (min-width:992px) and (max-width:1199px){
 .ek-shop{grid-template-columns:240px minmax(0,1fr)}
 .ek-shop-main ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:991px){
 .ek-cat-hero{flex-direction:column;gap:10px;padding:16px;text-align:center}
 .ek-cat-hero-img{width:84px;height:84px}
 .ek-cat-hero-head{justify-content:center}
 .ek-cat-title{font-size:17px}
 .ek-cat-desc{text-align:start}
 .ek-shop{display:block}
 .ek-side{position:fixed;top:0;bottom:0;inset-inline-start:0;z-index:1001;display:flex;flex-direction:column;width:min(88vw,360px);background:var(--ek-bg);transform:translateX(100%);visibility:hidden;transition:transform .25s,visibility .25s}
 [dir=ltr] .ek-side{transform:translateX(-100%)}
 .ek-side.is-open{transform:none;visibility:visible}
 .ek-side-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid var(--ek-line);font-size:15px}
 .ek-side-close{padding:4px;border:0;background:none;color:#333;cursor:pointer}
 .ek-side-body{flex:1;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;padding:12px}
 .ek-side-body>.ek-fbox{order:-1;flex:none}
 .ek-side-body>.ek-sbox{flex:none}
 .ek-factions{position:sticky;bottom:-14px;margin:0 -14px -14px;padding:12px 14px;background:#fff;box-shadow:0 -6px 12px rgba(0,0,0,.04)}
 .ek-side-ov{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.4)}
 .ek-toolbar{flex-wrap:wrap;gap:8px;padding:8px 10px}
 .ek-filter-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid #f3b3c1;border-radius:10px;background:#fff0f3;color:var(--ek-red);font-size:13px;font-family:inherit;cursor:pointer}
 .ek-fcount{min-width:18px;height:18px;padding:0 4px;box-sizing:border-box;border-radius:9px;background:var(--ek-red);color:#fff;font-size:11px;line-height:18px;text-align:center}
 .ek-sort{order:3;flex-basis:100%;gap:6px}
 .ek-sort-label{font-size:0;gap:0}
 .ek-shop-main ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .woocommerce .ek-shop-main ul.products li.product{padding:8px}
 html.ek-side-open{overflow:hidden}
}
@media (max-width:767px){
 .ek-shop-main ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
