@CHARSET "UTF-8";
body.iframe{color:#111;background:#ffffff;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select,button{font-family:inherit;font-size:inherit;font-weight:inherit;}
/* disables the browser border highlight on focus */
input,textarea{outline:none;}
/* suppresses ipad default button style */
input[type=submit]{-webkit-appearance:none;-webkit-border-radius:0px;}
input[type=text],input[type=password],input[type=email]{-webkit-appearance:none;border:none;background-color:transparent;}
textarea{resize:none;-webkit-appearance:none;}
legend{color:#000;}
del,ins{text-decoration:none;}
/* disable dotted line border in firefox */
a:focus{outline: none;}
progress {-webkit-appearance: none;}
progress[value] {-webkit-appearance: none;}
progress:not([value]) {-webkit-appearance: none;}

a, a:visited, a:hover {
  text-decoration: none;
  /* suppress highlight in touch browsers */
  -webkit-tap-highlight-color: hsla(0, 0%, 100%, 0);
}
body {
  word-wrap: break-word;
}
strong {
  font-weight: bold;
}

@font-face {
  font-family: 'romana';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/Romana/Romana.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'romana';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/Romana/Romana-Bold.woff2') format('woff2');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'acumin-pro';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/Acumin-Pro/Acumin-Pro-normal-300.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'acumin-pro';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/Acumin-Pro/Acumin-Pro-normal-700.woff2') format('woff2');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'gt-america-extended';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/GT-America-Extended/GT-America-Extended-Regular.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'suisse-regular';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/Suisse-Regular/SuisseIntl-Regular-WebXL.woff2') format('woff2'),
       url('https://d3ldheg6bfgltf.cloudfront.net/Suisse-Regular/SuisseIntl-Regular-WebXL.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'suisse-mono';
  src: url('https://d3ldheg6bfgltf.cloudfront.net/Suisse-Mono/suissebpmono-regular-webfont.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

html {
  height: 100%;
}

body {
  font-family: 'acumin-pro', sans-serif;
  font-size: 14px;
  line-height: 21px;
  background-color: #fff;
  color: hsl(0, 0%, 13%);
  height: 100%;
}
  body.public-panels-shown {
    position: relative;
    min-width: 800px;
  }
    @media screen and (max-width: 1000px) {
      body.public-panels-shown {
        min-width: 320px;
      }
    }
  body.logged-in-panels-shown {
    background-color: #fff;
  }

.button {
  position: relative;
  display: inline-block;
  vertical-align: top;
  min-width: 1em;
  min-height: 1em;
  font-size: 14px;
  line-height: 1em;
  padding: 1em 2.5em;
  letter-spacing: 0px;
  border-radius: 1.5em;
  color: #fff;
  background-color: hsl(0, 0%, 15%);
  transition: background-color 150ms cubic-bezier(0, .50, .50, 1) 0s;
}
  @media print {
    .button {
      display: none;
    }
  }
  .button:focus {
    background-color: hsl(213, 100%, 54%);
    outline: none;
  }
  .button:hover {
    background-color: hsl(213, 100%, 36%);
  }
  .button.progress {
    background-color: hsl(0, 0%, 98%);
    color: hsl(0, 0%, 90%);
    cursor: progress;
  }
    .button.progress:hover {
      background-color: hsl(0, 0%, 98%);
      color: hsl(0, 0%, 90%);
    }
  .button .label {
    position: relative;
    top: -1px;
    max-width: 240px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  .button .progress-indicator {
    position: absolute;
    display: none;
    top: 2px;
    left: 2px;
    background-color: hsl(213, 100%, 36%);
    width: 6px;
    height: 6px;
    border-radius: 3px;
  }
    .button.progress .progress-indicator {
      display: block;
      animation: loader-blink 300ms cubic-bezier(0, .24, 0, 0.65) 0s infinite alternate;
    }
.utility-button {
  position: relative;
  display: inline-block;
  vertical-align: top;
  cursor: pointer;
  background-color: hsl(213, 100%, 46%);
  color: hsl(0, 0%, 99%);
  box-sizing: border-box;
  font-size: 14px;
  line-height: 20px;
  padding: 5px 10px;
  border-radius: 3px;
  transition: background-color 50ms linear;
}
  .utility-button.not-primary {
    background-color: hsl(0, 0%, 99%);
    border: solid 1px hsl(0, 0%, 1%);
    line-height: 18px;
    color: hsl(0, 0%, 1%);
  }
  .utility-button:focus {
    background-color: hsl(213, 100%, 66%);
    outline: none;
  }
  .utility-button:hover {
    background-color: hsl(213, 100%, 56%);
  }
    .utility-button.not-primary:hover {
      background-color: hsl(213, 100%, 95%);
    }
  .utility-button.progress {
    background-color: hsl(0, 0%, 98%);
    color: hsl(0, 0%, 90%);
    cursor: progress;
  }
    .utility-button.progress:hover {
      background-color: hsl(0, 0%, 98%);
      color: hsl(0, 0%, 90%);
    }
  .utility-button .label {
    max-width: 100vw;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  .utility-button .progress-indicator {
    position: absolute;
    display: none;
    top: 2px;
    left: 2px;
    background-color: hsl(213, 100%, 46%);
    width: 6px;
    height: 6px;
    border-radius: 3px;
  }
    .utility-button.progress .progress-indicator {
      display: block;
      animation: loader-blink 300ms cubic-bezier(0, .24, 0, 0.65) 0s infinite alternate;
    }

.delete-confirm {
  position: absolute;
  z-index: 210;
  width: 105px;
  background-color: #fff;
  text-align: center;
  padding: 14px 20px;
  margin-bottom: 40px;
  font-size: 14px;
  line-height: 21px;
  border: solid 1px hsl(0, 0%, 13%);
  box-shadow: 2px 2px hsl(0, 0%, 13%);
}
  .delete-confirm.with-description {
    width: 190px;
  }
  .delete-confirm .confirmation-text {
    height: 30px;
    line-height: 30px;
  }
    .delete-confirm.with-description .confirmation-text {
      height: auto;
      line-height: 21px;
      padding-bottom: 9px;
    }
  .delete-confirm .confirm-delete {
    display: inline-block;
    vertical-align: top;
    color: hsl(0, 82%, 62%);
    cursor: pointer;
    height: 30px;
    line-height: 30px;
    margin: 0px 10px;
  }
    .delete-confirm .confirm-delete:hover {
      color: hsl(213, 100%, 36%);
    }
  .delete-confirm .cancel-delete {
    display: inline-block;
    vertical-align: top;
    color: hsl(0, 0%, 60%);
    cursor: pointer;
    height: 30px;
    line-height: 30px;
    margin: 0px 10px;
  }
    .delete-confirm .cancel-delete:hover {
      color: hsl(213, 100%, 36%);
    }

.ellipsis-loader {

}
  .ellipsis-loader span {
    display: inline-block;
  }
  .ellipsis-loader span.dot-one {
    animation: ellipsis-loader-dot-one 500ms linear 0s infinite normal;
  }
    @keyframes ellipsis-loader-dot-one {
      0% { opacity: 0; }
      24% { opacity: 0; }
      25% { opacity: 1; }
      100% { opacity: 1; }
    }
  .ellipsis-loader span.dot-two {
    animation: ellipsis-loader-dot-two 500ms linear 0s infinite normal;
  }
    @keyframes ellipsis-loader-dot-two {
      0% { opacity: 0; }
      49% { opacity: 0; }
      50% { opacity: 1; }
      100% { opacity: 1; }
    }
  .ellipsis-loader span.dot-three {
    animation: ellipsis-loader-dot-three 500ms linear 0s infinite normal;
  }
    @keyframes ellipsis-loader-dot-three {
      0% { opacity: 0; }
      74% { opacity: 0; }
      75% { opacity: 1; }
      100% { opacity: 1; }
    }

.flourish {
  position: absolute;
  z-index: 210;
  min-width: 40px;
  min-height: 20px;
  max-width: 200px;
  max-height: 40px;
  padding: 5px 10px;
  background-color: hsl(10, 95%, 62%);
  color: hsl(0, 0%, 99%);
  border: solid 1px hsl(10, 95%, 52%);
  font-size: 14px;
  line-height: 20px;
  opacity: 1;
  overflow: hidden;
  animation: flourish-slide-up 150ms cubic-bezier(0, .50, .50, 1) 0s 1 normal;
}
.flourish.is-subdued {
  background-color: hsl(0, 0%, 99%);
  color: hsl(0, 0%, 13%);
  border-color: hsl(0, 0%, 90%);
  border-radius: 4px;
}
  .flourish .text-link {
    color: hsl(0, 0%, 99%);
    border-bottom: solid 1px hsla(0, 0%, 90%, 0.5);
    transition: border-bottom-color 100ms cubic-bezier(0, .50, .50, 1) 0s;
  }
  .flourish.is-subdued .text-link {
    color: hsl(0, 0%, 13%);
    border-bottom-color: hsla(0, 0%, 20%, 0.1);
  }
    .flourish .text-link:hover {
      border-bottom-color: hsl(0, 0%, 99%);
    }
    .flourish.is-subdued .text-link:hover {
      border-bottom-color: hsl(0, 0%, 20%);
    }
  @keyframes flourish-slide-up {
    0% { transform: translate3d(0px, 10px, 0px); }
    100% { transform: translate3d(0px, 0px, 0px); }
  }

/* Used to prevent flash of unstyled content for panes. */
/* css file for each pane overrides it when it loads. */
.hide-until-css-loaded {
  visibility: hidden;
}

.hover-tip {
  display: none;
  position: absolute;
  z-index: 210;
  min-width: 40px;
  min-height: 20px;
  max-width: 200px;
  max-height: 40px;
  padding: 5px 10px;
  background-color: #fff;
  color: hsl(0, 0%, 13%);
  border: solid 1px hsl(0, 0%, 95%);
  font-size: 14px;
  line-height: 20px;
  overflow: hidden;
}
  .hover-tip.with-media {
    max-height: 200px;
    padding: 5px;
  }
  .hover-tip.displayed {
    display: block;
  }
  .hover-tip.animate {
    animation: hover-tip-slide-up 150ms cubic-bezier(0, .50, .50, 1) 0s 1 normal;
  }
    @keyframes hover-tip-slide-up {
      0% { transform: translate3d(0px, 5px, 0px); }
      100% { transform: translate3d(0px, 0px, 0px); }
    }

.http-full-page-error-message {
  width: 280px;
  margin: 80px auto;
  text-align: center;
}

.img_loader_container {
  position: absolute;
  left: -99999px;
  top: 0px;
  width: 250px;
  height: 250px;
  overflow: hidden;
}

input.input-field {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  height: 20px;
  line-height: 20px;
  padding: 10px;
  width: 250px;
  border: 1px solid hsl(0, 0%, 80%);
  border-radius: 2px;
  color: hsl(0, 0%, 13%);
  background-color: hsl(0, 0%, 98%);
  box-sizing: content-box;
}
  input.input-field:focus {
    background-color: #fff;
  }

#lightbox {
  position: fixed;
  z-index: 200;
  top: 0px;
  left: 0px;
  width: 100vw;
  height: 100%;
  background-color: hsla(0, 0%, 13%, 0.9);
  animation: fade-in 150ms cubic-bezier(0, .50, .50, 1) 0s 1 normal;
}
  #lightbox .close-lightbox {
    position: absolute;
    z-index: 1;
    top: 0px;
    right: 0px;
    width: 60px;
    height: 60px;
    cursor: pointer;
  }
    #lightbox .close-lightbox .svg-icon {
      position: absolute;
      z-index: 1;
      top: 20px;
      right: 20px;
      width: 20px;
      fill: hsl(0, 0%, 99%);
    }
      #lightbox .close-lightbox:hover .svg-icon {
        fill: hsl(213, 100%, 75%);
      }
  #lightbox .access-control-message {
    color: hsl(0, 0%, 90%);
    background-color: hsl(0, 0%, 10%);
    width: 600px;
    padding: 20px 10px;
    margin: 50vh auto 0px;
    text-align: center;
    border-radius: 3px;
  }
    @media screen and (max-width: 1000px) {
      #lightbox .access-control-message {
        width: 260px;
      }
    }
    #lightbox .access-control-message .text-link {
      color: hsl(0, 0%, 90%);
      border-bottom: solid 1px hsla(0, 0%, 90%, 0.5);
      transition: border-bottom-color 100ms cubic-bezier(0, .50, .50, 1) 0s;
    }
      #lightbox .access-control-message .text-link:hover {
        color: hsl(0, 0%, 99%);
        border-bottom-color: hsl(0, 0%, 99%);
      }
  #lightbox .basic-content {
    width: 450px;
    margin: 10vh auto;
    background-color: hsl(0, 0%, 99%);
    padding: 25px;
    border-radius: 2px;
    max-height: 80vh;
    overflow: auto;
    box-sizing: border-box;
  }
    @media screen and (max-width: 600px) {
      #lightbox .basic-content {
        width: 320px;
      }
    }
    #lightbox .basic-content h1 {
      font-size: 24px;
      line-height: 1.3;
      padding: 0px 0px 20px;
    }
    #lightbox .basic-content h2 {
      font-size: 18px;
      line-height: 1.3;
      padding: 0px 0px 10px;
    }
    #lightbox .basic-content .inline-label {
      font-weight: bold;
    }
    #lightbox .basic-content .section {
      margin-bottom: 20px;
    }
      #lightbox .basic-content .section.margin-40 {
        margin-bottom: 40px;
      }
      #lightbox .basic-content .section.margin-30 {
        margin-bottom: 30px;
      }
    #lightbox .basic-content .block-note {
      margin: 10px 0px;
      padding: 14px 20px;
      background-color: hsl(0, 0%, 90%);
      border-radius: 3px;
    }
    #lightbox .basic-content .preserve-formatting {
      word-wrap: break-word;
      white-space: pre-wrap;
    }
  #lightbox .basic-video-content {
    width: 90vw;
    margin: 10vh auto;
    background-color: hsl(0, 0%, 99%);
    padding: 25px;
    border-radius: 2px;
    max-width: 600px;
    max-height: 80vh;
    overflow: auto;
    box-sizing: border-box;
  }
    #lightbox .basic-video-content video {
      display: block;
      width: 100%;
    }
