@import "../../../core/scss/fuse";

fuse-main {

    &.fuse-nav-bar-folded {

        .content-wrapper {

            &:last-child {
                padding-left: 64px !important;
            }

            &:first-child {
                padding-right: 64px !important;
            }

            &:first-child:last-child {
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

        }
    }
}

fuse-navbar-vertical {
    display: flex;
    flex-direction: column;
    width: 256px;
    min-width: 256px;
    max-width: 256px;
    background-color: #FFFFFF;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 4;
    box-shadow: 0 5px 5px -3px rgba(0, 0, 0, .2), 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12);
    transition: all .3s cubic-bezier(.55, 0, .55, .2), width .1s linear, min-width .1s linear, max-width .1s linear;
    transform: translateX(0);

    &.folded {
        position: absolute;
        top: 0;
        bottom: 0;

        &.left-navbar {
            left: 0;
        }

        &.right-navbar {
            right: 0;
        }

        &:not(.folded-open) {
            width: 64px;
            min-width: 64px;
            max-width: 64px;

            .navbar-header {
                padding: 0 13px;

                .logo {

                    .logo-text {
                        opacity: 0;
                        transition: opacity 200ms ease;
                    }
                }
            }
        }
    }

    &.close {
        box-shadow: none;

        &.left-navbar {
            transform: translateX(-100%) !important;
        }

        &.right-navbar {
            transform: translateX(100%) !important;
        }
    }

    @include media-breakpoint('lt-lg') {
        position: absolute;
        top: 0;
        bottom: 0;

        &.left-navbar {
            left: 0;
        }

        &.right-navbar {
            right: 0;
        }

        &:not(.initialized) {

            &.left-navbar {
                transform: translateX(-100%);
            }

            &.right-navbar {
                transform: translateX(100%);
            }
        }
    }

    .navbar-header {
        padding: 0 16px 0 24px;
        display: flex;
        align-items: center;
        height: 64px;
        min-height: 64px;
        justify-content: space-between;
        transition: padding 200ms ease;
        background-color: rgba(255, 255, 255, .05);
        @include mat-elevation(1);

        .logo {
            display: flex;
            align-items: center;

            .logo-icon {
                width: 38px;
            }

            .logo-text {
                margin-left: 8px;
                font-size: 20px;
                font-weight: 300;
                letter-spacing: 0.4px;
            }
        }
    }

    .nav-bar-content {
        flex: 1;
    }
}
