/*******************************************************************************
*
* DBL.css
*
* Single stylesheet for the entire DBL site.
*
*******************************************************************************/


/*******************************************************************************
*
* Conate Yellow: #F0C716;
* Conate Darker Yellow: #00007b;
* Conate Black: #000;
*
*
*******************************************************************************/



/************************   Generic atomic CSS styles to be applied widely   **/

.right {
    float: right;
}

.right.edge {
    margin-right: 0px;
}

.left {
    float: left;
}

.centered {
    /*display: block;
    margin: auto;*/
    text-align: center;
}

.clickable {
    cursor: pointer;
}

.flex-r {
    display: flex;
    flex-direction: row;
}

.flex-c {
    display: flex;
    flex-direction: column;
}

.flex-center {
    justify-content: center;
}

.flex-space {
    justify-content: space-between;
}

.flex-even {
    justify-content: space-evenly;
}

.flex-top {
    justify-content: flex-start;
}

.flex-end {
    justify-content: flex-end;
}

.flex-stretch {
    flex-grow: 1;
    flex-shrink: 0;
}

.full-w {
    width: 100%;
    flex-basis: 100%;
}

.space-right {
    margin-right: 8px;
}

.space-top {
    margin-top: 8px;
}


/******************************************************   Site-wide colors   **/

.blue:not(.btn) {
    color: #00007b;
    fill: #00007b;
}

.blue.btn {
    background-color: #00007b;
    color: #FFF;
}

.gray:not(.btn) {
    color: #E6E6E6;
    fill: #E6E6E6;
}

.gray.btn {
    background-color: #E6E6E6;
    color: #000;
}

.green:not(.btn) {
    color: #66B200;
    fill: #66B200;
}

.green.btn {
    background-color: #66B200;
    color: #FFF;
}

.yellow:not(.btn) {
    color: #F0C716;
    fill: #F0C716;
}

.yellow.btn {
    background-color: #F0C716;
    color: #00007b;
}

.red:not(.btn) {
    color: #B3041A;
    fill: #B3041A;
}

.red.btn {
    background-color: #B3041A;
    color: #FFF;
}

.white:not(.btn) {
    color: #FFF;
    fill: #FFF;
}

.white.btn {
    background-color: #FFF;
    color: #00007b;
}

.faded {
    opacity: 0.5;
}

.bold {
    font-weight: bold;
}

/***************************************************************   Buttons   **/

.btn {
    display: inline-block;
    cursor: pointer;
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 4px;
    text-transform: uppercase;
    text-align: center;
}

.btn-lg {
    font-size: 14px;
    font-weight: 600;
    min-width: 100px;
    padding: 8px 15px;
    margin: 10px 10px;
}

.btn-sm {
    font-size: 14px;    /* Since this is just an icon */
    padding: 4px 8px;
    margin: 0px 2px;
}

.btn-sm.left {
    margin: 3px 4px 0px 0px;
    padding: 5px 4px 5px 4px;
}

.btn-header {
    font-size: 0.8em;
    font-weight: 600;
    min-width: 90px;
    padding: 0px 10px;
    margin: -1px 0px 0px 15px;
    /* border: 1px solid #FFF; */
}

.btn.btn-rect {
    border-radius: 0px;
    font-size: 0.8em;
    padding: 6px 15px;
    margin: 5px;
    min-width: 150px;
    max-width: 375px;
}

.btn.btn-lg.btn-rect {
    font-size: 1em;
    padding: 10px 20px;
}

.btn:not(.btn-sm) i {
    margin-right: 10px;
}

.choice .flex-r .btn-sm.left,
#nonbranchingLink .btn-sm.left {
    margin-right: 10px;
    max-height: 14px;
}

.changeButtonDiv .centered .btn {
    margin: 0px 5px;
}

.mapEditButtonG,
.mapEditPermButtonG {
    cursor: pointer;
}

.faf {
    font-family: FontAwesome;
}

/*****************************************************   Header and Footer   **/

.full-header, .full-footer {
    width:100%;
    background-color: #00007b; /* #00007b; */
    border: none;
}

.full-header,
.banner {
    height: 55px;
}

.full-footer {
    border-width: 2px 0px 0px 0px;
    border-top-color: #155096;
}

.footer {
	padding: 0px 20px;
}

.banner-logo {
    display: inline-block;
    padding: 0px 20px;
}

/*
.banner-logo:hover {
    background-color: #40409b; // #333;
    cursor: pointer;
}
*/

