// should be the same as the filename and ./ns.json
@ns: challenges;

// challenge panes are bound to the pane size which in turn is
// bound to the total height minus navbar height
.max-element-height() {
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

.@{ns}-title {
  margin-top: 0;
  i {
    margin-left: 5px;
    line-height: 20px;
  }
}

.@{ns}-grayed-out-test-output {
  color: @gray-light;
}

.@{ns}-test-suite {
  margin-top: 10px;
  & .row {
    margin: 14px 0 0 0;
  }

  .big-icon {
    font-size: 30px;
    vertical-align: top;
  }

  .error-icon {
    color: @brand-danger;
    top: 50%;
  }

  .success-icon {
    color: @brand-primary;
  }

  .refresh-icon {
    color: @icon-gray;
  }
}

.@{ns}-instructions-panel {
  padding: 0 14px 0 14px;
}

.@{ns}-instructions {
  margin-bottom: 5px;
  h4 {
    margin-bottom: 0;
  }
  blockquote {
    font-size: 90%;
    font-family: @font-family-monospace !important;
    color: @code-color;
    background-color: #fffbe5;
    border-radius: @border-radius-base;
    border: 1px solid @pre-border-color;
    white-space: pre;
    padding: 5px 10px;
    margin-bottom: 10px;
    margin-top: -5px;
    overflow: auto;
  }
  dfn {
    font-family: @font-family-monospace;
    color: @code-color;
    background-color: @code-bg;
    border-radius: @border-radius-base;
    padding: 1px 5px;
  }
  & a, #MDN-links a {
    color: #31708f;
  }
  & a::after, #MDN-links a::after {
    font-size: 70%;
    font-family: FontAwesome;
    content: " \f08e";
  }
  ol {
    font-size: 16px;
  }
}

.@{ns}-log {
  border: 1px solid @brand-primary;
  margin: 24px 0 0 0;
}

.night {
  .@{ns}-instructions blockquote {
    background-color: #242424;
    border-color: #515151;
    color: #ABABAB
  }
  .@{ns}-instructions dfn {
    background-color: #242424;
    color: #02a902;
  }
  .@{ns}-editor .CodeMirror {
    background-color:@night-body-bg;
    color:#ABABAB;
    &-gutters {
      background-color:@night-body-bg;
      color:#ABABAB;
    }
    .cm-bracket, .cm-tag {
      color:#5CAFD6;
    }
    .cm-property, .cm-string {
      color:#B5753A;
    }
    .cm-keyword, .cm-attribute {
      color:#9BBBDC;
    }
    &-line {
      caret-color:#ABABAB;
    }
  }
  .@{ns}-log {
    border: none;
  }
  .refresh-icon {
    color: @icon-light-gray;
  }
  .@{ns}-preview {
    background-color: #FCFCFC;
  }
}

.@{ns}-test-output {
  font-size: 15px;
  font-family: "Ubuntu Mono";
  margin-top: 8px;
  line-height:20px;
  word-wrap: break-word;
}

.@{ns}-success-modal {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 50vh;

  .modal-title {
    color: @gray-lighter;
  }

  .modal-header {
    background-color: @brand-primary;
    margin-bottom: 0;

    .close {
      color: #eee;
      font-size: 4rem;
      opacity: 0.6;
      transition: all 300ms ease-out;
      margin-top: 0;
      padding-left: 0;

      &:hover {
        opacity: 1;
      }
    }
  }

  .modal-body {
    padding: 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;

    .fa {
      margin-right: 0;
    }
  }
}

.@{ns}-preview {
  .max-element-height();
  width: 100%;
  overflow-y: hidden;

  .js-alert-wrapper {
    .max-element-height();
    z-index: 5;
    position: fixed;
    width: 100%
  }

}

.@{ns}-preview-frame {
  .max-element-height();
  border: none;
  width: 100%;
}

.@{ns}-help-modal-heading > a {
  font-size: inherit;
}

&{ @import "./views/index.less"; }
