/*
 * 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%;
}
a.UnitOutline-accordian {
  align-items: center;
  color: var(--gray-2);
  display: flex;
  font-size: 1.125rem;
  font-weight: 500;
  height: 2.5rem;
  padding: 1rem;
}
a.UnitOutline-accordian--active {
  background-color: var(--gray-9);
}
.UnitOutline-panel {
  padding: 0 18px;
  background-color: white;
  display: block;
  overflow-y: auto;
}
.UnitOutline-jumpTo {
  display: flex;
  margin-bottom: 0.5625rem;
}
.UnitOutline-jumpTo button {
  background-color: white;
  border: 0.0625rem solid var(--gray-8);
  cursor: pointer;
  height: 2rem;
  padding-left: 1rem;
  text-align: left;
  width: 100%;
}
.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;
}
