body {
    background: url(./pics/background.jpg);
    padding: 0em;
    margin: 0em;
    font-size: 100%;
}

.letter-ge-container {
    width: 12.5em;
    background: #ccc;
    border: 0.02em solid #707070;
    border-radius: 0.5em;
    text-align: center;
    cursor: pointer;
    display: inline-block;
    padding: 0.05em;
    overflow: hidden;
    height: 12em;
}

.letter-ge {
    width: 1.565em;
    height: 1.2em;
    padding-top: 0.18em;
    padding-bottom: 0.18em;
    color: #000;
    font-size: 8em;
    line-height: 1em;
    text-align: center;
    cursor: pointer;
    border-radius: 0.05em;
    font-family: Arial;
    overflow: hidden;
}

.letter-ge-lines{
    position: absolute; 
    opacity: 0.3; 
    border-color: #000; 
    border-width: 0.15em 0em 0.15em 0em; 
    border-style: dashed; 
    top: 5.5em; 
    width: 12.5em; 
    height: 4em;
}

.letter-ge-speed{
    position: absolute; 
    /* opacity: 0.3; */
    margin-top: -0.75em; 
    width: 0em;
    max-width: 12.5em; 
    height: 0.4em;
    display: block;
    border-radius: 0.5em;
    background: #cf0000; /* red */
}

#letter-ge-speed-stats-val{
    width: 100%;
    font-weight: bold;
    text-align: center;
    font-size: 1em;
    margin: 0;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    opacity: 0.8;
}

.letter-ge-speed-stats{
    position: absolute;
    width: 25em;
    height: 25em;
    margin-left: -6.5em;
    display: none;
    z-index: 1000;
}

.btn-start {
    /* margin: 0.5em; */
    padding: 0em 0.5em 0em 0.5em;
    display: inline-block;
    margin: 0.2em;
    height: 2.5em;
    font-size: 3em;
    color: #fff;
    line-height: 2.5em;
    background: #00cf69; /* green */
    border: 0.05em solid #00b75d;
    border-radius: 0.5em;
    transition: all 500ms;
    cursor: pointer;
}

.btn-start:hover{
    transform: scale(1.1);
    background: #00b75d; /* middle-green */
    border-color: #008a46; /* dark-green */
    /* text-shadow: 0 0 1.5em #000; */
}

#btnHelp {
    padding: 0em 0.5em 0em 0.5em;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10vh;
    width: 5em;
    height: 5em;
    /* border: 0.05em solid #707070; */
    transition: all 500ms;
    cursor: pointer;
    background-image: url(pics/help.png);
    background-size: 4em;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    opacity: 0.3;
}

#btnHelp:hover{
    opacity: 0.7;
    background-size: 5em;
}

.letter-pronunciation {
    margin: 0.2em;
    display: inline-block;
    width: 2em;
    height: 2em;
    font-size: 4em;
    color: #333;
    line-height: 2em;
    background: #f5f5f5;
    border: 0.02em solid #707070;
    transition: all 500ms;
    cursor: pointer;
}

.letter-pronunciation-hidden {
    margin: 0.2em;
    display: inline-block;
    width: 2em;
    height: 2em;
    font-size: 4em;
    color: #f5f5f5;
    line-height: 2em;
    background: #f5f5f5;
    border: 0.02em solid #707070;
    cursor: pointer;
}

.letter-pronunciation-error {
    margin: 0.2em;
    display: inline-block;
    width: 2em;
    height: 2em;
    font-size: 4em;
    color: #fff;
    line-height: 2em;
    background: #cf0000; /* red */
    border: 0.02em solid #707070;
    cursor: pointer;

    animation: shake 0.5s;
    animation-iteration-count: infinite;
}

.letter-pronunciation-ok {
    margin: 0.2em;
    display: inline-block;
    width: 2em;
    height: 2em;
    font-size: 4em;
    color: #fff;
    line-height: 2em;
    background: #00cf69; /* green */
    border: 0.02em solid #707070;
    cursor: pointer;

    animation: zoom 0.5s;
    animation-iteration-count: infinite;
}

.score {
    color: #000;
}

div.score>span#score {
    font-weight: bold;
}

.score-green {
    color: #008a46; /* dark-green */
}

.score-red {
    color: #cf0000; /* red */
}

