/* PS Woo, modulo E: arbol de categorias plegable. Colores por variables para que el tema los ajuste. */
.widget_product_categories .product-categories{
	--ps-woo-cat-acento:currentColor;
	--ps-woo-cat-linea:rgba(0,0,0,.1);
	--ps-woo-cat-suave:rgba(0,0,0,.05);
	--ps-woo-cat-texto-2:rgba(0,0,0,.55);
	list-style:none;margin:0;padding:0;
}
.widget_product_categories .product-categories ul.children{list-style:none;margin:2px 0 6px 10px;padding:0 0 0 10px;border-left:1px solid var(--ps-woo-cat-linea)}
.widget_product_categories .product-categories li.cat-item{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;margin:0;padding:0;list-style:none}
.widget_product_categories .product-categories li.cat-item::marker{content:none}
.widget_product_categories .product-categories li.cat-item>a{flex:1 1 0;min-width:0;display:block;padding:6px 8px;border-radius:8px;line-height:1.3;text-decoration:none;transition:background-color .15s}
.widget_product_categories .product-categories li.cat-item>a:hover{background:var(--ps-woo-cat-suave)}
.widget_product_categories .product-categories>li.cat-item>a{font-weight:600}
.widget_product_categories .product-categories li.current-cat>a{background:var(--ps-woo-cat-suave);color:var(--ps-woo-cat-acento);font-weight:700}
.widget_product_categories .product-categories li.cat-item>.count{flex:none;font-size:.8em;line-height:1;color:var(--ps-woo-cat-texto-2);font-variant-numeric:tabular-nums}
.widget_product_categories .product-categories li.cat-item>ul.children{flex:0 0 100%}

/* Cerradas por omision; abierta la rama actual, que WooCommerce ya marca. */
.widget_product_categories .product-categories ul.children{display:none}
.widget_product_categories .product-categories li.current-cat>ul.children,
.widget_product_categories .product-categories li.current-cat-parent>ul.children,
.widget_product_categories .product-categories li.ps-woo-cat--abierta>ul.children{display:block}
.widget_product_categories .product-categories li.ps-woo-cat--cerrada>ul.children{display:none}
.widget_product_categories .product-categories li.ps-woo-cat--abierta>ul.children{animation:ps-woo-cat-abre .2s ease-out}
@keyframes ps-woo-cat-abre{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* Boton de desplegar. Las hojas reservan su ancho para que los conteos alineen. */
.widget_product_categories .ps-woo-cat__toggle{flex:none;position:relative;width:28px;height:28px;margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;cursor:pointer;box-shadow:none;line-height:1;min-height:0;transition:background-color .15s}
.widget_product_categories .ps-woo-cat__toggle:hover,
.widget_product_categories .ps-woo-cat__toggle:focus-visible{background:var(--ps-woo-cat-suave);color:var(--ps-woo-cat-acento)}
.widget_product_categories .ps-woo-cat__toggle:focus-visible{outline:2px solid var(--ps-woo-cat-acento);outline-offset:1px}
.widget_product_categories .ps-woo-cat__toggle::before{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;transform:translate(-50%,-70%) rotate(45deg);transition:transform .2s}
.widget_product_categories .ps-woo-cat__toggle[aria-expanded="true"]::before{transform:translate(-50%,-30%) rotate(-135deg)}
.widget_product_categories .product-categories.ps-woo-cat--listo li.cat-item:not(.cat-parent)>.count,
.widget_product_categories .product-categories.ps-woo-cat--listo li.cat-parent:not(:has(>.ps-woo-cat__toggle))>.count{margin-right:34px}
@media (prefers-reduced-motion:reduce){
	.widget_product_categories .product-categories li.ps-woo-cat--abierta>ul.children{animation:none}
	.widget_product_categories .ps-woo-cat__toggle::before{transition:none}
}
