:root{
  --ttlb-accent: #f97316; /* orange */
  --ttlb-font-body: "Source Sans 3", sans-serif;
  --ttlb-font-text: Rubik, sans-serif;
  --ttlb-font-heading: "PT Serif", serif;
  --ttlb-size-p: 18px;
  --ttlb-lh-p: 1.56;
  --ttlb-p-mb: 20px;
}

.ttlb-toc{margin:0 0 var(--ttlb-p-mb) 0;padding:1rem;border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;font: var(--ttlb-size-p)/var(--ttlb-lh-p) var(--ttlb-font-text);}
.ttlb-toc.ttlb-sticky{position:sticky;top:80px}
.ttlb-toc .ttlb-toc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}
.ttlb-toc .ttlb-title{font-family:var(--ttlb-font-heading);font-weight:600;color:var(--ttlb-accent)}
.ttlb-toc .ttlb-toggle{background:transparent;border:0;font-weight:600;color:var(--ttlb-accent);padding:0;cursor:pointer}
.ttlb-toc .ttlb-toc-body ul{list-style:none;margin:.25rem 0 .25rem 1.25rem;padding:0}
.ttlb-toc .ttlb-toc-body li{position:relative;margin:6px 0}
.ttlb-toc .ttlb-toc-body li::before{content:"•";position:absolute;left:-1rem;top:0;line-height:1;opacity:.65}
.ttlb-toc .ttlb-toc-body a{text-decoration:none;color:inherit}
.ttlb-toc .ttlb-toc-body a:hover{text-decoration:underline}
