/* ==========================================================================

    HELLO USER! Welcome to the master stylehsheet used to edit STS Manuals.
    Unless given specific instructions to do so, DO NOT edit this file.

    Please be wary, this is a huge SCSS file, with a lot of interconnected
    parts. Please be extremely cautious when editing and making changes.

    Good luck, you'll need it!

   ========================================================================== */
@import url("https://fonts.googleapis.com/css?family=Roboto+Mono");
/* SECTION 0: variables
   ========================================================================== */
/* DOCUMENT FONTS */
/* Colors */
/* SECTION 1: full document management and essential elements
========================================================================== */
/* CSS reset */
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 100%; }

@media screen and (max-width: 400px) {
  html {
    font-size: 112.5%; }
  img {
    max-width: 100% !important; } }

/* body */
body {
  margin: 0 auto 5em auto;
  max-width: 60em;
  font-family: "Verlag", sans-serif;
  position: relative;
  background-color: #fff;
  background-color: #f7f7f7;
  font-size: 1em; }
  @media screen and (max-width: 440px) {
    body {
      max-width: 100%; } }
  @media screen and (max-width: 450px) {
    body {
      max-width: 100%;
      overflow-x: hidden; } }
  @media print {
    body {
      padding: 0; } }

section {
  position: relative;
  padding: 2rem; }

