/*
|--------------------------------------------------------------------------
| Table of Contents
|--------------------------------------------------------------------------
*/

.bs-toc {

    direction: rtl;

    margin: 0 0 35px;

    padding: 20px 24px;

    border: 1px solid #178a7f;

    border-radius: 12px;

    background: #f8fafc;

    line-height: 1.9;
}


/*
|--------------------------------------------------------------------------
| Header
|--------------------------------------------------------------------------
*/

.bs-toc__header {

    margin-bottom: 15px;
}


.bs-toc__title {

    display: block;

    font-size: 20px;

    font-weight: 700;
}


/*
|--------------------------------------------------------------------------
| Lists
|--------------------------------------------------------------------------
*/

.bs-toc__list,
.bs-toc__sublist {

    margin: 0;

    padding-right: 22px;

    padding-left: 0;
}


.bs-toc__sublist {

    margin-top: 6px;
}


/*
|--------------------------------------------------------------------------
| Items
|--------------------------------------------------------------------------
*/

.bs-toc__item {

    margin: 7px 0;

    line-height: 1.9;
}


/*
|--------------------------------------------------------------------------
| Links
|--------------------------------------------------------------------------
*/

.bs-toc a {

    color: inherit;

    text-decoration: none;

    transition:
            opacity 0.2s ease,
            color 0.2s ease;
}


.bs-toc a:hover {

    opacity: 0.75;

    text-decoration: underline;
}


/*
|--------------------------------------------------------------------------
| Heading Offset
|--------------------------------------------------------------------------
*/

h2[id],
h3[id] {

    scroll-margin-top: 120px;
}


/*
|--------------------------------------------------------------------------
| Smooth Scroll
|--------------------------------------------------------------------------
*/

html {

    scroll-behavior: smooth;
}


/*
|--------------------------------------------------------------------------
| Mobile
|--------------------------------------------------------------------------
*/

@media (max-width: 767px) {

    .bs-toc {

        padding: 16px;

        margin-bottom: 25px;
    }


    .bs-toc__title {

        font-size: 18px;
    }


    .bs-toc__list,
    .bs-toc__sublist {

        padding-right: 18px;
    }

}