/*--------------------------------------------------------------
CSS Reset
--------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,400;0,500;0,700;1,500&family=Work+Sans:ital,wght@0,400;0,500;0,700;1,500;1,600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shadows+Into+Light&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap");
html {
  font-family: sans-serif; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0;
  width: 100%;
  height: auto; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="search"] {
  box-sizing: content-box; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.site {
  background-color: #f1f1f1; }

.left-side {
  float: left;
  width: 25%;
  padding: 3% 2% 1%; }

.right-side {
  float: right;
  width: 25%;
  padding: 1%; }

h1, h2, h3, h4, h5, h6, legend, label {
  font-family: 'Noto Serif JP', serif; }

p, label, textarea {
  font-family: 'Nunito Sans', sans-serif;
  font-size: 1.2em;
  line-height: 1.5;
  font-weight: normal; }

.answerStyle {
  color: #000; }

/* Accessibility */
#skip a {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }
  #skip a:focus {
    position: static;
    width: auto;
    height: auto; }

/* High Score Table */
.styled-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 0.9em;
  font-family: sans-serif;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  margin: auto; }

.styled-table thead tr.tableTitle {
  background-color: #fff; }

.styled-table thead tr.tableTitle th {
  text-align: center; }

.styled-table thead tr.subTitle {
  background-color: #2E2E2E;
  color: #ffffff;
  text-align: center; }

.styled-table th,
.styled-table td {
  text-align: left;
  padding: 12px 15px; }

.styled-table tbody tr {
  border-bottom: 1px solid #dddddd; }

.styled-table tbody tr:nth-of-type(even) {
  background-color: silver; }

.styled-table tbody tr:nth-of-type(odd) {
  background-color: #fff; }

.styled-table tbody tr.active-row {
  font-weight: bold;
  color: #00b28d; }

#totals h2 {
  color: #fff; }

#totals p {
  color: #fff;
  line-height: 0.6; }

.form-control {
  font-family: system-ui, sans-serif;
  font-size: 1.0em;
  font-weight: bold;
  color: #2E2E2E;
  line-height: 1.1;
  display: grid;
  grid-template-columns: 1em auto;
  gap: 0.5em; }

.show {
  display: block; }

.form-control + .form-control {
  margin-top: 1em; }

.form-control:focus-within {
  color: var(--form-control-color); }

input[type="radio"] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  appearance: none;
  /* For iOS < 15 */
  background-color: var(--form-background);
  /* Not removed via appearance */
  margin: 0;
  font: inherit;
  color: currentColor;
  width: 1.15em;
  height: 1.15em;
  border: 0.15em solid currentColor;
  border-radius: 50%;
  transform: translateY(-0.075em);
  display: grid;
  place-content: center; }

input[type="radio"]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  border-radius: 50%;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--form-control-color);
  /* Windows High Contrast Mode */
  background-color: #2E2E2E; }

input[type="radio"]:checked::before {
  transform: scale(1); }

input[type="radio"]:focus {
  outline: max(2px, 0.15em) solid currentColor;
  outline-offset: max(2px, 0.15em); }

label {
  font-family: "Rubik", sans-serif;
  font-size: 1.2em;
  line-height: 1.5;
  font-weight: normal;
  color: #2E2E2E; }

/* Trivia Game */
.displayStatus {
  color: black;
  width: 80%;
  padding: 1.250em;
  margin: auto; }
  .displayStatus h4 {
    display: none;
    font-family: 'Shadows Into Light', cursive;
    font-size: 1.4em;
    line-height: 0;
    font-weight: bold; }
  .displayStatus p {
    display: none;
    line-height: 1.5; }
  .displayStatus #customBtn {
    display: block;
    height: 1.420em;
    border: none;
    transition: background-color 0.5s ease;
    background-color: #2E2E2E;
    font-family: 'Work Sans', sans-serif;
    font-size: 1.6em;
    font-weight: bold;
    color: #F5F5F5;
    text-align: center;
    text-decoration: none;
    padding: 0.938em 1.875em; }
    .displayStatus #customBtn:hover {
      background-color: #4d4d4d; }

p.show {
  display: block; }

.triviaContainer {
  margin: 0 auto; }

#mainGame {
  padding: 1.250em; }

#mainGame::after {
  content: ' ';
  display: block;
  clear: both; }

#headerStyle {
  display: block;
  width: 100%;
  background-color: #fff; }

#score {
  background-color: #00b28d;
  padding: 0.625em; }

#percent {
  background-color: #4CAF50;
  padding: 0.625em; }

#current {
  color: #2E2E2E; }

