& {
  position: relative;
  clear: both;
  font-family: var(--font-family);
  // font-size: 0.6em;
  line-height: normal;
  text-align: left;
  text-shadow: none;
  color: var(--color-fg);
  background-color: var(--color-bg) !important;
}

* {
  font-size: inherit;
  line-height: normal;
  text-indent: 0;
  color: inherit;
  margin: 0;
  // &:not(.fa, .fas, .far, .fal, .fab) {
  &:not(i[class^=fa]) {
    font-family: inherit;
  }
}

a {
  text-decoration: none;
  color: var(--color-a);
  &:visited { color: var(--color-a-visited); }
  &:focus,
  &:hover {
    // text-decoration: underline;
    border-bottom: currentColor dotted 1px;
  }
  &:active,
  &:hover {
    outline: 0;
    color: var(--color-a-hover);
  }
  &.file-link { color: inherit; }
}
button {
  color: var(--color-button-fg);
  cursor: pointer;
  background-color: var(--color-button-bg);
  border-color: var(--color-button-border);
  font-weight: inherit;
  height: auto;
  letter-spacing: initial;
  line-height: initial;
  outline: none;
  padding: 1px 7px 2px;
  text-align: center;
  text-transform: none;
  vertical-align: baseline;
  white-space: initial;
  &:hover {
    background-color: var(--color-button-bg-hover);
  }
}
code {
  padding: 2px 4px;
  background-color: transparent;
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace !important;
}
input,
select {
  color: var(--color-ff);
  background-color: var(--color-bg);
}
pre code {
  display: block;
}

//
// Quite unusual, but experienced site css that modified div css...  reset
//
&,
div {
  margin: 0;
  width: auto;
  height: auto;
  padding: 0;
  background-color: transparent;
  border-radius: 0;
}
dl {
  margin-top: 0;
  margin-bottom: 0;
  dt { font-weight: bold; }
  &.dl-horizontal {
    display: grid;
    grid-template-columns: max-content auto;
    > dt {
      grid-column: 1;
      text-align: right;
      width: auto;
    }
    > dd {
      grid-column: 2;
      margin-left: 0.75em;
    }
  }
  &:not(.dl-horizontal) > dd {
    margin-left: 20px;
    padding-left: 10px;
    text-indent: -10px;
    > ul {
      margin-left: -10px;
    }
  }
}
li.no-indent {
  padding-left: 0;
  text-indent: 0;
}

h3 {
  margin-top: 0.66em;
  margin-bottom: 0.5em;
  font-size: 1.15em;
  font-weight: bold;
  &:first-child { margin-top: 0; }
}
hr {
  color: var(--color-fg);
  background-color: var(--color-fg);
  border: 0;
  height: 1px;
}
img { border: 0; }
input {
  border-width: 1px;
  &[type=checkbox] {
    margin: 0 0.33em 0 0;
    cursor: pointer;
  }
}

label {
  display: block;
  margin: 0;
  cursor: pointer;
  font-weight: bold;
  max-width: none;
  &.disabled {
    cursor: default;
    pointer-events: none;
  }
}
legend {
  // channels is the only component that uses fieldset/legend
  padding: 0;
  float: left;
  margin-bottom: 0.5em;
  border: 0;
  width: 100%;
  font-size: 144%;
  font-weight: bold;
}
p {
  margin-top: 0.25em;
  margin-bottom: 0;
  &:first-child { margin-top: 0; }
}
pre {
  padding: 0;
  border: 0;
  margin: 0;
  white-space: pre;
  -moz-tab-size: 3;
  -o-tag-size: 3;
  -tab-size: 3;
}

ul {
  margin-top: 0;
  margin-bottom: 0;
  // error summary & channel-list
  &.list-unstyled {
    list-style: none outside none;
    padding-left: 0;
    > li {
      text-indent: -1em;
      padding-left: 1em;
      margin: 0;
    }
    > ul {
      margin-left: 10px;
    }
  }
  &.no-indent > li {
    padding-left: 0;
    text-indent: 0;
  }
}

fieldset {
  // channels is the only component that uses fieldset
  padding: 0.66em;
  margin: 0 0 10px 0;
  min-width: 0;
  border: 1px solid black;
  border-radius: 4px;
  > ul {
    font-size: 125%;
  }
}

.close {
  opacity: 1;
  float: none;
}
