.bes-toc {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin: 22px 0 26px;
    padding: 14px 18px;
    color: #252525;
    background: #f7f8fa;
    border: 1px solid #e1e5ea;
    border-left: 4px solid #155eef;
    border-radius: 8px;
    font-size: 15px;
    line-height: 1.65;
    overflow-wrap: anywhere;
}
.bes-toc * { box-sizing: border-box; }
.bes-toc-details { margin: 0; }
.bes-toc-title {
    position: relative;
    display: list-item;
    cursor: pointer;
    padding: 0 24px 0 0;
    color: inherit;
    font-weight: 700;
    list-style: none;
}
.bes-toc-title::-webkit-details-marker { display: none; }
.bes-toc-title::after {
    content: "";
    position: absolute;
    right: 3px;
    top: 7px;
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform .2s ease;
}
.bes-toc-details[open] > .bes-toc-title::after { transform: rotate(225deg); top: 11px; }
.bes-toc-list {
    margin: 12px 0 0 !important;
    padding: 0 0 0 23px !important;
}
.bes-toc-item { margin: 4px 0 !important; padding: 0 !important; }
.bes-toc-numbered .bes-toc-list { list-style: decimal; }
.bes-toc-bulleted .bes-toc-list { list-style: disc; }
.bes-toc-item.bes-toc-level-3 { margin-left: 18px !important; font-size: .96em; }
.bes-toc-item.bes-toc-level-4 { margin-left: 36px !important; font-size: .93em; }
.bes-toc a { color: #155eef; text-decoration: none; }
.bes-toc a:hover, .bes-toc a:focus { text-decoration: underline; }
.bes-toc a:focus-visible, .bes-toc summary:focus-visible { outline: 2px solid #155eef; outline-offset: 3px; }
h2[id], h3[id], h4[id] { scroll-margin-top: 90px; }
@media (max-width: 767px) {
    .bes-toc { width: var(--bes-toc-mobile-width, 100%); margin: 18px 0 22px; padding: 12px 14px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .bes-toc-title::after { transition: none; }
}