.gauge {
  margin: 0 auto;
  width: 100%;
  max-width: 250px;
  font-family: "Roboto", sans-serif;
  font-size: 1.250em;
  color: #004033; }

.gauge__body {
  width: 100%;
  height: 0;
  padding-bottom: 50%;
  background: #b4c0be;
  position: relative;
  border-top-left-radius: 100% 200%;
  border-top-right-radius: 100% 200%;
  overflow: hidden; }

.gauge__fill {
  position: absolute;
  top: 100%;
  left: 0;
  width: inherit;
  height: 100%;
  background: #009578;
  transform-origin: center top;
  transform: rotate(0.25turn);
  transition: transform 0.2s ease-out; }

.gauge__cover {
  width: 75%;
  height: 150%;
  background: #ffffff;
  border-radius: 50%;
  position: absolute;
  top: 25%;
  left: 50%;
  transform: translateX(-50%);
  /* Text */
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 25%;
  box-sizing: border-box; }

#next {
  float: right;
  outline: none;
  color: #fff;
  border: none;
  background-color: #4CAF50;
  box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.5);
  width: 6.25em;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  text-transform: capitalize;
  text-decoration: none;
  padding: 0.313em;
  margin: 0.625em 0;
  transition: background-color .5s; }
  #next:hover, #next:active {
    background-color: #2e6b31; }

#finalResult {
  padding: 1.250em; }
  #finalResult h2 {
    font-family: 'Work Sans', sans-serif;
    font-size: 1.8em;
    color: #1c301e; }
  #finalResult p {
    font-size: 1.2em;
    line-height: 1.5;
    color: #1c301e; }

.btn1 {
  outline: none;
  color: #fff;
  border: none;
  background-color: #4CAF50;
  box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.5);
  width: 6.25em;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  text-transform: capitalize;
  text-decoration: none;
  padding: 0.313em;
  margin: 0.625em;
  transition: background-color .5s; }
  .btn1:hover, .btn1:active {
    background-color: #2e6b31; }

#mainGame #headerStyle h2 #clock {
  opacity: 0;
  font-size: 1.4em; }

#mainGame #headerStyle h2 #currentQuestion {
  font-size: 1.2em;
  margin-left: 2em; }

#mainGame #headerStyle h2 #totalQuestions {
  font-size: 1.2em; }

#mainGame #triviaSection {
  margin: 0; }

#mainGame #triviaSection #questionBox {
  margin: 0 auto; }

#mainGame #triviaSection #questionBox h2 {
  font-family: 'Work Sans', sans-serif;
  font-size: 1.2em;
  line-height: 1.5;
  color: #2E2E2E;
  font-weight: 400; }

#mainGame #triviaSection #buttonContainer {
  background-color: #A6BDB7;
  margin-bottom: 0.625em; }

#mainGame #triviaSection #buttonContainer .answerButton {
  display: block;
  width: 100%;
  height: 3.125em;
  border: none;
  outline: none;
  cursor: pointer;
  background-color: #F5F5F5;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  color: #2E2E2E;
  text-transform: capitalize;
  text-align: left;
  padding-left: 0.625em;
  margin: 0 auto; }

#mainGame #playerStats {
  position: relative;
  display: block;
  width: 100%;
  height: 40px; }

#mainGame #playerStats #score {
  position: absolute;
  top: 0;
  left: 0.313em;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  color: #F5F5F5;
  line-height: 0.938em; }

#mainGame #playerStats #percent {
  position: absolute;
  top: 0;
  right: 0.125em;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  color: #F5F5F5;
  line-height: 0.938em; }

#mainGame #nextStyle {
  position: relative;
  top: 2.125em;
  right: 0;
  width: 74%;
  height: 3.125em; }

#mainGame #nextStyle #next {
  position: absolute;
  top: -35px;
  right: 20px;
  border: none;
  outline: none;
  display: block;
  width: 100%;
  max-width: 5.375em;
  height: 2.000em;
  cursor: pointer;
  transition: background-color 0.5s ease;
  background-color: #4b8051;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  color: #fff;
  text-transform: capitalize; }
  #mainGame #nextStyle #next:hover {
    background-color: #38603D; }

a.qBtn {
  float: right;
  font-size: 1.0em;
  text-decoration: none;
  text-transform: capitalize;
  color: #555;
  border: 1px solid #555;
  padding: 2px 7px;
  margin-right: 5.000em;
  margin-bottom: 3.125em;
  transition: background-color .5s; }

