/*
 * Copyright 2020 The Go Authors. All rights reserved.
 * Use of this source code is governed by a BSD-style
 * license that can be found in the LICENSE file.
 */

.Documentation-index,
.DocNav,
.DocNav-index {
  display: block;
}
.DocNav {
  max-height: calc(100vh - var(--header-height));
  overflow-x: unset;
  overflow-y: unset;
  padding-top: 0.5rem;
  padding-left: unset;
  position: unset;
  top: unset;
}
@media only screen and (min-width: 52rem) {
  .DocNav [role='tree'],
  .DocNav [role='group'] {
    padding: 0;
  }
}

.UnitOutline {
  display: flex;
  flex-direction: column;
  max-height: 100%;
  position: sticky;
  top: 4.5rem;
}
a.UnitOutline-accordion {
  align-items: center;
  color: var(--gray-2);
  display: flex;
  font-size: 1.125rem;
  font-weight: 500;
  height: 2.5rem;
  padding: 1rem;
}
a.UnitOutline-accordion[aria-expanded='true'] {
  background-color: var(--gray-9);
}
.UnitOutline-panel {
  padding: 0 18px;
  background-color: white;
  display: block;
  overflow-y: auto;
}
.UnitOutline-panel[aria-hidden='true'] {
  display: none;
}
.UnitOutline-jumpTo {
  display: flex;
  margin-bottom: 0.5625rem;
}
.UnitOutline-jumpTo button {
  background-color: white;
  border: 0.0625rem solid var(--gray-8);
  border-radius: 0.25rem;
  color: var(--gray-4);
  cursor: pointer;
  height: 2rem;
  padding-left: 1.5rem;
  text-align: left;
  width: 100%;
}
.UnitOutline-jumpTo button:hover:not([disabled]) {
  border-color: var(--gray-7);
}
.UnitOutline-jumpTo::after {
  align-self: center;
  background-color: var(--gray-9);
  border-radius: 0.5rem;
  color: var(--gray-6);
  content: 'f';
  font-size: 0.75rem;
  padding: 0.0625rem 0;
  position: absolute;
  right: 0.75rem;
  text-align: center;
  width: 1.5rem;
}
.UnitOutline-jumpTo::before {
  align-self: center;
  border-radius: 0.5rem;
  color: var(--gray-6);
  content: url('/static/img/pkg-icon-jumpTo_16x16.svg');
  font-size: 0.75rem;
  left: 0.4rem;
  position: absolute;
  text-align: center;
  top: 0.5rem;
}
.UnitOutline-jumpToInput:disabled {
  background-color: var(--gray-9);
}