#outline ol li,
.topic {
  background-color: #f6f8f8; }
  @media print {
    #outline ol li,
    .topic {
      background-color: white; } }

#outline ol li:nth-of-type(2n),
section:nth-of-type(2n) {
  background-color: #ebf4fa; }
  @media print {
    #outline ol li:nth-of-type(2n),
    section:nth-of-type(2n) {
      background-color: white; } }

.topic:first-of-type {
  counter-reset: topic-number; }

section.topic {
  -webkit-transition: .25s all ease;
  -o-transition: .25s all ease;
  transition: .25s all ease;
  border: 1px solid #dde;
  border-top: none;
  padding-top: 1rem; }
  @media print {
    section.topic {
      border: none; } }
  section.topic:first-of-type {
    border-top: 1px solid #dde; }
  section.topic:after {
    content: "";
    clear: both;
    display: table; }
  section.topic > h1:first-of-type {
    cursor: pointer; }
    section.topic > h1:first-of-type:before {
      counter-increment: topic-number;
      content: counter(topic-number);
      font-size: 1.25rem;
      width: 1.125em;
      height: 1.5rem;
      background-color: #e4b12b;
      color: white;
      display: inline-block;
      border-radius: 100%;
      padding: 0.625em;
      text-align: center;
      margin-bottom: .25em;
      left: 1em;
      position: absolute; }
      @media screen and (max-width: 450px) {
        section.topic > h1:first-of-type:before {
          left: .25em;
          line-height: .9;
          width: 1em;
          height: 1em;
          padding: .25em; } }
    @media screen and (max-width: 450px) {
      section.topic > h1:first-of-type {
        max-width: 280px;
        margin-left: auto;
        margin-right: auto;
        font-size: 1.5rem; } }
  section.topic h1:after {
    content: "";
    position: absolute;
    height: .4em;
    width: .4em;
    background: -webkit-linear-gradient(45deg, transparent 50%, #dadfe1 50%);
    background: -o-linear-gradient(45deg, transparent 50%, #dadfe1 50%);
    background: linear-gradient(45deg, transparent 50%, #dadfe1 50%);
    right: .25em;
    top: .5em;
    top: 2rem;
    -webkit-transform: rotateZ(135deg);
    -ms-transform: rotate(135deg);
    transform: rotateZ(135deg);
    -webkit-transition: .25s all;
    -o-transition: .25s all;
    transition: .25s all; }

section.topic.collapsed {
  -webkit-transition: .25s all ease;
  -o-transition: .25s all ease;
  transition: .25s all ease;
  overflow: hidden;
  opacity: .7;
  height: 5rem; }
  @media screen and (max-width: 450px) {
    section.topic.collapsed {
      height: 4rem; } }
  section.topic.collapsed h1:after {
    content: "";
    background: -webkit-linear-gradient(45deg, transparent 50%, #646569 50%);
    background: -o-linear-gradient(45deg, transparent 50%, #646569 50%);
    background: linear-gradient(45deg, transparent 50%, #646569 50%);
    -webkit-transform: rotateZ(225deg);
    -ms-transform: rotate(225deg);
    transform: rotateZ(225deg); }
  section.topic.collapsed > h1 {
    background-size: 2px;
    margin-bottom: 2rem; }

hr {
  display: block;
  width: 100%;
  border: 0;
  padding-top: 1rem;
  background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #dadfe1), to(transparent));
  background-image: -webkit-linear-gradient(left, transparent 0%, #dadfe1 50%, transparent 100%);
  background-image: -o-linear-gradient(left, transparent 0%, #dadfe1 50%, transparent 100%);
  background-image: linear-gradient(90deg, transparent 0%, #dadfe1 50%, transparent 100%);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: bottom; }

/* headings */
h1 {
  margin: 0;
  padding: 0 0 1em 0;
  border: 0;
  border-color: #ecf0f1;
  font-family: "Verlag", sans-serif;
  font-weight: 700;
  font-size: 2em;
  text-align: center;
  clear: both;
  font-weight: 900; }
  #outline h1 {
    padding: .25em 0 .5em 0; }
  @media screen and (max-width: 450px) {
    h1 {
      font-size: 1.5rem; } }
  h1:not(first-of-type) {
    background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #dadfe1), to(transparent));
    background-image: -webkit-linear-gradient(left, transparent 0%, #dadfe1 50%, transparent 100%);
    background-image: -o-linear-gradient(left, transparent 0%, #dadfe1 50%, transparent 100%);
    background-image: linear-gradient(90deg, transparent 0%, #dadfe1 50%, transparent 100%);
    background-size: 100% 2px;
    background-repeat: no-repeat;
    background-position: bottom; }
  @media print {
    h1 {
      margin: 1.75em 0 0 0;
      padding: 0 0 0.2em 0;
      font-size: 2.1em; } }

h2 {
  margin: 1.5em 0 0 0;
  padding: 0;
  font-family: "Verlag", sans-serif;
  font-weight: 700;
  font-size: 1.7em; }
  @media print {
    h2 {
      margin: 1.25em 0 0 0;
      font-size: 1.5em; } }

h3 {
  margin: 1.5em 0 0 0;
  font-family: "Verlag", sans-serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.25em;
  font-weight: 900; }

/* paragraph text */
h1,
h2,
h3 {
  color: #292929; }

li,
p {
  margin: 1em 0 0 0;
  font-family: "Verlag", sans-serif;
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 150%; }
  @media print {
    li,
    p {
      font-size: 0.8em; } }

li > p {
  margin-top: 0;
  font-size: 1.125rem; }

/* links */
a {
  color: #0479a8;
  text-decoration: none;
  font-family: "Verlag", sans-serif;
  font-weight: 900; }
  h2 a {
    font-family: "Verlag", sans-serif; }
  h3 a {
    font-family: "Verlag", sans-serif; }

a:hover {
  color: #17A3BF;
  -webkit-transition: 0.1s linear;
  -o-transition: 0.1s linear;
  transition: 0.1s linear; }

/* lists */
ul,
ol {
  margin: 1em 0 0 3em;
  counter-reset: step-counter; }
  @media screen and (max-width: 450px) {
    ul,
    ol {
      margin-left: 2rem; } }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin: 0 0 0 3em; }
  ul li,
  ol li {
    margin: 0 0 .5em 0;
    padding: 0;
    font-family: "Verlag", sans-serif;
    font-weight: 400; }
  ul li::before,
  ol li::before {
    counter-increment: step-counter; }
  ul p,
  ol p {
    margin: 0;
    padding: 0; }

strong {
  font-weight: 800; }

/* SECTION 2: front page and topics outline
========================================================================== */
/* front page */
.manual-front-page,
#coverpage-title,
#about-page,
#outline {
  page-break-after: always; }

#coverpage-title {
  margin: 0;
  padding-top: 3rem;
  text-align: center; }
  #coverpage-title h1 {
    margin: 0;
    padding: 0.2em;
    font-size: 3.75em;
    border: none;
    color: #292929;
    background-image: -webkit-gradient(linear, left bottom, left top, from(transparent));
    background-image: -webkit-linear-gradient(bottom, transparent);
    background-image: -o-linear-gradient(bottom, transparent);
    background-image: linear-gradient(0deg, transparent);
    /* Overwrite general H1 styling */ }
  #coverpage-title h2 {
    margin: 0;
    padding: 0.25em; }
  #coverpage-title h3 {
    margin: 0;
    padding: 0;
    font-size: 1.25em; }

#coverpage-description {
  margin: 5em 0 0 0;
  text-align: center; }
  #coverpage-description p {
    margin: 0;
    font-family: "Verlag", sans-serif; }
  #coverpage-description img {
    padding: 1em;
    width: 20em;
    border: 0 !important; }
  @media print {
    #coverpage-description {
      margin: 24em 0 0 0; } }

#about-page {
  background-color: analogous(#646569);
  padding: 1em;
  margin-top: 2em;
  font-size: 1em; }
  #about-page h1 {
    font-size: 1.5em;
    text-align: center;
    margin-top: 1em; }

/* topics outline */
#outline.outline-parent {
  margin: 1.5em 0 0 0;
  border: 1px solid #ddd;
  -webkit-box-shadow: 2px 2px 0px 0px #ddd;
  box-shadow: 2px 2px 0px 0px #ddd;
  margin-bottom: .5rem;
  padding-top: .5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap; }
  @media screen and (max-width: 450px) {
    #outline.outline-parent {
      -webkit-column-count: 1;
      column-count: 1; } }
  #outline.outline-parent h1 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%; }
  #outline.outline-parent ul,
  #outline.outline-parent ol {
    margin: 1em 0 1em 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap; }
    #outline.outline-parent ul p,
    #outline.outline-parent ul a,
    #outline.outline-parent ol p,
    #outline.outline-parent ol a {
      font-family: "Verlag", sans-serif;
      margin-left: 1em;
      padding: 0.2em 0 0 0;
      font-size: 1.2rem; }
    #outline.outline-parent ul a,
    #outline.outline-parent ol a {
      display: inline-block;
      color: #646569;
      padding-top: .25rem;
      line-height: 1.2;
      font-weight: 900; }
      @media screen and (max-width: 450px) {
        #outline.outline-parent ul a,
        #outline.outline-parent ol a {
          max-width: 250px; } }
  #outline.outline-parent .primary-topics > li:before {
    counter-increment: step-counter;
    padding: 0.25em .5em;
    width: 1rem;
    content: counter(step-counter);
    font-family: "Verlag", sans-serif;
    font-weight: 700;
    text-align: center;
    border-radius: 100%;
    color: white;
    background-color: #e4b12b;
    float: left; }
  #outline.outline-parent li {
    padding: .15em 0 0.15em 1em;
    min-height: 2em;
    page-break-inside: avoid;
    display: inline-block;
    margin-bottom: 0; }
    #outline.outline-parent li:before {
      padding: 0.25em .5em;
      width: 1em;
      font-family: "Verlag", sans-serif;
      font-weight: 700;
      text-align: center;
      border-radius: 100%;
      color: white;
      background-color: #e4b12b;
      float: left; }
    @media screen and (max-width: 500px) {
      #outline.outline-parent li {
        display: block;
        width: 100%; } }
  #outline.outline-parent ol.sub-topics {
    font-size: 1rem;
    margin-top: .5rem;
    margin-bottom: .5rem; }
    #outline.outline-parent ol.sub-topics li {
      padding: 0; }
      #outline.outline-parent ol.sub-topics li:before {
        display: none;
        position: absolute;
        height: 0;
        width: 0;
        content: counter(new-counter); }
      #outline.outline-parent ol.sub-topics li a {
        display: inline-block;
        margin-left: 4.5rem;
        font-size: 1rem;
        font-weight: 400;
        padding: .06125rem; }
  @media screen and (max-width: 450px) {
    #outline.outline-parent {
      display: block;
      width: 100%; } }