.banner-logo a{
    color:white;
    font-size: 3em;
    font-weight: bold;
    height: 1.5em;
    line-height: 1.5em;
    text-decoration: none;
}

.site-logo {
    height: 35px;
    width: 35px;
    margin-top: 1px;
}

.banner-site-title {
    color: #FFF;
    font-family:Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-family: 'Open Sans', sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    line-height: 22px;
	padding-left: 15px;
    margin-top: 18px;
	display: inline-block;
    flex-flow: row wrap;
    text-decoration: none;
}

.user-info {
    padding: 12px 20px 0px 0px;
    line-height: 2em;
    float: right;
    text-align: right;
}

.user-sign-out {    
    display: inline-block;
}

.user-icon {
    padding: 6px 15px 0px 0px;
    color: #F0C716;
    display: inline-block;
}

.user-info-text {    
    display: inline-block;
    color: white;        
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-size: .8em;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
}

.banner-nav {
    height: 40px;
    margin: 0;
    background-color: #fff;
    border-bottom: 1px solid #C5C5C5
}

.banner-nav-content {
    margin: 0px 18px;
}

.user-links {
    width: 55%;
    margin: 0;
    padding: 5px 0px;
    display: inline-block;
}
.user-links a {   

    height: 39px;
    color: #00007b;
    margin-top: 15px;
    padding: 13px 33px 13px 33px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 31px;
    position: relative;

    text-transform: uppercase;
    font-size: 13px;
    font-weight: 400;
    text-align: center;    
    text-decoration: none;
    
    font-family: "Gotham A", "Gotham B", Helvetica, sans-serif;    
    font-style: normal;
        
}

.user-links a:hover {
    background-color: rgb(229, 229, 229);
}

.banner-class-title {
    padding: 5px 0px;
    font-size: 2em;
    text-align: right;
    float: right;
    width: 44%;
    
    font-family: arial;
    line-height: 1.75em;
    font-size: 20px;
    color: #00007b;
    font-weight: 200;    
}

.fa-times-circle.red.right {
    font-size: 1.5em;
}

/**********     BODY        **********/

body {
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    background-color: #00007b;
    margin: 0px;
    height: 100%;
}

.body {
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-size: 16px;
    background-color: #FFFFFF;
}

ol li {
	color: #B3041A;
}

.cf:before,
.cf:after {
    content: " ";
    display: table;
    visibility: hidden;
}

.cf:after {
    clear: both;
}

.container {
    width: 100%;
    min-height: 100%;
    padding: 0px;
    margin: 0 auto -54px;
    background-color: #FFFFFF;
}

.main-body {
    margin: auto;
    display: block;
}

#main-screen {
    margin: auto;
    max-width: 1200px;
    padding: 20px;
}

#question-nav {
    margin: auto;
    text-align: center;
    font-weight: bold;
}

.subtitle {
    margin: 10px 0px 5px 0px;
    text-align: center;
    font-weight: 400;
    font-family: "Gotham A", "Gotham B", Helvetica, sans-serif;
    font-style: normal;
}

.menu-subtitle {
    font-weight: 600;
    text-transform: uppercase;
}

.instructions {
    font-size: .9em;
    background-color: #e4e4e4;
    padding: 8px;
    /*border: 1px solid #888;*/
    border-left: 3px solid #C5C5C5;
    margin: 5px 0px 15px 0px;
}

.textinput {
    border: 1px solid #BBB;
    margin: 5px 0px;
    background: #FFF;
}

.textinput .caption {
    cursor: default;
    padding: 2px 5px 0px 5px;
    font-size: .8em;
    text-transform: uppercase;
    font-weight: 500;
    color: #888;
}

.textinput input {
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-size: 1em;
    border: none;
    width: 100%;
    padding-left: 5px;
    padding-right: 5px;
    font-size: 16px;
    margin: 5px 0px 0px;
}

.textinput input:focus,
.textinput textarea:focus {
    outline: none;
    background-color: #E3EAF1;
}

.textinput input.errorHighlight {
    background-color: #E2C8CB;
}

.textinput input.errorHighlight::-webkit-input-placeholder {
    color: #B3041A;
}

.textinput input.errorHighlight::-moz-input-placeholder {
    color: #B3041A;
}

.textinput input.errorHighlight:-ms-input-placeholder {
    color: #B3041A;
}