.loader-dot {
  position: relative;
  width: 14px;
  height: 14px;
  cursor: progress;
}
  @media screen and (max-width: 1000px) {
    .loader-dot {
      width: 6px;
      height: 6px;
    }
  }
  .loader-dot.small {
    width: 6px;
    height: 6px;
  }
  .loader-dot .animated-dot {
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: hsl(223, 72%, 59%);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    animation: loader-blink 300ms cubic-bezier(0, .24, 0, 0.65) 0s infinite alternate;
  }
    @media screen and (max-width: 1000px) {
      .loader-dot .animated-dot {
        width: 6px;
        height: 6px;
      }
    }
    .loader-dot.small .animated-dot {
      width: 6px;
      height: 6px;
    }
#loader-initial {
  position: fixed;
  z-index: 210;
  top: 50vh;
  left: 50vw;
}
  #loader-initial .loader-dot {
    position: absolute;
    top: -7px;
    left: -7px;
    width: 14px;
    height: 14px;
  }
    #loader-initial .loader-dot .animated-dot {
      width: 14px;
      height: 14px;
    }

#loader-main {
  display: none;
  position: fixed;
  z-index: 210;
  top: 3px;
  left: 3px;
}
  body.loading #loader-main {
    display: block;
  }
  #loader-main .loader-dot {
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
    transition: opacity 1s cubic-bezier(.50, 0, 1, .50) 0s;
  }
    body.loading #loader-main .loader-dot {
      opacity: 1;
    }
      body.loading #loader-main.loading-fade-out .loader-dot {
        opacity: 0;
      }