.topic-collapsed {
  max-height: 2em;
  -webkit-transition: .25s all ease;
  -o-transition: .25s all ease;
  transition: .25s all ease; }
  .topic-collapsed > ol {
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top; }

#outline .primary-topics-only .sub-topics {
  display: none;
  margin: 0;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top; }

button#toggle-subtopics {
  background-color: #f7f7f7;
  color: #646569;
  padding: .5rem;
  font-family: "Verlag", sans-serif;
  border-radius: .5em;
  -webkit-box-shadow: 1px 1px 1px 1px #d2d2d2;
  box-shadow: 1px 1px 1px 1px #d2d2d2;
  margin: .5rem;
  margin-bottom: 0;
  position: absolute;
  right: .5rem; }
  button#toggle-subtopics:focus {
    outline-width: 0px;
    outline-color: rgba(179, 196, 230, 0.5); }

#back-to-topics-sticky,
.top-link {
  text-align: right;
  float: right;
  font-weight: 900;
  width: 100%;
  text-align: right;
  margin-top: 1rem; }

#back-to-topics-sticky {
  font-family: "Verlag", sans-serif;
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  float: none;
  z-index: 10000;
  opacity: .2;
  width: 50%; }
  #back-to-topics-sticky:hover {
    opacity: 1; }

