@import url(https://fonts.googleapis.com/css?family=Roboto+Slab:400,100,300,700);

html {
    height: 100%;
}

body {
    min-height: 100%;
    margin: 0;
    font-family: 'Roboto Slab', serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.4em;
    color: #333;
    background: #fff;
}

h1 {
  margin: 0.5em 0 1em 0;
  font-size: 1.8em;
  font-weight: 700;
  color: #096AA3;
  text-transform: uppercase;
}

h2, h3 {
  font-weight: bold;
}

p {
  margin-top: .5em;
  margin-bottom: .5em;
}

textarea, input,button {
    font-family: 'Roboto Slab', serif;
    font-weight: 300;
    /* font-size: 16px;
    border: 0;
    padding: 3px 5px;
    border-radius: 3px; */
    border-radius: 8px;
    border: 1px solid #333;
    padding: 5px;
    font-size: 1rem;
    margin-top: 5px;
    min-width: 250px;
    max-width: 90vw;
}

form {
    font-family: 'Roboto Slab', serif;
    text-align: left;
    font-weight: 600;
}

/* Get rid of input field number styling */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=number]{
    -moz-appearance: textfield;
}
ol,ul{
    margin-top: 0px;
}

section {
    display: grid;
    grid-template-columns: 1fr 90vw 1fr;
    grid-template-rows: 10vh max-content 20px;
    text-align: center;
    justify-items: center;
    align-items: center;
    justify-content: center;
    align-content: center;
}

section.header {
    grid-template-rows: 20px max-content 10px;
    max-height: 10vh;
}
section.footer {
    grid-template-rows: 10px max-content 20px;
    max-height: 10vh;
}
section.flashcard {
    grid-template-rows: 10px max-content 10px;
    max-height: 78vh;
}

.content {
    grid-column: 2 / span 1;
    grid-row: 2 / span 1;
}

.btn {
    display: block;
    width: 90vw;
    max-width: 272px;
    border-radius: 8px;
    border: 0px;
    margin: 12px auto;
    padding: 10px 15px;
    letter-spacing: 1px;
    line-height: 1.5;
    font-family: 'Roboto Slab', serif;
    font-size: 1.35rem;
    font-weight: 600;
    text-decoration: none;
    color: #fff;
    cursor: pointer;
}

.btn-2 {
    background: #096aa3;
}

.btn-2:hover {
    background: #085f92;
}
.btn-1 {
    background: #429bff;
}

.btn-1:hover {
    background: #0f80ff;
}

.btn-3 {
    background: #096aa3;
    display: grid;
    grid-template-columns: 5fr 1fr;
    grid-template-rows: 1fr;
    text-align: center;
    justify-items: center;
    align-items: center;
    justify-content: center;
    align-content: center;
}

.btn-3:hover {
    background: #085f92;
}

.btn-3 div.a-chapter-btn{
    grid-column: 1 / span 1;
    grid-row: 1 / span 1;
}
.btn-3 div.a-qty-btn{
    grid-column: 2 / span 1;
    grid-row: 1 / span 1;
    font-size: 0.8rem;
    font-weight: 400;
}

.btn-4 {
    background: #CFCFCF;
    width: 90vw;
    min-width: 100px;
    max-width: 140px;
    padding: 5px 10px;
    font-size: 1.05rem;
    font-weight: 600;
}

.btn-4:hover {
    background: #C2C2C2;
}

.form-group {
    width: 100%;
    margin-bottom: 25px;
    margin-right: auto;
    margin-left: auto;
}
.alert-div ul {
    /* width: 250px; */
    padding: 0;
    word-wrap: break-word;
    color: red;
    font-weight: 600;
    list-style: none;
}
.green {
    color: green !important;
}
#login-form input {
    padding: 10px;
    font-size: 1.35rem;
    margin-top: 10px;
    width: 88vw;
    max-width: 250px;
}

/* FLASHCARDS */

