*
{
    font-family: Fredoka;
}
html {
    font-size: 62.5%;
    font-weight: 400;
    line-height: 1.6;
    scroll-behavior: smooth;
}
body
{
    background: #171717 !important;
}
ul {
    list-style: none;
}

a {
    text-decoration: none;
}

h3 
{
    font-weight:normal !important;
    letter-spacing: 4px;
}
.hbox 
{
    /*margin-top:4rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;*/
    padding:2rem;
}

.hbox .count 
{
    letter-spacing: 4px;
}

.flags {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

.flags .flag-img 
{
    margin-left:2rem;
}

.flags .flag-img img 
{
    width:100%;
    height: 180px;
    border: 2px solid white;
    border-radius: .9rem;
}

.flags .flag-options {
    margin-top: 3rem;
}

.flags .flag-options ul {
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 100%;
}

.flags .flag-options ul li {
    font-size: 2.5rem;
    text-transform: capitalize;
    margin-bottom: 1.5rem;
    background-color: transparent;
    padding: 1rem;
    border:2px solid rgb(61, 106, 255);
    border-radius: .9rem;
    width: 300px !important;
    color: white;
    cursor: pointer;
}
.flags .flag-options ul li:hover
{
    background-color:black;
    transition: all 0.2s ease-out;
}

h4{
    padding: 0px 40px;
}

.score {
    display: none;
    padding: 40px;
    line-height: 2 !important;
    font-family: consolas;
    background-color: #011522;
    border-radius: 8px;
    border:1px solid purple;
    margin-top:9rem;
}

.score .right{
    border-radius: 10px;
    background-color: white;
    color: #00ca4e;
    font-size: 2.5rem;
    margin: 2rem 0rem;
    padding: 1rem;
}
.score .incorrect {
    border-radius: 10px;
    background-color: white;
    color: #ff605c;
    font-size: 2.5rem;
    margin: 2rem 0rem;
    padding: 1rem;
}

.flags .flag-options ul li.active {
    transform: scale(1.1);
}

.flags .flag-options ul li.success {
    background-color: Green;
    border:none;
}

.flags .flag-options ul li.wrong {
    background-color: #fb3640;
    border:none;
}

@media(min-width: 375px) {

    h1,
    h3,
    .box .count {
        font-size: 3rem;
    }

    .flags .flag-img,
    .flags .flag-options ul {
        width: 30rem;
    }

    .flags .flag-options ul li {
        width: 100%;
    }
}

.buttons {
  display: flex;
  justify-content: space-around;
  top: 20px;
  left: 20px;
}

.buttons button {
  width: 150px;
  height: 50px;
  background-color: #011522;
  margin: 20px;
  color: #00ca4e;
  position: relative;
  overflow: hidden;
  font-size: 14px;
  letter-spacing: 1px;
  font-weight: 500;
  text-transform: uppercase;
  transition: all 0.3s ease;
  cursor: pointer;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
}

.buttons button:before, .buttons button:after {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  background-color: #44d8a4;
  transition: all 0.3s cubic-bezier(0.35, 0.1, 0.25, 1);
}

.buttons button:before {
  right: 0;
  top: 0;
  transition: all 0.5s cubic-bezier(0.35, 0.1, 0.25, 1);
}

.buttons button:after {
  left: 0;
  bottom: 0;
}

.buttons button span {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  margin: 0;
  padding: 0;
  z-index: 1;
}

.buttons button span:before, .buttons button span:after {
  content: "";
  position: absolute;
  width: 2px;
  height: 0;
  background-color: #44d8a4;
  transition: all 0.3s cubic-bezier(0.35, 0.1, 0.25, 1);
}

.buttons button span:before {
  right: 0;
  top: 0;
  transition: all 0.5s cubic-bezier(0.35, 0.1, 0.25, 1);
}

.buttons button span:after {
  left: 0;
  bottom: 0;
}

.buttons button p {
  padding: 0;
  margin: 0;
  transition: all 0.4s cubic-bezier(0.35, 0.1, 0.25, 1);
  position: absolute;
  width: 100%;
  height: 100%;
}

.buttons button p:before, .buttons button p:after {
  position: absolute;
  width: 100%;
  transition: all 0.4s cubic-bezier(0.35, 0.1, 0.25, 1);
  z-index: 1;
  left: 0;
}

.buttons button p:before {
  content: attr(data-title);
  top: 50%;
  transform: translateY(-50%);
}

.buttons button p:after {
  content: attr(data-text);
  top: 150%;
  color: #44d8a4;
}

.buttons button:hover:before, .buttons button:hover:after {
  width: 100%;
}

.buttons button:hover span {
  z-index: 1;
}

.buttons button:hover span:before, .buttons button:hover span:after {
  height: 100%;
}

.buttons button:hover p:before {
  top: -50%;
  transform: rotate(5deg);
}

.buttons button:hover p:after {
  top: 50%;
  transform: translateY(-50%);
}

.buttons button.start {
  background-color: #44d8a4;
  box-shadow: 0px 5px 10px -10px rgba(0, 0, 0, 0.2);
  transition: all 0.2s ease;
}

.buttons button.start p:before {
  top: -50%;
  transform: rotate(5deg);
}

.buttons button.start p:after {
  color: white;
  transition: all 0s ease;
  content: attr(data-start);
  top: 50%;
  transform: translateY(-50%);
  animation: start 0.3s ease;
  animation-fill-mode: forwards;
}

@keyframes start {
  from {
    top: -50%;
  }
}

.buttons button.start:hover:before, .buttons button.start:hover:after {
  display: none;
}

.buttons button.start:hover span {
  display: none;
}

.buttons button:active {
  outline: none;
  border: none;
}

.buttons button:focus {
  outline: 0;
}
.tools {
 display: flex;
 align-items: center;
 padding: 9px;
}

.circle {
 padding: 0 4px;
}

.box {
 display: inline-block;
 align-items: center;
 width: 10px;
 height: 10px;
 padding: 1px;
 border-radius: 50%;
}

.red {
 background-color: #ff605c;
}

.yellow {
 background-color: #ffbd44;
}

.green {
 background-color: #00ca4e;
}