nav.sequence-nav {
  // TODO (cpennington): This doesn't work anymore. XModules aren't able to
  // import from external sources.
  @extend .topbar;
  border-bottom: 1px solid $border-color;
  margin: (-(lh())) (-(lh())) lh() (-(lh()));
  position: relative;
  @include border-top-right-radius(4px);

  ol {
    @include box-sizing(border-box);
    display: table;
    height: 100%;
    margin: 0;
    padding-left: 3px;
    padding-right: flex-grid(1, 9);
    width: 100%;

    a {
      @extend .block-link;
    }

    li {
      display: table-cell;
      min-width: 20px;

      a {
        background-position: center;
        background-repeat: no-repeat;
        border: 1px solid transparent;
        border-bottom: none;
        @include border-radius(3px 3px 0 0);
        cursor: pointer;
        display: block;
        height: 10px;
        padding: 15px 0 14px;
        position: relative;
        @include transition();
        width: 100%;

        &:hover {
          background-repeat: no-repeat;
          background-position: center;
          background-color: #F6F6F6;
        }

        &.visited {
          background-color: #F6F6F6;

          &:hover {
            background-position: center center;
          }
        }

        &.active {
          border-color: $border-color;
          @include box-shadow(0 2px 0 #fff);
          background-color: #fff;
          z-index: 9;

          &:hover {
            background-position: center;
            background-color: #fff;
          }
        }

        &.progress-none {
          background-color: lighten(red, 50%);
        }

        &.progress-some {
          background-color: yellow;
        }

        &.progress-done {
          background-color: green;
        }

        //video
        &.seq_video {
          &.inactive {
            background-image: url('../images/sequence-nav/video-icon-normal.png');
          }

          &.visited {
            background-image: url('../images/sequence-nav/video-icon-visited.png');
          }

          &.active {
            @extend .active;
            background-image: url('../images/sequence-nav/video-icon-current.png');
          }
        }

        //other
        &.seq_other {
          &.inactive {
            background-image: url('../images/sequence-nav/document-icon-normal.png');
          }

          &.visited {
            background-image: url('../images/sequence-nav/document-icon-visited.png');
          }

          &.active {
            background-image: url('../images/sequence-nav/document-icon-current.png');
          }
        }

        //vertical & problems
        &.seq_vertical, &.seq_problem {
          &.inactive {
            background-image: url('../images/sequence-nav/list-icon-normal.png');
          }

          &.visited {
            background-image: url('../images/sequence-nav/list-icon-visited.png');
          }

          &.active {
            background-image: url('../images/sequence-nav/list-icon-current.png');
          }
        }

        p {
          background: #333;
          color: #fff;
          display: none;
          font-family: $sans-serif;
          line-height: lh();
          left: 0px;
          opacity: 0;
          padding: 6px;
          position: absolute;
          top: 48px;
          text-shadow: 0 -1px 0 #000;
          @include transition(all, .1s, $ease-in-out-quart);
          white-space: pre;
          z-index: 99;

          &:empty {
            background: none;

            &::after {
              display: none;
            }
          }

          &::after {
            background: #333;
            content: " ";
            display: block;
            height: 10px;
            left: 18px;
            position: absolute;
            top: -5px;
            @include transform(rotate(45deg));
            width: 10px;
          }
        }

        &:hover {
          p {
            display: block;
            margin-top: 4px;
            opacity: 1;
          }
        }
      }
    }
  }

  ul {
    list-style: none;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: flex-grid(1, 9);
    border: 1px solid $border-color;
    border-bottom: 0;
    @include border-radius(3px 3px 0 0);

    li {
      float: left;
      margin-bottom: 0;
      width: 50%;

      &.prev, &.next {

        a {
          background-position: center;
          background-repeat: no-repeat;
          display: block;
          height: 10px;
          padding: 15px 0 14px;
          text-indent: -9999px;
          @include transition(all, .2s, $ease-in-out-quad);

          &:hover {
            opacity: .5;
            background-color: #f4f4f4;
          }

          &.disabled {
            cursor: normal;
            opacity: .4;
          }
        }
      }

      &.prev {
        a {
          background-image: url('../images/sequence-nav/previous-icon.png');
        }
      }

      &.next {
        a {
          border-left: 1px solid lighten($border-color, 10%);
          background-image: url('../images/sequence-nav/next-icon.png');
        }
      }
    }
  }

  body.touch-based-device & ol li a:hover p {
    display: none;
  }
}

div.seq_contents {
  display: none;
}

nav.sequence-bottom {
  margin: lh(2) 0 0;
  text-align: center;

  ul {
    @extend .clearfix;
    border: 1px solid $border-color;
    @include border-radius(3px);
    @include inline-block();

    li {
      float: left;

      &.prev, &.next {
        margin-bottom: 0;

        a {
          background-position: center center;
          background-repeat: no-repeat;
          border-bottom: none;
          display: block;
          padding: lh(.5) 4px;
          text-indent: -9999px;
          @include transition(all, .2s, $ease-in-out-quad);
          width: 45px;

          &:hover {
            background-color: #ddd;
            color: #000;
            opacity: .5;
            text-decoration: none;
          }

          &.disabled {
            opacity: .4;
          }
        }
      }

      &.prev {
        a {
          background-image: url('../images/sequence-nav/previous-icon.png');
          border-right: 1px solid lighten($border-color, 10%);

          &:hover {
            background-color: none;
          }
        }
      }

      &.next {
        a {
          background-image: url('../images/sequence-nav/next-icon.png');

          &:hover {
            background-color: none;
          }
        }
      }
    }
  }
}