.no-select {
  -webkit-user-select: none;
  -moz-user-select: none;
}

.no-tap-highlight {
  outline: none;
  -webkit-tap-highlight-color: hsla(0, 0%, 100%, 0);
}

#panel-content {
  position: relative;
  min-height: 100%;
}
  body.logged-in-panels-shown #panel-content {
    height: 100%;
  }

.pane-intro {
  margin: 0px 40px;
  padding: 200px 20px 20px;
  width: 640px;
}
  @media screen and (max-width: 600px) {
    .pane-intro {
      margin-left: 0px;
      margin-right: 0px;
      padding-top: 100px;
    }
  }
  @media screen and (max-width: 760px) and (min-width: 481px) {
    .pane-intro {
      width: 440px;
    }
  }
  @media screen and (max-width: 480px) and (min-width: 361px) {
    .pane-intro {
      width: 320px;
    }
  }
  @media screen and (max-width: 360px) {
    .pane-intro {
      width: 280px;
    }
  }
  .pane-intro.hide-until-css-loaded {
    visibility: visible;
  }
  .pane-intro .section {
    padding-bottom: 30px;
  }
    .pane-intro .section h1 {
      font-size: 32px;
      line-height: 1.3;
      padding: 20px 0px 10px;
    }
  .pane-intro .logo-header-w {
    padding-bottom: 17px;
  }
    .pane-intro .logo-header-w .logo-link {
      display: block;
    }
    .pane-intro .logo-header-w svg.logo {
      display: block;
      width: 300px;
      height: auto;
      margin-bottom: 10px;
    }

  .pane-intro .section {
    padding-bottom: 30px;
  }
    .pane-intro .section.has-top-border {
      border-top: solid 3px hsl(0, 0%, 13%);
    }
    .pane-intro .section h1 {
      font-size: 16px;
      line-height: 1.3;
      font-weight: bold;
      padding: 20px 0px 10px;
    }
    .pane-intro .section .course-summary {
      margin-bottom: 5px;
    }

