:root {
    --background-color: var(--neonwhite3);
    --theme-color: var(--neonblue);
    --neon-shadow: none;
    --neon-border: none;
    --button-color: var(--theme-color);
    /*colors*/
    --translucent: #00000000;
    --black: #000000;
    --black2: #00000080;
    --neonwhite: #ffffff;
    --neonwhite2: #ffffff60;
    --neonwhite3: #ffffff10;
    --neonyellow: #fffd63;
    --neonyellow2: #fffd6380;
    --neongreen: #35ff7d;
    --neongreen2: #35ff7d80;
    --neongreen3: #35ff7d15;
    --neonblue: #21b5ff;
    --neonblue2: #21b5ff80;
    --neonpurple: #b05eff;
    --neonpurple2: #b05eff80;
    --neonpink: #ff19c9;
    --neonpink2: #ff19c980;
    --neonred: #ff1c6a;
    --neonred2: #ff1c6a80;
    --neonred3: #ff1c6a15;
    --neonorange: #ff954a;
    --neonorange2: #ff954a80;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body {
    background: linear-gradient(#000000aa, #000000aa), url("images/3703013.jpg");
    background-size: cover;
    font-family: 'Comfortaa', cursive;
    /*font-family: 'Charmonman', cursive;*/
    /*font-family: 'Grand Hotel', cursive;*/
    /*font-family: 'Patrick Hand', cursive;*/
    /*font-family: 'Sacramento', cursive;*/
    text-align: center;
    padding-top: 1%;
    margin-bottom: 10rem;
    overflow: hidden;
}

.main {
    width: 450px;
    height: 450px;
    margin: 25px auto;
    border-radius: 15px;
    border: 2px solid var(--theme-color);
    box-shadow: 0 0 20px var(--theme-color);
}

.hide {
    display: none;
}

.result {
    color: var(--theme-color);
    font-size: 1.2em;
    margin: 10px auto;
}

.container {
    border-collapse: collapse;
    display: grid;
    grid-template-columns:  1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: repeat(5, [col-start] 90px [col-end]);
    border-radius: 15px;
}

.container3 {
    padding: 20px;
    align-items: center;
    color: var(--neonwhite);
}

.container2 {
    padding: 20px;
    align-items: center;
}


.wrapper {
    overflow: auto;
    width: 410px;
    border-radius: 8px 8px 8px 8px;
    box-shadow: 0 0 20px var(--neonblue2);
}

.result-table {
    border-collapse: collapse !important;
    min-width: 410px;
}

.container2 th,
.container2 td,
.container3 th,
.container3 td {
    padding: 7px 15px;
    text-align: center;
    color: var(--neonwhite);
    text-shadow: var(--neonwhite);
}

.container2 thead,
.container3 thead {
    background-color: var(--neonblue);
    box-shadow: 0 0 30px var(--neonblue2)
}

/*tbody tr:last-child {*/
/*    background-color: var(--neonblue2);*/
/*    color: white;*/
/*}*/

.container2 tbody tr:nth-of-type(even),
.container3 tbody tr:nth-of-type(even) {
    background-color: var(--neonblue2);
    box-shadow: 0 0 30px var(--neonblue2);
}


/*user-interface*/
.title {
    color: var(--theme-color);
    text-shadow: 0 0 30px var(--theme-color), 0 0 30px var(--theme-color);
    position: relative;
    margin: 25px 40%;
    transition: 0.5s;
    padding: 30px 30px;
    /*border-radius: 30px;*/
}

.title:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    border-top: 3px solid var(--neonblue);
    border-left: 3px solid var(--neonblue);
    transition: 0.5s;
    border-radius: 3px;
}

.title:hover:before {
    width: 103%;
    height: 110%;
}

.title:after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 20px;
    height: 20px;
    border-bottom: 3px solid var(--neonblue);
    border-right: 3px solid var(--neonblue);
    transition: 0.5s;
    border-radius: 3px;
}

.title:hover:after {
    width: 103%;
    height: 110%;
}

.start-button {
    --button-color: var(--neongreen)
}

.again-button {
    --button-color: var(--neonorange);
}

.back-button {
    --button-color: var(--neonorange);
}

.score-button {
    --button-color: var(--neonpink);

}

.buttons {
    margin: 3rem auto;
}

.button {
    color: var(--button-color);
    text-shadow: 0 0 30px var(--button-color), 0 0 30px var(--button-color);
    position: relative;
    margin: 15px 15px;
    transition: 0.5s;
    padding: 10px 10px;
    text-decoration: none;
    font-size: 30px;
    /*border-radius: 30px;*/

}

.button:hover {
    background: var(--button-color);
    color: var(--black);
    box-shadow: 0 0 30px var(--button-color);
    transition-delay: 0.1s;
    /*transition: 0.5s;*/
    /*position: relative;*/
    /*margin: 15px 15px;*/
    /*padding: 10px 10px;*/
    /*border-radius: 30px;*/
}

.button:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    border-top: 2px solid var(--button-color);
    border-left: 2px solid var(--button-color);
    transition: 0.1s;
    border-radius: 3px;
}

.button:hover:before {
    width: 103%;
    height: 110%;
}

.button:after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 20px;
    height: 20px;
    border-bottom: 2px solid var(--button-color);
    border-right: 2px solid var(--button-color);
    transition: 0.1s;
    border-radius: 3px;
}

.button:hover:after {
    width: 103%;
    height: 110%;
}


/*table*/
.target-bg {
    --background-color: var(--neonyellow2);
    --neon-shadow: 0 0 50px var(--neonyellow);
}

.hit-bg {
    --background-color: var(--neongreen3);
    --neon-shadow: 0 0 50px var(--neongreen);
}

.miss-bg {
    --background-color: var(--neonred3);
    --neon-shadow: 0 0 50px var(--neonred);
}


.col {
    background-color: var(--background-color);
    box-shadow: var(--neon-shadow);
    position: relative;
    margin: 15px;
    color: var(--neonblue);
    transition: 0.5s;
    padding: 20px 20px;
    border-radius: 20px;
    /*overflow: hidden;*/
}

.col:hover {
    background-color: var(--neonwhite3);
    color: var(--black);
    box-shadow: 0 0 30px var(--neonwhite);
    transition-delay: 0.2s;
}

.col:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border-top: 2px solid var(--neonblue);
    border-left: 2px solid var(--neonblue);
    transition: 0.5s;
    border-radius: 3px;
}

.col:hover:before {
    width: 110%;
    height: 110%;
}

.col:after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 15px;
    height: 15px;
    border-bottom: 2px solid var(--neonblue);
    border-right: 2px solid var(--neonblue);
    transition: 0.5s;
    border-radius: 3px;
}

.col:hover:after {
    width: 110%;
    height: 110%;
}