

body { 
    min-height: 100vh; 
    min-height: -webkit-fill-available;
    touch-action:none; 
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    background-color: #f4f4f4 !important;
    position: relative;
}


@media screen and (max-width: 767px) {
    _::-webkit-full-page-media, _:future, :root .safari_only {
        padding-bottom: 65px;
    }
}

#parent{  
    position: relative;
    text-align: center;
    /* align-items: center;
    justify-content: center; */
    background: white   !important;
    margin: 20px; 
    /* padding: 20px; */
    border-radius: 5px;
}

.canvas { 
    background-color: transparent; 
    position: absolute; 
    pointer-events: none; 
    z-index: 50;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
#feedback { font-size: 1.4em; }    

#menuButton {
    cursor: pointer;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 100;
}
.ui-button {
    -webkit-tap-highlight-color: transparent !important;
    padding: .4em 0.7em !important;
}

.ui-button:disabled, .ui-button[disabled]{ 
  background: #acacac !important;
}


.popup {
    /* background: #9cb2b8; */
    background: #fbfaf8;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    position: relative;
    /* max-width: 80vw; */
    /* min-width: 200px; */
}

.popup img {
    max-width: 100px;
}

.close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    background: red;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 50%;
    font-size: 16px;
}

.button {
    background: #2b7ada !important;
    color: white !important;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 4%;
    font-size: 16px;
}
.button:hover {
    background-color: #3c82d7;
  }

.overlay.show {
    visibility: visible;
    opacity: 1;
}

.parent-container {
    width: 100%;
    display: flex;
    justify-content: center;
    position: relative;
}

 .grid-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    width: 100%;
    aspect-ratio: 1 / 1;
    gap: 5px;
    background-color: #333;
    padding: 5px;
}

.grid-item:hover {
    cursor: pointer;
  }

.container {
  background-color: #fbfaf8 !important;
  border-radius: 20px;
  padding-top: 20px;
  padding-bottom: 20px;
  position: relative;
} 


.grid-item {
    background-color: #2b7ada;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: calc(3vw + 3vh);
    font-weight: bold;
    color: white;
    user-select: none;
    -webkit-transition: transform 1s ease-in-out;
    -moz-transition: transform 1s ease-in-out;
    -ms-transition: transform 1s ease-in-out;
    -o-transition: transform 1s ease-in-out;
    transition: transform 1s ease-in-out;
}

#show_answer {
  background: #b41414 !important;
}

.grid-state-default {

    /* background-color: #2b7ada; */
    background-color: #2b7ada;;
}

.grid-state-selected {
    color: hsl(0, 1%, 37%);
    background-color: rgb(230, 176, 0) !important;
}

.grid-state-selected-incorrect {
    color: #fff;
    background-color: #b41414 !important;
}

.box1 {
  order: 1;
}
.box2 {
  order: 2;
}
.box3 {
  order: 3;
}
.box4 {
  order: 4;
}
.box5 {
  order: 5;
}
.box6 {
  order: 6;
}
.box7 {
  order: 7;
}
.box8 {
  order: 8;
}
.box9 {
  order: 9;
}
.box10 {
  order: 10;
}
.box11 {
  order: 11;
}
.box12 {
  order: 12;
}
.box13 {
  order: 13;
}
.box14 {
  order: 14;
}
.box15 {
  order: 15;
}
.box16 {
  order: 16;
}

.share-buttons {
  margin-top: 10px;
}

.fb-share-button {
  margin-top: 5px;
  opacity: 1;
  transform: scale(1.4);
  transform-origin: top left;
}



/* The side navigation menu */
.sidenav {
  height: 100%; /* 100% Full-height */
  width: 0; /* 0 width - change this with JavaScript */
  position: absolute; /* Stay in place */
  z-index: 1; /* Stay on top */
  top: 0; /* Stay at the top */
  left: 0;
  background-color: #fff; 
  overflow-x: hidden; /* Disable horizontal scroll */
  padding-top: 60px; /* Place content 60px from the top */
  transition: 0.5s; /* 0.5 second transition effect to slide in the sidenav */
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  overflow-y: auto;
  
} 

/* The navigation menu links */
.sidenav a {
  padding: 8px 8px 8px 32px;
  text-decoration: none;
  font-size: 25px;
  color: #818181;
  display: block;
  transition: 0.3s;
}

/* When you mouse over the navigation links, change their color */
.sidenav a:hover {
  color: #f1f1f1;
}

/* Position and style the close button (top right corner) */
.closebtn {
  position: absolute;
  top: 0;
  right: 25px;
  font-size: 36px;
  margin-left: 30px;
  text-decoration: none;
}

.opennav {
  width: 250px;
  border-width: 1px;
  border-right-style: solid;
  border-color: #000;
}

/* Style page content - use this if you want to push the page content to the right when you open the side navigation */
#main {
  transition: margin-left .5s;
  padding: 20px;
}

/* On smaller screens, where height is less than 450px, change the style of the sidenav (less padding and a smaller font size) */
@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
}


#streak_header {
   display: none;
}


#share_button {
  padding: 10px 20px;
  font-size: 16px;
  border: none;
  border-radius: 8px;
  background-color: #538d4e;
  color: white;
  cursor: pointer;
}

#share_button:hover {
  background-color: #6aaa64;
}

.streak-image {
  vertical-align: -1px;
}

.status-icon {
  display: inline-block;
  width: 25px;
  height: 25px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: -4px;
}

.archive-link.default .status-icon {
  background-image: url('./default.png');
}

.archive-link.correct .status-icon {
  background-image: url('./correct.svg');
}

.archive-link.incorrect .status-icon {
  background-image: url('./incorrect.svg');
}