a.qBtn:visited, a.qBtn:active {
  background-color: #555; }

a.qBtn:hover {
  color: #555;
  background-color: rgba(0, 0, 0, 0.3); }

.disableClick {
  pointer-events: none; }

/* Navigational CSS 9/30/2022 */
.nav {
  position: relative;
  background-color: azure;
  width: 100%;
  height: 2.700em;
  padding-bottom: 0.625em; }

.nav-title {
  display: none;
  font-family: 'Work Sans', sans-serif;
  font-size: 1.2em;
  color: #efefef;
  padding-left: 0.625em; }

.name-website {
  display: none;
  position: absolute;
  right: 0;
  bottom: -0.9375em; }
  .name-website .webtitle {
    font-family: 'Shadows Into Light', cursive;
    font-size: 1.8em;
    color: #b3b3b3; }

.nav > .nav-btn {
  display: none; }

.nav > .nav-links {
  display: inline;
  float: right;
  font-size: 1.250em;
  padding-right: 3.125em; }

.nav > .nav-links > a {
  display: inline-block;
  line-height: 1.875em;
  text-decoration: none;
  text-transform: capitalize;
  color: #2e2e2e;
  padding: 0.313em 0.625em; }

.nav > .nav-links > a:hover {
  color: #aeaeae; }

.nav > #nav-check {
  display: none; }

/* Navigation CSS Media Query */
@media screen and (max-width: 77em) {
  .nav > .nav-btn {
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0; }

  .nav > .nav-btn > label {
    display: inline-block;
    cursor: pointer;
    width: 3.125em;
    height: 3.125em;
    padding: 0.875em; }

  .nav > .nav-btn > label > span {
    display: block;
    width: 1.563em;
    height: 0.500em;
    border-top: 0.125em solid #9a9a9a; }

  .nav > .nav-links {
    position: absolute;
    display: block;
    width: 100%;
    z-index: 30000;
    background-color: #fff;
    height: 0;
    transition: all 0.3s ease-in;
    overflow-y: hidden;
    top: 3.125em;
    left: 0; }

  .nav > .nav-links > a {
    display: block;
    width: 100%; }

  .nav > #nav-check:not(:checked) ~ .nav-links {
    height: 0; }

  .nav > #nav-check:checked ~ .nav-links {
    height: calc(100vh - 3.125em);
    overflow-y: auto; } }
/* Full-width input fields */
input[type=text], input[type=password] {
  width: 100%;
  padding: 12px 20px;
  display: inline-block;
  border: 1px solid #ccc;
  box-sizing: border-box; }

#myButton {
  display: block;
  outline: none;
  color: #fff;
  border: none;
  background-color: #4d4d4d;
  box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.5);
  width: 6.25em;
  font-family: 'Rubik', sans-serif;
  font-size: 1.2em;
  text-transform: capitalize;
  text-decoration: none;
  padding: 0.313em;
  margin: 0.625em;
  transition: background-color .5s; }

/* Extra styles for the cancel button */
.cancelbtn {
  width: auto;
  padding: 10px 18px;
  background-color: #f44336; }

/* Center the image and position the close button */
.imgcontainer {
  text-align: center;
  margin: 24px 0 12px 0;
  position: relative; }

img.avatar {
  width: 15%;
  border-radius: 50%; }

.container {
  padding: 16px; }

span.psw {
  float: right;
  padding-top: 16px; }

/* The Modal (background) */
.modal {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Stay in place */
  z-index: 1000;
  /* Sit on top */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100%;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: black;
  /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4);
  /* Black w/ opacity */
  padding-top: 60px; }

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 5px auto;
  /* 15% from the top and centered */
  border: 1px solid #888;
  width: 80%;
  /* Could be more or less, depending on screen size */ }

/* The Close Button */
.close {
  /* Position it in the top right corner outside of the modal */
  position: absolute;
  right: 25px;
  top: 0;
  color: #000;
  font-size: 35px;
  font-weight: bold; }

/* Close button on hover */
.close:hover,
.close:focus {
  color: red;
  cursor: pointer; }

/* Add Zoom Animation */
.animate {
  -webkit-animation: animatezoom 0.6s;
  animation: animatezoom 0.6s; }

@-webkit-keyframes animatezoom {
  from {
    -webkit-transform: scale(0); }
  to {
    -webkit-transform: scale(1); } }
@keyframes animatezoom {
  from {
    transform: scale(0); }
  to {
    transform: scale(1); } }
.headerStyle {
  display: block;
  width: 100%;
  max-width: 400px;
  height: 15.625em;
  background-repeat: no-repeat;
  background-size: 25.000em 15.625em;
  background-image: url("../images/img-lego-header-400-250.jpg"); }

.messageNew {
  background-color: #fff;
  padding: 0.625em;
  margin-bottom: 1.250em; }
  .messageNew p {
    font-size: 1.2em; }

/* Approximately the size of an iPad 800px */
@supports (grid-area: auto) {
  @media screen and (min-width: 26em) {
    .site {
      display: grid;
      grid-template-columns: 25em 25em;
      grid-template-areas: "nav nav" "header header" "sidebar main" "footer footer";
      justify-content: center;
      width: 50em;
      margin: 0 auto; }

    .nav {
      grid-area: nav; }

    .headerStyle {
      grid-area: header;
      display: block;
      width: 100%;
      max-width: 800px;
      height: 15.625em;
      background-repeat: no-repeat;
      background-size: 50.000em 15.625em;
      background-position: center center;
      background-image: url("../images/img-lego-header-800-250.jpg"); }

    .sidebar {
      grid-area: sidebar; }

    .main {
      grid-area: main; }

    .footer {
      grid-area: footer; } } }
