.cp-layout-page {
    height: 100%
}

.cp-layout-main-menu {
    min-width: clamp(240px, 14.8vw, 320px);
    max-width: clamp(240px, 14.8vw, 320px);
    border-right: 0;
    z-index: 1032;
    background-color: var(--cp-primary-color);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    overflow: hidden
}

@media (max-width: 767.98px) {
    .cp-layout-main-menu {
        display: none
    }
}

.cp-layout-main-menu.cp-layout-main-menu--show {
    display: block
}

.cp-layout-wrapper {
    margin-left: clamp(240px, 14.8vw, 320px);
    min-width: 0;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch
}

@media (max-width: 767.98px) {
    .cp-layout-wrapper {
        margin-left: 0
    }
}

.cp-layout-header {
    position: sticky;
    top: 0;
    height: 60px;
    width: 100%;
    z-index: 1030;
    background: #fff
}

.cp-layout-main-content {
    padding: 0 24px;
    flex-grow: 1
}

.cp-layout-footer {
    padding: 0 24px
}

.cp-layout-main-content--with-header {
    padding-top: 24px
}

.container-lg {
    padding: 0 !important;
    margin-left: 0 !important
}

.cp-layout-header, .cp-layout-main-content, .cp-layout-footer {
    flex-shrink: 0
}

.cp-layout-wrapper .alert-list-container.position-top-left, .cp-layout-wrapper .alert-list-container.position-bottom-left {
    left: clamp(240px, 14.8vw, 320px)
}