/**
 * Table of Contents Component
 * Article table of contents sidebar styles.
 */

.toc-container {
  position: relative;
}

.toc {
  position: sticky;
  top: 90px;
  overflow-y: auto;
  max-height: calc(100vh - 100px);
  padding: 10px;
  background: rgba(255, 255, 255, 0.5);
  box-shadow: var(--shadow-card, 0 1px 30px -4px #e8e8e8);
  border-radius: var(--radius-md, 10px);
  border: 1px solid #FFFFFF;
  transition: all 0.3s ease-in-out;
}

.toc:hover {
  box-shadow: var(--shadow-card-hover, 0 1px 20px 10px #e8e8e8);
  background: rgba(255, 255, 255, 0.8);
}

.toc::-webkit-scrollbar-track {
  background: transparent;
}

.toc > .toc-list li {
  list-style: none;
}

.toc > .toc-list li a {
  color: var(--color-text-secondary, #888);
  font-size: 13px;
  line-height: 1.8;
}

.toc > .toc-list li a:hover {
  color: var(--theme-skin-matching, #a4cdf6);
}

.toc-list {
  padding: 0;
  margin: 0;
}

a.toc-link {
  color: var(--color-text-secondary, #888) !important;
  height: 100%;
}

.is-collapsible {
  max-height: 1000px;
  overflow: hidden;
  transition: all 300ms ease-in-out;
}

.is-position-fixed {
  position: fixed !important;
  top: auto;
}

.is-active-link::before {
  background-color: var(--theme-skin-matching, #a4cdf6);
}

.toc-link::before {
  content: '';
  position: absolute;
  left: 0;
}

.flipx {
  transform: scaleX(-1);
}

.flipy {
  transform: scaleY(-1);
}