.select-css {
  font-size: 1.2em;
  font-family: sans-serif;
  font-weight: 700;
  color: #444;
  line-height: 1.3;
  padding: .6em 1.4em .5em .8em;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  margin-bottom: 0px;
  border: 1px solid #aaa;
  border-top-color: #aaaaaa;
  border-right-color: #aaaaaa;
  border-bottom-color: #aaaaaa;
  border-left-color: #aaaaaa;
  box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.04);
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
  background-repeat: no-repeat, repeat;
  background-position: right .7em top 50%, 0 0;
  background-size: .65em auto, 100%;
  margin-bottom: 1.250em; }
  .select-css::-ms-expand {
    display: none; }
  .select-csshover {
    border-color: #888; }
  .select-css:focus {
    border-color: #aaa;
    box-shadow: 0 0 1px 3px rgba(59, 153, 252, 0.7);
    box-shadow: 0 0 0 3px -moz-mac-focusring;
    color: #222;
    outline: none; }
  .select-css option {
    font-weight: normal; }

/* Approximately the size of a 1248px large display monitor */
@supports (grid-area: auto) {
  @media screen and (min-width: 64em) {
    p.show {
      display: none; }

    .site {
      display: grid;
      grid-template-columns: 40em 1fr;
      grid-template-areas: "header header" "nav nav" "main sidebar" "footer footer";
      justify-content: center;
      width: 64em;
      margin: 0 auto; }

    .nav {
      grid-area: nav; }

    .displayStatus h4, .displayStatus p {
      display: block; }

    .headerStyle {
      grid-area: header;
      display: block;
      width: 100%;
      max-width: 1024px;
      height: 15.625em;
      background-repeat: no-repeat;
      background-size: 64.000em 15.625em;
      background-image: url("../images/img-lego-header-1024-250.jpg"); }

    .sidebar {
      grid-area: sidebar;
      background-color: #fff;
      padding: 1.250em;
      margin-top: 0.625em;
      margin-left: 0.625em; }
      .sidebar p {
        font-family: 'Nunito Sans', sans-serif;
        font-size: 1.0em;
        color: #2e2e2e; }

    .checkStyle {
      grid-area: main;
      display: grid;
      grid-template-columns: 1fr;
      grid-template-areas: "remote" "select-hidden" "select-category" "question" "answer1" "answer2" "answer3" "answer4" "correct" "submit-button";
      justify-content: center;
      background-color: #fff;
      padding: 1.250em;
      margin-top: 0.625em; }
      .checkStyle label, .checkStyle h2 {
        color: #000; }
      .checkStyle .remote {
        grid-area: remote;
        display: flex;
        flex-direction: row;
        justify-content: space-evenly;
        align-items: center; }
        .checkStyle .remote #ePrev, .checkStyle .remote #eNext {
          text-decoration: none;
          color: #2E2E2E; }
      .checkStyle .select-hidden {
        grid-area: select-hidden; }
      .checkStyle .select-category {
        grid-area: select-category; }
      .checkStyle .question {
        grid-area: question; }
        .checkStyle .question textarea {
          resize: none;
          height: 9.5em;
          width: 100%;
          font-family: 'Rubik', sans-serif;
          font-size: 1.0em;
          line-height: 1.5;
          font-weight: normal; }
      .checkStyle .answer1 {
        grid-area: answer1; }
      .checkStyle .answer2 {
        grid-area: answer2; }
      .checkStyle .answer3 {
        grid-area: answer3; }
      .checkStyle .answer4 {
        grid-area: answer4; }
      .checkStyle .correct {
        grid-area: correct; }
      .checkStyle .submit-button {
        grid-area: submit-button; }
        .checkStyle .submit-button button {
          outline: none;
          float: right;
          color: #fff;
          border: none;
          background-color: #6e6e6e;
          box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.5);
          width: 6.25em;
          font-family: "Rubik", sans-serif;
          font-size: 1.2em;
          text-transform: capitalize;
          text-decoration: none;
          cursor: pointer;
          padding: 0.313em;
          margin: 0.625em;
          transition: color 0.5s; }

    .footer {
      grid-area: footer;
      background-color: azure;
      text-align: center;
      margin-top: 1.250em; }
      .footer p {
        font-family: 'Nunito Sans', sans-serif;
        font-size: 1.0em;
        color: #2e2e2e; } } }

/*# sourceMappingURL=game.css.map */
