/*********************************************
 * Table of contents
**********************************************/
.ifs-toc-navigation__inner {
    max-height:calc(100vh - var(--ifs-header-height) - 40px);
    border:1px solid var(--ifs-color-gray-1);
    box-shadow:0 0 10px 5px rgba(0, 0, 0, .02);
}

/* Title */
.ifs-toc-navigation__title {background:none;padding:16px 20px 18px;}
.ifs-toc-navigation__title-icon {color:var(--ifs-color-text); font-size:var(--ifs-size-16); margin-left:10px;}
.ifs-toc-navigation__title:not(.active) .ifs-toc-navigation__title-icon {transform:rotate(180deg);}

/* List item */
.ifs-toc-list {padding:0 20px 20px;}
ul.ifs-toc-list__items {padding-top:16px;}

/* Item */
li.ifs-toc-list__item {
    -webkit-line-clamp:3; -webkit-box-orient:vertical;
    display:-webkit-box; overflow:hidden; padding:0;
}
li.ifs-toc-list__item:not(:last-child) {margin-bottom:10px;}

/* Button */
button.ifs-toc-list__item-btn {
    color:var(--ifs-color-text); background:none;font:inherit;
    white-space:nowrap; text-overflow:ellipsis; overflow:hidden; max-width:100%;
}
button.ifs-toc-list__item-btn:hover,
li.active > button.ifs-toc-list__item-btn {color:var(--ifs-color-primary);}

/* Sub */
ul.ifs-toc-list__items ul {
    border-top:none;
    padding-left:16px; padding-top:0; margin-top:5px;
}

/* hover */
.ifs-toc-navigation__title:is(:hover, :focus) {
    --ifs-color-text:var(--ifs-color-primary);
    --ifs-color-heading:var(--ifs-color-primary);
}


/*********************************************
 * Table of contents Responsive
**********************************************/