html {
  width:100%;
  height:100%;
}
body {
  margin:0;
  padding:0;
  width:100%;
  height:100%;
}

.modal {
  position: fixed;
  height: 90%;
  right: 0;
  top: 0;
  z-index: 3;
  width: 100%;
  visibility: hidden;
  opacity:0;
  -webkit-transition:opacity 0.4s linear;
  -moz-transition:opacity 0.4s linear;
  -ms-transition:opacity 0.4s linear;
  -o-transition:opacity 0.4s linear;
  transition:opacity 0.4s linear;
}
.modal.show {
  visibility: visible;
  opacity:1;
}

.valign-table {
  display: table;
  table-layout: fixed;
}
.valign-cell {
  display: table-cell;
  vertical-align: middle;
}

#memory--app-container {
  background-color: #0061a8;
  width:100%;
  height:90%;
}

.memory--menu-bar {
  width:100%;
  background-color: #222;
  height:10%;
  display:table;
}

.memory--menu-bar .inner {
  display:table-cell;
  vertical-align:middle;
}
.memory--menu-bar .left {
  text-align: left;
  float:left;
  width:50%;
}
.memory--menu-bar .right {
  text-align: right;
  float:right;
  width:50%;
}
.memory--app-name {
  color:#ccc;
  font-size:26px;
  margin:0;
  padding:1px 4px;
  text-transform: uppercase;
  font-family: "Courier New";
  letter-spacing: 2px;
}
@media screen and (max-width: 480px) {
  .memory--app-name {
    font-size:16px;
  }
}

#memory--settings-icon {
  height: 24px;
  display: block;
  padding:4px 8px;
  float: right;
}

#memory--end-game-modal .wrapper {
  background-color: rgba(0, 0, 0, .86);
  text-align: center;
  color:#ccc;
  padding:8px 0;
}
#memory--end-game-modal h2,
#memory--end-game-modal h3 {
  margin:0;
  margin-bottom: 4px;
}

#memory--settings-modal {
  background-color: rgba(0, 0, 0, .86);
  z-index: 4;
}
#memory--settings-modal form {
  min-width:240px;
  width:50%;
  margin:0 auto;
  text-align: center;
  color:#ccc;
}

.memory--settings-label {
  margin:8px 0;
}

#memory--settings-grid,
#memory--settings-reset {
  width:100%;
  margin-bottom:16px;
  font-size:18px;
  background-color: #000;
  color:#fff;
  height:50px;
  text-align: center;
}

#memory--settings-grid option {
  padding-top:5px;
  padding-bottom:5px;
}

#memory--settings-reset {
  border-radius:5px;
  border:2px solid #ccc;
  cursor: pointer;
}

#memory--cards {
  margin:0 auto;
  padding:0;
  height:100%;
  list-style-type: none;
  list-style-image: none;
  position:relative;
}
/* entire container, keeps perspective */
.flip-container {
  -webkit-perspective: 1000px;
  perspective: 1000px;
  float:left;
}

/* flip the pane when clicked */
.flip-container.clicked .front {
  -webkit-transform: rotateY(180deg);
  -moz-transform: rotateY(180deg);
  -ms-transform: rotateY(180deg);
  -o-transform: rotateY(180deg);
  transform: rotateY(180deg);
}
.flip-container.clicked .back {
  -webkit-transform: rotateY(0deg);
  -moz-transform: rotateY(0deg);
  -ms-transform: rotateY(0deg);
  -o-transform: rotateY(0deg);
  transform: rotateY(0deg);
}

/* flip speed goes here */
.flipper {
  width:90%;
  height:90%;
  margin:0% auto;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
  position: relative;
  top:5%;
  bottom:5%;
}

/* hide back of pane during swap */
.front, .back {
  width:100%;
  height:100%;
  display: block;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
  position: absolute;
  top: 0;
  left: 0;
}

/* front pane, placed above back */
.front {
  /* for firefox 31 */
  -webkit-transform: rotateY(0deg);
  -moz-transform: rotateY(0deg);
  -ms-transform: rotateY(0deg);
  -o-transform: rotateY(0deg);
  transform: rotateY(0deg);
  background-color: #e12d00;
  border-radius: 5%;
  background-image: url(../images/card.svg);
  background-position:50% 50%;
  background-repeat: no-repeat;
  background-size: contain;

}

