/*
 * 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.
 */

.UnitReadme {
  margin: 2rem 0;
}
.UnitReadme::before {
  content: '';
  display: block;
  position: relative;
  width: 0;
  height: 5em;
  margin-top: -5em;
}
.UnitReadme-title {
  border-bottom: 0.0625rem solid var(--gray-8);
  display: flex;
  font-size: 1.375rem;
  margin: 1rem 0 0 0;
  padding-bottom: 1rem;
}
.UnitReadme-title img {
  margin-right: 1rem;
}
.UnitReadme-content {
  position: relative;
  max-height: 20rem;
  overflow: hidden;
}
.UnitReadme-fadeOut {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
  padding: 30px 0;
  background-image: linear-gradient(to bottom, transparent, var(--white));
}
.UnitReadme-expandLink {
  cursor: pointer;
  padding: 10px 0;
  color: var(--turq-dark);
}
.UnitReadme-collapseLink {
  cursor: pointer;
  display: none;
  padding: 10px 0;
  color: var(--turq-dark);
}
.UnitReadme--expanded .UnitReadme-content {
  max-height: initial;
}
.UnitReadme--expanded .UnitReadme-fadeOut {
  display: none;
}
.UnitReadme--expanded .UnitReadme-expandLink {
  display: none;
}
.UnitReadme--expanded .UnitReadme-collapseLink {
  display: block;
}
