.navbar {
    height: 100vh;
    width: rem(300px);
    padding: var(--mantine-spacing-md);
    display: flex;
    flex-direction: column;
    border-right: rem(1px) solid light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4));
}

.navbarMain {
    overflow-y: auto;
    flex: 1;
}

.header {
    display: flex;
    justify-content: center;
    padding-bottom: var(--mantine-spacing-md);
    margin-bottom: calc(var(--mantine-spacing-md) * 1.5);
    border-bottom: rem(1px) solid light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4));
}

.footer {
    bottom: 20px;
    padding-top: var(--mantine-spacing-md);
    margin-top: var(--mantine-spacing-md);
    border-top: rem(1px) solid light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4));
}

.icon {
    margin-right: rem(10px);
}

.link {
    margin-top: var(--mantine-spacing-xs);
    cursor: pointer;
    display: flex;
    align-items: center;
    text-decoration: none;
    font-size: var(--mantine-font-size-sm);
    color: light-dark(var(--mantine-color-gray-7), var(--mantine-color-dark-1));
    padding: var(--mantine-spacing-sm) var(--mantine-spacing-sm);
    border-radius: var(--mantine-radius-sm);
    font-weight: 500;

    @mixin hover {
        background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6));
        color: light-dark(var(--mantine-color-black), var(--mantine-color-white));

        .linkIcon {
            color: light-dark(var(--mantine-color-black), var(--mantine-color-white));
        }
    }

    &[data-active] {
        &,
        &:hover {
            background-color: var(--mantine-color-blue-light);
            color: var(--mantine-color-blue-light-color);

            .linkIcon {
                color: var(--mantine-color-blue-light-color);
            }
        }
    }
}

.linkIcon {
    color: light-dark(var(--mantine-color-gray-6), var(--mantine-color-dark-2));
    margin-right: var(--mantine-spacing-sm);
    width: rem(25px);
    height: rem(25px);
}
