mor-private-menu{
    display: block;
    position: relative;

    .root-menu{
        padding: 0;
        margin: 0;
        list-style: none;

        > li{
            margin: 0;
            position: relative;

            &:hover{
                z-index: 9;
            }

            > a{
                width: 100%;
                display: inline-block;

                &:hover{
                    cursor: pointer;
                    text-decoration: none;
                }

                &.current{
                    font-weight: 600;
                }
            }

            &.current{
                > a{
                    font-weight: 600;
                }

                > .sub-menu-wrap{
                    z-index: 9;
                }
            }
        }
    }

    .sub-menu-wrap{
        width: 100%;
    }

    .sub-menu{
        display: block;

        > li{
            display: block;
            margin: 0;
            position: relative;

            &.menu-group-title{
                font-size: @fontSize*0.75;
                color: @colorComponentItemFont;
            }

            > a{
                width: 100%;
                display: inline-block;
                white-space: nowrap;

                &:hover{
                    cursor: pointer;
                    text-decoration: none;
                }
            }
        }
    }

    .root-menu,
    .sub-menu{
        > li{
            .has-child-menu-icon{
                right: 4px;
                top: 50%;
                transform: translateY(-50%) scale(0.8);
                line-height: 1em;
                // margin-top: -1px;
                position: absolute;
                font-size: @fontSize*0.75;
                color: @colorComponentItemFont;
            }

            > a{
                box-sizing: border-box;
                text-decoration: none;

                .iconfont,
                .mo-icon{
                    vertical-align: 0;
                    font-size: @fontSize;
                    display: inline-block;
                    margin: 0;
                    padding: 0 0.4em 0 0;
                }
            }

            &.is-disable{
                > a{
                    cursor: not-allowed;
                }

                .has-child-menu-icon{
                    display: none;
                }
            }

            &.is-hidden{
                display: none;
            }
        }
    }

    .sub-menu{
        > li{
            > a{
                .iconfont,
                .mo-icon{
                    vertical-align: -1px;
                }
            }
        }
    }

    &.pos-top{
        width: 100%;

        .root-menu{
            font-size: 0;

            > li{
                display: inline-block;
                vertical-align: top;

                &.is-disable{
                    > a{
                        border-bottom: none;
                    }
                }
            }
        }
    }

    &.pos-top,
    &.pos-side-with-collapse{
        .root-menu{
            > li{
                &:hover,
                &.show{
                    > .sub-menu-wrap{
                        display: block;
                        z-index: 9;
                    }
                }
            }
        }

        .sub-menu-wrap{
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            display: none;
            width: auto;
        }

        .sub-menu{
            box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);

            > li{
                &.menu-group-title{
                    border-top: 1px @colorComponentItemBorder solid;
                    padding: 0.6em 1em 0;

                    &:first-child{
                        border-top: none;
                    }
                }

                &.has-group{
                    padding-left: @fontSize*0.75;
                }

                > a{
                    max-width: 200px;
                }

                &:hover,
                &.show{
                    > .sub-menu-wrap{
                        display: block;
                        z-index: 9;
                    }
                }
            }
        }

        .root-menu,
        .sub-menu{
            > li{
                &.is-disable{
                    &:hover,
                    &.show{
                        > .sub-menu-wrap{
                            display: none;
                        }
                    }
                }
            }
        }

        .deep-submenu{
            position: absolute;
            left: 100%;
            top: 0 !important;
            padding-top: 0 !important;
            padding-left: 3px;
            transform: none;
        }
    }

    &.pos-side-with-collapse{
        .root-menu{
            > li{
                &.show{
                    > .sub-menu-wrap{
                        display: none !important;
                    }
                }

                &:hover{
                    > .sub-menu-wrap{
                        display: block !important;
                    }
                }
            }
        }
    }

    &.pos-side{
        .root-menu{
            > li{
                > a{
                    width: 100%;
                }
            }
        }

        .sub-menu{
            > li{
                > a{
                    width: 100%;
                }
            }
        }

        .sub-menu-wrap{
            display: none;
        }

        .root-menu,
        .sub-menu{
            > li{
                &.menu-group-title{
                    border-bottom: 1px @colorComponentItemBorder solid;
                }

                .has-child-menu-icon{
                    transform: scale(0.8);
                    margin-top: 0;
                    position: absolute;
                    right: 12px;
                    transition: transform 0.2s;
                    transform-origin: center;
                }

                &.show{
                    > .sub-menu-wrap{
                        display: block;
                    }

                    > .has-child-menu-icon{
                        transform: rotateX(180deg) scale(0.8);
                    }
                }
            }
        }
    }

    // default status
    &{}
}