.textinput textarea {
    width: 100%;
    height: 8em;
    resize: none;
    margin: 0px;
    padding: 5px;
    border: none;
}

.grey-window {
    background-color: #E5E5E5;
    padding: 10px 15px;
}

.wide-input-field {
    width: 350px;
}

.input-error {
    border: 1px solid #B3041A;
    box-shadow: 0px 0px 4px #B3041A;
    -webkit-box-shadow: 0px 0px 4px #B3041A;
    -moz-box-shadow: 0px 0px 4px #B3041A;
}

.float-left {
    display: inline-block;
    padding-right: 5px;
}

form input,
textarea {
    margin-top: 7px;
}

.assignment {
	text-align: center;
    font-weight: bold;
    margin: 10px 0 10px 0;
}

.nav-text {
    font-family: arial;
    line-height: 2em;
    font-size: 20px;
    color: #00007b;
    font-weight: 200;    
    /* margin-top: -20px; */
    display: inline-block;
    position: relative;
    top: -5px;
}

.nav-icon {    
    font-size: 40px;
    line-height: 40px;
    padding: 0px 20px;
    display: inline-block;
}

.nav-enabled i,
.nav-enabled a:hover {
    color: #337F3D;
    cursor: pointer;
}

.nav-disabled i,
.nav-disabled a:hover {
    color: rgb(229, 229, 229);
}
.main-content {
    display: inline-block;
}

.warning-text {
    color: #990000;
    font-weight: bold;
    font-size: 1.2em;
}

.login-window {
    display: inline-block;
    background-color: #E6E6E6;
    margin:auto;
    width: 275px;
    padding: 20px;
    text-align: center;
    /*border: #BBB 2px solid;*/
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    float:right;
}

.login-window form {
    display: inline-block;
    margin:auto;
}

.optionText {
    text-transform: uppercase;
    font-size: .9em;
    font-weight: 600;
}

#activeAssignmentDiv {
    background-color: white;
    margin: 1px 0px;
    overflow-y: auto;
    width: 100%;
    position:absolute;
    left:0px;
    border-bottom: 1px solid #9A9A9A;
    overflow-x: hidden;
}

#activeAssignmentNav {
    padding: 10px;
    flex: 0 0 350px;
}

#activeAssignmentDisplay {
    overflow-y: hidden;
    background-color: #E6E6E6;
    padding: 0px;
    /*border-left: 1px solid #00007b;*/
    width: 100%;
}

#activeAssignmentText {
    padding: 10px 10px 0px 10px;
    overflow-y: auto;
    flex: 1 0 0;
}

#feedbackSliderDiv {
    margin-right: 5px;
    text-align: center;
}

#feedbackSlider {
    width: 125px;
    min-width: 125px;
}

#feedbackDescDiv {
    margin-bottom: 5px;
}

#feedbackTitle {
    font-weight: 600;
    text-transform: uppercase;
}

/*
.question-text, .node-question {
    margin-top: 5px;
    padding: 5px;
}

.node-container {
    min-height: 80px;
    padding-bottom: 10px;
    border: 2px solid darkblue;
}
*/
.scroll,
.scroller {
    overflow-y: auto;
    overflow-x: hidden;
}

/********** .NODEQUESTION: OVERLAY ON FULL MAP  **********/

#nodeTextEditor,
#moduleLinkEditor,
#questionEditor,
#choiceTextEditor {
    padding-left: 5px;
    width: 100%;
    resize: none;
}

#nodeQuestion {
    position: absolute;    
    height: auto;
    padding: 10px;
    margin: auto;
    background-color: white;
 /*
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;   
 */
    -webkit-box-shadow: 4px 4px 10px rgba(255, 255, 255, 0.9);
    -moz-box-shadow: 4px 4px 10px rgba(255, 255, 255, 0.9);
    box-shadow: 4px 4px 10px rgba(255, 255, 255, 0.9);   
    pointer-events: none;
    opacity: 1;
  }

  #nodeQuestion p {
    margin: auto;
    text-align: center;
    font-family: arial;
    font-size: 18px;
    font-weight: 200;
    line-height: 20px;
    color: #00007b;
    opacity: 1;
  }
  
 #formDiv,
 #highFormDiv,
 #allNodes,
 #allTypes {
    position: absolute;    
    height: auto;
    margin: auto;
    background-color: white;
    padding: 15px;
    border: 2px solid #000;
 }
 
 .editFormHeader {
     cursor: move;
     margin: -15px -15px -8px -15px;
     padding: 10px 15px 10px 15px;
     background-color: #00007B; //#E6E6E6;
 }
 
 .editForm {
     margin-bottom: 0px;
 }
 
 .editForm hr {
     margin-left: -15px;
     margin-right: -15px;
 }
 
 .editForm > .scroll {
     margin-top: 1.25em;
     margin-bottom: 1.25em;
 }

