#fern-sidebar a.fern-sidebar-link {
  position: relative;
}
a.fern-sidebar-link:not(.nested) {
  border-left: 1px solid var(--grayscale-a5);
}
a.fern-sidebar-link:not(.nested)[data-state="active"] {
  color: inherit !important;
  font-weight: 600;
}
#fern-sidebar a.fern-sidebar-link[data-state="active"]::before {
  content: "";
  position: absolute;
  left: -1px;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: var(--accent-a11);
  pointer-events: none;
}
/* The preview banner offsets the header. Keep the native mobile drawer below
 * that header and its 1px bottom border, with room to scroll to the last item. */
@media (max-width: 1023px) {
  body.nvidia-preview-banner-enabled #fern-sidebar:not(.fern-sidebar-desktop) {
    top: calc(var(--header-height) + var(--nvidia-preview-banner-offset, 0px) + 1px) !important;
    height: calc(100dvh - var(--header-height) - var(--nvidia-preview-banner-offset, 0px) - 1px) !important;
  }
}
astro-island,astro-slot,astro-static-slot{display:contents}


  .mermaid-container-static text { font-family: inherit; }
  svg {
    /* Derived from --bg and --fg (overridable via --line, --accent, etc.) */
    --_text:          var(--fg);
    --_text-sec:      var(--muted, color-mix(in srgb, var(--fg) 60%, var(--bg)));
    --_text-muted:    var(--muted, color-mix(in srgb, var(--fg) 40%, var(--bg)));
    --_text-faint:    color-mix(in srgb, var(--fg) 25%, var(--bg));
    --_line:          var(--line, color-mix(in srgb, var(--fg) 50%, var(--bg)));
    --_arrow:         var(--accent, color-mix(in srgb, var(--fg) 85%, var(--bg)));
    --_node-fill:     var(--surface, color-mix(in srgb, var(--fg) 3%, var(--bg)));
    --_node-stroke:   var(--border, color-mix(in srgb, var(--fg) 20%, var(--bg)));
    --_group-fill:    var(--bg);
    --_group-hdr:     color-mix(in srgb, var(--fg) 5%, var(--bg));
    --_inner-stroke:  color-mix(in srgb, var(--fg) 12%, var(--bg));
    --_key-badge:     color-mix(in srgb, var(--fg) 10%, var(--bg));
  }