.uw-global-bar {
  background-color: #f7f7f7;
  z-index: 10000;
  margin: auto;
  display: block;
  max-width: 960px;
  width: 100%;
  position: fixed;
  top: 0;
  height: 2.25rem;
  margin-bottom: 2rem;
  padding: 10px;
  padding-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }
  .uw-global-bar:after {
    content: '';
    position: absolute;
    width: 200%;
    border-bottom: 1px solid #ddd;
    left: -50%;
    top: 2.25rem; }
    @media screen and (max-width: 700px) {
      .uw-global-bar:after {
        display: block;
        opacity: 0; } }
  @media screen and (max-width: 700px) {
    .uw-global-bar {
      padding: 1rem; } }
  @media screen and (max-width: 420px) {
    .uw-global-bar {
      display: none;
      padding: 1rem; } }
  .uw-global-bar a {
    color: #919191;
    font-weight: 100;
    font-size: 1rem;
    -webkit-box-flex: 5;
    -ms-flex: 5;
    flex: 5; }
  .uw-global-bar nav {
    -webkit-box-flex: 4;
    -ms-flex: 4;
    flex: 4;
    position: relative;
    display: inline-block; }
  .uw-global-bar ul {
    display: inline-block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    text-align: center;
    padding: 0;
    margin: 0; }
    @media screen and (max-width: 700px) {
      .uw-global-bar ul {
        display: block; } }
  .uw-global-bar li {
    padding: 0;
    line-height: 1.1;
    display: inline-block; }
    .uw-global-bar li a:hover {
      color: #646569; }
    @media screen and (max-width: 700px) {
      .uw-global-bar li {
        display: block;
        text-align: right; } }

/* SECTION 3: image classes
========================================================================== */
/* full width images */
img {
  margin: 1rem 0 .5em;
  max-width: 100%;
  border: 1px solid #ccc; }

.full-width-image {
  margin: 1em 0 0 0;
  overflow: hidden;
  text-align: center;
  clear: both; }
  .full-width-image img {
    width: 98%;
    border-radius: 0.25em;
    max-width: 98%; }

img[alt=""],
img:not([alt]) {
  border: 5px dashed #c00 !important; }

/* side by side images */
.sidebyside-image-large {
  margin-top: 1em;
  max-width: 40em;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  clear: both; }
  .sidebyside-image-large img {
    margin: 0;
    padding: 0;
    width: 19.75em;
    border-radius: 0.25em; }
    @media print {
      .sidebyside-image-large img {
        width: 17.17em; } }
  .sidebyside-image-large p {
    clear: both; }
  @media print {
    .sidebyside-image-large {
      max-width: 36em; } }

.sidebyside-image-small {
  margin-top: 1em;
  max-width: 24em;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  clear: both; }
  .sidebyside-image-small img {
    margin: 0;
    padding: 0;
    width: 11.75em;
    border-radius: 0.25em; }
    @media print {
      .sidebyside-image-small img {
        width: 9.75em; } }
  .sidebyside-image-small p {
    clear: both; }
  @media print {
    .sidebyside-image-small {
      max-width: 20em; } }

/* sidebar images */
.side-image-large {
  margin: 1em 0 0 1em;
  max-width: 18em;
  float: right;
  clear: both;
  border-radius: 0.25em; }
  .side-image-large img {
    width: 100%;
    border-radius: 0.25em; }
  @media print {
    .side-image-large {
      max-width: 15em; } }

.side-image-medium {
  margin: 1em 0 0 1em;
  max-width: 10em;
  float: right;
  clear: both; }
  .side-image-medium img {
    width: 100%;
    border-radius: 0.25em; }
  @media print {
    .side-image-medium {
      max-width: 8em; } }

.side-image-small {
  margin: 1em 0 0 1em;
  max-width: 5em;
  float: right;
  clear: both; }
  .side-image-small img {
    width: 100%;
    border-radius: 0.25em; }
  @media print {
    .side-image-small {
      max-width: 5em; } }

/* centered images */
.centered-image-large {
  margin: 1em 0 0 0;
  width: 100%;
  text-align: center; }
  .centered-image-large img {
    max-width: 100%;
    border-radius: 0.25em; }
    @media print {
      .centered-image-large img {
        max-width: 26em; } }

.centered-image-medium {
  margin: 1em 0 0 0;
  width: 100%;
  text-align: center; }
  .centered-image-medium img {
    max-width: 24em;
    border-radius: 0.25em; }
    @media print {
      .centered-image-medium img {
        max-width: 18em; } }

.centered-image-small {
  margin: 1em 0 0 0;
  width: 100%;
  text-align: center; }
  .centered-image-small img {
    max-width: 14em;
    border-radius: 0.25em; }
    @media print {
      .centered-image-small img {
        max-width: 10em; } }

.centered-image-tiny {
  margin: 1em 0 0 0;
  width: 100%;
  text-align: center; }
  .centered-image-tiny img {
    max-width: 8em;
    border-radius: 0.25em; }
    @media print {
      .centered-image-tiny img {
        max-width: 5em; } }

/* optional image borders */
img.half-left {
  display: block;
  max-width: 48%;
  margin-left: 0;
  margin-right: auto; }

img.half-right {
  display: block;
  max-width: 48%;
  margin-right: 0;
  margin-left: auto; }

figure {
  position: relative;
  padding: .5em;
  margin: .5em;
  margin-left: 0; }
  figure img {
    margin-bottom: .25em; }

figure figcaption {
  font-size: .8em;
  text-align: left;
  padding-left: .5em; }

/* SECTION 4: sidebar elements
========================================================================== */
/* sidebar notes */
aside,
.sidebar,
.sidebar-note {
  padding: .5em;
  margin: 1em 0 1em 1em;
  width: 16em;
  float: right;
  border: 0.25em solid #b2ebff;
  font-size: 1em;
  background-color: white;
  border-radius: 0.5em;
  clear: both;
  overflow: hidden; }
  @media screen and (max-width: 450px) {
    aside,
    .sidebar,
    .sidebar-note {
      float: none;
      margin: 1rem auto;
      max-width: 80%; } }
  aside *,
  .sidebar *,
  .sidebar-note * {
    padding: 0; }
  aside h2,
  .sidebar h2,
  .sidebar-note h2 {
    margin: 0;
    padding: 0.4em;
    font-size: 1.125em;
    font-weight: 700;
    background-color: #f2fbff;
    text-align: center; }
  aside img,
  .sidebar img,
  .sidebar-note img {
    width: 95%;
    margin: 0.25em auto 0.25em auto;
    padding: 0em;
    display: block;
    border-radius: 0.25em; }
  aside ul, aside ol,
  .sidebar ul,
  .sidebar ol,
  .sidebar-note ul,
  .sidebar-note ol {
    margin: 0.75em 0 0.75em 2.5em; }
    aside ul p, aside ol p,
    .sidebar ul p,
    .sidebar ol p,
    .sidebar-note ul p,
    .sidebar-note ol p {
      margin: 0 !important;
      padding: 0 !important; }
  aside p,
  .sidebar p,
  .sidebar-note p {
    margin: 0.75em !important;
    padding: 0em !important;
    font-size: 0.85em;
    line-height: 140%; }
    @media print {
      aside p,
      .sidebar p,
      .sidebar-note p {
        font-size: 0.7em; } }
  @media print {
    aside,
    .sidebar,
    .sidebar-note {
      width: 13em; } }

/* SECTION 5: toolbox and sidebar icons
   ========================================================================== */
/* sidebar icons */
.sidebar-icon,
.sidebar-note .sidebar-icon {
  margin: 1em 0 1em 1em;
  padding: 0.25em;
  width: 2.5em;
  height: 2.5em;
  border-radius: 100%;
  background-color: #EDF4F7;
  float: right; }
  @media print {
    .sidebar-icon,
    .sidebar-note .sidebar-icon {
      width: 2em;
      height: 2em; } }

/* toolbox */
/* SECTION 6: tables and instruction lists
========================================================================== */
/* tables */
table {
  margin: 1.5em auto 1.5em auto;
  width: 100%;
  max-width: calc(100% - 2rem) !important;
  border-collapse: collapse;
  table-layout: fixed;
  border-spacing: 0;
  font-size: 1em;
  line-height: 150%;
  clear: both; }
  @media screen and (max-width: 450px) {
    table {
      max-width: calc(100% - 2rem); } }
  table tbody {
    max-width: 100%; }
  table td,
  table th {
    padding: 0.75em;
    border: 1px solid #ccc;
    font-family: "Verlag", sans-serif;
    font-weight: 400;
    text-align: center; }
    @media print {
      table td,
      table th {
        padding: 0.5em; } }
  table th {
    background-color: #cbdae0;
    font-weight: 900; }
  table tr:nth-of-type(even) {
    background-color: #f4f4f4; }
  @media print {
    table {
      font-size: 0.8em; } }

/* instruction lists */
.instruction-list {
  list-style-type: none;
  margin-left: 1em; }
  .instruction-list > li {
    margin-top: .75em;
    margin-left: 2em;
    max-width: 80%;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(20%, transparent), color-stop(28%, #ddd), to(transparent));
    background-image: -webkit-linear-gradient(left, transparent 20%, #ddd 28%, transparent 100%);
    background-image: -o-linear-gradient(left, transparent 20%, #ddd 28%, transparent 100%);
    background-image: linear-gradient(90deg, transparent 20%, #ddd 28%, transparent 100%);
    background-size: 100% 1px;
    background-position: top;
    background-repeat: no-repeat;
    padding: .5em;
    padding-top: .75em;
    padding-left: 1em;
    position: relative; }
    @media screen and (max-width: 450px) {
      .instruction-list > li {
        margin-left: 1em;
        margin-right: 0;
        padding-left: .5em; } }
    .instruction-list > li:first-of-type {
      background-size: 0; }
  .instruction-list ul, .instruction-list ol {
    position: relative; }
    .instruction-list ul li, .instruction-list ol li {
      margin-top: 0;
      padding: .75em; }
    .instruction-list ul li::before, .instruction-list ol li::before {
      content: none; }
    .instruction-list ul p, .instruction-list ol p {
      margin: 0;
      padding: 0; }
  .instruction-list ol > li {
    margin: .5em; }
  .instruction-list li::before {
    font-family: "Verlag", sans-serif;
    font-weight: 700;
    content: counter(step-counter);
    border-radius: 100%;
    color: white;
    font-size: 1em;
    padding: 3px 12px;
    background-color: #8cbe41;
    position: absolute;
    left: -2.5em;
    -webkit-transition: .25s all;
    -o-transition: .25s all;
    transition: .25s all; }
    @media print {
      .instruction-list li::before {
        font-size: 0.8em;
        padding: 3px 6px; } }
  .instruction-list p {
    margin: 0; }

/* sub-instruction lists */
.instruction-list .instruction-list {
  list-style-type: none;
  margin-left: 2em;
  margin-top: 1em;
  margin-bottom: 1em; }
  .instruction-list .instruction-list ul li, .instruction-list .instruction-list ol li {
    margin-top: 0;
    padding: 0; }
  .instruction-list .instruction-list ul li::before, .instruction-list .instruction-list ol li::before {
    content: none; }
  .instruction-list .instruction-list ul p, .instruction-list .instruction-list ol p {
    margin: 0;
    padding: 0; }
  @media screen and (max-width: 450px) {
    .instruction-list .instruction-list li {
      margin-left: 0; } }
  .instruction-list .instruction-list li::before {
    content: counter(step-counter);
    border-radius: 100%;
    color: white;
    padding: 2px 10px;
    background-color: #3498db;
    position: absolute; }
    @media screen and (max-width: 450px) {
      .instruction-list .instruction-list li::before {
        padding: .125em .625em; } }
    @media print {
      .instruction-list .instruction-list li::before {
        font-size: 0.8em;
        padding: 3px 6px; } }

/* SECTION 7: coloring code and formatting code blocks
========================================================================== */
/* code block formatting */
code {
  font-family: "Roboto Mono", monospace;
  font-size: 0.9em;
  padding: 1rem;
  margin-left: 1em;
  margin-bottom: 2em;
  margin-top: 1.5em;
  border-radius: .5em;
  font-weight: 900;
  clear: both; }
  @media print {
    code {
      font-size: 0.8em; } }
  @media screen and (max-width: 450px) {
    code {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      max-width: 100% !important;
      width: 100%;
      white-space: pre-wrap;
      margin-left: 0;
      padding: .5rem;
      overflow-x: scroll; }
      code * {
        font-size: 1rem; } }

@media screen and (max-width: 450px) {
  pre,
  code {
    white-space: pre-wrap;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100%;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    word-wrap: break-word;
    overflow-x: scroll;
    font-size: .75rem; } }

/* code coloring */
.hljs {
  display: block;
  background: #333;
  overflow-x: auto;
  color: white; }

.hljs-name,
.hljs-strong {
  font-weight: bold; }

.hljs-code,
.hljs-emphasis {
  font-style: italic; }

.hljs-tag {
  color: #62c8f3; }

.hljs-variable,
.hljs-template-variable,
.hljs-selector-id,
.hljs-selector-class {
  color: #ade5fc; }

.hljs-string,
.hljs-bullet {
  color: #a2fca2; }

.hljs-type,
.hljs-title,
.hljs-section,
.hljs-attribute,
.hljs-quote,
.hljs-built_in,
.hljs-builtin-name {
  color: #ffa; }

.hljs-number,
.hljs-symbol,
.hljs-bullet {
  color: #d36363; }

.hljs-keyword,
.hljs-selector-tag,
.hljs-literal {
  color: #fcc28c; }

.hljs-comment,
.hljs-deletion,
.hljs-code {
  color: #888; }

.hljs-regexp,
.hljs-link {
  color: #c6b4f0; }

.hljs-meta {
  color: #fc9b9b; }

.hljs-deletion {
  background-color: #fc9b9b;
  color: #333; }

.hljs-addition {
  background-color: #a2fca2;
  color: #333; }

.hljs a {
  color: inherit; }

.hljs a:focus,
.hljs a:hover {
  color: inherit;
  text-decoration: underline; }

/* SECTION 8: inline text formatting
   ========================================================================== */
/* type text */
.type,
.type-text {
  font-size: 0.95em;
  font-family: "Roboto Mono", monospace;
  background-color: #d7d7d7;
  border-radius: 0.25em;
  overflow-wrap: break-word;
  word-wrap: break-word;
  overflow-x: scroll; }

/* inline keyboard icons */
kbd {
  display: inline-block;
  margin: 0 .1em;
  padding: .1em .6em;
  font-family: "Roboto Mono", monospace;
  font-size: 11px;
  line-height: 1.4;
  color: #242729;
  text-shadow: 0 1px 0 #FFF;
  background-color: #e1e3e5;
  border: 1px solid #adb3b9;
  border-radius: 3px;
  -webkit-box-shadow: 0 1px 0 rgba(12, 13, 14, 0.2), 0 0 0 2px #FFF inset;
  box-shadow: 0 1px 0 rgba(12, 13, 14, 0.2), 0 0 0 2px #FFF inset;
  white-space: nowrap; }

/* highlighted text */
/* also change type-text if it is highlighted */
.highlight,
.type-highlight,
.highlight-type,
.type-text .highlight,
.highlight .type-text {
  background-color: #a3e7f5;
  border-radius: 0.25em;
  padding: 0.125rem 0.25rem !important; }

.type-highlight,
.highlight-type {
  font-family: "Roboto Mono", monospace; }

/* SECTION 9: miscellaneous
========================================================================== */
/* titles with no top margin */
@media print {
  .no-top-margin {
    margin-top: 0; } }

/* pages breaks */
.page-break {
  page-break-after: always; }

/* stop elements from printing across pages */
@media print {
  table,
  code,
  .sidebar-note,
  .sidebar-icon,
  .toolbox {
    page-break-inside: avoid; } }

@media screen {
  .print-only {
    display: none; } }

.half-left {
  display: block;
  max-width: 48%;
  margin-left: 0; }
  @media screen and (max-width: 450px) {
    .half-left {
      max-width: 100%;
      width: 100%; } }

.float-left {
  display: inline-block;
  float: left;
  margin-right: .5rem; }
  .float-left:after {
    content: "";
    display: table;
    clear: left; }

.left {
  display: block;
  margin-left: 0;
  margin-right: auto .left; }
  .left :after {
    content: "";
    display: table;
    clear: left; }

.right {
  display: inline-block;
  max-width: 48%;
  margin-right: 0; }
  @media screen and (max-width: 450px) {
    .right {
      max-width: 100%;
      width: 100%; } }

.float-right {
  display: inline-block;
  float: right;
  margin-left: .5rem; }
  .float-right:after {
    content: "";
    display: table;
    clear: both; }

.right {
  display: block;
  margin-left: auto;
  margin-right: 0; }

.full-width {
  width: calc(100% - 1rem) !important;
  max-width: 100% !important;
  -ms-flex-preferred-size: 100% !important;
  flex-basis: 100% !important;
  display: block; }
  .full-width:after {
    content: "";
    display: table;
    clear: both; }

.two-up {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: .5rem; }
  @media screen and (max-width: 450px) {
    .two-up {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap; } }
  .two-up * {
    margin: 0 1rem;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -webkit-box-shadow: 2px 2px 0px 0px #dddddf;
    box-shadow: 2px 2px 0px 0px #dddddf; }
  .two-up img {
    display: inline-block;
    max-width: 45%;
    width: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto; }

.large {
  max-width: 100% !important; }

.medium {
  max-width: 50% !important; }

.small {
  max-width: 25% !important; }

.center {
  max-width: 50%;
  width: auto;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 450px) {
    .center {
      max-width: 100%; } }

.text-center,
.center-text {
  text-align: center; }
  .text-center > *,
  .center-text > * {
    text-align: center; }

.left-text,
.text-left {
  text-align: left; }
  .left-text > *,
  .text-left > * {
    text-align: left; }

.right-text,
.text-right {
  text-align: right; }
  .right-text > *,
  .text-right > * {
    text-align: right; }

.background-grey,
.background-gray {
  background-color: #f7f7f7; }

.rounded,
.round {
  border-radius: .5em; }

.reference,
.tool-reference,
.good-to-know,
.shortcut,
.important,
.warning {
  border-radius: .5em;
  background-color: white;
  overflow: hidden;
  max-width: 50%;
  padding: 1rem;
  padding-top: 3rem;
  margin-top: 1em;
  position: relative;
  text-align: center;
  text-align: left;
  border-width: 1px 5px 5px;
  border-style: solid;
  font-size: 1rem; }
  @media screen and (max-width: 450px) {
    .reference,
    .tool-reference,
    .good-to-know,
    .shortcut,
    .important,
    .warning {
      max-width: 100%; } }
  .reference *,
  .tool-reference *,
  .good-to-know *,
  .shortcut *,
  .important *,
  .warning * {
    padding: .5em;
    margin-bottom: 0;
    padding-bottom: 0;
    margin: .5em; }
    .reference *:first-of-type,
    .tool-reference *:first-of-type,
    .good-to-know *:first-of-type,
    .shortcut *:first-of-type,
    .important *:first-of-type,
    .warning *:first-of-type {
      margin-top: 0;
      padding-top: .5em; }
  .reference img,
  .tool-reference img,
  .good-to-know img,
  .shortcut img,
  .important img,
  .warning img {
    max-width: calc(100% - 2em); }
  .reference:first-child,
  .tool-reference:first-child,
  .good-to-know:first-child,
  .shortcut:first-child,
  .important:first-child,
  .warning:first-child {
    margin-top: 0;
    padding-top: 0; }
  .reference a,
  .reference span,
  .reference em,
  .reference strong,
  .tool-reference a,
  .tool-reference span,
  .tool-reference em,
  .tool-reference strong,
  .good-to-know a,
  .good-to-know span,
  .good-to-know em,
  .good-to-know strong,
  .shortcut a,
  .shortcut span,
  .shortcut em,
  .shortcut strong,
  .important a,
  .important span,
  .important em,
  .important strong,
  .warning a,
  .warning span,
  .warning em,
  .warning strong {
    padding: 0;
    margin: 0; }
  .reference:before,
  .tool-reference:before,
  .good-to-know:before,
  .shortcut:before,
  .important:before,
  .warning:before {
    font-size: 1.5em;
    font-family: "Verlag", sans-serif;
    position: relative;
    display: block;
    padding: .25em;
    border-width: 1rem;
    border-style: solid;
    border-top: 0;
    border-bottom: 0;
    position: absolute;
    width: 100%;
    top: 0;
    margin-bottom: .5em;
    text-align: center;
    left: -1rem; }

.good-to-know,
.shortcut,
.important,
.warning {
  margin-left: auto;
  margin-right: auto; }

.good-to-know {
  border-color: #327eb4; }
  .good-to-know:before {
    content: "Good To Know";
    color: white;
    background-color: #327eb4;
    border-color: #327eb4; }

.shortcut {
  border-color: #8cbe41; }
  .shortcut:before {
    content: "Shortcut";
    color: white;
    background-color: #8cbe41;
    border-color: #8cbe41; }

.important {
  border-color: #e4b12b; }
  .important:before {
    content: "Important";
    color: white;
    background-color: #e4b12b;
    border-color: #e4b12b; }

.warning {
  border-color: red; }
  .warning:before {
    content: "Warning!";
    color: white;
    background-color: red;
    border-color: red; }

.reference,
.tool-reference {
  border-color: #646569; }
  .reference:before,
  .tool-reference:before {
    content: "Reference";
    color: white;
    background-color: #646569; }

.reference,
.tool-reference {
  margin: 1em auto 2em;
  max-width: calc(80% - 2rem);
  border-radius: .5em; }
  @media screen and (max-width: 450px) {
    .reference,
    .tool-reference {
      margin: 1em;
      max-width: calc(100% - 2rem); } }
  section.reference-section .reference, section.reference-section
  .tool-reference {
    max-width: 40%;
    padding-top: 1rem; }
    section.reference-section .reference:before, section.reference-section
    .tool-reference:before {
      content: "";
      display: none; }
    @media screen and (max-width: 450px) {
      section.reference-section .reference, section.reference-section
      .tool-reference {
        max-width: 100%; } }
  .reference > img:first-of-type,
  .tool-reference > img:first-of-type {
    margin-right: 1rem;
    padding: 0;
    border-radius: 100%;
    border-radius: .5em;
    border: 2px solid #646569;
    background-color: white;
    margin: auto;
    display: block; }
    @media print {
      .reference > img:first-of-type,
      .tool-reference > img:first-of-type {
        width: 2em;
        height: 2em;
        padding: 0.25em; } }
  .reference > h2:first-of-type,
  .tool-reference > h2:first-of-type {
    text-align: center; }
  .reference > h3:first-of-type,
  .tool-reference > h3:first-of-type {
    text-align: center; }
  .reference h2,
  .reference h3,
  .tool-reference h2,
  .tool-reference h3 {
    font-size: 1.25rem;
    font-variant: normal;
    font-style: normal;
    font-weight: 800; }
  .reference li,
  .reference p,
  .tool-reference li,
  .tool-reference p {
    padding: 0;
    font-family: "Verlag", sans-serif;
    font-size: 1.125rem; }
    .reference li span,
    .reference li .highlight-type,
    .reference li .type,
    .reference li .type-text,
    .reference p span,
    .reference p .highlight-type,
    .reference p .type,
    .reference p .type-text,
    .tool-reference li span,
    .tool-reference li .highlight-type,
    .tool-reference li .type,
    .tool-reference li .type-text,
    .tool-reference p span,
    .tool-reference p .highlight-type,
    .tool-reference p .type,
    .tool-reference p .type-text {
      font-size: .85em;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      margin: 0; }
    @media print {
      .reference li,
      .reference p,
      .tool-reference li,
      .tool-reference p {
        font-size: 0.85em; } }
  .reference ol,
  .reference ul,
  .tool-reference ol,
  .tool-reference ul {
    padding-top: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 1em; }
  .reference p + p,
  .tool-reference p + p {
    margin-top: .5rem; }
  .reference .highlight-type,
  .reference .type,
  .reference .type-text,
  .tool-reference .highlight-type,
  .tool-reference .type,
  .tool-reference .type-text {
    font-size: 1em;
    padding-top: 0;
    padding-bottom: 0; }

.reference-section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around; }
  .reference-section h1 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%; }
  @media screen and (max-width: 450px) {
    .reference-section {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column;
      flex-flow: column; } }

.shadow {
  -webkit-box-shadow: 1px 1px 1px 1px #d2d2d2;
  box-shadow: 1px 1px 1px 1px #d2d2d2; }

.border {
  border: 1px solid #ccc; }

.noborder {
  border: 0; }

.quote {
  background-color: white;
  padding: .5rem; }

.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start; }
  @media screen and (max-width: 450px) {
    .gallery {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap; } }
  .gallery > * {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