* {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-family: Arial, Helvetica, sans-serif;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.sound-play{
    margin-top: 0.06em;
    margin-left: auto; 
    margin-right: auto; 
    width: 1em;
    height: 1em;
    background-image: url(pics/sound-on.png); 
    background-size: cover;
}

.sound-stop{
    margin-top: 0.06em;
    margin-left: auto; 
    margin-right: auto; 
    width: 1em;
    height: 1em;
    background-image: url(pics/sound-off.png); 
    background-size: cover;
    opacity: 0.5;
}

@keyframes shake {
    0% {
        transform: translate(1px, 1px) rotate(0deg);
    }

    10% {
        transform: translate(-1px, -2px) rotate(-1deg);
    }

    20% {
        transform: translate(-3px, 0px) rotate(1deg);
    }

    30% {
        transform: translate(3px, 2px) rotate(0deg);
    }

    40% {
        transform: translate(1px, -1px) rotate(1deg);
    }

    50% {
        transform: translate(-1px, 2px) rotate(-1deg);
    }

    60% {
        transform: translate(-3px, 1px) rotate(0deg);
    }

    70% {
        transform: translate(3px, 1px) rotate(-1deg);
    }

    80% {
        transform: translate(-1px, -1px) rotate(1deg);
    }

    90% {
        transform: translate(1px, 2px) rotate(0deg);
    }

    100% {
        transform: translate(1px, -2px) rotate(-1deg);
    }
}


@keyframes zoom {
    0% {
        transform: scale(1.2);
    }

    100% {
        transform: scale(1);
    }
}

.footer {
    position: absolute;
    bottom: 0em;
    height: 4.1em;
    width: 100%;
    text-align: center;
    display: none;
}

.footer-panel {
    border-width: 0.05em 0.05em 0em 0.05em;
    border-radius: 1.2em 1.2em 0em 0em;
    border-color: #333;
    border-style: solid;
    max-width: 60em;
    width: 20em;
    background: rgba(0, 0, 0, 0.1);
    height: 3.2em;
    display: inline-block;
    padding: 0.4em;
    vertical-align: top;
}

.footer-panel-item {
    display: inline-block;
    width: 7em;
    height: 0em;
    padding-top: 2.5em;
    font-size: 0.8em;
    color: #333;
    cursor: pointer;
    background-size: 2.1em;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.footer-panel-item:hover {
    background-size: 2.5em;
    transition: all 200ms;
}

.footer-panel-item.disabled {
    opacity: 40%;
}

.footer-panel-item.disabled:hover {
    background-size: 2.1em;
}

.footer-panel-central-item {
    display: inline-block;
    width: 10em;
    height: 2em;
    padding-top: 2.5em;
    font-size: 0.8em;
    color: #333;
    cursor: pointer;
}

#score {
    position: absolute;
    font-weight: bold;
    border: solid 0.05em #999; 
    background: rgba(255, 255, 255, 0.5);
    top: 0.25em;
    width: 2.5em;
    font-size: 1.9em;
    text-align: center;
    transition: all 400ms;
}

#score:hover{
    background: rgba(200, 200, 200, 0.7);
    transition: all 400ms;
}

#accuracy-container {
    position: absolute;
    margin-left: 2.7em;
    font-weight: bold;
    border: solid 0.05em #999; 
    background: rgba(255, 255, 255, 0.5);
    top: 0.25em;
    width: 2.5em;
    font-size: 1.9em;
    text-align: center;
    transition: all 400ms;
}

#accuracy-container:hover{
    background: rgba(200, 200, 200, 0.7);
    transition: all 400ms;
}

.settings {
    position: absolute;
    top: -35em;
    height: 35em;
    width: 100%;
    text-align: center;
    transition: all 400ms;
}

.settings-panel {
    border: solid 0.05em #333;
    border-width: 0em 0.05em 0.05em 0.05em;
    border-radius: 0em 0em 1.5em 1.5em;
    max-width: 60em;
    width: 22em;
    height: 35em;
    /* background: rgba(0, 0, 0, 0.5); */
    background: #ddd;
    display: inline-block;
    padding: 0em 0.3em 0.3em 0.3em;
    margin-top: -1em;
    vertical-align: top;
    text-align: left;
}

.settings-panel-close {
    position: absolute;
    bottom: 0.75em;
    width: 22em;
    height: 1.5em;
    font-size: 1em;
    font-weight: bold;
    background-image: url(pics/hamburger.png);
    background-size: 1.5em;
    background-position: 50% 0em;
    background-repeat: no-repeat;
    cursor: pointer;
}

.settings.visible {
    top: 0em;
    transition: all 400ms;
}

.stat {
    position: absolute;
    top: -37em;
    height: 37em;
    width: 100%;
    text-align: center;
    transition: all 400ms;
}

