/*
Copied from persus project
*/
.math-input-buttons.absolute {
  left: -2px;
  position: absolute;
  top: -3px;
  z-index: 101;
}
.tex-button {
  display: block;
  float: left;
  width: 42px;
  height: 42px;
  margin: 2px;
  border: 1px solid #1c758a;
  background-color: white;
  border-radius: 5px;
}
.tex-button:hover {
  cursor: pointer;
  background-color: #f0f0f0;
}
.tex-button:focus {
  border: 2px solid #1c758a;
outline: none;
}
.tex-button-row {
margin: 5px 0;
}
.tex-button-row:first-child {
margin-top: 0;
}
.tex-button-row:last-child {
margin-bottom: 0;
}
/*
end of styles copied form perseus
*/

.homepage-center {
width: 100%;
-webkit-box-align: center;
align-items: center;
display: flex;
flex-direction: column;
text-align: center;
margin-left: auto;
    margin-right: auto;
}

/* Hide the confusing "no file chosen" text on chrome*/
input[type='file'] {
  color: transparent;
  width: 200px;
  overflow-x: hidden;
}

input[type='text'] {
    padding: 5px
}

textarea {
    padding: 5px
}

h1 {
  font-size: 3.6em;
}
h2 {
  font-size: 2.5em;
  margin: 0;
  color: #0d9600;
}
h3 {
  font-size: 1.6em;
  margin: 0;
}
h1 small {
  font-size: 60%;
}

.homepage-headline {
    padding: 0px 2vw 60px 2vw;
    /* this is necesary to prevent the padding from adding to thw width */
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
}

.fm-button-light {
  border: 2px solid transparent;
  display: inline-block;
  margin: 2px;
  padding: 0px 8px 0px 8px;
  background-color: white;
  font-size: 12px;
  font-weight: 600;
  color: #212121;
  border-radius: 15px;
}

.fm-button-light:hover {
  cursor: pointer;
  background-color: #f2f2f2;
}
.fm-button-light:focus {
  border: 2px solid #ffa535;
  outline: none;
}

.fm-button-light:disabled {
  background-color: #eaeaea;
}

.fm-button-grey {
  border: 2px solid transparent;
  padding: 4px 8px;
  margin: 4px;
  background-color: gray;
  color: #f1f1f1;
  border-radius: 15px;
  font-size: 12px;
  font-weight: 600;
}

.fm-button-grey:disabled {
  background-color: #eaeaea;
  color: #212121;
}

a.fm-button-grey:hover
{
  cursor: pointer;
  background-color: #3b3b3b;
  color: #f1f1f1;
}

.fm-button-grey:hover:enabled
{
  cursor: pointer;
  background-color: #3b3b3b;
}

.fm-button-grey:focus {
  border: 2px solid #ffa535;
  outline:0;
}

.fm-button-grey:active {
  transform: scale(0.99);
}


.fm-button {
  border: 2px solid transparent;
  padding: 4px 8px;
  margin: 4px;
  background-color: #0d57bf;
  color: #f1f1f1;
  border-radius: 15px;
  font-size: 12px;
  font-weight: 600;
}

.fm-button:disabled {
  background-color: #eaeaea;
  color: #212121;
}

.fm-button-green:hover:enabled
{
  cursor: pointer;
  background-color: #052d66;
}


a.fm-button:hover
{
  cursor: pointer;
  background-color: #052d66;
  color: #f1f1f1;
}

.fm-button:hover:enabled
{
  cursor: pointer;
  background-color: #052d66;
}

.fm-button:focus {
  border: 2px solid #ffa535;
  outline:0;
}

.fm-button:active {
  transform: scale(0.99);
}

.fm-button-green {
    background-color: #008000
}

.fm-button-green:hover:enabled
{
  cursor: pointer;
  background-color: #005000
}

.fm-button-left {
  border: 2px solid transparent;
  padding: 4px 4px 4px 8px;
  margin-left: 1px;
  margin-right: 0px;
  color: #111111;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
  font-size: 12px;
  font-weight: 600;
}

