.nav-tabs {
    position: relative;
    display: flex;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0;
    border-bottom: 1px solid var(--gray-300);

    .nav-item {

        [data-toggle="tab"] {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 24px 12px;
            cursor: pointer;
            color: var(--gray-500);
            transition: all 300ms ease;

            &.active {
                font-weight: bold;
                color: var(--dark);

                &:after {
                    content: "";
                    height: 3px;
                    width: 100%;
                    background-color: var(--primary);
                    position: absolute;
                    bottom: 0;
                    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
                    will-change: left, width;
                }
            }
        }
    }
}

.tab-content {
    padding: 16px;

    > .tab-pane {
        display: none;
    }

    > .active {
        display: block;
    }
}

.custom-tabs {

    .custom-tabs-body {

        .custom-tabs-content {
            display: none;
            animation: fade-in 0.5s;

            &.active {
                display: block;
            }
        }
    }
}
