@media (min-width: 1024px) {
  .gp-rail-btn:not([disabled]):hover { background: #4a9c6d; }
}
[hidden] { display: none !important; }

.gp-wide { min-width: 34rem; }

.gp-toc-btn .gp-toc-minus { display: none; }
.gp-toc-btn[aria-expanded="true"] .gp-toc-plus { display: none; }
.gp-toc-btn[aria-expanded="true"] .gp-toc-minus { display: inline-block; }

.gp-chev { transition: transform 0.2s ease; }
.gp-acc-q[aria-expanded="true"] .gp-chev { transform: rotate(180deg); }
.gp-acc-q[aria-expanded="true"] { color: #8fb339; }

.gp-tl-item:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 1.25rem;
  top: 2.75rem;
  bottom: -1.5rem;
  width: 1px;
  background: #2a2a35;
}

@media (prefers-reduced-motion: reduce) {
  .gp-chev { transition: none; }
}

.gp-toc-sum { list-style: none; }
.gp-toc-sum::-webkit-details-marker { display: none; }
.gp-toc .gp-toc-minus { display: none; }
.gp-toc[open] .gp-toc-plus { display: none; }
.gp-toc[open] .gp-toc-minus { display: inline-block; }

.gp-rail { scrollbar-width: none; -ms-overflow-style: none; overscroll-behavior-x: contain; cursor: grab; }
.gp-rail::-webkit-scrollbar { display: none; }
.gp-rail-btn {
  position: absolute;
  top: calc(50% - 1rem);
  z-index: 2;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border: 1px solid rgba(238, 245, 236, 0.2);
  background: rgba(10, 15, 12, 0.85);
  color: #eef5ec;
  cursor: pointer;
}
.gp-rail-prev { left: 0.25rem; }
.gp-rail-next { right: 0.25rem; }
.gp-rail-btn[disabled] { opacity: 0.3; cursor: default; }