.stat-panel {
    border: solid 0.05em #333;
    border-width: 0em 0.05em 0.05em 0.05em;
    border-radius: 0em 0em 1.5em 1.5em;
    max-width: 60em;
    width: 22em;
    height: 37em;
    /* background: rgba(0, 0, 0, 0.5); */
    background: #ddd;
    display: inline-block;
    padding: 0em 0.3em 0.3em 0.3em;
    margin-top: -1em;
    vertical-align: top;
    text-align: left;
}

.stat-panel-close {
    position: absolute;
    bottom: 0.75em;
    width: 22em;
    height: 1.5em;
    font-size: 1em;
    font-weight: bold;
    background-image: url(pics/hamburger.png);
    background-size: 1.5em;
    background-position: 50% 0em;
    background-repeat: no-repeat;
    cursor: pointer;
}

#stat-table table{
    width: 100%;
    margin-top: 0.5em;
}

#stat-table td{
    padding-top: 0.5em;
    white-space: nowrap;
    color: #777;
}

#stat-letter-main{
    font-size: 1em;
    /* white-space: nowrap; */
    color: #000;
    /* text-align: center; */
    border-radius: 0.2em;
    background: #ccc;
    width: 1em;
    margin: 0.1em auto 0.1em auto;
    padding: 0.05em;
}

#stat-letter-main.good{
    background: #008a46; /* dark-green */
    color: #fff;
    border-radius: 0.2em;
}

#stat-table .main{
    font-size: 1.6em;
    white-space: nowrap;
    color: #000;
    text-align: center;
    border-radius: 0.2em;
    background: #ccc;
    width: 1em;
    padding: 0.15em;
}

#stat-table .main.good{
    background: #008a46; /* dark-green */
    color: #fff;
    border-radius: 0.2em;
}

#stat-table .second{
    font-size: 1.3em;
    white-space: nowrap;
}

#stat-table .percent{
    font-size: 70%;
    font-weight: normal;
    opacity: 0.5;
}

#stat-table .percent-container{
    padding-left: 0.3em;
    padding-right: 0.3em;
}

.stat-panel .stat-line{
    font-size: 1.2em;
    padding: 0.2em 0em 0.2em 0em;
}

.stat-panel .stat-line-hl{
    font-weight: bold;
}

.stat.visible {
    top: 0em;
    transition: all 400ms;
}

.settings h2, .stat h2 {
    font-size: 1.2em;
    border-bottom: dashed 0.07em #333;
    padding-bottom: 0.2em;
    padding-top: 0.5em;
}

.radio {
    border: solid 0.05em #333;
    padding: 0.4em;
    display: inline-block;
    font-size: 1.2em;
    cursor: pointer;
}

.radio:hover{
    background: #ccc;
}

.radio.active {
    background: #00b75d; /* middle-green */
    color: #000;
    transition: all 300ms;
}

.radio.active:hover {
    background: #00cf69; /* green */
    color: #000;
}

@font-face {
    font-family: "ArialGeo";
    src: url(./fonts/ArialGeo.ttf);
}

@font-face {
    font-family: "Katerina";
    src: url(./fonts/Katerina.ttf);
}

@font-face {
    font-family: "Bpg_Nino";
    src: url(./fonts/Bpg_Nino.ttf);
}

@font-face {
    font-family: "Extrasquare";
    src: url(./fonts/Extrasquare.ttf);
}

@font-face {
    font-family: "Algeti_Compact";
    src: url(./fonts/Algeti_Compact.ttf);
}

@font-face {
    font-family: "Glaho";
    src: url(./fonts/Glaho.ttf);
}

@font-face {
    font-family: "Tavdrigina";
    src: url(./fonts/Tavdrigina.ttf);
}

@font-face {
    font-family: "Archy";
    src: url(./fonts/Archy.ttf);
}

@font-face {
    font-family: "Gugeshashvili";
    src: url(./fonts/Gugeshashvili.ttf);
}

@font-face {
    font-family: "Merab_Kostava";
    src: url(./fonts/Merab_Kostava.ttf);
}

@font-face {
    font-family: "d_unicode";
    src: url(./fonts/3d_unicode.ttf);
}



@keyframes fadein {
    0%   { opacity: 0.1; }
    50%  { opacity: 1; }
    100% { opacity: 0.1; }
}

#logo-smell.shown{
    animation: fadein 4s;
    animation-iteration-count: infinite;
}

.stat-table td{
    cursor: pointer;
}

.second-button{
    text-align: center; 
    background: #ccc; 
    border-radius: 0.5em; 
    padding: 0.5em 0em 0.5em 0em; 
    font-size: 1.2em; 
    cursor: pointer;
    transition: all 400ms;
}

.second-button:hover{
    background: #555;
    color: #fff;
}