.saveButtonCenter {
    background-color: #e6e6e6;
    margin: 1em -15px -15px -15px;
    padding-bottom: 10px;
 }
 
 .saveButtonCenter .btn-lg {
     margin-top: 3px;
     margin-bottom: 3px;
 }
  
.node-buttons .main-button{    
    /*font-size: 1.3em;*/
}

.node-buttons .node-button {
    color: white;
    border: 2px solid;
    -webkit-transition-duration: 0.25s; /* Safari */
    transition-duration: 0.25s;
}

.node-question {
    font-size: 1.3em;
    font-weight: bold;
}

 
.node,
.jitjeG {
    cursor: pointer;
  }
  
  
.overlayShader{
    width: 100%;
    min-height: 100vh;
    height:100%;
    z-index: 5;
    position: fixed;
    top:0;
    left:0;
    background-color: #000;
    opacity: 0.65;
}

.overlayShader.highShader {
    z-index: 10;
}

.aboveShader {
    z-index: 6;
}

.aboveHighShader {
    z-index: 11;
}

.frontMenu {
    z-index: 3;
}

.backMenu {
    z-index: 2;
}

.loginWrapper {
    width: 100%;
    z-index: 9999;
    position: fixed;
    top: 75px;
    left: 0;
    overflow-y: auto;
}

.loginContainer {
    width: 33%;
    margin-left: auto;
    margin-right: auto;
    min-width: 750px;
    max-width: 900px;
    background-color: white;
    border: 2px solid #000;
    padding: 15px;
}

.loginContainer h2 {
    color: #00007b;
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    margin-top: 5px;
}

.node circle {
    r: 6.5;    
    stroke-width: 1px;
}

.pathButtonG {
    cursor: pointer;
}

.pathButtonG .pathCircle {
    r: 12;    
    stroke: #2A7DC1;
    stroke-width: 2;
    fill: #B6D5F0;
    fill: #CCE5FF;
}


.pathButtonG .pathCircle.red {
    fill: #B3041A;
    stroke: #54020C;
}

.pathButtonG .pathCircle.green {
    fill: #C6E29F;
    stroke: #66B200;
}


.nodeBBox circle {
    r: 20;
    stroke-width: 2px;
    stroke: #66B200;
    fill: #C6E29F;
}

.nodeBBox circle.groupAddButton,
.nodeBBox circle.groupRemoveButton {
    r: 12;
}
   
  .nodeText,
  .relationText {
    font-size:12px; 
    font-family:sans-serif;
  }
  
  .nodeQuestionText {
      font-size:14px;
      font-family: sans-serif;
  }
  
  .nodeQuestionText > tspan {
      fill: #172B55;
  }
  
  .nodeRect{
      fill: #E6E6E6;
      stroke: #888;
      stroke-width: 1px;
      rx: 4;
      ry: 4;
  }

  .nodeRect.mapHighlightNode {  
      fill: #fdd973;
  }
  
  .editRect {
      fill: #FFF;
      stroke: #444;
      stroke-width: 2px;
  }
  
  
  .jitjeRect {
      /*fill: #155096;
      fill: #00007b;
      fill: #1C68A0;*/
      fill: #004A97;
      rx: 4;
      ry: 4;
  }
  
  .jitjeText {
      font-size: 12px;
      font-family:sans-serif;
  }
  
  .jitjeText > tspan{
      fill: white;
  }
  
  .nodeQuestionRect {
      fill: #E5E5E5;      
      stroke-width: 1.5px;
  }
  
  .reviewRect {
      fill: #EFEFEF;
      stroke: #CCCBCA;
      stroke-width: 2px;
  }
  
  .reviewText {
      font-family: sans-serif;
      font-size: 14px;
  }
  
  .nodeRect.highlighted {
      fill: #efdabc;
	  stroke: #666;
	  fill: #E6E6E6;
          fill: #B6D5F0;
          fill: #CCE5FF;
      stroke: #B3041A;
      stroke: #2A7DC1;
      stroke-width: 2px;
  }

  .nodeRect.highlighted.mapHighlightNode {
      fill: #fdd973;
  }
 
  .relationRect {
      stroke-width: 2px;
      rx: 4;
      ry: 4;
  }
  
  .nodeCollapsed,
  .relationRect {      
      fill: #fff;
      stroke: #CCCBCA;
  }
  