.sign-post {
  position: absolute;
  z-index: 210;
  min-width: 180px;
  min-height: 20px;
  max-width: 400px;
  max-height: 400px;
  padding: 30px 24px 24px;
  background-color: #fff;
  color: hsl(0, 0%, 13%);
  border: solid 1px hsl(0, 0%, 13%);
  font-size: 14px;
  line-height: 21px;
  opacity: 1;
  box-shadow: 2px 2px hsl(0, 0%, 13%);
}
  @media screen and (max-width: 444px) {
    .sign-post {
      max-width: 90vw;
      max-height: 80vh;
    }
  }
  .sign-post.animate-slide-up {
    animation: sign-post-slide-up 150ms cubic-bezier(0, .50, .50, 1) 0s 1 normal;
  }
    @keyframes sign-post-slide-up {
      0% { transform: translate3d(0px, 10px, 0px); }
      100% { transform: translate3d(0px, 0px, 0px); }
    }
  .sign-post.animate-slide-down {
    animation: sign-post-slide-down 150ms cubic-bezier(0, .50, .50, 1) 0s 1 normal;
  }
    @keyframes sign-post-slide-down {
      0% { transform: translate3d(0px, -10px, 0px); }
      100% { transform: translate3d(0px, 0px, 0px); }
    }
  .sign-post.red {
    color: hsl(0, 0%, 99%);
    background-color: hsl(10, 95%, 62%);
    border-color: hsl(10, 95%, 62%);
  }
  .sign-post .close-sign-post {
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    height: 35px;
    width: 35px;
    cursor: pointer;
  }
    .sign-post .close-sign-post .svg-icon {
      position: absolute;
      z-index: 1;
      top: 15px;
      right: 15px;
      width: 10px;
      fill: hsl(0, 0%, 13%);
    }
      .sign-post .close-sign-post:hover .svg-icon {
        fill: hsl(213, 100%, 36%);
      }
      .sign-post.red .close-sign-post .svg-icon {
        fill: hsl(10, 95%, 95%);
      }
        .sign-post.red .close-sign-post:hover .svg-icon {
          fill: hsl(0, 0%, 99%);
        }
  .sign-post .all-caps-heading {
    font-size: 11px;
    font-weight: bold;
    padding: 10px 0px 8px;
  }
  .sign-post .fyi-msg {
    max-height: 350px;
    overflow: auto;
  }
  .sign-post .red-exclamation-icon {
    color: hsl(10, 95%, 62%);
  }

