/* Layout 布局样式 - 从 layout.vue 转换 */
.container-wrap {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    height: 100vh;
    width: 100%;
    color: var(--color-text, #333);
    position: relative;
    z-index: 0;
    --sider-w: 77px;
    --nav-bar-h: 54px;
}

.layout-container {
    height: 100%;
    display: flex;
    margin-top: 90px;
    justify-content: center;
    flex: 1 1 0%;
}

.main {
    width: var(--layout-width);
    padding-bottom: 10px;
    z-index: 1;
    overflow-y: unset;
    height: calc(100vh - var(--nav-bar-h));
    box-sizing: border-box;
    border-radius: 10px 0 0 0;
    border-right: none;
    border-bottom: none;
}

.w_ban {
    max-width: 1800px;
    margin: 0 auto;
}

.main_card {
    padding: 24px 0 24px 60px;
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
}

/* 路由过渡动画 */
.fade-enter-active,
.fade-leave-active {
    transition: opacity 0.3s;
}

.fade-enter,
.fade-leave-to {
    opacity: 0;
}

/* Main Box 通用样式 */
.main_box {
    flex: 1;
    transition: all .4s;
    padding: 0 16px 0 16px;
    overflow-y: unset;
    height: 100%;
    box-sizing: border-box;
    outline: none;
}

.main_box.w-ban {
    max-width: 1800px;
    margin: 0 auto;
}