.relationRect.mapHighlightRel {
    fill: #fdd973;
}

  .nodeChosen,
  .relationRect.highlighted,
  .nodeBBox.highlighted>rect {
      fill: #B6D5F0;
      stroke: #2A7DC1;
      stroke-width: 2px;
  }

.relationRect.highlighted.mapHighlightRel {
    fill: #fdd973;
}

.relationRect.backtrack, 
path.backtrack {
    stroke-dasharray: 8 3;
}

  .nodeCircle {
      fill: #E6E6E6;
      stroke: #888;
  }
  
  .nodeCircleMark {
      fill: #888;
      font-family: arial;
      font-size: .7em;
      pointer-events: none;
  }
  
  .nodeCircleMark.terminal {
      fill: darkorange;
  }
  
  .nodeTerminal,
  .nodeBBox circle.groupRemoveButton,
  .relationRect.postTerminal {
      fill: #FCC015; /*gold;*/
      stroke: darkorange;
  }

  .nodeCircle.nodeChosen.wrongNode {
      /*r: 10;
      stroke-width: 2px;*/
      stroke: #B3041A;
      fill: #FA0526;
  }
  
.nodeTerminal.mapHighlightNode {
	fill: #fdd973;
}

.nodeTerminal.highlighted {
    fill: orange;
    stroke: #B3041A;
    stroke-width: 2px;
}

  .nodeTerminal.inGroup {
	  fill: lavender;
	  stroke: mediumpurple;
  }

  .nodeTerminal.inGroup.currentGroup,
  .nodeBBox circle.groupAddButton {
	  /*fill: mediumpurple;*/
          fill: #9887BB;
	  stroke: rebeccapurple;
  }

  .nodeTerminal.inGroup.currentGroup + .nodeText {
	  fill: white;
  }

  .nodeNeedsEdit {
      stroke: #B3041A;
      stroke-width: 2px;
  }
  
  
  .link {
      fill: none;
  }

  .link:not(.animPath) {
	  stroke: #888;
      stroke-width: 2px;
  }
  
  .link.highlighted:not(.animPath) {
      stroke: #004A97;
      stroke-width: 3px;
      /*stroke-width: 5px;
      filter:url(#blur-filter-3);*/
  }
  
  .link-big:not(.animPath) {
      stroke-width: 4px;
  }
  
  .link-big.highlighted:not(.animPath) {
      stroke-width: 6px;
  }

.link.mapHighlightLink:not(.animPath) {
    stroke: #fdd973;
    stroke-width: 2px;
}
.link.highlighted.mapHighlightLink.highlightDash:not(.animPath) {
    /*
    stroke: #fdd973;
    stroke-width: 3px;
    */
}

.nodeBBox.highlighted>rect,
rect.highlighted {
    fill: #B6D5F0;
    fill: #CCE5FF;
    stroke: #2A7DC1;
    stroke-width: 2px;
}

.relationRect.mapHighlightRel.loopHighlight,
.nodeRect.mapHighlightNode.loopHighlight
 {
    fill: #84DCB4;
    fill: #bfcbd7;
}
.link.mapHighlightLink.loopHighlight:not(.animPath) {
    stroke: #84DCB4;
    stroke: #bfcbd7;
}

  .templink {
    fill: none;
    stroke: #B3041A;
  }
  
  .rectLight,
  .nqRect {
      stroke-width: 1px;
      stroke: #888;
      fill: #E6E6E6;
      rx: 4;
      ry: 4;
  }
  
  .duplicate {
      stroke: purple;
  }

  .ghostCircle.show{
    display:block;
  }

  .ghostCircle, .activeDrag .ghostCircle{
    display: none;
  }

.editCircle {
    stroke: #2A7DC1;
    stroke-width: 2;
    fill: #B6D5F0;
    fill: #CCE5FF;
}

.editCircleText {
    color: #2A7DC1;
}


.pathCircleText {
    color: #2A7DC1;
}

.nodeRect.editHighlighted {
    stroke-width: 3px;
    stroke: black;
}

.relationRect.editHighlighted {
    stroke-width: 3px;
    stroke: black;
}

.link.editHighlighted {
    stroke-width: 6px;
    stroke: black;
}

