/**
 * @file
 * Styles for generic elements.
 */

body {
  color: #333;
  background: #fff;
  font:
    normal 100%/1.462em "Source Sans 3",
    "Lucida Grande",
    "Lucida Sans Unicode",
    "DejaVu Sans",
    "Lucida Sans",
    sans-serif;
}

a {
  text-decoration: none;
  color: #0074bd;
  &:hover,
  &:focus {
    text-decoration: underline;
    outline: 0;
  }
}

.link {
  text-decoration: none;
  color: #0074bd;
  &:hover,
  &:focus {
    text-decoration: underline;
    outline: 0;
  }
}

hr {
  height: 1px;
  margin: 0;
  padding: 0;
  border: none;
  background: #ccc;
}

summary,
.fieldgroup:not(.form-composite) > legend {
  text-transform: uppercase;
  font-weight: bold;
}

/**
 * Reusable heading classes are included to help modules change the styling of
 * headings on a page without affecting accessibility.
 */
h1,
.heading-a {
  margin: 0 0 15px;
  font-size: 1.625em;
  font-weight: bold;
  line-height: 1.875em;
}

h2,
.heading-b {
  margin: 20px 0;
  font-size: 1.385em;
  font-weight: bold;
}

h3,
.heading-c {
  margin: 20px 0;
  font-size: 1.231em;
  font-weight: bold;
}

h4,
.heading-d {
  margin: 20px 0;
  font-size: 1.154em;
  font-weight: bold;
}

h5,
.heading-e {
  margin: 20px 0;
  font-size: 1.077em;
  font-weight: bold;
}

h6,
.heading-f {
  margin: 20px 0;
  font-size: 1.077em;
  font-weight: bold;
}

p {
  margin: 0 0 10px;
}

dl {
  margin: 0 0 20px;
  & dd,
  & dl {
    margin-bottom: 10px;
    margin-left: 20px; /* LTR */
  }
}

[dir="rtl"] dl dd,
[dir="rtl"] dl dl {
  margin-right: 20px;
}

blockquote {
  margin: 0;
}

address {
  font-style: italic;
}

u,
ins {
  text-decoration: underline;
}

s,
strike,
del {
  text-decoration: line-through;
}

big {
  font-size: larger;
}

small {
  font-size: smaller;
}

sub {
  vertical-align: sub;
  font-size: smaller;
  line-height: normal;
}

sup {
  vertical-align: super;
  font-size: smaller;
  line-height: normal;
}

abbr,
acronym {
  border-bottom: dotted 1px;
}

ul {
  margin: 0.25em 0 0.25em 1.5em; /* LTR */
  list-style-image: none;
  [dir="rtl"] & {
    margin-right: 1.5em;
    margin-left: 0;
  }
}

/* This is required to win over specificity of [dir="rtl"] ul. */
[dir="rtl"] .messages__list {
  margin-right: 0;
}

ol {
  margin: 0.25em 0 0.25em 2em; /* LTR */
  padding: 0;
  [dir="rtl"] & {
    margin-right: 2em;
    margin-left: 0;
  }
}

code {
  margin: 0.5em 0;
}

pre {
  margin: 0.5em 0;
  white-space: pre-wrap;
}

details {
  line-height: 1.295em;
  & summary {
    padding: 0.95em 1.45em;
    &:focus {
      outline: none;
      background: #eee;
    }
    &:not(.details__summary):focus,
    &:not(.details__summary):hover {
      text-decoration: underline;
    }
  }
}

img {
  max-width: 100%;
  height: auto;
}

.machine-name-label {
  margin-left: 0.5em;
}

.machine-name-value {
  margin-right: 0.5em;
}