section.flashcard .content{
  width: 100%;
  padding: 0px;
  margin: 0px;
  background: #fff;
}

.card-container {
  position: relative;
  width: 100%;
  max-width: 400px;
  height: 600px;
  max-height: 70vh;
  margin: 10px auto;
  background: #fff;
  /* Set the depth of the elements */
  -webkit-perspective: 800px;
  -moz-perspective: 800px;
  -o-perspective: 800px;
  perspective: 800px;
}

.card {
  width: 100%;
  height: 100%;
  position: absolute;
  cursor: pointer;
  /* Set the transition effects */
  -webkit-transition: -webkit-transform 0.4s;
  -moz-transition: -moz-transform 0.4s;
  -o-transition: -o-transform 0.4s;
  transition: transform 0.4s;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.card.flipped {
  -webkit-transform: rotateY( 180deg );
  -moz-transform: rotateY( 180deg );
  -o-transform: rotateY( 180deg );
  transform: rotateY( 180deg );
}

.card .card-front,
.card .card-back {
  /* display: block; */
  display: grid;
  grid-template-columns: 30px 1fr 45px 15px 30px;
  grid-template-rows: 30px 15px 1fr 30px;
  text-align: center;
  justify-items: center;
  align-items: center;
  justify-content: center;
  align-content: center;
  height: 100%;
  width: 100%;
  /* width: 94%;
  padding-left: 3%;
  padding-right: 3%; */
  /* line-height: 25px; */
  color: white;

  position: absolute;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  box-shadow: 3px 5px 20px 2px rgba(0, 0, 0, 0.25);
}

.card .card-back {
  font-size: 15px;
  background: #007539;
  line-height: 1.2em;

  -webkit-transform: rotateY( 180deg );
  -moz-transform: rotateY( 180deg );
  -o-transform: rotateY( 180deg );
  transform: rotateY( 180deg );
}

.card .card-front {
    font-size: 1.3em;
    line-height: 1.4em;
    background: #228653;
}

.card-title {
  font-size: 1.3em;
  line-height: 1.2em;
  margin: 0;
}

.card-content {
  /* padding: 4%; */
  padding: 5px 3px;
  font-weight: 400;
  text-align: left;
  overflow-y: auto;
  height: 100%;
  grid-column: 2 / span 3;
  grid-row: 3 / span 1;
    z-index: 999;
}

.card.flipped .card-content {
    z-index: -999;
}

.archive-card {
    grid-column: 4 / span 2;
    grid-row: 1 / span 2;
  }

.delete-card {
    grid-column: 3 / span 1;
    grid-row: 1 / span 2;
  }

.archive-card .icon {
    padding: 5px 5px 0px 0px;
    max-width: 1.5rem;
    max-height: 1.5rem;
  }

.delete-card .icon {
    padding: 5px 5px 0px 0px;
    max-width: 1.5rem;
    max-height: 1.3rem;
  }

.icon {
    max-width: 3rem;
    max-height: 3rem;
    cursor: pointer;
}

section.footer .content {
    width: 100%;
    max-width: 400px;
}

.icon:hover {
    opacity: .8;
}

.card-nav {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-around;
    align-items: center;
    color: #303030;
}

/* ARCHIVED SECTION */
section.archived h1{
    margin-bottom: 2px;
}

section.archived p {
    margin-bottom: 1em;
}


/* MISC */
.hide {
    display: none;
}

@media only screen and (max-width: 600px) {
    section {
        grid-template-rows: 35px max-content 20px;
    }
  }

/* The Modal (background) */
.modal {
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    padding-top: 100px; /* Location of the box */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
    text-align: center;
}
  
  /* Modal Content */
.modal-content {
    background-color: #fefefe;
    margin: 25vh auto auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    max-width: 300px;
    height: fit-content;
}

.modal-content .confirm-delete{
    background: red;
}

.modal-content .cancel-delete{
    background: rgb(145, 145, 145);
}

.modal-open {
    overflow:hidden;
}