/*
.opaque {
    opacity: 0.65;
}
.opaque.link {
    opacity: 0.45;
}

.opaque.highlighted,
.opaque.nodeTerminal {
    opacity: .75;
}

*/

.link.sankey {
    opacity: 0.4;
}

.link.sankey:hover {
    opacity: 0.6;
}

.link.sankey.sankey-correct {
    stroke: #66B200;
}

.link.sankey.sankey-incorrect {
    stroke: #B3041A;
}


/******** Editor-Specific  **********/

p {
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
}

.editorHeader,
.leftMenu h3,
.rightMenu h3
{
    margin: 0px;
    font-size: 18px;
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-weight: bold;
    color: #00007b;
}

.scroller {
    padding-bottom: 10px;
}

.editorMenuRect {
    fill: #E6E6E6;
    rx: 10;
    ry: 10;
}


.editorMenuLabelRect {
    fill: #E6E6E6;
    cursor: pointer;
}
.editorMenuButtonRect {
    fill: #B6D5F0;
    fill: #E6E6E6;
    cursor: pointer;
}
.editButtonActive .editorMenuButtonRect {
	fill: #D9D9D9;
}
.editorMenuButtonRect:hover {
    fill: #CCC;
    /*stroke-width: 2px;*/
    cursor: pointer;
}

.editorMenuButtonG:hover text{
    fill: #111;
}

.editorMenuButtonText {
    pointer-events: none;
    fill: #555;
}


.editButtonActive .editorMenuButtonText,
.editButtonActive .editorMenuCourseText {
	fill: #00007b;
	fill: #1C68A0;

}

.editorMenuCourseText,
.editorMenuCourseSubtext {
	pointer-events: none;
	fill: #333;
	font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
	font-weight: 500;
	font-size: 1.2em;
}

#saveChangesButtonText {
    font-size: 1.0em;
}

#saveChangesButtonIcon {
    font-size: 1.2em;
}

.editorMenuCourseSubtext {
	font-size: 0.7em;
}

.track,
.track-inset,
.track-overlay {
  stroke-linecap: round;
}

.track {
  stroke: #000;
  stroke-opacity: 0.3;
  stroke-width: 8px;
}

.track-inset {
  stroke: #ddd;
  stroke-width: 6px;
}

.track-overlay {
  pointer-events: stroke;
  stroke: transparent;
  cursor: pointer;
}

.handle {
  fill: #fff;
  stroke: #000;
  stroke-opacity: 0.5;
  stroke-width: 1.25px;
}

/** Model-specific **/


.editCircle,
.editCircleText {
    cursor: pointer;
}

.editCircle disabled,
.editCircleText disabled {
    cursor: default;
    opacity: 0.65;
}

.decisionTypeIcon {
	color: #2A7DC1;
}

.termButton {
    float: right;
    color: black;
    background-color: #fdd973;
    margin-top: 2px;
}

.jitjeLink {
    float: right;
}

.saveButtonBottomDiv {
    text-align: center;
    position: absolute;
    right: 0;
    bottom: 15px;
    left: 0;
}

.typeSelectorDiv {
    border: #FFF solid 1px;
    cursor: pointer;
    padding: 10px;
}

.typeSelectorDiv.disabled {
    cursor: default;
	opacity: 1;
}

.typeSelectorDiv:hover {
    background-color:#E5E5E5;
}

.typeSelectorDiv.disabled:hover {
	background-color: #FFF;
    cursor: default;
    border: red solid 1px;
}

.typeSelectorIcon {
    padding: 25px 0px 0px 15px;
    float: left;
}

.typeSelectorText {
    font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-size: 14px;
    margin-left: 75px;
    padding: 10px 10px 10px 0px;
}

.typeSelectorDisableText,
.warningText {
    font-style: italic;
    font-weight: 500;
    color: #B3041A;
}

.typeSelectorLabel {
	color: #00007b;
	font-size: 18px;
	margin: 0px 0px 5px 0px;
	font-weight: 500;
}

.problemEditorTile {
    background-color: #E6E6E6;
    border: 1px solid #888;
    padding: 10px;
    margin: 10px 0px;
}

.problemEditorTileTitle {
    justify-content: space-between;
}

.problemEditorTileTitle label {
    font-size: 16px;
    font-weight: bold;
}

.problemTextbox {
    margin-top: 5px;
}