/* back, initially hidden pane */
.back {
  -webkit-transform: rotateY(-180deg);
  -moz-transform: rotateY(-180deg);
  -ms-transform: rotateY(-180deg);
  -o-transform: rotateY(-180deg);
  transform: rotateY(-180deg);
  background-color: #fff;
  border-radius: 5%;
  background-position:50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.back.card-1 {
  background-image: url(../images/slide-01.jpg);
}
.back.matching.card-1 {
  background-image: url(../images/slide-02.jpg);
}
.back.card-2 {
  background-image: url(../images/slide-03.jpg);
}
.back.matching.card-2 {
  background-image: url(../images/slide-04.jpg);
}
.back.card-3 {
  background-image: url(../images/slide-05.jpg);
}
.back.matching.card-3 {
  background-image: url(../images/slide-06.jpg);
}
.back.card-4 {
  background-image: url(../images/slide-07.jpg);
}
.back.matching.card-4 {
  background-image: url(../images/slide-08.jpg);
}
.back.card-5 {
  background-image: url(../images/slide-09.jpg);
}
.back.matching.card-5 {
  background-image: url(../images/slide-10.jpg);
}
.back.card-6 {
  background-image: url(../images/slide-11.jpg);
}
.back.matching.card-6 {
  background-image: url(../images/slide-12.jpg);
}
.back.card-7 {
  background-image: url(../images/slide-13.jpg);
}
.back.matching.card-7 {
  background-image: url(../images/slide-14.jpg);
}
.back.card-8 {
  background-image: url(../images/slide-15.jpg);
}
.back.matching.card-8 {
  background-image: url(../images/slide-16.jpg);
}
.back.card-9 {
  background-image: url(../images/slide-17.jpg);
}
.back.matching.card-9 {
  background-image: url(../images/slide-18.jpg);
}
.back.card-10 {
  background-image: url(../images/slide-19.jpg);
}
.back.matching.card-10 {
  background-image: url(../images/slide-20.jpg);
}
.back.card-11 {
  background-image: url(../images/slide-21.jpg);
}
.back.matching.card-11 {
  background-image: url(../images/slide-22.jpg);
}
.back.card-12 {
  background-image: url(../images/slide-23.jpg);
}
.back.matching.card-12 {
  background-image: url(../images/slide-24.jpg);
}
.back.card-13 {
  background-image: url(../images/slide-25.jpg);
}
.back.matching.card-13 {
  background-image: url(../images/slide-26.jpg);
}
.back.card-14 {
  background-image: url(../images/slide-27.jpg);
}
.back.matching.card-14 {
  background-image: url(../images/slide-28.jpg);
}
.back.card-15 {
  background-image: url(../images/slide-29.jpg);
}
.back.matching.card-15 {
  background-image: url(../images/slide-30.jpg);
}
.back.card-16 {
  background-image: url(../images/slide-31.jpg);
}
.back.matching.card-16 {
  background-image: url(../images/slide-32.jpg);
}
.back.card-17 {
  background-image: url(../images/slide-33.jpg);
}
.back.matching.card-17 {
  background-image: url(../images/slide-34.jpg);
}
.back.card-18 {
  background-image: url(../images/slide-35.jpg);
}
.back.matching.card-18 {
  background-image: url(../images/slide-36.jpg);
}
.back.card-19 {
  background-image: url(../images/slide-37.jpg);
}
.back.matching.card-19 {
  background-image: url(../images/slide-38.jpg);
}
.back.card-20 {
  background-image: url(../images/slide-39.jpg);
}
.back.matching.card-20 {
  background-image: url(../images/slide-40.jpg);
}
.back.card-21 {
  background-image: url(../images/slide-41.jpg);
}
.back.matching.card-21 {
  background-image: url(../images/slide-42.jpg);
}
.back.card-22 {
  background-image: url(../images/slide-43.jpg);
}
.back.matching.card-22 {
  background-image: url(../images/slide-44.jpg);
}
.back.card-23 {
  background-image: url(../images/slide-45.jpg);
}
.back.matching.card-23 {
  background-image: url(../images/slide-46.jpg);
}
