/*!
 * Copyright 2021 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.
 */
.UnitHeader-titleHeading{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.UnitHeader-overflowContainer{display:none;height:1.5rem;position:absolute;right:0;width:1.5rem}.go-Main-header[data-fixed] .UnitHeader-overflowContainer{display:block}@media screen and (min-width: 80rem){.go-Main-header[data-fixed] .UnitHeader-overflowContainer{display:none}}.UnitHeader-overflowImage{fill:var(--gray-3);height:100%;left:0;position:absolute;top:0;width:100%}.UnitHeader-overflowSelect{appearance:none;background:transparent;border:0;color:transparent;cursor:pointer;font-size:1rem;height:100%;left:0;position:absolute;top:0;width:100%}.UnitHeader-overflowSelect option{color:var(--color-text)}.UnitHeader-versionBadge,.DetailsHeader-badge{border-radius:unset;color:var(--color-text-inverted);font-size:.7rem;line-height:.85rem;margin:-1rem 0 -1rem .5rem;padding:.25rem .5rem;text-transform:uppercase;top:-.0625rem}.UnitHeader-versionBadge--unknown,.DetailsHeader-badge--unknown{display:none}a.UnitHeader-backLink{color:var(--color-text);display:block;font-size:1rem}.UnitHeader-backLink img{vertical-align:middle}.DetailsHeader-badge--notAtLatest a,.DetailsHeader-badge--notAtLatest span.DetailsHeader-span--latest{display:none}.DetailsHeader-badge--notAtLatest .UnitMetaDetails-icon{z-index:1}.DetailsHeader-badge--notAtLatest .UnitMetaDetails-toggletipBubble{color:var(--black);text-transform:none}.DetailsHeader-span--notAtLatest .UnitMetaDetails-toggletip{height:0}.DetailsHeader-span--notAtLatest .UnitMetaDetails-toggletip button{height:.8125rem;line-height:0}.DetailsHeader-span--notAtLatest .UnitMetaDetails-toggletip img{vertical-align:middle}.DetailsHeader-badge--goToLatest span{display:none}.DetailsHeader-badge--goToLatest span.DetailsHeader-span--goToLatest{display:initial}.DetailsHeader-badge--unknown a,.DetailsHeader-badge--unknown span{display:none}.DetailsHeader-badge{border-radius:1rem;display:inline-block;font-size:.75rem;padding:.25rem .75rem;position:relative;top:-.125rem}.DetailsHeader-badge--latest a{display:none}.DetailsHeader-badge--goToLatest a:hover{text-decoration:none}.DetailsHeader-badge--latest span.DetailsHeader-span--notAtLatest{display:none}.DetailsHeader-badge--goToLatest,.DetailsHeader-badge--latest,.DetailsHeader-badge--notAtLatest{margin-left:.25rem}.go-Main{background-color:var(--color-background);color:var(--color-text);display:grid;flex-grow:1;grid-template:repeat(6,min-content) / 100%;grid-template-areas:"banner" "header" "aside" "nav" "article" "footer";min-height:32rem}.go-Main-banner{grid-area:banner;padding:1rem var(--gutter) 0 var(--gutter)}.go-Main-header{background-color:var(--color-background);border-bottom:var(--border);font-size:.875rem;grid-area:header;min-height:var(--js-unit-header-height);padding:0 var(--gutter);transition:box-shadow .25s linear;z-index:10}.go-Main-header[data-fixed]{border-bottom:none;position:sticky;top:var(--js-unit-header-top, 0)}.go-Main-header[data-raised]{border-bottom:var(--border)}.go-Main-nav{background-color:var(--color-background);border-bottom:var(--border);font-size:.875rem;grid-area:nav;padding:0 var(--gutter)}.go-Main-article{background-color:var(--color-background);grid-area:article;margin:var(--gap) 0 5rem 0;min-height:32rem;padding:0 var(--gutter)}.go-Main-aside{background-color:var(--color-background-accented);border-bottom:var(--border);font-size:.875rem;grid-area:aside;padding:1rem var(--gutter)}.go-Main-aside--empty{border-bottom:none;padding:0}.go-Main-footer{background-color:var(--color-background);grid-area:footer;padding:0 var(--gutter)}.go-Main>*:empty{border:none;margin:0;padding:0}.go-Main-headerBreadcrumb{margin-top:1rem}.go-Main-headerContent{margin-bottom:1rem;position:sticky;top:0}.go-Main-headerContent[data-fixed]{align-items:center;display:flex;margin-bottom:0;min-height:0}@media screen and (min-width: 80rem){.go-Main-headerContent[data-fixed]{justify-content:space-between}}.go-Main-headerTitle{align-items:center;display:flex;gap:.5rem;height:3.5rem;max-width:100%;padding-right:1.5rem}@media screen and (min-width: 80rem){.go-Main-headerTitle[data-fixed]{max-width:40%}}.go-Main-headerTitle .go-Clipboard{display:none}.go-Main-headerTitle[data-fixed] .go-Clipboard{display:initial}.go-Main-headerLogo{--logo-height: 1.75rem;--logo-width: calc(var(--logo-height) / .3768);align-items:center;display:flex;margin-right:-.5rem;opacity:0;transition:opacity .25s ease-in-out,width .25s ease-out;visibility:hidden;width:0}.go-Main-headerLogo img{height:var(--logo-height);margin:-1rem 0;width:var(--logo-width)}.go-Main-headerLogo[data-fixed]{margin-right:0;opacity:1;visibility:visible;width:var(--logo-width)}.go-Main-headerDetails{display:flex;flex-flow:row wrap;gap:0 1rem;white-space:nowrap}.go-Main-headerDetails[data-fixed]{display:none}@media screen and (min-width: 80rem){:root:not([data-layout="compact"]) .go-Main-headerDetails[data-fixed]{display:flex}}.go-Main-headerDetailItem{color:var(--color-text-subtle);display:inline;font-size:.875rem;height:1.75rem;line-height:1.75rem}.go-Main-headerDetailItem:not(:last-of-type):after{content:"|";padding-left:1rem}.go-Main-nav--sticky{position:sticky;top:var(--js-sticky-header-height, 3.5rem);transition:box-shadow .25s linear;z-index:1}.go-Main-nav--fixed{border-top:initial}.go-Main-navDesktop{display:none;margin-top:var(--gap);overflow-y:auto;padding:.25rem;position:sticky;top:calc(var(--js-sticky-header-height, 3.5rem) + 1rem)}.go-Main-navMobile{display:flex;margin:.5rem 0}.go-Main-navMobile .go-Label{flex-grow:1;position:relative}.go-Main-navMobile .go-Select{padding-left:1.75rem;width:100%}.go-Main-navMobile .go-Label:before{background:url(/static/shared/icon/list_gm_grey_24dp.svg);background-repeat:no-repeat;background-size:contain;content:" ";height:1.25rem;left:.5rem;padding-left:1rem;position:absolute;top:.375rem;width:1.25rem}@media not all and (min-resolution: .001dpcm){@supports (-webkit-appearance: none){.go-Main-navMobile .go-Select{appearance:none}}}@media screen and (min-width: 80rem){:root[data-layout=responsive] .go-Main{grid-template:repeat(5,min-content) / 21.5% minmax(0,auto);grid-template-areas:"banner  banner" "header  header" "aside   aside" "nav     article" "footer  footer"}:root[data-layout=responsive] .go-Main-nav{border-bottom:none;border-top:none;padding:0 0 0 var(--gutter)}:root[data-layout=responsive] .go-Main-article{border-bottom:none;border-top:none;margin:var(--gap) 0 5rem var(--gap);padding:0 var(--gutter) 0 0}:root[data-layout=responsive] .go-Main-aside{border-bottom:var(--border)}:root[data-layout=responsive] .go-Main-nav--sticky{position:initial}:root[data-layout=responsive] .go-Main-nav--fixed{box-shadow:none}:root[data-layout=responsive] .go-Main-navDesktop{display:block}:root[data-layout=responsive] .go-Main-navMobile{display:none}}@media screen and (min-width: 112rem){:root[data-layout=responsive] .go-Main{grid-template:repeat(4,min-content) / minmax(17.5%,1fr) minmax(0,4fr) minmax(17.5%,1fr);grid-template-areas:"banner banner  banner" "header header  header" "nav    article aside" "footer footer  footer"}:root[data-layout=responsive] .go-Main-article{margin:var(--gap) var(--gap) 5rem;padding:0}:root[data-layout=responsive] .go-Main-aside{background-color:var(--color-background);border-bottom:none;margin:var(--gap) 0 0 0;padding:0 var(--gutter) 0 0}}@media screen and (min-width: 80rem){:root[data-layout=compact] .go-Main{grid-template:repeat(6,min-content) / 1fr auto;grid-template-areas:"banner  banner" "header  ." "header  nav" "aside   aside" "article article" "footer  footer"}:root[data-layout=compact] .go-Main-nav{align-items:center;border-bottom:var(--border);display:flex;top:calc((var(--js-main-header-height, 0) - var(--js-sticky-header-height, 3.5rem)) * -1)}:root[data-layout=compact] .go-Main-header[data-fixed]{box-shadow:none}:root[data-layout=compact] .go-Main-nav--sticky{height:var(--js-sticky-header-height, 3.5rem);position:sticky;top:0}:root[data-layout=compact] .go-Main-nav--fixed{box-shadow:none}:root[data-layout=compact] .go-Main-navDesktop{display:none}:root[data-layout=compact] .go-Main-navMobile{display:flex}}@media print{.go-Main-header--sticky,.go-Main-header--sticky>:last-child,.go-Main-nav--sticky,.go-Main-navDesktop{position:initial}}
/*!
 * Copyright 2020-2021 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.
 */
/*!
 * Copyright 2021 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.
 */
/*# sourceMappingURL=unit.min.css.map */
