/*
 * 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 {
  display: block;
}
.UnitDoc {
  margin: 2rem 0;
}
.UnitDoc::before {
  content: '';
  display: block;
  position: relative;
  width: 0;
  height: 3.5rem;
  margin-top: -3.5rem;
}
.UnitDoc-title {
  border-bottom: 0.0625rem solid var(--gray-8);
  display: flex;
  font-size: 1.375rem;
  margin: 1rem 0 0 0;
  padding-bottom: 1rem;
}
.UnitDoc-title img {
  height: 1rem;
  margin: auto 1rem auto 0;
  width: auto;
}
.UnitDoc-emptySection {
  background-color: var(--gray-10);
  color: var(--gray-2);
  height: 12.25rem;
  margin-top: 1.5rem;
  text-align: center;
}
.UnitDoc-emptySection img {
  height: 7.8125rem;
  width: auto;
}