#problemPathSelectMenu {
    font-size: 1em;
    /*
    color: white;
    background-color: #1C68A0;
    border-radius: 4px;
    */
    padding: 2px;
    width: 100%;
}

.addRelButtonDiv,
.termButtonDiv {
    margin-top: 9px;
}

.showAdvancedButtonDiv {
    margin-top: 9px;
}

.addRelButton i,
.termButtonDiv i {
    font-size: 14px;
    padding-right: 4px;
}

.termButtonDescription {
    font-family:Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
    font-size: 14px;
    text-align: center;
    margin-bottom: 13px;
	margin-top: -5px;
}

.typeLabelDiv {
    margin-bottom: 6px;
}

.choiceLinkDiv,
.insertLinkDiv,
.removeLinkDiv {
    margin-top: 6px;
}

.linkRelButton,
.insertRelButton,
.removeRelButton {
    float: left;
}

.nodeInput {
    display: inline-block;
    width: 100%;
}

.choiceInput {
    width: 100%;
    overflow: hidden;
    margin: 0px;
}

.choiceInputNonbranching {
	margin: 2px 0px;
}

.nonbranchingLinkLabel {
	margin-bottom: 10px;
}

.choice {
    padding: 10px 5px;
    background-color: #EDF2F6;
}

.choice:nth-child(2n+1){
    background-color: #DEE7EF;
}

.grayBar {
    padding: 4px 4px 4px 6px;
    color: black;
    background-color: #E6E6E6;
    border-radius: 4px;
    margin-bottom: 4px;
    width: 100%;
}

.grayBar.selectedBar,
#activeAssignmentNav .gray.selectedBar {
    background-color: #D1D1D1;
}

.grayBar.clickable:hover,
#activeAssignmentNav .gray.clickable:hover {
    background-color: #C5C5C5;
}

.btn-col {
    margin-bottom: 7px;
}

.profileQuestionButtonFooter {
    font-size: .8em;
    text-transform: uppercase;
    font-weight: 600;
    color: #FFF;
    background-color: #888;
    margin: 4px -4px -4px -6px;
    padding: 2px 4px 2px 6px;
    border-radius: 0px 0px 4px 4px;
}

.linkNodeButton {
    border: 1px solid #888;
}

.linkNodeButton.terminal {
    background-color: gold;
    border: 1px solid darkorange;
}

/*
.groupEditorButton {
    background-color: lavender;
    border: solid 1px mediumpurple;
}

.groupEditorButton.currentGroup {
    background-color: mediumpurple;
    border: solid 1px rebeccapurple;
    color: white;
}
*/

.grayBar p {
    margin: 0px;
}

.profileButton {
    border: 1px solid #B3041A;
}

.profileButtonText {
	display: flex;
	flex-direction: row;
}

.profileButtonCount {
    margin: 2px 2px 0px 5px;
    background-color: #66B200;
    border-radius: 20px;
    padding: 2px;
    font-family: sans-serif;
    font-size: smaller;
    color: white;
    font-weight: bold;
    height: 1.1em;
}

.profileButtonCount.noCount {
    background-color: #FCC015;
    display: none;
}

.typeQButton {
    width: 100%;
    padding: 4px 10px;
    color: black;
    cursor: pointer;
    border-radius: 4px;
    margin-bottom: 4px; 
}

.profileButton.canExpand {
    border: 1px solid #66B200;
}

.sortButtonDiv {
    float:right!important;
    margin-left: 6px;
}

.problemEditor {
    padding: 10px;
    background-color: #E5E5E5;
    border-radius: 4px;
}

.problemEditorLeft {
    width: 30%;
    float: left;
}

.problemEditorRight {
    margin-left: 33%;
}

.linkNodeButton.selected {
    font-weight: bold;
}

.nodeDiv.offsetRight {
    margin-left: 36px;
}

.inherited {
    color: #888;
    /*color: #EA4B4B;
    color: #1C68A0;*/
}

.studentView {
    background-color: #FFF;
    border: 2px solid #00007b;
    padding: 4px;
    text-align: center;
}

.studentQuestion {
    /*margin: auto;*/
    text-align: left;
    font-family: verdana;
    font-size: 9pt;
    margin:10px 0px 0px 0px;
    background-color: #e5e5e5;  
    padding: 15px;
    overflow: auto;
    cursor: default;
}

.nodeSpanDiv {
    margin-top: 10px;
    background-color: #E6E6E6;
    border: 2px solid #888;
    border-radius: 6px;
    cursor: default;
}