#site-header {
  display: none;
  position: absolute;
  z-index: 40;
  top: 60px;
  left: 0px;
  right: 0px;
  height: 40px;
  font-size: 14px;
  line-height: 20px;
}
  body.site-header-shown #site-header {
    display: block;
  }
  @media screen and (max-height: 780px) {
    #site-header {
      top: 10px;
    }
  }
  @media screen and (max-width: 600px) {
    #site-header {
      top: 10px;
    }
  }
  @media print {
    #site-header {
      display: none;
    }
  }
  #site-header .home {
    position: absolute;
    z-index: 1;
    top: 0px;
    left: 0px;
    padding: 11px 0px 9px 60px;
  }
    @media screen and (max-width: 600px) {
      #site-header .home {
        padding-left: 20px;
      }
    }
    body.logged-in-panels-shown #site-header .home {
      display: none;
    }
      body.logged-in-panels-shown.admin-panels-shown #site-header .home {
        display: block;
      }
    #site-header .home svg.logo {
      display: block;
      width: 125px;
      height: auto;
    }
  #site-header .right-nav {
    position: absolute;
    z-index: 1;
    top: 0px;
    right: 30px;
    height: 40px;
  }
    @media screen and (max-width: 600px) {
      #site-header .right-nav {
        right: 0px;
      }
    }
    #site-header .right-nav .logged-out-link {
      display: inline-block;
      font-size: 11px;
      line-height: 11px;
      padding: 15px 30px 15px 0px;
      max-width: 20vw;
      color: hsl(0, 0%, 13%);
      letter-spacing: 1px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      box-sizing: border-box;
    }
      @media screen and (max-width: 1000px) {
        #site-header .right-nav .logged-out-link {
          max-width: 30vw;
          padding-right: 15px;
        }
      }
      #site-header .right-nav .logged-out-link:hover,
      #site-header .right-nav .logged-out-link:focus {
        color: hsl(213, 100%, 36%);
      }