.fm-button-left:focus {
  border-left: 2px solid #ffa535;
  border-top: 2px solid #ffa535;
  border-top: 2px solid #ffa535;
  outline:0;
}

.fm-button-right {
  border: 2px solid transparent;
  padding: 4px 8px 4px 4px;
  margin-right: 1px;
  margin-left: 0px;
  color: #111111;
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  font-size: 12px;
  font-weight: 600;
}

.fm-tab {
  background-color: #e1e1e1
}

.fm-tab:hover:enabled {
  background-color: #919191
}

.fm-tab-selected {
  background-color: #b1b1b1
}


.fm-button-selected {
  background-color: #052d66
}

.fm-button-selected:hover {
  background-color: #011024
}

.fm-close-button {
  border: 2px solid transparent;
  float: right;
  display: inline-block;
  height: 20px;
  margin: 2px;
  padding: 3px 6px 20px 6px;
  background-color: white;
  border: 1px solid #d1d1d1;
  color: #414141;
  border-radius: 3px;
}
.fm-close-button:hover {
  cursor: pointer;
  background-color: #e0e0e0;
}
.fm-close-button:focus {
  border: 2px solid #ffa535;
  outline: none;
}

.navBarElms{
     margin-top: 4px;
     padding: 7px 5px 5px 5px;
}

div.answer-partially-correct {
    padding: 10px;
    border-radius: 2px;
    border:1px solid #a4a4a4;
    background-color:#FFFDBF;
}

div.answer-correct {
    border-radius: 2px;
    border:1px solid #a4a4a4;
    background-color:#D0FFC9;
}

div.show-correct-div {
    border:1px solid black;
    background-color:#D0FFC9;
    border-radius: 2px;
    display:inline-block;
    margin: 0px 5px 5px 0px;
    padding: 5px 5px 5px 5px;
}

div.show-incorrect-div {
    border:1px solid black;
    background-color:#FFDEDE;
    border-radius: 2px;
    display:inline-block;
    margin: 0px 5px 5px 0px;
    padding: 5px 5px 5px 5px;
}

div.show-partially-correct-div {
    border:1px solid black;
    background-color:#FFFDBF;
    border-radius: 2px;
    display:inline-block;
    margin: 0px 5px 5px 0px;
    padding: 5px 5px 5px 5px;
}

div.show-complete-div {
    border:1px solid black;
    background-color:#DEDEDE;
    border-radius: 2px;
    display:inline-block;
    margin: 0px 5px 5px 0px;
    padding: 5px 5px 5px 5px;
}

div.similar-assignment-filters {
    border-radius: 2px;
    border:1px solid #a4a4a4;
    margin: 15px 15px 15px 15px;
    padding: 15px 15px 15px 15px;
    background-color:#FFFDBF;
}

div.assignment-filters {
    margin: 5px 5px 5px 5px;
    padding: 5px 5px 5px 5px;
}

div.similar-student-answers {
    /*
    margin: 15px 15px 15px 15px;
    padding: 15px 15px 15px 15px;
    background-color:white;
    border:1px solid #cfcfcf;
    border-radius: 3px;
    box-shadow: 0 10px 6px -6px #777;
    */
}

div.student-work {
    border-radius: 3px;
    border:1px solid #a4a4a4;
    box-shadow: 0 5px 3px -3px #cfcfcf;
    margin: 10px 5px 10px 5px;
    padding: 15px 15px 15px 15px;
}

div.problem-container {
    border-radius: 3px;
    border:1px solid #bfbfbf;
    background-color:white;
    margin: 0px 0px 15px 0px;
    padding: 15px 15px 30px 15px;
    box-shadow: 0 5px 3px -3px #cfcfcf;
}

.extra-long-problem-action-button {
    width: 180px
}

.long-problem-action-button {
    width: 140px
}