.nodeSpan {
    font-size: 13px;
    font-family: sans-serif;
    text-align: center;
    padding: 4px 8px;
}

.jitjeSpanDiv {
    display: inline-block;
    margin-top: 8px;
    margin-bottom: 6px;
}

.jitjeSpan,
.nodeMediaDiv {
    font-size: 12px;
    font-family: sans-serif;
    color: white;
    text-align: center;
    
    background-color: #1C68A0;
    padding: 4px 10px;
    border-radius: 4px;
    
    cursor: pointer;
}

.jitjeSpan.overridden {
    background-color: #B3041A;
}

.nodeMediaDiv {
    display: inline-block;
    margin-top: 8px;
}

.studentViewHeader {
    background-color: #00007b;
    width: 100%;
}

.studentViewHeaderText {
    font-size: 16px;
    font-family: "Vitesse A", "Vitesse B", Georgia, serif;
    color: white;
}

.bottomPreview {
    position: absolute;
    margin-left: 10px;
    margin-right: 10px;
    bottom: 50px;
    right: 0;
    left: 0;
}

.saveButtonDiv {
    position: absolute;
    margin-left: 10px;
    margin-right: 10px;
    bottom: 0px;
    right: 0;
    left: 0;
}

/*******  FOOTER  ***********/

.full-footer,
.push-footer {
    width: 100%;
    height: 54px;
    /*margin-top: -92px;
    position: relative;
    bottom: 0px;*/
}

.footer-top {
    max-height: 38px;
    background-color: rgb(229, 229, 229);
}

.footer-top-text {
    font-family: arial;
    font-weight: 100;
    font-size: .75em;
    padding: 12px 0px;
    text-align: center;
    color: #777777;
    margin: auto;
}

.footer-logo {
    max-height: 38px;
    max-width: 375px;
    width: 375px;
    padding: 5px 0px 0px 0px;
    margin: auto;
}

.footer-text {
    padding-top: 17px;
    max-height: 16px;
    text-align: center;
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-size: .8em;
    font-weight: 400;
    padding-bottom: 5px;
    color: white;
}

.current-path {
    text-align: center;
}
.current-path > p{
    text-align: center;
    font-size: 1.2em;
    font-family:sans-serif;
    margin: auto;
}
.current-path main-button {
   max-width: 200px;
}

.main-button {
    border-radius: 0px;
    min-width: 80px;
    padding:5px 12px;
    /*padding-left: 12px;
    padding-right: 12px;*/
    margin: 3px 5px;
    color:white;
    /* text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6); */
    border-width: 0px;
}

.btn-blue {
    background-color: #4F81BD;
	background-color: #00007b;
    /* border-color: #155096; */
}

.btn-blue:hover {
    background-color: #74A0D4;
	background-color: #0056AE;
    /* border-color: #155096; */
}

.btn-green {
    background-color: #39CE31;
    border-color: #15BA0C;
}

.btn-green:hover {
    background-color: #57DB50;
}

.color-secondary-2-0 { color: #57DB50 }	/* GREENS */
.color-secondary-2-1 { color: #AAF3A7 }
.color-secondary-2-2 { color: #7BE776 }
.color-secondary-2-3 { color: #39CE31 }
.color-secondary-2-4 { color: #15BA0C }

.btn-gray {
    background-color: slategray;
    border-color: darkslategray;
}

.btn-orange {
    background-color: #FF963D;
    border-color: #E6720F;
}

.btn-orange:hover {
    background-color: #FFA85D;
}

.btn-red {
    background-color: #FF655D; /* Red */
    border-color: #E6190F;
}

.btn-red:hover {
    background-color: #FF8882;
}

.button {
    color: white;
    border: 2px solid;
    -webkit-transition-duration: 0.25s; /* Safari */
    transition-duration: 0.25s;
}

.button:hover {
    background-color: #FFFFFF; /* White */
    color: black;
}

.btn_green {
    background-color: #4CAF50; /* Green */
    border-color: #4CAF50;
}

.btn_blue {
    background-color: #008CBA; /* Blue */
    border-color: #008CBA;
}

.disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.disabled:after {
    width: 100%;
    height: 100%;
    position: absolute; 
}

iframe {
    /*width: 100%;
    height: 100%;*/
    overflow: hidden;
    overflow-x: hidden;
    overflow-y: hidden;
}

iframe body {
    overflow: hidden;
}

.hidden {
    display: none;
}