.text-link {
  color: hsl(0, 0%, 13%);
  border-bottom: solid 1px hsla(0, 0%, 13%, 0.5);
  transition: border-bottom-color 100ms cubic-bezier(0, .50, .50, 1) 0s;
}
  .text-link.light {
    color: hsl(0, 0%, 99%);
    border-bottom: solid 1px hsla(0, 0%, 99%, 0.4);
  }
  .text-link.critical {
    color: hsl(10, 95%, 62%);
    border-bottom-color: hsla(10, 95%, 62%, 0.1);
  }
  .text-link.subdued {
    color: hsl(0, 0%, 50%);
    border-bottom-color: hsla(0, 0%, 50%, 0.1);
  }
  .text-link.progress {
    color: hsl(0, 0%, 90%);
    border-bottom-color: hsl(0, 0%, 90%);
    cursor: default;
  }
  .text-link:hover {
    border-bottom-color: hsl(0, 0%, 13%);
  }
    .text-link.light:hover {
      border-bottom-color: hsl(0, 0%, 99%);
    }
    .text-link.critical:hover {
      border-bottom-color: hsl(10, 95%, 62%);
    }
    .text-link.subdued:hover {
      border-bottom-color: hsl(0, 0%, 50%);
    }
    .text-link.progress:hover {
      color: hsl(0, 0%, 90%);
      border-bottom-color: hsl(0, 0%, 90%);
    }

@keyframes loader-blink {
  0% {transform: scale3d(0.3, 0.3, 1);}
  100% {transform: scale3d(1, 1, 1);}
}
@keyframes fade-in {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes fade-out {
  0% { opacity: 1; }
  100% { opacity: 0; }
}