.short-problem-action-button {
    width: 62px
}

.equation-list {
    float:left;
    min-width:40%;
    max-width:77%
}

.homepage-actions-container {
    width:44%;
    height: auto;
    float: left;
    border-radius:3px;
    margin:5px 5px 5px 5px;
    padding:20px;
}

.wide-tex-button {
    width:100px
}

.text-step-input {
    width:800px;
}

.big-mobile-button {
    height:auto;
    float:left;
    border-radius:60px;
    margin:5px 5px 10px 5px;
    padding:10px;
    text-align:center
}

@media (max-width: 1250px) {
    .menubar-spacer {
        height: 60px;
        display: block
    }
    .menubar-spacer-small {
        height: 60px;
        display: block
    }
}

@media (max-width: 640px) {
     div.problem-editor-buttons {
         width: 100%;
     }
    h3 {
      margin: 0;
    }

    .homepage-headline {
        font-size: 40px;
        padding-bottom: 0px;
    }

    .big-mobile-button {
        font-size: 25px;
        width: 320px;
    }
    .freemath-logo{
        margin-top: 8px
    }
    .navBarElms {
        font-size:20px
    }
    /* for display on moblie when items flow to next line, given them
     * some margin */
    .navBarItem {
        margin-top: 5px
    }

    .webcam-capture {
        width:450px;
    }

    .text-step-input {
        width:450px;
    }
    .homepage-actions-container {
        width:85%;
    }

    .save-state-message {
        text-overflow: ellipsis;
        overflow: hidden;
        display: inline-block;
        white-space: nowrap;
        margin-top: 5px;
        margin-left: 15px;
        margin-right: 15px;
        width: 400px
    }
    .google-assignment-name {
        line-height:2;
        max-width: 400px
    }

    .equation-list {
        max-width:95%
    }
    iframe.tutorial-video {
        width: 450px;
        height:300px;
        display:block
    }
    .mathStepEditor {
        max-width:400px
    }
    .math-input-buttons {
        background-color: rgba(245, 245, 245, 0.9);
        border-radius: 5px;
        border: 1px solid #ddd;
        box-sizing: border-box;
        margin-top: 5px;
        padding: 10px;
        width: 601px;
    }
    .matrix-end-caps-and-buttons {
        max-width: 150px
    }
    .math-input-buttons.absolute {
      left: -75px;
      right: -200px;
      position: absolute;
      top: -3px;
      z-index: 101;
    }
    .homepage-disappear-mobile {
        display:none
    }

    .homepage-center-mobile {
        width: 100%;
        -webkit-box-align: center;
        align-items: center;
        text-align: center;
        display: flex;
        flex-direction: column;
        margin-left: auto;
        margin-right: auto;
        padding: 0vw 2vw 10vw 2vw;
        /* this is necesary to prevent the padding from adding to the width */
        -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
        -moz-box-sizing: border-box;    /* Firefox, other Gecko */
        box-sizing: border-box;         /* Opera/IE 8+ */
    }

    .homepage-wrapper {
        align-items: center;
        text-align: center;
        padding: 70px 0px 0px 0px;
        display: inline-block;
        margin: 0px 30px 0px 30px
    }

    .menubar-spacer {
        height: 50px;
        display: block
    }
    .menubar-spacer-small {
        height: 50px;
        display: block
    }

    div.homepage-user-actions {
        align-items: center;
    }
}

@media (min-width: 641px) {
    .inline-block-when-not-on-mobile {
        display: inline-block
    }
    div.problem-editor-buttons {
        width: 140px;
     }
    .big-mobile-button {
        font-size: 20px;
        width: 270px
    }
    iframe.tutorial-video {
        width: 800px;
        height:600px;
        display:block
    }
    .webcam-capture {
        width:700px;
    }
    .mathStepEditor {
        max-width:800px;
        min-width:750px
    }
    .math-input-buttons {
        background-color: rgba(245, 245, 245, 0.9);
        border-radius: 5px;
        border: 1px solid #ddd;
        box-sizing: border-box;
        margin-top: 5px;
        padding: 10px;
        width: 701px;
    }
    .freemath-logo{
        margin-top: 5px
    }
    .freemath-logo-text {
        font-size: 22px;
        margin: 0;
    }
    .save-state-message {
        text-overflow: ellipsis;
        overflow: hidden;
        display: inline-block;
        white-space: nowrap;
        margin-top: 5px;
        margin-left: 15px;
        margin-right: 15px;
        width: 217px
    }
    .google-assignment-name {
        max-width: 200px
    }
    .homepage-only-on-mobile {
        display:none
    }
    .homepage-headline {
        font-size: 60px;
    }
    .homepage-text {
        display: block;
        width: 35vw;
        padding: 8vw 0px 0px 6vw
    }
    .homepage-right {
        float: right;
        display: block;
        padding-right:6vw
    }
    .homepage-video {
        width: 47vw;
        box-shadow: rgb(176, 177, 178) 0px 10px 50px;
        padding-right:0px
    }
    .homepage-left {
        float: left;
    }
    .homepage-wrapper {
        padding: 150px 0px 0px 0px;
        display: inline-block;
        width: 100%
    }
    div.homepage-user-actions {
        max-width: 900px;
        -webkit-box-align: center;
        align-items: center;
        display: flex;
        flex-direction: column;
        margin-left: auto;
        margin-right: auto
    }
}

.menuBar{
    padding: 5px 5px 5px 5px;
    width:100%;
    display:block;
    position:fixed;
    background-color: #212121;
    color : #efefef;
    top:0;
    left:0;
    z-index: 100;
    }

.logo{
    float:left;
}

.nav{
    float:none;
    margin-right:10px;}
.nav ul li{
    list-style:none;
    float:left;
}

html {
  height: 100%;
}
body {
  min-height: 100%;
  font-family: 'Roboto',sans-serif;
  color: #222;
  /* background-color: #e7effd; */
  /* background-color: #92d1ff; */
  margin: 0;
  padding: 0;
  line-height: 1.5
}
button {
  font-family: 'Arial',sans-serif;
  line-height: 1.5
}
a {
  font-family: 'Arial',sans-serif;
  line-height: 1.5
}
#body {
  padding: 1em;
}

p {
  font-size: 18px;
}

code {
  font: 90% monospace;
  background: #DDD;
  border-radius: .3em;
  -moz-border-radius: .3em;
  -webkit-border-radius: .3em;
  padding: 0 .3em;
}
code:hover {
  color: #DDD;
  background: #222;
}
a {
  color: mediumblue;
  text-decoration: none;
}

a:hover {
  color: black;
  color: orange;
}
a:active {
  color: #400;
}

a.lightLink {
  color: white;
  text-decoration: none;
}

a.lightLink:hover {
  color: black;
  color: orange;
}

a.lightLink:active {
  color: #400;
}
ul {
  padding-left: 1em;
}

/* OpenNotebook-Web styles */
div.problem-summary-container {
    margin: 5px 5px 5px 5px;
    padding: 5px 5px 5px 5px;
}

div.answer-incorrect {
    border-radius: 2px;
    border:1px solid #a4a4a4;
    background-color:#FFDEDE;
}

div.answer-complete {
    border-radius: 2px;
    border:1px solid #a4a4a4;
    background-color:#f9f9f9;
}

.error-highlight{
    background-color:#FF99CC;
}

.success-highlight{
    background-color:#99FFBB;
}

.student-step-grader{
    padding: 2px;
}

.student-step-grader:hover{
    border-style: solid;
    border-width: 2px;
    padding: 0px;
}

span.solution-step {
    margin: 5px 10px 10px 10px;
    min-width: 50%;
}

#assignment-container {
    min-width: 400px;
    margin: 5px 5px 5px 5px;
    padding: 5px 5px 5px 5px;
}
